/******/ (function(modules) { // webpackBootstrap
/******/ 	// The module cache
/******/ 	var installedModules = {};
/******/
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/
/******/ 		// Check if module is in cache
/******/ 		if(installedModules[moduleId]) {
/******/ 			return installedModules[moduleId].exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = installedModules[moduleId] = {
/******/ 			i: moduleId,
/******/ 			l: false,
/******/ 			exports: {}
/******/ 		};
/******/
/******/ 		// Execute the module function
/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ 		// Flag the module as loaded
/******/ 		module.l = true;
/******/
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/
/******/
/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = modules;
/******/
/******/ 	// expose the module cache
/******/ 	__webpack_require__.c = installedModules;
/******/
/******/ 	// define getter function for harmony exports
/******/ 	__webpack_require__.d = function(exports, name, getter) {
/******/ 		if(!__webpack_require__.o(exports, name)) {
/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ 		}
/******/ 	};
/******/
/******/ 	// define __esModule on exports
/******/ 	__webpack_require__.r = function(exports) {
/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ 		}
/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
/******/ 	};
/******/
/******/ 	// create a fake namespace object
/******/ 	// mode & 1: value is a module id, require it
/******/ 	// mode & 2: merge all properties of value into the ns
/******/ 	// mode & 4: return value when already ns object
/******/ 	// mode & 8|1: behave like require
/******/ 	__webpack_require__.t = function(value, mode) {
/******/ 		if(mode & 1) value = __webpack_require__(value);
/******/ 		if(mode & 8) return value;
/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ 		var ns = Object.create(null);
/******/ 		__webpack_require__.r(ns);
/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ 		return ns;
/******/ 	};
/******/
/******/ 	// getDefaultExport function for compatibility with non-harmony modules
/******/ 	__webpack_require__.n = function(module) {
/******/ 		var getter = module && module.__esModule ?
/******/ 			function getDefault() { return module['default']; } :
/******/ 			function getModuleExports() { return module; };
/******/ 		__webpack_require__.d(getter, 'a', getter);
/******/ 		return getter;
/******/ 	};
/******/
/******/ 	// Object.prototype.hasOwnProperty.call
/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ 	// __webpack_public_path__
/******/ 	__webpack_require__.p = "/";
/******/
/******/
/******/ 	// Load entry module and return exports
/******/ 	return __webpack_require__(__webpack_require__.s = "fe77");
/******/ })
/************************************************************************/
/******/ ({

/***/ 0:
/***/ (function(module, exports) {

/* (ignored) */

/***/ }),

/***/ "00db":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Tokenizer = __webpack_require__("b1dc"),
    HTML = __webpack_require__("f30b");

//Aliases
var $ = HTML.TAG_NAMES,
    NS = HTML.NAMESPACES,
    ATTRS = HTML.ATTRS;


//MIME types
var MIME_TYPES = {
    TEXT_HTML: 'text/html',
    APPLICATION_XML: 'application/xhtml+xml'
};

//Attributes
var DEFINITION_URL_ATTR = 'definitionurl',
    ADJUSTED_DEFINITION_URL_ATTR = 'definitionURL',
    SVG_ATTRS_ADJUSTMENT_MAP = {
        'attributename': 'attributeName',
        'attributetype': 'attributeType',
        'basefrequency': 'baseFrequency',
        'baseprofile': 'baseProfile',
        'calcmode': 'calcMode',
        'clippathunits': 'clipPathUnits',
        'diffuseconstant': 'diffuseConstant',
        'edgemode': 'edgeMode',
        'filterunits': 'filterUnits',
        'glyphref': 'glyphRef',
        'gradienttransform': 'gradientTransform',
        'gradientunits': 'gradientUnits',
        'kernelmatrix': 'kernelMatrix',
        'kernelunitlength': 'kernelUnitLength',
        'keypoints': 'keyPoints',
        'keysplines': 'keySplines',
        'keytimes': 'keyTimes',
        'lengthadjust': 'lengthAdjust',
        'limitingconeangle': 'limitingConeAngle',
        'markerheight': 'markerHeight',
        'markerunits': 'markerUnits',
        'markerwidth': 'markerWidth',
        'maskcontentunits': 'maskContentUnits',
        'maskunits': 'maskUnits',
        'numoctaves': 'numOctaves',
        'pathlength': 'pathLength',
        'patterncontentunits': 'patternContentUnits',
        'patterntransform': 'patternTransform',
        'patternunits': 'patternUnits',
        'pointsatx': 'pointsAtX',
        'pointsaty': 'pointsAtY',
        'pointsatz': 'pointsAtZ',
        'preservealpha': 'preserveAlpha',
        'preserveaspectratio': 'preserveAspectRatio',
        'primitiveunits': 'primitiveUnits',
        'refx': 'refX',
        'refy': 'refY',
        'repeatcount': 'repeatCount',
        'repeatdur': 'repeatDur',
        'requiredextensions': 'requiredExtensions',
        'requiredfeatures': 'requiredFeatures',
        'specularconstant': 'specularConstant',
        'specularexponent': 'specularExponent',
        'spreadmethod': 'spreadMethod',
        'startoffset': 'startOffset',
        'stddeviation': 'stdDeviation',
        'stitchtiles': 'stitchTiles',
        'surfacescale': 'surfaceScale',
        'systemlanguage': 'systemLanguage',
        'tablevalues': 'tableValues',
        'targetx': 'targetX',
        'targety': 'targetY',
        'textlength': 'textLength',
        'viewbox': 'viewBox',
        'viewtarget': 'viewTarget',
        'xchannelselector': 'xChannelSelector',
        'ychannelselector': 'yChannelSelector',
        'zoomandpan': 'zoomAndPan'
    },
    XML_ATTRS_ADJUSTMENT_MAP = {
        'xlink:actuate': {prefix: 'xlink', name: 'actuate', namespace: NS.XLINK},
        'xlink:arcrole': {prefix: 'xlink', name: 'arcrole', namespace: NS.XLINK},
        'xlink:href': {prefix: 'xlink', name: 'href', namespace: NS.XLINK},
        'xlink:role': {prefix: 'xlink', name: 'role', namespace: NS.XLINK},
        'xlink:show': {prefix: 'xlink', name: 'show', namespace: NS.XLINK},
        'xlink:title': {prefix: 'xlink', name: 'title', namespace: NS.XLINK},
        'xlink:type': {prefix: 'xlink', name: 'type', namespace: NS.XLINK},
        'xml:base': {prefix: 'xml', name: 'base', namespace: NS.XML},
        'xml:lang': {prefix: 'xml', name: 'lang', namespace: NS.XML},
        'xml:space': {prefix: 'xml', name: 'space', namespace: NS.XML},
        'xmlns': {prefix: '', name: 'xmlns', namespace: NS.XMLNS},
        'xmlns:xlink': {prefix: 'xmlns', name: 'xlink', namespace: NS.XMLNS}

    };

//SVG tag names adjustment map
var SVG_TAG_NAMES_ADJUSTMENT_MAP = exports.SVG_TAG_NAMES_ADJUSTMENT_MAP = {
    'altglyph': 'altGlyph',
    'altglyphdef': 'altGlyphDef',
    'altglyphitem': 'altGlyphItem',
    'animatecolor': 'animateColor',
    'animatemotion': 'animateMotion',
    'animatetransform': 'animateTransform',
    'clippath': 'clipPath',
    'feblend': 'feBlend',
    'fecolormatrix': 'feColorMatrix',
    'fecomponenttransfer': 'feComponentTransfer',
    'fecomposite': 'feComposite',
    'feconvolvematrix': 'feConvolveMatrix',
    'fediffuselighting': 'feDiffuseLighting',
    'fedisplacementmap': 'feDisplacementMap',
    'fedistantlight': 'feDistantLight',
    'feflood': 'feFlood',
    'fefunca': 'feFuncA',
    'fefuncb': 'feFuncB',
    'fefuncg': 'feFuncG',
    'fefuncr': 'feFuncR',
    'fegaussianblur': 'feGaussianBlur',
    'feimage': 'feImage',
    'femerge': 'feMerge',
    'femergenode': 'feMergeNode',
    'femorphology': 'feMorphology',
    'feoffset': 'feOffset',
    'fepointlight': 'fePointLight',
    'fespecularlighting': 'feSpecularLighting',
    'fespotlight': 'feSpotLight',
    'fetile': 'feTile',
    'feturbulence': 'feTurbulence',
    'foreignobject': 'foreignObject',
    'glyphref': 'glyphRef',
    'lineargradient': 'linearGradient',
    'radialgradient': 'radialGradient',
    'textpath': 'textPath'
};

//Tags that causes exit from foreign content
var EXITS_FOREIGN_CONTENT = Object.create(null);

EXITS_FOREIGN_CONTENT[$.B] = true;
EXITS_FOREIGN_CONTENT[$.BIG] = true;
EXITS_FOREIGN_CONTENT[$.BLOCKQUOTE] = true;
EXITS_FOREIGN_CONTENT[$.BODY] = true;
EXITS_FOREIGN_CONTENT[$.BR] = true;
EXITS_FOREIGN_CONTENT[$.CENTER] = true;
EXITS_FOREIGN_CONTENT[$.CODE] = true;
EXITS_FOREIGN_CONTENT[$.DD] = true;
EXITS_FOREIGN_CONTENT[$.DIV] = true;
EXITS_FOREIGN_CONTENT[$.DL] = true;
EXITS_FOREIGN_CONTENT[$.DT] = true;
EXITS_FOREIGN_CONTENT[$.EM] = true;
EXITS_FOREIGN_CONTENT[$.EMBED] = true;
EXITS_FOREIGN_CONTENT[$.H1] = true;
EXITS_FOREIGN_CONTENT[$.H2] = true;
EXITS_FOREIGN_CONTENT[$.H3] = true;
EXITS_FOREIGN_CONTENT[$.H4] = true;
EXITS_FOREIGN_CONTENT[$.H5] = true;
EXITS_FOREIGN_CONTENT[$.H6] = true;
EXITS_FOREIGN_CONTENT[$.HEAD] = true;
EXITS_FOREIGN_CONTENT[$.HR] = true;
EXITS_FOREIGN_CONTENT[$.I] = true;
EXITS_FOREIGN_CONTENT[$.IMG] = true;
EXITS_FOREIGN_CONTENT[$.LI] = true;
EXITS_FOREIGN_CONTENT[$.LISTING] = true;
EXITS_FOREIGN_CONTENT[$.MENU] = true;
EXITS_FOREIGN_CONTENT[$.META] = true;
EXITS_FOREIGN_CONTENT[$.NOBR] = true;
EXITS_FOREIGN_CONTENT[$.OL] = true;
EXITS_FOREIGN_CONTENT[$.P] = true;
EXITS_FOREIGN_CONTENT[$.PRE] = true;
EXITS_FOREIGN_CONTENT[$.RUBY] = true;
EXITS_FOREIGN_CONTENT[$.S] = true;
EXITS_FOREIGN_CONTENT[$.SMALL] = true;
EXITS_FOREIGN_CONTENT[$.SPAN] = true;
EXITS_FOREIGN_CONTENT[$.STRONG] = true;
EXITS_FOREIGN_CONTENT[$.STRIKE] = true;
EXITS_FOREIGN_CONTENT[$.SUB] = true;
EXITS_FOREIGN_CONTENT[$.SUP] = true;
EXITS_FOREIGN_CONTENT[$.TABLE] = true;
EXITS_FOREIGN_CONTENT[$.TT] = true;
EXITS_FOREIGN_CONTENT[$.U] = true;
EXITS_FOREIGN_CONTENT[$.UL] = true;
EXITS_FOREIGN_CONTENT[$.VAR] = true;

//Check exit from foreign content
exports.causesExit = function (startTagToken) {
    var tn = startTagToken.tagName;
    var isFontWithAttrs = tn === $.FONT && (Tokenizer.getTokenAttr(startTagToken, ATTRS.COLOR) !== null ||
                                            Tokenizer.getTokenAttr(startTagToken, ATTRS.SIZE) !== null ||
                                            Tokenizer.getTokenAttr(startTagToken, ATTRS.FACE) !== null);

    return isFontWithAttrs ? true : EXITS_FOREIGN_CONTENT[tn];
};

//Token adjustments
exports.adjustTokenMathMLAttrs = function (token) {
    for (var i = 0; i < token.attrs.length; i++) {
        if (token.attrs[i].name === DEFINITION_URL_ATTR) {
            token.attrs[i].name = ADJUSTED_DEFINITION_URL_ATTR;
            break;
        }
    }
};

exports.adjustTokenSVGAttrs = function (token) {
    for (var i = 0; i < token.attrs.length; i++) {
        var adjustedAttrName = SVG_ATTRS_ADJUSTMENT_MAP[token.attrs[i].name];

        if (adjustedAttrName)
            token.attrs[i].name = adjustedAttrName;
    }
};

exports.adjustTokenXMLAttrs = function (token) {
    for (var i = 0; i < token.attrs.length; i++) {
        var adjustedAttrEntry = XML_ATTRS_ADJUSTMENT_MAP[token.attrs[i].name];

        if (adjustedAttrEntry) {
            token.attrs[i].prefix = adjustedAttrEntry.prefix;
            token.attrs[i].name = adjustedAttrEntry.name;
            token.attrs[i].namespace = adjustedAttrEntry.namespace;
        }
    }
};

exports.adjustTokenSVGTagName = function (token) {
    var adjustedTagName = SVG_TAG_NAMES_ADJUSTMENT_MAP[token.tagName];

    if (adjustedTagName)
        token.tagName = adjustedTagName;
};

//Integration points
function isMathMLTextIntegrationPoint(tn, ns) {
    return ns === NS.MATHML && (tn === $.MI || tn === $.MO || tn === $.MN || tn === $.MS || tn === $.MTEXT);
}

function isHtmlIntegrationPoint(tn, ns, attrs) {
    if (ns === NS.MATHML && tn === $.ANNOTATION_XML) {
        for (var i = 0; i < attrs.length; i++) {
            if (attrs[i].name === ATTRS.ENCODING) {
                var value = attrs[i].value.toLowerCase();

                return value === MIME_TYPES.TEXT_HTML || value === MIME_TYPES.APPLICATION_XML;
            }
        }
    }

    return ns === NS.SVG && (tn === $.FOREIGN_OBJECT || tn === $.DESC || tn === $.TITLE);
}

exports.isIntegrationPoint = function (tn, ns, attrs, foreignNS) {
    if ((!foreignNS || foreignNS === NS.HTML) && isHtmlIntegrationPoint(tn, ns, attrs))
        return true;

    if ((!foreignNS || foreignNS === NS.MATHML) && isMathMLTextIntegrationPoint(tn, ns))
        return true;

    return false;
};


/***/ }),

/***/ "00fd":
/***/ (function(module, exports, __webpack_require__) {

var Symbol = __webpack_require__("9e69");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Used to resolve the
 * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
 * of values.
 */
var nativeObjectToString = objectProto.toString;

/** Built-in value references. */
var symToStringTag = Symbol ? Symbol.toStringTag : undefined;

/**
 * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
 *
 * @private
 * @param {*} value The value to query.
 * @returns {string} Returns the raw `toStringTag`.
 */
function getRawTag(value) {
  var isOwn = hasOwnProperty.call(value, symToStringTag),
      tag = value[symToStringTag];

  try {
    value[symToStringTag] = undefined;
    var unmasked = true;
  } catch (e) {}

  var result = nativeObjectToString.call(value);
  if (unmasked) {
    if (isOwn) {
      value[symToStringTag] = tag;
    } else {
      delete value[symToStringTag];
    }
  }
  return result;
}

module.exports = getRawTag;


/***/ }),

/***/ "021f":
/***/ (function(module) {

module.exports = JSON.parse("{\"status\":{\"statusMessage\":\"OK\",\"responseCode\":\"OK\",\"httpReturnCode\":200,\"httpReturnCodeMessage\":\"OK\"},\"headers\":[],\"responses\":[{\"ads\":[{\"advertiserId\":\"ENTITY2IBR6CSTIWC5E\",\"advertiserType\":\"SELLER\",\"brandId\":\"421994\",\"gcorId\":\"421994\",\"brandName\":\"HEETA\",\"brandRegistryName\":\"HEETA\",\"campaignId\":\"amzn1.campaign.2CRJD1DQ0DDS1\",\"campaignName\":\"Heeta #1 Scalp Massager: Earn 15% Commission on Prime Day Blowout Sale!\",\"campaignInstruction\":\"Hello Creators!\\n\\nAre you passionate about beauty & Personal Care? Join us for an exciting collaboration opportunity with HEETA, the leader in hair care solutions. Our mission is to enhance scalp health with our HEETA Scalp Massagers, trusted by over 5,000,000 users globally with a 95% satisfaction rate.\\n\\nAs 2024 Prime Day approaches, we're gearing up for exciting promotions, offering HEETA Scalp Massagers at unbeatable prices. We're offering you a chance to earn up to 15% commission while providing your fans or subscriber with deals that can elevate your influence on social media.\\n\\nDon't miss out on this opportunity to collaborate and boost your reach. Contact us with your social media profiles to discuss more!\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B076Q6442Z\",\"B07CWQ5CZ4\",\"B07L3XSF65\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1727766000000,\"scheduledEndDateTimeInEpochMills\":1730444399999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1727577431939,\"lastUpdatedDateTimeInEpochMills\":1727665560461,\"entityAggregateState\":null,\"adId\":\"amzn1.campaign.Q8IB6IPN085F\",\"creatorId\":\"amzn1.creator.c92a9480-cdca-4069-90b1-42b0649998b8\",\"storeId\":\"grabtheprod03-20\",\"creatorProfileName\":\"Dr Kapil Singla\",\"creatorAvatar\":\"https://m.media-amazon.com/images/G/01/Associates/tercero/na/prod/KapilSingla-1670442441._SS150_SCLZZZZZZZ_.jpeg\",\"interestTags\":[],\"adStatus\":\"ENDED\",\"providingSample\":false,\"adAcceptedDateTimeInEpochMills\":1727665558485,\"campaignEdited\":false,\"creatorContentDetails\":[],\"commissionPercentage\":15,\"promotionalPaymentPercentage\":0,\"remainingBudget\":2612.799499999999,\"clicks\":0,\"orders\":0,\"sales\":0,\"spend\":0,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignQualifiers\":null},{\"advertiserId\":\"ENTITY2IBR6CSTIWC5E\",\"advertiserType\":\"SELLER\",\"brandId\":\"421994\",\"gcorId\":\"421994\",\"brandName\":\"HEETA\",\"brandRegistryName\":\"HEETA\",\"campaignId\":\"amzn1.campaign.2CRJD1DQ0DDS1\",\"campaignName\":\"Heeta #1 Scalp Massager: Earn 15% Commission on Prime Day Blowout Sale!\",\"campaignInstruction\":\"Hello Creators!\\n\\nAre you passionate about beauty & Personal Care? Join us for an exciting collaboration opportunity with HEETA, the leader in hair care solutions. Our mission is to enhance scalp health with our HEETA Scalp Massagers, trusted by over 5,000,000 users globally with a 95% satisfaction rate.\\n\\nAs 2024 Prime Day approaches, we're gearing up for exciting promotions, offering HEETA Scalp Massagers at unbeatable prices. We're offering you a chance to earn up to 15% commission while providing your fans or subscriber with deals that can elevate your influence on social media.\\n\\nDon't miss out on this opportunity to collaborate and boost your reach. Contact us with your social media profiles to discuss more!\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B076Q6442Z\",\"B07CWQ5CZ4\",\"B07L3XSF65\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1727766000000,\"scheduledEndDateTimeInEpochMills\":1730444399999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1727577431939,\"lastUpdatedDateTimeInEpochMills\":1728401758950,\"entityAggregateState\":null,\"adId\":\"amzn1.campaign.QZJS9FSQQMAH\",\"creatorId\":\"amzn1.creator.fe284c8e-e34b-4279-a763-779055a5138c\",\"storeId\":\"alexandraconc-20\",\"creatorProfileName\":\"Is it worth it?\",\"creatorAvatar\":\"https://m.media-amazon.com/images/I/81YUr1y3auL._CR121,116,771,771_._FMjpg_.jpg\",\"interestTags\":[],\"adStatus\":\"ENDED\",\"providingSample\":false,\"adAcceptedDateTimeInEpochMills\":1728401676921,\"campaignEdited\":false,\"creatorContentDetails\":[{\"contentUrl\":\"https://www.amazon.com/vdp/0859e163fda54e689fd29f4e8b7f0c55?ref_=aipsfvideo&linkCode=ssc&tag=alexandraconc-20\",\"contentType\":\"VIDEO\",\"contentComplianceStatus\":null,\"contentComplianceStatusMessage\":null,\"contentId\":\"amzn1.content.1ZBWKHLP6IU0X\"}],\"commissionPercentage\":15,\"promotionalPaymentPercentage\":0,\"remainingBudget\":2612.799499999999,\"clicks\":20,\"orders\":7,\"sales\":47.88,\"spend\":7.182,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignQualifiers\":null},{\"advertiserId\":\"ENTITY2IBR6CSTIWC5E\",\"advertiserType\":\"SELLER\",\"brandId\":\"421994\",\"gcorId\":\"421994\",\"brandName\":\"HEETA\",\"brandRegistryName\":\"HEETA\",\"campaignId\":\"amzn1.campaign.2CRJD1DQ0DDS1\",\"campaignName\":\"Heeta #1 Scalp Massager: Earn 15% Commission on Prime Day Blowout Sale!\",\"campaignInstruction\":\"Hello Creators!\\n\\nAre you passionate about beauty & Personal Care? Join us for an exciting collaboration opportunity with HEETA, the leader in hair care solutions. Our mission is to enhance scalp health with our HEETA Scalp Massagers, trusted by over 5,000,000 users globally with a 95% satisfaction rate.\\n\\nAs 2024 Prime Day approaches, we're gearing up for exciting promotions, offering HEETA Scalp Massagers at unbeatable prices. We're offering you a chance to earn up to 15% commission while providing your fans or subscriber with deals that can elevate your influence on social media.\\n\\nDon't miss out on this opportunity to collaborate and boost your reach. Contact us with your social media profiles to discuss more!\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B076Q6442Z\",\"B07CWQ5CZ4\",\"B07L3XSF65\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1727766000000,\"scheduledEndDateTimeInEpochMills\":1730444399999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1727577431939,\"lastUpdatedDateTimeInEpochMills\":1728287960166,\"entityAggregateState\":null,\"adId\":\"amzn1.campaign.TUXQP1IH24LC\",\"creatorId\":\"amzn1.creator.3adec575-62b5-4924-b82b-6e512b47eefd\",\"storeId\":\"ddmtravel-20\",\"creatorProfileName\":\"Travel + Leisure\",\"creatorAvatar\":\"https://m.media-amazon.com/images/G/01/Associates/tercero/na/prod/TravelLeisure-1679409147._SS150_SCLZZZZZZZ_.jpeg\",\"interestTags\":[],\"adStatus\":\"ENDED\",\"providingSample\":false,\"adAcceptedDateTimeInEpochMills\":1728287958364,\"campaignEdited\":false,\"creatorContentDetails\":[],\"commissionPercentage\":15,\"promotionalPaymentPercentage\":0,\"remainingBudget\":2612.799499999999,\"clicks\":0,\"orders\":4,\"sales\":25.86,\"spend\":3.8790000000000004,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignQualifiers\":null},{\"advertiserId\":\"ENTITY2IBR6CSTIWC5E\",\"advertiserType\":\"SELLER\",\"brandId\":\"421994\",\"gcorId\":\"421994\",\"brandName\":\"HEETA\",\"brandRegistryName\":\"HEETA\",\"campaignId\":\"amzn1.campaign.2CRJD1DQ0DDS1\",\"campaignName\":\"Heeta #1 Scalp Massager: Earn 15% Commission on Prime Day Blowout Sale!\",\"campaignInstruction\":\"Hello Creators!\\n\\nAre you passionate about beauty & Personal Care? Join us for an exciting collaboration opportunity with HEETA, the leader in hair care solutions. Our mission is to enhance scalp health with our HEETA Scalp Massagers, trusted by over 5,000,000 users globally with a 95% satisfaction rate.\\n\\nAs 2024 Prime Day approaches, we're gearing up for exciting promotions, offering HEETA Scalp Massagers at unbeatable prices. We're offering you a chance to earn up to 15% commission while providing your fans or subscriber with deals that can elevate your influence on social media.\\n\\nDon't miss out on this opportunity to collaborate and boost your reach. Contact us with your social media profiles to discuss more!\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B076Q6442Z\",\"B07CWQ5CZ4\",\"B07L3XSF65\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1727766000000,\"scheduledEndDateTimeInEpochMills\":1730444399999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1727577431939,\"lastUpdatedDateTimeInEpochMills\":1729160524742,\"entityAggregateState\":null,\"adId\":\"amzn1.campaign.TYPRL13JTIXZ\",\"creatorId\":\"amzn1.creator.15913811-9fb8-4a1f-a586-834258c6482c\",\"storeId\":\"brittsdaily09-20\",\"creatorProfileName\":\"Ms Brittany\",\"creatorAvatar\":\"https://m.media-amazon.com/images/G/01/null._SS150_SCLZZZZZZZ_\",\"interestTags\":[],\"adStatus\":\"ENDED\",\"providingSample\":false,\"adAcceptedDateTimeInEpochMills\":1729160522887,\"campaignEdited\":false,\"creatorContentDetails\":[],\"commissionPercentage\":15,\"promotionalPaymentPercentage\":0,\"remainingBudget\":2612.799499999999,\"clicks\":0,\"orders\":0,\"sales\":0,\"spend\":0,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignQualifiers\":null},{\"advertiserId\":\"ENTITY2IBR6CSTIWC5E\",\"advertiserType\":\"SELLER\",\"brandId\":\"421994\",\"gcorId\":\"421994\",\"brandName\":\"HEETA\",\"brandRegistryName\":\"HEETA\",\"campaignId\":\"amzn1.campaign.2CRJD1DQ0DDS1\",\"campaignName\":\"Heeta #1 Scalp Massager: Earn 15% Commission on Prime Day Blowout Sale!\",\"campaignInstruction\":\"Hello Creators!\\n\\nAre you passionate about beauty & Personal Care? Join us for an exciting collaboration opportunity with HEETA, the leader in hair care solutions. Our mission is to enhance scalp health with our HEETA Scalp Massagers, trusted by over 5,000,000 users globally with a 95% satisfaction rate.\\n\\nAs 2024 Prime Day approaches, we're gearing up for exciting promotions, offering HEETA Scalp Massagers at unbeatable prices. We're offering you a chance to earn up to 15% commission while providing your fans or subscriber with deals that can elevate your influence on social media.\\n\\nDon't miss out on this opportunity to collaborate and boost your reach. Contact us with your social media profiles to discuss more!\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B076Q6442Z\",\"B07CWQ5CZ4\",\"B07L3XSF65\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1727766000000,\"scheduledEndDateTimeInEpochMills\":1730444399999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1727577431939,\"lastUpdatedDateTimeInEpochMills\":1727676703558,\"entityAggregateState\":null,\"adId\":\"amzn1.campaign.U6U1DO7172DL\",\"creatorId\":\"amzn1.creator.931b2ab3-7dd7-48c5-9d02-644f50a35c06\",\"storeId\":\"messywavyll0c-20\",\"creatorProfileName\":\"Patriana Sonia\",\"creatorAvatar\":\"https://images-na.ssl-images-amazon.com/images/S/influencer-profile-image-prod/logo/influencer-f2c57f0f_1571849995844_original._CR0,146,1200,1200_._FMjpg_.jpeg\",\"interestTags\":[],\"adStatus\":\"ENDED\",\"providingSample\":false,\"adAcceptedDateTimeInEpochMills\":1727676702035,\"campaignEdited\":false,\"creatorContentDetails\":[],\"commissionPercentage\":15,\"promotionalPaymentPercentage\":0,\"remainingBudget\":2612.799499999999,\"clicks\":0,\"orders\":0,\"sales\":0,\"spend\":0,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignQualifiers\":null},{\"advertiserId\":\"ENTITY2IBR6CSTIWC5E\",\"advertiserType\":\"SELLER\",\"brandId\":\"421994\",\"gcorId\":\"421994\",\"brandName\":\"HEETA\",\"brandRegistryName\":\"HEETA\",\"campaignId\":\"amzn1.campaign.2CRJD1DQ0DDS1\",\"campaignName\":\"Heeta #1 Scalp Massager: Earn 15% Commission on Prime Day Blowout Sale!\",\"campaignInstruction\":\"Hello Creators!\\n\\nAre you passionate about beauty & Personal Care? Join us for an exciting collaboration opportunity with HEETA, the leader in hair care solutions. Our mission is to enhance scalp health with our HEETA Scalp Massagers, trusted by over 5,000,000 users globally with a 95% satisfaction rate.\\n\\nAs 2024 Prime Day approaches, we're gearing up for exciting promotions, offering HEETA Scalp Massagers at unbeatable prices. We're offering you a chance to earn up to 15% commission while providing your fans or subscriber with deals that can elevate your influence on social media.\\n\\nDon't miss out on this opportunity to collaborate and boost your reach. Contact us with your social media profiles to discuss more!\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B076Q6442Z\",\"B07CWQ5CZ4\",\"B07L3XSF65\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1727766000000,\"scheduledEndDateTimeInEpochMills\":1730444399999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1727577431939,\"lastUpdatedDateTimeInEpochMills\":1727703275880,\"entityAggregateState\":null,\"adId\":\"amzn1.campaign.UQ7MN742U2S0\",\"creatorId\":\"amzn1.creator.647d7d7d-d334-4c52-b207-bf5802a9ec41\",\"storeId\":\"bustle-20\",\"creatorProfileName\":\"Bustle\",\"creatorAvatar\":\"https://m.media-amazon.com/images/G/01/Associates/tercero/na/prod/bustle-10912901209._SS150_SCLZZZZZZZ_.png\",\"interestTags\":[],\"adStatus\":\"ENDED\",\"providingSample\":false,\"adAcceptedDateTimeInEpochMills\":1727703275228,\"campaignEdited\":false,\"creatorContentDetails\":[],\"commissionPercentage\":15,\"promotionalPaymentPercentage\":0,\"remainingBudget\":2612.799499999999,\"clicks\":230,\"orders\":9,\"sales\":61.860000000000014,\"spend\":9.279,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignQualifiers\":null},{\"advertiserId\":\"ENTITY2IBR6CSTIWC5E\",\"advertiserType\":\"SELLER\",\"brandId\":\"421994\",\"gcorId\":\"421994\",\"brandName\":\"HEETA\",\"brandRegistryName\":\"HEETA\",\"campaignId\":\"amzn1.campaign.2CRJD1DQ0DDS1\",\"campaignName\":\"Heeta #1 Scalp Massager: Earn 15% Commission on Prime Day Blowout Sale!\",\"campaignInstruction\":\"Hello Creators!\\n\\nAre you passionate about beauty & Personal Care? Join us for an exciting collaboration opportunity with HEETA, the leader in hair care solutions. Our mission is to enhance scalp health with our HEETA Scalp Massagers, trusted by over 5,000,000 users globally with a 95% satisfaction rate.\\n\\nAs 2024 Prime Day approaches, we're gearing up for exciting promotions, offering HEETA Scalp Massagers at unbeatable prices. We're offering you a chance to earn up to 15% commission while providing your fans or subscriber with deals that can elevate your influence on social media.\\n\\nDon't miss out on this opportunity to collaborate and boost your reach. Contact us with your social media profiles to discuss more!\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B076Q6442Z\",\"B07CWQ5CZ4\",\"B07L3XSF65\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1727766000000,\"scheduledEndDateTimeInEpochMills\":1730444399999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1727577431939,\"lastUpdatedDateTimeInEpochMills\":1728407067585,\"entityAggregateState\":null,\"adId\":\"amzn1.campaign.WPO9FG0MRD76\",\"creatorId\":\"amzn1.creator.c6df2a7e-3198-43f9-b4d7-5df1afdaac00\",\"storeId\":\"ashleyspivey-20\",\"creatorProfileName\":\"Ashley Spivey\",\"creatorAvatar\":\"https://m.media-amazon.com/images/G/01/null._SS150_SCLZZZZZZZ_\",\"interestTags\":[],\"adStatus\":\"ENDED\",\"providingSample\":false,\"adAcceptedDateTimeInEpochMills\":1728407065531,\"campaignEdited\":false,\"creatorContentDetails\":[],\"commissionPercentage\":15,\"promotionalPaymentPercentage\":0,\"remainingBudget\":2612.799499999999,\"clicks\":0,\"orders\":3,\"sales\":16.1,\"spend\":2.415,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignQualifiers\":null},{\"advertiserId\":\"ENTITY2IBR6CSTIWC5E\",\"advertiserType\":\"SELLER\",\"brandId\":\"421994\",\"gcorId\":\"421994\",\"brandName\":\"HEETA\",\"brandRegistryName\":\"HEETA\",\"campaignId\":\"amzn1.campaign.2CRJD1DQ0DDS1\",\"campaignName\":\"Heeta #1 Scalp Massager: Earn 15% Commission on Prime Day Blowout Sale!\",\"campaignInstruction\":\"Hello Creators!\\n\\nAre you passionate about beauty & Personal Care? Join us for an exciting collaboration opportunity with HEETA, the leader in hair care solutions. Our mission is to enhance scalp health with our HEETA Scalp Massagers, trusted by over 5,000,000 users globally with a 95% satisfaction rate.\\n\\nAs 2024 Prime Day approaches, we're gearing up for exciting promotions, offering HEETA Scalp Massagers at unbeatable prices. We're offering you a chance to earn up to 15% commission while providing your fans or subscriber with deals that can elevate your influence on social media.\\n\\nDon't miss out on this opportunity to collaborate and boost your reach. Contact us with your social media profiles to discuss more!\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B076Q6442Z\",\"B07CWQ5CZ4\",\"B07L3XSF65\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1727766000000,\"scheduledEndDateTimeInEpochMills\":1730444399999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1727577431939,\"lastUpdatedDateTimeInEpochMills\":1728341792724,\"entityAggregateState\":null,\"adId\":\"amzn1.campaign.WZT8EWHI7PUV\",\"creatorId\":\"amzn1.creator.e7fda1e4-8c2b-491a-9ad4-caa8c21868e2\",\"storeId\":\"goats07-20\",\"creatorProfileName\":\"3Goats\",\"creatorAvatar\":\"https://m.media-amazon.com/images/G/01/null._SS150_SCLZZZZZZZ_\",\"interestTags\":[],\"adStatus\":\"ENDED\",\"providingSample\":false,\"adAcceptedDateTimeInEpochMills\":1728341791685,\"campaignEdited\":false,\"creatorContentDetails\":[],\"commissionPercentage\":15,\"promotionalPaymentPercentage\":0,\"remainingBudget\":2612.799499999999,\"clicks\":0,\"orders\":0,\"sales\":0,\"spend\":0,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignQualifiers\":null},{\"advertiserId\":\"ENTITY2IBR6CSTIWC5E\",\"advertiserType\":\"SELLER\",\"brandId\":\"421994\",\"gcorId\":\"421994\",\"brandName\":\"HEETA\",\"brandRegistryName\":\"HEETA\",\"campaignId\":\"amzn1.campaign.2CRJD1DQ0DDS1\",\"campaignName\":\"Heeta #1 Scalp Massager: Earn 15% Commission on Prime Day Blowout Sale!\",\"campaignInstruction\":\"Hello Creators!\\n\\nAre you passionate about beauty & Personal Care? Join us for an exciting collaboration opportunity with HEETA, the leader in hair care solutions. Our mission is to enhance scalp health with our HEETA Scalp Massagers, trusted by over 5,000,000 users globally with a 95% satisfaction rate.\\n\\nAs 2024 Prime Day approaches, we're gearing up for exciting promotions, offering HEETA Scalp Massagers at unbeatable prices. We're offering you a chance to earn up to 15% commission while providing your fans or subscriber with deals that can elevate your influence on social media.\\n\\nDon't miss out on this opportunity to collaborate and boost your reach. Contact us with your social media profiles to discuss more!\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B076Q6442Z\",\"B07CWQ5CZ4\",\"B07L3XSF65\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1727766000000,\"scheduledEndDateTimeInEpochMills\":1730444399999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1727577431939,\"lastUpdatedDateTimeInEpochMills\":1729201139646,\"entityAggregateState\":null,\"adId\":\"amzn1.campaign.X9CFZWEKNT5Q\",\"creatorId\":\"amzn1.creator.c030488a-3150-48d9-a777-f5201946b2d4\",\"storeId\":\"ishootforth05-20\",\"creatorProfileName\":\"Erik Duijsens\",\"creatorAvatar\":\"https://m.media-amazon.com/images/I/514n7FwtfVL._CR0,0,1420,1420_._FMjpg_.jpg\",\"interestTags\":[],\"adStatus\":\"ENDED\",\"providingSample\":false,\"adAcceptedDateTimeInEpochMills\":1729201106845,\"campaignEdited\":false,\"creatorContentDetails\":[{\"contentUrl\":\"https://www.amazon.com/vdp/0b837473e60844bf84c3c35d5b2bddb7?tag=ishootforth05-20&linkCode=ssc&ref_=cm_sw_r_cp_ud_aipsfvideo_SZ1DC0MCSJ7XD5H3GEW8_2\",\"contentType\":\"VIDEO\",\"contentComplianceStatus\":null,\"contentComplianceStatusMessage\":null,\"contentId\":\"amzn1.content.3E954JCRXKUJM\"}],\"commissionPercentage\":15,\"promotionalPaymentPercentage\":0,\"remainingBudget\":2612.799499999999,\"clicks\":0,\"orders\":0,\"sales\":0,\"spend\":0,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignQualifiers\":null},{\"advertiserId\":\"ENTITY2IBR6CSTIWC5E\",\"advertiserType\":\"SELLER\",\"brandId\":\"421994\",\"gcorId\":\"421994\",\"brandName\":\"HEETA\",\"brandRegistryName\":\"HEETA\",\"campaignId\":\"amzn1.campaign.2CRJD1DQ0DDS1\",\"campaignName\":\"Heeta #1 Scalp Massager: Earn 15% Commission on Prime Day Blowout Sale!\",\"campaignInstruction\":\"Hello Creators!\\n\\nAre you passionate about beauty & Personal Care? Join us for an exciting collaboration opportunity with HEETA, the leader in hair care solutions. Our mission is to enhance scalp health with our HEETA Scalp Massagers, trusted by over 5,000,000 users globally with a 95% satisfaction rate.\\n\\nAs 2024 Prime Day approaches, we're gearing up for exciting promotions, offering HEETA Scalp Massagers at unbeatable prices. We're offering you a chance to earn up to 15% commission while providing your fans or subscriber with deals that can elevate your influence on social media.\\n\\nDon't miss out on this opportunity to collaborate and boost your reach. Contact us with your social media profiles to discuss more!\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B076Q6442Z\",\"B07CWQ5CZ4\",\"B07L3XSF65\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1727766000000,\"scheduledEndDateTimeInEpochMills\":1730444399999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1727577431939,\"lastUpdatedDateTimeInEpochMills\":1728904001287,\"entityAggregateState\":null,\"adId\":\"amzn1.campaign.ZVQRHOTHVW01\",\"creatorId\":\"amzn1.creator.ce3b9f4e-d7f0-4f6f-aa8f-c79366a4587e\",\"storeId\":\"krisjanaturne-20\",\"creatorProfileName\":\"🌟Turner Family Reviews🌟\",\"creatorAvatar\":\"https://m.media-amazon.com/images/I/51thIhh2jPL._CR0,0,500,500_._FMjpg_.jpg\",\"interestTags\":[],\"adStatus\":\"ENDED\",\"providingSample\":false,\"adAcceptedDateTimeInEpochMills\":1727696904635,\"campaignEdited\":false,\"creatorContentDetails\":[{\"contentUrl\":\"https://www.amazon.com/live/video/0b4fa6da813a40b1899851b19407e700?ref_=asvh_vdp\",\"contentType\":\"VIDEO\",\"contentComplianceStatus\":null,\"contentComplianceStatusMessage\":null,\"contentId\":\"amzn1.content.2G3O7IQ5PJUEF\"}],\"commissionPercentage\":15,\"promotionalPaymentPercentage\":0,\"remainingBudget\":2612.799499999999,\"clicks\":0,\"orders\":0,\"sales\":0,\"spend\":0,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignQualifiers\":null}],\"totalResults\":110,\"nextToken\":null}]}");

/***/ }),

/***/ "02cc":
/***/ (function(module, exports, __webpack_require__) {

/**
 * Export cheerio (with )
 */

exports = module.exports = __webpack_require__("53a3");

/*
  Export the version
*/

exports.version = __webpack_require__("205b").version;


/***/ }),

/***/ "03dd":
/***/ (function(module, exports, __webpack_require__) {

var isPrototype = __webpack_require__("eac5"),
    nativeKeys = __webpack_require__("57a5");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names.
 */
function baseKeys(object) {
  if (!isPrototype(object)) {
    return nativeKeys(object);
  }
  var result = [];
  for (var key in Object(object)) {
    if (hasOwnProperty.call(object, key) && key != 'constructor') {
      result.push(key);
    }
  }
  return result;
}

module.exports = baseKeys;


/***/ }),

/***/ "061b":
/***/ (function(module, exports, __webpack_require__) {

var DomUtils  = __webpack_require__("2241"),
    hasAttrib = DomUtils.hasAttrib,
    getAttributeValue = DomUtils.getAttributeValue,
    falseFunc = __webpack_require__("99e4").falseFunc;

//https://github.com/slevithan/XRegExp/blob/master/src/xregexp.js#L469
var reChars = /[-[\]{}()*+?.,\\^$|#\s]/g;

/*
	attribute selectors
*/

var attributeRules = {
	__proto__: null,
	equals: function(next, data){
		var name  = data.name,
		    value = data.value;

		if(data.ignoreCase){
			value = value.toLowerCase();

			return function equalsIC(elem){
				var attr = getAttributeValue(elem, name);
				return attr != null && attr.toLowerCase() === value && next(elem);
			};
		}

		return function equals(elem){
			return getAttributeValue(elem, name) === value && next(elem);
		};
	},
	hyphen: function(next, data){
		var name  = data.name,
		    value = data.value,
		    len = value.length;

		if(data.ignoreCase){
			value = value.toLowerCase();

			return function hyphenIC(elem){
				var attr = getAttributeValue(elem, name);
				return attr != null &&
						(attr.length === len || attr.charAt(len) === "-") &&
						attr.substr(0, len).toLowerCase() === value &&
						next(elem);
			};
		}

		return function hyphen(elem){
			var attr = getAttributeValue(elem, name);
			return attr != null &&
					attr.substr(0, len) === value &&
					(attr.length === len || attr.charAt(len) === "-") &&
					next(elem);
		};
	},
	element: function(next, data){
		var name = data.name,
		    value = data.value;

		if(/\s/.test(value)){
			return falseFunc;
		}

		value = value.replace(reChars, "\\$&");

		var pattern = "(?:^|\\s)" + value + "(?:$|\\s)",
		    flags = data.ignoreCase ? "i" : "",
		    regex = new RegExp(pattern, flags);

		return function element(elem){
			var attr = getAttributeValue(elem, name);
			return attr != null && regex.test(attr) && next(elem);
		};
	},
	exists: function(next, data){
		var name = data.name;
		return function exists(elem){
			return hasAttrib(elem, name) && next(elem);
		};
	},
	start: function(next, data){
		var name  = data.name,
		    value = data.value,
		    len = value.length;

		if(len === 0){
			return falseFunc;
		}
		
		if(data.ignoreCase){
			value = value.toLowerCase();

			return function startIC(elem){
				var attr = getAttributeValue(elem, name);
				return attr != null && attr.substr(0, len).toLowerCase() === value && next(elem);
			};
		}

		return function start(elem){
			var attr = getAttributeValue(elem, name);
			return attr != null && attr.substr(0, len) === value && next(elem);
		};
	},
	end: function(next, data){
		var name  = data.name,
		    value = data.value,
		    len   = -value.length;

		if(len === 0){
			return falseFunc;
		}

		if(data.ignoreCase){
			value = value.toLowerCase();

			return function endIC(elem){
				var attr = getAttributeValue(elem, name);
				return attr != null && attr.substr(len).toLowerCase() === value && next(elem);
			};
		}

		return function end(elem){
			var attr = getAttributeValue(elem, name);
			return attr != null && attr.substr(len) === value && next(elem);
		};
	},
	any: function(next, data){
		var name  = data.name,
		    value = data.value;

		if(value === ""){
			return falseFunc;
		}

		if(data.ignoreCase){
			var regex = new RegExp(value.replace(reChars, "\\$&"), "i");

			return function anyIC(elem){
				var attr = getAttributeValue(elem, name);
				return attr != null && regex.test(attr) && next(elem);
			};
		}

		return function any(elem){
			var attr = getAttributeValue(elem, name);
			return attr != null && attr.indexOf(value) >= 0 && next(elem);
		};
	},
	not: function(next, data){
		var name  = data.name,
		    value = data.value;

		if(value === ""){
			return function notEmpty(elem){
				return !!getAttributeValue(elem, name) && next(elem);
			};
		} else if(data.ignoreCase){
			value = value.toLowerCase();

			return function notIC(elem){
				var attr = getAttributeValue(elem, name);
				return attr != null && attr.toLowerCase() !== value && next(elem);
			};
		}

		return function not(elem){
			return getAttributeValue(elem, name) !== value && next(elem);
		};
	}
};

module.exports = {
	compile: function(next, data, options){
		if(options && options.strict && (
			data.ignoreCase || data.action === "not"
		)) throw SyntaxError("Unsupported attribute selector");
		return attributeRules[data.action](next, data);
	},
	rules: attributeRules
};


/***/ }),

/***/ "0621":
/***/ (function(module, exports, __webpack_require__) {

var Symbol = __webpack_require__("9e69"),
    isArguments = __webpack_require__("d370"),
    isArray = __webpack_require__("6747");

/** Built-in value references. */
var spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined;

/**
 * Checks if `value` is a flattenable `arguments` object or array.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.
 */
function isFlattenable(value) {
  return isArray(value) || isArguments(value) ||
    !!(spreadableSymbol && value && value[spreadableSymbol]);
}

module.exports = isFlattenable;


/***/ }),

/***/ "07c7":
/***/ (function(module, exports) {

/**
 * This method returns `false`.
 *
 * @static
 * @memberOf _
 * @since 4.13.0
 * @category Util
 * @returns {boolean} Returns `false`.
 * @example
 *
 * _.times(2, _.stubFalse);
 * // => [false, false]
 */
function stubFalse() {
  return false;
}

module.exports = stubFalse;


/***/ }),

/***/ "0801":
/***/ (function(module, exports, __webpack_require__) {

var bytesToUuid = __webpack_require__("2366");

function uuidToBytes(uuid) {
  // Note: We assume we're being passed a valid uuid string
  var bytes = [];
  uuid.replace(/[a-fA-F0-9]{2}/g, function(hex) {
    bytes.push(parseInt(hex, 16));
  });

  return bytes;
}

function stringToBytes(str) {
  str = unescape(encodeURIComponent(str)); // UTF8 escape
  var bytes = new Array(str.length);
  for (var i = 0; i < str.length; i++) {
    bytes[i] = str.charCodeAt(i);
  }
  return bytes;
}

module.exports = function(name, version, hashfunc) {
  var generateUUID = function(value, namespace, buf, offset) {
    var off = buf && offset || 0;

    if (typeof(value) == 'string') value = stringToBytes(value);
    if (typeof(namespace) == 'string') namespace = uuidToBytes(namespace);

    if (!Array.isArray(value)) throw TypeError('value must be an array of bytes');
    if (!Array.isArray(namespace) || namespace.length !== 16) throw TypeError('namespace must be uuid string or an Array of 16 byte values');

    // Per 4.3
    var bytes = hashfunc(namespace.concat(value));
    bytes[6] = (bytes[6] & 0x0f) | version;
    bytes[8] = (bytes[8] & 0x3f) | 0x80;

    if (buf) {
      for (var idx = 0; idx < 16; ++idx) {
        buf[off+idx] = bytes[idx];
      }
    }

    return buf || bytesToUuid(bytes);
  };

  // Function#name is not settable on some platforms (#270)
  try {
    generateUUID.name = name;
  } catch (err) {
  }

  // Pre-defined namespaces, per Appendix C
  generateUUID.DNS = '6ba7b810-9dad-11d1-80b4-00c04fd430c8';
  generateUUID.URL = '6ba7b811-9dad-11d1-80b4-00c04fd430c8';

  return generateUUID;
};


/***/ }),

/***/ "087d":
/***/ (function(module, exports) {

/**
 * Appends the elements of `values` to `array`.
 *
 * @private
 * @param {Array} array The array to modify.
 * @param {Array} values The values to append.
 * @returns {Array} Returns `array`.
 */
function arrayPush(array, values) {
  var index = -1,
      length = values.length,
      offset = array.length;

  while (++index < length) {
    array[offset + index] = values[index];
  }
  return array;
}

module.exports = arrayPush;


/***/ }),

/***/ "08c7":
/***/ (function(module, exports, __webpack_require__) {

module.exports = compile;

var BaseFuncs = __webpack_require__("99e4"),
    trueFunc  = BaseFuncs.trueFunc,
    falseFunc = BaseFuncs.falseFunc;

/*
	returns a function that checks if an elements index matches the given rule
	highly optimized to return the fastest solution
*/
function compile(parsed){
	var a = parsed[0],
	    b = parsed[1] - 1;

	//when b <= 0, a*n won't be possible for any matches when a < 0
	//besides, the specification says that no element is matched when a and b are 0
	if(b < 0 && a <= 0) return falseFunc;

	//when a is in the range -1..1, it matches any element (so only b is checked)
	if(a ===-1) return function(pos){ return pos <= b; };
	if(a === 0) return function(pos){ return pos === b; };
	//when b <= 0 and a === 1, they match any element
	if(a === 1) return b < 0 ? trueFunc : function(pos){ return pos >= b; };

	//when a > 0, modulo can be used to check if there is a match
	var bMod = b % a;
	if(bMod < 0) bMod += a;

	if(a > 1){
		return function(pos){
			return pos >= b && pos % a === bMod;
		};
	}

	a *= -1; //make `a` positive

	return function(pos){
		return pos <= b && pos % a === bMod;
	};
}

/***/ }),

/***/ "08cc":
/***/ (function(module, exports, __webpack_require__) {

var isObject = __webpack_require__("1a8c");

/**
 * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` if suitable for strict
 *  equality comparisons, else `false`.
 */
function isStrictComparable(value) {
  return value === value && !isObject(value);
}

module.exports = isStrictComparable;


/***/ }),

/***/ "0960":
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__("b19a");


/***/ }),

/***/ "099a":
/***/ (function(module, exports) {

/**
 * A specialized version of `_.indexOf` which performs strict equality
 * comparisons of values, i.e. `===`.
 *
 * @private
 * @param {Array} array The array to inspect.
 * @param {*} value The value to search for.
 * @param {number} fromIndex The index to search from.
 * @returns {number} Returns the index of the matched value, else `-1`.
 */
function strictIndexOf(array, value, fromIndex) {
  var index = fromIndex - 1,
      length = array.length;

  while (++index < length) {
    if (array[index] === value) {
      return index;
    }
  }
  return -1;
}

module.exports = strictIndexOf;


/***/ }),

/***/ "0a06":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");
var buildURL = __webpack_require__("30b5");
var InterceptorManager = __webpack_require__("f6b4");
var dispatchRequest = __webpack_require__("5270");
var mergeConfig = __webpack_require__("4a7b");

/**
 * Create a new instance of Axios
 *
 * @param {Object} instanceConfig The default config for the instance
 */
function Axios(instanceConfig) {
  this.defaults = instanceConfig;
  this.interceptors = {
    request: new InterceptorManager(),
    response: new InterceptorManager()
  };
}

/**
 * Dispatch a request
 *
 * @param {Object} config The config specific for this request (merged with this.defaults)
 */
Axios.prototype.request = function request(config) {
  /*eslint no-param-reassign:0*/
  // Allow for axios('example/url'[, config]) a la fetch API
  if (typeof config === 'string') {
    config = arguments[1] || {};
    config.url = arguments[0];
  } else {
    config = config || {};
  }

  config = mergeConfig(this.defaults, config);

  // Set config.method
  if (config.method) {
    config.method = config.method.toLowerCase();
  } else if (this.defaults.method) {
    config.method = this.defaults.method.toLowerCase();
  } else {
    config.method = 'get';
  }

  // Hook up interceptors middleware
  var chain = [dispatchRequest, undefined];
  var promise = Promise.resolve(config);

  this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {
    chain.unshift(interceptor.fulfilled, interceptor.rejected);
  });

  this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {
    chain.push(interceptor.fulfilled, interceptor.rejected);
  });

  while (chain.length) {
    promise = promise.then(chain.shift(), chain.shift());
  }

  return promise;
};

Axios.prototype.getUri = function getUri(config) {
  config = mergeConfig(this.defaults, config);
  return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\?/, '');
};

// Provide aliases for supported request methods
utils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {
  /*eslint func-names:0*/
  Axios.prototype[method] = function(url, config) {
    return this.request(utils.merge(config || {}, {
      method: method,
      url: url
    }));
  };
});

utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {
  /*eslint func-names:0*/
  Axios.prototype[method] = function(url, data, config) {
    return this.request(utils.merge(config || {}, {
      method: method,
      url: url,
      data: data
    }));
  };
});

module.exports = Axios;


/***/ }),

/***/ "0b07":
/***/ (function(module, exports, __webpack_require__) {

var baseIsNative = __webpack_require__("34ac"),
    getValue = __webpack_require__("3698");

/**
 * Gets the native function at `key` of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @param {string} key The key of the method to get.
 * @returns {*} Returns the function if it's native, else `undefined`.
 */
function getNative(object, key) {
  var value = getValue(object, key);
  return baseIsNative(value) ? value : undefined;
}

module.exports = getNative;


/***/ }),

/***/ "0b13":
/***/ (function(module) {

module.exports = JSON.parse("{\"universal\":50,\"tag\":30,\"attribute\":1,\"pseudo\":0,\"descendant\":-1,\"child\":-1,\"parent\":-1,\"sibling\":-1,\"adjacent\":-1}");

/***/ }),

/***/ "0b1b":
/***/ (function(module) {

module.exports = JSON.parse("{\"Aacute\":\"Á\",\"aacute\":\"á\",\"Abreve\":\"Ă\",\"abreve\":\"ă\",\"ac\":\"∾\",\"acd\":\"∿\",\"acE\":\"∾̳\",\"Acirc\":\"Â\",\"acirc\":\"â\",\"acute\":\"´\",\"Acy\":\"А\",\"acy\":\"а\",\"AElig\":\"Æ\",\"aelig\":\"æ\",\"af\":\"⁡\",\"Afr\":\"𝔄\",\"afr\":\"𝔞\",\"Agrave\":\"À\",\"agrave\":\"à\",\"alefsym\":\"ℵ\",\"aleph\":\"ℵ\",\"Alpha\":\"Α\",\"alpha\":\"α\",\"Amacr\":\"Ā\",\"amacr\":\"ā\",\"amalg\":\"⨿\",\"amp\":\"&\",\"AMP\":\"&\",\"andand\":\"⩕\",\"And\":\"⩓\",\"and\":\"∧\",\"andd\":\"⩜\",\"andslope\":\"⩘\",\"andv\":\"⩚\",\"ang\":\"∠\",\"ange\":\"⦤\",\"angle\":\"∠\",\"angmsdaa\":\"⦨\",\"angmsdab\":\"⦩\",\"angmsdac\":\"⦪\",\"angmsdad\":\"⦫\",\"angmsdae\":\"⦬\",\"angmsdaf\":\"⦭\",\"angmsdag\":\"⦮\",\"angmsdah\":\"⦯\",\"angmsd\":\"∡\",\"angrt\":\"∟\",\"angrtvb\":\"⊾\",\"angrtvbd\":\"⦝\",\"angsph\":\"∢\",\"angst\":\"Å\",\"angzarr\":\"⍼\",\"Aogon\":\"Ą\",\"aogon\":\"ą\",\"Aopf\":\"𝔸\",\"aopf\":\"𝕒\",\"apacir\":\"⩯\",\"ap\":\"≈\",\"apE\":\"⩰\",\"ape\":\"≊\",\"apid\":\"≋\",\"apos\":\"'\",\"ApplyFunction\":\"⁡\",\"approx\":\"≈\",\"approxeq\":\"≊\",\"Aring\":\"Å\",\"aring\":\"å\",\"Ascr\":\"𝒜\",\"ascr\":\"𝒶\",\"Assign\":\"≔\",\"ast\":\"*\",\"asymp\":\"≈\",\"asympeq\":\"≍\",\"Atilde\":\"Ã\",\"atilde\":\"ã\",\"Auml\":\"Ä\",\"auml\":\"ä\",\"awconint\":\"∳\",\"awint\":\"⨑\",\"backcong\":\"≌\",\"backepsilon\":\"϶\",\"backprime\":\"‵\",\"backsim\":\"∽\",\"backsimeq\":\"⋍\",\"Backslash\":\"∖\",\"Barv\":\"⫧\",\"barvee\":\"⊽\",\"barwed\":\"⌅\",\"Barwed\":\"⌆\",\"barwedge\":\"⌅\",\"bbrk\":\"⎵\",\"bbrktbrk\":\"⎶\",\"bcong\":\"≌\",\"Bcy\":\"Б\",\"bcy\":\"б\",\"bdquo\":\"„\",\"becaus\":\"∵\",\"because\":\"∵\",\"Because\":\"∵\",\"bemptyv\":\"⦰\",\"bepsi\":\"϶\",\"bernou\":\"ℬ\",\"Bernoullis\":\"ℬ\",\"Beta\":\"Β\",\"beta\":\"β\",\"beth\":\"ℶ\",\"between\":\"≬\",\"Bfr\":\"𝔅\",\"bfr\":\"𝔟\",\"bigcap\":\"⋂\",\"bigcirc\":\"◯\",\"bigcup\":\"⋃\",\"bigodot\":\"⨀\",\"bigoplus\":\"⨁\",\"bigotimes\":\"⨂\",\"bigsqcup\":\"⨆\",\"bigstar\":\"★\",\"bigtriangledown\":\"▽\",\"bigtriangleup\":\"△\",\"biguplus\":\"⨄\",\"bigvee\":\"⋁\",\"bigwedge\":\"⋀\",\"bkarow\":\"⤍\",\"blacklozenge\":\"⧫\",\"blacksquare\":\"▪\",\"blacktriangle\":\"▴\",\"blacktriangledown\":\"▾\",\"blacktriangleleft\":\"◂\",\"blacktriangleright\":\"▸\",\"blank\":\"␣\",\"blk12\":\"▒\",\"blk14\":\"░\",\"blk34\":\"▓\",\"block\":\"█\",\"bne\":\"=⃥\",\"bnequiv\":\"≡⃥\",\"bNot\":\"⫭\",\"bnot\":\"⌐\",\"Bopf\":\"𝔹\",\"bopf\":\"𝕓\",\"bot\":\"⊥\",\"bottom\":\"⊥\",\"bowtie\":\"⋈\",\"boxbox\":\"⧉\",\"boxdl\":\"┐\",\"boxdL\":\"╕\",\"boxDl\":\"╖\",\"boxDL\":\"╗\",\"boxdr\":\"┌\",\"boxdR\":\"╒\",\"boxDr\":\"╓\",\"boxDR\":\"╔\",\"boxh\":\"─\",\"boxH\":\"═\",\"boxhd\":\"┬\",\"boxHd\":\"╤\",\"boxhD\":\"╥\",\"boxHD\":\"╦\",\"boxhu\":\"┴\",\"boxHu\":\"╧\",\"boxhU\":\"╨\",\"boxHU\":\"╩\",\"boxminus\":\"⊟\",\"boxplus\":\"⊞\",\"boxtimes\":\"⊠\",\"boxul\":\"┘\",\"boxuL\":\"╛\",\"boxUl\":\"╜\",\"boxUL\":\"╝\",\"boxur\":\"└\",\"boxuR\":\"╘\",\"boxUr\":\"╙\",\"boxUR\":\"╚\",\"boxv\":\"│\",\"boxV\":\"║\",\"boxvh\":\"┼\",\"boxvH\":\"╪\",\"boxVh\":\"╫\",\"boxVH\":\"╬\",\"boxvl\":\"┤\",\"boxvL\":\"╡\",\"boxVl\":\"╢\",\"boxVL\":\"╣\",\"boxvr\":\"├\",\"boxvR\":\"╞\",\"boxVr\":\"╟\",\"boxVR\":\"╠\",\"bprime\":\"‵\",\"breve\":\"˘\",\"Breve\":\"˘\",\"brvbar\":\"¦\",\"bscr\":\"𝒷\",\"Bscr\":\"ℬ\",\"bsemi\":\"⁏\",\"bsim\":\"∽\",\"bsime\":\"⋍\",\"bsolb\":\"⧅\",\"bsol\":\"\\\\\",\"bsolhsub\":\"⟈\",\"bull\":\"•\",\"bullet\":\"•\",\"bump\":\"≎\",\"bumpE\":\"⪮\",\"bumpe\":\"≏\",\"Bumpeq\":\"≎\",\"bumpeq\":\"≏\",\"Cacute\":\"Ć\",\"cacute\":\"ć\",\"capand\":\"⩄\",\"capbrcup\":\"⩉\",\"capcap\":\"⩋\",\"cap\":\"∩\",\"Cap\":\"⋒\",\"capcup\":\"⩇\",\"capdot\":\"⩀\",\"CapitalDifferentialD\":\"ⅅ\",\"caps\":\"∩︀\",\"caret\":\"⁁\",\"caron\":\"ˇ\",\"Cayleys\":\"ℭ\",\"ccaps\":\"⩍\",\"Ccaron\":\"Č\",\"ccaron\":\"č\",\"Ccedil\":\"Ç\",\"ccedil\":\"ç\",\"Ccirc\":\"Ĉ\",\"ccirc\":\"ĉ\",\"Cconint\":\"∰\",\"ccups\":\"⩌\",\"ccupssm\":\"⩐\",\"Cdot\":\"Ċ\",\"cdot\":\"ċ\",\"cedil\":\"¸\",\"Cedilla\":\"¸\",\"cemptyv\":\"⦲\",\"cent\":\"¢\",\"centerdot\":\"·\",\"CenterDot\":\"·\",\"cfr\":\"𝔠\",\"Cfr\":\"ℭ\",\"CHcy\":\"Ч\",\"chcy\":\"ч\",\"check\":\"✓\",\"checkmark\":\"✓\",\"Chi\":\"Χ\",\"chi\":\"χ\",\"circ\":\"ˆ\",\"circeq\":\"≗\",\"circlearrowleft\":\"↺\",\"circlearrowright\":\"↻\",\"circledast\":\"⊛\",\"circledcirc\":\"⊚\",\"circleddash\":\"⊝\",\"CircleDot\":\"⊙\",\"circledR\":\"®\",\"circledS\":\"Ⓢ\",\"CircleMinus\":\"⊖\",\"CirclePlus\":\"⊕\",\"CircleTimes\":\"⊗\",\"cir\":\"○\",\"cirE\":\"⧃\",\"cire\":\"≗\",\"cirfnint\":\"⨐\",\"cirmid\":\"⫯\",\"cirscir\":\"⧂\",\"ClockwiseContourIntegral\":\"∲\",\"CloseCurlyDoubleQuote\":\"”\",\"CloseCurlyQuote\":\"’\",\"clubs\":\"♣\",\"clubsuit\":\"♣\",\"colon\":\":\",\"Colon\":\"∷\",\"Colone\":\"⩴\",\"colone\":\"≔\",\"coloneq\":\"≔\",\"comma\":\",\",\"commat\":\"@\",\"comp\":\"∁\",\"compfn\":\"∘\",\"complement\":\"∁\",\"complexes\":\"ℂ\",\"cong\":\"≅\",\"congdot\":\"⩭\",\"Congruent\":\"≡\",\"conint\":\"∮\",\"Conint\":\"∯\",\"ContourIntegral\":\"∮\",\"copf\":\"𝕔\",\"Copf\":\"ℂ\",\"coprod\":\"∐\",\"Coproduct\":\"∐\",\"copy\":\"©\",\"COPY\":\"©\",\"copysr\":\"℗\",\"CounterClockwiseContourIntegral\":\"∳\",\"crarr\":\"↵\",\"cross\":\"✗\",\"Cross\":\"⨯\",\"Cscr\":\"𝒞\",\"cscr\":\"𝒸\",\"csub\":\"⫏\",\"csube\":\"⫑\",\"csup\":\"⫐\",\"csupe\":\"⫒\",\"ctdot\":\"⋯\",\"cudarrl\":\"⤸\",\"cudarrr\":\"⤵\",\"cuepr\":\"⋞\",\"cuesc\":\"⋟\",\"cularr\":\"↶\",\"cularrp\":\"⤽\",\"cupbrcap\":\"⩈\",\"cupcap\":\"⩆\",\"CupCap\":\"≍\",\"cup\":\"∪\",\"Cup\":\"⋓\",\"cupcup\":\"⩊\",\"cupdot\":\"⊍\",\"cupor\":\"⩅\",\"cups\":\"∪︀\",\"curarr\":\"↷\",\"curarrm\":\"⤼\",\"curlyeqprec\":\"⋞\",\"curlyeqsucc\":\"⋟\",\"curlyvee\":\"⋎\",\"curlywedge\":\"⋏\",\"curren\":\"¤\",\"curvearrowleft\":\"↶\",\"curvearrowright\":\"↷\",\"cuvee\":\"⋎\",\"cuwed\":\"⋏\",\"cwconint\":\"∲\",\"cwint\":\"∱\",\"cylcty\":\"⌭\",\"dagger\":\"†\",\"Dagger\":\"‡\",\"daleth\":\"ℸ\",\"darr\":\"↓\",\"Darr\":\"↡\",\"dArr\":\"⇓\",\"dash\":\"‐\",\"Dashv\":\"⫤\",\"dashv\":\"⊣\",\"dbkarow\":\"⤏\",\"dblac\":\"˝\",\"Dcaron\":\"Ď\",\"dcaron\":\"ď\",\"Dcy\":\"Д\",\"dcy\":\"д\",\"ddagger\":\"‡\",\"ddarr\":\"⇊\",\"DD\":\"ⅅ\",\"dd\":\"ⅆ\",\"DDotrahd\":\"⤑\",\"ddotseq\":\"⩷\",\"deg\":\"°\",\"Del\":\"∇\",\"Delta\":\"Δ\",\"delta\":\"δ\",\"demptyv\":\"⦱\",\"dfisht\":\"⥿\",\"Dfr\":\"𝔇\",\"dfr\":\"𝔡\",\"dHar\":\"⥥\",\"dharl\":\"⇃\",\"dharr\":\"⇂\",\"DiacriticalAcute\":\"´\",\"DiacriticalDot\":\"˙\",\"DiacriticalDoubleAcute\":\"˝\",\"DiacriticalGrave\":\"`\",\"DiacriticalTilde\":\"˜\",\"diam\":\"⋄\",\"diamond\":\"⋄\",\"Diamond\":\"⋄\",\"diamondsuit\":\"♦\",\"diams\":\"♦\",\"die\":\"¨\",\"DifferentialD\":\"ⅆ\",\"digamma\":\"ϝ\",\"disin\":\"⋲\",\"div\":\"÷\",\"divide\":\"÷\",\"divideontimes\":\"⋇\",\"divonx\":\"⋇\",\"DJcy\":\"Ђ\",\"djcy\":\"ђ\",\"dlcorn\":\"⌞\",\"dlcrop\":\"⌍\",\"dollar\":\"$\",\"Dopf\":\"𝔻\",\"dopf\":\"𝕕\",\"Dot\":\"¨\",\"dot\":\"˙\",\"DotDot\":\"⃜\",\"doteq\":\"≐\",\"doteqdot\":\"≑\",\"DotEqual\":\"≐\",\"dotminus\":\"∸\",\"dotplus\":\"∔\",\"dotsquare\":\"⊡\",\"doublebarwedge\":\"⌆\",\"DoubleContourIntegral\":\"∯\",\"DoubleDot\":\"¨\",\"DoubleDownArrow\":\"⇓\",\"DoubleLeftArrow\":\"⇐\",\"DoubleLeftRightArrow\":\"⇔\",\"DoubleLeftTee\":\"⫤\",\"DoubleLongLeftArrow\":\"⟸\",\"DoubleLongLeftRightArrow\":\"⟺\",\"DoubleLongRightArrow\":\"⟹\",\"DoubleRightArrow\":\"⇒\",\"DoubleRightTee\":\"⊨\",\"DoubleUpArrow\":\"⇑\",\"DoubleUpDownArrow\":\"⇕\",\"DoubleVerticalBar\":\"∥\",\"DownArrowBar\":\"⤓\",\"downarrow\":\"↓\",\"DownArrow\":\"↓\",\"Downarrow\":\"⇓\",\"DownArrowUpArrow\":\"⇵\",\"DownBreve\":\"̑\",\"downdownarrows\":\"⇊\",\"downharpoonleft\":\"⇃\",\"downharpoonright\":\"⇂\",\"DownLeftRightVector\":\"⥐\",\"DownLeftTeeVector\":\"⥞\",\"DownLeftVectorBar\":\"⥖\",\"DownLeftVector\":\"↽\",\"DownRightTeeVector\":\"⥟\",\"DownRightVectorBar\":\"⥗\",\"DownRightVector\":\"⇁\",\"DownTeeArrow\":\"↧\",\"DownTee\":\"⊤\",\"drbkarow\":\"⤐\",\"drcorn\":\"⌟\",\"drcrop\":\"⌌\",\"Dscr\":\"𝒟\",\"dscr\":\"𝒹\",\"DScy\":\"Ѕ\",\"dscy\":\"ѕ\",\"dsol\":\"⧶\",\"Dstrok\":\"Đ\",\"dstrok\":\"đ\",\"dtdot\":\"⋱\",\"dtri\":\"▿\",\"dtrif\":\"▾\",\"duarr\":\"⇵\",\"duhar\":\"⥯\",\"dwangle\":\"⦦\",\"DZcy\":\"Џ\",\"dzcy\":\"џ\",\"dzigrarr\":\"⟿\",\"Eacute\":\"É\",\"eacute\":\"é\",\"easter\":\"⩮\",\"Ecaron\":\"Ě\",\"ecaron\":\"ě\",\"Ecirc\":\"Ê\",\"ecirc\":\"ê\",\"ecir\":\"≖\",\"ecolon\":\"≕\",\"Ecy\":\"Э\",\"ecy\":\"э\",\"eDDot\":\"⩷\",\"Edot\":\"Ė\",\"edot\":\"ė\",\"eDot\":\"≑\",\"ee\":\"ⅇ\",\"efDot\":\"≒\",\"Efr\":\"𝔈\",\"efr\":\"𝔢\",\"eg\":\"⪚\",\"Egrave\":\"È\",\"egrave\":\"è\",\"egs\":\"⪖\",\"egsdot\":\"⪘\",\"el\":\"⪙\",\"Element\":\"∈\",\"elinters\":\"⏧\",\"ell\":\"ℓ\",\"els\":\"⪕\",\"elsdot\":\"⪗\",\"Emacr\":\"Ē\",\"emacr\":\"ē\",\"empty\":\"∅\",\"emptyset\":\"∅\",\"EmptySmallSquare\":\"◻\",\"emptyv\":\"∅\",\"EmptyVerySmallSquare\":\"▫\",\"emsp13\":\" \",\"emsp14\":\" \",\"emsp\":\" \",\"ENG\":\"Ŋ\",\"eng\":\"ŋ\",\"ensp\":\" \",\"Eogon\":\"Ę\",\"eogon\":\"ę\",\"Eopf\":\"𝔼\",\"eopf\":\"𝕖\",\"epar\":\"⋕\",\"eparsl\":\"⧣\",\"eplus\":\"⩱\",\"epsi\":\"ε\",\"Epsilon\":\"Ε\",\"epsilon\":\"ε\",\"epsiv\":\"ϵ\",\"eqcirc\":\"≖\",\"eqcolon\":\"≕\",\"eqsim\":\"≂\",\"eqslantgtr\":\"⪖\",\"eqslantless\":\"⪕\",\"Equal\":\"⩵\",\"equals\":\"=\",\"EqualTilde\":\"≂\",\"equest\":\"≟\",\"Equilibrium\":\"⇌\",\"equiv\":\"≡\",\"equivDD\":\"⩸\",\"eqvparsl\":\"⧥\",\"erarr\":\"⥱\",\"erDot\":\"≓\",\"escr\":\"ℯ\",\"Escr\":\"ℰ\",\"esdot\":\"≐\",\"Esim\":\"⩳\",\"esim\":\"≂\",\"Eta\":\"Η\",\"eta\":\"η\",\"ETH\":\"Ð\",\"eth\":\"ð\",\"Euml\":\"Ë\",\"euml\":\"ë\",\"euro\":\"€\",\"excl\":\"!\",\"exist\":\"∃\",\"Exists\":\"∃\",\"expectation\":\"ℰ\",\"exponentiale\":\"ⅇ\",\"ExponentialE\":\"ⅇ\",\"fallingdotseq\":\"≒\",\"Fcy\":\"Ф\",\"fcy\":\"ф\",\"female\":\"♀\",\"ffilig\":\"ﬃ\",\"fflig\":\"ﬀ\",\"ffllig\":\"ﬄ\",\"Ffr\":\"𝔉\",\"ffr\":\"𝔣\",\"filig\":\"ﬁ\",\"FilledSmallSquare\":\"◼\",\"FilledVerySmallSquare\":\"▪\",\"fjlig\":\"fj\",\"flat\":\"♭\",\"fllig\":\"ﬂ\",\"fltns\":\"▱\",\"fnof\":\"ƒ\",\"Fopf\":\"𝔽\",\"fopf\":\"𝕗\",\"forall\":\"∀\",\"ForAll\":\"∀\",\"fork\":\"⋔\",\"forkv\":\"⫙\",\"Fouriertrf\":\"ℱ\",\"fpartint\":\"⨍\",\"frac12\":\"½\",\"frac13\":\"⅓\",\"frac14\":\"¼\",\"frac15\":\"⅕\",\"frac16\":\"⅙\",\"frac18\":\"⅛\",\"frac23\":\"⅔\",\"frac25\":\"⅖\",\"frac34\":\"¾\",\"frac35\":\"⅗\",\"frac38\":\"⅜\",\"frac45\":\"⅘\",\"frac56\":\"⅚\",\"frac58\":\"⅝\",\"frac78\":\"⅞\",\"frasl\":\"⁄\",\"frown\":\"⌢\",\"fscr\":\"𝒻\",\"Fscr\":\"ℱ\",\"gacute\":\"ǵ\",\"Gamma\":\"Γ\",\"gamma\":\"γ\",\"Gammad\":\"Ϝ\",\"gammad\":\"ϝ\",\"gap\":\"⪆\",\"Gbreve\":\"Ğ\",\"gbreve\":\"ğ\",\"Gcedil\":\"Ģ\",\"Gcirc\":\"Ĝ\",\"gcirc\":\"ĝ\",\"Gcy\":\"Г\",\"gcy\":\"г\",\"Gdot\":\"Ġ\",\"gdot\":\"ġ\",\"ge\":\"≥\",\"gE\":\"≧\",\"gEl\":\"⪌\",\"gel\":\"⋛\",\"geq\":\"≥\",\"geqq\":\"≧\",\"geqslant\":\"⩾\",\"gescc\":\"⪩\",\"ges\":\"⩾\",\"gesdot\":\"⪀\",\"gesdoto\":\"⪂\",\"gesdotol\":\"⪄\",\"gesl\":\"⋛︀\",\"gesles\":\"⪔\",\"Gfr\":\"𝔊\",\"gfr\":\"𝔤\",\"gg\":\"≫\",\"Gg\":\"⋙\",\"ggg\":\"⋙\",\"gimel\":\"ℷ\",\"GJcy\":\"Ѓ\",\"gjcy\":\"ѓ\",\"gla\":\"⪥\",\"gl\":\"≷\",\"glE\":\"⪒\",\"glj\":\"⪤\",\"gnap\":\"⪊\",\"gnapprox\":\"⪊\",\"gne\":\"⪈\",\"gnE\":\"≩\",\"gneq\":\"⪈\",\"gneqq\":\"≩\",\"gnsim\":\"⋧\",\"Gopf\":\"𝔾\",\"gopf\":\"𝕘\",\"grave\":\"`\",\"GreaterEqual\":\"≥\",\"GreaterEqualLess\":\"⋛\",\"GreaterFullEqual\":\"≧\",\"GreaterGreater\":\"⪢\",\"GreaterLess\":\"≷\",\"GreaterSlantEqual\":\"⩾\",\"GreaterTilde\":\"≳\",\"Gscr\":\"𝒢\",\"gscr\":\"ℊ\",\"gsim\":\"≳\",\"gsime\":\"⪎\",\"gsiml\":\"⪐\",\"gtcc\":\"⪧\",\"gtcir\":\"⩺\",\"gt\":\">\",\"GT\":\">\",\"Gt\":\"≫\",\"gtdot\":\"⋗\",\"gtlPar\":\"⦕\",\"gtquest\":\"⩼\",\"gtrapprox\":\"⪆\",\"gtrarr\":\"⥸\",\"gtrdot\":\"⋗\",\"gtreqless\":\"⋛\",\"gtreqqless\":\"⪌\",\"gtrless\":\"≷\",\"gtrsim\":\"≳\",\"gvertneqq\":\"≩︀\",\"gvnE\":\"≩︀\",\"Hacek\":\"ˇ\",\"hairsp\":\" \",\"half\":\"½\",\"hamilt\":\"ℋ\",\"HARDcy\":\"Ъ\",\"hardcy\":\"ъ\",\"harrcir\":\"⥈\",\"harr\":\"↔\",\"hArr\":\"⇔\",\"harrw\":\"↭\",\"Hat\":\"^\",\"hbar\":\"ℏ\",\"Hcirc\":\"Ĥ\",\"hcirc\":\"ĥ\",\"hearts\":\"♥\",\"heartsuit\":\"♥\",\"hellip\":\"…\",\"hercon\":\"⊹\",\"hfr\":\"𝔥\",\"Hfr\":\"ℌ\",\"HilbertSpace\":\"ℋ\",\"hksearow\":\"⤥\",\"hkswarow\":\"⤦\",\"hoarr\":\"⇿\",\"homtht\":\"∻\",\"hookleftarrow\":\"↩\",\"hookrightarrow\":\"↪\",\"hopf\":\"𝕙\",\"Hopf\":\"ℍ\",\"horbar\":\"―\",\"HorizontalLine\":\"─\",\"hscr\":\"𝒽\",\"Hscr\":\"ℋ\",\"hslash\":\"ℏ\",\"Hstrok\":\"Ħ\",\"hstrok\":\"ħ\",\"HumpDownHump\":\"≎\",\"HumpEqual\":\"≏\",\"hybull\":\"⁃\",\"hyphen\":\"‐\",\"Iacute\":\"Í\",\"iacute\":\"í\",\"ic\":\"⁣\",\"Icirc\":\"Î\",\"icirc\":\"î\",\"Icy\":\"И\",\"icy\":\"и\",\"Idot\":\"İ\",\"IEcy\":\"Е\",\"iecy\":\"е\",\"iexcl\":\"¡\",\"iff\":\"⇔\",\"ifr\":\"𝔦\",\"Ifr\":\"ℑ\",\"Igrave\":\"Ì\",\"igrave\":\"ì\",\"ii\":\"ⅈ\",\"iiiint\":\"⨌\",\"iiint\":\"∭\",\"iinfin\":\"⧜\",\"iiota\":\"℩\",\"IJlig\":\"Ĳ\",\"ijlig\":\"ĳ\",\"Imacr\":\"Ī\",\"imacr\":\"ī\",\"image\":\"ℑ\",\"ImaginaryI\":\"ⅈ\",\"imagline\":\"ℐ\",\"imagpart\":\"ℑ\",\"imath\":\"ı\",\"Im\":\"ℑ\",\"imof\":\"⊷\",\"imped\":\"Ƶ\",\"Implies\":\"⇒\",\"incare\":\"℅\",\"in\":\"∈\",\"infin\":\"∞\",\"infintie\":\"⧝\",\"inodot\":\"ı\",\"intcal\":\"⊺\",\"int\":\"∫\",\"Int\":\"∬\",\"integers\":\"ℤ\",\"Integral\":\"∫\",\"intercal\":\"⊺\",\"Intersection\":\"⋂\",\"intlarhk\":\"⨗\",\"intprod\":\"⨼\",\"InvisibleComma\":\"⁣\",\"InvisibleTimes\":\"⁢\",\"IOcy\":\"Ё\",\"iocy\":\"ё\",\"Iogon\":\"Į\",\"iogon\":\"į\",\"Iopf\":\"𝕀\",\"iopf\":\"𝕚\",\"Iota\":\"Ι\",\"iota\":\"ι\",\"iprod\":\"⨼\",\"iquest\":\"¿\",\"iscr\":\"𝒾\",\"Iscr\":\"ℐ\",\"isin\":\"∈\",\"isindot\":\"⋵\",\"isinE\":\"⋹\",\"isins\":\"⋴\",\"isinsv\":\"⋳\",\"isinv\":\"∈\",\"it\":\"⁢\",\"Itilde\":\"Ĩ\",\"itilde\":\"ĩ\",\"Iukcy\":\"І\",\"iukcy\":\"і\",\"Iuml\":\"Ï\",\"iuml\":\"ï\",\"Jcirc\":\"Ĵ\",\"jcirc\":\"ĵ\",\"Jcy\":\"Й\",\"jcy\":\"й\",\"Jfr\":\"𝔍\",\"jfr\":\"𝔧\",\"jmath\":\"ȷ\",\"Jopf\":\"𝕁\",\"jopf\":\"𝕛\",\"Jscr\":\"𝒥\",\"jscr\":\"𝒿\",\"Jsercy\":\"Ј\",\"jsercy\":\"ј\",\"Jukcy\":\"Є\",\"jukcy\":\"є\",\"Kappa\":\"Κ\",\"kappa\":\"κ\",\"kappav\":\"ϰ\",\"Kcedil\":\"Ķ\",\"kcedil\":\"ķ\",\"Kcy\":\"К\",\"kcy\":\"к\",\"Kfr\":\"𝔎\",\"kfr\":\"𝔨\",\"kgreen\":\"ĸ\",\"KHcy\":\"Х\",\"khcy\":\"х\",\"KJcy\":\"Ќ\",\"kjcy\":\"ќ\",\"Kopf\":\"𝕂\",\"kopf\":\"𝕜\",\"Kscr\":\"𝒦\",\"kscr\":\"𝓀\",\"lAarr\":\"⇚\",\"Lacute\":\"Ĺ\",\"lacute\":\"ĺ\",\"laemptyv\":\"⦴\",\"lagran\":\"ℒ\",\"Lambda\":\"Λ\",\"lambda\":\"λ\",\"lang\":\"⟨\",\"Lang\":\"⟪\",\"langd\":\"⦑\",\"langle\":\"⟨\",\"lap\":\"⪅\",\"Laplacetrf\":\"ℒ\",\"laquo\":\"«\",\"larrb\":\"⇤\",\"larrbfs\":\"⤟\",\"larr\":\"←\",\"Larr\":\"↞\",\"lArr\":\"⇐\",\"larrfs\":\"⤝\",\"larrhk\":\"↩\",\"larrlp\":\"↫\",\"larrpl\":\"⤹\",\"larrsim\":\"⥳\",\"larrtl\":\"↢\",\"latail\":\"⤙\",\"lAtail\":\"⤛\",\"lat\":\"⪫\",\"late\":\"⪭\",\"lates\":\"⪭︀\",\"lbarr\":\"⤌\",\"lBarr\":\"⤎\",\"lbbrk\":\"❲\",\"lbrace\":\"{\",\"lbrack\":\"[\",\"lbrke\":\"⦋\",\"lbrksld\":\"⦏\",\"lbrkslu\":\"⦍\",\"Lcaron\":\"Ľ\",\"lcaron\":\"ľ\",\"Lcedil\":\"Ļ\",\"lcedil\":\"ļ\",\"lceil\":\"⌈\",\"lcub\":\"{\",\"Lcy\":\"Л\",\"lcy\":\"л\",\"ldca\":\"⤶\",\"ldquo\":\"“\",\"ldquor\":\"„\",\"ldrdhar\":\"⥧\",\"ldrushar\":\"⥋\",\"ldsh\":\"↲\",\"le\":\"≤\",\"lE\":\"≦\",\"LeftAngleBracket\":\"⟨\",\"LeftArrowBar\":\"⇤\",\"leftarrow\":\"←\",\"LeftArrow\":\"←\",\"Leftarrow\":\"⇐\",\"LeftArrowRightArrow\":\"⇆\",\"leftarrowtail\":\"↢\",\"LeftCeiling\":\"⌈\",\"LeftDoubleBracket\":\"⟦\",\"LeftDownTeeVector\":\"⥡\",\"LeftDownVectorBar\":\"⥙\",\"LeftDownVector\":\"⇃\",\"LeftFloor\":\"⌊\",\"leftharpoondown\":\"↽\",\"leftharpoonup\":\"↼\",\"leftleftarrows\":\"⇇\",\"leftrightarrow\":\"↔\",\"LeftRightArrow\":\"↔\",\"Leftrightarrow\":\"⇔\",\"leftrightarrows\":\"⇆\",\"leftrightharpoons\":\"⇋\",\"leftrightsquigarrow\":\"↭\",\"LeftRightVector\":\"⥎\",\"LeftTeeArrow\":\"↤\",\"LeftTee\":\"⊣\",\"LeftTeeVector\":\"⥚\",\"leftthreetimes\":\"⋋\",\"LeftTriangleBar\":\"⧏\",\"LeftTriangle\":\"⊲\",\"LeftTriangleEqual\":\"⊴\",\"LeftUpDownVector\":\"⥑\",\"LeftUpTeeVector\":\"⥠\",\"LeftUpVectorBar\":\"⥘\",\"LeftUpVector\":\"↿\",\"LeftVectorBar\":\"⥒\",\"LeftVector\":\"↼\",\"lEg\":\"⪋\",\"leg\":\"⋚\",\"leq\":\"≤\",\"leqq\":\"≦\",\"leqslant\":\"⩽\",\"lescc\":\"⪨\",\"les\":\"⩽\",\"lesdot\":\"⩿\",\"lesdoto\":\"⪁\",\"lesdotor\":\"⪃\",\"lesg\":\"⋚︀\",\"lesges\":\"⪓\",\"lessapprox\":\"⪅\",\"lessdot\":\"⋖\",\"lesseqgtr\":\"⋚\",\"lesseqqgtr\":\"⪋\",\"LessEqualGreater\":\"⋚\",\"LessFullEqual\":\"≦\",\"LessGreater\":\"≶\",\"lessgtr\":\"≶\",\"LessLess\":\"⪡\",\"lesssim\":\"≲\",\"LessSlantEqual\":\"⩽\",\"LessTilde\":\"≲\",\"lfisht\":\"⥼\",\"lfloor\":\"⌊\",\"Lfr\":\"𝔏\",\"lfr\":\"𝔩\",\"lg\":\"≶\",\"lgE\":\"⪑\",\"lHar\":\"⥢\",\"lhard\":\"↽\",\"lharu\":\"↼\",\"lharul\":\"⥪\",\"lhblk\":\"▄\",\"LJcy\":\"Љ\",\"ljcy\":\"љ\",\"llarr\":\"⇇\",\"ll\":\"≪\",\"Ll\":\"⋘\",\"llcorner\":\"⌞\",\"Lleftarrow\":\"⇚\",\"llhard\":\"⥫\",\"lltri\":\"◺\",\"Lmidot\":\"Ŀ\",\"lmidot\":\"ŀ\",\"lmoustache\":\"⎰\",\"lmoust\":\"⎰\",\"lnap\":\"⪉\",\"lnapprox\":\"⪉\",\"lne\":\"⪇\",\"lnE\":\"≨\",\"lneq\":\"⪇\",\"lneqq\":\"≨\",\"lnsim\":\"⋦\",\"loang\":\"⟬\",\"loarr\":\"⇽\",\"lobrk\":\"⟦\",\"longleftarrow\":\"⟵\",\"LongLeftArrow\":\"⟵\",\"Longleftarrow\":\"⟸\",\"longleftrightarrow\":\"⟷\",\"LongLeftRightArrow\":\"⟷\",\"Longleftrightarrow\":\"⟺\",\"longmapsto\":\"⟼\",\"longrightarrow\":\"⟶\",\"LongRightArrow\":\"⟶\",\"Longrightarrow\":\"⟹\",\"looparrowleft\":\"↫\",\"looparrowright\":\"↬\",\"lopar\":\"⦅\",\"Lopf\":\"𝕃\",\"lopf\":\"𝕝\",\"loplus\":\"⨭\",\"lotimes\":\"⨴\",\"lowast\":\"∗\",\"lowbar\":\"_\",\"LowerLeftArrow\":\"↙\",\"LowerRightArrow\":\"↘\",\"loz\":\"◊\",\"lozenge\":\"◊\",\"lozf\":\"⧫\",\"lpar\":\"(\",\"lparlt\":\"⦓\",\"lrarr\":\"⇆\",\"lrcorner\":\"⌟\",\"lrhar\":\"⇋\",\"lrhard\":\"⥭\",\"lrm\":\"‎\",\"lrtri\":\"⊿\",\"lsaquo\":\"‹\",\"lscr\":\"𝓁\",\"Lscr\":\"ℒ\",\"lsh\":\"↰\",\"Lsh\":\"↰\",\"lsim\":\"≲\",\"lsime\":\"⪍\",\"lsimg\":\"⪏\",\"lsqb\":\"[\",\"lsquo\":\"‘\",\"lsquor\":\"‚\",\"Lstrok\":\"Ł\",\"lstrok\":\"ł\",\"ltcc\":\"⪦\",\"ltcir\":\"⩹\",\"lt\":\"<\",\"LT\":\"<\",\"Lt\":\"≪\",\"ltdot\":\"⋖\",\"lthree\":\"⋋\",\"ltimes\":\"⋉\",\"ltlarr\":\"⥶\",\"ltquest\":\"⩻\",\"ltri\":\"◃\",\"ltrie\":\"⊴\",\"ltrif\":\"◂\",\"ltrPar\":\"⦖\",\"lurdshar\":\"⥊\",\"luruhar\":\"⥦\",\"lvertneqq\":\"≨︀\",\"lvnE\":\"≨︀\",\"macr\":\"¯\",\"male\":\"♂\",\"malt\":\"✠\",\"maltese\":\"✠\",\"Map\":\"⤅\",\"map\":\"↦\",\"mapsto\":\"↦\",\"mapstodown\":\"↧\",\"mapstoleft\":\"↤\",\"mapstoup\":\"↥\",\"marker\":\"▮\",\"mcomma\":\"⨩\",\"Mcy\":\"М\",\"mcy\":\"м\",\"mdash\":\"—\",\"mDDot\":\"∺\",\"measuredangle\":\"∡\",\"MediumSpace\":\" \",\"Mellintrf\":\"ℳ\",\"Mfr\":\"𝔐\",\"mfr\":\"𝔪\",\"mho\":\"℧\",\"micro\":\"µ\",\"midast\":\"*\",\"midcir\":\"⫰\",\"mid\":\"∣\",\"middot\":\"·\",\"minusb\":\"⊟\",\"minus\":\"−\",\"minusd\":\"∸\",\"minusdu\":\"⨪\",\"MinusPlus\":\"∓\",\"mlcp\":\"⫛\",\"mldr\":\"…\",\"mnplus\":\"∓\",\"models\":\"⊧\",\"Mopf\":\"𝕄\",\"mopf\":\"𝕞\",\"mp\":\"∓\",\"mscr\":\"𝓂\",\"Mscr\":\"ℳ\",\"mstpos\":\"∾\",\"Mu\":\"Μ\",\"mu\":\"μ\",\"multimap\":\"⊸\",\"mumap\":\"⊸\",\"nabla\":\"∇\",\"Nacute\":\"Ń\",\"nacute\":\"ń\",\"nang\":\"∠⃒\",\"nap\":\"≉\",\"napE\":\"⩰̸\",\"napid\":\"≋̸\",\"napos\":\"ŉ\",\"napprox\":\"≉\",\"natural\":\"♮\",\"naturals\":\"ℕ\",\"natur\":\"♮\",\"nbsp\":\" \",\"nbump\":\"≎̸\",\"nbumpe\":\"≏̸\",\"ncap\":\"⩃\",\"Ncaron\":\"Ň\",\"ncaron\":\"ň\",\"Ncedil\":\"Ņ\",\"ncedil\":\"ņ\",\"ncong\":\"≇\",\"ncongdot\":\"⩭̸\",\"ncup\":\"⩂\",\"Ncy\":\"Н\",\"ncy\":\"н\",\"ndash\":\"–\",\"nearhk\":\"⤤\",\"nearr\":\"↗\",\"neArr\":\"⇗\",\"nearrow\":\"↗\",\"ne\":\"≠\",\"nedot\":\"≐̸\",\"NegativeMediumSpace\":\"​\",\"NegativeThickSpace\":\"​\",\"NegativeThinSpace\":\"​\",\"NegativeVeryThinSpace\":\"​\",\"nequiv\":\"≢\",\"nesear\":\"⤨\",\"nesim\":\"≂̸\",\"NestedGreaterGreater\":\"≫\",\"NestedLessLess\":\"≪\",\"NewLine\":\"\\n\",\"nexist\":\"∄\",\"nexists\":\"∄\",\"Nfr\":\"𝔑\",\"nfr\":\"𝔫\",\"ngE\":\"≧̸\",\"nge\":\"≱\",\"ngeq\":\"≱\",\"ngeqq\":\"≧̸\",\"ngeqslant\":\"⩾̸\",\"nges\":\"⩾̸\",\"nGg\":\"⋙̸\",\"ngsim\":\"≵\",\"nGt\":\"≫⃒\",\"ngt\":\"≯\",\"ngtr\":\"≯\",\"nGtv\":\"≫̸\",\"nharr\":\"↮\",\"nhArr\":\"⇎\",\"nhpar\":\"⫲\",\"ni\":\"∋\",\"nis\":\"⋼\",\"nisd\":\"⋺\",\"niv\":\"∋\",\"NJcy\":\"Њ\",\"njcy\":\"њ\",\"nlarr\":\"↚\",\"nlArr\":\"⇍\",\"nldr\":\"‥\",\"nlE\":\"≦̸\",\"nle\":\"≰\",\"nleftarrow\":\"↚\",\"nLeftarrow\":\"⇍\",\"nleftrightarrow\":\"↮\",\"nLeftrightarrow\":\"⇎\",\"nleq\":\"≰\",\"nleqq\":\"≦̸\",\"nleqslant\":\"⩽̸\",\"nles\":\"⩽̸\",\"nless\":\"≮\",\"nLl\":\"⋘̸\",\"nlsim\":\"≴\",\"nLt\":\"≪⃒\",\"nlt\":\"≮\",\"nltri\":\"⋪\",\"nltrie\":\"⋬\",\"nLtv\":\"≪̸\",\"nmid\":\"∤\",\"NoBreak\":\"⁠\",\"NonBreakingSpace\":\" \",\"nopf\":\"𝕟\",\"Nopf\":\"ℕ\",\"Not\":\"⫬\",\"not\":\"¬\",\"NotCongruent\":\"≢\",\"NotCupCap\":\"≭\",\"NotDoubleVerticalBar\":\"∦\",\"NotElement\":\"∉\",\"NotEqual\":\"≠\",\"NotEqualTilde\":\"≂̸\",\"NotExists\":\"∄\",\"NotGreater\":\"≯\",\"NotGreaterEqual\":\"≱\",\"NotGreaterFullEqual\":\"≧̸\",\"NotGreaterGreater\":\"≫̸\",\"NotGreaterLess\":\"≹\",\"NotGreaterSlantEqual\":\"⩾̸\",\"NotGreaterTilde\":\"≵\",\"NotHumpDownHump\":\"≎̸\",\"NotHumpEqual\":\"≏̸\",\"notin\":\"∉\",\"notindot\":\"⋵̸\",\"notinE\":\"⋹̸\",\"notinva\":\"∉\",\"notinvb\":\"⋷\",\"notinvc\":\"⋶\",\"NotLeftTriangleBar\":\"⧏̸\",\"NotLeftTriangle\":\"⋪\",\"NotLeftTriangleEqual\":\"⋬\",\"NotLess\":\"≮\",\"NotLessEqual\":\"≰\",\"NotLessGreater\":\"≸\",\"NotLessLess\":\"≪̸\",\"NotLessSlantEqual\":\"⩽̸\",\"NotLessTilde\":\"≴\",\"NotNestedGreaterGreater\":\"⪢̸\",\"NotNestedLessLess\":\"⪡̸\",\"notni\":\"∌\",\"notniva\":\"∌\",\"notnivb\":\"⋾\",\"notnivc\":\"⋽\",\"NotPrecedes\":\"⊀\",\"NotPrecedesEqual\":\"⪯̸\",\"NotPrecedesSlantEqual\":\"⋠\",\"NotReverseElement\":\"∌\",\"NotRightTriangleBar\":\"⧐̸\",\"NotRightTriangle\":\"⋫\",\"NotRightTriangleEqual\":\"⋭\",\"NotSquareSubset\":\"⊏̸\",\"NotSquareSubsetEqual\":\"⋢\",\"NotSquareSuperset\":\"⊐̸\",\"NotSquareSupersetEqual\":\"⋣\",\"NotSubset\":\"⊂⃒\",\"NotSubsetEqual\":\"⊈\",\"NotSucceeds\":\"⊁\",\"NotSucceedsEqual\":\"⪰̸\",\"NotSucceedsSlantEqual\":\"⋡\",\"NotSucceedsTilde\":\"≿̸\",\"NotSuperset\":\"⊃⃒\",\"NotSupersetEqual\":\"⊉\",\"NotTilde\":\"≁\",\"NotTildeEqual\":\"≄\",\"NotTildeFullEqual\":\"≇\",\"NotTildeTilde\":\"≉\",\"NotVerticalBar\":\"∤\",\"nparallel\":\"∦\",\"npar\":\"∦\",\"nparsl\":\"⫽⃥\",\"npart\":\"∂̸\",\"npolint\":\"⨔\",\"npr\":\"⊀\",\"nprcue\":\"⋠\",\"nprec\":\"⊀\",\"npreceq\":\"⪯̸\",\"npre\":\"⪯̸\",\"nrarrc\":\"⤳̸\",\"nrarr\":\"↛\",\"nrArr\":\"⇏\",\"nrarrw\":\"↝̸\",\"nrightarrow\":\"↛\",\"nRightarrow\":\"⇏\",\"nrtri\":\"⋫\",\"nrtrie\":\"⋭\",\"nsc\":\"⊁\",\"nsccue\":\"⋡\",\"nsce\":\"⪰̸\",\"Nscr\":\"𝒩\",\"nscr\":\"𝓃\",\"nshortmid\":\"∤\",\"nshortparallel\":\"∦\",\"nsim\":\"≁\",\"nsime\":\"≄\",\"nsimeq\":\"≄\",\"nsmid\":\"∤\",\"nspar\":\"∦\",\"nsqsube\":\"⋢\",\"nsqsupe\":\"⋣\",\"nsub\":\"⊄\",\"nsubE\":\"⫅̸\",\"nsube\":\"⊈\",\"nsubset\":\"⊂⃒\",\"nsubseteq\":\"⊈\",\"nsubseteqq\":\"⫅̸\",\"nsucc\":\"⊁\",\"nsucceq\":\"⪰̸\",\"nsup\":\"⊅\",\"nsupE\":\"⫆̸\",\"nsupe\":\"⊉\",\"nsupset\":\"⊃⃒\",\"nsupseteq\":\"⊉\",\"nsupseteqq\":\"⫆̸\",\"ntgl\":\"≹\",\"Ntilde\":\"Ñ\",\"ntilde\":\"ñ\",\"ntlg\":\"≸\",\"ntriangleleft\":\"⋪\",\"ntrianglelefteq\":\"⋬\",\"ntriangleright\":\"⋫\",\"ntrianglerighteq\":\"⋭\",\"Nu\":\"Ν\",\"nu\":\"ν\",\"num\":\"#\",\"numero\":\"№\",\"numsp\":\" \",\"nvap\":\"≍⃒\",\"nvdash\":\"⊬\",\"nvDash\":\"⊭\",\"nVdash\":\"⊮\",\"nVDash\":\"⊯\",\"nvge\":\"≥⃒\",\"nvgt\":\">⃒\",\"nvHarr\":\"⤄\",\"nvinfin\":\"⧞\",\"nvlArr\":\"⤂\",\"nvle\":\"≤⃒\",\"nvlt\":\"<⃒\",\"nvltrie\":\"⊴⃒\",\"nvrArr\":\"⤃\",\"nvrtrie\":\"⊵⃒\",\"nvsim\":\"∼⃒\",\"nwarhk\":\"⤣\",\"nwarr\":\"↖\",\"nwArr\":\"⇖\",\"nwarrow\":\"↖\",\"nwnear\":\"⤧\",\"Oacute\":\"Ó\",\"oacute\":\"ó\",\"oast\":\"⊛\",\"Ocirc\":\"Ô\",\"ocirc\":\"ô\",\"ocir\":\"⊚\",\"Ocy\":\"О\",\"ocy\":\"о\",\"odash\":\"⊝\",\"Odblac\":\"Ő\",\"odblac\":\"ő\",\"odiv\":\"⨸\",\"odot\":\"⊙\",\"odsold\":\"⦼\",\"OElig\":\"Œ\",\"oelig\":\"œ\",\"ofcir\":\"⦿\",\"Ofr\":\"𝔒\",\"ofr\":\"𝔬\",\"ogon\":\"˛\",\"Ograve\":\"Ò\",\"ograve\":\"ò\",\"ogt\":\"⧁\",\"ohbar\":\"⦵\",\"ohm\":\"Ω\",\"oint\":\"∮\",\"olarr\":\"↺\",\"olcir\":\"⦾\",\"olcross\":\"⦻\",\"oline\":\"‾\",\"olt\":\"⧀\",\"Omacr\":\"Ō\",\"omacr\":\"ō\",\"Omega\":\"Ω\",\"omega\":\"ω\",\"Omicron\":\"Ο\",\"omicron\":\"ο\",\"omid\":\"⦶\",\"ominus\":\"⊖\",\"Oopf\":\"𝕆\",\"oopf\":\"𝕠\",\"opar\":\"⦷\",\"OpenCurlyDoubleQuote\":\"“\",\"OpenCurlyQuote\":\"‘\",\"operp\":\"⦹\",\"oplus\":\"⊕\",\"orarr\":\"↻\",\"Or\":\"⩔\",\"or\":\"∨\",\"ord\":\"⩝\",\"order\":\"ℴ\",\"orderof\":\"ℴ\",\"ordf\":\"ª\",\"ordm\":\"º\",\"origof\":\"⊶\",\"oror\":\"⩖\",\"orslope\":\"⩗\",\"orv\":\"⩛\",\"oS\":\"Ⓢ\",\"Oscr\":\"𝒪\",\"oscr\":\"ℴ\",\"Oslash\":\"Ø\",\"oslash\":\"ø\",\"osol\":\"⊘\",\"Otilde\":\"Õ\",\"otilde\":\"õ\",\"otimesas\":\"⨶\",\"Otimes\":\"⨷\",\"otimes\":\"⊗\",\"Ouml\":\"Ö\",\"ouml\":\"ö\",\"ovbar\":\"⌽\",\"OverBar\":\"‾\",\"OverBrace\":\"⏞\",\"OverBracket\":\"⎴\",\"OverParenthesis\":\"⏜\",\"para\":\"¶\",\"parallel\":\"∥\",\"par\":\"∥\",\"parsim\":\"⫳\",\"parsl\":\"⫽\",\"part\":\"∂\",\"PartialD\":\"∂\",\"Pcy\":\"П\",\"pcy\":\"п\",\"percnt\":\"%\",\"period\":\".\",\"permil\":\"‰\",\"perp\":\"⊥\",\"pertenk\":\"‱\",\"Pfr\":\"𝔓\",\"pfr\":\"𝔭\",\"Phi\":\"Φ\",\"phi\":\"φ\",\"phiv\":\"ϕ\",\"phmmat\":\"ℳ\",\"phone\":\"☎\",\"Pi\":\"Π\",\"pi\":\"π\",\"pitchfork\":\"⋔\",\"piv\":\"ϖ\",\"planck\":\"ℏ\",\"planckh\":\"ℎ\",\"plankv\":\"ℏ\",\"plusacir\":\"⨣\",\"plusb\":\"⊞\",\"pluscir\":\"⨢\",\"plus\":\"+\",\"plusdo\":\"∔\",\"plusdu\":\"⨥\",\"pluse\":\"⩲\",\"PlusMinus\":\"±\",\"plusmn\":\"±\",\"plussim\":\"⨦\",\"plustwo\":\"⨧\",\"pm\":\"±\",\"Poincareplane\":\"ℌ\",\"pointint\":\"⨕\",\"popf\":\"𝕡\",\"Popf\":\"ℙ\",\"pound\":\"£\",\"prap\":\"⪷\",\"Pr\":\"⪻\",\"pr\":\"≺\",\"prcue\":\"≼\",\"precapprox\":\"⪷\",\"prec\":\"≺\",\"preccurlyeq\":\"≼\",\"Precedes\":\"≺\",\"PrecedesEqual\":\"⪯\",\"PrecedesSlantEqual\":\"≼\",\"PrecedesTilde\":\"≾\",\"preceq\":\"⪯\",\"precnapprox\":\"⪹\",\"precneqq\":\"⪵\",\"precnsim\":\"⋨\",\"pre\":\"⪯\",\"prE\":\"⪳\",\"precsim\":\"≾\",\"prime\":\"′\",\"Prime\":\"″\",\"primes\":\"ℙ\",\"prnap\":\"⪹\",\"prnE\":\"⪵\",\"prnsim\":\"⋨\",\"prod\":\"∏\",\"Product\":\"∏\",\"profalar\":\"⌮\",\"profline\":\"⌒\",\"profsurf\":\"⌓\",\"prop\":\"∝\",\"Proportional\":\"∝\",\"Proportion\":\"∷\",\"propto\":\"∝\",\"prsim\":\"≾\",\"prurel\":\"⊰\",\"Pscr\":\"𝒫\",\"pscr\":\"𝓅\",\"Psi\":\"Ψ\",\"psi\":\"ψ\",\"puncsp\":\" \",\"Qfr\":\"𝔔\",\"qfr\":\"𝔮\",\"qint\":\"⨌\",\"qopf\":\"𝕢\",\"Qopf\":\"ℚ\",\"qprime\":\"⁗\",\"Qscr\":\"𝒬\",\"qscr\":\"𝓆\",\"quaternions\":\"ℍ\",\"quatint\":\"⨖\",\"quest\":\"?\",\"questeq\":\"≟\",\"quot\":\"\\\"\",\"QUOT\":\"\\\"\",\"rAarr\":\"⇛\",\"race\":\"∽̱\",\"Racute\":\"Ŕ\",\"racute\":\"ŕ\",\"radic\":\"√\",\"raemptyv\":\"⦳\",\"rang\":\"⟩\",\"Rang\":\"⟫\",\"rangd\":\"⦒\",\"range\":\"⦥\",\"rangle\":\"⟩\",\"raquo\":\"»\",\"rarrap\":\"⥵\",\"rarrb\":\"⇥\",\"rarrbfs\":\"⤠\",\"rarrc\":\"⤳\",\"rarr\":\"→\",\"Rarr\":\"↠\",\"rArr\":\"⇒\",\"rarrfs\":\"⤞\",\"rarrhk\":\"↪\",\"rarrlp\":\"↬\",\"rarrpl\":\"⥅\",\"rarrsim\":\"⥴\",\"Rarrtl\":\"⤖\",\"rarrtl\":\"↣\",\"rarrw\":\"↝\",\"ratail\":\"⤚\",\"rAtail\":\"⤜\",\"ratio\":\"∶\",\"rationals\":\"ℚ\",\"rbarr\":\"⤍\",\"rBarr\":\"⤏\",\"RBarr\":\"⤐\",\"rbbrk\":\"❳\",\"rbrace\":\"}\",\"rbrack\":\"]\",\"rbrke\":\"⦌\",\"rbrksld\":\"⦎\",\"rbrkslu\":\"⦐\",\"Rcaron\":\"Ř\",\"rcaron\":\"ř\",\"Rcedil\":\"Ŗ\",\"rcedil\":\"ŗ\",\"rceil\":\"⌉\",\"rcub\":\"}\",\"Rcy\":\"Р\",\"rcy\":\"р\",\"rdca\":\"⤷\",\"rdldhar\":\"⥩\",\"rdquo\":\"”\",\"rdquor\":\"”\",\"rdsh\":\"↳\",\"real\":\"ℜ\",\"realine\":\"ℛ\",\"realpart\":\"ℜ\",\"reals\":\"ℝ\",\"Re\":\"ℜ\",\"rect\":\"▭\",\"reg\":\"®\",\"REG\":\"®\",\"ReverseElement\":\"∋\",\"ReverseEquilibrium\":\"⇋\",\"ReverseUpEquilibrium\":\"⥯\",\"rfisht\":\"⥽\",\"rfloor\":\"⌋\",\"rfr\":\"𝔯\",\"Rfr\":\"ℜ\",\"rHar\":\"⥤\",\"rhard\":\"⇁\",\"rharu\":\"⇀\",\"rharul\":\"⥬\",\"Rho\":\"Ρ\",\"rho\":\"ρ\",\"rhov\":\"ϱ\",\"RightAngleBracket\":\"⟩\",\"RightArrowBar\":\"⇥\",\"rightarrow\":\"→\",\"RightArrow\":\"→\",\"Rightarrow\":\"⇒\",\"RightArrowLeftArrow\":\"⇄\",\"rightarrowtail\":\"↣\",\"RightCeiling\":\"⌉\",\"RightDoubleBracket\":\"⟧\",\"RightDownTeeVector\":\"⥝\",\"RightDownVectorBar\":\"⥕\",\"RightDownVector\":\"⇂\",\"RightFloor\":\"⌋\",\"rightharpoondown\":\"⇁\",\"rightharpoonup\":\"⇀\",\"rightleftarrows\":\"⇄\",\"rightleftharpoons\":\"⇌\",\"rightrightarrows\":\"⇉\",\"rightsquigarrow\":\"↝\",\"RightTeeArrow\":\"↦\",\"RightTee\":\"⊢\",\"RightTeeVector\":\"⥛\",\"rightthreetimes\":\"⋌\",\"RightTriangleBar\":\"⧐\",\"RightTriangle\":\"⊳\",\"RightTriangleEqual\":\"⊵\",\"RightUpDownVector\":\"⥏\",\"RightUpTeeVector\":\"⥜\",\"RightUpVectorBar\":\"⥔\",\"RightUpVector\":\"↾\",\"RightVectorBar\":\"⥓\",\"RightVector\":\"⇀\",\"ring\":\"˚\",\"risingdotseq\":\"≓\",\"rlarr\":\"⇄\",\"rlhar\":\"⇌\",\"rlm\":\"‏\",\"rmoustache\":\"⎱\",\"rmoust\":\"⎱\",\"rnmid\":\"⫮\",\"roang\":\"⟭\",\"roarr\":\"⇾\",\"robrk\":\"⟧\",\"ropar\":\"⦆\",\"ropf\":\"𝕣\",\"Ropf\":\"ℝ\",\"roplus\":\"⨮\",\"rotimes\":\"⨵\",\"RoundImplies\":\"⥰\",\"rpar\":\")\",\"rpargt\":\"⦔\",\"rppolint\":\"⨒\",\"rrarr\":\"⇉\",\"Rrightarrow\":\"⇛\",\"rsaquo\":\"›\",\"rscr\":\"𝓇\",\"Rscr\":\"ℛ\",\"rsh\":\"↱\",\"Rsh\":\"↱\",\"rsqb\":\"]\",\"rsquo\":\"’\",\"rsquor\":\"’\",\"rthree\":\"⋌\",\"rtimes\":\"⋊\",\"rtri\":\"▹\",\"rtrie\":\"⊵\",\"rtrif\":\"▸\",\"rtriltri\":\"⧎\",\"RuleDelayed\":\"⧴\",\"ruluhar\":\"⥨\",\"rx\":\"℞\",\"Sacute\":\"Ś\",\"sacute\":\"ś\",\"sbquo\":\"‚\",\"scap\":\"⪸\",\"Scaron\":\"Š\",\"scaron\":\"š\",\"Sc\":\"⪼\",\"sc\":\"≻\",\"sccue\":\"≽\",\"sce\":\"⪰\",\"scE\":\"⪴\",\"Scedil\":\"Ş\",\"scedil\":\"ş\",\"Scirc\":\"Ŝ\",\"scirc\":\"ŝ\",\"scnap\":\"⪺\",\"scnE\":\"⪶\",\"scnsim\":\"⋩\",\"scpolint\":\"⨓\",\"scsim\":\"≿\",\"Scy\":\"С\",\"scy\":\"с\",\"sdotb\":\"⊡\",\"sdot\":\"⋅\",\"sdote\":\"⩦\",\"searhk\":\"⤥\",\"searr\":\"↘\",\"seArr\":\"⇘\",\"searrow\":\"↘\",\"sect\":\"§\",\"semi\":\";\",\"seswar\":\"⤩\",\"setminus\":\"∖\",\"setmn\":\"∖\",\"sext\":\"✶\",\"Sfr\":\"𝔖\",\"sfr\":\"𝔰\",\"sfrown\":\"⌢\",\"sharp\":\"♯\",\"SHCHcy\":\"Щ\",\"shchcy\":\"щ\",\"SHcy\":\"Ш\",\"shcy\":\"ш\",\"ShortDownArrow\":\"↓\",\"ShortLeftArrow\":\"←\",\"shortmid\":\"∣\",\"shortparallel\":\"∥\",\"ShortRightArrow\":\"→\",\"ShortUpArrow\":\"↑\",\"shy\":\"­\",\"Sigma\":\"Σ\",\"sigma\":\"σ\",\"sigmaf\":\"ς\",\"sigmav\":\"ς\",\"sim\":\"∼\",\"simdot\":\"⩪\",\"sime\":\"≃\",\"simeq\":\"≃\",\"simg\":\"⪞\",\"simgE\":\"⪠\",\"siml\":\"⪝\",\"simlE\":\"⪟\",\"simne\":\"≆\",\"simplus\":\"⨤\",\"simrarr\":\"⥲\",\"slarr\":\"←\",\"SmallCircle\":\"∘\",\"smallsetminus\":\"∖\",\"smashp\":\"⨳\",\"smeparsl\":\"⧤\",\"smid\":\"∣\",\"smile\":\"⌣\",\"smt\":\"⪪\",\"smte\":\"⪬\",\"smtes\":\"⪬︀\",\"SOFTcy\":\"Ь\",\"softcy\":\"ь\",\"solbar\":\"⌿\",\"solb\":\"⧄\",\"sol\":\"/\",\"Sopf\":\"𝕊\",\"sopf\":\"𝕤\",\"spades\":\"♠\",\"spadesuit\":\"♠\",\"spar\":\"∥\",\"sqcap\":\"⊓\",\"sqcaps\":\"⊓︀\",\"sqcup\":\"⊔\",\"sqcups\":\"⊔︀\",\"Sqrt\":\"√\",\"sqsub\":\"⊏\",\"sqsube\":\"⊑\",\"sqsubset\":\"⊏\",\"sqsubseteq\":\"⊑\",\"sqsup\":\"⊐\",\"sqsupe\":\"⊒\",\"sqsupset\":\"⊐\",\"sqsupseteq\":\"⊒\",\"square\":\"□\",\"Square\":\"□\",\"SquareIntersection\":\"⊓\",\"SquareSubset\":\"⊏\",\"SquareSubsetEqual\":\"⊑\",\"SquareSuperset\":\"⊐\",\"SquareSupersetEqual\":\"⊒\",\"SquareUnion\":\"⊔\",\"squarf\":\"▪\",\"squ\":\"□\",\"squf\":\"▪\",\"srarr\":\"→\",\"Sscr\":\"𝒮\",\"sscr\":\"𝓈\",\"ssetmn\":\"∖\",\"ssmile\":\"⌣\",\"sstarf\":\"⋆\",\"Star\":\"⋆\",\"star\":\"☆\",\"starf\":\"★\",\"straightepsilon\":\"ϵ\",\"straightphi\":\"ϕ\",\"strns\":\"¯\",\"sub\":\"⊂\",\"Sub\":\"⋐\",\"subdot\":\"⪽\",\"subE\":\"⫅\",\"sube\":\"⊆\",\"subedot\":\"⫃\",\"submult\":\"⫁\",\"subnE\":\"⫋\",\"subne\":\"⊊\",\"subplus\":\"⪿\",\"subrarr\":\"⥹\",\"subset\":\"⊂\",\"Subset\":\"⋐\",\"subseteq\":\"⊆\",\"subseteqq\":\"⫅\",\"SubsetEqual\":\"⊆\",\"subsetneq\":\"⊊\",\"subsetneqq\":\"⫋\",\"subsim\":\"⫇\",\"subsub\":\"⫕\",\"subsup\":\"⫓\",\"succapprox\":\"⪸\",\"succ\":\"≻\",\"succcurlyeq\":\"≽\",\"Succeeds\":\"≻\",\"SucceedsEqual\":\"⪰\",\"SucceedsSlantEqual\":\"≽\",\"SucceedsTilde\":\"≿\",\"succeq\":\"⪰\",\"succnapprox\":\"⪺\",\"succneqq\":\"⪶\",\"succnsim\":\"⋩\",\"succsim\":\"≿\",\"SuchThat\":\"∋\",\"sum\":\"∑\",\"Sum\":\"∑\",\"sung\":\"♪\",\"sup1\":\"¹\",\"sup2\":\"²\",\"sup3\":\"³\",\"sup\":\"⊃\",\"Sup\":\"⋑\",\"supdot\":\"⪾\",\"supdsub\":\"⫘\",\"supE\":\"⫆\",\"supe\":\"⊇\",\"supedot\":\"⫄\",\"Superset\":\"⊃\",\"SupersetEqual\":\"⊇\",\"suphsol\":\"⟉\",\"suphsub\":\"⫗\",\"suplarr\":\"⥻\",\"supmult\":\"⫂\",\"supnE\":\"⫌\",\"supne\":\"⊋\",\"supplus\":\"⫀\",\"supset\":\"⊃\",\"Supset\":\"⋑\",\"supseteq\":\"⊇\",\"supseteqq\":\"⫆\",\"supsetneq\":\"⊋\",\"supsetneqq\":\"⫌\",\"supsim\":\"⫈\",\"supsub\":\"⫔\",\"supsup\":\"⫖\",\"swarhk\":\"⤦\",\"swarr\":\"↙\",\"swArr\":\"⇙\",\"swarrow\":\"↙\",\"swnwar\":\"⤪\",\"szlig\":\"ß\",\"Tab\":\"\\t\",\"target\":\"⌖\",\"Tau\":\"Τ\",\"tau\":\"τ\",\"tbrk\":\"⎴\",\"Tcaron\":\"Ť\",\"tcaron\":\"ť\",\"Tcedil\":\"Ţ\",\"tcedil\":\"ţ\",\"Tcy\":\"Т\",\"tcy\":\"т\",\"tdot\":\"⃛\",\"telrec\":\"⌕\",\"Tfr\":\"𝔗\",\"tfr\":\"𝔱\",\"there4\":\"∴\",\"therefore\":\"∴\",\"Therefore\":\"∴\",\"Theta\":\"Θ\",\"theta\":\"θ\",\"thetasym\":\"ϑ\",\"thetav\":\"ϑ\",\"thickapprox\":\"≈\",\"thicksim\":\"∼\",\"ThickSpace\":\"  \",\"ThinSpace\":\" \",\"thinsp\":\" \",\"thkap\":\"≈\",\"thksim\":\"∼\",\"THORN\":\"Þ\",\"thorn\":\"þ\",\"tilde\":\"˜\",\"Tilde\":\"∼\",\"TildeEqual\":\"≃\",\"TildeFullEqual\":\"≅\",\"TildeTilde\":\"≈\",\"timesbar\":\"⨱\",\"timesb\":\"⊠\",\"times\":\"×\",\"timesd\":\"⨰\",\"tint\":\"∭\",\"toea\":\"⤨\",\"topbot\":\"⌶\",\"topcir\":\"⫱\",\"top\":\"⊤\",\"Topf\":\"𝕋\",\"topf\":\"𝕥\",\"topfork\":\"⫚\",\"tosa\":\"⤩\",\"tprime\":\"‴\",\"trade\":\"™\",\"TRADE\":\"™\",\"triangle\":\"▵\",\"triangledown\":\"▿\",\"triangleleft\":\"◃\",\"trianglelefteq\":\"⊴\",\"triangleq\":\"≜\",\"triangleright\":\"▹\",\"trianglerighteq\":\"⊵\",\"tridot\":\"◬\",\"trie\":\"≜\",\"triminus\":\"⨺\",\"TripleDot\":\"⃛\",\"triplus\":\"⨹\",\"trisb\":\"⧍\",\"tritime\":\"⨻\",\"trpezium\":\"⏢\",\"Tscr\":\"𝒯\",\"tscr\":\"𝓉\",\"TScy\":\"Ц\",\"tscy\":\"ц\",\"TSHcy\":\"Ћ\",\"tshcy\":\"ћ\",\"Tstrok\":\"Ŧ\",\"tstrok\":\"ŧ\",\"twixt\":\"≬\",\"twoheadleftarrow\":\"↞\",\"twoheadrightarrow\":\"↠\",\"Uacute\":\"Ú\",\"uacute\":\"ú\",\"uarr\":\"↑\",\"Uarr\":\"↟\",\"uArr\":\"⇑\",\"Uarrocir\":\"⥉\",\"Ubrcy\":\"Ў\",\"ubrcy\":\"ў\",\"Ubreve\":\"Ŭ\",\"ubreve\":\"ŭ\",\"Ucirc\":\"Û\",\"ucirc\":\"û\",\"Ucy\":\"У\",\"ucy\":\"у\",\"udarr\":\"⇅\",\"Udblac\":\"Ű\",\"udblac\":\"ű\",\"udhar\":\"⥮\",\"ufisht\":\"⥾\",\"Ufr\":\"𝔘\",\"ufr\":\"𝔲\",\"Ugrave\":\"Ù\",\"ugrave\":\"ù\",\"uHar\":\"⥣\",\"uharl\":\"↿\",\"uharr\":\"↾\",\"uhblk\":\"▀\",\"ulcorn\":\"⌜\",\"ulcorner\":\"⌜\",\"ulcrop\":\"⌏\",\"ultri\":\"◸\",\"Umacr\":\"Ū\",\"umacr\":\"ū\",\"uml\":\"¨\",\"UnderBar\":\"_\",\"UnderBrace\":\"⏟\",\"UnderBracket\":\"⎵\",\"UnderParenthesis\":\"⏝\",\"Union\":\"⋃\",\"UnionPlus\":\"⊎\",\"Uogon\":\"Ų\",\"uogon\":\"ų\",\"Uopf\":\"𝕌\",\"uopf\":\"𝕦\",\"UpArrowBar\":\"⤒\",\"uparrow\":\"↑\",\"UpArrow\":\"↑\",\"Uparrow\":\"⇑\",\"UpArrowDownArrow\":\"⇅\",\"updownarrow\":\"↕\",\"UpDownArrow\":\"↕\",\"Updownarrow\":\"⇕\",\"UpEquilibrium\":\"⥮\",\"upharpoonleft\":\"↿\",\"upharpoonright\":\"↾\",\"uplus\":\"⊎\",\"UpperLeftArrow\":\"↖\",\"UpperRightArrow\":\"↗\",\"upsi\":\"υ\",\"Upsi\":\"ϒ\",\"upsih\":\"ϒ\",\"Upsilon\":\"Υ\",\"upsilon\":\"υ\",\"UpTeeArrow\":\"↥\",\"UpTee\":\"⊥\",\"upuparrows\":\"⇈\",\"urcorn\":\"⌝\",\"urcorner\":\"⌝\",\"urcrop\":\"⌎\",\"Uring\":\"Ů\",\"uring\":\"ů\",\"urtri\":\"◹\",\"Uscr\":\"𝒰\",\"uscr\":\"𝓊\",\"utdot\":\"⋰\",\"Utilde\":\"Ũ\",\"utilde\":\"ũ\",\"utri\":\"▵\",\"utrif\":\"▴\",\"uuarr\":\"⇈\",\"Uuml\":\"Ü\",\"uuml\":\"ü\",\"uwangle\":\"⦧\",\"vangrt\":\"⦜\",\"varepsilon\":\"ϵ\",\"varkappa\":\"ϰ\",\"varnothing\":\"∅\",\"varphi\":\"ϕ\",\"varpi\":\"ϖ\",\"varpropto\":\"∝\",\"varr\":\"↕\",\"vArr\":\"⇕\",\"varrho\":\"ϱ\",\"varsigma\":\"ς\",\"varsubsetneq\":\"⊊︀\",\"varsubsetneqq\":\"⫋︀\",\"varsupsetneq\":\"⊋︀\",\"varsupsetneqq\":\"⫌︀\",\"vartheta\":\"ϑ\",\"vartriangleleft\":\"⊲\",\"vartriangleright\":\"⊳\",\"vBar\":\"⫨\",\"Vbar\":\"⫫\",\"vBarv\":\"⫩\",\"Vcy\":\"В\",\"vcy\":\"в\",\"vdash\":\"⊢\",\"vDash\":\"⊨\",\"Vdash\":\"⊩\",\"VDash\":\"⊫\",\"Vdashl\":\"⫦\",\"veebar\":\"⊻\",\"vee\":\"∨\",\"Vee\":\"⋁\",\"veeeq\":\"≚\",\"vellip\":\"⋮\",\"verbar\":\"|\",\"Verbar\":\"‖\",\"vert\":\"|\",\"Vert\":\"‖\",\"VerticalBar\":\"∣\",\"VerticalLine\":\"|\",\"VerticalSeparator\":\"❘\",\"VerticalTilde\":\"≀\",\"VeryThinSpace\":\" \",\"Vfr\":\"𝔙\",\"vfr\":\"𝔳\",\"vltri\":\"⊲\",\"vnsub\":\"⊂⃒\",\"vnsup\":\"⊃⃒\",\"Vopf\":\"𝕍\",\"vopf\":\"𝕧\",\"vprop\":\"∝\",\"vrtri\":\"⊳\",\"Vscr\":\"𝒱\",\"vscr\":\"𝓋\",\"vsubnE\":\"⫋︀\",\"vsubne\":\"⊊︀\",\"vsupnE\":\"⫌︀\",\"vsupne\":\"⊋︀\",\"Vvdash\":\"⊪\",\"vzigzag\":\"⦚\",\"Wcirc\":\"Ŵ\",\"wcirc\":\"ŵ\",\"wedbar\":\"⩟\",\"wedge\":\"∧\",\"Wedge\":\"⋀\",\"wedgeq\":\"≙\",\"weierp\":\"℘\",\"Wfr\":\"𝔚\",\"wfr\":\"𝔴\",\"Wopf\":\"𝕎\",\"wopf\":\"𝕨\",\"wp\":\"℘\",\"wr\":\"≀\",\"wreath\":\"≀\",\"Wscr\":\"𝒲\",\"wscr\":\"𝓌\",\"xcap\":\"⋂\",\"xcirc\":\"◯\",\"xcup\":\"⋃\",\"xdtri\":\"▽\",\"Xfr\":\"𝔛\",\"xfr\":\"𝔵\",\"xharr\":\"⟷\",\"xhArr\":\"⟺\",\"Xi\":\"Ξ\",\"xi\":\"ξ\",\"xlarr\":\"⟵\",\"xlArr\":\"⟸\",\"xmap\":\"⟼\",\"xnis\":\"⋻\",\"xodot\":\"⨀\",\"Xopf\":\"𝕏\",\"xopf\":\"𝕩\",\"xoplus\":\"⨁\",\"xotime\":\"⨂\",\"xrarr\":\"⟶\",\"xrArr\":\"⟹\",\"Xscr\":\"𝒳\",\"xscr\":\"𝓍\",\"xsqcup\":\"⨆\",\"xuplus\":\"⨄\",\"xutri\":\"△\",\"xvee\":\"⋁\",\"xwedge\":\"⋀\",\"Yacute\":\"Ý\",\"yacute\":\"ý\",\"YAcy\":\"Я\",\"yacy\":\"я\",\"Ycirc\":\"Ŷ\",\"ycirc\":\"ŷ\",\"Ycy\":\"Ы\",\"ycy\":\"ы\",\"yen\":\"¥\",\"Yfr\":\"𝔜\",\"yfr\":\"𝔶\",\"YIcy\":\"Ї\",\"yicy\":\"ї\",\"Yopf\":\"𝕐\",\"yopf\":\"𝕪\",\"Yscr\":\"𝒴\",\"yscr\":\"𝓎\",\"YUcy\":\"Ю\",\"yucy\":\"ю\",\"yuml\":\"ÿ\",\"Yuml\":\"Ÿ\",\"Zacute\":\"Ź\",\"zacute\":\"ź\",\"Zcaron\":\"Ž\",\"zcaron\":\"ž\",\"Zcy\":\"З\",\"zcy\":\"з\",\"Zdot\":\"Ż\",\"zdot\":\"ż\",\"zeetrf\":\"ℨ\",\"ZeroWidthSpace\":\"​\",\"Zeta\":\"Ζ\",\"zeta\":\"ζ\",\"zfr\":\"𝔷\",\"Zfr\":\"ℨ\",\"ZHcy\":\"Ж\",\"zhcy\":\"ж\",\"zigrarr\":\"⇝\",\"zopf\":\"𝕫\",\"Zopf\":\"ℤ\",\"Zscr\":\"𝒵\",\"zscr\":\"𝓏\",\"zwj\":\"‍\",\"zwnj\":\"‌\"}");

/***/ }),

/***/ "0b32":
/***/ (function(module, exports, __webpack_require__) {

module.exports = Tokenizer;

var decodeCodePoint = __webpack_require__("c66d");
var entityMap = __webpack_require__("0b1b");
var legacyMap = __webpack_require__("c461");
var xmlMap = __webpack_require__("85fb");

var i = 0;

var TEXT = i++;
var BEFORE_TAG_NAME = i++; //after <
var IN_TAG_NAME = i++;
var IN_SELF_CLOSING_TAG = i++;
var BEFORE_CLOSING_TAG_NAME = i++;
var IN_CLOSING_TAG_NAME = i++;
var AFTER_CLOSING_TAG_NAME = i++;

//attributes
var BEFORE_ATTRIBUTE_NAME = i++;
var IN_ATTRIBUTE_NAME = i++;
var AFTER_ATTRIBUTE_NAME = i++;
var BEFORE_ATTRIBUTE_VALUE = i++;
var IN_ATTRIBUTE_VALUE_DQ = i++; // "
var IN_ATTRIBUTE_VALUE_SQ = i++; // '
var IN_ATTRIBUTE_VALUE_NQ = i++;

//declarations
var BEFORE_DECLARATION = i++; // !
var IN_DECLARATION = i++;

//processing instructions
var IN_PROCESSING_INSTRUCTION = i++; // ?

//comments
var BEFORE_COMMENT = i++;
var IN_COMMENT = i++;
var AFTER_COMMENT_1 = i++;
var AFTER_COMMENT_2 = i++;

//cdata
var BEFORE_CDATA_1 = i++; // [
var BEFORE_CDATA_2 = i++; // C
var BEFORE_CDATA_3 = i++; // D
var BEFORE_CDATA_4 = i++; // A
var BEFORE_CDATA_5 = i++; // T
var BEFORE_CDATA_6 = i++; // A
var IN_CDATA = i++; // [
var AFTER_CDATA_1 = i++; // ]
var AFTER_CDATA_2 = i++; // ]

//special tags
var BEFORE_SPECIAL = i++; //S
var BEFORE_SPECIAL_END = i++; //S

var BEFORE_SCRIPT_1 = i++; //C
var BEFORE_SCRIPT_2 = i++; //R
var BEFORE_SCRIPT_3 = i++; //I
var BEFORE_SCRIPT_4 = i++; //P
var BEFORE_SCRIPT_5 = i++; //T
var AFTER_SCRIPT_1 = i++; //C
var AFTER_SCRIPT_2 = i++; //R
var AFTER_SCRIPT_3 = i++; //I
var AFTER_SCRIPT_4 = i++; //P
var AFTER_SCRIPT_5 = i++; //T

var BEFORE_STYLE_1 = i++; //T
var BEFORE_STYLE_2 = i++; //Y
var BEFORE_STYLE_3 = i++; //L
var BEFORE_STYLE_4 = i++; //E
var AFTER_STYLE_1 = i++; //T
var AFTER_STYLE_2 = i++; //Y
var AFTER_STYLE_3 = i++; //L
var AFTER_STYLE_4 = i++; //E

var BEFORE_ENTITY = i++; //&
var BEFORE_NUMERIC_ENTITY = i++; //#
var IN_NAMED_ENTITY = i++;
var IN_NUMERIC_ENTITY = i++;
var IN_HEX_ENTITY = i++; //X

var j = 0;

var SPECIAL_NONE = j++;
var SPECIAL_SCRIPT = j++;
var SPECIAL_STYLE = j++;

function whitespace(c) {
    return c === " " || c === "\n" || c === "\t" || c === "\f" || c === "\r";
}

function ifElseState(upper, SUCCESS, FAILURE) {
    var lower = upper.toLowerCase();

    if (upper === lower) {
        return function(c) {
            if (c === lower) {
                this._state = SUCCESS;
            } else {
                this._state = FAILURE;
                this._index--;
            }
        };
    } else {
        return function(c) {
            if (c === lower || c === upper) {
                this._state = SUCCESS;
            } else {
                this._state = FAILURE;
                this._index--;
            }
        };
    }
}

function consumeSpecialNameChar(upper, NEXT_STATE) {
    var lower = upper.toLowerCase();

    return function(c) {
        if (c === lower || c === upper) {
            this._state = NEXT_STATE;
        } else {
            this._state = IN_TAG_NAME;
            this._index--; //consume the token again
        }
    };
}

function Tokenizer(options, cbs) {
    this._state = TEXT;
    this._buffer = "";
    this._sectionStart = 0;
    this._index = 0;
    this._bufferOffset = 0; //chars removed from _buffer
    this._baseState = TEXT;
    this._special = SPECIAL_NONE;
    this._cbs = cbs;
    this._running = true;
    this._ended = false;
    this._xmlMode = !!(options && options.xmlMode);
    this._decodeEntities = !!(options && options.decodeEntities);
}

Tokenizer.prototype._stateText = function(c) {
    if (c === "<") {
        if (this._index > this._sectionStart) {
            this._cbs.ontext(this._getSection());
        }
        this._state = BEFORE_TAG_NAME;
        this._sectionStart = this._index;
    } else if (
        this._decodeEntities &&
        this._special === SPECIAL_NONE &&
        c === "&"
    ) {
        if (this._index > this._sectionStart) {
            this._cbs.ontext(this._getSection());
        }
        this._baseState = TEXT;
        this._state = BEFORE_ENTITY;
        this._sectionStart = this._index;
    }
};

Tokenizer.prototype._stateBeforeTagName = function(c) {
    if (c === "/") {
        this._state = BEFORE_CLOSING_TAG_NAME;
    } else if (c === "<") {
        this._cbs.ontext(this._getSection());
        this._sectionStart = this._index;
    } else if (c === ">" || this._special !== SPECIAL_NONE || whitespace(c)) {
        this._state = TEXT;
    } else if (c === "!") {
        this._state = BEFORE_DECLARATION;
        this._sectionStart = this._index + 1;
    } else if (c === "?") {
        this._state = IN_PROCESSING_INSTRUCTION;
        this._sectionStart = this._index + 1;
    } else {
        this._state =
            !this._xmlMode && (c === "s" || c === "S")
                ? BEFORE_SPECIAL
                : IN_TAG_NAME;
        this._sectionStart = this._index;
    }
};

Tokenizer.prototype._stateInTagName = function(c) {
    if (c === "/" || c === ">" || whitespace(c)) {
        this._emitToken("onopentagname");
        this._state = BEFORE_ATTRIBUTE_NAME;
        this._index--;
    }
};

Tokenizer.prototype._stateBeforeCloseingTagName = function(c) {
    if (whitespace(c));
    else if (c === ">") {
        this._state = TEXT;
    } else if (this._special !== SPECIAL_NONE) {
        if (c === "s" || c === "S") {
            this._state = BEFORE_SPECIAL_END;
        } else {
            this._state = TEXT;
            this._index--;
        }
    } else {
        this._state = IN_CLOSING_TAG_NAME;
        this._sectionStart = this._index;
    }
};

Tokenizer.prototype._stateInCloseingTagName = function(c) {
    if (c === ">" || whitespace(c)) {
        this._emitToken("onclosetag");
        this._state = AFTER_CLOSING_TAG_NAME;
        this._index--;
    }
};

Tokenizer.prototype._stateAfterCloseingTagName = function(c) {
    //skip everything until ">"
    if (c === ">") {
        this._state = TEXT;
        this._sectionStart = this._index + 1;
    }
};

Tokenizer.prototype._stateBeforeAttributeName = function(c) {
    if (c === ">") {
        this._cbs.onopentagend();
        this._state = TEXT;
        this._sectionStart = this._index + 1;
    } else if (c === "/") {
        this._state = IN_SELF_CLOSING_TAG;
    } else if (!whitespace(c)) {
        this._state = IN_ATTRIBUTE_NAME;
        this._sectionStart = this._index;
    }
};

Tokenizer.prototype._stateInSelfClosingTag = function(c) {
    if (c === ">") {
        this._cbs.onselfclosingtag();
        this._state = TEXT;
        this._sectionStart = this._index + 1;
    } else if (!whitespace(c)) {
        this._state = BEFORE_ATTRIBUTE_NAME;
        this._index--;
    }
};

Tokenizer.prototype._stateInAttributeName = function(c) {
    if (c === "=" || c === "/" || c === ">" || whitespace(c)) {
        this._cbs.onattribname(this._getSection());
        this._sectionStart = -1;
        this._state = AFTER_ATTRIBUTE_NAME;
        this._index--;
    }
};

Tokenizer.prototype._stateAfterAttributeName = function(c) {
    if (c === "=") {
        this._state = BEFORE_ATTRIBUTE_VALUE;
    } else if (c === "/" || c === ">") {
        this._cbs.onattribend();
        this._state = BEFORE_ATTRIBUTE_NAME;
        this._index--;
    } else if (!whitespace(c)) {
        this._cbs.onattribend();
        this._state = IN_ATTRIBUTE_NAME;
        this._sectionStart = this._index;
    }
};

Tokenizer.prototype._stateBeforeAttributeValue = function(c) {
    if (c === '"') {
        this._state = IN_ATTRIBUTE_VALUE_DQ;
        this._sectionStart = this._index + 1;
    } else if (c === "'") {
        this._state = IN_ATTRIBUTE_VALUE_SQ;
        this._sectionStart = this._index + 1;
    } else if (!whitespace(c)) {
        this._state = IN_ATTRIBUTE_VALUE_NQ;
        this._sectionStart = this._index;
        this._index--; //reconsume token
    }
};

Tokenizer.prototype._stateInAttributeValueDoubleQuotes = function(c) {
    if (c === '"') {
        this._emitToken("onattribdata");
        this._cbs.onattribend();
        this._state = BEFORE_ATTRIBUTE_NAME;
    } else if (this._decodeEntities && c === "&") {
        this._emitToken("onattribdata");
        this._baseState = this._state;
        this._state = BEFORE_ENTITY;
        this._sectionStart = this._index;
    }
};

Tokenizer.prototype._stateInAttributeValueSingleQuotes = function(c) {
    if (c === "'") {
        this._emitToken("onattribdata");
        this._cbs.onattribend();
        this._state = BEFORE_ATTRIBUTE_NAME;
    } else if (this._decodeEntities && c === "&") {
        this._emitToken("onattribdata");
        this._baseState = this._state;
        this._state = BEFORE_ENTITY;
        this._sectionStart = this._index;
    }
};

Tokenizer.prototype._stateInAttributeValueNoQuotes = function(c) {
    if (whitespace(c) || c === ">") {
        this._emitToken("onattribdata");
        this._cbs.onattribend();
        this._state = BEFORE_ATTRIBUTE_NAME;
        this._index--;
    } else if (this._decodeEntities && c === "&") {
        this._emitToken("onattribdata");
        this._baseState = this._state;
        this._state = BEFORE_ENTITY;
        this._sectionStart = this._index;
    }
};

Tokenizer.prototype._stateBeforeDeclaration = function(c) {
    this._state =
        c === "["
            ? BEFORE_CDATA_1
            : c === "-"
                ? BEFORE_COMMENT
                : IN_DECLARATION;
};

Tokenizer.prototype._stateInDeclaration = function(c) {
    if (c === ">") {
        this._cbs.ondeclaration(this._getSection());
        this._state = TEXT;
        this._sectionStart = this._index + 1;
    }
};

Tokenizer.prototype._stateInProcessingInstruction = function(c) {
    if (c === ">") {
        this._cbs.onprocessinginstruction(this._getSection());
        this._state = TEXT;
        this._sectionStart = this._index + 1;
    }
};

Tokenizer.prototype._stateBeforeComment = function(c) {
    if (c === "-") {
        this._state = IN_COMMENT;
        this._sectionStart = this._index + 1;
    } else {
        this._state = IN_DECLARATION;
    }
};

Tokenizer.prototype._stateInComment = function(c) {
    if (c === "-") this._state = AFTER_COMMENT_1;
};

Tokenizer.prototype._stateAfterComment1 = function(c) {
    if (c === "-") {
        this._state = AFTER_COMMENT_2;
    } else {
        this._state = IN_COMMENT;
    }
};

Tokenizer.prototype._stateAfterComment2 = function(c) {
    if (c === ">") {
        //remove 2 trailing chars
        this._cbs.oncomment(
            this._buffer.substring(this._sectionStart, this._index - 2)
        );
        this._state = TEXT;
        this._sectionStart = this._index + 1;
    } else if (c !== "-") {
        this._state = IN_COMMENT;
    }
    // else: stay in AFTER_COMMENT_2 (`--->`)
};

Tokenizer.prototype._stateBeforeCdata1 = ifElseState(
    "C",
    BEFORE_CDATA_2,
    IN_DECLARATION
);
Tokenizer.prototype._stateBeforeCdata2 = ifElseState(
    "D",
    BEFORE_CDATA_3,
    IN_DECLARATION
);
Tokenizer.prototype._stateBeforeCdata3 = ifElseState(
    "A",
    BEFORE_CDATA_4,
    IN_DECLARATION
);
Tokenizer.prototype._stateBeforeCdata4 = ifElseState(
    "T",
    BEFORE_CDATA_5,
    IN_DECLARATION
);
Tokenizer.prototype._stateBeforeCdata5 = ifElseState(
    "A",
    BEFORE_CDATA_6,
    IN_DECLARATION
);

Tokenizer.prototype._stateBeforeCdata6 = function(c) {
    if (c === "[") {
        this._state = IN_CDATA;
        this._sectionStart = this._index + 1;
    } else {
        this._state = IN_DECLARATION;
        this._index--;
    }
};

Tokenizer.prototype._stateInCdata = function(c) {
    if (c === "]") this._state = AFTER_CDATA_1;
};

Tokenizer.prototype._stateAfterCdata1 = function(c) {
    if (c === "]") this._state = AFTER_CDATA_2;
    else this._state = IN_CDATA;
};

Tokenizer.prototype._stateAfterCdata2 = function(c) {
    if (c === ">") {
        //remove 2 trailing chars
        this._cbs.oncdata(
            this._buffer.substring(this._sectionStart, this._index - 2)
        );
        this._state = TEXT;
        this._sectionStart = this._index + 1;
    } else if (c !== "]") {
        this._state = IN_CDATA;
    }
    //else: stay in AFTER_CDATA_2 (`]]]>`)
};

Tokenizer.prototype._stateBeforeSpecial = function(c) {
    if (c === "c" || c === "C") {
        this._state = BEFORE_SCRIPT_1;
    } else if (c === "t" || c === "T") {
        this._state = BEFORE_STYLE_1;
    } else {
        this._state = IN_TAG_NAME;
        this._index--; //consume the token again
    }
};

Tokenizer.prototype._stateBeforeSpecialEnd = function(c) {
    if (this._special === SPECIAL_SCRIPT && (c === "c" || c === "C")) {
        this._state = AFTER_SCRIPT_1;
    } else if (this._special === SPECIAL_STYLE && (c === "t" || c === "T")) {
        this._state = AFTER_STYLE_1;
    } else this._state = TEXT;
};

Tokenizer.prototype._stateBeforeScript1 = consumeSpecialNameChar(
    "R",
    BEFORE_SCRIPT_2
);
Tokenizer.prototype._stateBeforeScript2 = consumeSpecialNameChar(
    "I",
    BEFORE_SCRIPT_3
);
Tokenizer.prototype._stateBeforeScript3 = consumeSpecialNameChar(
    "P",
    BEFORE_SCRIPT_4
);
Tokenizer.prototype._stateBeforeScript4 = consumeSpecialNameChar(
    "T",
    BEFORE_SCRIPT_5
);

Tokenizer.prototype._stateBeforeScript5 = function(c) {
    if (c === "/" || c === ">" || whitespace(c)) {
        this._special = SPECIAL_SCRIPT;
    }
    this._state = IN_TAG_NAME;
    this._index--; //consume the token again
};

Tokenizer.prototype._stateAfterScript1 = ifElseState("R", AFTER_SCRIPT_2, TEXT);
Tokenizer.prototype._stateAfterScript2 = ifElseState("I", AFTER_SCRIPT_3, TEXT);
Tokenizer.prototype._stateAfterScript3 = ifElseState("P", AFTER_SCRIPT_4, TEXT);
Tokenizer.prototype._stateAfterScript4 = ifElseState("T", AFTER_SCRIPT_5, TEXT);

Tokenizer.prototype._stateAfterScript5 = function(c) {
    if (c === ">" || whitespace(c)) {
        this._special = SPECIAL_NONE;
        this._state = IN_CLOSING_TAG_NAME;
        this._sectionStart = this._index - 6;
        this._index--; //reconsume the token
    } else this._state = TEXT;
};

Tokenizer.prototype._stateBeforeStyle1 = consumeSpecialNameChar(
    "Y",
    BEFORE_STYLE_2
);
Tokenizer.prototype._stateBeforeStyle2 = consumeSpecialNameChar(
    "L",
    BEFORE_STYLE_3
);
Tokenizer.prototype._stateBeforeStyle3 = consumeSpecialNameChar(
    "E",
    BEFORE_STYLE_4
);

Tokenizer.prototype._stateBeforeStyle4 = function(c) {
    if (c === "/" || c === ">" || whitespace(c)) {
        this._special = SPECIAL_STYLE;
    }
    this._state = IN_TAG_NAME;
    this._index--; //consume the token again
};

Tokenizer.prototype._stateAfterStyle1 = ifElseState("Y", AFTER_STYLE_2, TEXT);
Tokenizer.prototype._stateAfterStyle2 = ifElseState("L", AFTER_STYLE_3, TEXT);
Tokenizer.prototype._stateAfterStyle3 = ifElseState("E", AFTER_STYLE_4, TEXT);

Tokenizer.prototype._stateAfterStyle4 = function(c) {
    if (c === ">" || whitespace(c)) {
        this._special = SPECIAL_NONE;
        this._state = IN_CLOSING_TAG_NAME;
        this._sectionStart = this._index - 5;
        this._index--; //reconsume the token
    } else this._state = TEXT;
};

Tokenizer.prototype._stateBeforeEntity = ifElseState(
    "#",
    BEFORE_NUMERIC_ENTITY,
    IN_NAMED_ENTITY
);
Tokenizer.prototype._stateBeforeNumericEntity = ifElseState(
    "X",
    IN_HEX_ENTITY,
    IN_NUMERIC_ENTITY
);

//for entities terminated with a semicolon
Tokenizer.prototype._parseNamedEntityStrict = function() {
    //offset = 1
    if (this._sectionStart + 1 < this._index) {
        var entity = this._buffer.substring(
                this._sectionStart + 1,
                this._index
            ),
            map = this._xmlMode ? xmlMap : entityMap;

        if (map.hasOwnProperty(entity)) {
            this._emitPartial(map[entity]);
            this._sectionStart = this._index + 1;
        }
    }
};

//parses legacy entities (without trailing semicolon)
Tokenizer.prototype._parseLegacyEntity = function() {
    var start = this._sectionStart + 1,
        limit = this._index - start;

    if (limit > 6) limit = 6; //the max length of legacy entities is 6

    while (limit >= 2) {
        //the min length of legacy entities is 2
        var entity = this._buffer.substr(start, limit);

        if (legacyMap.hasOwnProperty(entity)) {
            this._emitPartial(legacyMap[entity]);
            this._sectionStart += limit + 1;
            return;
        } else {
            limit--;
        }
    }
};

Tokenizer.prototype._stateInNamedEntity = function(c) {
    if (c === ";") {
        this._parseNamedEntityStrict();
        if (this._sectionStart + 1 < this._index && !this._xmlMode) {
            this._parseLegacyEntity();
        }
        this._state = this._baseState;
    } else if (
        (c < "a" || c > "z") &&
        (c < "A" || c > "Z") &&
        (c < "0" || c > "9")
    ) {
        if (this._xmlMode);
        else if (this._sectionStart + 1 === this._index);
        else if (this._baseState !== TEXT) {
            if (c !== "=") {
                this._parseNamedEntityStrict();
            }
        } else {
            this._parseLegacyEntity();
        }

        this._state = this._baseState;
        this._index--;
    }
};

Tokenizer.prototype._decodeNumericEntity = function(offset, base) {
    var sectionStart = this._sectionStart + offset;

    if (sectionStart !== this._index) {
        //parse entity
        var entity = this._buffer.substring(sectionStart, this._index);
        var parsed = parseInt(entity, base);

        this._emitPartial(decodeCodePoint(parsed));
        this._sectionStart = this._index;
    } else {
        this._sectionStart--;
    }

    this._state = this._baseState;
};

Tokenizer.prototype._stateInNumericEntity = function(c) {
    if (c === ";") {
        this._decodeNumericEntity(2, 10);
        this._sectionStart++;
    } else if (c < "0" || c > "9") {
        if (!this._xmlMode) {
            this._decodeNumericEntity(2, 10);
        } else {
            this._state = this._baseState;
        }
        this._index--;
    }
};

Tokenizer.prototype._stateInHexEntity = function(c) {
    if (c === ";") {
        this._decodeNumericEntity(3, 16);
        this._sectionStart++;
    } else if (
        (c < "a" || c > "f") &&
        (c < "A" || c > "F") &&
        (c < "0" || c > "9")
    ) {
        if (!this._xmlMode) {
            this._decodeNumericEntity(3, 16);
        } else {
            this._state = this._baseState;
        }
        this._index--;
    }
};

Tokenizer.prototype._cleanup = function() {
    if (this._sectionStart < 0) {
        this._buffer = "";
        this._bufferOffset += this._index;
        this._index = 0;
    } else if (this._running) {
        if (this._state === TEXT) {
            if (this._sectionStart !== this._index) {
                this._cbs.ontext(this._buffer.substr(this._sectionStart));
            }
            this._buffer = "";
            this._bufferOffset += this._index;
            this._index = 0;
        } else if (this._sectionStart === this._index) {
            //the section just started
            this._buffer = "";
            this._bufferOffset += this._index;
            this._index = 0;
        } else {
            //remove everything unnecessary
            this._buffer = this._buffer.substr(this._sectionStart);
            this._index -= this._sectionStart;
            this._bufferOffset += this._sectionStart;
        }

        this._sectionStart = 0;
    }
};

//TODO make events conditional
Tokenizer.prototype.write = function(chunk) {
    if (this._ended) this._cbs.onerror(Error(".write() after done!"));

    this._buffer += chunk;
    this._parse();
};

Tokenizer.prototype._parse = function() {
    while (this._index < this._buffer.length && this._running) {
        var c = this._buffer.charAt(this._index);
        if (this._state === TEXT) {
            this._stateText(c);
        } else if (this._state === BEFORE_TAG_NAME) {
            this._stateBeforeTagName(c);
        } else if (this._state === IN_TAG_NAME) {
            this._stateInTagName(c);
        } else if (this._state === BEFORE_CLOSING_TAG_NAME) {
            this._stateBeforeCloseingTagName(c);
        } else if (this._state === IN_CLOSING_TAG_NAME) {
            this._stateInCloseingTagName(c);
        } else if (this._state === AFTER_CLOSING_TAG_NAME) {
            this._stateAfterCloseingTagName(c);
        } else if (this._state === IN_SELF_CLOSING_TAG) {
            this._stateInSelfClosingTag(c);
        } else if (this._state === BEFORE_ATTRIBUTE_NAME) {

        /*
		*	attributes
		*/
            this._stateBeforeAttributeName(c);
        } else if (this._state === IN_ATTRIBUTE_NAME) {
            this._stateInAttributeName(c);
        } else if (this._state === AFTER_ATTRIBUTE_NAME) {
            this._stateAfterAttributeName(c);
        } else if (this._state === BEFORE_ATTRIBUTE_VALUE) {
            this._stateBeforeAttributeValue(c);
        } else if (this._state === IN_ATTRIBUTE_VALUE_DQ) {
            this._stateInAttributeValueDoubleQuotes(c);
        } else if (this._state === IN_ATTRIBUTE_VALUE_SQ) {
            this._stateInAttributeValueSingleQuotes(c);
        } else if (this._state === IN_ATTRIBUTE_VALUE_NQ) {
            this._stateInAttributeValueNoQuotes(c);
        } else if (this._state === BEFORE_DECLARATION) {

        /*
		*	declarations
		*/
            this._stateBeforeDeclaration(c);
        } else if (this._state === IN_DECLARATION) {
            this._stateInDeclaration(c);
        } else if (this._state === IN_PROCESSING_INSTRUCTION) {

        /*
		*	processing instructions
		*/
            this._stateInProcessingInstruction(c);
        } else if (this._state === BEFORE_COMMENT) {

        /*
		*	comments
		*/
            this._stateBeforeComment(c);
        } else if (this._state === IN_COMMENT) {
            this._stateInComment(c);
        } else if (this._state === AFTER_COMMENT_1) {
            this._stateAfterComment1(c);
        } else if (this._state === AFTER_COMMENT_2) {
            this._stateAfterComment2(c);
        } else if (this._state === BEFORE_CDATA_1) {

        /*
		*	cdata
		*/
            this._stateBeforeCdata1(c);
        } else if (this._state === BEFORE_CDATA_2) {
            this._stateBeforeCdata2(c);
        } else if (this._state === BEFORE_CDATA_3) {
            this._stateBeforeCdata3(c);
        } else if (this._state === BEFORE_CDATA_4) {
            this._stateBeforeCdata4(c);
        } else if (this._state === BEFORE_CDATA_5) {
            this._stateBeforeCdata5(c);
        } else if (this._state === BEFORE_CDATA_6) {
            this._stateBeforeCdata6(c);
        } else if (this._state === IN_CDATA) {
            this._stateInCdata(c);
        } else if (this._state === AFTER_CDATA_1) {
            this._stateAfterCdata1(c);
        } else if (this._state === AFTER_CDATA_2) {
            this._stateAfterCdata2(c);
        } else if (this._state === BEFORE_SPECIAL) {

        /*
		* special tags
		*/
            this._stateBeforeSpecial(c);
        } else if (this._state === BEFORE_SPECIAL_END) {
            this._stateBeforeSpecialEnd(c);
        } else if (this._state === BEFORE_SCRIPT_1) {

        /*
		* script
		*/
            this._stateBeforeScript1(c);
        } else if (this._state === BEFORE_SCRIPT_2) {
            this._stateBeforeScript2(c);
        } else if (this._state === BEFORE_SCRIPT_3) {
            this._stateBeforeScript3(c);
        } else if (this._state === BEFORE_SCRIPT_4) {
            this._stateBeforeScript4(c);
        } else if (this._state === BEFORE_SCRIPT_5) {
            this._stateBeforeScript5(c);
        } else if (this._state === AFTER_SCRIPT_1) {
            this._stateAfterScript1(c);
        } else if (this._state === AFTER_SCRIPT_2) {
            this._stateAfterScript2(c);
        } else if (this._state === AFTER_SCRIPT_3) {
            this._stateAfterScript3(c);
        } else if (this._state === AFTER_SCRIPT_4) {
            this._stateAfterScript4(c);
        } else if (this._state === AFTER_SCRIPT_5) {
            this._stateAfterScript5(c);
        } else if (this._state === BEFORE_STYLE_1) {

        /*
		* style
		*/
            this._stateBeforeStyle1(c);
        } else if (this._state === BEFORE_STYLE_2) {
            this._stateBeforeStyle2(c);
        } else if (this._state === BEFORE_STYLE_3) {
            this._stateBeforeStyle3(c);
        } else if (this._state === BEFORE_STYLE_4) {
            this._stateBeforeStyle4(c);
        } else if (this._state === AFTER_STYLE_1) {
            this._stateAfterStyle1(c);
        } else if (this._state === AFTER_STYLE_2) {
            this._stateAfterStyle2(c);
        } else if (this._state === AFTER_STYLE_3) {
            this._stateAfterStyle3(c);
        } else if (this._state === AFTER_STYLE_4) {
            this._stateAfterStyle4(c);
        } else if (this._state === BEFORE_ENTITY) {

        /*
		* entities
		*/
            this._stateBeforeEntity(c);
        } else if (this._state === BEFORE_NUMERIC_ENTITY) {
            this._stateBeforeNumericEntity(c);
        } else if (this._state === IN_NAMED_ENTITY) {
            this._stateInNamedEntity(c);
        } else if (this._state === IN_NUMERIC_ENTITY) {
            this._stateInNumericEntity(c);
        } else if (this._state === IN_HEX_ENTITY) {
            this._stateInHexEntity(c);
        } else {
            this._cbs.onerror(Error("unknown _state"), this._state);
        }

        this._index++;
    }

    this._cleanup();
};

Tokenizer.prototype.pause = function() {
    this._running = false;
};
Tokenizer.prototype.resume = function() {
    this._running = true;

    if (this._index < this._buffer.length) {
        this._parse();
    }
    if (this._ended) {
        this._finish();
    }
};

Tokenizer.prototype.end = function(chunk) {
    if (this._ended) this._cbs.onerror(Error(".end() after done!"));
    if (chunk) this.write(chunk);

    this._ended = true;

    if (this._running) this._finish();
};

Tokenizer.prototype._finish = function() {
    //if there is remaining data, emit it in a reasonable way
    if (this._sectionStart < this._index) {
        this._handleTrailingData();
    }

    this._cbs.onend();
};

Tokenizer.prototype._handleTrailingData = function() {
    var data = this._buffer.substr(this._sectionStart);

    if (
        this._state === IN_CDATA ||
        this._state === AFTER_CDATA_1 ||
        this._state === AFTER_CDATA_2
    ) {
        this._cbs.oncdata(data);
    } else if (
        this._state === IN_COMMENT ||
        this._state === AFTER_COMMENT_1 ||
        this._state === AFTER_COMMENT_2
    ) {
        this._cbs.oncomment(data);
    } else if (this._state === IN_NAMED_ENTITY && !this._xmlMode) {
        this._parseLegacyEntity();
        if (this._sectionStart < this._index) {
            this._state = this._baseState;
            this._handleTrailingData();
        }
    } else if (this._state === IN_NUMERIC_ENTITY && !this._xmlMode) {
        this._decodeNumericEntity(2, 10);
        if (this._sectionStart < this._index) {
            this._state = this._baseState;
            this._handleTrailingData();
        }
    } else if (this._state === IN_HEX_ENTITY && !this._xmlMode) {
        this._decodeNumericEntity(3, 16);
        if (this._sectionStart < this._index) {
            this._state = this._baseState;
            this._handleTrailingData();
        }
    } else if (
        this._state !== IN_TAG_NAME &&
        this._state !== BEFORE_ATTRIBUTE_NAME &&
        this._state !== BEFORE_ATTRIBUTE_VALUE &&
        this._state !== AFTER_ATTRIBUTE_NAME &&
        this._state !== IN_ATTRIBUTE_NAME &&
        this._state !== IN_ATTRIBUTE_VALUE_SQ &&
        this._state !== IN_ATTRIBUTE_VALUE_DQ &&
        this._state !== IN_ATTRIBUTE_VALUE_NQ &&
        this._state !== IN_CLOSING_TAG_NAME
    ) {
        this._cbs.ontext(data);
    }
    //else, ignore remaining data
    //TODO add a way to remove current tag
};

Tokenizer.prototype.reset = function() {
    Tokenizer.call(
        this,
        { xmlMode: this._xmlMode, decodeEntities: this._decodeEntities },
        this._cbs
    );
};

Tokenizer.prototype.getAbsoluteIndex = function() {
    return this._bufferOffset + this._index;
};

Tokenizer.prototype._getSection = function() {
    return this._buffer.substring(this._sectionStart, this._index);
};

Tokenizer.prototype._emitToken = function(name) {
    this._cbs[name](this._getSection());
    this._sectionStart = -1;
};

Tokenizer.prototype._emitPartial = function(value) {
    if (this._baseState !== TEXT) {
        this._cbs.onattribdata(value); //TODO implement the new event
    } else {
        this._cbs.ontext(value);
    }
};


/***/ }),

/***/ "0d24":
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__("2b3e"),
    stubFalse = __webpack_require__("07c7");

/** Detect free variable `exports`. */
var freeExports =  true && exports && !exports.nodeType && exports;

/** Detect free variable `module`. */
var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;

/** Detect the popular CommonJS extension `module.exports`. */
var moduleExports = freeModule && freeModule.exports === freeExports;

/** Built-in value references. */
var Buffer = moduleExports ? root.Buffer : undefined;

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;

/**
 * Checks if `value` is a buffer.
 *
 * @static
 * @memberOf _
 * @since 4.3.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
 * @example
 *
 * _.isBuffer(new Buffer(2));
 * // => true
 *
 * _.isBuffer(new Uint8Array(2));
 * // => false
 */
var isBuffer = nativeIsBuffer || stubFalse;

module.exports = isBuffer;

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("62e4")(module)))

/***/ }),

/***/ "0df6":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


/**
 * Syntactic sugar for invoking a function and expanding an array for arguments.
 *
 * Common use case would be to use `Function.prototype.apply`.
 *
 *  ```js
 *  function f(x, y, z) {}
 *  var args = [1, 2, 3];
 *  f.apply(null, args);
 *  ```
 *
 * With `spread` this example can be re-written.
 *
 *  ```js
 *  spread(function(x, y, z) {})([1, 2, 3]);
 *  ```
 *
 * @param {Function} callback
 * @returns {Function}
 */
module.exports = function spread(callback) {
  return function wrap(arr) {
    return callback.apply(null, arr);
  };
};


/***/ }),

/***/ "0e4a":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"data\":[{\"id\":\"1\",\"taskTypeId\":\"22002\",\"taskName\":\"最新申报价\",\"platformCode\":\"10024\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"半托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"-\",\"priority\":600},{\"id\":\"2\",\"taskTypeId\":\"22011\",\"taskName\":\"最新申报价\",\"platformCode\":\"10024\",\"storeTypeDesc\":\"本土\",\"storeType\":\"LOCAL\",\"manageMode\":\"半托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"-\",\"priority\":600},{\"id\":\"3\",\"taskTypeId\":\"22006\",\"taskName\":\"财务/账务明细\",\"platformCode\":\"10022\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"全托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"每月1～7号，取本月1号至今日与上月全月。每月8号后，取本月1号到今日\",\"priority\":900},{\"id\":\"6\",\"taskTypeId\":\"22003\",\"taskName\":\"财务/账务明细\",\"platformCode\":\"10024\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"半托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"每月1～7号，取本月1号至今日与上月全月。每月8号后，取本月1号到今日\",\"priority\":900},{\"id\":\"7\",\"taskTypeId\":\"22001\",\"taskName\":\"近30日销量\",\"platformCode\":\"10022\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"全托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"-\",\"priority\":500},{\"id\":\"8\",\"taskTypeId\":\"22005\",\"taskName\":\"发货面单费\",\"platformCode\":\"10024\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"半托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"每月1～7号，取本月1号至今日与上月全月。每月8号后，取本月1号到今日\",\"priority\":300},{\"id\":\"11\",\"taskTypeId\":\"22010\",\"taskName\":\"最新申报价\",\"platformCode\":\"10022\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"全托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"-\",\"priority\":600},{\"id\":\"12\",\"taskTypeId\":\"22009\",\"taskName\":\"EPR费用\",\"platformCode\":\"10022\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"全托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"每月1～7号，取本月1号至今日与上月全月。每月8号后，取本月1号到今日\",\"priority\":100},{\"id\":\"14\",\"taskTypeId\":\"22004\",\"taskName\":\"退货面单费\",\"platformCode\":\"10024\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"半托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"每月1～7号，取本月1号至今日与上月全月。每月8号后，取本月1号到今日\",\"priority\":200},{\"id\":\"15\",\"taskTypeId\":\"22008\",\"taskName\":\"活动价\",\"platformCode\":\"10024\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"半托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"-\",\"priority\":700},{\"id\":\"16\",\"taskTypeId\":\"22016\",\"taskName\":\"活动价\",\"platformCode\":\"10022\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"全托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"-\",\"priority\":700},{\"id\":\"1984246337430941698\",\"taskTypeId\":\"22018\",\"taskName\":\"PO明细账单\",\"platformCode\":\"10024\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"半托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"每月1～7号，取本月1号至今日与上月全月。每月8号后，取本月1号到今日\",\"priority\":800},{\"id\":\"1984270577769181186\",\"taskTypeId\":\"22017\",\"taskName\":\"流量分析\",\"platformCode\":\"10024\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"半托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"-\",\"priority\":400},{\"id\":\"1984270577769181187\",\"taskTypeId\":\"30001\",\"taskName\":\"获取定向邀约\",\"platformCode\":\"tiktok\",\"storeTypeDesc\":\"跨境\",\"storeType\":\"GLOBAL\",\"manageMode\":\"半托\",\"dataRangeType\":[1,2],\"isGray\":0,\"executeRate\":\"每天获取1次\",\"dataTimeRange\":\"-\",\"priority\":400}],\"msg\":\"操作成功\",\"traceId\":\"fe3d96772d264d0b834c8014f9f4f98d.240.17655064683208403\",\"success\":false}");

/***/ }),

/***/ "0efb":
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;//! moment-timezone.js
//! version : 0.6.0
//! Copyright (c) JS Foundation and other contributors
//! license : MIT
//! github.com/moment/moment-timezone

(function (root, factory) {
	"use strict";

	/*global define*/
	if ( true && module.exports) {
		module.exports = factory(__webpack_require__("c1df")); // Node
	} else if (true) {
		!(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__("c1df")], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
				__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
				(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));                 // AMD
	} else {}
}(this, function (moment) {
	"use strict";

	// Resolves es6 module loading issue
	if (moment.version === undefined && moment.default) {
		moment = moment.default;
	}

	// Do not load moment-timezone a second time.
	// if (moment.tz !== undefined) {
	// 	logError('Moment Timezone ' + moment.tz.version + ' was already loaded ' + (moment.tz.dataVersion ? 'with data from ' : 'without any data') + moment.tz.dataVersion);
	// 	return moment;
	// }

	var VERSION = "0.6.0",
		zones = {},
		links = {},
		countries = {},
		names = {},
		guesses = {},
		cachedGuess;

	if (!moment || typeof moment.version !== 'string') {
		logError('Moment Timezone requires Moment.js. See https://momentjs.com/timezone/docs/#/use-it/browser/');
	}

	var momentVersion = moment.version.split('.'),
		major = +momentVersion[0],
		minor = +momentVersion[1];

	// Moment.js version check
	if (major < 2 || (major === 2 && minor < 6)) {
		logError('Moment Timezone requires Moment.js >= 2.6.0. You are using Moment.js ' + moment.version + '. See momentjs.com');
	}

	/************************************
		Unpacking
	************************************/

	function charCodeToInt(charCode) {
		if (charCode > 96) {
			return charCode - 87;
		} else if (charCode > 64) {
			return charCode - 29;
		}
		return charCode - 48;
	}

	function unpackBase60(string) {
		var i = 0,
			parts = string.split('.'),
			whole = parts[0],
			fractional = parts[1] || '',
			multiplier = 1,
			num,
			out = 0,
			sign = 1;

		// handle negative numbers
		if (string.charCodeAt(0) === 45) {
			i = 1;
			sign = -1;
		}

		// handle digits before the decimal
		for (i; i < whole.length; i++) {
			num = charCodeToInt(whole.charCodeAt(i));
			out = 60 * out + num;
		}

		// handle digits after the decimal
		for (i = 0; i < fractional.length; i++) {
			multiplier = multiplier / 60;
			num = charCodeToInt(fractional.charCodeAt(i));
			out += num * multiplier;
		}

		return out * sign;
	}

	function arrayToInt (array) {
		for (var i = 0; i < array.length; i++) {
			array[i] = unpackBase60(array[i]);
		}
	}

	function intToUntil (array, length) {
		for (var i = 0; i < length; i++) {
			array[i] = Math.round((array[i - 1] || 0) + (array[i] * 60000)); // minutes to milliseconds
		}

		array[length - 1] = Infinity;
	}

	function mapIndices (source, indices) {
		var out = [], i;

		for (i = 0; i < indices.length; i++) {
			out[i] = source[indices[i]];
		}

		return out;
	}

	function unpack (string) {
		var data = string.split('|'),
			offsets = data[2].split(' '),
			indices = data[3].split(''),
			untils  = data[4].split(' ');

		arrayToInt(offsets);
		arrayToInt(indices);
		arrayToInt(untils);

		intToUntil(untils, indices.length);

		return {
			name       : data[0],
			abbrs      : mapIndices(data[1].split(' '), indices),
			offsets    : mapIndices(offsets, indices),
			untils     : untils,
			population : data[5] | 0
		};
	}

	/************************************
		Zone object
	************************************/

	function Zone (packedString) {
		if (packedString) {
			this._set(unpack(packedString));
		}
	}

	function closest (num, arr) {
		var len = arr.length;
		if (num < arr[0]) {
			return 0;
		} else if (len > 1 && arr[len - 1] === Infinity && num >= arr[len - 2]) {
			return len - 1;
		} else if (num >= arr[len - 1]) {
			return -1;
		}

		var mid;
		var lo = 0;
		var hi = len - 1;
		while (hi - lo > 1) {
			mid = Math.floor((lo + hi) / 2);
			if (arr[mid] <= num) {
				lo = mid;
			} else {
				hi = mid;
			}
		}
		return hi;
	}

	Zone.prototype = {
		_set : function (unpacked) {
			this.name       = unpacked.name;
			this.abbrs      = unpacked.abbrs;
			this.untils     = unpacked.untils;
			this.offsets    = unpacked.offsets;
			this.population = unpacked.population;
		},

		_index : function (timestamp) {
			var target = +timestamp,
				untils = this.untils,
				i;

			i = closest(target, untils);
			if (i >= 0) {
				return i;
			}
		},

		countries : function () {
			var zone_name = this.name;
			return Object.keys(countries).filter(function (country_code) {
				return countries[country_code].zones.indexOf(zone_name) !== -1;
			});
		},

		parse : function (timestamp) {
			var target  = +timestamp,
				offsets = this.offsets,
				untils  = this.untils,
				max     = untils.length - 1,
				offset, offsetNext, offsetPrev, i;

			for (i = 0; i < max; i++) {
				offset     = offsets[i];
				offsetNext = offsets[i + 1];
				offsetPrev = offsets[i ? i - 1 : i];

				if (offset < offsetNext && tz.moveAmbiguousForward) {
					offset = offsetNext;
				} else if (offset > offsetPrev && tz.moveInvalidForward) {
					offset = offsetPrev;
				}

				if (target < untils[i] - (offset * 60000)) {
					return offsets[i];
				}
			}

			return offsets[max];
		},

		abbr : function (mom) {
			return this.abbrs[this._index(mom)];
		},

		offset : function (mom) {
			logError("zone.offset has been deprecated in favor of zone.utcOffset");
			return this.offsets[this._index(mom)];
		},

		utcOffset : function (mom) {
			return this.offsets[this._index(mom)];
		}
	};

	/************************************
		Country object
	************************************/

	function Country (country_name, zone_names) {
		this.name = country_name;
		this.zones = zone_names;
	}

	/************************************
		Current Timezone
	************************************/

	function OffsetAt(at) {
		var timeString = at.toTimeString();
		var abbr = timeString.match(/\([a-z ]+\)/i);
		if (abbr && abbr[0]) {
			// 17:56:31 GMT-0600 (CST)
			// 17:56:31 GMT-0600 (Central Standard Time)
			abbr = abbr[0].match(/[A-Z]/g);
			abbr = abbr ? abbr.join('') : undefined;
		} else {
			// 17:56:31 CST
			// 17:56:31 GMT+0800 (台北標準時間)
			abbr = timeString.match(/[A-Z]{3,5}/g);
			abbr = abbr ? abbr[0] : undefined;
		}

		if (abbr === 'GMT') {
			abbr = undefined;
		}

		this.at = +at;
		this.abbr = abbr;
		this.offset = at.getTimezoneOffset();
	}

	function ZoneScore(zone) {
		this.zone = zone;
		this.offsetScore = 0;
		this.abbrScore = 0;
	}

	ZoneScore.prototype.scoreOffsetAt = function (offsetAt) {
		this.offsetScore += Math.abs(this.zone.utcOffset(offsetAt.at) - offsetAt.offset);
		if (this.zone.abbr(offsetAt.at).replace(/[^A-Z]/g, '') !== offsetAt.abbr) {
			this.abbrScore++;
		}
	};

	function findChange(low, high) {
		var mid, diff;

		while ((diff = ((high.at - low.at) / 12e4 | 0) * 6e4)) {
			mid = new OffsetAt(new Date(low.at + diff));
			if (mid.offset === low.offset) {
				low = mid;
			} else {
				high = mid;
			}
		}

		return low;
	}

	function userOffsets() {
		var startYear = new Date().getFullYear() - 2,
			last = new OffsetAt(new Date(startYear, 0, 1)),
			lastOffset = last.offset,
			offsets = [last],
			change, next, nextOffset, i;

		for (i = 1; i < 48; i++) {
			nextOffset = new Date(startYear, i, 1).getTimezoneOffset();
			if (nextOffset !== lastOffset) {
				// Create OffsetAt here to avoid unnecessary abbr parsing before checking offsets
				next = new OffsetAt(new Date(startYear, i, 1));
				change = findChange(last, next);
				offsets.push(change);
				offsets.push(new OffsetAt(new Date(change.at + 6e4)));
				last = next;
				lastOffset = nextOffset;
			}
		}

		for (i = 0; i < 4; i++) {
			offsets.push(new OffsetAt(new Date(startYear + i, 0, 1)));
			offsets.push(new OffsetAt(new Date(startYear + i, 6, 1)));
		}

		return offsets;
	}

	function sortZoneScores (a, b) {
		if (a.offsetScore !== b.offsetScore) {
			return a.offsetScore - b.offsetScore;
		}
		if (a.abbrScore !== b.abbrScore) {
			return a.abbrScore - b.abbrScore;
		}
		if (a.zone.population !== b.zone.population) {
			return b.zone.population - a.zone.population;
		}
		return b.zone.name.localeCompare(a.zone.name);
	}

	function addToGuesses (name, offsets) {
		var i, offset;
		arrayToInt(offsets);
		for (i = 0; i < offsets.length; i++) {
			offset = offsets[i];
			guesses[offset] = guesses[offset] || {};
			guesses[offset][name] = true;
		}
	}

	function guessesForUserOffsets (offsets) {
		var offsetsLength = offsets.length,
			filteredGuesses = {},
			out = [],
			checkedOffsets = {},
			i, j, offset, guessesOffset;

		for (i = 0; i < offsetsLength; i++) {
			offset = offsets[i].offset;
			if (checkedOffsets.hasOwnProperty(offset)) {
				continue;
			}
			guessesOffset = guesses[offset] || {};
			for (j in guessesOffset) {
				if (guessesOffset.hasOwnProperty(j)) {
					filteredGuesses[j] = true;
				}
			}
			checkedOffsets[offset] = true;
		}

		for (i in filteredGuesses) {
			if (filteredGuesses.hasOwnProperty(i)) {
				out.push(names[i]);
			}
		}

		return out;
	}

	function rebuildGuess () {

		// use Intl API when available and returning valid time zone
		try {
			var intlName = Intl.DateTimeFormat().resolvedOptions().timeZone;
			if (intlName && intlName.length > 3) {
				var name = names[normalizeName(intlName)];
				if (name) {
					return name;
				}
				logError("Moment Timezone found " + intlName + " from the Intl api, but did not have that data loaded.");
			}
		} catch (e) {
			// Intl unavailable, fall back to manual guessing.
		}

		var offsets = userOffsets(),
			offsetsLength = offsets.length,
			guesses = guessesForUserOffsets(offsets),
			zoneScores = [],
			zoneScore, i, j;

		for (i = 0; i < guesses.length; i++) {
			zoneScore = new ZoneScore(getZone(guesses[i]), offsetsLength);
			for (j = 0; j < offsetsLength; j++) {
				zoneScore.scoreOffsetAt(offsets[j]);
			}
			zoneScores.push(zoneScore);
		}

		zoneScores.sort(sortZoneScores);

		return zoneScores.length > 0 ? zoneScores[0].zone.name : undefined;
	}

	function guess (ignoreCache) {
		if (!cachedGuess || ignoreCache) {
			cachedGuess = rebuildGuess();
		}
		return cachedGuess;
	}

	/************************************
		Global Methods
	************************************/

	function normalizeName (name) {
		return (name || '').toLowerCase().replace(/\//g, '_');
	}

	function addZone (packed) {
		var i, name, split, normalized;

		if (typeof packed === "string") {
			packed = [packed];
		}

		for (i = 0; i < packed.length; i++) {
			split = packed[i].split('|');
			name = split[0];
			normalized = normalizeName(name);
			zones[normalized] = packed[i];
			names[normalized] = name;
			addToGuesses(normalized, split[2].split(' '));
		}
	}

	function getZone (name, caller) {

		name = normalizeName(name);

		var zone = zones[name];
		var link;

		if (zone instanceof Zone) {
			return zone;
		}

		if (typeof zone === 'string') {
			zone = new Zone(zone);
			zones[name] = zone;
			return zone;
		}

		// Pass getZone to prevent recursion more than 1 level deep
		if (links[name] && caller !== getZone && (link = getZone(links[name], getZone))) {
			zone = zones[name] = new Zone();
			zone._set(link);
			zone.name = names[name];
			return zone;
		}

		return null;
	}

	function getNames () {
		var i, out = [];

		for (i in names) {
			if (names.hasOwnProperty(i) && (zones[i] || zones[links[i]]) && names[i]) {
				out.push(names[i]);
			}
		}

		return out.sort();
	}

	function getCountryNames () {
		return Object.keys(countries);
	}

	function addLink (aliases) {
		var i, alias, normal0, normal1;

		if (typeof aliases === "string") {
			aliases = [aliases];
		}

		for (i = 0; i < aliases.length; i++) {
			alias = aliases[i].split('|');

			normal0 = normalizeName(alias[0]);
			normal1 = normalizeName(alias[1]);

			links[normal0] = normal1;
			names[normal0] = alias[0];

			links[normal1] = normal0;
			names[normal1] = alias[1];
		}
	}

	function addCountries (data) {
		var i, country_code, country_zones, split;
		if (!data || !data.length) return;
		for (i = 0; i < data.length; i++) {
			split = data[i].split('|');
			country_code = split[0].toUpperCase();
			country_zones = split[1].split(' ');
			countries[country_code] = new Country(
				country_code,
				country_zones
			);
		}
	}

	function getCountry (name) {
		name = name.toUpperCase();
		return countries[name] || null;
	}

	function zonesForCountry(country, with_offset) {
		country = getCountry(country);

		if (!country) return null;

		var zones = country.zones.sort();

		if (with_offset) {
			return zones.map(function (zone_name) {
				var zone = getZone(zone_name);
				return {
					name: zone_name,
					offset: zone.utcOffset(new Date())
				};
			});
		}

		return zones;
	}

	function loadData (data) {
		addZone(data.zones);
		addLink(data.links);
		addCountries(data.countries);
		tz.dataVersion = data.version;
	}

	function zoneExists (name) {
		if (!zoneExists.didShowError) {
			zoneExists.didShowError = true;
				logError("moment.tz.zoneExists('" + name + "') has been deprecated in favor of !moment.tz.zone('" + name + "')");
		}
		return !!getZone(name);
	}

	function needsOffset (m) {
		var isUnixTimestamp = (m._f === 'X' || m._f === 'x');
		return !!(m._a && (m._tzm === undefined) && !isUnixTimestamp);
	}

	function logError (message) {
		if (typeof console !== 'undefined' && typeof console.error === 'function') {
			console.error(message);
		}
	}

	/************************************
		moment.tz namespace
	************************************/

	function tz (input) {
		var args = Array.prototype.slice.call(arguments, 0, -1),
			name = arguments[arguments.length - 1],
			out  = moment.utc.apply(null, args),
			zone;

		if (!moment.isMoment(input) && needsOffset(out) && (zone = getZone(name))) {
			out.add(zone.parse(out), 'minutes');
		}

		out.tz(name);

		return out;
	}

	tz.version      = VERSION;
	tz.dataVersion  = '';
	tz._zones       = zones;
	tz._links       = links;
	tz._names       = names;
	tz._countries	= countries;
	tz.add          = addZone;
	tz.link         = addLink;
	tz.load         = loadData;
	tz.zone         = getZone;
	tz.zoneExists   = zoneExists; // deprecated in 0.1.0
	tz.guess        = guess;
	tz.names        = getNames;
	tz.Zone         = Zone;
	tz.unpack       = unpack;
	tz.unpackBase60 = unpackBase60;
	tz.needsOffset  = needsOffset;
	tz.moveInvalidForward   = true;
	tz.moveAmbiguousForward = false;
	tz.countries    = getCountryNames;
	tz.zonesForCountry = zonesForCountry;

	/************************************
		Interface with Moment.js
	************************************/

	var fn = moment.fn;

	moment.tz = tz;

	moment.defaultZone = null;

	moment.updateOffset = function (mom, keepTime) {
		var zone = moment.defaultZone,
			offset;

		if (mom._z === undefined) {
			if (zone && needsOffset(mom) && !mom._isUTC && mom.isValid()) {
				mom._d = moment.utc(mom._a)._d;
				mom.utc().add(zone.parse(mom), 'minutes');
			}
			mom._z = zone;
		}
		if (mom._z) {
			offset = mom._z.utcOffset(mom);
			if (Math.abs(offset) < 16) {
				offset = offset / 60;
			}
			if (mom.utcOffset !== undefined) {
				var z = mom._z;
				mom.utcOffset(-offset, keepTime);
				mom._z = z;
			} else {
				mom.zone(offset, keepTime);
			}
		}
	};

	fn.tz = function (name, keepTime) {
		if (name) {
			if (typeof name !== 'string') {
				throw new Error('Time zone name must be a string, got ' + name + ' [' + typeof name + ']');
			}
			this._z = getZone(name);
			if (this._z) {
				moment.updateOffset(this, keepTime);
			} else {
				logError("Moment Timezone has no data for " + name + ". See http://momentjs.com/timezone/docs/#/data-loading/.");
			}
			return this;
		}
		if (this._z) { return this._z.name; }
	};

	function abbrWrap (old) {
		return function () {
			if (this._z) { return this._z.abbr(this); }
			return old.call(this);
		};
	}

	function resetZoneWrap (old) {
		return function () {
			this._z = null;
			return old.apply(this, arguments);
		};
	}

	function resetZoneWrap2 (old) {
		return function () {
			if (arguments.length > 0) this._z = null;
			return old.apply(this, arguments);
		};
	}

	fn.zoneName  = abbrWrap(fn.zoneName);
	fn.zoneAbbr  = abbrWrap(fn.zoneAbbr);
	fn.utc       = resetZoneWrap(fn.utc);
	fn.local     = resetZoneWrap(fn.local);
	fn.utcOffset = resetZoneWrap2(fn.utcOffset);

	moment.tz.setDefault = function(name) {
		if (major < 2 || (major === 2 && minor < 9)) {
			logError('Moment Timezone setDefault() requires Moment.js >= 2.9.0. You are using Moment.js ' + moment.version + '.');
		}
		moment.defaultZone = name ? getZone(name) : null;
		return moment;
	};

	// Cloning a moment should include the _z property.
	var momentProperties = moment.momentProperties;
	if (Object.prototype.toString.call(momentProperties) === '[object Array]') {
		// moment 2.8.1+
		momentProperties.push('_z');
		momentProperties.push('_a');
	} else if (momentProperties) {
		// moment 2.7.0
		momentProperties._z = null;
	}

	// INJECT DATA

	return moment;
}));


/***/ }),

/***/ 1:
/***/ (function(module, exports) {

/* (ignored) */

/***/ }),

/***/ "100e":
/***/ (function(module, exports, __webpack_require__) {

var identity = __webpack_require__("cd9d"),
    overRest = __webpack_require__("2286"),
    setToString = __webpack_require__("c1c9");

/**
 * The base implementation of `_.rest` which doesn't validate or coerce arguments.
 *
 * @private
 * @param {Function} func The function to apply a rest parameter to.
 * @param {number} [start=func.length-1] The start position of the rest parameter.
 * @returns {Function} Returns the new function.
 */
function baseRest(func, start) {
  return setToString(overRest(func, start, identity), func + '');
}

module.exports = baseRest;


/***/ }),

/***/ "111b":
/***/ (function(module, exports, __webpack_require__) {

var realNames = __webpack_require__("25b4");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Gets the name of `func`.
 *
 * @private
 * @param {Function} func The function to query.
 * @returns {string} Returns the function name.
 */
function getFuncName(func) {
  var result = (func.name + ''),
      array = realNames[result],
      length = hasOwnProperty.call(realNames, result) ? array.length : 0;

  while (length--) {
    var data = array[length],
        otherFunc = data.func;
    if (otherFunc == null || otherFunc == func) {
      return data.name;
    }
  }
  return result;
}

module.exports = getFuncName;


/***/ }),

/***/ "1257":
/***/ (function(module, exports, __webpack_require__) {

var baseCreate = __webpack_require__("7530"),
    isObject = __webpack_require__("1a8c");

/**
 * Creates a function that produces an instance of `Ctor` regardless of
 * whether it was invoked as part of a `new` expression or by `call` or `apply`.
 *
 * @private
 * @param {Function} Ctor The constructor to wrap.
 * @returns {Function} Returns the new wrapped function.
 */
function createCtor(Ctor) {
  return function() {
    // Use a `switch` statement to work with class constructors. See
    // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist
    // for more details.
    var args = arguments;
    switch (args.length) {
      case 0: return new Ctor;
      case 1: return new Ctor(args[0]);
      case 2: return new Ctor(args[0], args[1]);
      case 3: return new Ctor(args[0], args[1], args[2]);
      case 4: return new Ctor(args[0], args[1], args[2], args[3]);
      case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]);
      case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]);
      case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);
    }
    var thisBinding = baseCreate(Ctor.prototype),
        result = Ctor.apply(thisBinding, args);

    // Mimic the constructor's `return` behavior.
    // See https://es5.github.io/#x13.2.2 for more details.
    return isObject(result) ? result : thisBinding;
  };
}

module.exports = createCtor;


/***/ }),

/***/ "1290":
/***/ (function(module, exports) {

/**
 * Checks if `value` is suitable for use as unique object key.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
 */
function isKeyable(value) {
  var type = typeof value;
  return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
    ? (value !== '__proto__')
    : (value === null);
}

module.exports = isKeyable;


/***/ }),

/***/ "1304":
/***/ (function(module, exports, __webpack_require__) {

var identity = __webpack_require__("cd9d");

/**
 * Casts `value` to `identity` if it's not a function.
 *
 * @private
 * @param {*} value The value to inspect.
 * @returns {Function} Returns cast function.
 */
function castFunction(value) {
  return typeof value == 'function' ? value : identity;
}

module.exports = castFunction;


/***/ }),

/***/ "1310":
/***/ (function(module, exports) {

/**
 * Checks if `value` is object-like. A value is object-like if it's not `null`
 * and has a `typeof` result of "object".
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
 * @example
 *
 * _.isObjectLike({});
 * // => true
 *
 * _.isObjectLike([1, 2, 3]);
 * // => true
 *
 * _.isObjectLike(_.noop);
 * // => false
 *
 * _.isObjectLike(null);
 * // => false
 */
function isObjectLike(value) {
  return value != null && typeof value == 'object';
}

module.exports = isObjectLike;


/***/ }),

/***/ "1368":
/***/ (function(module, exports, __webpack_require__) {

var coreJsData = __webpack_require__("da03");

/** Used to detect methods masquerading as native. */
var maskSrcKey = (function() {
  var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
  return uid ? ('Symbol(src)_1.' + uid) : '';
}());

/**
 * Checks if `func` has its source masked.
 *
 * @private
 * @param {Function} func The function to check.
 * @returns {boolean} Returns `true` if `func` is masked, else `false`.
 */
function isMasked(func) {
  return !!maskSrcKey && (maskSrcKey in func);
}

module.exports = isMasked;


/***/ }),

/***/ "13cf":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"data\":[{\"taskIdList\":[\"911646131983943168\"],\"task_id\":\"911646131983943168\",\"data\":\"{\\n  \\\"report_custom_date_start\\\" : \\\"2025-11-01\\\",\\n  \\\"report_custom_date_end\\\" : \\\"2025-11-30\\\",\\n  \\\"report_custom_datetime_start\\\" : 1761926400000,\\n  \\\"report_custom_datetime_end\\\" : 1764518399000,\\n  \\\"report_date_month\\\" : \\\"2025-11\\\",\\n  \\\"code\\\" : \\\"2512111837000001\\\",\\n  \\\"data_range_type\\\" : 1,\\n  \\\"platform_code\\\" : \\\"10022\\\"\\n}\",\"jobId\":\"911646131983899648\",\"expiration_time\":\"2025-12-12 18:37:46\",\"gmt_create\":\"1765449466\",\"origin_type\":3,\"platform_code\":\"10022\",\"platform_store_id\":\"7496213306594200044\",\"priority\":900,\"repeat\":0,\"status\":1,\"reportMonth\":null,\"run_type\":1,\"store_id\":\"110458597223657472\",\"type_id\":\"30001\",\"store_info\":{\"company_id\":\"90128554873982976\",\"platform_code\":10022,\"store_id\":\"110458597223657472\",\"status\":null,\"name\":\"Tree\",\"area\":\"US\",\"site_name\":\"US\",\"store_type\":null,\"platform_store_id\":\"7496213306594200044\"}}],\"msg\":\"操作成功\",\"traceId\":\"6628065051334071bffebb1a0dacdef8.181.17654494663373709\",\"success\":false}");

/***/ }),

/***/ "147b":
/***/ (function(module) {

module.exports = JSON.parse("{\"viewModel\":{\"searchCampaignsQueryResult\":{\"searchCampaigns\":[{\"internalDescription\":\"秒杀-2021/03/10 2-19-52-682\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"8189187e-c8c2-3bae-8f42-9ae8709fd6d8\",\"version\":1,\"campaignKey\":\"1-219996263902-8189187e-c8c2-3bae-8f42-9ae8709fd6d8\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/51BnrkubfBL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":\"d36f3bc6bd594209bcd94103bb696380\",\"eventName\":\"Prime Day\",\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=300.00, currencyCode=USD), max=Currency(amount=500.00, currencyCode=USD)), chargedFee=null, scheduledFee=null, feeOverride=false)\",\"startDate\":1624258800,\"endDate\":1624863540,\"startDateEpochMillis\":1720742400000,\"endDateEpochMillis\":1720828800000,\"isDealScheduleSurfaced\":true,\"isAdmin\":false,\"sales\":15.24,\"unitsSold\":11.22,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFDCGPL\",\"skuCount\":2,\"asinCount\":2,\"title\":\"Ciwete Stainless Steel Kitchen Cookware Set\",\"externalId\":\"9bf08ddd\",\"glanceViews\":0,\"imageAsin\":\"B08MFDCGPL\",\"committedQuantity\":19},{\"internalDescription\":\"7天BD 电木款&锤纹款 促销-2021/06/18 1-37-2-669\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"6049ff75-9103-367c-8439-1bed95bd02a4\",\"version\":1,\"campaignKey\":\"1-219996263902-6049ff75-9103-367c-8439-1bed95bd02a4\"},\"campaignStatus\":\"ENDED\",\"type\":\"BEST_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/51BnrkubfBL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"BestDealFees(submittedFee=Currency(amount=300.00, currencyCode=USD), chargedFee=Currency(amount=300.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1624863600,\"endDate\":1625467500,\"startDateEpochMillis\":1624863600000,\"endDateEpochMillis\":1625467500000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":1963.34,\"unitsSold\":16,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFDCGPL\",\"skuCount\":2,\"asinCount\":2,\"title\":\"Ciwete Stainless Steel Kitchen Cookware Set\",\"externalId\":\"35723d11\",\"glanceViews\":1490,\"imageAsin\":\"B08MFDCGPL\",\"committedQuantity\":0},{\"internalDescription\":\"Lightning Deal-2021/09/25 7-43-57-714\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"a053bfb4-6b9c-3624-a290-8e70a74b5c58\",\"version\":1,\"campaignKey\":\"1-219996263902-a053bfb4-6b9c-3624-a290-8e70a74b5c58\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1633347300,\"endDate\":1633390500,\"startDateEpochMillis\":1633347300000,\"endDateEpochMillis\":1633390500000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":645.96,\"unitsSold\":4,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":2,\"asinCount\":2,\"title\":\"Ciwete Stainless Steel Cookware Set, 3-Ply Base Kitchen Pots and Pans Set\",\"externalId\":\"5e62c2a8\",\"glanceViews\":207,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":20},{\"internalDescription\":\"Lightning Deal-2021/09/25 7-44-57-34\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"cae85b49-2628-3459-927e-219d50a1558d\",\"version\":1,\"campaignKey\":\"1-219996263902-cae85b49-2628-3459-927e-219d50a1558d\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1634216400,\"endDate\":1634259600,\"startDateEpochMillis\":1634216400000,\"endDateEpochMillis\":1634259600000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":2,\"asinCount\":2,\"title\":\"Ciwete Stainless Steel Cookware Set, 3-Ply Base Kitchen Pots and Pans Set\",\"externalId\":\"87af1b26\",\"glanceViews\":0,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":20},{\"internalDescription\":\"秒杀-2021/10/05 13-56-45-244\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"db2d5ca7-1313-3dd3-9c6a-4e6b6177fc32\",\"version\":1,\"campaignKey\":\"1-219996263902-db2d5ca7-1313-3dd3-9c6a-4e6b6177fc32\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1634735400,\"endDate\":1634778600,\"startDateEpochMillis\":1634735400000,\"endDateEpochMillis\":1634778600000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":2,\"asinCount\":2,\"title\":\"Ciwete Stainless Steel Cookware Set, 3-Ply Base Kitchen Pots and Pans Set\",\"externalId\":\"85d5f573\",\"glanceViews\":0,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":20},{\"internalDescription\":\"秒杀-2021/10/05 13-56-11-165\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"efd8e982-16f9-3d0e-840b-d02a79b8cf4e\",\"version\":3,\"campaignKey\":\"1-219996263902-efd8e982-16f9-3d0e-840b-d02a79b8cf4e\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41Kf8b0tB7L._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1635080100,\"endDate\":1635123300,\"startDateEpochMillis\":1635080100000,\"endDateEpochMillis\":1635123300000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":1147.19,\"unitsSold\":6,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914KB9R3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Copper Tri-ply Stainless Steel Cookware Set, Kitchen Pots and Pans Set 10-Piece\",\"externalId\":\"2fe71683\",\"glanceViews\":217,\"imageAsin\":\"B0914KB9R3\",\"committedQuantity\":15},{\"internalDescription\":\"秒杀-2021/10/09 5-5-21-705\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"4f29dc73-eab8-3b2a-90a4-53c1218d9dcd\",\"version\":2,\"campaignKey\":\"1-219996263902-4f29dc73-eab8-3b2a-90a4-53c1218d9dcd\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41Kf8b0tB7L._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1635359100,\"endDate\":1635402300,\"startDateEpochMillis\":1635359100000,\"endDateEpochMillis\":1635402300000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":764.76,\"unitsSold\":4,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914KB9R3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Copper Tri-ply Stainless Steel Cookware Set, Kitchen Pots and Pans Set 10-Piece\",\"externalId\":\"3f2540d7\",\"glanceViews\":244,\"imageAsin\":\"B0914KB9R3\",\"committedQuantity\":10},{\"internalDescription\":\"秒杀-2021/10/14 1-10-37-810\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"71941d0c-fccc-3a32-b328-c508c5a86c08\",\"version\":3,\"campaignKey\":\"1-219996263902-71941d0c-fccc-3a32-b328-c508c5a86c08\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/417k4w3j-NL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1635444900,\"endDate\":1635488100,\"startDateEpochMillis\":1635444900000,\"endDateEpochMillis\":1635488100000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":135.98,\"unitsSold\":2,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCG2DF\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Tri-Ply Clad Stainless Steel Hammered Cookware Set, 5-Piece Pots and Pans Set, Silver\",\"externalId\":\"d6991121\",\"glanceViews\":184,\"imageAsin\":\"B08MFCG2DF\",\"committedQuantity\":11},{\"internalDescription\":\"Lightning Deal-2021/10/14 10-10-19-90\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"63c29f8e-2189-30ea-9388-2b3b11d3f3a4\",\"version\":1,\"campaignKey\":\"1-219996263902-63c29f8e-2189-30ea-9388-2b3b11d3f3a4\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1635518700,\"endDate\":1635561900,\"startDateEpochMillis\":1635518700000,\"endDateEpochMillis\":1635561900000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":611.96,\"unitsSold\":4,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set, 10 Piece Kitchen Cookware Set with Tri-Ply Bases and Lids, Pots and Pans Set with Nonstick Pan, 18/10 Stainless Steel Induction Cookware\",\"externalId\":\"77cb30c0\",\"glanceViews\":223,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":10},{\"internalDescription\":\"秒杀-2021/10/09 5-4-55-162\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"2e39c04f-99b9-3e72-9fef-88ced0adb06e\",\"version\":1,\"campaignKey\":\"1-219996263902-2e39c04f-99b9-3e72-9fef-88ced0adb06e\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=null, feeOverride=false)\",\"startDate\":1635145200,\"endDate\":1635749940,\"startDateEpochMillis\":1635145200000,\"endDateEpochMillis\":1635749940000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":2,\"asinCount\":2,\"title\":\"Ciwete Stainless Steel Cookware Set, 3-Ply Base Kitchen Pots and Pans Set\",\"externalId\":\"a8cea196\",\"glanceViews\":0,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":20},{\"internalDescription\":\"秒杀-2021/10/11 1-21-25-186\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"7f517d42-d73f-317d-935d-c65c07f47810\",\"version\":2,\"campaignKey\":\"1-219996263902-7f517d42-d73f-317d-935d-c65c07f47810\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41Kf8b0tB7L._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1636040400,\"endDate\":1636083600,\"startDateEpochMillis\":1636040400000,\"endDateEpochMillis\":1636083600000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":764.76,\"unitsSold\":4,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914KB9R3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Copper Tri-ply Stainless Steel Cookware Set, Kitchen Pots and Pans Set 10-Piece\",\"externalId\":\"d4c5f8d0\",\"glanceViews\":218,\"imageAsin\":\"B0914KB9R3\",\"committedQuantity\":10},{\"internalDescription\":\"秒杀-2021/10/14 1-10-19-837\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"ff58fb25-a785-3b0e-8316-5c9c2857f46b\",\"version\":2,\"campaignKey\":\"1-219996263902-ff58fb25-a785-3b0e-8316-5c9c2857f46b\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1636111800,\"endDate\":1636155000,\"startDateEpochMillis\":1636111800000,\"endDateEpochMillis\":1636155000000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":433.47,\"unitsSold\":3,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set, 10 Piece Kitchen Cookware Set with Tri-Ply Bases and Lids, Pots and Pans Set with Nonstick Pan, 18/10 Stainless Steel Induction Cookware\",\"externalId\":\"c47c1eb6\",\"glanceViews\":209,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":10},{\"internalDescription\":\"Lightning Deal-2021/10/16 3-50-10-200\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"ae131a7b-57eb-372d-9eca-b0b06c5bfd8d\",\"version\":1,\"campaignKey\":\"1-219996263902-ae131a7b-57eb-372d-9eca-b0b06c5bfd8d\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/417k4w3j-NL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1636115100,\"endDate\":1636158300,\"startDateEpochMillis\":1636115100000,\"endDateEpochMillis\":1636158300000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCG2DF\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Tri-Ply Clad Stainless Steel Hammered Cookware Set, 5-Piece Pots and Pans Set, Silver\",\"externalId\":\"b76eecbc\",\"glanceViews\":0,\"imageAsin\":\"B08MFCG2DF\",\"committedQuantity\":11},{\"internalDescription\":\"秒杀-2021/10/11 1-21-1-80\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"1a493d93-ebcb-3017-996d-cc682c23d0e0\",\"version\":1,\"campaignKey\":\"1-219996263902-1a493d93-ebcb-3017-996d-cc682c23d0e0\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=null, feeOverride=false)\",\"startDate\":1635750000,\"endDate\":1636358340,\"startDateEpochMillis\":1635750000000,\"endDateEpochMillis\":1636358340000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":2,\"asinCount\":2,\"title\":\"Ciwete Stainless Steel Cookware Set, 3-Ply Base Kitchen Pots and Pans Set\",\"externalId\":\"f4406bac\",\"glanceViews\":0,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":20},{\"internalDescription\":\"秒杀-2021/10/22 1-21-49-318\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"9b667de8-9590-3c6d-9b9f-29f6b3bb9bd5\",\"version\":1,\"campaignKey\":\"1-219996263902-9b667de8-9590-3c6d-9b9f-29f6b3bb9bd5\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41Kf8b0tB7L._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1636653600,\"endDate\":1636696800,\"startDateEpochMillis\":1636653600000,\"endDateEpochMillis\":1636696800000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914KB9R3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Copper Tri-ply Stainless Steel Cookware Set, Kitchen Pots and Pans Set 10-Piece\",\"externalId\":\"079e22b2\",\"glanceViews\":0,\"imageAsin\":\"B0914KB9R3\",\"committedQuantity\":10},{\"internalDescription\":\"Lightning Deal-2021/10/16 3-51-29-407\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"7e170c7a-9048-3610-86cd-a197e4603fd1\",\"version\":2,\"campaignKey\":\"1-219996263902-7e170c7a-9048-3610-86cd-a197e4603fd1\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1636657800,\"endDate\":1636701000,\"startDateEpochMillis\":1636657800000,\"endDateEpochMillis\":1636701000000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":577.96,\"unitsSold\":4,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set, 10 Piece Kitchen Cookware Set with Tri-Ply Bases and Lids, Pots and Pans Set with Nonstick Pan, 18/10 Stainless Steel Induction Cookware\",\"externalId\":\"2f5aa199\",\"glanceViews\":309,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":10},{\"internalDescription\":\"秒杀-2021/10/22 1-22-10-450\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"774e7ad4-826c-3b10-b89b-91095e1ca316\",\"version\":1,\"campaignKey\":\"1-219996263902-774e7ad4-826c-3b10-b89b-91095e1ca316\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/417k4w3j-NL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1636895700,\"endDate\":1636938900,\"startDateEpochMillis\":1636895700000,\"endDateEpochMillis\":1636938900000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCG2DF\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Tri-Ply Clad Stainless Steel Hammered Cookware Set, 5-Piece Pots and Pans Set, Silver\",\"externalId\":\"174c7c5b\",\"glanceViews\":0,\"imageAsin\":\"B08MFCG2DF\",\"committedQuantity\":11},{\"internalDescription\":\"秒杀-2021/10/28 9-49-52-61\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"a33de7aa-fb68-3a0a-946f-d6491682c62a\",\"version\":1,\"campaignKey\":\"1-219996263902-a33de7aa-fb68-3a0a-946f-d6491682c62a\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41cYwoxELfL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1636896300,\"endDate\":1636939500,\"startDateEpochMillis\":1636896300000,\"endDateEpochMillis\":1636939500000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":849.95,\"unitsSold\":5,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914H3446\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 18/10 Stainless Steel Pots and Pans Set, 11-Piece Induction Cookware Set with Steamer Insert, Impact-Bonded\",\"externalId\":\"3fa43fd4\",\"glanceViews\":246,\"imageAsin\":\"B0914H3446\",\"committedQuantity\":10},{\"internalDescription\":\"秒杀-2021/10/24 7-55-16-143\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"c09dbbb2-ec00-38d5-bac6-2a0085d44a3e\",\"version\":1,\"campaignKey\":\"1-219996263902-c09dbbb2-ec00-38d5-bac6-2a0085d44a3e\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41Kf8b0tB7L._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1637172000,\"endDate\":1637215200,\"startDateEpochMillis\":1637172000000,\"endDateEpochMillis\":1637215200000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914KB9R3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Copper Tri-ply Stainless Steel Cookware Set, Kitchen Pots and Pans Set 10-Piece\",\"externalId\":\"31492021\",\"glanceViews\":0,\"imageAsin\":\"B0914KB9R3\",\"committedQuantity\":10},{\"internalDescription\":\"秒杀-2021/10/22 1-22-23-131\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"3742469d-97c8-3c13-8b88-2c7d1c611fe1\",\"version\":2,\"campaignKey\":\"1-219996263902-3742469d-97c8-3c13-8b88-2c7d1c611fe1\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1637263200,\"endDate\":1637306400,\"startDateEpochMillis\":1637263200000,\"endDateEpochMillis\":1637306400000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":433.47,\"unitsSold\":3,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set, 10 Piece Kitchen Cookware Set with Tri-Ply Bases and Lids, Pots and Pans Set with Nonstick Pan, 18/10 Stainless Steel Induction Cookware\",\"externalId\":\"e385a078\",\"glanceViews\":379,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":10},{\"internalDescription\":\"秒杀-2021/10/28 9-51-23-770\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"4bdd3e0b-38ff-3665-b257-79540c17d0fb\",\"version\":3,\"campaignKey\":\"1-219996263902-4bdd3e0b-38ff-3665-b257-79540c17d0fb\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41cYwoxELfL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1637520900,\"endDate\":1637564100,\"startDateEpochMillis\":1637520900000,\"endDateEpochMillis\":1637564100000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":509.97,\"unitsSold\":3,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914H3446\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set 11-Piece, Kitchen Cookware Sets with Steamer Insert, 18/10 Stainless Steel Induction Cookware Set with Stay Cool Long Handles, Dishwasher Safe\",\"externalId\":\"10963945\",\"glanceViews\":724,\"imageAsin\":\"B0914H3446\",\"committedQuantity\":14},{\"internalDescription\":\"秒杀-2021/10/25 16-5-49-843\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"7600237e-95b6-392f-a5ee-eca55e546384\",\"version\":1,\"campaignKey\":\"1-219996263902-7600237e-95b6-392f-a5ee-eca55e546384\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/417k4w3j-NL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=null, feeOverride=false)\",\"startDate\":1636963200,\"endDate\":1637567940,\"startDateEpochMillis\":1636963200000,\"endDateEpochMillis\":1637567940000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCG2DF\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Tri-Ply Clad Stainless Steel Hammered Cookware Set, 5-Piece Pots and Pans Set, Silver\",\"externalId\":\"eb3568f1\",\"glanceViews\":0,\"imageAsin\":\"B08MFCG2DF\",\"committedQuantity\":11},{\"internalDescription\":\"秒杀-2021/10/25 16-6-8-661\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"b4b34d43-963f-3bb9-a3e9-68044f24c0ad\",\"version\":1,\"campaignKey\":\"1-219996263902-b4b34d43-963f-3bb9-a3e9-68044f24c0ad\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41Kf8b0tB7L._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1639232100,\"endDate\":1639275300,\"startDateEpochMillis\":1639232100000,\"endDateEpochMillis\":1639275300000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914KB9R3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Copper Tri-ply Stainless Steel Cookware Set, Kitchen Pots and Pans Set 10-Piece\",\"externalId\":\"30ddcd4d\",\"glanceViews\":0,\"imageAsin\":\"B0914KB9R3\",\"committedQuantity\":10},{\"internalDescription\":\"秒杀-2021/10/30 16-1-26-35\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"93b2803d-3963-3c2a-8828-fb90eb87afd6\",\"version\":1,\"campaignKey\":\"1-219996263902-93b2803d-3963-3c2a-8828-fb90eb87afd6\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41cYwoxELfL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1639239600,\"endDate\":1639282800,\"startDateEpochMillis\":1639239600000,\"endDateEpochMillis\":1639282800000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914H3446\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 18/10 Stainless Steel Pots and Pans Set, 11-Piece Induction Cookware Set with Steamer Insert, Impact-Bonded\",\"externalId\":\"f9ff1c1c\",\"glanceViews\":0,\"imageAsin\":\"B0914H3446\",\"committedQuantity\":10},{\"internalDescription\":\"秒杀-2021/10/25 16-6-24-952\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"663a0b3b-bc07-3cc0-b799-2f0f9982bf2d\",\"version\":3,\"campaignKey\":\"1-219996263902-663a0b3b-bc07-3cc0-b799-2f0f9982bf2d\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1639321200,\"endDate\":1639364400,\"startDateEpochMillis\":1639321200000,\"endDateEpochMillis\":1639364400000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":1011.43,\"unitsSold\":7,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Cookware Set, Stainless Kitchen Pots and Pans Set\",\"externalId\":\"13de6d13\",\"glanceViews\":304,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":13},{\"internalDescription\":\"秒杀-2021/11/09 16-3-36-798\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"676417be-99ae-3938-8646-ccdbdb3fa401\",\"version\":1,\"campaignKey\":\"1-219996263902-676417be-99ae-3938-8646-ccdbdb3fa401\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41cYwoxELfL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1639418100,\"endDate\":1639461300,\"startDateEpochMillis\":1639418100000,\"endDateEpochMillis\":1639461300000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914H3446\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 18/10 Stainless Steel Pots and Pans Set, 11-Piece Induction Cookware Set with Steamer Insert, Impact-Bonded\",\"externalId\":\"b1b89f6b\",\"glanceViews\":0,\"imageAsin\":\"B0914H3446\",\"committedQuantity\":10},{\"internalDescription\":\"秒杀-2021/11/15 2-0-19-521\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"060df544-519c-3bc7-8a47-46c07491fcb6\",\"version\":1,\"campaignKey\":\"1-219996263902-060df544-519c-3bc7-8a47-46c07491fcb6\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1639758000,\"endDate\":1639801200,\"startDateEpochMillis\":1639758000000,\"endDateEpochMillis\":1639801200000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set, 10 Piece Kitchen Cookware Set with Tri-Ply Bases and Lids, Pots and Pans Set with Nonstick Pan, 18/10 Stainless Steel Induction Cookware\",\"externalId\":\"ce239aaf\",\"glanceViews\":0,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":10},{\"internalDescription\":\"Lightning Deal-2021/11/22 5-38-5-349\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"93fafbad-701f-3ec3-bd9c-fb58fba17a48\",\"version\":1,\"campaignKey\":\"1-219996263902-93fafbad-701f-3ec3-bd9c-fb58fba17a48\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41Kf8b0tB7L._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1639848900,\"endDate\":1639892100,\"startDateEpochMillis\":1639848900000,\"endDateEpochMillis\":1639892100000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914KB9R3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Copper Tri-ply Stainless Steel Cookware Set, Stainless Kitchen Pots and Pans Set 10-Piece\",\"externalId\":\"44008787\",\"glanceViews\":0,\"imageAsin\":\"B0914KB9R3\",\"committedQuantity\":10},{\"internalDescription\":\"Lightning Deal-2021/11/22 6-4-46-397\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"8a106adf-176e-33cd-8824-8feceac37236\",\"version\":1,\"campaignKey\":\"1-219996263902-8a106adf-176e-33cd-8824-8feceac37236\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1640197200,\"endDate\":1640240400,\"startDateEpochMillis\":1640197200000,\"endDateEpochMillis\":1640240400000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":1011.43,\"unitsSold\":7,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set, 10 Piece Kitchen Cookware Set with Tri-Ply Bases and Lids, Pots and Pans Set with Nonstick Pan, 18/10 Stainless Steel Induction Cookware\",\"externalId\":\"e153714c\",\"glanceViews\":332,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":10},{\"internalDescription\":\"Lightning Deal-2021/11/22 6-5-18-547\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"2e2e9a01-2eab-39f8-8dd6-03896a0d541b\",\"version\":1,\"campaignKey\":\"1-219996263902-2e2e9a01-2eab-39f8-8dd6-03896a0d541b\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41cYwoxELfL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1640541600,\"endDate\":1640584800,\"startDateEpochMillis\":1640541600000,\"endDateEpochMillis\":1640584800000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914H3446\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set 11-Piece, Kitchen Cookware Sets with Steamer Insert, 18/10 Stainless Steel Induction Cookware Set with Stay Cool Long Handles, Dishwasher Safe\",\"externalId\":\"ca29e7be\",\"glanceViews\":0,\"imageAsin\":\"B0914H3446\",\"committedQuantity\":10},{\"internalDescription\":\"Lightning Deal-2021/12/11 15-39-21-560\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"58b4a75d-a6ed-32f5-aed3-af2a0995f14f\",\"version\":2,\"campaignKey\":\"1-219996263902-58b4a75d-a6ed-32f5-aed3-af2a0995f14f\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=null, feeOverride=false)\",\"startDate\":1639987200,\"endDate\":1640591940,\"startDateEpochMillis\":1639987200000,\"endDateEpochMillis\":1640591940000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":null,\"unitsSold\":null,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Cookware Set, Stainless Kitchen Pots and Pans Set\",\"externalId\":null,\"glanceViews\":null,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":10},{\"internalDescription\":\"Lightning Deal-2021/12/11 15-39-44-560\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"dbfa0288-f206-3245-a71c-1d301b30350a\",\"version\":1,\"campaignKey\":\"1-219996263902-dbfa0288-f206-3245-a71c-1d301b30350a\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=Currency(amount=150.0, currencyCode=USD), scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1641049200,\"endDate\":1641092400,\"startDateEpochMillis\":1641049200000,\"endDateEpochMillis\":1641092400000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":433.47,\"unitsSold\":3,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Cookware Set, Stainless Kitchen Pots and Pans Set\",\"externalId\":\"9550fa85\",\"glanceViews\":334,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":10},{\"internalDescription\":\"Lightning Deal-2021/12/20 2-27-34-870\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"dd79d280-b055-3e45-a274-32512cae8d45\",\"version\":1,\"campaignKey\":\"1-219996263902-dd79d280-b055-3e45-a274-32512cae8d45\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.0, currencyCode=USD), feeOverride=false)\",\"startDate\":1641224700,\"endDate\":1641267900,\"startDateEpochMillis\":1641224700000,\"endDateEpochMillis\":1641267900000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set, 10 Piece Kitchen Cookware Set with Tri-Ply Bases and Lids, Pots and Pans Set with Nonstick Pan, 18/10 Stainless Steel Induction Cookware\",\"externalId\":\"66a798e9\",\"glanceViews\":0,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":10},{\"internalDescription\":\"秒杀-2022/03/12 14-6-35-874\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"7c05b3d4-f8ca-3b36-91ea-4664dc6297e5\",\"version\":1,\"campaignKey\":\"1-219996263902-7c05b3d4-f8ca-3b36-91ea-4664dc6297e5\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41F800hKoXL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.0, currencyCode=USD), max=Currency(amount=150.0, currencyCode=USD)), chargedFee=null, scheduledFee=null, feeOverride=false)\",\"startDate\":1647846000,\"endDate\":1648450740,\"startDateEpochMillis\":1647846000000,\"endDateEpochMillis\":1648450740000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set, 10 Piece Kitchen Cookware Set with Tri-Ply Bases and Lids, Pots and Pans Set with Nonstick Pan, 18/10 Stainless Steel Induction Cookware\",\"externalId\":\"88b10e91\",\"glanceViews\":0,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":10},{\"internalDescription\":\"SS0101-A-LD-18%-0411-0417 秒杀-2022/04/01 7-40-58-535\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"64036a69-4996-3b5f-924b-b73ca7f263d8\",\"version\":1,\"campaignKey\":\"1-219996263902-64036a69-4996-3b5f-924b-b73ca7f263d8\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41UAzfH0DgL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1650032100,\"endDate\":1650075300,\"startDateEpochMillis\":1650032100000,\"endDateEpochMillis\":1650075300000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":107.08,\"unitsSold\":2,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09QSMM9T3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 8 Quart Stock Pot, Stainless Steel Stock Pot, Soup Pot Cooking Pot with Lid, Induction Pot for Cooking, Stainless Steel Healthy Cookware Stockpots with Cover Dishwasher Safe\",\"externalId\":\"c34e9edc\",\"glanceViews\":224,\"imageAsin\":\"B09QSMM9T3\",\"committedQuantity\":14},{\"internalDescription\":\"SS0101-A LD 24% Tenth week Lightning Deal-2022/04/27 1-44-51-185\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"70c18c3c-a1ba-3456-bd8a-674c33413e47\",\"version\":2,\"campaignKey\":\"1-219996263902-70c18c3c-a1ba-3456-bd8a-674c33413e47\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41UAzfH0DgL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1652548200,\"endDate\":1652591400,\"startDateEpochMillis\":1652548200000,\"endDateEpochMillis\":1652591400000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":367.43,\"unitsSold\":7,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09QSMM9T3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 8 Quart Stock Pot, Stainless Steel Stock Pot, Soup Pot Cooking Pot with Lid, Induction Pot for Cooking, Stainless Steel Healthy Cookware Stockpots with Cover Dishwasher Safe\",\"externalId\":\"40adfde4\",\"glanceViews\":362,\"imageAsin\":\"B09QSMM9T3\",\"committedQuantity\":13},{\"internalDescription\":\"SS0101-A-LD 秒杀-2022/05/17 3-42-52-478\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"504c800f-81fa-3d4b-91a5-96be50e58d6e\",\"version\":2,\"campaignKey\":\"1-219996263902-504c800f-81fa-3d4b-91a5-96be50e58d6e\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41UAzfH0DgL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1653317400,\"endDate\":1653360600,\"startDateEpochMillis\":1653317400000,\"endDateEpochMillis\":1653360600000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":206.46,\"unitsSold\":4,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09QSMM9T3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 8 Quart Stock Pot, Stainless Steel Stock Pot, Soup Pot Cooking Pot with Lid, Induction Pot for Cooking, Stainless Steel Healthy Cookware Stockpots with Cover Dishwasher Safe\",\"externalId\":\"c41f2911\",\"glanceViews\":171,\"imageAsin\":\"B09QSMM9T3\",\"committedQuantity\":12},{\"internalDescription\":\"SS0101-A-LD-20%OFF 秒杀-2022/05/18 9-40-6-850\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"b7ceef93-b6d3-336f-81aa-aaf67d299efc\",\"version\":1,\"campaignKey\":\"1-219996263902-b7ceef93-b6d3-336f-81aa-aaf67d299efc\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41UAzfH0DgL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1654352100,\"endDate\":1654395300,\"startDateEpochMillis\":1654352100000,\"endDateEpochMillis\":1654395300000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":475.92,\"unitsSold\":8,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09QSMM9T3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 8 Quart Stock Pot, Stainless Steel Stock Pot, Soup Pot Cooking Pot with Lid, Induction Pot for Cooking, Stainless Steel Healthy Cookware Stockpots with Cover Dishwasher Safe\",\"externalId\":\"ab2bbb0d\",\"glanceViews\":376,\"imageAsin\":\"B09QSMM9T3\",\"committedQuantity\":12},{\"internalDescription\":\"SS0101-A-LD-20%OFF 秒杀-2022/05/18 9-43-54-642\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"fd87e8d3-a536-33b1-9c06-8cda5e85a483\",\"version\":2,\"campaignKey\":\"1-219996263902-fd87e8d3-a536-33b1-9c06-8cda5e85a483\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41UAzfH0DgL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1654950900,\"endDate\":1654994100,\"startDateEpochMillis\":1654950900000,\"endDateEpochMillis\":1654994100000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":535.41,\"unitsSold\":9,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09QSMM9T3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 8 Quart Stock Pot, Stainless Steel Stock Pot, Soup Pot Cooking Pot with Lid, Induction Pot for Cooking, Stainless Steel Healthy Cookware Stockpots with Cover Dishwasher Safe\",\"externalId\":\"9f3bb81d\",\"glanceViews\":237,\"imageAsin\":\"B09QSMM9T3\",\"committedQuantity\":15},{\"internalDescription\":\"Lightning Deal-2022/06/04 6-56-23-321\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"37d1f3e4-7a68-3ffa-93c0-1c897b47d195\",\"version\":2,\"campaignKey\":\"1-219996263902-37d1f3e4-7a68-3ffa-93c0-1c897b47d195\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/511no2vKyRL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1655122800,\"endDate\":1655166000,\"startDateEpochMillis\":1655122800000,\"endDateEpochMillis\":1655166000000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":305.98,\"unitsSold\":2,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set, 10 Piece Kitchen Cookware Set with Tri-Ply Bases and Lids, Pots and Pans Set with Nonstick Pan, 18/10 Stainless Steel Induction Cookware\",\"externalId\":\"33824eab\",\"glanceViews\":72,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":15},{\"internalDescription\":\"Lightning Deal-2022/06/04 6-56-22-745\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"60b0ed28-cb71-3a3c-9488-942a1fa0bc7d\",\"version\":1,\"campaignKey\":\"1-219996263902-60b0ed28-cb71-3a3c-9488-942a1fa0bc7d\"},\"campaignStatus\":\"CANCELLED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41UAzfH0DgL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1655298900,\"endDate\":1655342100,\"startDateEpochMillis\":1655298900000,\"endDateEpochMillis\":1655342100000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":null,\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09QSMM9T3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 8 Quart Stock Pot, Stainless Steel Stock Pot, Soup Pot Cooking Pot with Lid, Induction Pot for Cooking, Stainless Steel Healthy Cookware Stockpots with Cover Dishwasher Safe\",\"externalId\":\"605db098\",\"glanceViews\":0,\"imageAsin\":\"B09QSMM9T3\",\"committedQuantity\":12},{\"internalDescription\":\"Lightning Deal-2022/06/04 6-56-23-925\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"ee0c2345-0495-3ccf-abcf-9d4bdb480699\",\"version\":3,\"campaignKey\":\"1-219996263902-ee0c2345-0495-3ccf-abcf-9d4bdb480699\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41Kf8b0tB7L._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1655642100,\"endDate\":1655685300,\"startDateEpochMillis\":1655642100000,\"endDateEpochMillis\":1655685300000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":120.69,\"unitsSold\":1,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914KB9R3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Tri-Ply Clad Stainless Steel Cookware Set\",\"externalId\":\"621db34f\",\"glanceViews\":144,\"imageAsin\":\"B0914KB9R3\",\"committedQuantity\":12},{\"internalDescription\":\"Lightning Deal-2022/06/04 6-56-24-471\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"f1c751eb-dcff-35a3-b1c2-d62805d1cb8b\",\"version\":1,\"campaignKey\":\"1-219996263902-f1c751eb-dcff-35a3-b1c2-d62805d1cb8b\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/51YULaU-gHL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1655644800,\"endDate\":1655688000,\"startDateEpochMillis\":1655644800000,\"endDateEpochMillis\":1655688000000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":169.95,\"unitsSold\":5,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09QSMVKHY\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 2 Quart Saucepan with Lid, 18/10 Stainless Steel Pot Tri-Ply Hammered Copper, 2 Qt Small Pot Sauce Pan for Cooking, Induction Saucepan Cookware for Home Kitchen Dishwasher Oven Safe\",\"externalId\":\"00084652\",\"glanceViews\":125,\"imageAsin\":\"B09QSMVKHY\",\"committedQuantity\":22},{\"internalDescription\":\"Lightning Deal-2022/06/04 6-56-25-2\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"82a6fce3-e052-3bb1-b5f0-b61071b555b1\",\"version\":2,\"campaignKey\":\"1-219996263902-82a6fce3-e052-3bb1-b5f0-b61071b555b1\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41Sc0onF62L._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1655657400,\"endDate\":1655700600,\"startDateEpochMillis\":1655657400000,\"endDateEpochMillis\":1655700600000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":339.98,\"unitsSold\":2,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09P5XGQN3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set 11-Piece, Kitchen Cookware Sets with Steamer Insert, 18/10 Stainless Steel Induction Cookware Set with Stay Cool Long Handles, Dishwasher Safe\",\"externalId\":\"4ad8ac80\",\"glanceViews\":92,\"imageAsin\":\"B09P5XGQN3\",\"committedQuantity\":12},{\"internalDescription\":\"Lightning Deal-2022/06/06 8-47-39-314\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"e7af15a7-39ba-3c22-a0ed-5ff00e7de88c\",\"version\":1,\"campaignKey\":\"1-219996263902-e7af15a7-39ba-3c22-a0ed-5ff00e7de88c\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41Kf8b0tB7L._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1655986200,\"endDate\":1656029400,\"startDateEpochMillis\":1655986200000,\"endDateEpochMillis\":1656029400000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":362.07,\"unitsSold\":3,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B0914KB9R3\",\"skuCount\":2,\"asinCount\":2,\"title\":\"Ciwete Tri-Ply Clad Stainless Steel Cookware Set\",\"externalId\":\"f0f8e646\",\"glanceViews\":932,\"imageAsin\":\"B0914KB9R3\",\"committedQuantity\":27},{\"internalDescription\":\"Lightning Deal-2022/06/06 8-47-38-852\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"641a280f-ac16-3345-b286-958e14ab585d\",\"version\":1,\"campaignKey\":\"1-219996263902-641a280f-ac16-3345-b286-958e14ab585d\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/511no2vKyRL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=null, scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1656090600,\"endDate\":1656133800,\"startDateEpochMillis\":1656090600000,\"endDateEpochMillis\":1656133800000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":0,\"unitsSold\":0,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B08MFCJN77\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set, 10 Piece Kitchen Cookware Set with Tri-Ply Bases and Lids, Pots and Pans Set with Nonstick Pan, 18/10 Stainless Steel Induction Cookware\",\"externalId\":\"632fcf71\",\"glanceViews\":302,\"imageAsin\":\"B08MFCJN77\",\"committedQuantity\":10},{\"internalDescription\":\"Lightning Deal-2022/06/06 8-49-46-257\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"f33d2ace-bfa9-3fb3-b53a-2b65c752deae\",\"version\":1,\"campaignKey\":\"1-219996263902-f33d2ace-bfa9-3fb3-b53a-2b65c752deae\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41Sc0onF62L._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1656243300,\"endDate\":1656286500,\"startDateEpochMillis\":1656243300000,\"endDateEpochMillis\":1656286500000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":679.96,\"unitsSold\":4,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09P5XGQN3\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Pots and Pans Set 11-Piece, Kitchen Cookware Sets with Steamer Insert, 18/10 Stainless Steel Induction Cookware Set with Stay Cool Long Handles, Dishwasher Safe\",\"externalId\":\"c2fd0450\",\"glanceViews\":218,\"imageAsin\":\"B09P5XGQN3\",\"committedQuantity\":10},{\"internalDescription\":\"Lightning Deal-2022/06/06 8-49-8-869\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"6bc6e5ea-0617-3a7a-ba27-5cfa796d38a4\",\"version\":3,\"campaignKey\":\"1-219996263902-6bc6e5ea-0617-3a7a-ba27-5cfa796d38a4\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/51YULaU-gHL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1656257400,\"endDate\":1656300600,\"startDateEpochMillis\":1656257400000,\"endDateEpochMillis\":1656300600000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":135.96,\"unitsSold\":4,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09QSMVKHY\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 2 Quart Saucepan with Lid, 18/10 Stainless Steel Pot Tri-Ply Hammered Copper, 2 Qt Small Pot Sauce Pan for Cooking, Induction Saucepan Cookware for Home Kitchen Dishwasher Oven Safe\",\"externalId\":\"c760d7f6\",\"glanceViews\":235,\"imageAsin\":\"B09QSMVKHY\",\"committedQuantity\":22},{\"internalDescription\":\"秒杀-2022/06/15 6-37-59-970\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"7de12387-fba1-3066-b95a-5f7a3fe248e3\",\"version\":2,\"campaignKey\":\"1-219996263902-7de12387-fba1-3066-b95a-5f7a3fe248e3\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41XrwUtNKDL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1656505200,\"endDate\":1656548400,\"startDateEpochMillis\":1656505200000,\"endDateEpochMillis\":1656548400000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":124.08,\"unitsSold\":2,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09YQ3MMBY\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete Stainless Steel Stock Pot\",\"externalId\":\"250fd3d3\",\"glanceViews\":155,\"imageAsin\":\"B09YQ3MMBY\",\"committedQuantity\":12},{\"internalDescription\":\"秒杀-2022/06/15 2-58-31-28\",\"campaignReference\":{\"marketplaceId\":1,\"merchantId\":219996263902,\"id\":\"97702fd3-5a41-3cb5-9906-9e3d7b451a67\",\"version\":1,\"campaignKey\":\"1-219996263902-97702fd3-5a41-3cb5-9906-9e3d7b451a67\"},\"campaignStatus\":\"ENDED\",\"type\":\"LIGHTNING_DEAL\",\"imageUrl\":\"https://m.media-amazon.com/images/I/51YULaU-gHL._SY500_.jpg\",\"nudgeId\":null,\"eventId\":null,\"eventName\":null,\"items\":null,\"fees\":\"LightningDealFees(submittedFee=FeeRange(min=Currency(amount=150.00, currencyCode=USD), max=Currency(amount=150.00, currencyCode=USD)), chargedFee=Currency(amount=150.00, currencyCode=USD), scheduledFee=Currency(amount=150.00, currencyCode=USD), feeOverride=false)\",\"startDate\":1656684900,\"endDate\":1656728100,\"startDateEpochMillis\":1656684900000,\"endDateEpochMillis\":1656728100000,\"isDealScheduleSurfaced\":null,\"isAdmin\":false,\"sales\":135.96,\"unitsSold\":4,\"currencyCode\":\"USD\",\"ingressUrl\":\"https://www.amazon.com/gp/goldbox\",\"egressUrl\":\"https://www.amazon.com/dp/B09QSMVKHY\",\"skuCount\":1,\"asinCount\":1,\"title\":\"Ciwete 2 Quart Saucepan with Lid, 18/10 Stainless Steel Pot Tri-Ply Hammered Copper, 2 Qt Small Pot Sauce Pan for Cooking, Induction Saucepan Cookware for Home Kitchen Dishwasher Oven Safe\",\"externalId\":\"2f9b7e5e\",\"glanceViews\":148,\"imageAsin\":\"B09QSMVKHY\",\"committedQuantity\":22}],\"totalCount\":89,\"needsAttentionCount\":0},\"hideFeePreview\":false,\"marketplaceTimeZone\":\"US/Pacific\"},\"error\":null}");

/***/ }),

/***/ "159a":
/***/ (function(module, exports, __webpack_require__) {

var assignValue = __webpack_require__("32b3"),
    castPath = __webpack_require__("e2e4"),
    isIndex = __webpack_require__("c098"),
    isObject = __webpack_require__("1a8c"),
    toKey = __webpack_require__("f4d6");

/**
 * The base implementation of `_.set`.
 *
 * @private
 * @param {Object} object The object to modify.
 * @param {Array|string} path The path of the property to set.
 * @param {*} value The value to set.
 * @param {Function} [customizer] The function to customize path creation.
 * @returns {Object} Returns `object`.
 */
function baseSet(object, path, value, customizer) {
  if (!isObject(object)) {
    return object;
  }
  path = castPath(path, object);

  var index = -1,
      length = path.length,
      lastIndex = length - 1,
      nested = object;

  while (nested != null && ++index < length) {
    var key = toKey(path[index]),
        newValue = value;

    if (key === '__proto__' || key === 'constructor' || key === 'prototype') {
      return object;
    }

    if (index != lastIndex) {
      var objValue = nested[key];
      newValue = customizer ? customizer(objValue, key, nested) : undefined;
      if (newValue === undefined) {
        newValue = isObject(objValue)
          ? objValue
          : (isIndex(path[index + 1]) ? [] : {});
      }
    }
    assignValue(nested, key, newValue);
    nested = nested[key];
  }
  return object;
}

module.exports = baseSet;


/***/ }),

/***/ "15f3":
/***/ (function(module, exports, __webpack_require__) {

var basePickBy = __webpack_require__("89d9"),
    hasIn = __webpack_require__("8604");

/**
 * The base implementation of `_.pick` without support for individual
 * property identifiers.
 *
 * @private
 * @param {Object} object The source object.
 * @param {string[]} paths The property paths to pick.
 * @returns {Object} Returns the new object.
 */
function basePick(object, paths) {
  return basePickBy(object, paths, function(value, path) {
    return hasIn(object, path);
  });
}

module.exports = basePick;


/***/ }),

/***/ "16b4":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"data\":{\"invitation\":{\"id\":\"2015972937366114307\",\"name\":\"High Commission Collaboration\",\"message\":\"Dear {{user_name}},\\nIt's such a pleasure to connect with you! I'm Candice, and I am reaching out to you on behalf of GYS Bamboo Pajamas. We are a sleepwear brand specializing in eco-friendly bamboo viscose products.\\nTo express our sincerity, we would be delighted to provide our products, allowing you to experience them firsthand. We would also love to invite you to create a buyable video showcasing your authentic experience with our products.\\nCandice from GYS\",\"theme_file_id\":\"\",\"contacts_info\":[{\"field\":46,\"value\":\"\",\"title\":\"\",\"country_code\":\"US#1\"},{\"field\":7,\"value\":\"tk-support@gysbamboo.com\",\"title\":\"\"}],\"start_time\":\"1767936538775\",\"end_time\":\"1775001600000\",\"update_time\":\"1767936539000\",\"creator_cnt\":3,\"creator_added_cnt\":2,\"creator_posted_cnt\":1,\"product_cnt\":1,\"group_status\":1,\"theme_url\":\"\",\"free_sample_rule\":{\"has_free_sample\":true,\"is_free_sample_auto_review\":false},\"product_list\":[{\"product_id\":\"1731513362907369964\",\"image\":{\"thumb_url_list\":[\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/850d01a8ad7848c3996081137c939e21~tplv-fhlh96nyum-origin-webp.webp?dr=12180&t=555f072d&ps=933b5bde&shp=f9517c74&shcp=c936a14b&idc=useast5&from=4182867060\"]},\"title\":\"GYS Premium Bamboo Viscose Women's Full Slips Nightgown Soft and Lightweight Spaghetti Strap Sleep Dress\",\"item_sold\":\"0\",\"price\":{\"min_price\":{\"symbol\":\"$\",\"price\":\"39.99\",\"format_price\":\"$39.99\",\"currency\":\"USD\"},\"max_price\":{\"symbol\":\"$\",\"price\":\"39.99\",\"format_price\":\"$39.99\",\"currency\":\"USD\"}},\"target_commission\":2000,\"commission_effective_time\":\"1767936538775\",\"open_commission\":1950,\"est_commission\":{\"min_price\":{\"symbol\":\"$\",\"price\":\"7.998\",\"format_price\":\"$8.00\",\"currency\":\"USD\"},\"max_price\":{\"symbol\":\"$\",\"price\":\"7.998\",\"format_price\":\"$8.00\",\"currency\":\"USD\"}},\"product_status\":3,\"group_product_status\":0,\"effective_status\":1,\"stock\":\"42\",\"ads_commission_effective_time\":\"0\"}],\"creator_id_list\":[{\"base_info\":{\"creator_id\":\"7493996608623643128\",\"nick_name\":\"Dani❤️\",\"image\":{\"thumb_url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/040e2dcccf170cf577433ff1f146130b~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=65e1e5e2&x-expires=1770948000&x-signature=MM3xR5EinNylMChhRkLbHzcrktI%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"user_name\":\"danijose194\",\"creator_oec_id\":\"7493996608623643128\",\"selection_region\":\"US\",\"permission_tag\":0},\"product_add_cnt\":1,\"content_posted_cnt\":1,\"group_creator_status\":0,\"effective_status\":1,\"invitation_id\":\"7593528490470704909\"},{\"base_info\":{\"creator_id\":\"7496019894099413240\",\"nick_name\":\"Shilpy Jain\",\"image\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/a4d94d494eb5a84b07d0be94d0b6fa4b~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=adaf545f&x-expires=1770948000&x-signature=LXE%2Be7BJmDFtlHyFG8%2FlwPilVCU%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"user_name\":\"shilpy.jain.p\",\"creator_oec_id\":\"7496019894099413240\",\"selection_region\":\"US\",\"permission_tag\":0},\"product_add_cnt\":0,\"group_creator_status\":0,\"effective_status\":1,\"invitation_id\":\"7593230879847221005\"},{\"base_info\":{\"creator_id\":\"7494012474883803203\",\"nick_name\":\"✨kerrygatlin.art✨\",\"image\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/ad477216fc08f7d6f581c7796992b51f~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=8af969df&x-expires=1770948000&x-signature=ZgixW6bFZVHhB%2FvLz15GmD0fQK0%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"user_name\":\"kerrygatlin.art\",\"creator_oec_id\":\"7494012474883803203\",\"selection_region\":\"US\",\"permission_tag\":0},\"product_add_cnt\":1,\"content_posted_cnt\":0,\"group_creator_status\":0,\"effective_status\":1,\"invitation_id\":\"7593229570195982135\"}],\"group_type\":1,\"delivery_requirements\":{\"content_option\":1}}}}");

/***/ }),

/***/ "1735":
/***/ (function(module, exports, __webpack_require__) {

/*
  Module dependencies
*/
var ElementType = __webpack_require__("af98");
var entities = __webpack_require__("70e1");

var unencodedElements = {
  __proto__: null,
  style: true,
  script: true,
  xmp: true,
  iframe: true,
  noembed: true,
  noframes: true,
  plaintext: true,
  noscript: true
};

/*
  Format attributes
*/
function formatAttrs(attributes, opts) {
  if (!attributes) return;

  var output = '',
      value;

  // Loop through the attributes
  for (var key in attributes) {
    value = attributes[key];
    if (output) {
      output += ' ';
    }

    output += key;
    if ((value !== null && value !== '') || opts.xmlMode) {
        output += '="' + (opts.decodeEntities ? entities.encodeXML(value) : value) + '"';
    }
  }

  return output;
}

/*
  Self-enclosing tags (stolen from node-htmlparser)
*/
var singleTag = {
  __proto__: null,
  area: true,
  base: true,
  basefont: true,
  br: true,
  col: true,
  command: true,
  embed: true,
  frame: true,
  hr: true,
  img: true,
  input: true,
  isindex: true,
  keygen: true,
  link: true,
  meta: true,
  param: true,
  source: true,
  track: true,
  wbr: true,
};


var render = module.exports = function(dom, opts) {
  if (!Array.isArray(dom) && !dom.cheerio) dom = [dom];
  opts = opts || {};

  var output = '';

  for(var i = 0; i < dom.length; i++){
    var elem = dom[i];

    if (elem.type === 'root')
      output += render(elem.children, opts);
    else if (ElementType.isTag(elem))
      output += renderTag(elem, opts);
    else if (elem.type === ElementType.Directive)
      output += renderDirective(elem);
    else if (elem.type === ElementType.Comment)
      output += renderComment(elem);
    else if (elem.type === ElementType.CDATA)
      output += renderCdata(elem);
    else
      output += renderText(elem, opts);
  }

  return output;
};

function renderTag(elem, opts) {
  // Handle SVG
  if (elem.name === "svg") opts = {decodeEntities: opts.decodeEntities, xmlMode: true};

  var tag = '<' + elem.name,
      attribs = formatAttrs(elem.attribs, opts);

  if (attribs) {
    tag += ' ' + attribs;
  }

  if (
    opts.xmlMode
    && (!elem.children || elem.children.length === 0)
  ) {
    tag += '/>';
  } else {
    tag += '>';
    if (elem.children) {
      tag += render(elem.children, opts);
    }

    if (!singleTag[elem.name] || opts.xmlMode) {
      tag += '</' + elem.name + '>';
    }
  }

  return tag;
}

function renderDirective(elem) {
  return '<' + elem.data + '>';
}

function renderText(elem, opts) {
  var data = elem.data || '';

  // if entities weren't decoded, no need to encode them back
  if (opts.decodeEntities && !(elem.parent && elem.parent.name in unencodedElements)) {
    data = entities.encodeXML(data);
  }

  return data;
}

function renderCdata(elem) {
  return '<![CDATA[' + elem.children[0].data + ']]>';
}

function renderComment(elem) {
  return '<!--' + elem.data + '-->';
}


/***/ }),

/***/ "173a":
/***/ (function(module, exports) {

throw new Error("Module parse failed: Unexpected token (1:0)\nYou may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders\n> <!doctype html>\n| <html lang=\"en\">\n|   <head>");

/***/ }),

/***/ "1838":
/***/ (function(module, exports, __webpack_require__) {

var baseIsEqual = __webpack_require__("c05f"),
    get = __webpack_require__("9b02"),
    hasIn = __webpack_require__("8604"),
    isKey = __webpack_require__("f608"),
    isStrictComparable = __webpack_require__("08cc"),
    matchesStrictComparable = __webpack_require__("20ec"),
    toKey = __webpack_require__("f4d6");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1,
    COMPARE_UNORDERED_FLAG = 2;

/**
 * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.
 *
 * @private
 * @param {string} path The path of the property to get.
 * @param {*} srcValue The value to match.
 * @returns {Function} Returns the new spec function.
 */
function baseMatchesProperty(path, srcValue) {
  if (isKey(path) && isStrictComparable(srcValue)) {
    return matchesStrictComparable(toKey(path), srcValue);
  }
  return function(object) {
    var objValue = get(object, path);
    return (objValue === undefined && objValue === srcValue)
      ? hasIn(object, path)
      : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);
  };
}

module.exports = baseMatchesProperty;


/***/ }),

/***/ "18d8":
/***/ (function(module, exports, __webpack_require__) {

var memoizeCapped = __webpack_require__("234d");

/** Used to match property names within property paths. */
var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;

/** Used to match backslashes in property paths. */
var reEscapeChar = /\\(\\)?/g;

/**
 * Converts `string` to a property path array.
 *
 * @private
 * @param {string} string The string to convert.
 * @returns {Array} Returns the property path array.
 */
var stringToPath = memoizeCapped(function(string) {
  var result = [];
  if (string.charCodeAt(0) === 46 /* . */) {
    result.push('');
  }
  string.replace(rePropName, function(match, number, quote, subString) {
    result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));
  });
  return result;
});

module.exports = stringToPath;


/***/ }),

/***/ "1a8c":
/***/ (function(module, exports) {

/**
 * Checks if `value` is the
 * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
 * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is an object, else `false`.
 * @example
 *
 * _.isObject({});
 * // => true
 *
 * _.isObject([1, 2, 3]);
 * // => true
 *
 * _.isObject(_.noop);
 * // => true
 *
 * _.isObject(null);
 * // => false
 */
function isObject(value) {
  var type = typeof value;
  return value != null && (type == 'object' || type == 'function');
}

module.exports = isObject;


/***/ }),

/***/ "1be6":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Mixin = __webpack_require__("362e"),
    Tokenizer = __webpack_require__("b1dc"),
    LocationInfoTokenizerMixin = __webpack_require__("7180"),
    PositionTrackingPreprocessorMixin = __webpack_require__("3e8b"),
    LocationInfoOpenElementStackMixin = __webpack_require__("791e"),
    HTML = __webpack_require__("f30b"),
    inherits = __webpack_require__("3022").inherits;


//Aliases
var $ = HTML.TAG_NAMES;

var LocationInfoParserMixin = module.exports = function (parser) {
    Mixin.call(this, parser);

    this.parser = parser;
    this.posTracker = null;
    this.lastStartTagToken = null;
    this.lastFosterParentingLocation = null;
    this.currentToken = null;
};

inherits(LocationInfoParserMixin, Mixin);


LocationInfoParserMixin.prototype._setStartLocation = function (element) {
    if (this.lastStartTagToken) {
        element.__location = Object.create(this.lastStartTagToken.location);
        element.__location.startTag = this.lastStartTagToken.location;
    }
    else
        element.__location = null;
};

LocationInfoParserMixin.prototype._setEndLocation = function (element, closingToken) {
    var loc = element.__location;

    if (loc) {
        if (closingToken.location) {
            var ctLoc = closingToken.location,
                tn = this.parser.treeAdapter.getTagName(element);

            // NOTE: For cases like <p> <p> </p> - First 'p' closes without a closing
            // tag and for cases like <td> <p> </td> - 'p' closes without a closing tag.
            var isClosingEndTag = closingToken.type === Tokenizer.END_TAG_TOKEN && tn === closingToken.tagName;

            if (isClosingEndTag) {
                loc.endTag = Object.create(ctLoc);
                loc.endOffset = ctLoc.endOffset;
            }

            else
                loc.endOffset = ctLoc.startOffset;
        }

        else if (closingToken.type === Tokenizer.EOF_TOKEN)
            loc.endOffset = this.posTracker.offset;
    }
};

LocationInfoParserMixin.prototype._getOverriddenMethods = function (mxn, orig) {
    return {
        _bootstrap: function (document, fragmentContext) {
            orig._bootstrap.call(this, document, fragmentContext);

            mxn.lastStartTagToken = null;
            mxn.lastFosterParentingLocation = null;
            mxn.currentToken = null;
            mxn.posTracker = new PositionTrackingPreprocessorMixin(this.tokenizer.preprocessor);

            new LocationInfoTokenizerMixin(this.tokenizer);

            new LocationInfoOpenElementStackMixin(this.openElements, {
                onItemPop: function (element) {
                    mxn._setEndLocation(element, mxn.currentToken);
                }
            });
        },

        _runParsingLoop: function (scriptHandler) {
            orig._runParsingLoop.call(this, scriptHandler);

            // NOTE: generate location info for elements
            // that remains on open element stack
            for (var i = this.openElements.stackTop; i >= 0; i--)
                mxn._setEndLocation(this.openElements.items[i], mxn.currentToken);
        },


        //Token processing
        _processTokenInForeignContent: function (token) {
            mxn.currentToken = token;
            orig._processTokenInForeignContent.call(this, token);
        },

        _processToken: function (token) {
            mxn.currentToken = token;
            orig._processToken.call(this, token);

            //NOTE: <body> and <html> are never popped from the stack, so we need to updated
            //their end location explicitly.
            var requireExplicitUpdate = token.type === Tokenizer.END_TAG_TOKEN &&
                                        (token.tagName === $.HTML ||
                                         token.tagName === $.BODY && this.openElements.hasInScope($.BODY));

            if (requireExplicitUpdate) {
                for (var i = this.openElements.stackTop; i >= 0; i--) {
                    var element = this.openElements.items[i];

                    if (this.treeAdapter.getTagName(element) === token.tagName) {
                        mxn._setEndLocation(element, token);
                        break;
                    }
                }
            }
        },


        //Doctype
        _setDocumentType: function (token) {
            orig._setDocumentType.call(this, token);

            var documentChildren = this.treeAdapter.getChildNodes(this.document),
                cnLength = documentChildren.length;

            for (var i = 0; i < cnLength; i++) {
                var node = documentChildren[i];

                if (this.treeAdapter.isDocumentTypeNode(node)) {
                    node.__location = token.location;
                    break;
                }
            }
        },


        //Elements
        _attachElementToTree: function (element) {
            //NOTE: _attachElementToTree is called from _appendElement, _insertElement and _insertTemplate methods.
            //So we will use token location stored in this methods for the element.
            mxn._setStartLocation(element);
            mxn.lastStartTagToken = null;
            orig._attachElementToTree.call(this, element);
        },

        _appendElement: function (token, namespaceURI) {
            mxn.lastStartTagToken = token;
            orig._appendElement.call(this, token, namespaceURI);
        },

        _insertElement: function (token, namespaceURI) {
            mxn.lastStartTagToken = token;
            orig._insertElement.call(this, token, namespaceURI);
        },

        _insertTemplate: function (token) {
            mxn.lastStartTagToken = token;
            orig._insertTemplate.call(this, token);

            var tmplContent = this.treeAdapter.getTemplateContent(this.openElements.current);

            tmplContent.__location = null;
        },

        _insertFakeRootElement: function () {
            orig._insertFakeRootElement.call(this);
            this.openElements.current.__location = null;
        },

        //Comments
        _appendCommentNode: function (token, parent) {
            orig._appendCommentNode.call(this, token, parent);

            var children = this.treeAdapter.getChildNodes(parent),
                commentNode = children[children.length - 1];

            commentNode.__location = token.location;
        },

        //Text
        _findFosterParentingLocation: function () {
            //NOTE: store last foster parenting location, so we will be able to find inserted text
            //in case of foster parenting
            mxn.lastFosterParentingLocation = orig._findFosterParentingLocation.call(this);

            return mxn.lastFosterParentingLocation;
        },

        _insertCharacters: function (token) {
            orig._insertCharacters.call(this, token);

            var hasFosterParent = this._shouldFosterParentOnInsertion(),
                parent = hasFosterParent && mxn.lastFosterParentingLocation.parent ||
                         this.openElements.currentTmplContent ||
                         this.openElements.current,
                siblings = this.treeAdapter.getChildNodes(parent),
                textNodeIdx = hasFosterParent && mxn.lastFosterParentingLocation.beforeElement ?
                siblings.indexOf(mxn.lastFosterParentingLocation.beforeElement) - 1 :
                siblings.length - 1,
                textNode = siblings[textNodeIdx];

            //NOTE: if we have location assigned by another token, then just update end position
            if (textNode.__location)
                textNode.__location.endOffset = token.location.endOffset;

            else
                textNode.__location = token.location;
        }
    };
};



/***/ }),

/***/ "1c1e":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return cancelRequest; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return fetchAdapter; });
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("ca00");
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }


/**
 * @description 封装fetch
 */

var buildURL = __webpack_require__("30b5"); // 设置请求超时时间5分钟


var timeout = 5 * 60 * 1000;

function isFormData(val) {
  return typeof FormData !== 'undefined' && val instanceof FormData;
} // 取消fetch请求


function cancelRequest(requestId) {
  var controller = new AbortController();
  _utils_util__WEBPACK_IMPORTED_MODULE_0__[/* alarms */ "b"].setTimeout(function () {
    controller.abort();
    console.log('请求已超时-----');
  }, "cancelRequest-".concat(requestId), timeout);
  return controller.signal;
}
function fetchAdapter(config) {
  var url = config.url,
      method = config.method,
      headers = config.headers,
      data = config.data,
      params = config.params,
      signal = config.signal,
      responseType = config.responseType,
      paramsSerializer = config.paramsSerializer,
      requestId = config.requestId;
  var _config = {
    method: method,
    headers: headers,
    body: data,
    signal: signal
  };

  if (isFormData(data)) {
    delete headers['Content-Type']; // Let the browser set it
  }

  if (method.toLocaleLowerCase() === 'get') {
    url = buildURL(url, params, paramsSerializer);
    delete _config.body;
  }

  return new Promise(function (resolve, reject) {
    fetch(url, _config).then( /*#__PURE__*/function () {
      var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(res) {
        var resHeaders, _iterator, _step, entrie, _data, err;

        return _regeneratorRuntime().wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                resHeaders = {};
                _iterator = _createForOfIteratorHelper(res.headers.entries());

                try {
                  for (_iterator.s(); !(_step = _iterator.n()).done;) {
                    entrie = _step.value;
                    resHeaders[entrie[0]] = entrie[1];
                  }
                } catch (err) {
                  _iterator.e(err);
                } finally {
                  _iterator.f();
                }

                _context.next = 5;
                return res[responseType !== null && responseType !== void 0 ? responseType : 'text']();

              case 5:
                _data = _context.sent;

                if (!res.ok) {
                  _context.next = 10;
                  break;
                }

                resolve({
                  data: _data,
                  headers: resHeaders,
                  url: url
                }); // 这里包一层data原因是兼容之前axios的返回参数

                _context.next = 15;
                break;

              case 10:
                err = new Error("HTTP error! Status: ".concat(res.status, ", Response: ").concat(_data).substring(0, 300));
                err.status = res.status;
                err.url = url;
                err.headers = resHeaders;
                throw err;

              case 15:
                // 清除超时定时器
                chrome.alarms.clear("cancelRequest-".concat(requestId));

              case 16:
              case "end":
                return _context.stop();
            }
          }
        }, _callee);
      }));

      return function (_x) {
        return _ref.apply(this, arguments);
      };
    }()).catch(function (err) {
      // 清除超时定时器
      chrome.alarms.clear("cancelRequest-".concat(requestId));
      reject(err);
    });
  });
}

/***/ }),

/***/ "1c3c":
/***/ (function(module, exports, __webpack_require__) {

var Symbol = __webpack_require__("9e69"),
    Uint8Array = __webpack_require__("2474"),
    eq = __webpack_require__("9638"),
    equalArrays = __webpack_require__("a2be"),
    mapToArray = __webpack_require__("edfa"),
    setToArray = __webpack_require__("ac41");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1,
    COMPARE_UNORDERED_FLAG = 2;

/** `Object#toString` result references. */
var boolTag = '[object Boolean]',
    dateTag = '[object Date]',
    errorTag = '[object Error]',
    mapTag = '[object Map]',
    numberTag = '[object Number]',
    regexpTag = '[object RegExp]',
    setTag = '[object Set]',
    stringTag = '[object String]',
    symbolTag = '[object Symbol]';

var arrayBufferTag = '[object ArrayBuffer]',
    dataViewTag = '[object DataView]';

/** Used to convert symbols to primitives and strings. */
var symbolProto = Symbol ? Symbol.prototype : undefined,
    symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;

/**
 * A specialized version of `baseIsEqualDeep` for comparing objects of
 * the same `toStringTag`.
 *
 * **Note:** This function only supports comparing values with tags of
 * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
 *
 * @private
 * @param {Object} object The object to compare.
 * @param {Object} other The other object to compare.
 * @param {string} tag The `toStringTag` of the objects to compare.
 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
 * @param {Function} customizer The function to customize comparisons.
 * @param {Function} equalFunc The function to determine equivalents of values.
 * @param {Object} stack Tracks traversed `object` and `other` objects.
 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
 */
function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {
  switch (tag) {
    case dataViewTag:
      if ((object.byteLength != other.byteLength) ||
          (object.byteOffset != other.byteOffset)) {
        return false;
      }
      object = object.buffer;
      other = other.buffer;

    case arrayBufferTag:
      if ((object.byteLength != other.byteLength) ||
          !equalFunc(new Uint8Array(object), new Uint8Array(other))) {
        return false;
      }
      return true;

    case boolTag:
    case dateTag:
    case numberTag:
      // Coerce booleans to `1` or `0` and dates to milliseconds.
      // Invalid dates are coerced to `NaN`.
      return eq(+object, +other);

    case errorTag:
      return object.name == other.name && object.message == other.message;

    case regexpTag:
    case stringTag:
      // Coerce regexes to strings and treat strings, primitives and objects,
      // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring
      // for more details.
      return object == (other + '');

    case mapTag:
      var convert = mapToArray;

    case setTag:
      var isPartial = bitmask & COMPARE_PARTIAL_FLAG;
      convert || (convert = setToArray);

      if (object.size != other.size && !isPartial) {
        return false;
      }
      // Assume cyclic values are equal.
      var stacked = stack.get(object);
      if (stacked) {
        return stacked == other;
      }
      bitmask |= COMPARE_UNORDERED_FLAG;

      // Recursively compare objects (susceptible to call stack limits).
      stack.set(object, other);
      var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);
      stack['delete'](object);
      return result;

    case symbolTag:
      if (symbolValueOf) {
        return symbolValueOf.call(object) == symbolValueOf.call(other);
      }
  }
  return false;
}

module.exports = equalByTag;


/***/ }),

/***/ "1cec":
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__("0b07"),
    root = __webpack_require__("2b3e");

/* Built-in method references that are verified to be native. */
var Promise = getNative(root, 'Promise');

module.exports = Promise;


/***/ }),

/***/ "1d2b":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


module.exports = function bind(fn, thisArg) {
  return function wrap() {
    var args = new Array(arguments.length);
    for (var i = 0; i < args.length; i++) {
      args[i] = arguments[i];
    }
    return fn.apply(thisArg, args);
  };
};


/***/ }),

/***/ "1d32":
/***/ (function(module, exports, __webpack_require__) {

var arrayFilter = __webpack_require__("2d7c"),
    baseFilter = __webpack_require__("9f74"),
    baseIteratee = __webpack_require__("badf"),
    isArray = __webpack_require__("6747"),
    negate = __webpack_require__("a0ac");

/**
 * The opposite of `_.filter`; this method returns the elements of `collection`
 * that `predicate` does **not** return truthy for.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Collection
 * @param {Array|Object} collection The collection to iterate over.
 * @param {Function} [predicate=_.identity] The function invoked per iteration.
 * @returns {Array} Returns the new filtered array.
 * @see _.filter
 * @example
 *
 * var users = [
 *   { 'user': 'barney', 'age': 36, 'active': false },
 *   { 'user': 'fred',   'age': 40, 'active': true }
 * ];
 *
 * _.reject(users, function(o) { return !o.active; });
 * // => objects for ['fred']
 *
 * // The `_.matches` iteratee shorthand.
 * _.reject(users, { 'age': 40, 'active': true });
 * // => objects for ['barney']
 *
 * // The `_.matchesProperty` iteratee shorthand.
 * _.reject(users, ['active', false]);
 * // => objects for ['fred']
 *
 * // The `_.property` iteratee shorthand.
 * _.reject(users, 'active');
 * // => objects for ['barney']
 */
function reject(collection, predicate) {
  var func = isArray(collection) ? arrayFilter : baseFilter;
  return func(collection, negate(baseIteratee(predicate, 3)));
}

module.exports = reject;


/***/ }),

/***/ "1d65":
/***/ (function(module, exports, __webpack_require__) {

// DOM-Level-1-compliant structure
var NodePrototype = __webpack_require__("54d4");
var ElementPrototype = module.exports = Object.create(NodePrototype);

var domLvl1 = {
	tagName: "name"
};

Object.keys(domLvl1).forEach(function(key) {
	var shorthand = domLvl1[key];
	Object.defineProperty(ElementPrototype, key, {
		get: function() {
			return this[shorthand] || null;
		},
		set: function(val) {
			this[shorthand] = val;
			return val;
		}
	});
});


/***/ }),

/***/ "1dc4":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"data\":{\"invitation\":{\"id\":\"7589474773609383694\",\"group_status\":1,\"delivery_requirements\":{\"content_option\":1}},\"share_short_url\":\"https://affiliate.tiktokshopglobalselling.com/api/v1/oec/affiliate/seller/invitation_group/share/long_url/AJGVt9EYiA1L\",\"landing_url\":\"https://affiliate.tiktokshopglobalselling.com/api/v1/oec/affiliate/seller/invitation_group/share/long_url/AJGVt51upEGE\"}}");

/***/ }),

/***/ "1efc":
/***/ (function(module, exports) {

/**
 * Removes `key` and its value from the hash.
 *
 * @private
 * @name delete
 * @memberOf Hash
 * @param {Object} hash The hash to modify.
 * @param {string} key The key of the value to remove.
 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
 */
function hashDelete(key) {
  var result = this.has(key) && delete this.__data__[key];
  this.size -= result ? 1 : 0;
  return result;
}

module.exports = hashDelete;


/***/ }),

/***/ "1fb5":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


exports.byteLength = byteLength
exports.toByteArray = toByteArray
exports.fromByteArray = fromByteArray

var lookup = []
var revLookup = []
var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array

var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
for (var i = 0, len = code.length; i < len; ++i) {
  lookup[i] = code[i]
  revLookup[code.charCodeAt(i)] = i
}

// Support decoding URL-safe base64 strings, as Node.js does.
// See: https://en.wikipedia.org/wiki/Base64#URL_applications
revLookup['-'.charCodeAt(0)] = 62
revLookup['_'.charCodeAt(0)] = 63

function getLens (b64) {
  var len = b64.length

  if (len % 4 > 0) {
    throw new Error('Invalid string. Length must be a multiple of 4')
  }

  // Trim off extra bytes after placeholder bytes are found
  // See: https://github.com/beatgammit/base64-js/issues/42
  var validLen = b64.indexOf('=')
  if (validLen === -1) validLen = len

  var placeHoldersLen = validLen === len
    ? 0
    : 4 - (validLen % 4)

  return [validLen, placeHoldersLen]
}

// base64 is 4/3 + up to two characters of the original data
function byteLength (b64) {
  var lens = getLens(b64)
  var validLen = lens[0]
  var placeHoldersLen = lens[1]
  return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen
}

function _byteLength (b64, validLen, placeHoldersLen) {
  return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen
}

function toByteArray (b64) {
  var tmp
  var lens = getLens(b64)
  var validLen = lens[0]
  var placeHoldersLen = lens[1]

  var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))

  var curByte = 0

  // if there are placeholders, only get up to the last complete 4 chars
  var len = placeHoldersLen > 0
    ? validLen - 4
    : validLen

  var i
  for (i = 0; i < len; i += 4) {
    tmp =
      (revLookup[b64.charCodeAt(i)] << 18) |
      (revLookup[b64.charCodeAt(i + 1)] << 12) |
      (revLookup[b64.charCodeAt(i + 2)] << 6) |
      revLookup[b64.charCodeAt(i + 3)]
    arr[curByte++] = (tmp >> 16) & 0xFF
    arr[curByte++] = (tmp >> 8) & 0xFF
    arr[curByte++] = tmp & 0xFF
  }

  if (placeHoldersLen === 2) {
    tmp =
      (revLookup[b64.charCodeAt(i)] << 2) |
      (revLookup[b64.charCodeAt(i + 1)] >> 4)
    arr[curByte++] = tmp & 0xFF
  }

  if (placeHoldersLen === 1) {
    tmp =
      (revLookup[b64.charCodeAt(i)] << 10) |
      (revLookup[b64.charCodeAt(i + 1)] << 4) |
      (revLookup[b64.charCodeAt(i + 2)] >> 2)
    arr[curByte++] = (tmp >> 8) & 0xFF
    arr[curByte++] = tmp & 0xFF
  }

  return arr
}

function tripletToBase64 (num) {
  return lookup[num >> 18 & 0x3F] +
    lookup[num >> 12 & 0x3F] +
    lookup[num >> 6 & 0x3F] +
    lookup[num & 0x3F]
}

function encodeChunk (uint8, start, end) {
  var tmp
  var output = []
  for (var i = start; i < end; i += 3) {
    tmp =
      ((uint8[i] << 16) & 0xFF0000) +
      ((uint8[i + 1] << 8) & 0xFF00) +
      (uint8[i + 2] & 0xFF)
    output.push(tripletToBase64(tmp))
  }
  return output.join('')
}

function fromByteArray (uint8) {
  var tmp
  var len = uint8.length
  var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes
  var parts = []
  var maxChunkLength = 16383 // must be multiple of 3

  // go through the array every three bytes, we'll deal with trailing stuff later
  for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {
    parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))
  }

  // pad the end with zeros, but make sure to not forget the extra bytes
  if (extraBytes === 1) {
    tmp = uint8[len - 1]
    parts.push(
      lookup[tmp >> 2] +
      lookup[(tmp << 4) & 0x3F] +
      '=='
    )
  } else if (extraBytes === 2) {
    tmp = (uint8[len - 2] << 8) + uint8[len - 1]
    parts.push(
      lookup[tmp >> 10] +
      lookup[(tmp >> 4) & 0x3F] +
      lookup[(tmp << 2) & 0x3F] +
      '='
    )
  }

  return parts.join('')
}


/***/ }),

/***/ "1fc8":
/***/ (function(module, exports, __webpack_require__) {

var getMapData = __webpack_require__("4245");

/**
 * Sets the map `key` to `value`.
 *
 * @private
 * @name set
 * @memberOf MapCache
 * @param {string} key The key of the value to set.
 * @param {*} value The value to set.
 * @returns {Object} Returns the map cache instance.
 */
function mapCacheSet(key, value) {
  var data = getMapData(this, key),
      size = data.size;

  data.set(key, value);
  this.size += data.size == size ? 0 : 1;
  return this;
}

module.exports = mapCacheSet;


/***/ }),

/***/ "1ff4":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var DOCUMENT_MODE = __webpack_require__("f30b").DOCUMENT_MODE;

//Const
var VALID_DOCTYPE_NAME = 'html',
    QUIRKS_MODE_SYSTEM_ID = 'http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd',
    QUIRKS_MODE_PUBLIC_ID_PREFIXES = [
        '+//silmaril//dtd html pro v0r11 19970101//en',
        '-//advasoft ltd//dtd html 3.0 aswedit + extensions//en',
        '-//as//dtd html 3.0 aswedit + extensions//en',
        '-//ietf//dtd html 2.0 level 1//en',
        '-//ietf//dtd html 2.0 level 2//en',
        '-//ietf//dtd html 2.0 strict level 1//en',
        '-//ietf//dtd html 2.0 strict level 2//en',
        '-//ietf//dtd html 2.0 strict//en',
        '-//ietf//dtd html 2.0//en',
        '-//ietf//dtd html 2.1e//en',
        '-//ietf//dtd html 3.0//en',
        '-//ietf//dtd html 3.0//en//',
        '-//ietf//dtd html 3.2 final//en',
        '-//ietf//dtd html 3.2//en',
        '-//ietf//dtd html 3//en',
        '-//ietf//dtd html level 0//en',
        '-//ietf//dtd html level 0//en//2.0',
        '-//ietf//dtd html level 1//en',
        '-//ietf//dtd html level 1//en//2.0',
        '-//ietf//dtd html level 2//en',
        '-//ietf//dtd html level 2//en//2.0',
        '-//ietf//dtd html level 3//en',
        '-//ietf//dtd html level 3//en//3.0',
        '-//ietf//dtd html strict level 0//en',
        '-//ietf//dtd html strict level 0//en//2.0',
        '-//ietf//dtd html strict level 1//en',
        '-//ietf//dtd html strict level 1//en//2.0',
        '-//ietf//dtd html strict level 2//en',
        '-//ietf//dtd html strict level 2//en//2.0',
        '-//ietf//dtd html strict level 3//en',
        '-//ietf//dtd html strict level 3//en//3.0',
        '-//ietf//dtd html strict//en',
        '-//ietf//dtd html strict//en//2.0',
        '-//ietf//dtd html strict//en//3.0',
        '-//ietf//dtd html//en',
        '-//ietf//dtd html//en//2.0',
        '-//ietf//dtd html//en//3.0',
        '-//metrius//dtd metrius presentational//en',
        '-//microsoft//dtd internet explorer 2.0 html strict//en',
        '-//microsoft//dtd internet explorer 2.0 html//en',
        '-//microsoft//dtd internet explorer 2.0 tables//en',
        '-//microsoft//dtd internet explorer 3.0 html strict//en',
        '-//microsoft//dtd internet explorer 3.0 html//en',
        '-//microsoft//dtd internet explorer 3.0 tables//en',
        '-//netscape comm. corp.//dtd html//en',
        '-//netscape comm. corp.//dtd strict html//en',
        '-//o\'reilly and associates//dtd html 2.0//en',
        '-//o\'reilly and associates//dtd html extended 1.0//en',
        '-//spyglass//dtd html 2.0 extended//en',
        '-//sq//dtd html 2.0 hotmetal + extensions//en',
        '-//sun microsystems corp.//dtd hotjava html//en',
        '-//sun microsystems corp.//dtd hotjava strict html//en',
        '-//w3c//dtd html 3 1995-03-24//en',
        '-//w3c//dtd html 3.2 draft//en',
        '-//w3c//dtd html 3.2 final//en',
        '-//w3c//dtd html 3.2//en',
        '-//w3c//dtd html 3.2s draft//en',
        '-//w3c//dtd html 4.0 frameset//en',
        '-//w3c//dtd html 4.0 transitional//en',
        '-//w3c//dtd html experimental 19960712//en',
        '-//w3c//dtd html experimental 970421//en',
        '-//w3c//dtd w3 html//en',
        '-//w3o//dtd w3 html 3.0//en',
        '-//w3o//dtd w3 html 3.0//en//',
        '-//webtechs//dtd mozilla html 2.0//en',
        '-//webtechs//dtd mozilla html//en'
    ],
    QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES = QUIRKS_MODE_PUBLIC_ID_PREFIXES.concat([
        '-//w3c//dtd html 4.01 frameset//',
        '-//w3c//dtd html 4.01 transitional//'
    ]),
    QUIRKS_MODE_PUBLIC_IDS = [
        '-//w3o//dtd w3 html strict 3.0//en//',
        '-/w3c/dtd html 4.0 transitional/en',
        'html'
    ],
    LIMITED_QUIRKS_PUBLIC_ID_PREFIXES = [
        '-//W3C//DTD XHTML 1.0 Frameset//',
        '-//W3C//DTD XHTML 1.0 Transitional//'
    ],
    LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES = LIMITED_QUIRKS_PUBLIC_ID_PREFIXES.concat([
        '-//W3C//DTD HTML 4.01 Frameset//',
        '-//W3C//DTD HTML 4.01 Transitional//'
    ]);


//Utils
function enquoteDoctypeId(id) {
    var quote = id.indexOf('"') !== -1 ? '\'' : '"';

    return quote + id + quote;
}

function hasPrefix(publicId, prefixes) {
    for (var i = 0; i < prefixes.length; i++) {
        if (publicId.indexOf(prefixes[i]) === 0)
            return true;
    }

    return false;
}


//API
exports.getDocumentMode = function (name, publicId, systemId) {
    if (name !== VALID_DOCTYPE_NAME)
        return DOCUMENT_MODE.QUIRKS;

    if (systemId && systemId.toLowerCase() === QUIRKS_MODE_SYSTEM_ID)
        return DOCUMENT_MODE.QUIRKS;

    if (publicId !== null) {
        publicId = publicId.toLowerCase();

        if (QUIRKS_MODE_PUBLIC_IDS.indexOf(publicId) > -1)
            return DOCUMENT_MODE.QUIRKS;

        var prefixes = systemId === null ? QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES : QUIRKS_MODE_PUBLIC_ID_PREFIXES;

        if (hasPrefix(publicId, prefixes))
            return DOCUMENT_MODE.QUIRKS;

        prefixes = systemId === null ? LIMITED_QUIRKS_PUBLIC_ID_PREFIXES : LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES;

        if (hasPrefix(publicId, prefixes))
            return DOCUMENT_MODE.LIMITED_QUIRKS;
    }

    return DOCUMENT_MODE.NO_QUIRKS;
};

exports.serializeContent = function (name, publicId, systemId) {
    var str = '!DOCTYPE ';

    if (name)
        str += name;

    if (publicId !== null)
        str += ' PUBLIC ' + enquoteDoctypeId(publicId);

    else if (systemId !== null)
        str += ' SYSTEM';

    if (systemId !== null)
        str += ' ' + enquoteDoctypeId(systemId);

    return str;
};


/***/ }),

/***/ 2:
/***/ (function(module, exports) {

/* (ignored) */

/***/ }),

/***/ "205b":
/***/ (function(module) {

module.exports = JSON.parse("{\"_args\":[[\"cheerio@1.0.0-rc.3\",\"D:\\\\前端\\\\ak-extension-v3\\\\ak-extension\"]],\"_from\":\"cheerio@1.0.0-rc.3\",\"_id\":\"cheerio@1.0.0-rc.3\",\"_inBundle\":false,\"_integrity\":\"sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA==\",\"_location\":\"/cheerio\",\"_phantomChildren\":{\"@types/node\":\"17.0.34\",\"boolbase\":\"1.0.0\",\"inherits\":\"2.0.4\",\"string_decoder\":\"1.1.1\",\"util-deprecate\":\"1.0.2\"},\"_requested\":{\"type\":\"version\",\"registry\":true,\"raw\":\"cheerio@1.0.0-rc.3\",\"name\":\"cheerio\",\"escapedName\":\"cheerio\",\"rawSpec\":\"1.0.0-rc.3\",\"saveSpec\":null,\"fetchSpec\":\"1.0.0-rc.3\"},\"_requiredBy\":[\"/\"],\"_resolved\":\"https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.3.tgz\",\"_spec\":\"1.0.0-rc.3\",\"_where\":\"D:\\\\前端\\\\ak-extension-v3\\\\ak-extension\",\"author\":{\"name\":\"Matt Mueller\",\"email\":\"mattmuelle@gmail.com\",\"url\":\"mat.io\"},\"bugs\":{\"url\":\"https://github.com/cheeriojs/cheerio/issues\"},\"dependencies\":{\"css-select\":\"~1.2.0\",\"dom-serializer\":\"~0.1.1\",\"entities\":\"~1.1.1\",\"htmlparser2\":\"^3.9.1\",\"lodash\":\"^4.15.0\",\"parse5\":\"^3.0.1\"},\"description\":\"Tiny, fast, and elegant implementation of core jQuery designed specifically for the server\",\"devDependencies\":{\"benchmark\":\"^2.1.0\",\"coveralls\":\"^2.11.9\",\"expect.js\":\"~0.3.1\",\"istanbul\":\"^0.4.3\",\"jquery\":\"^3.0.0\",\"jsdom\":\"^9.2.1\",\"jshint\":\"^2.9.2\",\"mocha\":\"^3.1.2\",\"xyz\":\"~1.1.0\"},\"engines\":{\"node\":\">= 0.6\"},\"files\":[\"index.js\",\"lib\"],\"homepage\":\"https://github.com/cheeriojs/cheerio#readme\",\"keywords\":[\"htmlparser\",\"jquery\",\"selector\",\"scraper\",\"parser\",\"html\"],\"license\":\"MIT\",\"main\":\"./index.js\",\"name\":\"cheerio\",\"repository\":{\"type\":\"git\",\"url\":\"git://github.com/cheeriojs/cheerio.git\"},\"scripts\":{\"test\":\"make test\"},\"version\":\"1.0.0-rc.3\"}");

/***/ }),

/***/ "20ec":
/***/ (function(module, exports) {

/**
 * A specialized version of `matchesProperty` for source values suitable
 * for strict equality comparisons, i.e. `===`.
 *
 * @private
 * @param {string} key The key of the property to get.
 * @param {*} srcValue The value to match.
 * @returns {Function} Returns the new spec function.
 */
function matchesStrictComparable(key, srcValue) {
  return function(object) {
    if (object == null) {
      return false;
    }
    return object[key] === srcValue &&
      (srcValue !== undefined || (key in Object(object)));
  };
}

module.exports = matchesStrictComparable;


/***/ }),

/***/ "213a":
/***/ (function(module, exports, __webpack_require__) {

/*
	compiles a selector to an executable function
*/

module.exports = compile;
module.exports.compileUnsafe = compileUnsafe;
module.exports.compileToken = compileToken;

var parse       = __webpack_require__("b893"),
    DomUtils    = __webpack_require__("2241"),
    isTag       = DomUtils.isTag,
    Rules       = __webpack_require__("7eb9"),
    sortRules   = __webpack_require__("6a53"),
    BaseFuncs   = __webpack_require__("99e4"),
    trueFunc    = BaseFuncs.trueFunc,
    falseFunc   = BaseFuncs.falseFunc,
    procedure   = __webpack_require__("0b13");

function compile(selector, options, context){
	var next = compileUnsafe(selector, options, context);
	return wrap(next);
}

function wrap(next){
	return function base(elem){
		return isTag(elem) && next(elem);
	};
}

function compileUnsafe(selector, options, context){
	var token = parse(selector, options);
	return compileToken(token, options, context);
}

function includesScopePseudo(t){
    return t.type === "pseudo" && (
        t.name === "scope" || (
            Array.isArray(t.data) &&
            t.data.some(function(data){
                return data.some(includesScopePseudo);
            })
        )
    );
}

var DESCENDANT_TOKEN = {type: "descendant"},
    SCOPE_TOKEN = {type: "pseudo", name: "scope"},
    PLACEHOLDER_ELEMENT = {},
    getParent = DomUtils.getParent;

//CSS 4 Spec (Draft): 3.3.1. Absolutizing a Scope-relative Selector
//http://www.w3.org/TR/selectors4/#absolutizing
function absolutize(token, context){
    //TODO better check if context is document
    var hasContext = !!context && !!context.length && context.every(function(e){
        return e === PLACEHOLDER_ELEMENT || !!getParent(e);
    });


    token.forEach(function(t){
        if(t.length > 0 && isTraversal(t[0]) && t[0].type !== "descendant"){
            //don't return in else branch
        } else if(hasContext && !includesScopePseudo(t)){
            t.unshift(DESCENDANT_TOKEN);
        } else {
            return;
        }

        t.unshift(SCOPE_TOKEN);
    });
}

function compileToken(token, options, context){
    token = token.filter(function(t){ return t.length > 0; });

	token.forEach(sortRules);

	var isArrayContext = Array.isArray(context);

    context = (options && options.context) || context;

    if(context && !isArrayContext) context = [context];

    absolutize(token, context);

	return token
		.map(function(rules){ return compileRules(rules, options, context, isArrayContext); })
		.reduce(reduceRules, falseFunc);
}

function isTraversal(t){
	return procedure[t.type] < 0;
}

function compileRules(rules, options, context, isArrayContext){
	var acceptSelf = (isArrayContext && rules[0].name === "scope" && rules[1].type === "descendant");
	return rules.reduce(function(func, rule, index){
		if(func === falseFunc) return func;
		return Rules[rule.type](func, rule, options, context, acceptSelf && index === 1);
	}, options && options.rootFunc || trueFunc);
}

function reduceRules(a, b){
	if(b === falseFunc || a === trueFunc){
		return a;
	}
	if(a === falseFunc || b === trueFunc){
		return b;
	}

	return function combine(elem){
		return a(elem) || b(elem);
	};
}

//:not, :has and :matches have to compile selectors
//doing this in lib/pseudos.js would lead to circular dependencies,
//so we add them here

var Pseudos     = __webpack_require__("99bc"),
    filters     = Pseudos.filters,
    existsOne   = DomUtils.existsOne,
    isTag       = DomUtils.isTag,
    getChildren = DomUtils.getChildren;


function containsTraversal(t){
	return t.some(isTraversal);
}

filters.not = function(next, token, options, context){
	var opts = {
	    	xmlMode: !!(options && options.xmlMode),
	    	strict: !!(options && options.strict)
	    };

	if(opts.strict){
		if(token.length > 1 || token.some(containsTraversal)){
			throw new SyntaxError("complex selectors in :not aren't allowed in strict mode");
		}
	}

    var func = compileToken(token, opts, context);

	if(func === falseFunc) return next;
	if(func === trueFunc)  return falseFunc;

	return function(elem){
		return !func(elem) && next(elem);
	};
};

filters.has = function(next, token, options){
	var opts = {
		xmlMode: !!(options && options.xmlMode),
		strict: !!(options && options.strict)
	};

    //FIXME: Uses an array as a pointer to the current element (side effects)
    var context = token.some(containsTraversal) ? [PLACEHOLDER_ELEMENT] : null;

	var func = compileToken(token, opts, context);

	if(func === falseFunc) return falseFunc;
	if(func === trueFunc)  return function(elem){
			return getChildren(elem).some(isTag) && next(elem);
		};

	func = wrap(func);

    if(context){
        return function has(elem){
		return next(elem) && (
                (context[0] = elem), existsOne(func, getChildren(elem))
            );
	};
    }

    return function has(elem){
		return next(elem) && existsOne(func, getChildren(elem));
	};
};

filters.matches = function(next, token, options, context){
	var opts = {
		xmlMode: !!(options && options.xmlMode),
		strict: !!(options && options.strict),
		rootFunc: next
	};

	return compileToken(token, opts, context);
};


/***/ }),

/***/ "2241":
/***/ (function(module, exports, __webpack_require__) {

var DomUtils = module.exports;

[
	__webpack_require__("baea"),
	__webpack_require__("9133"),
	__webpack_require__("9282"),
	__webpack_require__("286c"),
	__webpack_require__("a95b"),
	__webpack_require__("a611")
].forEach(function(ext){
	Object.keys(ext).forEach(function(key){
		DomUtils[key] = ext[key].bind(DomUtils);
	});
});


/***/ }),

/***/ "2286":
/***/ (function(module, exports, __webpack_require__) {

var apply = __webpack_require__("85e3");

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMax = Math.max;

/**
 * A specialized version of `baseRest` which transforms the rest array.
 *
 * @private
 * @param {Function} func The function to apply a rest parameter to.
 * @param {number} [start=func.length-1] The start position of the rest parameter.
 * @param {Function} transform The rest array transform.
 * @returns {Function} Returns the new function.
 */
function overRest(func, start, transform) {
  start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
  return function() {
    var args = arguments,
        index = -1,
        length = nativeMax(args.length - start, 0),
        array = Array(length);

    while (++index < length) {
      array[index] = args[start + index];
    }
    index = -1;
    var otherArgs = Array(start + 1);
    while (++index < start) {
      otherArgs[index] = args[index];
    }
    otherArgs[start] = transform(array);
    return apply(func, this, otherArgs);
  };
}

module.exports = overRest;


/***/ }),

/***/ "234d":
/***/ (function(module, exports, __webpack_require__) {

var memoize = __webpack_require__("e380");

/** Used as the maximum memoize cache size. */
var MAX_MEMOIZE_SIZE = 500;

/**
 * A specialized version of `_.memoize` which clears the memoized function's
 * cache when it exceeds `MAX_MEMOIZE_SIZE`.
 *
 * @private
 * @param {Function} func The function to have its output memoized.
 * @returns {Function} Returns the new memoized function.
 */
function memoizeCapped(func) {
  var result = memoize(func, function(key) {
    if (cache.size === MAX_MEMOIZE_SIZE) {
      cache.clear();
    }
    return key;
  });

  var cache = result.cache;
  return result;
}

module.exports = memoizeCapped;


/***/ }),

/***/ "2366":
/***/ (function(module, exports) {

/**
 * Convert array of 16 byte values to UUID string format of the form:
 * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
 */
var byteToHex = [];
for (var i = 0; i < 256; ++i) {
  byteToHex[i] = (i + 0x100).toString(16).substr(1);
}

function bytesToUuid(buf, offset) {
  var i = offset || 0;
  var bth = byteToHex;
  // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4
  return ([
    bth[buf[i++]], bth[buf[i++]],
    bth[buf[i++]], bth[buf[i++]], '-',
    bth[buf[i++]], bth[buf[i++]], '-',
    bth[buf[i++]], bth[buf[i++]], '-',
    bth[buf[i++]], bth[buf[i++]], '-',
    bth[buf[i++]], bth[buf[i++]],
    bth[buf[i++]], bth[buf[i++]],
    bth[buf[i++]], bth[buf[i++]]
  ]).join('');
}

module.exports = bytesToUuid;


/***/ }),

/***/ "23b5":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"data\":{\"is_pass\":true,\"quota\":{\"quota_type\":2,\"max_quota\":\"-1\",\"used_num\":\"0\"},\"shop_connection\":{\"new_connect_count\":0,\"pair_connect_count\":0},\"creator_connects\":[{\"creator_id\":\"7494014343454820212\",\"is_connect\":false,\"is_pair_connect\":false}],\"limit_rule\":{\"reached_max_follower_cnt\":\"-1\"}}}");

/***/ }),

/***/ "242e":
/***/ (function(module, exports, __webpack_require__) {

var baseFor = __webpack_require__("72af"),
    keys = __webpack_require__("ec69");

/**
 * The base implementation of `_.forOwn` without support for iteratee shorthands.
 *
 * @private
 * @param {Object} object The object to iterate over.
 * @param {Function} iteratee The function invoked per iteration.
 * @returns {Object} Returns `object`.
 */
function baseForOwn(object, iteratee) {
  return object && baseFor(object, iteratee, keys);
}

module.exports = baseForOwn;


/***/ }),

/***/ "2444":
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(process) {

var utils = __webpack_require__("c532");
var normalizeHeaderName = __webpack_require__("c8af");

var DEFAULT_CONTENT_TYPE = {
  'Content-Type': 'application/x-www-form-urlencoded'
};

function setContentTypeIfUnset(headers, value) {
  if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {
    headers['Content-Type'] = value;
  }
}

function getDefaultAdapter() {
  var adapter;
  if (typeof XMLHttpRequest !== 'undefined') {
    // For browsers use XHR adapter
    adapter = __webpack_require__("b50d");
  } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {
    // For node use HTTP adapter
    adapter = __webpack_require__("b50d");
  }
  return adapter;
}

var defaults = {
  adapter: getDefaultAdapter(),

  transformRequest: [function transformRequest(data, headers) {
    normalizeHeaderName(headers, 'Accept');
    normalizeHeaderName(headers, 'Content-Type');
    if (utils.isFormData(data) ||
      utils.isArrayBuffer(data) ||
      utils.isBuffer(data) ||
      utils.isStream(data) ||
      utils.isFile(data) ||
      utils.isBlob(data)
    ) {
      return data;
    }
    if (utils.isArrayBufferView(data)) {
      return data.buffer;
    }
    if (utils.isURLSearchParams(data)) {
      setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');
      return data.toString();
    }
    if (utils.isObject(data)) {
      setContentTypeIfUnset(headers, 'application/json;charset=utf-8');
      return JSON.stringify(data);
    }
    return data;
  }],

  transformResponse: [function transformResponse(data) {
    /*eslint no-param-reassign:0*/
    if (typeof data === 'string') {
      try {
        data = JSON.parse(data);
      } catch (e) { /* Ignore */ }
    }
    return data;
  }],

  /**
   * A timeout in milliseconds to abort a request. If set to 0 (default) a
   * timeout is not created.
   */
  timeout: 0,

  xsrfCookieName: 'XSRF-TOKEN',
  xsrfHeaderName: 'X-XSRF-TOKEN',

  maxContentLength: -1,

  validateStatus: function validateStatus(status) {
    return status >= 200 && status < 300;
  }
};

defaults.headers = {
  common: {
    'Accept': 'application/json, text/plain, */*'
  }
};

utils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {
  defaults.headers[method] = {};
});

utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {
  defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);
});

module.exports = defaults;

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("f28c")))

/***/ }),

/***/ "245a":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "mockEndpoints", function() { return mockEndpoints; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "enableMock", function() { return enableMock; });
/**
 * file: mock文件名
 * delay: 模拟网络延迟，默认为500ms
 * enable: 是否启用mock，默认为false
 * data: 少量的数据可以直接这里mock
 */
var serviceName = '/finance-client-service';
var taskServiceName = '/finance-task-center';
var mockEndpoints = [{
  key: '/account-switcher/regional-accounts/vendorGroup',
  file: 'vc/vcAccount.json',
  delay: 300,
  enable: true
}, {
  key: '/api/retail-analytics/v1/get-page-context',
  file: 'vc/vcPageContext.json',
  delay: 300,
  enable: true
}, // cartonlabel
{
  key: '/retail-analytics',
  headers: {
    'anti-csrftoken-a2z': 111
  },
  data: {},
  delay: 300,
  enable: true
}, {
  key: '/hz/vendor/members/shipment-mgr/resource/generateSSCCList',
  data: ['AMZNCC00006453842909'],
  delay: 300,
  enable: true
}, {
  key: '/hz/vendor/members/shipment-mgr/resource/getCSRF',
  data: 'hJBjsnqa2yHôwmQHrLTr8fGf5kjpFBY7Llfy7qSUPO6bAAAAGgiuzYxNGM50TRjMy0xMjZiLTQ',
  delay: 300,
  enable: true
}, {
  key: '/hz/vendor/members/shipment-mgr/resource/shipmentDetail',
  file: 'vc/cartonLabel/shipmentdetail.json',
  delay: 300,
  enable: true
}, {
  key: '/hz/vendor/members/shipment-mgr/resource/createUpdateAsnLabelShipment',
  data: {
    success: true
  },
  delay: 300,
  enable: false
}, {
  key: '/hz/vendor/members/shipment-mgr/resource/getLnData',
  file: 'vc/cartonLabel/getLnData.json',
  delay: 300,
  enable: true
}, {
  key: '/hz/vendor/members/shipment-mgr/resource/checkDuplicateAsns',
  data: {
    duplicateAsnIds: null
  },
  delay: 300,
  enable: true
}, // remittance
{
  key: '/hz/vendor/members/remittance/home',
  file: 'vc/remittance/home.js',
  search: '?ref_=vc_xx_favb',
  delay: 300,
  enable: true
}, {
  key: 'hz/vendor/members/remittance/home',
  file: 'vc/remittance/list.js',
  delay: 300,
  enable: true
}, {
  key: '/hz/vendor/members/remittance/resource/download',
  fileUrl: 'https://download.distributetop.com/client/Payments.xlsx',
  delay: 300,
  enable: true
}, // vc coop
{
  key: '/hz/vendor/members/coop/resource/audit-claims/list',
  file: 'vc/coop/list.js',
  delay: 300,
  enable: true
}, {
  key: '/hz/vendor/members/coop/resource/invoices/export',
  fileUrl: 'https://download.distributetop.com/client/coop总账.xls',
  delay: 300,
  enable: true
}, {
  key: '/hz/vendor/members/coop/resource/invoice/download',
  fileUrl: 'https://download.distributetop.com/client/COOP明细账.csv',
  delay: 300,
  enable: true
}, {
  key: '/hz/vendor/members/coop/resource/backupreports/get',
  data: {
    "backUpReportInfos": [{
      "startDate": "2025-02-01",
      "endDate": "2025-02-28",
      "fileName": "a66372da-19f5-4660-b06b-1f3b7dbc9851"
    }],
    "noBackUpReportReason": null
  },
  delay: 300,
  enable: true
}, {
  key: '/hz/vendor/members/coop/resource/backupreport/download',
  fileUrl: 'https://download.distributetop.com/client/COOP备份账.xls',
  delay: 300,
  enable: true
}, // vc invoice
{
  key: '/invoice-management/api/getApplicableTabsWithValues',
  file: 'vc/invoice/pageSize.json',
  delay: 300,
  enable: true
}, {
  key: '/invoice-management/api/getSearchTableResult',
  file: 'vc/invoice/list.json',
  delay: 300,
  enable: true
}, {
  key: '/invoice-management/api/getInvoiceHeaders',
  file: 'vc/invoice/detailPageSize.json',
  delay: 300,
  enable: true
}, {
  key: '/invoice-management/api/getInvoiceLineItems',
  file: 'vc/invoice/detail.json',
  delay: 300,
  enable: true
}, // review匹配订单号
{
  key: '/brandcustomerreviews/api/reviews',
  data: {
    reviews: [{
      orderId: 123456,
      reviewId: 654321
    }],
    totalReviewCount: 1
  },
  delay: 300,
  enable: true
}, // vc 获取 arn
{
  key: '/hz/vendor/members/shipment-mgr/resource/searchShipments',
  file: 'vc/arn/searchShipment.json',
  delay: 300,
  enable: true
},
/**
 * temu
 */
// 获取登录信息
{
  key: '/bg/quiet/api/mms/userInfo',
  data: {
    "success": true,
    "errorCode": 1000000,
    "errorMsg": null,
    "result": {
      "userId": 31472038091,
      "maskMobile": "+86 176****8312",
      "maskOwnerMobile": "8312",
      "accountType": 1,
      "accountStatus": 1,
      "tokenType": 1,
      "companyList": [{
        "companyName": "-",
        "malInfoList": [{
          "mallId": 65016470556,
          "mallName": "tree",
          "logo": "https://img.cdnfe.com/supplier-public-tag/1d6586ab48/8fc6150e-c492-4650-97b3-c2913d9c95ef_300x300.jpeg",
          "mallStatus": 1,
          "isSemiManagedMall": false
        }, {
          "mallId": 634418215364437,
          "mallName": "tree local",
          "logo": "https://img.cdnfe.com/supplier-public-tag/T.png",
          "mallStatus": 1,
          "isSemiManagedMall": true
        }, {
          "mallId": 634418215370562,
          "mallName": "tree local1",
          "logo": "https://img.cdnfe.com/supplier-public-tag/T.png",
          "mallStatus": 1,
          "isSemiManagedMall": true
        }]
      }],
      "nickName": null,
      "roleNameList": ["主账号"]
    }
  },
  delay: 300,
  enable: false
}, // 获取仓储综合服务费
{
  key: '/api/merchant/fund/detail/pageSearch',
  file: 'temu/getStorageServiceFee/getPageSearch.json',
  delay: 300,
  enable: true
}, {
  key: '/api/merchant/warehouse/express/bill/detail/list',
  file: 'temu/getStorageServiceFee/getDetailList.json',
  delay: 300,
  enable: true
},
/**
 * TikTok
 */
// 模拟tk获取店铺信息
{
  key: "/api/v3/seller/common/get",
  file: 'tiktok/tiktokGetSellerInfo.json',
  delay: 300,
  enable: true
}, // 模拟tk校验登录
{
  key: "/passport/account/info/v2/",
  file: 'tiktok/passportAccountInfo.json',
  delay: 300,
  enable: true
}, // 模拟获取定向合作列表
{
  key: "/api/v1/oec/affiliate/seller/invitation_group/search",
  file: 'tiktok/getTargetInvitation/getInvitationGroup.json',
  delay: 300,
  enable: true
}, // 模拟获取定向邀约详情
{
  key: "/api/v1/oec/affiliate/seller/invitation_group/detail",
  file: 'tiktok/getTargetInvitation/getTargetInvitationDetail.json',
  delay: 300,
  enable: true
}, // 模拟获取定向合作列表各状态数据总数
{
  key: "/api/v1/oec/affiliate/seller/invitation_group/count",
  file: 'tiktok/getTargetInvitation/getCount.json',
  delay: 300,
  enable: true
}, // 模拟tk手动获取任务
{
  key: "".concat(serviceName, "/api/mp_plugin/add"),
  file: 'tiktokCustomTask.json',
  delay: 300,
  enable: false
}, // 模拟tkgetTask
{
  key: "".concat(taskServiceName, "/api/mp/getTask"),
  file: 'tiktokTaskList.json',
  delay: 300,
  enable: false
}, // 模拟任务类型
{
  key: "".concat(taskServiceName, "/api/mp/getTaskTypes"),
  file: 'multiPlatformTaskType.json',
  delay: 300,
  enable: false
}, // 模拟handleReportInfoByType接口
{
  key: "".concat(taskServiceName, "/api/mp/handleReportInfoByType"),
  data: {
    code: 1,
    data: {
      status: 0
    }
  },
  delay: 300,
  enable: true
}, // 模拟获取达人列表
{
  key: "/api/v1/oec/affiliate/creator/marketplace/find",
  file: 'tiktok/getCreators/getCreatorList.json',
  delay: 300,
  enable: true
}, // 模拟冲突检测
{
  key: "/api/v1/oec/affiliate/seller/invitation_group/conflict_check",
  file: 'tiktok/getCreators/conflict_check.json',
  delay: 300,
  enable: true
}, // 模拟配额检测
{
  key: "/api/v1/oec/affiliate/seller/quota/connection/check",
  file: 'tiktok/createTargetInvitation/checkQuota.json',
  delay: 300,
  enable: true
}, // 模拟敏感文案检测
{
  key: "/api/v1/oec/affiliate/seller/invitation_group/sensitive_text_check",
  file: 'tiktok/createTargetInvitation/checkText.json',
  delay: 300,
  enable: true
}, // 模拟创建定向合作
{
  key: "/api/v1/oec/affiliate/seller/invitation_group/create",
  file: 'tiktok/createTargetInvitation/create.json',
  delay: 300,
  enable: true
}, // 模拟获取邀约详情
{
  key: "/api/v1/oec/affiliate/seller/invitation_group/detail",
  file: 'tiktok/updateTargetInvitation/getDateil.json',
  delay: 300,
  enable: true
}, // 模拟更新邀约
{
  key: "/api/v1/oec/affiliate/seller/invitation_group/update",
  file: 'tiktok/updateTargetInvitation/update.json',
  delay: 300,
  enable: true
},
/**
 * mercado 👇
 */
{
  key: '/seller-journey-microfrontend/modules/__resolve_props',
  file: 'mercado/storeInfo/getResolveProps.json',
  delay: 300,
  enable: true
}, {
  key: '/sales-summary/v2',
  file: 'mercado/storeInfo/getCbV2.js',
  delay: 300,
  enable: true
}, {
  key: '/resumen/v2',
  file: 'mercado/storeInfo/getLocalV2.js',
  delay: 300,
  enable: true
}, {
  key: '/balance/reports/api/reports/release/settings',
  file: 'mercado/getPagoReport/reportSettings.json',
  delay: 300,
  enable: true
}, {
  key: '/balance/reports/api/reports/release/statements1',
  file: 'mercado/getPagoReport/reportList.json',
  delay: 300,
  enable: true
}, {
  key: '/balance/reports/api/reports/release/statements',
  file: 'mercado/getPagoReport/generate.json',
  delay: 300,
  enable: true
}, {
  key: '/pampa/profile',
  file: 'mercado/storeInfo/getProfile.js',
  delay: 300,
  enable: true
}, // 获取达人/商品报告可获取时间范围
{
  key: "/api/v1/oec/affiliate/compass/available_date/get",
  file: 'tiktok/getCreatorReport/getAvailableDate.json',
  delay: 300,
  enable: true
}, // 获取达人/商品报告
{
  key: "/api/v1/oec/affiliate/compass/transaction/detail_list/get",
  file: 'tiktok/getCreatorReport/getDetailList.json',
  delay: 300,
  enable: true
}, // 亚马逊广告创作者计划
{
  key: '/bi/api/brands',
  file: 'ad/getCreatorProgram/getBrands.json',
  delay: 300,
  enable: true
}, {
  key: '/bi/api/campaign/search',
  file: 'ad/getCreatorProgram/getCampaign.json',
  delay: 300,
  enable: true
}, {
  key: '/bi/api/collaboration/search',
  file: 'ad/getCreatorProgram/getCollaboration.json',
  delay: 300,
  enable: true
}, {
  key: '/bi/api/report/generate',
  file: 'ad/getCreatorProgram/generateReport.json',
  delay: 300,
  enable: true
}, {
  key: '/bi/api/report/downloads',
  file: 'ad/getCreatorProgram/getDownloadsReport.json',
  delay: 300,
  enable: true
}]; // 总开关

var enableMock = false;

/***/ }),

/***/ "2474":
/***/ (function(module, exports, __webpack_require__) {

var root = __webpack_require__("2b3e");

/** Built-in value references. */
var Uint8Array = root.Uint8Array;

module.exports = Uint8Array;


/***/ }),

/***/ "2478":
/***/ (function(module, exports, __webpack_require__) {

var getMapData = __webpack_require__("4245");

/**
 * Gets the map value for `key`.
 *
 * @private
 * @name get
 * @memberOf MapCache
 * @param {string} key The key of the value to get.
 * @returns {*} Returns the entry value.
 */
function mapCacheGet(key) {
  return getMapData(this, key).get(key);
}

module.exports = mapCacheGet;


/***/ }),

/***/ "2524":
/***/ (function(module, exports, __webpack_require__) {

var nativeCreate = __webpack_require__("6044");

/** Used to stand-in for `undefined` hash values. */
var HASH_UNDEFINED = '__lodash_hash_undefined__';

/**
 * Sets the hash `key` to `value`.
 *
 * @private
 * @name set
 * @memberOf Hash
 * @param {string} key The key of the value to set.
 * @param {*} value The value to set.
 * @returns {Object} Returns the hash instance.
 */
function hashSet(key, value) {
  var data = this.__data__;
  this.size += this.has(key) ? 0 : 1;
  data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;
  return this;
}

module.exports = hashSet;


/***/ }),

/***/ "253c":
/***/ (function(module, exports, __webpack_require__) {

var baseGetTag = __webpack_require__("3729"),
    isObjectLike = __webpack_require__("1310");

/** `Object#toString` result references. */
var argsTag = '[object Arguments]';

/**
 * The base implementation of `_.isArguments`.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is an `arguments` object,
 */
function baseIsArguments(value) {
  return isObjectLike(value) && baseGetTag(value) == argsTag;
}

module.exports = baseIsArguments;


/***/ }),

/***/ "2593":
/***/ (function(module, exports, __webpack_require__) {

var basePick = __webpack_require__("15f3"),
    flatRest = __webpack_require__("c6cf");

/**
 * Creates an object composed of the picked `object` properties.
 *
 * @static
 * @since 0.1.0
 * @memberOf _
 * @category Object
 * @param {Object} object The source object.
 * @param {...(string|string[])} [paths] The property paths to pick.
 * @returns {Object} Returns the new object.
 * @example
 *
 * var object = { 'a': 1, 'b': '2', 'c': 3 };
 *
 * _.pick(object, ['a', 'c']);
 * // => { 'a': 1, 'c': 3 }
 */
var pick = flatRest(function(object, paths) {
  return object == null ? {} : basePick(object, paths);
});

module.exports = pick;


/***/ }),

/***/ "25b4":
/***/ (function(module, exports) {

/** Used to lookup unminified function names. */
var realNames = {};

module.exports = realNames;


/***/ }),

/***/ "25e8":
/***/ (function(module, exports, __webpack_require__) {

module.exports = Stream;

var Parser = __webpack_require__("bcc5");

function Stream(options) {
    Parser.call(this, new Cbs(this), options);
}

__webpack_require__("3fb5")(Stream, Parser);

Stream.prototype.readable = true;

function Cbs(scope) {
    this.scope = scope;
}

var EVENTS = __webpack_require__("d2de").EVENTS;

Object.keys(EVENTS).forEach(function(name) {
    if (EVENTS[name] === 0) {
        Cbs.prototype["on" + name] = function() {
            this.scope.emit(name);
        };
    } else if (EVENTS[name] === 1) {
        Cbs.prototype["on" + name] = function(a) {
            this.scope.emit(name, a);
        };
    } else if (EVENTS[name] === 2) {
        Cbs.prototype["on" + name] = function(a, b) {
            this.scope.emit(name, a, b);
        };
    } else {
        throw Error("wrong number of arguments!");
    }
});


/***/ }),

/***/ "25f8":
/***/ (function(module) {

module.exports = JSON.parse("{\"response\":\"ok\"}");

/***/ }),

/***/ "2696":
/***/ (function(module, exports, __webpack_require__) {

var baseRest = __webpack_require__("100e"),
    createWrap = __webpack_require__("e93d"),
    getHolder = __webpack_require__("57d6"),
    replaceHolders = __webpack_require__("e8a9");

/** Used to compose bitmasks for function metadata. */
var WRAP_BIND_FLAG = 1,
    WRAP_PARTIAL_FLAG = 32;

/**
 * Creates a function that invokes `func` with the `this` binding of `thisArg`
 * and `partials` prepended to the arguments it receives.
 *
 * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,
 * may be used as a placeholder for partially applied arguments.
 *
 * **Note:** Unlike native `Function#bind`, this method doesn't set the "length"
 * property of bound functions.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Function
 * @param {Function} func The function to bind.
 * @param {*} thisArg The `this` binding of `func`.
 * @param {...*} [partials] The arguments to be partially applied.
 * @returns {Function} Returns the new bound function.
 * @example
 *
 * function greet(greeting, punctuation) {
 *   return greeting + ' ' + this.user + punctuation;
 * }
 *
 * var object = { 'user': 'fred' };
 *
 * var bound = _.bind(greet, object, 'hi');
 * bound('!');
 * // => 'hi fred!'
 *
 * // Bound with placeholders.
 * var bound = _.bind(greet, object, _, '!');
 * bound('hi');
 * // => 'hi fred!'
 */
var bind = baseRest(function(func, thisArg, partials) {
  var bitmask = WRAP_BIND_FLAG;
  if (partials.length) {
    var holders = replaceHolders(partials, getHolder(bind));
    bitmask |= WRAP_PARTIAL_FLAG;
  }
  return createWrap(func, bitmask, thisArg, partials, holders);
});

// Assign default placeholders.
bind.placeholder = {};

module.exports = bind;


/***/ }),

/***/ "26e8":
/***/ (function(module, exports) {

/**
 * The base implementation of `_.hasIn` without support for deep paths.
 *
 * @private
 * @param {Object} [object] The object to query.
 * @param {Array|string} key The key to check.
 * @returns {boolean} Returns `true` if `key` exists, else `false`.
 */
function baseHasIn(object, key) {
  return object != null && key in Object(object);
}

module.exports = baseHasIn;


/***/ }),

/***/ "27bf":
/***/ (function(module, exports, __webpack_require__) {

"use strict";
// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.

// a transform stream is a readable/writable stream where you do
// something with the data.  Sometimes it's called a "filter",
// but that's not a great name for it, since that implies a thing where
// some bits pass through, and others are simply ignored.  (That would
// be a valid example of a transform, of course.)
//
// While the output is causally related to the input, it's not a
// necessarily symmetric or synchronous transformation.  For example,
// a zlib stream might take multiple plain-text writes(), and then
// emit a single compressed chunk some time in the future.
//
// Here's how this works:
//
// The Transform stream has all the aspects of the readable and writable
// stream classes.  When you write(chunk), that calls _write(chunk,cb)
// internally, and returns false if there's a lot of pending writes
// buffered up.  When you call read(), that calls _read(n) until
// there's enough pending readable data buffered up.
//
// In a transform stream, the written data is placed in a buffer.  When
// _read(n) is called, it transforms the queued up data, calling the
// buffered _write cb's as it consumes chunks.  If consuming a single
// written chunk would result in multiple output chunks, then the first
// outputted bit calls the readcb, and subsequent chunks just go into
// the read buffer, and will cause it to emit 'readable' if necessary.
//
// This way, back-pressure is actually determined by the reading side,
// since _read has to be called to start processing a new chunk.  However,
// a pathological inflate type of transform can cause excessive buffering
// here.  For example, imagine a stream where every byte of input is
// interpreted as an integer from 0-255, and then results in that many
// bytes of output.  Writing the 4 bytes {ff,ff,ff,ff} would result in
// 1kb of data being output.  In this case, you could write a very small
// amount of input, and end up with a very large amount of output.  In
// such a pathological inflating mechanism, there'd be no way to tell
// the system to stop doing the transform.  A single 4MB write could
// cause the system to run out of memory.
//
// However, even in such a pathological case, only a single written chunk
// would be consumed, and then the rest would wait (un-transformed) until
// the results of the previous transformed chunk were consumed.



module.exports = Transform;

var Duplex = __webpack_require__("b19a");

/*<replacement>*/
var util = Object.create(__webpack_require__("3a7c"));
util.inherits = __webpack_require__("3fb5");
/*</replacement>*/

util.inherits(Transform, Duplex);

function afterTransform(er, data) {
  var ts = this._transformState;
  ts.transforming = false;

  var cb = ts.writecb;

  if (!cb) {
    return this.emit('error', new Error('write callback called multiple times'));
  }

  ts.writechunk = null;
  ts.writecb = null;

  if (data != null) // single equals check for both `null` and `undefined`
    this.push(data);

  cb(er);

  var rs = this._readableState;
  rs.reading = false;
  if (rs.needReadable || rs.length < rs.highWaterMark) {
    this._read(rs.highWaterMark);
  }
}

function Transform(options) {
  if (!(this instanceof Transform)) return new Transform(options);

  Duplex.call(this, options);

  this._transformState = {
    afterTransform: afterTransform.bind(this),
    needTransform: false,
    transforming: false,
    writecb: null,
    writechunk: null,
    writeencoding: null
  };

  // start out asking for a readable event once data is transformed.
  this._readableState.needReadable = true;

  // we have implemented the _read method, and done the other things
  // that Readable wants before the first _read call, so unset the
  // sync guard flag.
  this._readableState.sync = false;

  if (options) {
    if (typeof options.transform === 'function') this._transform = options.transform;

    if (typeof options.flush === 'function') this._flush = options.flush;
  }

  // When the writable side finishes, then flush out anything remaining.
  this.on('prefinish', prefinish);
}

function prefinish() {
  var _this = this;

  if (typeof this._flush === 'function') {
    this._flush(function (er, data) {
      done(_this, er, data);
    });
  } else {
    done(this, null, null);
  }
}

Transform.prototype.push = function (chunk, encoding) {
  this._transformState.needTransform = false;
  return Duplex.prototype.push.call(this, chunk, encoding);
};

// This is the part where you do stuff!
// override this function in implementation classes.
// 'chunk' is an input chunk.
//
// Call `push(newChunk)` to pass along transformed output
// to the readable side.  You may call 'push' zero or more times.
//
// Call `cb(err)` when you are done with this chunk.  If you pass
// an error, then that'll put the hurt on the whole operation.  If you
// never call cb(), then you'll never get another chunk.
Transform.prototype._transform = function (chunk, encoding, cb) {
  throw new Error('_transform() is not implemented');
};

Transform.prototype._write = function (chunk, encoding, cb) {
  var ts = this._transformState;
  ts.writecb = cb;
  ts.writechunk = chunk;
  ts.writeencoding = encoding;
  if (!ts.transforming) {
    var rs = this._readableState;
    if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);
  }
};

// Doesn't matter what the args are here.
// _transform does all the work.
// That we got here means that the readable side wants more data.
Transform.prototype._read = function (n) {
  var ts = this._transformState;

  if (ts.writechunk !== null && ts.writecb && !ts.transforming) {
    ts.transforming = true;
    this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);
  } else {
    // mark that we need a transform, so that any data that comes in
    // will get processed, now that we've asked for it.
    ts.needTransform = true;
  }
};

Transform.prototype._destroy = function (err, cb) {
  var _this2 = this;

  Duplex.prototype._destroy.call(this, err, function (err2) {
    cb(err2);
    _this2.emit('close');
  });
};

function done(stream, er, data) {
  if (er) return stream.emit('error', er);

  if (data != null) // single equals check for both `null` and `undefined`
    stream.push(data);

  // if there's nothing in the write buffer, then that means
  // that nothing more will ever be provided
  if (stream._writableState.length) throw new Error('Calling transform done when ws.length != 0');

  if (stream._transformState.transforming) throw new Error('Calling transform done when still transforming');

  return stream.push(null);
}

/***/ }),

/***/ "285e":
/***/ (function(module, exports, __webpack_require__) {

var metaMap = __webpack_require__("6b9a"),
    noop = __webpack_require__("bcdf");

/**
 * Gets metadata for `func`.
 *
 * @private
 * @param {Function} func The function to query.
 * @returns {*} Returns the metadata for `func`.
 */
var getData = !metaMap ? noop : function(func) {
  return metaMap.get(func);
};

module.exports = getData;


/***/ }),

/***/ "286c":
/***/ (function(module, exports, __webpack_require__) {

var isTag = __webpack_require__("af98").isTag;

module.exports = {
	filter: filter,
	find: find,
	findOneChild: findOneChild,
	findOne: findOne,
	existsOne: existsOne,
	findAll: findAll
};

function filter(test, element, recurse, limit){
	if(!Array.isArray(element)) element = [element];

	if(typeof limit !== "number" || !isFinite(limit)){
		limit = Infinity;
	}
	return find(test, element, recurse !== false, limit);
}

function find(test, elems, recurse, limit){
	var result = [], childs;

	for(var i = 0, j = elems.length; i < j; i++){
		if(test(elems[i])){
			result.push(elems[i]);
			if(--limit <= 0) break;
		}

		childs = elems[i].children;
		if(recurse && childs && childs.length > 0){
			childs = find(test, childs, recurse, limit);
			result = result.concat(childs);
			limit -= childs.length;
			if(limit <= 0) break;
		}
	}

	return result;
}

function findOneChild(test, elems){
	for(var i = 0, l = elems.length; i < l; i++){
		if(test(elems[i])) return elems[i];
	}

	return null;
}

function findOne(test, elems){
	var elem = null;

	for(var i = 0, l = elems.length; i < l && !elem; i++){
		if(!isTag(elems[i])){
			continue;
		} else if(test(elems[i])){
			elem = elems[i];
		} else if(elems[i].children.length > 0){
			elem = findOne(test, elems[i].children);
		}
	}

	return elem;
}

function existsOne(test, elems){
	for(var i = 0, l = elems.length; i < l; i++){
		if(
			isTag(elems[i]) && (
				test(elems[i]) || (
					elems[i].children.length > 0 &&
					existsOne(test, elems[i].children)
				)
			)
		){
			return true;
		}
	}

	return false;
}

function findAll(test, elems){
	var result = [];
	for(var i = 0, j = elems.length; i < j; i++){
		if(!isTag(elems[i])) continue;
		if(test(elems[i])) result.push(elems[i]);

		if(elems[i].children.length > 0){
			result = result.concat(findAll(test, elems[i].children));
		}
	}
	return result;
}


/***/ }),

/***/ "28a0":
/***/ (function(module, exports) {

if (typeof Object.create === 'function') {
  // implementation from standard node.js 'util' module
  module.exports = function inherits(ctor, superCtor) {
    ctor.super_ = superCtor
    ctor.prototype = Object.create(superCtor.prototype, {
      constructor: {
        value: ctor,
        enumerable: false,
        writable: true,
        configurable: true
      }
    });
  };
} else {
  // old school shim for old browsers
  module.exports = function inherits(ctor, superCtor) {
    ctor.super_ = superCtor
    var TempCtor = function () {}
    TempCtor.prototype = superCtor.prototype
    ctor.prototype = new TempCtor()
    ctor.prototype.constructor = ctor
  }
}


/***/ }),

/***/ "28c9":
/***/ (function(module, exports) {

/**
 * Removes all key-value entries from the list cache.
 *
 * @private
 * @name clear
 * @memberOf ListCache
 */
function listCacheClear() {
  this.__data__ = [];
  this.size = 0;
}

module.exports = listCacheClear;


/***/ }),

/***/ "29f3":
/***/ (function(module, exports) {

/** Used for built-in method references. */
var objectProto = Object.prototype;

/**
 * Used to resolve the
 * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
 * of values.
 */
var nativeObjectToString = objectProto.toString;

/**
 * Converts `value` to a string using `Object.prototype.toString`.
 *
 * @private
 * @param {*} value The value to convert.
 * @returns {string} Returns the converted string.
 */
function objectToString(value) {
  return nativeObjectToString.call(value);
}

module.exports = objectToString;


/***/ }),

/***/ "29fb":
/***/ (function(module, exports, __webpack_require__) {

var LazyWrapper = __webpack_require__("6286"),
    LodashWrapper = __webpack_require__("e9a7"),
    baseLodash = __webpack_require__("46b4"),
    isArray = __webpack_require__("6747"),
    isObjectLike = __webpack_require__("1310"),
    wrapperClone = __webpack_require__("c452");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Creates a `lodash` object which wraps `value` to enable implicit method
 * chain sequences. Methods that operate on and return arrays, collections,
 * and functions can be chained together. Methods that retrieve a single value
 * or may return a primitive value will automatically end the chain sequence
 * and return the unwrapped value. Otherwise, the value must be unwrapped
 * with `_#value`.
 *
 * Explicit chain sequences, which must be unwrapped with `_#value`, may be
 * enabled using `_.chain`.
 *
 * The execution of chained methods is lazy, that is, it's deferred until
 * `_#value` is implicitly or explicitly called.
 *
 * Lazy evaluation allows several methods to support shortcut fusion.
 * Shortcut fusion is an optimization to merge iteratee calls; this avoids
 * the creation of intermediate arrays and can greatly reduce the number of
 * iteratee executions. Sections of a chain sequence qualify for shortcut
 * fusion if the section is applied to an array and iteratees accept only
 * one argument. The heuristic for whether a section qualifies for shortcut
 * fusion is subject to change.
 *
 * Chaining is supported in custom builds as long as the `_#value` method is
 * directly or indirectly included in the build.
 *
 * In addition to lodash methods, wrappers have `Array` and `String` methods.
 *
 * The wrapper `Array` methods are:
 * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift`
 *
 * The wrapper `String` methods are:
 * `replace` and `split`
 *
 * The wrapper methods that support shortcut fusion are:
 * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`,
 * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`,
 * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray`
 *
 * The chainable wrapper methods are:
 * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`,
 * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`,
 * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`,
 * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`,
 * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`,
 * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`,
 * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`,
 * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`,
 * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`,
 * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`,
 * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`,
 * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`,
 * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`,
 * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`,
 * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`,
 * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`,
 * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`,
 * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`,
 * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`,
 * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`,
 * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`,
 * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`,
 * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`,
 * `zipObject`, `zipObjectDeep`, and `zipWith`
 *
 * The wrapper methods that are **not** chainable by default are:
 * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`,
 * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`,
 * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`,
 * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`,
 * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`,
 * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`,
 * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`,
 * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`,
 * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`,
 * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`,
 * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`,
 * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`,
 * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`,
 * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`,
 * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`,
 * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`,
 * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`,
 * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`,
 * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`,
 * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`,
 * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`,
 * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`,
 * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`,
 * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`,
 * `upperFirst`, `value`, and `words`
 *
 * @name _
 * @constructor
 * @category Seq
 * @param {*} value The value to wrap in a `lodash` instance.
 * @returns {Object} Returns the new `lodash` wrapper instance.
 * @example
 *
 * function square(n) {
 *   return n * n;
 * }
 *
 * var wrapped = _([1, 2, 3]);
 *
 * // Returns an unwrapped value.
 * wrapped.reduce(_.add);
 * // => 6
 *
 * // Returns a wrapped value.
 * var squares = wrapped.map(square);
 *
 * _.isArray(squares);
 * // => false
 *
 * _.isArray(squares.value());
 * // => true
 */
function lodash(value) {
  if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {
    if (value instanceof LodashWrapper) {
      return value;
    }
    if (hasOwnProperty.call(value, '__wrapped__')) {
      return wrapperClone(value);
    }
  }
  return new LodashWrapper(value);
}

// Ensure wrappers are instances of `baseLodash`.
lodash.prototype = baseLodash.prototype;
lodash.prototype.constructor = lodash;

module.exports = lodash;


/***/ }),

/***/ "2b03":
/***/ (function(module, exports) {

/**
 * The base implementation of `_.findIndex` and `_.findLastIndex` without
 * support for iteratee shorthands.
 *
 * @private
 * @param {Array} array The array to inspect.
 * @param {Function} predicate The function invoked per iteration.
 * @param {number} fromIndex The index to search from.
 * @param {boolean} [fromRight] Specify iterating from right to left.
 * @returns {number} Returns the index of the matched value, else `-1`.
 */
function baseFindIndex(array, predicate, fromIndex, fromRight) {
  var length = array.length,
      index = fromIndex + (fromRight ? 1 : -1);

  while ((fromRight ? index-- : ++index < length)) {
    if (predicate(array[index], index, array)) {
      return index;
    }
  }
  return -1;
}

module.exports = baseFindIndex;


/***/ }),

/***/ "2b0e":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* WEBPACK VAR INJECTION */(function(global) {/*!
 * Vue.js v2.6.14
 * (c) 2014-2021 Evan You
 * Released under the MIT License.
 */
/*  */

var emptyObject = Object.freeze({});

// These helpers produce better VM code in JS engines due to their
// explicitness and function inlining.
function isUndef (v) {
  return v === undefined || v === null
}

function isDef (v) {
  return v !== undefined && v !== null
}

function isTrue (v) {
  return v === true
}

function isFalse (v) {
  return v === false
}

/**
 * Check if value is primitive.
 */
function isPrimitive (value) {
  return (
    typeof value === 'string' ||
    typeof value === 'number' ||
    // $flow-disable-line
    typeof value === 'symbol' ||
    typeof value === 'boolean'
  )
}

/**
 * Quick object check - this is primarily used to tell
 * Objects from primitive values when we know the value
 * is a JSON-compliant type.
 */
function isObject (obj) {
  return obj !== null && typeof obj === 'object'
}

/**
 * Get the raw type string of a value, e.g., [object Object].
 */
var _toString = Object.prototype.toString;

function toRawType (value) {
  return _toString.call(value).slice(8, -1)
}

/**
 * Strict object type check. Only returns true
 * for plain JavaScript objects.
 */
function isPlainObject (obj) {
  return _toString.call(obj) === '[object Object]'
}

function isRegExp (v) {
  return _toString.call(v) === '[object RegExp]'
}

/**
 * Check if val is a valid array index.
 */
function isValidArrayIndex (val) {
  var n = parseFloat(String(val));
  return n >= 0 && Math.floor(n) === n && isFinite(val)
}

function isPromise (val) {
  return (
    isDef(val) &&
    typeof val.then === 'function' &&
    typeof val.catch === 'function'
  )
}

/**
 * Convert a value to a string that is actually rendered.
 */
function toString (val) {
  return val == null
    ? ''
    : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)
      ? JSON.stringify(val, null, 2)
      : String(val)
}

/**
 * Convert an input value to a number for persistence.
 * If the conversion fails, return original string.
 */
function toNumber (val) {
  var n = parseFloat(val);
  return isNaN(n) ? val : n
}

/**
 * Make a map and return a function for checking if a key
 * is in that map.
 */
function makeMap (
  str,
  expectsLowerCase
) {
  var map = Object.create(null);
  var list = str.split(',');
  for (var i = 0; i < list.length; i++) {
    map[list[i]] = true;
  }
  return expectsLowerCase
    ? function (val) { return map[val.toLowerCase()]; }
    : function (val) { return map[val]; }
}

/**
 * Check if a tag is a built-in tag.
 */
var isBuiltInTag = makeMap('slot,component', true);

/**
 * Check if an attribute is a reserved attribute.
 */
var isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');

/**
 * Remove an item from an array.
 */
function remove (arr, item) {
  if (arr.length) {
    var index = arr.indexOf(item);
    if (index > -1) {
      return arr.splice(index, 1)
    }
  }
}

/**
 * Check whether an object has the property.
 */
var hasOwnProperty = Object.prototype.hasOwnProperty;
function hasOwn (obj, key) {
  return hasOwnProperty.call(obj, key)
}

/**
 * Create a cached version of a pure function.
 */
function cached (fn) {
  var cache = Object.create(null);
  return (function cachedFn (str) {
    var hit = cache[str];
    return hit || (cache[str] = fn(str))
  })
}

/**
 * Camelize a hyphen-delimited string.
 */
var camelizeRE = /-(\w)/g;
var camelize = cached(function (str) {
  return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })
});

/**
 * Capitalize a string.
 */
var capitalize = cached(function (str) {
  return str.charAt(0).toUpperCase() + str.slice(1)
});

/**
 * Hyphenate a camelCase string.
 */
var hyphenateRE = /\B([A-Z])/g;
var hyphenate = cached(function (str) {
  return str.replace(hyphenateRE, '-$1').toLowerCase()
});

/**
 * Simple bind polyfill for environments that do not support it,
 * e.g., PhantomJS 1.x. Technically, we don't need this anymore
 * since native bind is now performant enough in most browsers.
 * But removing it would mean breaking code that was able to run in
 * PhantomJS 1.x, so this must be kept for backward compatibility.
 */

/* istanbul ignore next */
function polyfillBind (fn, ctx) {
  function boundFn (a) {
    var l = arguments.length;
    return l
      ? l > 1
        ? fn.apply(ctx, arguments)
        : fn.call(ctx, a)
      : fn.call(ctx)
  }

  boundFn._length = fn.length;
  return boundFn
}

function nativeBind (fn, ctx) {
  return fn.bind(ctx)
}

var bind = Function.prototype.bind
  ? nativeBind
  : polyfillBind;

/**
 * Convert an Array-like object to a real Array.
 */
function toArray (list, start) {
  start = start || 0;
  var i = list.length - start;
  var ret = new Array(i);
  while (i--) {
    ret[i] = list[i + start];
  }
  return ret
}

/**
 * Mix properties into target object.
 */
function extend (to, _from) {
  for (var key in _from) {
    to[key] = _from[key];
  }
  return to
}

/**
 * Merge an Array of Objects into a single Object.
 */
function toObject (arr) {
  var res = {};
  for (var i = 0; i < arr.length; i++) {
    if (arr[i]) {
      extend(res, arr[i]);
    }
  }
  return res
}

/* eslint-disable no-unused-vars */

/**
 * Perform no operation.
 * Stubbing args to make Flow happy without leaving useless transpiled code
 * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).
 */
function noop (a, b, c) {}

/**
 * Always return false.
 */
var no = function (a, b, c) { return false; };

/* eslint-enable no-unused-vars */

/**
 * Return the same value.
 */
var identity = function (_) { return _; };

/**
 * Check if two values are loosely equal - that is,
 * if they are plain objects, do they have the same shape?
 */
function looseEqual (a, b) {
  if (a === b) { return true }
  var isObjectA = isObject(a);
  var isObjectB = isObject(b);
  if (isObjectA && isObjectB) {
    try {
      var isArrayA = Array.isArray(a);
      var isArrayB = Array.isArray(b);
      if (isArrayA && isArrayB) {
        return a.length === b.length && a.every(function (e, i) {
          return looseEqual(e, b[i])
        })
      } else if (a instanceof Date && b instanceof Date) {
        return a.getTime() === b.getTime()
      } else if (!isArrayA && !isArrayB) {
        var keysA = Object.keys(a);
        var keysB = Object.keys(b);
        return keysA.length === keysB.length && keysA.every(function (key) {
          return looseEqual(a[key], b[key])
        })
      } else {
        /* istanbul ignore next */
        return false
      }
    } catch (e) {
      /* istanbul ignore next */
      return false
    }
  } else if (!isObjectA && !isObjectB) {
    return String(a) === String(b)
  } else {
    return false
  }
}

/**
 * Return the first index at which a loosely equal value can be
 * found in the array (if value is a plain object, the array must
 * contain an object of the same shape), or -1 if it is not present.
 */
function looseIndexOf (arr, val) {
  for (var i = 0; i < arr.length; i++) {
    if (looseEqual(arr[i], val)) { return i }
  }
  return -1
}

/**
 * Ensure a function is called only once.
 */
function once (fn) {
  var called = false;
  return function () {
    if (!called) {
      called = true;
      fn.apply(this, arguments);
    }
  }
}

var SSR_ATTR = 'data-server-rendered';

var ASSET_TYPES = [
  'component',
  'directive',
  'filter'
];

var LIFECYCLE_HOOKS = [
  'beforeCreate',
  'created',
  'beforeMount',
  'mounted',
  'beforeUpdate',
  'updated',
  'beforeDestroy',
  'destroyed',
  'activated',
  'deactivated',
  'errorCaptured',
  'serverPrefetch'
];

/*  */



var config = ({
  /**
   * Option merge strategies (used in core/util/options)
   */
  // $flow-disable-line
  optionMergeStrategies: Object.create(null),

  /**
   * Whether to suppress warnings.
   */
  silent: false,

  /**
   * Show production mode tip message on boot?
   */
  productionTip: "production" !== 'production',

  /**
   * Whether to enable devtools
   */
  devtools: "production" !== 'production',

  /**
   * Whether to record perf
   */
  performance: false,

  /**
   * Error handler for watcher errors
   */
  errorHandler: null,

  /**
   * Warn handler for watcher warns
   */
  warnHandler: null,

  /**
   * Ignore certain custom elements
   */
  ignoredElements: [],

  /**
   * Custom user key aliases for v-on
   */
  // $flow-disable-line
  keyCodes: Object.create(null),

  /**
   * Check if a tag is reserved so that it cannot be registered as a
   * component. This is platform-dependent and may be overwritten.
   */
  isReservedTag: no,

  /**
   * Check if an attribute is reserved so that it cannot be used as a component
   * prop. This is platform-dependent and may be overwritten.
   */
  isReservedAttr: no,

  /**
   * Check if a tag is an unknown element.
   * Platform-dependent.
   */
  isUnknownElement: no,

  /**
   * Get the namespace of an element
   */
  getTagNamespace: noop,

  /**
   * Parse the real tag name for the specific platform.
   */
  parsePlatformTagName: identity,

  /**
   * Check if an attribute must be bound using property, e.g. value
   * Platform-dependent.
   */
  mustUseProp: no,

  /**
   * Perform updates asynchronously. Intended to be used by Vue Test Utils
   * This will significantly reduce performance if set to false.
   */
  async: true,

  /**
   * Exposed for legacy reasons
   */
  _lifecycleHooks: LIFECYCLE_HOOKS
});

/*  */

/**
 * unicode letters used for parsing html tags, component names and property paths.
 * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname
 * skipping \u10000-\uEFFFF due to it freezing up PhantomJS
 */
var unicodeRegExp = /a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;

/**
 * Check if a string starts with $ or _
 */
function isReserved (str) {
  var c = (str + '').charCodeAt(0);
  return c === 0x24 || c === 0x5F
}

/**
 * Define a property.
 */
function def (obj, key, val, enumerable) {
  Object.defineProperty(obj, key, {
    value: val,
    enumerable: !!enumerable,
    writable: true,
    configurable: true
  });
}

/**
 * Parse simple path.
 */
var bailRE = new RegExp(("[^" + (unicodeRegExp.source) + ".$_\\d]"));
function parsePath (path) {
  if (bailRE.test(path)) {
    return
  }
  var segments = path.split('.');
  return function (obj) {
    for (var i = 0; i < segments.length; i++) {
      if (!obj) { return }
      obj = obj[segments[i]];
    }
    return obj
  }
}

/*  */

// can we use __proto__?
var hasProto = '__proto__' in {};

// Browser environment sniffing
var inBrowser = typeof window !== 'undefined';
var inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;
var weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();
var UA = inBrowser && window.navigator.userAgent.toLowerCase();
var isIE = UA && /msie|trident/.test(UA);
var isIE9 = UA && UA.indexOf('msie 9.0') > 0;
var isEdge = UA && UA.indexOf('edge/') > 0;
var isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');
var isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');
var isChrome = UA && /chrome\/\d+/.test(UA) && !isEdge;
var isPhantomJS = UA && /phantomjs/.test(UA);
var isFF = UA && UA.match(/firefox\/(\d+)/);

// Firefox has a "watch" function on Object.prototype...
var nativeWatch = ({}).watch;

var supportsPassive = false;
if (inBrowser) {
  try {
    var opts = {};
    Object.defineProperty(opts, 'passive', ({
      get: function get () {
        /* istanbul ignore next */
        supportsPassive = true;
      }
    })); // https://github.com/facebook/flow/issues/285
    window.addEventListener('test-passive', null, opts);
  } catch (e) {}
}

// this needs to be lazy-evaled because vue may be required before
// vue-server-renderer can set VUE_ENV
var _isServer;
var isServerRendering = function () {
  if (_isServer === undefined) {
    /* istanbul ignore if */
    if (!inBrowser && !inWeex && typeof global !== 'undefined') {
      // detect presence of vue-server-renderer and avoid
      // Webpack shimming the process
      _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';
    } else {
      _isServer = false;
    }
  }
  return _isServer
};

// detect devtools
var devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;

/* istanbul ignore next */
function isNative (Ctor) {
  return typeof Ctor === 'function' && /native code/.test(Ctor.toString())
}

var hasSymbol =
  typeof Symbol !== 'undefined' && isNative(Symbol) &&
  typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);

var _Set;
/* istanbul ignore if */ // $flow-disable-line
if (typeof Set !== 'undefined' && isNative(Set)) {
  // use native Set when available.
  _Set = Set;
} else {
  // a non-standard Set polyfill that only works with primitive keys.
  _Set = /*@__PURE__*/(function () {
    function Set () {
      this.set = Object.create(null);
    }
    Set.prototype.has = function has (key) {
      return this.set[key] === true
    };
    Set.prototype.add = function add (key) {
      this.set[key] = true;
    };
    Set.prototype.clear = function clear () {
      this.set = Object.create(null);
    };

    return Set;
  }());
}

/*  */

var warn = noop;
var tip = noop;
var generateComponentTrace = (noop); // work around flow check
var formatComponentName = (noop);

if (false) { var repeat, classify, classifyRE, hasConsole; }

/*  */

var uid = 0;

/**
 * A dep is an observable that can have multiple
 * directives subscribing to it.
 */
var Dep = function Dep () {
  this.id = uid++;
  this.subs = [];
};

Dep.prototype.addSub = function addSub (sub) {
  this.subs.push(sub);
};

Dep.prototype.removeSub = function removeSub (sub) {
  remove(this.subs, sub);
};

Dep.prototype.depend = function depend () {
  if (Dep.target) {
    Dep.target.addDep(this);
  }
};

Dep.prototype.notify = function notify () {
  // stabilize the subscriber list first
  var subs = this.subs.slice();
  if (false) {}
  for (var i = 0, l = subs.length; i < l; i++) {
    subs[i].update();
  }
};

// The current target watcher being evaluated.
// This is globally unique because only one watcher
// can be evaluated at a time.
Dep.target = null;
var targetStack = [];

function pushTarget (target) {
  targetStack.push(target);
  Dep.target = target;
}

function popTarget () {
  targetStack.pop();
  Dep.target = targetStack[targetStack.length - 1];
}

/*  */

var VNode = function VNode (
  tag,
  data,
  children,
  text,
  elm,
  context,
  componentOptions,
  asyncFactory
) {
  this.tag = tag;
  this.data = data;
  this.children = children;
  this.text = text;
  this.elm = elm;
  this.ns = undefined;
  this.context = context;
  this.fnContext = undefined;
  this.fnOptions = undefined;
  this.fnScopeId = undefined;
  this.key = data && data.key;
  this.componentOptions = componentOptions;
  this.componentInstance = undefined;
  this.parent = undefined;
  this.raw = false;
  this.isStatic = false;
  this.isRootInsert = true;
  this.isComment = false;
  this.isCloned = false;
  this.isOnce = false;
  this.asyncFactory = asyncFactory;
  this.asyncMeta = undefined;
  this.isAsyncPlaceholder = false;
};

var prototypeAccessors = { child: { configurable: true } };

// DEPRECATED: alias for componentInstance for backwards compat.
/* istanbul ignore next */
prototypeAccessors.child.get = function () {
  return this.componentInstance
};

Object.defineProperties( VNode.prototype, prototypeAccessors );

var createEmptyVNode = function (text) {
  if ( text === void 0 ) text = '';

  var node = new VNode();
  node.text = text;
  node.isComment = true;
  return node
};

function createTextVNode (val) {
  return new VNode(undefined, undefined, undefined, String(val))
}

// optimized shallow clone
// used for static nodes and slot nodes because they may be reused across
// multiple renders, cloning them avoids errors when DOM manipulations rely
// on their elm reference.
function cloneVNode (vnode) {
  var cloned = new VNode(
    vnode.tag,
    vnode.data,
    // #7975
    // clone children array to avoid mutating original in case of cloning
    // a child.
    vnode.children && vnode.children.slice(),
    vnode.text,
    vnode.elm,
    vnode.context,
    vnode.componentOptions,
    vnode.asyncFactory
  );
  cloned.ns = vnode.ns;
  cloned.isStatic = vnode.isStatic;
  cloned.key = vnode.key;
  cloned.isComment = vnode.isComment;
  cloned.fnContext = vnode.fnContext;
  cloned.fnOptions = vnode.fnOptions;
  cloned.fnScopeId = vnode.fnScopeId;
  cloned.asyncMeta = vnode.asyncMeta;
  cloned.isCloned = true;
  return cloned
}

/*
 * not type checking this file because flow doesn't play well with
 * dynamically accessing methods on Array prototype
 */

var arrayProto = Array.prototype;
var arrayMethods = Object.create(arrayProto);

var methodsToPatch = [
  'push',
  'pop',
  'shift',
  'unshift',
  'splice',
  'sort',
  'reverse'
];

/**
 * Intercept mutating methods and emit events
 */
methodsToPatch.forEach(function (method) {
  // cache original method
  var original = arrayProto[method];
  def(arrayMethods, method, function mutator () {
    var args = [], len = arguments.length;
    while ( len-- ) args[ len ] = arguments[ len ];

    var result = original.apply(this, args);
    var ob = this.__ob__;
    var inserted;
    switch (method) {
      case 'push':
      case 'unshift':
        inserted = args;
        break
      case 'splice':
        inserted = args.slice(2);
        break
    }
    if (inserted) { ob.observeArray(inserted); }
    // notify change
    ob.dep.notify();
    return result
  });
});

/*  */

var arrayKeys = Object.getOwnPropertyNames(arrayMethods);

/**
 * In some cases we may want to disable observation inside a component's
 * update computation.
 */
var shouldObserve = true;

function toggleObserving (value) {
  shouldObserve = value;
}

/**
 * Observer class that is attached to each observed
 * object. Once attached, the observer converts the target
 * object's property keys into getter/setters that
 * collect dependencies and dispatch updates.
 */
var Observer = function Observer (value) {
  this.value = value;
  this.dep = new Dep();
  this.vmCount = 0;
  def(value, '__ob__', this);
  if (Array.isArray(value)) {
    if (hasProto) {
      protoAugment(value, arrayMethods);
    } else {
      copyAugment(value, arrayMethods, arrayKeys);
    }
    this.observeArray(value);
  } else {
    this.walk(value);
  }
};

/**
 * Walk through all properties and convert them into
 * getter/setters. This method should only be called when
 * value type is Object.
 */
Observer.prototype.walk = function walk (obj) {
  var keys = Object.keys(obj);
  for (var i = 0; i < keys.length; i++) {
    defineReactive$$1(obj, keys[i]);
  }
};

/**
 * Observe a list of Array items.
 */
Observer.prototype.observeArray = function observeArray (items) {
  for (var i = 0, l = items.length; i < l; i++) {
    observe(items[i]);
  }
};

// helpers

/**
 * Augment a target Object or Array by intercepting
 * the prototype chain using __proto__
 */
function protoAugment (target, src) {
  /* eslint-disable no-proto */
  target.__proto__ = src;
  /* eslint-enable no-proto */
}

/**
 * Augment a target Object or Array by defining
 * hidden properties.
 */
/* istanbul ignore next */
function copyAugment (target, src, keys) {
  for (var i = 0, l = keys.length; i < l; i++) {
    var key = keys[i];
    def(target, key, src[key]);
  }
}

/**
 * Attempt to create an observer instance for a value,
 * returns the new observer if successfully observed,
 * or the existing observer if the value already has one.
 */
function observe (value, asRootData) {
  if (!isObject(value) || value instanceof VNode) {
    return
  }
  var ob;
  if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {
    ob = value.__ob__;
  } else if (
    shouldObserve &&
    !isServerRendering() &&
    (Array.isArray(value) || isPlainObject(value)) &&
    Object.isExtensible(value) &&
    !value._isVue
  ) {
    ob = new Observer(value);
  }
  if (asRootData && ob) {
    ob.vmCount++;
  }
  return ob
}

/**
 * Define a reactive property on an Object.
 */
function defineReactive$$1 (
  obj,
  key,
  val,
  customSetter,
  shallow
) {
  var dep = new Dep();

  var property = Object.getOwnPropertyDescriptor(obj, key);
  if (property && property.configurable === false) {
    return
  }

  // cater for pre-defined getter/setters
  var getter = property && property.get;
  var setter = property && property.set;
  if ((!getter || setter) && arguments.length === 2) {
    val = obj[key];
  }

  var childOb = !shallow && observe(val);
  Object.defineProperty(obj, key, {
    enumerable: true,
    configurable: true,
    get: function reactiveGetter () {
      var value = getter ? getter.call(obj) : val;
      if (Dep.target) {
        dep.depend();
        if (childOb) {
          childOb.dep.depend();
          if (Array.isArray(value)) {
            dependArray(value);
          }
        }
      }
      return value
    },
    set: function reactiveSetter (newVal) {
      var value = getter ? getter.call(obj) : val;
      /* eslint-disable no-self-compare */
      if (newVal === value || (newVal !== newVal && value !== value)) {
        return
      }
      /* eslint-enable no-self-compare */
      if (false) {}
      // #7981: for accessor properties without setter
      if (getter && !setter) { return }
      if (setter) {
        setter.call(obj, newVal);
      } else {
        val = newVal;
      }
      childOb = !shallow && observe(newVal);
      dep.notify();
    }
  });
}

/**
 * Set a property on an object. Adds the new property and
 * triggers change notification if the property doesn't
 * already exist.
 */
function set (target, key, val) {
  if (false
  ) {}
  if (Array.isArray(target) && isValidArrayIndex(key)) {
    target.length = Math.max(target.length, key);
    target.splice(key, 1, val);
    return val
  }
  if (key in target && !(key in Object.prototype)) {
    target[key] = val;
    return val
  }
  var ob = (target).__ob__;
  if (target._isVue || (ob && ob.vmCount)) {
     false && false;
    return val
  }
  if (!ob) {
    target[key] = val;
    return val
  }
  defineReactive$$1(ob.value, key, val);
  ob.dep.notify();
  return val
}

/**
 * Delete a property and trigger change if necessary.
 */
function del (target, key) {
  if (false
  ) {}
  if (Array.isArray(target) && isValidArrayIndex(key)) {
    target.splice(key, 1);
    return
  }
  var ob = (target).__ob__;
  if (target._isVue || (ob && ob.vmCount)) {
     false && false;
    return
  }
  if (!hasOwn(target, key)) {
    return
  }
  delete target[key];
  if (!ob) {
    return
  }
  ob.dep.notify();
}

/**
 * Collect dependencies on array elements when the array is touched, since
 * we cannot intercept array element access like property getters.
 */
function dependArray (value) {
  for (var e = (void 0), i = 0, l = value.length; i < l; i++) {
    e = value[i];
    e && e.__ob__ && e.__ob__.dep.depend();
    if (Array.isArray(e)) {
      dependArray(e);
    }
  }
}

/*  */

/**
 * Option overwriting strategies are functions that handle
 * how to merge a parent option value and a child option
 * value into the final value.
 */
var strats = config.optionMergeStrategies;

/**
 * Options with restrictions
 */
if (false) {}

/**
 * Helper that recursively merges two data objects together.
 */
function mergeData (to, from) {
  if (!from) { return to }
  var key, toVal, fromVal;

  var keys = hasSymbol
    ? Reflect.ownKeys(from)
    : Object.keys(from);

  for (var i = 0; i < keys.length; i++) {
    key = keys[i];
    // in case the object is already observed...
    if (key === '__ob__') { continue }
    toVal = to[key];
    fromVal = from[key];
    if (!hasOwn(to, key)) {
      set(to, key, fromVal);
    } else if (
      toVal !== fromVal &&
      isPlainObject(toVal) &&
      isPlainObject(fromVal)
    ) {
      mergeData(toVal, fromVal);
    }
  }
  return to
}

/**
 * Data
 */
function mergeDataOrFn (
  parentVal,
  childVal,
  vm
) {
  if (!vm) {
    // in a Vue.extend merge, both should be functions
    if (!childVal) {
      return parentVal
    }
    if (!parentVal) {
      return childVal
    }
    // when parentVal & childVal are both present,
    // we need to return a function that returns the
    // merged result of both functions... no need to
    // check if parentVal is a function here because
    // it has to be a function to pass previous merges.
    return function mergedDataFn () {
      return mergeData(
        typeof childVal === 'function' ? childVal.call(this, this) : childVal,
        typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal
      )
    }
  } else {
    return function mergedInstanceDataFn () {
      // instance merge
      var instanceData = typeof childVal === 'function'
        ? childVal.call(vm, vm)
        : childVal;
      var defaultData = typeof parentVal === 'function'
        ? parentVal.call(vm, vm)
        : parentVal;
      if (instanceData) {
        return mergeData(instanceData, defaultData)
      } else {
        return defaultData
      }
    }
  }
}

strats.data = function (
  parentVal,
  childVal,
  vm
) {
  if (!vm) {
    if (childVal && typeof childVal !== 'function') {
       false && false;

      return parentVal
    }
    return mergeDataOrFn(parentVal, childVal)
  }

  return mergeDataOrFn(parentVal, childVal, vm)
};

/**
 * Hooks and props are merged as arrays.
 */
function mergeHook (
  parentVal,
  childVal
) {
  var res = childVal
    ? parentVal
      ? parentVal.concat(childVal)
      : Array.isArray(childVal)
        ? childVal
        : [childVal]
    : parentVal;
  return res
    ? dedupeHooks(res)
    : res
}

function dedupeHooks (hooks) {
  var res = [];
  for (var i = 0; i < hooks.length; i++) {
    if (res.indexOf(hooks[i]) === -1) {
      res.push(hooks[i]);
    }
  }
  return res
}

LIFECYCLE_HOOKS.forEach(function (hook) {
  strats[hook] = mergeHook;
});

/**
 * Assets
 *
 * When a vm is present (instance creation), we need to do
 * a three-way merge between constructor options, instance
 * options and parent options.
 */
function mergeAssets (
  parentVal,
  childVal,
  vm,
  key
) {
  var res = Object.create(parentVal || null);
  if (childVal) {
     false && false;
    return extend(res, childVal)
  } else {
    return res
  }
}

ASSET_TYPES.forEach(function (type) {
  strats[type + 's'] = mergeAssets;
});

/**
 * Watchers.
 *
 * Watchers hashes should not overwrite one
 * another, so we merge them as arrays.
 */
strats.watch = function (
  parentVal,
  childVal,
  vm,
  key
) {
  // work around Firefox's Object.prototype.watch...
  if (parentVal === nativeWatch) { parentVal = undefined; }
  if (childVal === nativeWatch) { childVal = undefined; }
  /* istanbul ignore if */
  if (!childVal) { return Object.create(parentVal || null) }
  if (false) {}
  if (!parentVal) { return childVal }
  var ret = {};
  extend(ret, parentVal);
  for (var key$1 in childVal) {
    var parent = ret[key$1];
    var child = childVal[key$1];
    if (parent && !Array.isArray(parent)) {
      parent = [parent];
    }
    ret[key$1] = parent
      ? parent.concat(child)
      : Array.isArray(child) ? child : [child];
  }
  return ret
};

/**
 * Other object hashes.
 */
strats.props =
strats.methods =
strats.inject =
strats.computed = function (
  parentVal,
  childVal,
  vm,
  key
) {
  if (childVal && "production" !== 'production') {
    assertObjectType(key, childVal, vm);
  }
  if (!parentVal) { return childVal }
  var ret = Object.create(null);
  extend(ret, parentVal);
  if (childVal) { extend(ret, childVal); }
  return ret
};
strats.provide = mergeDataOrFn;

/**
 * Default strategy.
 */
var defaultStrat = function (parentVal, childVal) {
  return childVal === undefined
    ? parentVal
    : childVal
};

/**
 * Validate component names
 */
function checkComponents (options) {
  for (var key in options.components) {
    validateComponentName(key);
  }
}

function validateComponentName (name) {
  if (!new RegExp(("^[a-zA-Z][\\-\\.0-9_" + (unicodeRegExp.source) + "]*$")).test(name)) {
    warn(
      'Invalid component name: "' + name + '". Component names ' +
      'should conform to valid custom element name in html5 specification.'
    );
  }
  if (isBuiltInTag(name) || config.isReservedTag(name)) {
    warn(
      'Do not use built-in or reserved HTML elements as component ' +
      'id: ' + name
    );
  }
}

/**
 * Ensure all props option syntax are normalized into the
 * Object-based format.
 */
function normalizeProps (options, vm) {
  var props = options.props;
  if (!props) { return }
  var res = {};
  var i, val, name;
  if (Array.isArray(props)) {
    i = props.length;
    while (i--) {
      val = props[i];
      if (typeof val === 'string') {
        name = camelize(val);
        res[name] = { type: null };
      } else if (false) {}
    }
  } else if (isPlainObject(props)) {
    for (var key in props) {
      val = props[key];
      name = camelize(key);
      res[name] = isPlainObject(val)
        ? val
        : { type: val };
    }
  } else if (false) {}
  options.props = res;
}

/**
 * Normalize all injections into Object-based format
 */
function normalizeInject (options, vm) {
  var inject = options.inject;
  if (!inject) { return }
  var normalized = options.inject = {};
  if (Array.isArray(inject)) {
    for (var i = 0; i < inject.length; i++) {
      normalized[inject[i]] = { from: inject[i] };
    }
  } else if (isPlainObject(inject)) {
    for (var key in inject) {
      var val = inject[key];
      normalized[key] = isPlainObject(val)
        ? extend({ from: key }, val)
        : { from: val };
    }
  } else if (false) {}
}

/**
 * Normalize raw function directives into object format.
 */
function normalizeDirectives (options) {
  var dirs = options.directives;
  if (dirs) {
    for (var key in dirs) {
      var def$$1 = dirs[key];
      if (typeof def$$1 === 'function') {
        dirs[key] = { bind: def$$1, update: def$$1 };
      }
    }
  }
}

function assertObjectType (name, value, vm) {
  if (!isPlainObject(value)) {
    warn(
      "Invalid value for option \"" + name + "\": expected an Object, " +
      "but got " + (toRawType(value)) + ".",
      vm
    );
  }
}

/**
 * Merge two option objects into a new one.
 * Core utility used in both instantiation and inheritance.
 */
function mergeOptions (
  parent,
  child,
  vm
) {
  if (false) {}

  if (typeof child === 'function') {
    child = child.options;
  }

  normalizeProps(child, vm);
  normalizeInject(child, vm);
  normalizeDirectives(child);

  // Apply extends and mixins on the child options,
  // but only if it is a raw options object that isn't
  // the result of another mergeOptions call.
  // Only merged options has the _base property.
  if (!child._base) {
    if (child.extends) {
      parent = mergeOptions(parent, child.extends, vm);
    }
    if (child.mixins) {
      for (var i = 0, l = child.mixins.length; i < l; i++) {
        parent = mergeOptions(parent, child.mixins[i], vm);
      }
    }
  }

  var options = {};
  var key;
  for (key in parent) {
    mergeField(key);
  }
  for (key in child) {
    if (!hasOwn(parent, key)) {
      mergeField(key);
    }
  }
  function mergeField (key) {
    var strat = strats[key] || defaultStrat;
    options[key] = strat(parent[key], child[key], vm, key);
  }
  return options
}

/**
 * Resolve an asset.
 * This function is used because child instances need access
 * to assets defined in its ancestor chain.
 */
function resolveAsset (
  options,
  type,
  id,
  warnMissing
) {
  /* istanbul ignore if */
  if (typeof id !== 'string') {
    return
  }
  var assets = options[type];
  // check local registration variations first
  if (hasOwn(assets, id)) { return assets[id] }
  var camelizedId = camelize(id);
  if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }
  var PascalCaseId = capitalize(camelizedId);
  if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }
  // fallback to prototype chain
  var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];
  if (false) {}
  return res
}

/*  */



function validateProp (
  key,
  propOptions,
  propsData,
  vm
) {
  var prop = propOptions[key];
  var absent = !hasOwn(propsData, key);
  var value = propsData[key];
  // boolean casting
  var booleanIndex = getTypeIndex(Boolean, prop.type);
  if (booleanIndex > -1) {
    if (absent && !hasOwn(prop, 'default')) {
      value = false;
    } else if (value === '' || value === hyphenate(key)) {
      // only cast empty string / same name to boolean if
      // boolean has higher priority
      var stringIndex = getTypeIndex(String, prop.type);
      if (stringIndex < 0 || booleanIndex < stringIndex) {
        value = true;
      }
    }
  }
  // check default value
  if (value === undefined) {
    value = getPropDefaultValue(vm, prop, key);
    // since the default value is a fresh copy,
    // make sure to observe it.
    var prevShouldObserve = shouldObserve;
    toggleObserving(true);
    observe(value);
    toggleObserving(prevShouldObserve);
  }
  if (
    false
  ) {}
  return value
}

/**
 * Get the default value of a prop.
 */
function getPropDefaultValue (vm, prop, key) {
  // no default, return undefined
  if (!hasOwn(prop, 'default')) {
    return undefined
  }
  var def = prop.default;
  // warn against non-factory defaults for Object & Array
  if (false) {}
  // the raw prop value was also undefined from previous render,
  // return previous default value to avoid unnecessary watcher trigger
  if (vm && vm.$options.propsData &&
    vm.$options.propsData[key] === undefined &&
    vm._props[key] !== undefined
  ) {
    return vm._props[key]
  }
  // call factory function for non-Function types
  // a value is Function if its prototype is function even across different execution context
  return typeof def === 'function' && getType(prop.type) !== 'Function'
    ? def.call(vm)
    : def
}

/**
 * Assert whether a prop is valid.
 */
function assertProp (
  prop,
  name,
  value,
  vm,
  absent
) {
  if (prop.required && absent) {
    warn(
      'Missing required prop: "' + name + '"',
      vm
    );
    return
  }
  if (value == null && !prop.required) {
    return
  }
  var type = prop.type;
  var valid = !type || type === true;
  var expectedTypes = [];
  if (type) {
    if (!Array.isArray(type)) {
      type = [type];
    }
    for (var i = 0; i < type.length && !valid; i++) {
      var assertedType = assertType(value, type[i], vm);
      expectedTypes.push(assertedType.expectedType || '');
      valid = assertedType.valid;
    }
  }

  var haveExpectedTypes = expectedTypes.some(function (t) { return t; });
  if (!valid && haveExpectedTypes) {
    warn(
      getInvalidTypeMessage(name, value, expectedTypes),
      vm
    );
    return
  }
  var validator = prop.validator;
  if (validator) {
    if (!validator(value)) {
      warn(
        'Invalid prop: custom validator check failed for prop "' + name + '".',
        vm
      );
    }
  }
}

var simpleCheckRE = /^(String|Number|Boolean|Function|Symbol|BigInt)$/;

function assertType (value, type, vm) {
  var valid;
  var expectedType = getType(type);
  if (simpleCheckRE.test(expectedType)) {
    var t = typeof value;
    valid = t === expectedType.toLowerCase();
    // for primitive wrapper objects
    if (!valid && t === 'object') {
      valid = value instanceof type;
    }
  } else if (expectedType === 'Object') {
    valid = isPlainObject(value);
  } else if (expectedType === 'Array') {
    valid = Array.isArray(value);
  } else {
    try {
      valid = value instanceof type;
    } catch (e) {
      warn('Invalid prop type: "' + String(type) + '" is not a constructor', vm);
      valid = false;
    }
  }
  return {
    valid: valid,
    expectedType: expectedType
  }
}

var functionTypeCheckRE = /^\s*function (\w+)/;

/**
 * Use function string name to check built-in types,
 * because a simple equality check will fail when running
 * across different vms / iframes.
 */
function getType (fn) {
  var match = fn && fn.toString().match(functionTypeCheckRE);
  return match ? match[1] : ''
}

function isSameType (a, b) {
  return getType(a) === getType(b)
}

function getTypeIndex (type, expectedTypes) {
  if (!Array.isArray(expectedTypes)) {
    return isSameType(expectedTypes, type) ? 0 : -1
  }
  for (var i = 0, len = expectedTypes.length; i < len; i++) {
    if (isSameType(expectedTypes[i], type)) {
      return i
    }
  }
  return -1
}

function getInvalidTypeMessage (name, value, expectedTypes) {
  var message = "Invalid prop: type check failed for prop \"" + name + "\"." +
    " Expected " + (expectedTypes.map(capitalize).join(', '));
  var expectedType = expectedTypes[0];
  var receivedType = toRawType(value);
  // check if we need to specify expected value
  if (
    expectedTypes.length === 1 &&
    isExplicable(expectedType) &&
    isExplicable(typeof value) &&
    !isBoolean(expectedType, receivedType)
  ) {
    message += " with value " + (styleValue(value, expectedType));
  }
  message += ", got " + receivedType + " ";
  // check if we need to specify received value
  if (isExplicable(receivedType)) {
    message += "with value " + (styleValue(value, receivedType)) + ".";
  }
  return message
}

function styleValue (value, type) {
  if (type === 'String') {
    return ("\"" + value + "\"")
  } else if (type === 'Number') {
    return ("" + (Number(value)))
  } else {
    return ("" + value)
  }
}

var EXPLICABLE_TYPES = ['string', 'number', 'boolean'];
function isExplicable (value) {
  return EXPLICABLE_TYPES.some(function (elem) { return value.toLowerCase() === elem; })
}

function isBoolean () {
  var args = [], len = arguments.length;
  while ( len-- ) args[ len ] = arguments[ len ];

  return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })
}

/*  */

function handleError (err, vm, info) {
  // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.
  // See: https://github.com/vuejs/vuex/issues/1505
  pushTarget();
  try {
    if (vm) {
      var cur = vm;
      while ((cur = cur.$parent)) {
        var hooks = cur.$options.errorCaptured;
        if (hooks) {
          for (var i = 0; i < hooks.length; i++) {
            try {
              var capture = hooks[i].call(cur, err, vm, info) === false;
              if (capture) { return }
            } catch (e) {
              globalHandleError(e, cur, 'errorCaptured hook');
            }
          }
        }
      }
    }
    globalHandleError(err, vm, info);
  } finally {
    popTarget();
  }
}

function invokeWithErrorHandling (
  handler,
  context,
  args,
  vm,
  info
) {
  var res;
  try {
    res = args ? handler.apply(context, args) : handler.call(context);
    if (res && !res._isVue && isPromise(res) && !res._handled) {
      res.catch(function (e) { return handleError(e, vm, info + " (Promise/async)"); });
      // issue #9511
      // avoid catch triggering multiple times when nested calls
      res._handled = true;
    }
  } catch (e) {
    handleError(e, vm, info);
  }
  return res
}

function globalHandleError (err, vm, info) {
  if (config.errorHandler) {
    try {
      return config.errorHandler.call(null, err, vm, info)
    } catch (e) {
      // if the user intentionally throws the original error in the handler,
      // do not log it twice
      if (e !== err) {
        logError(e, null, 'config.errorHandler');
      }
    }
  }
  logError(err, vm, info);
}

function logError (err, vm, info) {
  if (false) {}
  /* istanbul ignore else */
  if ((inBrowser || inWeex) && typeof console !== 'undefined') {
    console.error(err);
  } else {
    throw err
  }
}

/*  */

var isUsingMicroTask = false;

var callbacks = [];
var pending = false;

function flushCallbacks () {
  pending = false;
  var copies = callbacks.slice(0);
  callbacks.length = 0;
  for (var i = 0; i < copies.length; i++) {
    copies[i]();
  }
}

// Here we have async deferring wrappers using microtasks.
// In 2.5 we used (macro) tasks (in combination with microtasks).
// However, it has subtle problems when state is changed right before repaint
// (e.g. #6813, out-in transitions).
// Also, using (macro) tasks in event handler would cause some weird behaviors
// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).
// So we now use microtasks everywhere, again.
// A major drawback of this tradeoff is that there are some scenarios
// where microtasks have too high a priority and fire in between supposedly
// sequential events (e.g. #4521, #6690, which have workarounds)
// or even between bubbling of the same event (#6566).
var timerFunc;

// The nextTick behavior leverages the microtask queue, which can be accessed
// via either native Promise.then or MutationObserver.
// MutationObserver has wider support, however it is seriously bugged in
// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It
// completely stops working after triggering a few times... so, if native
// Promise is available, we will use it:
/* istanbul ignore next, $flow-disable-line */
if (typeof Promise !== 'undefined' && isNative(Promise)) {
  var p = Promise.resolve();
  timerFunc = function () {
    p.then(flushCallbacks);
    // In problematic UIWebViews, Promise.then doesn't completely break, but
    // it can get stuck in a weird state where callbacks are pushed into the
    // microtask queue but the queue isn't being flushed, until the browser
    // needs to do some other work, e.g. handle a timer. Therefore we can
    // "force" the microtask queue to be flushed by adding an empty timer.
    if (isIOS) { setTimeout(noop); }
  };
  isUsingMicroTask = true;
} else if (!isIE && typeof MutationObserver !== 'undefined' && (
  isNative(MutationObserver) ||
  // PhantomJS and iOS 7.x
  MutationObserver.toString() === '[object MutationObserverConstructor]'
)) {
  // Use MutationObserver where native Promise is not available,
  // e.g. PhantomJS, iOS7, Android 4.4
  // (#6466 MutationObserver is unreliable in IE11)
  var counter = 1;
  var observer = new MutationObserver(flushCallbacks);
  var textNode = document.createTextNode(String(counter));
  observer.observe(textNode, {
    characterData: true
  });
  timerFunc = function () {
    counter = (counter + 1) % 2;
    textNode.data = String(counter);
  };
  isUsingMicroTask = true;
} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {
  // Fallback to setImmediate.
  // Technically it leverages the (macro) task queue,
  // but it is still a better choice than setTimeout.
  timerFunc = function () {
    setImmediate(flushCallbacks);
  };
} else {
  // Fallback to setTimeout.
  timerFunc = function () {
    setTimeout(flushCallbacks, 0);
  };
}

function nextTick (cb, ctx) {
  var _resolve;
  callbacks.push(function () {
    if (cb) {
      try {
        cb.call(ctx);
      } catch (e) {
        handleError(e, ctx, 'nextTick');
      }
    } else if (_resolve) {
      _resolve(ctx);
    }
  });
  if (!pending) {
    pending = true;
    timerFunc();
  }
  // $flow-disable-line
  if (!cb && typeof Promise !== 'undefined') {
    return new Promise(function (resolve) {
      _resolve = resolve;
    })
  }
}

/*  */

/* not type checking this file because flow doesn't play well with Proxy */

var initProxy;

if (false) { var getHandler, hasHandler, isBuiltInModifier, hasProxy, warnReservedPrefix, warnNonPresent, allowedGlobals; }

/*  */

var seenObjects = new _Set();

/**
 * Recursively traverse an object to evoke all converted
 * getters, so that every nested property inside the object
 * is collected as a "deep" dependency.
 */
function traverse (val) {
  _traverse(val, seenObjects);
  seenObjects.clear();
}

function _traverse (val, seen) {
  var i, keys;
  var isA = Array.isArray(val);
  if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {
    return
  }
  if (val.__ob__) {
    var depId = val.__ob__.dep.id;
    if (seen.has(depId)) {
      return
    }
    seen.add(depId);
  }
  if (isA) {
    i = val.length;
    while (i--) { _traverse(val[i], seen); }
  } else {
    keys = Object.keys(val);
    i = keys.length;
    while (i--) { _traverse(val[keys[i]], seen); }
  }
}

var mark;
var measure;

if (false) { var perf; }

/*  */

var normalizeEvent = cached(function (name) {
  var passive = name.charAt(0) === '&';
  name = passive ? name.slice(1) : name;
  var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first
  name = once$$1 ? name.slice(1) : name;
  var capture = name.charAt(0) === '!';
  name = capture ? name.slice(1) : name;
  return {
    name: name,
    once: once$$1,
    capture: capture,
    passive: passive
  }
});

function createFnInvoker (fns, vm) {
  function invoker () {
    var arguments$1 = arguments;

    var fns = invoker.fns;
    if (Array.isArray(fns)) {
      var cloned = fns.slice();
      for (var i = 0; i < cloned.length; i++) {
        invokeWithErrorHandling(cloned[i], null, arguments$1, vm, "v-on handler");
      }
    } else {
      // return handler return value for single handlers
      return invokeWithErrorHandling(fns, null, arguments, vm, "v-on handler")
    }
  }
  invoker.fns = fns;
  return invoker
}

function updateListeners (
  on,
  oldOn,
  add,
  remove$$1,
  createOnceHandler,
  vm
) {
  var name, def$$1, cur, old, event;
  for (name in on) {
    def$$1 = cur = on[name];
    old = oldOn[name];
    event = normalizeEvent(name);
    if (isUndef(cur)) {
       false && false;
    } else if (isUndef(old)) {
      if (isUndef(cur.fns)) {
        cur = on[name] = createFnInvoker(cur, vm);
      }
      if (isTrue(event.once)) {
        cur = on[name] = createOnceHandler(event.name, cur, event.capture);
      }
      add(event.name, cur, event.capture, event.passive, event.params);
    } else if (cur !== old) {
      old.fns = cur;
      on[name] = old;
    }
  }
  for (name in oldOn) {
    if (isUndef(on[name])) {
      event = normalizeEvent(name);
      remove$$1(event.name, oldOn[name], event.capture);
    }
  }
}

/*  */

function mergeVNodeHook (def, hookKey, hook) {
  if (def instanceof VNode) {
    def = def.data.hook || (def.data.hook = {});
  }
  var invoker;
  var oldHook = def[hookKey];

  function wrappedHook () {
    hook.apply(this, arguments);
    // important: remove merged hook to ensure it's called only once
    // and prevent memory leak
    remove(invoker.fns, wrappedHook);
  }

  if (isUndef(oldHook)) {
    // no existing hook
    invoker = createFnInvoker([wrappedHook]);
  } else {
    /* istanbul ignore if */
    if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {
      // already a merged invoker
      invoker = oldHook;
      invoker.fns.push(wrappedHook);
    } else {
      // existing plain hook
      invoker = createFnInvoker([oldHook, wrappedHook]);
    }
  }

  invoker.merged = true;
  def[hookKey] = invoker;
}

/*  */

function extractPropsFromVNodeData (
  data,
  Ctor,
  tag
) {
  // we are only extracting raw values here.
  // validation and default values are handled in the child
  // component itself.
  var propOptions = Ctor.options.props;
  if (isUndef(propOptions)) {
    return
  }
  var res = {};
  var attrs = data.attrs;
  var props = data.props;
  if (isDef(attrs) || isDef(props)) {
    for (var key in propOptions) {
      var altKey = hyphenate(key);
      if (false) { var keyInLowerCase; }
      checkProp(res, props, key, altKey, true) ||
      checkProp(res, attrs, key, altKey, false);
    }
  }
  return res
}

function checkProp (
  res,
  hash,
  key,
  altKey,
  preserve
) {
  if (isDef(hash)) {
    if (hasOwn(hash, key)) {
      res[key] = hash[key];
      if (!preserve) {
        delete hash[key];
      }
      return true
    } else if (hasOwn(hash, altKey)) {
      res[key] = hash[altKey];
      if (!preserve) {
        delete hash[altKey];
      }
      return true
    }
  }
  return false
}

/*  */

// The template compiler attempts to minimize the need for normalization by
// statically analyzing the template at compile time.
//
// For plain HTML markup, normalization can be completely skipped because the
// generated render function is guaranteed to return Array<VNode>. There are
// two cases where extra normalization is needed:

// 1. When the children contains components - because a functional component
// may return an Array instead of a single root. In this case, just a simple
// normalization is needed - if any child is an Array, we flatten the whole
// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep
// because functional components already normalize their own children.
function simpleNormalizeChildren (children) {
  for (var i = 0; i < children.length; i++) {
    if (Array.isArray(children[i])) {
      return Array.prototype.concat.apply([], children)
    }
  }
  return children
}

// 2. When the children contains constructs that always generated nested Arrays,
// e.g. <template>, <slot>, v-for, or when the children is provided by user
// with hand-written render functions / JSX. In such cases a full normalization
// is needed to cater to all possible types of children values.
function normalizeChildren (children) {
  return isPrimitive(children)
    ? [createTextVNode(children)]
    : Array.isArray(children)
      ? normalizeArrayChildren(children)
      : undefined
}

function isTextNode (node) {
  return isDef(node) && isDef(node.text) && isFalse(node.isComment)
}

function normalizeArrayChildren (children, nestedIndex) {
  var res = [];
  var i, c, lastIndex, last;
  for (i = 0; i < children.length; i++) {
    c = children[i];
    if (isUndef(c) || typeof c === 'boolean') { continue }
    lastIndex = res.length - 1;
    last = res[lastIndex];
    //  nested
    if (Array.isArray(c)) {
      if (c.length > 0) {
        c = normalizeArrayChildren(c, ((nestedIndex || '') + "_" + i));
        // merge adjacent text nodes
        if (isTextNode(c[0]) && isTextNode(last)) {
          res[lastIndex] = createTextVNode(last.text + (c[0]).text);
          c.shift();
        }
        res.push.apply(res, c);
      }
    } else if (isPrimitive(c)) {
      if (isTextNode(last)) {
        // merge adjacent text nodes
        // this is necessary for SSR hydration because text nodes are
        // essentially merged when rendered to HTML strings
        res[lastIndex] = createTextVNode(last.text + c);
      } else if (c !== '') {
        // convert primitive to vnode
        res.push(createTextVNode(c));
      }
    } else {
      if (isTextNode(c) && isTextNode(last)) {
        // merge adjacent text nodes
        res[lastIndex] = createTextVNode(last.text + c.text);
      } else {
        // default key for nested array children (likely generated by v-for)
        if (isTrue(children._isVList) &&
          isDef(c.tag) &&
          isUndef(c.key) &&
          isDef(nestedIndex)) {
          c.key = "__vlist" + nestedIndex + "_" + i + "__";
        }
        res.push(c);
      }
    }
  }
  return res
}

/*  */

function initProvide (vm) {
  var provide = vm.$options.provide;
  if (provide) {
    vm._provided = typeof provide === 'function'
      ? provide.call(vm)
      : provide;
  }
}

function initInjections (vm) {
  var result = resolveInject(vm.$options.inject, vm);
  if (result) {
    toggleObserving(false);
    Object.keys(result).forEach(function (key) {
      /* istanbul ignore else */
      if (false) {} else {
        defineReactive$$1(vm, key, result[key]);
      }
    });
    toggleObserving(true);
  }
}

function resolveInject (inject, vm) {
  if (inject) {
    // inject is :any because flow is not smart enough to figure out cached
    var result = Object.create(null);
    var keys = hasSymbol
      ? Reflect.ownKeys(inject)
      : Object.keys(inject);

    for (var i = 0; i < keys.length; i++) {
      var key = keys[i];
      // #6574 in case the inject object is observed...
      if (key === '__ob__') { continue }
      var provideKey = inject[key].from;
      var source = vm;
      while (source) {
        if (source._provided && hasOwn(source._provided, provideKey)) {
          result[key] = source._provided[provideKey];
          break
        }
        source = source.$parent;
      }
      if (!source) {
        if ('default' in inject[key]) {
          var provideDefault = inject[key].default;
          result[key] = typeof provideDefault === 'function'
            ? provideDefault.call(vm)
            : provideDefault;
        } else if (false) {}
      }
    }
    return result
  }
}

/*  */



/**
 * Runtime helper for resolving raw children VNodes into a slot object.
 */
function resolveSlots (
  children,
  context
) {
  if (!children || !children.length) {
    return {}
  }
  var slots = {};
  for (var i = 0, l = children.length; i < l; i++) {
    var child = children[i];
    var data = child.data;
    // remove slot attribute if the node is resolved as a Vue slot node
    if (data && data.attrs && data.attrs.slot) {
      delete data.attrs.slot;
    }
    // named slots should only be respected if the vnode was rendered in the
    // same context.
    if ((child.context === context || child.fnContext === context) &&
      data && data.slot != null
    ) {
      var name = data.slot;
      var slot = (slots[name] || (slots[name] = []));
      if (child.tag === 'template') {
        slot.push.apply(slot, child.children || []);
      } else {
        slot.push(child);
      }
    } else {
      (slots.default || (slots.default = [])).push(child);
    }
  }
  // ignore slots that contains only whitespace
  for (var name$1 in slots) {
    if (slots[name$1].every(isWhitespace)) {
      delete slots[name$1];
    }
  }
  return slots
}

function isWhitespace (node) {
  return (node.isComment && !node.asyncFactory) || node.text === ' '
}

/*  */

function isAsyncPlaceholder (node) {
  return node.isComment && node.asyncFactory
}

/*  */

function normalizeScopedSlots (
  slots,
  normalSlots,
  prevSlots
) {
  var res;
  var hasNormalSlots = Object.keys(normalSlots).length > 0;
  var isStable = slots ? !!slots.$stable : !hasNormalSlots;
  var key = slots && slots.$key;
  if (!slots) {
    res = {};
  } else if (slots._normalized) {
    // fast path 1: child component re-render only, parent did not change
    return slots._normalized
  } else if (
    isStable &&
    prevSlots &&
    prevSlots !== emptyObject &&
    key === prevSlots.$key &&
    !hasNormalSlots &&
    !prevSlots.$hasNormal
  ) {
    // fast path 2: stable scoped slots w/ no normal slots to proxy,
    // only need to normalize once
    return prevSlots
  } else {
    res = {};
    for (var key$1 in slots) {
      if (slots[key$1] && key$1[0] !== '$') {
        res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);
      }
    }
  }
  // expose normal slots on scopedSlots
  for (var key$2 in normalSlots) {
    if (!(key$2 in res)) {
      res[key$2] = proxyNormalSlot(normalSlots, key$2);
    }
  }
  // avoriaz seems to mock a non-extensible $scopedSlots object
  // and when that is passed down this would cause an error
  if (slots && Object.isExtensible(slots)) {
    (slots)._normalized = res;
  }
  def(res, '$stable', isStable);
  def(res, '$key', key);
  def(res, '$hasNormal', hasNormalSlots);
  return res
}

function normalizeScopedSlot(normalSlots, key, fn) {
  var normalized = function () {
    var res = arguments.length ? fn.apply(null, arguments) : fn({});
    res = res && typeof res === 'object' && !Array.isArray(res)
      ? [res] // single vnode
      : normalizeChildren(res);
    var vnode = res && res[0];
    return res && (
      !vnode ||
      (res.length === 1 && vnode.isComment && !isAsyncPlaceholder(vnode)) // #9658, #10391
    ) ? undefined
      : res
  };
  // this is a slot using the new v-slot syntax without scope. although it is
  // compiled as a scoped slot, render fn users would expect it to be present
  // on this.$slots because the usage is semantically a normal slot.
  if (fn.proxy) {
    Object.defineProperty(normalSlots, key, {
      get: normalized,
      enumerable: true,
      configurable: true
    });
  }
  return normalized
}

function proxyNormalSlot(slots, key) {
  return function () { return slots[key]; }
}

/*  */

/**
 * Runtime helper for rendering v-for lists.
 */
function renderList (
  val,
  render
) {
  var ret, i, l, keys, key;
  if (Array.isArray(val) || typeof val === 'string') {
    ret = new Array(val.length);
    for (i = 0, l = val.length; i < l; i++) {
      ret[i] = render(val[i], i);
    }
  } else if (typeof val === 'number') {
    ret = new Array(val);
    for (i = 0; i < val; i++) {
      ret[i] = render(i + 1, i);
    }
  } else if (isObject(val)) {
    if (hasSymbol && val[Symbol.iterator]) {
      ret = [];
      var iterator = val[Symbol.iterator]();
      var result = iterator.next();
      while (!result.done) {
        ret.push(render(result.value, ret.length));
        result = iterator.next();
      }
    } else {
      keys = Object.keys(val);
      ret = new Array(keys.length);
      for (i = 0, l = keys.length; i < l; i++) {
        key = keys[i];
        ret[i] = render(val[key], key, i);
      }
    }
  }
  if (!isDef(ret)) {
    ret = [];
  }
  (ret)._isVList = true;
  return ret
}

/*  */

/**
 * Runtime helper for rendering <slot>
 */
function renderSlot (
  name,
  fallbackRender,
  props,
  bindObject
) {
  var scopedSlotFn = this.$scopedSlots[name];
  var nodes;
  if (scopedSlotFn) {
    // scoped slot
    props = props || {};
    if (bindObject) {
      if (false) {}
      props = extend(extend({}, bindObject), props);
    }
    nodes =
      scopedSlotFn(props) ||
      (typeof fallbackRender === 'function' ? fallbackRender() : fallbackRender);
  } else {
    nodes =
      this.$slots[name] ||
      (typeof fallbackRender === 'function' ? fallbackRender() : fallbackRender);
  }

  var target = props && props.slot;
  if (target) {
    return this.$createElement('template', { slot: target }, nodes)
  } else {
    return nodes
  }
}

/*  */

/**
 * Runtime helper for resolving filters
 */
function resolveFilter (id) {
  return resolveAsset(this.$options, 'filters', id, true) || identity
}

/*  */

function isKeyNotMatch (expect, actual) {
  if (Array.isArray(expect)) {
    return expect.indexOf(actual) === -1
  } else {
    return expect !== actual
  }
}

/**
 * Runtime helper for checking keyCodes from config.
 * exposed as Vue.prototype._k
 * passing in eventKeyName as last argument separately for backwards compat
 */
function checkKeyCodes (
  eventKeyCode,
  key,
  builtInKeyCode,
  eventKeyName,
  builtInKeyName
) {
  var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;
  if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {
    return isKeyNotMatch(builtInKeyName, eventKeyName)
  } else if (mappedKeyCode) {
    return isKeyNotMatch(mappedKeyCode, eventKeyCode)
  } else if (eventKeyName) {
    return hyphenate(eventKeyName) !== key
  }
  return eventKeyCode === undefined
}

/*  */

/**
 * Runtime helper for merging v-bind="object" into a VNode's data.
 */
function bindObjectProps (
  data,
  tag,
  value,
  asProp,
  isSync
) {
  if (value) {
    if (!isObject(value)) {
       false && false;
    } else {
      if (Array.isArray(value)) {
        value = toObject(value);
      }
      var hash;
      var loop = function ( key ) {
        if (
          key === 'class' ||
          key === 'style' ||
          isReservedAttribute(key)
        ) {
          hash = data;
        } else {
          var type = data.attrs && data.attrs.type;
          hash = asProp || config.mustUseProp(tag, type, key)
            ? data.domProps || (data.domProps = {})
            : data.attrs || (data.attrs = {});
        }
        var camelizedKey = camelize(key);
        var hyphenatedKey = hyphenate(key);
        if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {
          hash[key] = value[key];

          if (isSync) {
            var on = data.on || (data.on = {});
            on[("update:" + key)] = function ($event) {
              value[key] = $event;
            };
          }
        }
      };

      for (var key in value) loop( key );
    }
  }
  return data
}

/*  */

/**
 * Runtime helper for rendering static trees.
 */
function renderStatic (
  index,
  isInFor
) {
  var cached = this._staticTrees || (this._staticTrees = []);
  var tree = cached[index];
  // if has already-rendered static tree and not inside v-for,
  // we can reuse the same tree.
  if (tree && !isInFor) {
    return tree
  }
  // otherwise, render a fresh tree.
  tree = cached[index] = this.$options.staticRenderFns[index].call(
    this._renderProxy,
    null,
    this // for render fns generated for functional component templates
  );
  markStatic(tree, ("__static__" + index), false);
  return tree
}

/**
 * Runtime helper for v-once.
 * Effectively it means marking the node as static with a unique key.
 */
function markOnce (
  tree,
  index,
  key
) {
  markStatic(tree, ("__once__" + index + (key ? ("_" + key) : "")), true);
  return tree
}

function markStatic (
  tree,
  key,
  isOnce
) {
  if (Array.isArray(tree)) {
    for (var i = 0; i < tree.length; i++) {
      if (tree[i] && typeof tree[i] !== 'string') {
        markStaticNode(tree[i], (key + "_" + i), isOnce);
      }
    }
  } else {
    markStaticNode(tree, key, isOnce);
  }
}

function markStaticNode (node, key, isOnce) {
  node.isStatic = true;
  node.key = key;
  node.isOnce = isOnce;
}

/*  */

function bindObjectListeners (data, value) {
  if (value) {
    if (!isPlainObject(value)) {
       false && false;
    } else {
      var on = data.on = data.on ? extend({}, data.on) : {};
      for (var key in value) {
        var existing = on[key];
        var ours = value[key];
        on[key] = existing ? [].concat(existing, ours) : ours;
      }
    }
  }
  return data
}

/*  */

function resolveScopedSlots (
  fns, // see flow/vnode
  res,
  // the following are added in 2.6
  hasDynamicKeys,
  contentHashKey
) {
  res = res || { $stable: !hasDynamicKeys };
  for (var i = 0; i < fns.length; i++) {
    var slot = fns[i];
    if (Array.isArray(slot)) {
      resolveScopedSlots(slot, res, hasDynamicKeys);
    } else if (slot) {
      // marker for reverse proxying v-slot without scope on this.$slots
      if (slot.proxy) {
        slot.fn.proxy = true;
      }
      res[slot.key] = slot.fn;
    }
  }
  if (contentHashKey) {
    (res).$key = contentHashKey;
  }
  return res
}

/*  */

function bindDynamicKeys (baseObj, values) {
  for (var i = 0; i < values.length; i += 2) {
    var key = values[i];
    if (typeof key === 'string' && key) {
      baseObj[values[i]] = values[i + 1];
    } else if (false) {}
  }
  return baseObj
}

// helper to dynamically append modifier runtime markers to event names.
// ensure only append when value is already string, otherwise it will be cast
// to string and cause the type check to miss.
function prependModifier (value, symbol) {
  return typeof value === 'string' ? symbol + value : value
}

/*  */

function installRenderHelpers (target) {
  target._o = markOnce;
  target._n = toNumber;
  target._s = toString;
  target._l = renderList;
  target._t = renderSlot;
  target._q = looseEqual;
  target._i = looseIndexOf;
  target._m = renderStatic;
  target._f = resolveFilter;
  target._k = checkKeyCodes;
  target._b = bindObjectProps;
  target._v = createTextVNode;
  target._e = createEmptyVNode;
  target._u = resolveScopedSlots;
  target._g = bindObjectListeners;
  target._d = bindDynamicKeys;
  target._p = prependModifier;
}

/*  */

function FunctionalRenderContext (
  data,
  props,
  children,
  parent,
  Ctor
) {
  var this$1 = this;

  var options = Ctor.options;
  // ensure the createElement function in functional components
  // gets a unique context - this is necessary for correct named slot check
  var contextVm;
  if (hasOwn(parent, '_uid')) {
    contextVm = Object.create(parent);
    // $flow-disable-line
    contextVm._original = parent;
  } else {
    // the context vm passed in is a functional context as well.
    // in this case we want to make sure we are able to get a hold to the
    // real context instance.
    contextVm = parent;
    // $flow-disable-line
    parent = parent._original;
  }
  var isCompiled = isTrue(options._compiled);
  var needNormalization = !isCompiled;

  this.data = data;
  this.props = props;
  this.children = children;
  this.parent = parent;
  this.listeners = data.on || emptyObject;
  this.injections = resolveInject(options.inject, parent);
  this.slots = function () {
    if (!this$1.$slots) {
      normalizeScopedSlots(
        data.scopedSlots,
        this$1.$slots = resolveSlots(children, parent)
      );
    }
    return this$1.$slots
  };

  Object.defineProperty(this, 'scopedSlots', ({
    enumerable: true,
    get: function get () {
      return normalizeScopedSlots(data.scopedSlots, this.slots())
    }
  }));

  // support for compiled functional template
  if (isCompiled) {
    // exposing $options for renderStatic()
    this.$options = options;
    // pre-resolve slots for renderSlot()
    this.$slots = this.slots();
    this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);
  }

  if (options._scopeId) {
    this._c = function (a, b, c, d) {
      var vnode = createElement(contextVm, a, b, c, d, needNormalization);
      if (vnode && !Array.isArray(vnode)) {
        vnode.fnScopeId = options._scopeId;
        vnode.fnContext = parent;
      }
      return vnode
    };
  } else {
    this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };
  }
}

installRenderHelpers(FunctionalRenderContext.prototype);

function createFunctionalComponent (
  Ctor,
  propsData,
  data,
  contextVm,
  children
) {
  var options = Ctor.options;
  var props = {};
  var propOptions = options.props;
  if (isDef(propOptions)) {
    for (var key in propOptions) {
      props[key] = validateProp(key, propOptions, propsData || emptyObject);
    }
  } else {
    if (isDef(data.attrs)) { mergeProps(props, data.attrs); }
    if (isDef(data.props)) { mergeProps(props, data.props); }
  }

  var renderContext = new FunctionalRenderContext(
    data,
    props,
    children,
    contextVm,
    Ctor
  );

  var vnode = options.render.call(null, renderContext._c, renderContext);

  if (vnode instanceof VNode) {
    return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)
  } else if (Array.isArray(vnode)) {
    var vnodes = normalizeChildren(vnode) || [];
    var res = new Array(vnodes.length);
    for (var i = 0; i < vnodes.length; i++) {
      res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);
    }
    return res
  }
}

function cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {
  // #7817 clone node before setting fnContext, otherwise if the node is reused
  // (e.g. it was from a cached normal slot) the fnContext causes named slots
  // that should not be matched to match.
  var clone = cloneVNode(vnode);
  clone.fnContext = contextVm;
  clone.fnOptions = options;
  if (false) {}
  if (data.slot) {
    (clone.data || (clone.data = {})).slot = data.slot;
  }
  return clone
}

function mergeProps (to, from) {
  for (var key in from) {
    to[camelize(key)] = from[key];
  }
}

/*  */

/*  */

/*  */

/*  */

// inline hooks to be invoked on component VNodes during patch
var componentVNodeHooks = {
  init: function init (vnode, hydrating) {
    if (
      vnode.componentInstance &&
      !vnode.componentInstance._isDestroyed &&
      vnode.data.keepAlive
    ) {
      // kept-alive components, treat as a patch
      var mountedNode = vnode; // work around flow
      componentVNodeHooks.prepatch(mountedNode, mountedNode);
    } else {
      var child = vnode.componentInstance = createComponentInstanceForVnode(
        vnode,
        activeInstance
      );
      child.$mount(hydrating ? vnode.elm : undefined, hydrating);
    }
  },

  prepatch: function prepatch (oldVnode, vnode) {
    var options = vnode.componentOptions;
    var child = vnode.componentInstance = oldVnode.componentInstance;
    updateChildComponent(
      child,
      options.propsData, // updated props
      options.listeners, // updated listeners
      vnode, // new parent vnode
      options.children // new children
    );
  },

  insert: function insert (vnode) {
    var context = vnode.context;
    var componentInstance = vnode.componentInstance;
    if (!componentInstance._isMounted) {
      componentInstance._isMounted = true;
      callHook(componentInstance, 'mounted');
    }
    if (vnode.data.keepAlive) {
      if (context._isMounted) {
        // vue-router#1212
        // During updates, a kept-alive component's child components may
        // change, so directly walking the tree here may call activated hooks
        // on incorrect children. Instead we push them into a queue which will
        // be processed after the whole patch process ended.
        queueActivatedComponent(componentInstance);
      } else {
        activateChildComponent(componentInstance, true /* direct */);
      }
    }
  },

  destroy: function destroy (vnode) {
    var componentInstance = vnode.componentInstance;
    if (!componentInstance._isDestroyed) {
      if (!vnode.data.keepAlive) {
        componentInstance.$destroy();
      } else {
        deactivateChildComponent(componentInstance, true /* direct */);
      }
    }
  }
};

var hooksToMerge = Object.keys(componentVNodeHooks);

function createComponent (
  Ctor,
  data,
  context,
  children,
  tag
) {
  if (isUndef(Ctor)) {
    return
  }

  var baseCtor = context.$options._base;

  // plain options object: turn it into a constructor
  if (isObject(Ctor)) {
    Ctor = baseCtor.extend(Ctor);
  }

  // if at this stage it's not a constructor or an async component factory,
  // reject.
  if (typeof Ctor !== 'function') {
    if (false) {}
    return
  }

  // async component
  var asyncFactory;
  if (isUndef(Ctor.cid)) {
    asyncFactory = Ctor;
    Ctor = resolveAsyncComponent(asyncFactory, baseCtor);
    if (Ctor === undefined) {
      // return a placeholder node for async component, which is rendered
      // as a comment node but preserves all the raw information for the node.
      // the information will be used for async server-rendering and hydration.
      return createAsyncPlaceholder(
        asyncFactory,
        data,
        context,
        children,
        tag
      )
    }
  }

  data = data || {};

  // resolve constructor options in case global mixins are applied after
  // component constructor creation
  resolveConstructorOptions(Ctor);

  // transform component v-model data into props & events
  if (isDef(data.model)) {
    transformModel(Ctor.options, data);
  }

  // extract props
  var propsData = extractPropsFromVNodeData(data, Ctor, tag);

  // functional component
  if (isTrue(Ctor.options.functional)) {
    return createFunctionalComponent(Ctor, propsData, data, context, children)
  }

  // extract listeners, since these needs to be treated as
  // child component listeners instead of DOM listeners
  var listeners = data.on;
  // replace with listeners with .native modifier
  // so it gets processed during parent component patch.
  data.on = data.nativeOn;

  if (isTrue(Ctor.options.abstract)) {
    // abstract components do not keep anything
    // other than props & listeners & slot

    // work around flow
    var slot = data.slot;
    data = {};
    if (slot) {
      data.slot = slot;
    }
  }

  // install component management hooks onto the placeholder node
  installComponentHooks(data);

  // return a placeholder vnode
  var name = Ctor.options.name || tag;
  var vnode = new VNode(
    ("vue-component-" + (Ctor.cid) + (name ? ("-" + name) : '')),
    data, undefined, undefined, undefined, context,
    { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },
    asyncFactory
  );

  return vnode
}

function createComponentInstanceForVnode (
  // we know it's MountedComponentVNode but flow doesn't
  vnode,
  // activeInstance in lifecycle state
  parent
) {
  var options = {
    _isComponent: true,
    _parentVnode: vnode,
    parent: parent
  };
  // check inline-template render functions
  var inlineTemplate = vnode.data.inlineTemplate;
  if (isDef(inlineTemplate)) {
    options.render = inlineTemplate.render;
    options.staticRenderFns = inlineTemplate.staticRenderFns;
  }
  return new vnode.componentOptions.Ctor(options)
}

function installComponentHooks (data) {
  var hooks = data.hook || (data.hook = {});
  for (var i = 0; i < hooksToMerge.length; i++) {
    var key = hooksToMerge[i];
    var existing = hooks[key];
    var toMerge = componentVNodeHooks[key];
    if (existing !== toMerge && !(existing && existing._merged)) {
      hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;
    }
  }
}

function mergeHook$1 (f1, f2) {
  var merged = function (a, b) {
    // flow complains about extra args which is why we use any
    f1(a, b);
    f2(a, b);
  };
  merged._merged = true;
  return merged
}

// transform component v-model info (value and callback) into
// prop and event handler respectively.
function transformModel (options, data) {
  var prop = (options.model && options.model.prop) || 'value';
  var event = (options.model && options.model.event) || 'input'
  ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;
  var on = data.on || (data.on = {});
  var existing = on[event];
  var callback = data.model.callback;
  if (isDef(existing)) {
    if (
      Array.isArray(existing)
        ? existing.indexOf(callback) === -1
        : existing !== callback
    ) {
      on[event] = [callback].concat(existing);
    }
  } else {
    on[event] = callback;
  }
}

/*  */

var SIMPLE_NORMALIZE = 1;
var ALWAYS_NORMALIZE = 2;

// wrapper function for providing a more flexible interface
// without getting yelled at by flow
function createElement (
  context,
  tag,
  data,
  children,
  normalizationType,
  alwaysNormalize
) {
  if (Array.isArray(data) || isPrimitive(data)) {
    normalizationType = children;
    children = data;
    data = undefined;
  }
  if (isTrue(alwaysNormalize)) {
    normalizationType = ALWAYS_NORMALIZE;
  }
  return _createElement(context, tag, data, children, normalizationType)
}

function _createElement (
  context,
  tag,
  data,
  children,
  normalizationType
) {
  if (isDef(data) && isDef((data).__ob__)) {
     false && false;
    return createEmptyVNode()
  }
  // object syntax in v-bind
  if (isDef(data) && isDef(data.is)) {
    tag = data.is;
  }
  if (!tag) {
    // in case of component :is set to falsy value
    return createEmptyVNode()
  }
  // warn against non-primitive key
  if (false
  ) {}
  // support single function children as default scoped slot
  if (Array.isArray(children) &&
    typeof children[0] === 'function'
  ) {
    data = data || {};
    data.scopedSlots = { default: children[0] };
    children.length = 0;
  }
  if (normalizationType === ALWAYS_NORMALIZE) {
    children = normalizeChildren(children);
  } else if (normalizationType === SIMPLE_NORMALIZE) {
    children = simpleNormalizeChildren(children);
  }
  var vnode, ns;
  if (typeof tag === 'string') {
    var Ctor;
    ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);
    if (config.isReservedTag(tag)) {
      // platform built-in elements
      if (false) {}
      vnode = new VNode(
        config.parsePlatformTagName(tag), data, children,
        undefined, undefined, context
      );
    } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {
      // component
      vnode = createComponent(Ctor, data, context, children, tag);
    } else {
      // unknown or unlisted namespaced elements
      // check at runtime because it may get assigned a namespace when its
      // parent normalizes children
      vnode = new VNode(
        tag, data, children,
        undefined, undefined, context
      );
    }
  } else {
    // direct component options / constructor
    vnode = createComponent(tag, data, context, children);
  }
  if (Array.isArray(vnode)) {
    return vnode
  } else if (isDef(vnode)) {
    if (isDef(ns)) { applyNS(vnode, ns); }
    if (isDef(data)) { registerDeepBindings(data); }
    return vnode
  } else {
    return createEmptyVNode()
  }
}

function applyNS (vnode, ns, force) {
  vnode.ns = ns;
  if (vnode.tag === 'foreignObject') {
    // use default namespace inside foreignObject
    ns = undefined;
    force = true;
  }
  if (isDef(vnode.children)) {
    for (var i = 0, l = vnode.children.length; i < l; i++) {
      var child = vnode.children[i];
      if (isDef(child.tag) && (
        isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {
        applyNS(child, ns, force);
      }
    }
  }
}

// ref #5318
// necessary to ensure parent re-render when deep bindings like :style and
// :class are used on slot nodes
function registerDeepBindings (data) {
  if (isObject(data.style)) {
    traverse(data.style);
  }
  if (isObject(data.class)) {
    traverse(data.class);
  }
}

/*  */

function initRender (vm) {
  vm._vnode = null; // the root of the child tree
  vm._staticTrees = null; // v-once cached trees
  var options = vm.$options;
  var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree
  var renderContext = parentVnode && parentVnode.context;
  vm.$slots = resolveSlots(options._renderChildren, renderContext);
  vm.$scopedSlots = emptyObject;
  // bind the createElement fn to this instance
  // so that we get proper render context inside it.
  // args order: tag, data, children, normalizationType, alwaysNormalize
  // internal version is used by render functions compiled from templates
  vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };
  // normalization is always applied for the public version, used in
  // user-written render functions.
  vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };

  // $attrs & $listeners are exposed for easier HOC creation.
  // they need to be reactive so that HOCs using them are always updated
  var parentData = parentVnode && parentVnode.data;

  /* istanbul ignore else */
  if (false) {} else {
    defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);
    defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, null, true);
  }
}

var currentRenderingInstance = null;

function renderMixin (Vue) {
  // install runtime convenience helpers
  installRenderHelpers(Vue.prototype);

  Vue.prototype.$nextTick = function (fn) {
    return nextTick(fn, this)
  };

  Vue.prototype._render = function () {
    var vm = this;
    var ref = vm.$options;
    var render = ref.render;
    var _parentVnode = ref._parentVnode;

    if (_parentVnode) {
      vm.$scopedSlots = normalizeScopedSlots(
        _parentVnode.data.scopedSlots,
        vm.$slots,
        vm.$scopedSlots
      );
    }

    // set parent vnode. this allows render functions to have access
    // to the data on the placeholder node.
    vm.$vnode = _parentVnode;
    // render self
    var vnode;
    try {
      // There's no need to maintain a stack because all render fns are called
      // separately from one another. Nested component's render fns are called
      // when parent component is patched.
      currentRenderingInstance = vm;
      vnode = render.call(vm._renderProxy, vm.$createElement);
    } catch (e) {
      handleError(e, vm, "render");
      // return error render result,
      // or previous vnode to prevent render error causing blank component
      /* istanbul ignore else */
      if (false) {} else {
        vnode = vm._vnode;
      }
    } finally {
      currentRenderingInstance = null;
    }
    // if the returned array contains only a single node, allow it
    if (Array.isArray(vnode) && vnode.length === 1) {
      vnode = vnode[0];
    }
    // return empty vnode in case the render function errored out
    if (!(vnode instanceof VNode)) {
      if (false) {}
      vnode = createEmptyVNode();
    }
    // set parent
    vnode.parent = _parentVnode;
    return vnode
  };
}

/*  */

function ensureCtor (comp, base) {
  if (
    comp.__esModule ||
    (hasSymbol && comp[Symbol.toStringTag] === 'Module')
  ) {
    comp = comp.default;
  }
  return isObject(comp)
    ? base.extend(comp)
    : comp
}

function createAsyncPlaceholder (
  factory,
  data,
  context,
  children,
  tag
) {
  var node = createEmptyVNode();
  node.asyncFactory = factory;
  node.asyncMeta = { data: data, context: context, children: children, tag: tag };
  return node
}

function resolveAsyncComponent (
  factory,
  baseCtor
) {
  if (isTrue(factory.error) && isDef(factory.errorComp)) {
    return factory.errorComp
  }

  if (isDef(factory.resolved)) {
    return factory.resolved
  }

  var owner = currentRenderingInstance;
  if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {
    // already pending
    factory.owners.push(owner);
  }

  if (isTrue(factory.loading) && isDef(factory.loadingComp)) {
    return factory.loadingComp
  }

  if (owner && !isDef(factory.owners)) {
    var owners = factory.owners = [owner];
    var sync = true;
    var timerLoading = null;
    var timerTimeout = null

    ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });

    var forceRender = function (renderCompleted) {
      for (var i = 0, l = owners.length; i < l; i++) {
        (owners[i]).$forceUpdate();
      }

      if (renderCompleted) {
        owners.length = 0;
        if (timerLoading !== null) {
          clearTimeout(timerLoading);
          timerLoading = null;
        }
        if (timerTimeout !== null) {
          clearTimeout(timerTimeout);
          timerTimeout = null;
        }
      }
    };

    var resolve = once(function (res) {
      // cache resolved
      factory.resolved = ensureCtor(res, baseCtor);
      // invoke callbacks only if this is not a synchronous resolve
      // (async resolves are shimmed as synchronous during SSR)
      if (!sync) {
        forceRender(true);
      } else {
        owners.length = 0;
      }
    });

    var reject = once(function (reason) {
       false && false;
      if (isDef(factory.errorComp)) {
        factory.error = true;
        forceRender(true);
      }
    });

    var res = factory(resolve, reject);

    if (isObject(res)) {
      if (isPromise(res)) {
        // () => Promise
        if (isUndef(factory.resolved)) {
          res.then(resolve, reject);
        }
      } else if (isPromise(res.component)) {
        res.component.then(resolve, reject);

        if (isDef(res.error)) {
          factory.errorComp = ensureCtor(res.error, baseCtor);
        }

        if (isDef(res.loading)) {
          factory.loadingComp = ensureCtor(res.loading, baseCtor);
          if (res.delay === 0) {
            factory.loading = true;
          } else {
            timerLoading = setTimeout(function () {
              timerLoading = null;
              if (isUndef(factory.resolved) && isUndef(factory.error)) {
                factory.loading = true;
                forceRender(false);
              }
            }, res.delay || 200);
          }
        }

        if (isDef(res.timeout)) {
          timerTimeout = setTimeout(function () {
            timerTimeout = null;
            if (isUndef(factory.resolved)) {
              reject(
                 false
                  ? (undefined)
                  : null
              );
            }
          }, res.timeout);
        }
      }
    }

    sync = false;
    // return in case resolved synchronously
    return factory.loading
      ? factory.loadingComp
      : factory.resolved
  }
}

/*  */

function getFirstComponentChild (children) {
  if (Array.isArray(children)) {
    for (var i = 0; i < children.length; i++) {
      var c = children[i];
      if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {
        return c
      }
    }
  }
}

/*  */

/*  */

function initEvents (vm) {
  vm._events = Object.create(null);
  vm._hasHookEvent = false;
  // init parent attached events
  var listeners = vm.$options._parentListeners;
  if (listeners) {
    updateComponentListeners(vm, listeners);
  }
}

var target;

function add (event, fn) {
  target.$on(event, fn);
}

function remove$1 (event, fn) {
  target.$off(event, fn);
}

function createOnceHandler (event, fn) {
  var _target = target;
  return function onceHandler () {
    var res = fn.apply(null, arguments);
    if (res !== null) {
      _target.$off(event, onceHandler);
    }
  }
}

function updateComponentListeners (
  vm,
  listeners,
  oldListeners
) {
  target = vm;
  updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);
  target = undefined;
}

function eventsMixin (Vue) {
  var hookRE = /^hook:/;
  Vue.prototype.$on = function (event, fn) {
    var vm = this;
    if (Array.isArray(event)) {
      for (var i = 0, l = event.length; i < l; i++) {
        vm.$on(event[i], fn);
      }
    } else {
      (vm._events[event] || (vm._events[event] = [])).push(fn);
      // optimize hook:event cost by using a boolean flag marked at registration
      // instead of a hash lookup
      if (hookRE.test(event)) {
        vm._hasHookEvent = true;
      }
    }
    return vm
  };

  Vue.prototype.$once = function (event, fn) {
    var vm = this;
    function on () {
      vm.$off(event, on);
      fn.apply(vm, arguments);
    }
    on.fn = fn;
    vm.$on(event, on);
    return vm
  };

  Vue.prototype.$off = function (event, fn) {
    var vm = this;
    // all
    if (!arguments.length) {
      vm._events = Object.create(null);
      return vm
    }
    // array of events
    if (Array.isArray(event)) {
      for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {
        vm.$off(event[i$1], fn);
      }
      return vm
    }
    // specific event
    var cbs = vm._events[event];
    if (!cbs) {
      return vm
    }
    if (!fn) {
      vm._events[event] = null;
      return vm
    }
    // specific handler
    var cb;
    var i = cbs.length;
    while (i--) {
      cb = cbs[i];
      if (cb === fn || cb.fn === fn) {
        cbs.splice(i, 1);
        break
      }
    }
    return vm
  };

  Vue.prototype.$emit = function (event) {
    var vm = this;
    if (false) { var lowerCaseEvent; }
    var cbs = vm._events[event];
    if (cbs) {
      cbs = cbs.length > 1 ? toArray(cbs) : cbs;
      var args = toArray(arguments, 1);
      var info = "event handler for \"" + event + "\"";
      for (var i = 0, l = cbs.length; i < l; i++) {
        invokeWithErrorHandling(cbs[i], vm, args, vm, info);
      }
    }
    return vm
  };
}

/*  */

var activeInstance = null;
var isUpdatingChildComponent = false;

function setActiveInstance(vm) {
  var prevActiveInstance = activeInstance;
  activeInstance = vm;
  return function () {
    activeInstance = prevActiveInstance;
  }
}

function initLifecycle (vm) {
  var options = vm.$options;

  // locate first non-abstract parent
  var parent = options.parent;
  if (parent && !options.abstract) {
    while (parent.$options.abstract && parent.$parent) {
      parent = parent.$parent;
    }
    parent.$children.push(vm);
  }

  vm.$parent = parent;
  vm.$root = parent ? parent.$root : vm;

  vm.$children = [];
  vm.$refs = {};

  vm._watcher = null;
  vm._inactive = null;
  vm._directInactive = false;
  vm._isMounted = false;
  vm._isDestroyed = false;
  vm._isBeingDestroyed = false;
}

function lifecycleMixin (Vue) {
  Vue.prototype._update = function (vnode, hydrating) {
    var vm = this;
    var prevEl = vm.$el;
    var prevVnode = vm._vnode;
    var restoreActiveInstance = setActiveInstance(vm);
    vm._vnode = vnode;
    // Vue.prototype.__patch__ is injected in entry points
    // based on the rendering backend used.
    if (!prevVnode) {
      // initial render
      vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);
    } else {
      // updates
      vm.$el = vm.__patch__(prevVnode, vnode);
    }
    restoreActiveInstance();
    // update __vue__ reference
    if (prevEl) {
      prevEl.__vue__ = null;
    }
    if (vm.$el) {
      vm.$el.__vue__ = vm;
    }
    // if parent is an HOC, update its $el as well
    if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {
      vm.$parent.$el = vm.$el;
    }
    // updated hook is called by the scheduler to ensure that children are
    // updated in a parent's updated hook.
  };

  Vue.prototype.$forceUpdate = function () {
    var vm = this;
    if (vm._watcher) {
      vm._watcher.update();
    }
  };

  Vue.prototype.$destroy = function () {
    var vm = this;
    if (vm._isBeingDestroyed) {
      return
    }
    callHook(vm, 'beforeDestroy');
    vm._isBeingDestroyed = true;
    // remove self from parent
    var parent = vm.$parent;
    if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {
      remove(parent.$children, vm);
    }
    // teardown watchers
    if (vm._watcher) {
      vm._watcher.teardown();
    }
    var i = vm._watchers.length;
    while (i--) {
      vm._watchers[i].teardown();
    }
    // remove reference from data ob
    // frozen object may not have observer.
    if (vm._data.__ob__) {
      vm._data.__ob__.vmCount--;
    }
    // call the last hook...
    vm._isDestroyed = true;
    // invoke destroy hooks on current rendered tree
    vm.__patch__(vm._vnode, null);
    // fire destroyed hook
    callHook(vm, 'destroyed');
    // turn off all instance listeners.
    vm.$off();
    // remove __vue__ reference
    if (vm.$el) {
      vm.$el.__vue__ = null;
    }
    // release circular reference (#6759)
    if (vm.$vnode) {
      vm.$vnode.parent = null;
    }
  };
}

function mountComponent (
  vm,
  el,
  hydrating
) {
  vm.$el = el;
  if (!vm.$options.render) {
    vm.$options.render = createEmptyVNode;
    if (false) {}
  }
  callHook(vm, 'beforeMount');

  var updateComponent;
  /* istanbul ignore if */
  if (false) {} else {
    updateComponent = function () {
      vm._update(vm._render(), hydrating);
    };
  }

  // we set this to vm._watcher inside the watcher's constructor
  // since the watcher's initial patch may call $forceUpdate (e.g. inside child
  // component's mounted hook), which relies on vm._watcher being already defined
  new Watcher(vm, updateComponent, noop, {
    before: function before () {
      if (vm._isMounted && !vm._isDestroyed) {
        callHook(vm, 'beforeUpdate');
      }
    }
  }, true /* isRenderWatcher */);
  hydrating = false;

  // manually mounted instance, call mounted on self
  // mounted is called for render-created child components in its inserted hook
  if (vm.$vnode == null) {
    vm._isMounted = true;
    callHook(vm, 'mounted');
  }
  return vm
}

function updateChildComponent (
  vm,
  propsData,
  listeners,
  parentVnode,
  renderChildren
) {
  if (false) {}

  // determine whether component has slot children
  // we need to do this before overwriting $options._renderChildren.

  // check if there are dynamic scopedSlots (hand-written or compiled but with
  // dynamic slot names). Static scoped slots compiled from template has the
  // "$stable" marker.
  var newScopedSlots = parentVnode.data.scopedSlots;
  var oldScopedSlots = vm.$scopedSlots;
  var hasDynamicScopedSlot = !!(
    (newScopedSlots && !newScopedSlots.$stable) ||
    (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||
    (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key) ||
    (!newScopedSlots && vm.$scopedSlots.$key)
  );

  // Any static slot children from the parent may have changed during parent's
  // update. Dynamic scoped slots may also have changed. In such cases, a forced
  // update is necessary to ensure correctness.
  var needsForceUpdate = !!(
    renderChildren ||               // has new static slots
    vm.$options._renderChildren ||  // has old static slots
    hasDynamicScopedSlot
  );

  vm.$options._parentVnode = parentVnode;
  vm.$vnode = parentVnode; // update vm's placeholder node without re-render

  if (vm._vnode) { // update child tree's parent
    vm._vnode.parent = parentVnode;
  }
  vm.$options._renderChildren = renderChildren;

  // update $attrs and $listeners hash
  // these are also reactive so they may trigger child update if the child
  // used them during render
  vm.$attrs = parentVnode.data.attrs || emptyObject;
  vm.$listeners = listeners || emptyObject;

  // update props
  if (propsData && vm.$options.props) {
    toggleObserving(false);
    var props = vm._props;
    var propKeys = vm.$options._propKeys || [];
    for (var i = 0; i < propKeys.length; i++) {
      var key = propKeys[i];
      var propOptions = vm.$options.props; // wtf flow?
      props[key] = validateProp(key, propOptions, propsData, vm);
    }
    toggleObserving(true);
    // keep a copy of raw propsData
    vm.$options.propsData = propsData;
  }

  // update listeners
  listeners = listeners || emptyObject;
  var oldListeners = vm.$options._parentListeners;
  vm.$options._parentListeners = listeners;
  updateComponentListeners(vm, listeners, oldListeners);

  // resolve slots + force update if has children
  if (needsForceUpdate) {
    vm.$slots = resolveSlots(renderChildren, parentVnode.context);
    vm.$forceUpdate();
  }

  if (false) {}
}

function isInInactiveTree (vm) {
  while (vm && (vm = vm.$parent)) {
    if (vm._inactive) { return true }
  }
  return false
}

function activateChildComponent (vm, direct) {
  if (direct) {
    vm._directInactive = false;
    if (isInInactiveTree(vm)) {
      return
    }
  } else if (vm._directInactive) {
    return
  }
  if (vm._inactive || vm._inactive === null) {
    vm._inactive = false;
    for (var i = 0; i < vm.$children.length; i++) {
      activateChildComponent(vm.$children[i]);
    }
    callHook(vm, 'activated');
  }
}

function deactivateChildComponent (vm, direct) {
  if (direct) {
    vm._directInactive = true;
    if (isInInactiveTree(vm)) {
      return
    }
  }
  if (!vm._inactive) {
    vm._inactive = true;
    for (var i = 0; i < vm.$children.length; i++) {
      deactivateChildComponent(vm.$children[i]);
    }
    callHook(vm, 'deactivated');
  }
}

function callHook (vm, hook) {
  // #7573 disable dep collection when invoking lifecycle hooks
  pushTarget();
  var handlers = vm.$options[hook];
  var info = hook + " hook";
  if (handlers) {
    for (var i = 0, j = handlers.length; i < j; i++) {
      invokeWithErrorHandling(handlers[i], vm, null, vm, info);
    }
  }
  if (vm._hasHookEvent) {
    vm.$emit('hook:' + hook);
  }
  popTarget();
}

/*  */

var MAX_UPDATE_COUNT = 100;

var queue = [];
var activatedChildren = [];
var has = {};
var circular = {};
var waiting = false;
var flushing = false;
var index = 0;

/**
 * Reset the scheduler's state.
 */
function resetSchedulerState () {
  index = queue.length = activatedChildren.length = 0;
  has = {};
  if (false) {}
  waiting = flushing = false;
}

// Async edge case #6566 requires saving the timestamp when event listeners are
// attached. However, calling performance.now() has a perf overhead especially
// if the page has thousands of event listeners. Instead, we take a timestamp
// every time the scheduler flushes and use that for all event listeners
// attached during that flush.
var currentFlushTimestamp = 0;

// Async edge case fix requires storing an event listener's attach timestamp.
var getNow = Date.now;

// Determine what event timestamp the browser is using. Annoyingly, the
// timestamp can either be hi-res (relative to page load) or low-res
// (relative to UNIX epoch), so in order to compare time we have to use the
// same timestamp type when saving the flush timestamp.
// All IE versions use low-res event timestamps, and have problematic clock
// implementations (#9632)
if (inBrowser && !isIE) {
  var performance = window.performance;
  if (
    performance &&
    typeof performance.now === 'function' &&
    getNow() > document.createEvent('Event').timeStamp
  ) {
    // if the event timestamp, although evaluated AFTER the Date.now(), is
    // smaller than it, it means the event is using a hi-res timestamp,
    // and we need to use the hi-res version for event listener timestamps as
    // well.
    getNow = function () { return performance.now(); };
  }
}

/**
 * Flush both queues and run the watchers.
 */
function flushSchedulerQueue () {
  currentFlushTimestamp = getNow();
  flushing = true;
  var watcher, id;

  // Sort queue before flush.
  // This ensures that:
  // 1. Components are updated from parent to child. (because parent is always
  //    created before the child)
  // 2. A component's user watchers are run before its render watcher (because
  //    user watchers are created before the render watcher)
  // 3. If a component is destroyed during a parent component's watcher run,
  //    its watchers can be skipped.
  queue.sort(function (a, b) { return a.id - b.id; });

  // do not cache length because more watchers might be pushed
  // as we run existing watchers
  for (index = 0; index < queue.length; index++) {
    watcher = queue[index];
    if (watcher.before) {
      watcher.before();
    }
    id = watcher.id;
    has[id] = null;
    watcher.run();
    // in dev build, check and stop circular updates.
    if (false) {}
  }

  // keep copies of post queues before resetting state
  var activatedQueue = activatedChildren.slice();
  var updatedQueue = queue.slice();

  resetSchedulerState();

  // call component updated and activated hooks
  callActivatedHooks(activatedQueue);
  callUpdatedHooks(updatedQueue);

  // devtool hook
  /* istanbul ignore if */
  if (devtools && config.devtools) {
    devtools.emit('flush');
  }
}

function callUpdatedHooks (queue) {
  var i = queue.length;
  while (i--) {
    var watcher = queue[i];
    var vm = watcher.vm;
    if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {
      callHook(vm, 'updated');
    }
  }
}

/**
 * Queue a kept-alive component that was activated during patch.
 * The queue will be processed after the entire tree has been patched.
 */
function queueActivatedComponent (vm) {
  // setting _inactive to false here so that a render function can
  // rely on checking whether it's in an inactive tree (e.g. router-view)
  vm._inactive = false;
  activatedChildren.push(vm);
}

function callActivatedHooks (queue) {
  for (var i = 0; i < queue.length; i++) {
    queue[i]._inactive = true;
    activateChildComponent(queue[i], true /* true */);
  }
}

/**
 * Push a watcher into the watcher queue.
 * Jobs with duplicate IDs will be skipped unless it's
 * pushed when the queue is being flushed.
 */
function queueWatcher (watcher) {
  var id = watcher.id;
  if (has[id] == null) {
    has[id] = true;
    if (!flushing) {
      queue.push(watcher);
    } else {
      // if already flushing, splice the watcher based on its id
      // if already past its id, it will be run next immediately.
      var i = queue.length - 1;
      while (i > index && queue[i].id > watcher.id) {
        i--;
      }
      queue.splice(i + 1, 0, watcher);
    }
    // queue the flush
    if (!waiting) {
      waiting = true;

      if (false) {}
      nextTick(flushSchedulerQueue);
    }
  }
}

/*  */



var uid$2 = 0;

/**
 * A watcher parses an expression, collects dependencies,
 * and fires callback when the expression value changes.
 * This is used for both the $watch() api and directives.
 */
var Watcher = function Watcher (
  vm,
  expOrFn,
  cb,
  options,
  isRenderWatcher
) {
  this.vm = vm;
  if (isRenderWatcher) {
    vm._watcher = this;
  }
  vm._watchers.push(this);
  // options
  if (options) {
    this.deep = !!options.deep;
    this.user = !!options.user;
    this.lazy = !!options.lazy;
    this.sync = !!options.sync;
    this.before = options.before;
  } else {
    this.deep = this.user = this.lazy = this.sync = false;
  }
  this.cb = cb;
  this.id = ++uid$2; // uid for batching
  this.active = true;
  this.dirty = this.lazy; // for lazy watchers
  this.deps = [];
  this.newDeps = [];
  this.depIds = new _Set();
  this.newDepIds = new _Set();
  this.expression =  false
    ? undefined
    : '';
  // parse expression for getter
  if (typeof expOrFn === 'function') {
    this.getter = expOrFn;
  } else {
    this.getter = parsePath(expOrFn);
    if (!this.getter) {
      this.getter = noop;
       false && false;
    }
  }
  this.value = this.lazy
    ? undefined
    : this.get();
};

/**
 * Evaluate the getter, and re-collect dependencies.
 */
Watcher.prototype.get = function get () {
  pushTarget(this);
  var value;
  var vm = this.vm;
  try {
    value = this.getter.call(vm, vm);
  } catch (e) {
    if (this.user) {
      handleError(e, vm, ("getter for watcher \"" + (this.expression) + "\""));
    } else {
      throw e
    }
  } finally {
    // "touch" every property so they are all tracked as
    // dependencies for deep watching
    if (this.deep) {
      traverse(value);
    }
    popTarget();
    this.cleanupDeps();
  }
  return value
};

/**
 * Add a dependency to this directive.
 */
Watcher.prototype.addDep = function addDep (dep) {
  var id = dep.id;
  if (!this.newDepIds.has(id)) {
    this.newDepIds.add(id);
    this.newDeps.push(dep);
    if (!this.depIds.has(id)) {
      dep.addSub(this);
    }
  }
};

/**
 * Clean up for dependency collection.
 */
Watcher.prototype.cleanupDeps = function cleanupDeps () {
  var i = this.deps.length;
  while (i--) {
    var dep = this.deps[i];
    if (!this.newDepIds.has(dep.id)) {
      dep.removeSub(this);
    }
  }
  var tmp = this.depIds;
  this.depIds = this.newDepIds;
  this.newDepIds = tmp;
  this.newDepIds.clear();
  tmp = this.deps;
  this.deps = this.newDeps;
  this.newDeps = tmp;
  this.newDeps.length = 0;
};

/**
 * Subscriber interface.
 * Will be called when a dependency changes.
 */
Watcher.prototype.update = function update () {
  /* istanbul ignore else */
  if (this.lazy) {
    this.dirty = true;
  } else if (this.sync) {
    this.run();
  } else {
    queueWatcher(this);
  }
};

/**
 * Scheduler job interface.
 * Will be called by the scheduler.
 */
Watcher.prototype.run = function run () {
  if (this.active) {
    var value = this.get();
    if (
      value !== this.value ||
      // Deep watchers and watchers on Object/Arrays should fire even
      // when the value is the same, because the value may
      // have mutated.
      isObject(value) ||
      this.deep
    ) {
      // set new value
      var oldValue = this.value;
      this.value = value;
      if (this.user) {
        var info = "callback for watcher \"" + (this.expression) + "\"";
        invokeWithErrorHandling(this.cb, this.vm, [value, oldValue], this.vm, info);
      } else {
        this.cb.call(this.vm, value, oldValue);
      }
    }
  }
};

/**
 * Evaluate the value of the watcher.
 * This only gets called for lazy watchers.
 */
Watcher.prototype.evaluate = function evaluate () {
  this.value = this.get();
  this.dirty = false;
};

/**
 * Depend on all deps collected by this watcher.
 */
Watcher.prototype.depend = function depend () {
  var i = this.deps.length;
  while (i--) {
    this.deps[i].depend();
  }
};

/**
 * Remove self from all dependencies' subscriber list.
 */
Watcher.prototype.teardown = function teardown () {
  if (this.active) {
    // remove self from vm's watcher list
    // this is a somewhat expensive operation so we skip it
    // if the vm is being destroyed.
    if (!this.vm._isBeingDestroyed) {
      remove(this.vm._watchers, this);
    }
    var i = this.deps.length;
    while (i--) {
      this.deps[i].removeSub(this);
    }
    this.active = false;
  }
};

/*  */

var sharedPropertyDefinition = {
  enumerable: true,
  configurable: true,
  get: noop,
  set: noop
};

function proxy (target, sourceKey, key) {
  sharedPropertyDefinition.get = function proxyGetter () {
    return this[sourceKey][key]
  };
  sharedPropertyDefinition.set = function proxySetter (val) {
    this[sourceKey][key] = val;
  };
  Object.defineProperty(target, key, sharedPropertyDefinition);
}

function initState (vm) {
  vm._watchers = [];
  var opts = vm.$options;
  if (opts.props) { initProps(vm, opts.props); }
  if (opts.methods) { initMethods(vm, opts.methods); }
  if (opts.data) {
    initData(vm);
  } else {
    observe(vm._data = {}, true /* asRootData */);
  }
  if (opts.computed) { initComputed(vm, opts.computed); }
  if (opts.watch && opts.watch !== nativeWatch) {
    initWatch(vm, opts.watch);
  }
}

function initProps (vm, propsOptions) {
  var propsData = vm.$options.propsData || {};
  var props = vm._props = {};
  // cache prop keys so that future props updates can iterate using Array
  // instead of dynamic object key enumeration.
  var keys = vm.$options._propKeys = [];
  var isRoot = !vm.$parent;
  // root instance props should be converted
  if (!isRoot) {
    toggleObserving(false);
  }
  var loop = function ( key ) {
    keys.push(key);
    var value = validateProp(key, propsOptions, propsData, vm);
    /* istanbul ignore else */
    if (false) { var hyphenatedKey; } else {
      defineReactive$$1(props, key, value);
    }
    // static props are already proxied on the component's prototype
    // during Vue.extend(). We only need to proxy props defined at
    // instantiation here.
    if (!(key in vm)) {
      proxy(vm, "_props", key);
    }
  };

  for (var key in propsOptions) loop( key );
  toggleObserving(true);
}

function initData (vm) {
  var data = vm.$options.data;
  data = vm._data = typeof data === 'function'
    ? getData(data, vm)
    : data || {};
  if (!isPlainObject(data)) {
    data = {};
     false && false;
  }
  // proxy data on instance
  var keys = Object.keys(data);
  var props = vm.$options.props;
  var methods = vm.$options.methods;
  var i = keys.length;
  while (i--) {
    var key = keys[i];
    if (false) {}
    if (props && hasOwn(props, key)) {
       false && false;
    } else if (!isReserved(key)) {
      proxy(vm, "_data", key);
    }
  }
  // observe data
  observe(data, true /* asRootData */);
}

function getData (data, vm) {
  // #7573 disable dep collection when invoking data getters
  pushTarget();
  try {
    return data.call(vm, vm)
  } catch (e) {
    handleError(e, vm, "data()");
    return {}
  } finally {
    popTarget();
  }
}

var computedWatcherOptions = { lazy: true };

function initComputed (vm, computed) {
  // $flow-disable-line
  var watchers = vm._computedWatchers = Object.create(null);
  // computed properties are just getters during SSR
  var isSSR = isServerRendering();

  for (var key in computed) {
    var userDef = computed[key];
    var getter = typeof userDef === 'function' ? userDef : userDef.get;
    if (false) {}

    if (!isSSR) {
      // create internal watcher for the computed property.
      watchers[key] = new Watcher(
        vm,
        getter || noop,
        noop,
        computedWatcherOptions
      );
    }

    // component-defined computed properties are already defined on the
    // component prototype. We only need to define computed properties defined
    // at instantiation here.
    if (!(key in vm)) {
      defineComputed(vm, key, userDef);
    } else if (false) {}
  }
}

function defineComputed (
  target,
  key,
  userDef
) {
  var shouldCache = !isServerRendering();
  if (typeof userDef === 'function') {
    sharedPropertyDefinition.get = shouldCache
      ? createComputedGetter(key)
      : createGetterInvoker(userDef);
    sharedPropertyDefinition.set = noop;
  } else {
    sharedPropertyDefinition.get = userDef.get
      ? shouldCache && userDef.cache !== false
        ? createComputedGetter(key)
        : createGetterInvoker(userDef.get)
      : noop;
    sharedPropertyDefinition.set = userDef.set || noop;
  }
  if (false) {}
  Object.defineProperty(target, key, sharedPropertyDefinition);
}

function createComputedGetter (key) {
  return function computedGetter () {
    var watcher = this._computedWatchers && this._computedWatchers[key];
    if (watcher) {
      if (watcher.dirty) {
        watcher.evaluate();
      }
      if (Dep.target) {
        watcher.depend();
      }
      return watcher.value
    }
  }
}

function createGetterInvoker(fn) {
  return function computedGetter () {
    return fn.call(this, this)
  }
}

function initMethods (vm, methods) {
  var props = vm.$options.props;
  for (var key in methods) {
    if (false) {}
    vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);
  }
}

function initWatch (vm, watch) {
  for (var key in watch) {
    var handler = watch[key];
    if (Array.isArray(handler)) {
      for (var i = 0; i < handler.length; i++) {
        createWatcher(vm, key, handler[i]);
      }
    } else {
      createWatcher(vm, key, handler);
    }
  }
}

function createWatcher (
  vm,
  expOrFn,
  handler,
  options
) {
  if (isPlainObject(handler)) {
    options = handler;
    handler = handler.handler;
  }
  if (typeof handler === 'string') {
    handler = vm[handler];
  }
  return vm.$watch(expOrFn, handler, options)
}

function stateMixin (Vue) {
  // flow somehow has problems with directly declared definition object
  // when using Object.defineProperty, so we have to procedurally build up
  // the object here.
  var dataDef = {};
  dataDef.get = function () { return this._data };
  var propsDef = {};
  propsDef.get = function () { return this._props };
  if (false) {}
  Object.defineProperty(Vue.prototype, '$data', dataDef);
  Object.defineProperty(Vue.prototype, '$props', propsDef);

  Vue.prototype.$set = set;
  Vue.prototype.$delete = del;

  Vue.prototype.$watch = function (
    expOrFn,
    cb,
    options
  ) {
    var vm = this;
    if (isPlainObject(cb)) {
      return createWatcher(vm, expOrFn, cb, options)
    }
    options = options || {};
    options.user = true;
    var watcher = new Watcher(vm, expOrFn, cb, options);
    if (options.immediate) {
      var info = "callback for immediate watcher \"" + (watcher.expression) + "\"";
      pushTarget();
      invokeWithErrorHandling(cb, vm, [watcher.value], vm, info);
      popTarget();
    }
    return function unwatchFn () {
      watcher.teardown();
    }
  };
}

/*  */

var uid$3 = 0;

function initMixin (Vue) {
  Vue.prototype._init = function (options) {
    var vm = this;
    // a uid
    vm._uid = uid$3++;

    var startTag, endTag;
    /* istanbul ignore if */
    if (false) {}

    // a flag to avoid this being observed
    vm._isVue = true;
    // merge options
    if (options && options._isComponent) {
      // optimize internal component instantiation
      // since dynamic options merging is pretty slow, and none of the
      // internal component options needs special treatment.
      initInternalComponent(vm, options);
    } else {
      vm.$options = mergeOptions(
        resolveConstructorOptions(vm.constructor),
        options || {},
        vm
      );
    }
    /* istanbul ignore else */
    if (false) {} else {
      vm._renderProxy = vm;
    }
    // expose real self
    vm._self = vm;
    initLifecycle(vm);
    initEvents(vm);
    initRender(vm);
    callHook(vm, 'beforeCreate');
    initInjections(vm); // resolve injections before data/props
    initState(vm);
    initProvide(vm); // resolve provide after data/props
    callHook(vm, 'created');

    /* istanbul ignore if */
    if (false) {}

    if (vm.$options.el) {
      vm.$mount(vm.$options.el);
    }
  };
}

function initInternalComponent (vm, options) {
  var opts = vm.$options = Object.create(vm.constructor.options);
  // doing this because it's faster than dynamic enumeration.
  var parentVnode = options._parentVnode;
  opts.parent = options.parent;
  opts._parentVnode = parentVnode;

  var vnodeComponentOptions = parentVnode.componentOptions;
  opts.propsData = vnodeComponentOptions.propsData;
  opts._parentListeners = vnodeComponentOptions.listeners;
  opts._renderChildren = vnodeComponentOptions.children;
  opts._componentTag = vnodeComponentOptions.tag;

  if (options.render) {
    opts.render = options.render;
    opts.staticRenderFns = options.staticRenderFns;
  }
}

function resolveConstructorOptions (Ctor) {
  var options = Ctor.options;
  if (Ctor.super) {
    var superOptions = resolveConstructorOptions(Ctor.super);
    var cachedSuperOptions = Ctor.superOptions;
    if (superOptions !== cachedSuperOptions) {
      // super option changed,
      // need to resolve new options.
      Ctor.superOptions = superOptions;
      // check if there are any late-modified/attached options (#4976)
      var modifiedOptions = resolveModifiedOptions(Ctor);
      // update base extend options
      if (modifiedOptions) {
        extend(Ctor.extendOptions, modifiedOptions);
      }
      options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);
      if (options.name) {
        options.components[options.name] = Ctor;
      }
    }
  }
  return options
}

function resolveModifiedOptions (Ctor) {
  var modified;
  var latest = Ctor.options;
  var sealed = Ctor.sealedOptions;
  for (var key in latest) {
    if (latest[key] !== sealed[key]) {
      if (!modified) { modified = {}; }
      modified[key] = latest[key];
    }
  }
  return modified
}

function Vue (options) {
  if (false
  ) {}
  this._init(options);
}

initMixin(Vue);
stateMixin(Vue);
eventsMixin(Vue);
lifecycleMixin(Vue);
renderMixin(Vue);

/*  */

function initUse (Vue) {
  Vue.use = function (plugin) {
    var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));
    if (installedPlugins.indexOf(plugin) > -1) {
      return this
    }

    // additional parameters
    var args = toArray(arguments, 1);
    args.unshift(this);
    if (typeof plugin.install === 'function') {
      plugin.install.apply(plugin, args);
    } else if (typeof plugin === 'function') {
      plugin.apply(null, args);
    }
    installedPlugins.push(plugin);
    return this
  };
}

/*  */

function initMixin$1 (Vue) {
  Vue.mixin = function (mixin) {
    this.options = mergeOptions(this.options, mixin);
    return this
  };
}

/*  */

function initExtend (Vue) {
  /**
   * Each instance constructor, including Vue, has a unique
   * cid. This enables us to create wrapped "child
   * constructors" for prototypal inheritance and cache them.
   */
  Vue.cid = 0;
  var cid = 1;

  /**
   * Class inheritance
   */
  Vue.extend = function (extendOptions) {
    extendOptions = extendOptions || {};
    var Super = this;
    var SuperId = Super.cid;
    var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});
    if (cachedCtors[SuperId]) {
      return cachedCtors[SuperId]
    }

    var name = extendOptions.name || Super.options.name;
    if (false) {}

    var Sub = function VueComponent (options) {
      this._init(options);
    };
    Sub.prototype = Object.create(Super.prototype);
    Sub.prototype.constructor = Sub;
    Sub.cid = cid++;
    Sub.options = mergeOptions(
      Super.options,
      extendOptions
    );
    Sub['super'] = Super;

    // For props and computed properties, we define the proxy getters on
    // the Vue instances at extension time, on the extended prototype. This
    // avoids Object.defineProperty calls for each instance created.
    if (Sub.options.props) {
      initProps$1(Sub);
    }
    if (Sub.options.computed) {
      initComputed$1(Sub);
    }

    // allow further extension/mixin/plugin usage
    Sub.extend = Super.extend;
    Sub.mixin = Super.mixin;
    Sub.use = Super.use;

    // create asset registers, so extended classes
    // can have their private assets too.
    ASSET_TYPES.forEach(function (type) {
      Sub[type] = Super[type];
    });
    // enable recursive self-lookup
    if (name) {
      Sub.options.components[name] = Sub;
    }

    // keep a reference to the super options at extension time.
    // later at instantiation we can check if Super's options have
    // been updated.
    Sub.superOptions = Super.options;
    Sub.extendOptions = extendOptions;
    Sub.sealedOptions = extend({}, Sub.options);

    // cache constructor
    cachedCtors[SuperId] = Sub;
    return Sub
  };
}

function initProps$1 (Comp) {
  var props = Comp.options.props;
  for (var key in props) {
    proxy(Comp.prototype, "_props", key);
  }
}

function initComputed$1 (Comp) {
  var computed = Comp.options.computed;
  for (var key in computed) {
    defineComputed(Comp.prototype, key, computed[key]);
  }
}

/*  */

function initAssetRegisters (Vue) {
  /**
   * Create asset registration methods.
   */
  ASSET_TYPES.forEach(function (type) {
    Vue[type] = function (
      id,
      definition
    ) {
      if (!definition) {
        return this.options[type + 's'][id]
      } else {
        /* istanbul ignore if */
        if (false) {}
        if (type === 'component' && isPlainObject(definition)) {
          definition.name = definition.name || id;
          definition = this.options._base.extend(definition);
        }
        if (type === 'directive' && typeof definition === 'function') {
          definition = { bind: definition, update: definition };
        }
        this.options[type + 's'][id] = definition;
        return definition
      }
    };
  });
}

/*  */





function getComponentName (opts) {
  return opts && (opts.Ctor.options.name || opts.tag)
}

function matches (pattern, name) {
  if (Array.isArray(pattern)) {
    return pattern.indexOf(name) > -1
  } else if (typeof pattern === 'string') {
    return pattern.split(',').indexOf(name) > -1
  } else if (isRegExp(pattern)) {
    return pattern.test(name)
  }
  /* istanbul ignore next */
  return false
}

function pruneCache (keepAliveInstance, filter) {
  var cache = keepAliveInstance.cache;
  var keys = keepAliveInstance.keys;
  var _vnode = keepAliveInstance._vnode;
  for (var key in cache) {
    var entry = cache[key];
    if (entry) {
      var name = entry.name;
      if (name && !filter(name)) {
        pruneCacheEntry(cache, key, keys, _vnode);
      }
    }
  }
}

function pruneCacheEntry (
  cache,
  key,
  keys,
  current
) {
  var entry = cache[key];
  if (entry && (!current || entry.tag !== current.tag)) {
    entry.componentInstance.$destroy();
  }
  cache[key] = null;
  remove(keys, key);
}

var patternTypes = [String, RegExp, Array];

var KeepAlive = {
  name: 'keep-alive',
  abstract: true,

  props: {
    include: patternTypes,
    exclude: patternTypes,
    max: [String, Number]
  },

  methods: {
    cacheVNode: function cacheVNode() {
      var ref = this;
      var cache = ref.cache;
      var keys = ref.keys;
      var vnodeToCache = ref.vnodeToCache;
      var keyToCache = ref.keyToCache;
      if (vnodeToCache) {
        var tag = vnodeToCache.tag;
        var componentInstance = vnodeToCache.componentInstance;
        var componentOptions = vnodeToCache.componentOptions;
        cache[keyToCache] = {
          name: getComponentName(componentOptions),
          tag: tag,
          componentInstance: componentInstance,
        };
        keys.push(keyToCache);
        // prune oldest entry
        if (this.max && keys.length > parseInt(this.max)) {
          pruneCacheEntry(cache, keys[0], keys, this._vnode);
        }
        this.vnodeToCache = null;
      }
    }
  },

  created: function created () {
    this.cache = Object.create(null);
    this.keys = [];
  },

  destroyed: function destroyed () {
    for (var key in this.cache) {
      pruneCacheEntry(this.cache, key, this.keys);
    }
  },

  mounted: function mounted () {
    var this$1 = this;

    this.cacheVNode();
    this.$watch('include', function (val) {
      pruneCache(this$1, function (name) { return matches(val, name); });
    });
    this.$watch('exclude', function (val) {
      pruneCache(this$1, function (name) { return !matches(val, name); });
    });
  },

  updated: function updated () {
    this.cacheVNode();
  },

  render: function render () {
    var slot = this.$slots.default;
    var vnode = getFirstComponentChild(slot);
    var componentOptions = vnode && vnode.componentOptions;
    if (componentOptions) {
      // check pattern
      var name = getComponentName(componentOptions);
      var ref = this;
      var include = ref.include;
      var exclude = ref.exclude;
      if (
        // not included
        (include && (!name || !matches(include, name))) ||
        // excluded
        (exclude && name && matches(exclude, name))
      ) {
        return vnode
      }

      var ref$1 = this;
      var cache = ref$1.cache;
      var keys = ref$1.keys;
      var key = vnode.key == null
        // same constructor may get registered as different local components
        // so cid alone is not enough (#3269)
        ? componentOptions.Ctor.cid + (componentOptions.tag ? ("::" + (componentOptions.tag)) : '')
        : vnode.key;
      if (cache[key]) {
        vnode.componentInstance = cache[key].componentInstance;
        // make current key freshest
        remove(keys, key);
        keys.push(key);
      } else {
        // delay setting the cache until update
        this.vnodeToCache = vnode;
        this.keyToCache = key;
      }

      vnode.data.keepAlive = true;
    }
    return vnode || (slot && slot[0])
  }
};

var builtInComponents = {
  KeepAlive: KeepAlive
};

/*  */

function initGlobalAPI (Vue) {
  // config
  var configDef = {};
  configDef.get = function () { return config; };
  if (false) {}
  Object.defineProperty(Vue, 'config', configDef);

  // exposed util methods.
  // NOTE: these are not considered part of the public API - avoid relying on
  // them unless you are aware of the risk.
  Vue.util = {
    warn: warn,
    extend: extend,
    mergeOptions: mergeOptions,
    defineReactive: defineReactive$$1
  };

  Vue.set = set;
  Vue.delete = del;
  Vue.nextTick = nextTick;

  // 2.6 explicit observable API
  Vue.observable = function (obj) {
    observe(obj);
    return obj
  };

  Vue.options = Object.create(null);
  ASSET_TYPES.forEach(function (type) {
    Vue.options[type + 's'] = Object.create(null);
  });

  // this is used to identify the "base" constructor to extend all plain-object
  // components with in Weex's multi-instance scenarios.
  Vue.options._base = Vue;

  extend(Vue.options.components, builtInComponents);

  initUse(Vue);
  initMixin$1(Vue);
  initExtend(Vue);
  initAssetRegisters(Vue);
}

initGlobalAPI(Vue);

Object.defineProperty(Vue.prototype, '$isServer', {
  get: isServerRendering
});

Object.defineProperty(Vue.prototype, '$ssrContext', {
  get: function get () {
    /* istanbul ignore next */
    return this.$vnode && this.$vnode.ssrContext
  }
});

// expose FunctionalRenderContext for ssr runtime helper installation
Object.defineProperty(Vue, 'FunctionalRenderContext', {
  value: FunctionalRenderContext
});

Vue.version = '2.6.14';

/*  */

// these are reserved for web because they are directly compiled away
// during template compilation
var isReservedAttr = makeMap('style,class');

// attributes that should be using props for binding
var acceptValue = makeMap('input,textarea,option,select,progress');
var mustUseProp = function (tag, type, attr) {
  return (
    (attr === 'value' && acceptValue(tag)) && type !== 'button' ||
    (attr === 'selected' && tag === 'option') ||
    (attr === 'checked' && tag === 'input') ||
    (attr === 'muted' && tag === 'video')
  )
};

var isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');

var isValidContentEditableValue = makeMap('events,caret,typing,plaintext-only');

var convertEnumeratedValue = function (key, value) {
  return isFalsyAttrValue(value) || value === 'false'
    ? 'false'
    // allow arbitrary string value for contenteditable
    : key === 'contenteditable' && isValidContentEditableValue(value)
      ? value
      : 'true'
};

var isBooleanAttr = makeMap(
  'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +
  'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +
  'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +
  'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +
  'required,reversed,scoped,seamless,selected,sortable,' +
  'truespeed,typemustmatch,visible'
);

var xlinkNS = 'http://www.w3.org/1999/xlink';

var isXlink = function (name) {
  return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'
};

var getXlinkProp = function (name) {
  return isXlink(name) ? name.slice(6, name.length) : ''
};

var isFalsyAttrValue = function (val) {
  return val == null || val === false
};

/*  */

function genClassForVnode (vnode) {
  var data = vnode.data;
  var parentNode = vnode;
  var childNode = vnode;
  while (isDef(childNode.componentInstance)) {
    childNode = childNode.componentInstance._vnode;
    if (childNode && childNode.data) {
      data = mergeClassData(childNode.data, data);
    }
  }
  while (isDef(parentNode = parentNode.parent)) {
    if (parentNode && parentNode.data) {
      data = mergeClassData(data, parentNode.data);
    }
  }
  return renderClass(data.staticClass, data.class)
}

function mergeClassData (child, parent) {
  return {
    staticClass: concat(child.staticClass, parent.staticClass),
    class: isDef(child.class)
      ? [child.class, parent.class]
      : parent.class
  }
}

function renderClass (
  staticClass,
  dynamicClass
) {
  if (isDef(staticClass) || isDef(dynamicClass)) {
    return concat(staticClass, stringifyClass(dynamicClass))
  }
  /* istanbul ignore next */
  return ''
}

function concat (a, b) {
  return a ? b ? (a + ' ' + b) : a : (b || '')
}

function stringifyClass (value) {
  if (Array.isArray(value)) {
    return stringifyArray(value)
  }
  if (isObject(value)) {
    return stringifyObject(value)
  }
  if (typeof value === 'string') {
    return value
  }
  /* istanbul ignore next */
  return ''
}

function stringifyArray (value) {
  var res = '';
  var stringified;
  for (var i = 0, l = value.length; i < l; i++) {
    if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {
      if (res) { res += ' '; }
      res += stringified;
    }
  }
  return res
}

function stringifyObject (value) {
  var res = '';
  for (var key in value) {
    if (value[key]) {
      if (res) { res += ' '; }
      res += key;
    }
  }
  return res
}

/*  */

var namespaceMap = {
  svg: 'http://www.w3.org/2000/svg',
  math: 'http://www.w3.org/1998/Math/MathML'
};

var isHTMLTag = makeMap(
  'html,body,base,head,link,meta,style,title,' +
  'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +
  'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +
  'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +
  's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +
  'embed,object,param,source,canvas,script,noscript,del,ins,' +
  'caption,col,colgroup,table,thead,tbody,td,th,tr,' +
  'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +
  'output,progress,select,textarea,' +
  'details,dialog,menu,menuitem,summary,' +
  'content,element,shadow,template,blockquote,iframe,tfoot'
);

// this map is intentionally selective, only covering SVG elements that may
// contain child elements.
var isSVG = makeMap(
  'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +
  'foreignobject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +
  'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',
  true
);

var isReservedTag = function (tag) {
  return isHTMLTag(tag) || isSVG(tag)
};

function getTagNamespace (tag) {
  if (isSVG(tag)) {
    return 'svg'
  }
  // basic support for MathML
  // note it doesn't support other MathML elements being component roots
  if (tag === 'math') {
    return 'math'
  }
}

var unknownElementCache = Object.create(null);
function isUnknownElement (tag) {
  /* istanbul ignore if */
  if (!inBrowser) {
    return true
  }
  if (isReservedTag(tag)) {
    return false
  }
  tag = tag.toLowerCase();
  /* istanbul ignore if */
  if (unknownElementCache[tag] != null) {
    return unknownElementCache[tag]
  }
  var el = document.createElement(tag);
  if (tag.indexOf('-') > -1) {
    // http://stackoverflow.com/a/28210364/1070244
    return (unknownElementCache[tag] = (
      el.constructor === window.HTMLUnknownElement ||
      el.constructor === window.HTMLElement
    ))
  } else {
    return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))
  }
}

var isTextInputType = makeMap('text,number,password,search,email,tel,url');

/*  */

/**
 * Query an element selector if it's not an element already.
 */
function query (el) {
  if (typeof el === 'string') {
    var selected = document.querySelector(el);
    if (!selected) {
       false && false;
      return document.createElement('div')
    }
    return selected
  } else {
    return el
  }
}

/*  */

function createElement$1 (tagName, vnode) {
  var elm = document.createElement(tagName);
  if (tagName !== 'select') {
    return elm
  }
  // false or null will remove the attribute but undefined will not
  if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {
    elm.setAttribute('multiple', 'multiple');
  }
  return elm
}

function createElementNS (namespace, tagName) {
  return document.createElementNS(namespaceMap[namespace], tagName)
}

function createTextNode (text) {
  return document.createTextNode(text)
}

function createComment (text) {
  return document.createComment(text)
}

function insertBefore (parentNode, newNode, referenceNode) {
  parentNode.insertBefore(newNode, referenceNode);
}

function removeChild (node, child) {
  node.removeChild(child);
}

function appendChild (node, child) {
  node.appendChild(child);
}

function parentNode (node) {
  return node.parentNode
}

function nextSibling (node) {
  return node.nextSibling
}

function tagName (node) {
  return node.tagName
}

function setTextContent (node, text) {
  node.textContent = text;
}

function setStyleScope (node, scopeId) {
  node.setAttribute(scopeId, '');
}

var nodeOps = /*#__PURE__*/Object.freeze({
  createElement: createElement$1,
  createElementNS: createElementNS,
  createTextNode: createTextNode,
  createComment: createComment,
  insertBefore: insertBefore,
  removeChild: removeChild,
  appendChild: appendChild,
  parentNode: parentNode,
  nextSibling: nextSibling,
  tagName: tagName,
  setTextContent: setTextContent,
  setStyleScope: setStyleScope
});

/*  */

var ref = {
  create: function create (_, vnode) {
    registerRef(vnode);
  },
  update: function update (oldVnode, vnode) {
    if (oldVnode.data.ref !== vnode.data.ref) {
      registerRef(oldVnode, true);
      registerRef(vnode);
    }
  },
  destroy: function destroy (vnode) {
    registerRef(vnode, true);
  }
};

function registerRef (vnode, isRemoval) {
  var key = vnode.data.ref;
  if (!isDef(key)) { return }

  var vm = vnode.context;
  var ref = vnode.componentInstance || vnode.elm;
  var refs = vm.$refs;
  if (isRemoval) {
    if (Array.isArray(refs[key])) {
      remove(refs[key], ref);
    } else if (refs[key] === ref) {
      refs[key] = undefined;
    }
  } else {
    if (vnode.data.refInFor) {
      if (!Array.isArray(refs[key])) {
        refs[key] = [ref];
      } else if (refs[key].indexOf(ref) < 0) {
        // $flow-disable-line
        refs[key].push(ref);
      }
    } else {
      refs[key] = ref;
    }
  }
}

/**
 * Virtual DOM patching algorithm based on Snabbdom by
 * Simon Friis Vindum (@paldepind)
 * Licensed under the MIT License
 * https://github.com/paldepind/snabbdom/blob/master/LICENSE
 *
 * modified by Evan You (@yyx990803)
 *
 * Not type-checking this because this file is perf-critical and the cost
 * of making flow understand it is not worth it.
 */

var emptyNode = new VNode('', {}, []);

var hooks = ['create', 'activate', 'update', 'remove', 'destroy'];

function sameVnode (a, b) {
  return (
    a.key === b.key &&
    a.asyncFactory === b.asyncFactory && (
      (
        a.tag === b.tag &&
        a.isComment === b.isComment &&
        isDef(a.data) === isDef(b.data) &&
        sameInputType(a, b)
      ) || (
        isTrue(a.isAsyncPlaceholder) &&
        isUndef(b.asyncFactory.error)
      )
    )
  )
}

function sameInputType (a, b) {
  if (a.tag !== 'input') { return true }
  var i;
  var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;
  var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;
  return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)
}

function createKeyToOldIdx (children, beginIdx, endIdx) {
  var i, key;
  var map = {};
  for (i = beginIdx; i <= endIdx; ++i) {
    key = children[i].key;
    if (isDef(key)) { map[key] = i; }
  }
  return map
}

function createPatchFunction (backend) {
  var i, j;
  var cbs = {};

  var modules = backend.modules;
  var nodeOps = backend.nodeOps;

  for (i = 0; i < hooks.length; ++i) {
    cbs[hooks[i]] = [];
    for (j = 0; j < modules.length; ++j) {
      if (isDef(modules[j][hooks[i]])) {
        cbs[hooks[i]].push(modules[j][hooks[i]]);
      }
    }
  }

  function emptyNodeAt (elm) {
    return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)
  }

  function createRmCb (childElm, listeners) {
    function remove$$1 () {
      if (--remove$$1.listeners === 0) {
        removeNode(childElm);
      }
    }
    remove$$1.listeners = listeners;
    return remove$$1
  }

  function removeNode (el) {
    var parent = nodeOps.parentNode(el);
    // element may have already been removed due to v-html / v-text
    if (isDef(parent)) {
      nodeOps.removeChild(parent, el);
    }
  }

  function isUnknownElement$$1 (vnode, inVPre) {
    return (
      !inVPre &&
      !vnode.ns &&
      !(
        config.ignoredElements.length &&
        config.ignoredElements.some(function (ignore) {
          return isRegExp(ignore)
            ? ignore.test(vnode.tag)
            : ignore === vnode.tag
        })
      ) &&
      config.isUnknownElement(vnode.tag)
    )
  }

  var creatingElmInVPre = 0;

  function createElm (
    vnode,
    insertedVnodeQueue,
    parentElm,
    refElm,
    nested,
    ownerArray,
    index
  ) {
    if (isDef(vnode.elm) && isDef(ownerArray)) {
      // This vnode was used in a previous render!
      // now it's used as a new node, overwriting its elm would cause
      // potential patch errors down the road when it's used as an insertion
      // reference node. Instead, we clone the node on-demand before creating
      // associated DOM element for it.
      vnode = ownerArray[index] = cloneVNode(vnode);
    }

    vnode.isRootInsert = !nested; // for transition enter check
    if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {
      return
    }

    var data = vnode.data;
    var children = vnode.children;
    var tag = vnode.tag;
    if (isDef(tag)) {
      if (false) {}

      vnode.elm = vnode.ns
        ? nodeOps.createElementNS(vnode.ns, tag)
        : nodeOps.createElement(tag, vnode);
      setScope(vnode);

      /* istanbul ignore if */
      {
        createChildren(vnode, children, insertedVnodeQueue);
        if (isDef(data)) {
          invokeCreateHooks(vnode, insertedVnodeQueue);
        }
        insert(parentElm, vnode.elm, refElm);
      }

      if (false) {}
    } else if (isTrue(vnode.isComment)) {
      vnode.elm = nodeOps.createComment(vnode.text);
      insert(parentElm, vnode.elm, refElm);
    } else {
      vnode.elm = nodeOps.createTextNode(vnode.text);
      insert(parentElm, vnode.elm, refElm);
    }
  }

  function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {
    var i = vnode.data;
    if (isDef(i)) {
      var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;
      if (isDef(i = i.hook) && isDef(i = i.init)) {
        i(vnode, false /* hydrating */);
      }
      // after calling the init hook, if the vnode is a child component
      // it should've created a child instance and mounted it. the child
      // component also has set the placeholder vnode's elm.
      // in that case we can just return the element and be done.
      if (isDef(vnode.componentInstance)) {
        initComponent(vnode, insertedVnodeQueue);
        insert(parentElm, vnode.elm, refElm);
        if (isTrue(isReactivated)) {
          reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);
        }
        return true
      }
    }
  }

  function initComponent (vnode, insertedVnodeQueue) {
    if (isDef(vnode.data.pendingInsert)) {
      insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);
      vnode.data.pendingInsert = null;
    }
    vnode.elm = vnode.componentInstance.$el;
    if (isPatchable(vnode)) {
      invokeCreateHooks(vnode, insertedVnodeQueue);
      setScope(vnode);
    } else {
      // empty component root.
      // skip all element-related modules except for ref (#3455)
      registerRef(vnode);
      // make sure to invoke the insert hook
      insertedVnodeQueue.push(vnode);
    }
  }

  function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {
    var i;
    // hack for #4339: a reactivated component with inner transition
    // does not trigger because the inner node's created hooks are not called
    // again. It's not ideal to involve module-specific logic in here but
    // there doesn't seem to be a better way to do it.
    var innerNode = vnode;
    while (innerNode.componentInstance) {
      innerNode = innerNode.componentInstance._vnode;
      if (isDef(i = innerNode.data) && isDef(i = i.transition)) {
        for (i = 0; i < cbs.activate.length; ++i) {
          cbs.activate[i](emptyNode, innerNode);
        }
        insertedVnodeQueue.push(innerNode);
        break
      }
    }
    // unlike a newly created component,
    // a reactivated keep-alive component doesn't insert itself
    insert(parentElm, vnode.elm, refElm);
  }

  function insert (parent, elm, ref$$1) {
    if (isDef(parent)) {
      if (isDef(ref$$1)) {
        if (nodeOps.parentNode(ref$$1) === parent) {
          nodeOps.insertBefore(parent, elm, ref$$1);
        }
      } else {
        nodeOps.appendChild(parent, elm);
      }
    }
  }

  function createChildren (vnode, children, insertedVnodeQueue) {
    if (Array.isArray(children)) {
      if (false) {}
      for (var i = 0; i < children.length; ++i) {
        createElm(children[i], insertedVnodeQueue, vnode.elm, null, true, children, i);
      }
    } else if (isPrimitive(vnode.text)) {
      nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(String(vnode.text)));
    }
  }

  function isPatchable (vnode) {
    while (vnode.componentInstance) {
      vnode = vnode.componentInstance._vnode;
    }
    return isDef(vnode.tag)
  }

  function invokeCreateHooks (vnode, insertedVnodeQueue) {
    for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {
      cbs.create[i$1](emptyNode, vnode);
    }
    i = vnode.data.hook; // Reuse variable
    if (isDef(i)) {
      if (isDef(i.create)) { i.create(emptyNode, vnode); }
      if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }
    }
  }

  // set scope id attribute for scoped CSS.
  // this is implemented as a special case to avoid the overhead
  // of going through the normal attribute patching process.
  function setScope (vnode) {
    var i;
    if (isDef(i = vnode.fnScopeId)) {
      nodeOps.setStyleScope(vnode.elm, i);
    } else {
      var ancestor = vnode;
      while (ancestor) {
        if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {
          nodeOps.setStyleScope(vnode.elm, i);
        }
        ancestor = ancestor.parent;
      }
    }
    // for slot content they should also get the scopeId from the host instance.
    if (isDef(i = activeInstance) &&
      i !== vnode.context &&
      i !== vnode.fnContext &&
      isDef(i = i.$options._scopeId)
    ) {
      nodeOps.setStyleScope(vnode.elm, i);
    }
  }

  function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {
    for (; startIdx <= endIdx; ++startIdx) {
      createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm, false, vnodes, startIdx);
    }
  }

  function invokeDestroyHook (vnode) {
    var i, j;
    var data = vnode.data;
    if (isDef(data)) {
      if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }
      for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }
    }
    if (isDef(i = vnode.children)) {
      for (j = 0; j < vnode.children.length; ++j) {
        invokeDestroyHook(vnode.children[j]);
      }
    }
  }

  function removeVnodes (vnodes, startIdx, endIdx) {
    for (; startIdx <= endIdx; ++startIdx) {
      var ch = vnodes[startIdx];
      if (isDef(ch)) {
        if (isDef(ch.tag)) {
          removeAndInvokeRemoveHook(ch);
          invokeDestroyHook(ch);
        } else { // Text node
          removeNode(ch.elm);
        }
      }
    }
  }

  function removeAndInvokeRemoveHook (vnode, rm) {
    if (isDef(rm) || isDef(vnode.data)) {
      var i;
      var listeners = cbs.remove.length + 1;
      if (isDef(rm)) {
        // we have a recursively passed down rm callback
        // increase the listeners count
        rm.listeners += listeners;
      } else {
        // directly removing
        rm = createRmCb(vnode.elm, listeners);
      }
      // recursively invoke hooks on child component root node
      if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {
        removeAndInvokeRemoveHook(i, rm);
      }
      for (i = 0; i < cbs.remove.length; ++i) {
        cbs.remove[i](vnode, rm);
      }
      if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {
        i(vnode, rm);
      } else {
        rm();
      }
    } else {
      removeNode(vnode.elm);
    }
  }

  function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {
    var oldStartIdx = 0;
    var newStartIdx = 0;
    var oldEndIdx = oldCh.length - 1;
    var oldStartVnode = oldCh[0];
    var oldEndVnode = oldCh[oldEndIdx];
    var newEndIdx = newCh.length - 1;
    var newStartVnode = newCh[0];
    var newEndVnode = newCh[newEndIdx];
    var oldKeyToIdx, idxInOld, vnodeToMove, refElm;

    // removeOnly is a special flag used only by <transition-group>
    // to ensure removed elements stay in correct relative positions
    // during leaving transitions
    var canMove = !removeOnly;

    if (false) {}

    while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {
      if (isUndef(oldStartVnode)) {
        oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left
      } else if (isUndef(oldEndVnode)) {
        oldEndVnode = oldCh[--oldEndIdx];
      } else if (sameVnode(oldStartVnode, newStartVnode)) {
        patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);
        oldStartVnode = oldCh[++oldStartIdx];
        newStartVnode = newCh[++newStartIdx];
      } else if (sameVnode(oldEndVnode, newEndVnode)) {
        patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);
        oldEndVnode = oldCh[--oldEndIdx];
        newEndVnode = newCh[--newEndIdx];
      } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right
        patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);
        canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));
        oldStartVnode = oldCh[++oldStartIdx];
        newEndVnode = newCh[--newEndIdx];
      } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left
        patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);
        canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);
        oldEndVnode = oldCh[--oldEndIdx];
        newStartVnode = newCh[++newStartIdx];
      } else {
        if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }
        idxInOld = isDef(newStartVnode.key)
          ? oldKeyToIdx[newStartVnode.key]
          : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);
        if (isUndef(idxInOld)) { // New element
          createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);
        } else {
          vnodeToMove = oldCh[idxInOld];
          if (sameVnode(vnodeToMove, newStartVnode)) {
            patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);
            oldCh[idxInOld] = undefined;
            canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);
          } else {
            // same key but different element. treat as new element
            createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);
          }
        }
        newStartVnode = newCh[++newStartIdx];
      }
    }
    if (oldStartIdx > oldEndIdx) {
      refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;
      addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);
    } else if (newStartIdx > newEndIdx) {
      removeVnodes(oldCh, oldStartIdx, oldEndIdx);
    }
  }

  function checkDuplicateKeys (children) {
    var seenKeys = {};
    for (var i = 0; i < children.length; i++) {
      var vnode = children[i];
      var key = vnode.key;
      if (isDef(key)) {
        if (seenKeys[key]) {
          warn(
            ("Duplicate keys detected: '" + key + "'. This may cause an update error."),
            vnode.context
          );
        } else {
          seenKeys[key] = true;
        }
      }
    }
  }

  function findIdxInOld (node, oldCh, start, end) {
    for (var i = start; i < end; i++) {
      var c = oldCh[i];
      if (isDef(c) && sameVnode(node, c)) { return i }
    }
  }

  function patchVnode (
    oldVnode,
    vnode,
    insertedVnodeQueue,
    ownerArray,
    index,
    removeOnly
  ) {
    if (oldVnode === vnode) {
      return
    }

    if (isDef(vnode.elm) && isDef(ownerArray)) {
      // clone reused vnode
      vnode = ownerArray[index] = cloneVNode(vnode);
    }

    var elm = vnode.elm = oldVnode.elm;

    if (isTrue(oldVnode.isAsyncPlaceholder)) {
      if (isDef(vnode.asyncFactory.resolved)) {
        hydrate(oldVnode.elm, vnode, insertedVnodeQueue);
      } else {
        vnode.isAsyncPlaceholder = true;
      }
      return
    }

    // reuse element for static trees.
    // note we only do this if the vnode is cloned -
    // if the new node is not cloned it means the render functions have been
    // reset by the hot-reload-api and we need to do a proper re-render.
    if (isTrue(vnode.isStatic) &&
      isTrue(oldVnode.isStatic) &&
      vnode.key === oldVnode.key &&
      (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))
    ) {
      vnode.componentInstance = oldVnode.componentInstance;
      return
    }

    var i;
    var data = vnode.data;
    if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {
      i(oldVnode, vnode);
    }

    var oldCh = oldVnode.children;
    var ch = vnode.children;
    if (isDef(data) && isPatchable(vnode)) {
      for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }
      if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }
    }
    if (isUndef(vnode.text)) {
      if (isDef(oldCh) && isDef(ch)) {
        if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }
      } else if (isDef(ch)) {
        if (false) {}
        if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }
        addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);
      } else if (isDef(oldCh)) {
        removeVnodes(oldCh, 0, oldCh.length - 1);
      } else if (isDef(oldVnode.text)) {
        nodeOps.setTextContent(elm, '');
      }
    } else if (oldVnode.text !== vnode.text) {
      nodeOps.setTextContent(elm, vnode.text);
    }
    if (isDef(data)) {
      if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }
    }
  }

  function invokeInsertHook (vnode, queue, initial) {
    // delay insert hooks for component root nodes, invoke them after the
    // element is really inserted
    if (isTrue(initial) && isDef(vnode.parent)) {
      vnode.parent.data.pendingInsert = queue;
    } else {
      for (var i = 0; i < queue.length; ++i) {
        queue[i].data.hook.insert(queue[i]);
      }
    }
  }

  var hydrationBailed = false;
  // list of modules that can skip create hook during hydration because they
  // are already rendered on the client or has no need for initialization
  // Note: style is excluded because it relies on initial clone for future
  // deep updates (#7063).
  var isRenderedModule = makeMap('attrs,class,staticClass,staticStyle,key');

  // Note: this is a browser-only function so we can assume elms are DOM nodes.
  function hydrate (elm, vnode, insertedVnodeQueue, inVPre) {
    var i;
    var tag = vnode.tag;
    var data = vnode.data;
    var children = vnode.children;
    inVPre = inVPre || (data && data.pre);
    vnode.elm = elm;

    if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {
      vnode.isAsyncPlaceholder = true;
      return true
    }
    // assert node match
    if (false) {}
    if (isDef(data)) {
      if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }
      if (isDef(i = vnode.componentInstance)) {
        // child component. it should have hydrated its own tree.
        initComponent(vnode, insertedVnodeQueue);
        return true
      }
    }
    if (isDef(tag)) {
      if (isDef(children)) {
        // empty element, allow client to pick up and populate children
        if (!elm.hasChildNodes()) {
          createChildren(vnode, children, insertedVnodeQueue);
        } else {
          // v-html and domProps: innerHTML
          if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {
            if (i !== elm.innerHTML) {
              /* istanbul ignore if */
              if (false
              ) {}
              return false
            }
          } else {
            // iterate and compare children lists
            var childrenMatch = true;
            var childNode = elm.firstChild;
            for (var i$1 = 0; i$1 < children.length; i$1++) {
              if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue, inVPre)) {
                childrenMatch = false;
                break
              }
              childNode = childNode.nextSibling;
            }
            // if childNode is not null, it means the actual childNodes list is
            // longer than the virtual children list.
            if (!childrenMatch || childNode) {
              /* istanbul ignore if */
              if (false
              ) {}
              return false
            }
          }
        }
      }
      if (isDef(data)) {
        var fullInvoke = false;
        for (var key in data) {
          if (!isRenderedModule(key)) {
            fullInvoke = true;
            invokeCreateHooks(vnode, insertedVnodeQueue);
            break
          }
        }
        if (!fullInvoke && data['class']) {
          // ensure collecting deps for deep class bindings for future updates
          traverse(data['class']);
        }
      }
    } else if (elm.data !== vnode.text) {
      elm.data = vnode.text;
    }
    return true
  }

  function assertNodeMatch (node, vnode, inVPre) {
    if (isDef(vnode.tag)) {
      return vnode.tag.indexOf('vue-component') === 0 || (
        !isUnknownElement$$1(vnode, inVPre) &&
        vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())
      )
    } else {
      return node.nodeType === (vnode.isComment ? 8 : 3)
    }
  }

  return function patch (oldVnode, vnode, hydrating, removeOnly) {
    if (isUndef(vnode)) {
      if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }
      return
    }

    var isInitialPatch = false;
    var insertedVnodeQueue = [];

    if (isUndef(oldVnode)) {
      // empty mount (likely as component), create new root element
      isInitialPatch = true;
      createElm(vnode, insertedVnodeQueue);
    } else {
      var isRealElement = isDef(oldVnode.nodeType);
      if (!isRealElement && sameVnode(oldVnode, vnode)) {
        // patch existing root node
        patchVnode(oldVnode, vnode, insertedVnodeQueue, null, null, removeOnly);
      } else {
        if (isRealElement) {
          // mounting to a real element
          // check if this is server-rendered content and if we can perform
          // a successful hydration.
          if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {
            oldVnode.removeAttribute(SSR_ATTR);
            hydrating = true;
          }
          if (isTrue(hydrating)) {
            if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {
              invokeInsertHook(vnode, insertedVnodeQueue, true);
              return oldVnode
            } else if (false) {}
          }
          // either not server-rendered, or hydration failed.
          // create an empty node and replace it
          oldVnode = emptyNodeAt(oldVnode);
        }

        // replacing existing element
        var oldElm = oldVnode.elm;
        var parentElm = nodeOps.parentNode(oldElm);

        // create new node
        createElm(
          vnode,
          insertedVnodeQueue,
          // extremely rare edge case: do not insert if old element is in a
          // leaving transition. Only happens when combining transition +
          // keep-alive + HOCs. (#4590)
          oldElm._leaveCb ? null : parentElm,
          nodeOps.nextSibling(oldElm)
        );

        // update parent placeholder node element, recursively
        if (isDef(vnode.parent)) {
          var ancestor = vnode.parent;
          var patchable = isPatchable(vnode);
          while (ancestor) {
            for (var i = 0; i < cbs.destroy.length; ++i) {
              cbs.destroy[i](ancestor);
            }
            ancestor.elm = vnode.elm;
            if (patchable) {
              for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {
                cbs.create[i$1](emptyNode, ancestor);
              }
              // #6513
              // invoke insert hooks that may have been merged by create hooks.
              // e.g. for directives that uses the "inserted" hook.
              var insert = ancestor.data.hook.insert;
              if (insert.merged) {
                // start at index 1 to avoid re-invoking component mounted hook
                for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {
                  insert.fns[i$2]();
                }
              }
            } else {
              registerRef(ancestor);
            }
            ancestor = ancestor.parent;
          }
        }

        // destroy old node
        if (isDef(parentElm)) {
          removeVnodes([oldVnode], 0, 0);
        } else if (isDef(oldVnode.tag)) {
          invokeDestroyHook(oldVnode);
        }
      }
    }

    invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);
    return vnode.elm
  }
}

/*  */

var directives = {
  create: updateDirectives,
  update: updateDirectives,
  destroy: function unbindDirectives (vnode) {
    updateDirectives(vnode, emptyNode);
  }
};

function updateDirectives (oldVnode, vnode) {
  if (oldVnode.data.directives || vnode.data.directives) {
    _update(oldVnode, vnode);
  }
}

function _update (oldVnode, vnode) {
  var isCreate = oldVnode === emptyNode;
  var isDestroy = vnode === emptyNode;
  var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);
  var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);

  var dirsWithInsert = [];
  var dirsWithPostpatch = [];

  var key, oldDir, dir;
  for (key in newDirs) {
    oldDir = oldDirs[key];
    dir = newDirs[key];
    if (!oldDir) {
      // new directive, bind
      callHook$1(dir, 'bind', vnode, oldVnode);
      if (dir.def && dir.def.inserted) {
        dirsWithInsert.push(dir);
      }
    } else {
      // existing directive, update
      dir.oldValue = oldDir.value;
      dir.oldArg = oldDir.arg;
      callHook$1(dir, 'update', vnode, oldVnode);
      if (dir.def && dir.def.componentUpdated) {
        dirsWithPostpatch.push(dir);
      }
    }
  }

  if (dirsWithInsert.length) {
    var callInsert = function () {
      for (var i = 0; i < dirsWithInsert.length; i++) {
        callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);
      }
    };
    if (isCreate) {
      mergeVNodeHook(vnode, 'insert', callInsert);
    } else {
      callInsert();
    }
  }

  if (dirsWithPostpatch.length) {
    mergeVNodeHook(vnode, 'postpatch', function () {
      for (var i = 0; i < dirsWithPostpatch.length; i++) {
        callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);
      }
    });
  }

  if (!isCreate) {
    for (key in oldDirs) {
      if (!newDirs[key]) {
        // no longer present, unbind
        callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);
      }
    }
  }
}

var emptyModifiers = Object.create(null);

function normalizeDirectives$1 (
  dirs,
  vm
) {
  var res = Object.create(null);
  if (!dirs) {
    // $flow-disable-line
    return res
  }
  var i, dir;
  for (i = 0; i < dirs.length; i++) {
    dir = dirs[i];
    if (!dir.modifiers) {
      // $flow-disable-line
      dir.modifiers = emptyModifiers;
    }
    res[getRawDirName(dir)] = dir;
    dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);
  }
  // $flow-disable-line
  return res
}

function getRawDirName (dir) {
  return dir.rawName || ((dir.name) + "." + (Object.keys(dir.modifiers || {}).join('.')))
}

function callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {
  var fn = dir.def && dir.def[hook];
  if (fn) {
    try {
      fn(vnode.elm, dir, vnode, oldVnode, isDestroy);
    } catch (e) {
      handleError(e, vnode.context, ("directive " + (dir.name) + " " + hook + " hook"));
    }
  }
}

var baseModules = [
  ref,
  directives
];

/*  */

function updateAttrs (oldVnode, vnode) {
  var opts = vnode.componentOptions;
  if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {
    return
  }
  if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {
    return
  }
  var key, cur, old;
  var elm = vnode.elm;
  var oldAttrs = oldVnode.data.attrs || {};
  var attrs = vnode.data.attrs || {};
  // clone observed objects, as the user probably wants to mutate it
  if (isDef(attrs.__ob__)) {
    attrs = vnode.data.attrs = extend({}, attrs);
  }

  for (key in attrs) {
    cur = attrs[key];
    old = oldAttrs[key];
    if (old !== cur) {
      setAttr(elm, key, cur, vnode.data.pre);
    }
  }
  // #4391: in IE9, setting type can reset value for input[type=radio]
  // #6666: IE/Edge forces progress value down to 1 before setting a max
  /* istanbul ignore if */
  if ((isIE || isEdge) && attrs.value !== oldAttrs.value) {
    setAttr(elm, 'value', attrs.value);
  }
  for (key in oldAttrs) {
    if (isUndef(attrs[key])) {
      if (isXlink(key)) {
        elm.removeAttributeNS(xlinkNS, getXlinkProp(key));
      } else if (!isEnumeratedAttr(key)) {
        elm.removeAttribute(key);
      }
    }
  }
}

function setAttr (el, key, value, isInPre) {
  if (isInPre || el.tagName.indexOf('-') > -1) {
    baseSetAttr(el, key, value);
  } else if (isBooleanAttr(key)) {
    // set attribute for blank value
    // e.g. <option disabled>Select one</option>
    if (isFalsyAttrValue(value)) {
      el.removeAttribute(key);
    } else {
      // technically allowfullscreen is a boolean attribute for <iframe>,
      // but Flash expects a value of "true" when used on <embed> tag
      value = key === 'allowfullscreen' && el.tagName === 'EMBED'
        ? 'true'
        : key;
      el.setAttribute(key, value);
    }
  } else if (isEnumeratedAttr(key)) {
    el.setAttribute(key, convertEnumeratedValue(key, value));
  } else if (isXlink(key)) {
    if (isFalsyAttrValue(value)) {
      el.removeAttributeNS(xlinkNS, getXlinkProp(key));
    } else {
      el.setAttributeNS(xlinkNS, key, value);
    }
  } else {
    baseSetAttr(el, key, value);
  }
}

function baseSetAttr (el, key, value) {
  if (isFalsyAttrValue(value)) {
    el.removeAttribute(key);
  } else {
    // #7138: IE10 & 11 fires input event when setting placeholder on
    // <textarea>... block the first input event and remove the blocker
    // immediately.
    /* istanbul ignore if */
    if (
      isIE && !isIE9 &&
      el.tagName === 'TEXTAREA' &&
      key === 'placeholder' && value !== '' && !el.__ieph
    ) {
      var blocker = function (e) {
        e.stopImmediatePropagation();
        el.removeEventListener('input', blocker);
      };
      el.addEventListener('input', blocker);
      // $flow-disable-line
      el.__ieph = true; /* IE placeholder patched */
    }
    el.setAttribute(key, value);
  }
}

var attrs = {
  create: updateAttrs,
  update: updateAttrs
};

/*  */

function updateClass (oldVnode, vnode) {
  var el = vnode.elm;
  var data = vnode.data;
  var oldData = oldVnode.data;
  if (
    isUndef(data.staticClass) &&
    isUndef(data.class) && (
      isUndef(oldData) || (
        isUndef(oldData.staticClass) &&
        isUndef(oldData.class)
      )
    )
  ) {
    return
  }

  var cls = genClassForVnode(vnode);

  // handle transition classes
  var transitionClass = el._transitionClasses;
  if (isDef(transitionClass)) {
    cls = concat(cls, stringifyClass(transitionClass));
  }

  // set the class
  if (cls !== el._prevClass) {
    el.setAttribute('class', cls);
    el._prevClass = cls;
  }
}

var klass = {
  create: updateClass,
  update: updateClass
};

/*  */

/*  */

/*  */

/*  */

// in some cases, the event used has to be determined at runtime
// so we used some reserved tokens during compile.
var RANGE_TOKEN = '__r';
var CHECKBOX_RADIO_TOKEN = '__c';

/*  */

// normalize v-model event tokens that can only be determined at runtime.
// it's important to place the event as the first in the array because
// the whole point is ensuring the v-model callback gets called before
// user-attached handlers.
function normalizeEvents (on) {
  /* istanbul ignore if */
  if (isDef(on[RANGE_TOKEN])) {
    // IE input[type=range] only supports `change` event
    var event = isIE ? 'change' : 'input';
    on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);
    delete on[RANGE_TOKEN];
  }
  // This was originally intended to fix #4521 but no longer necessary
  // after 2.5. Keeping it for backwards compat with generated code from < 2.4
  /* istanbul ignore if */
  if (isDef(on[CHECKBOX_RADIO_TOKEN])) {
    on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);
    delete on[CHECKBOX_RADIO_TOKEN];
  }
}

var target$1;

function createOnceHandler$1 (event, handler, capture) {
  var _target = target$1; // save current target element in closure
  return function onceHandler () {
    var res = handler.apply(null, arguments);
    if (res !== null) {
      remove$2(event, onceHandler, capture, _target);
    }
  }
}

// #9446: Firefox <= 53 (in particular, ESR 52) has incorrect Event.timeStamp
// implementation and does not fire microtasks in between event propagation, so
// safe to exclude.
var useMicrotaskFix = isUsingMicroTask && !(isFF && Number(isFF[1]) <= 53);

function add$1 (
  name,
  handler,
  capture,
  passive
) {
  // async edge case #6566: inner click event triggers patch, event handler
  // attached to outer element during patch, and triggered again. This
  // happens because browsers fire microtask ticks between event propagation.
  // the solution is simple: we save the timestamp when a handler is attached,
  // and the handler would only fire if the event passed to it was fired
  // AFTER it was attached.
  if (useMicrotaskFix) {
    var attachedTimestamp = currentFlushTimestamp;
    var original = handler;
    handler = original._wrapper = function (e) {
      if (
        // no bubbling, should always fire.
        // this is just a safety net in case event.timeStamp is unreliable in
        // certain weird environments...
        e.target === e.currentTarget ||
        // event is fired after handler attachment
        e.timeStamp >= attachedTimestamp ||
        // bail for environments that have buggy event.timeStamp implementations
        // #9462 iOS 9 bug: event.timeStamp is 0 after history.pushState
        // #9681 QtWebEngine event.timeStamp is negative value
        e.timeStamp <= 0 ||
        // #9448 bail if event is fired in another document in a multi-page
        // electron/nw.js app, since event.timeStamp will be using a different
        // starting reference
        e.target.ownerDocument !== document
      ) {
        return original.apply(this, arguments)
      }
    };
  }
  target$1.addEventListener(
    name,
    handler,
    supportsPassive
      ? { capture: capture, passive: passive }
      : capture
  );
}

function remove$2 (
  name,
  handler,
  capture,
  _target
) {
  (_target || target$1).removeEventListener(
    name,
    handler._wrapper || handler,
    capture
  );
}

function updateDOMListeners (oldVnode, vnode) {
  if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {
    return
  }
  var on = vnode.data.on || {};
  var oldOn = oldVnode.data.on || {};
  target$1 = vnode.elm;
  normalizeEvents(on);
  updateListeners(on, oldOn, add$1, remove$2, createOnceHandler$1, vnode.context);
  target$1 = undefined;
}

var events = {
  create: updateDOMListeners,
  update: updateDOMListeners
};

/*  */

var svgContainer;

function updateDOMProps (oldVnode, vnode) {
  if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {
    return
  }
  var key, cur;
  var elm = vnode.elm;
  var oldProps = oldVnode.data.domProps || {};
  var props = vnode.data.domProps || {};
  // clone observed objects, as the user probably wants to mutate it
  if (isDef(props.__ob__)) {
    props = vnode.data.domProps = extend({}, props);
  }

  for (key in oldProps) {
    if (!(key in props)) {
      elm[key] = '';
    }
  }

  for (key in props) {
    cur = props[key];
    // ignore children if the node has textContent or innerHTML,
    // as these will throw away existing DOM nodes and cause removal errors
    // on subsequent patches (#3360)
    if (key === 'textContent' || key === 'innerHTML') {
      if (vnode.children) { vnode.children.length = 0; }
      if (cur === oldProps[key]) { continue }
      // #6601 work around Chrome version <= 55 bug where single textNode
      // replaced by innerHTML/textContent retains its parentNode property
      if (elm.childNodes.length === 1) {
        elm.removeChild(elm.childNodes[0]);
      }
    }

    if (key === 'value' && elm.tagName !== 'PROGRESS') {
      // store value as _value as well since
      // non-string values will be stringified
      elm._value = cur;
      // avoid resetting cursor position when value is the same
      var strCur = isUndef(cur) ? '' : String(cur);
      if (shouldUpdateValue(elm, strCur)) {
        elm.value = strCur;
      }
    } else if (key === 'innerHTML' && isSVG(elm.tagName) && isUndef(elm.innerHTML)) {
      // IE doesn't support innerHTML for SVG elements
      svgContainer = svgContainer || document.createElement('div');
      svgContainer.innerHTML = "<svg>" + cur + "</svg>";
      var svg = svgContainer.firstChild;
      while (elm.firstChild) {
        elm.removeChild(elm.firstChild);
      }
      while (svg.firstChild) {
        elm.appendChild(svg.firstChild);
      }
    } else if (
      // skip the update if old and new VDOM state is the same.
      // `value` is handled separately because the DOM value may be temporarily
      // out of sync with VDOM state due to focus, composition and modifiers.
      // This  #4521 by skipping the unnecessary `checked` update.
      cur !== oldProps[key]
    ) {
      // some property updates can throw
      // e.g. `value` on <progress> w/ non-finite value
      try {
        elm[key] = cur;
      } catch (e) {}
    }
  }
}

// check platforms/web/util/attrs.js acceptValue


function shouldUpdateValue (elm, checkVal) {
  return (!elm.composing && (
    elm.tagName === 'OPTION' ||
    isNotInFocusAndDirty(elm, checkVal) ||
    isDirtyWithModifiers(elm, checkVal)
  ))
}

function isNotInFocusAndDirty (elm, checkVal) {
  // return true when textbox (.number and .trim) loses focus and its value is
  // not equal to the updated value
  var notInFocus = true;
  // #6157
  // work around IE bug when accessing document.activeElement in an iframe
  try { notInFocus = document.activeElement !== elm; } catch (e) {}
  return notInFocus && elm.value !== checkVal
}

function isDirtyWithModifiers (elm, newVal) {
  var value = elm.value;
  var modifiers = elm._vModifiers; // injected by v-model runtime
  if (isDef(modifiers)) {
    if (modifiers.number) {
      return toNumber(value) !== toNumber(newVal)
    }
    if (modifiers.trim) {
      return value.trim() !== newVal.trim()
    }
  }
  return value !== newVal
}

var domProps = {
  create: updateDOMProps,
  update: updateDOMProps
};

/*  */

var parseStyleText = cached(function (cssText) {
  var res = {};
  var listDelimiter = /;(?![^(]*\))/g;
  var propertyDelimiter = /:(.+)/;
  cssText.split(listDelimiter).forEach(function (item) {
    if (item) {
      var tmp = item.split(propertyDelimiter);
      tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());
    }
  });
  return res
});

// merge static and dynamic style data on the same vnode
function normalizeStyleData (data) {
  var style = normalizeStyleBinding(data.style);
  // static style is pre-processed into an object during compilation
  // and is always a fresh object, so it's safe to merge into it
  return data.staticStyle
    ? extend(data.staticStyle, style)
    : style
}

// normalize possible array / string values into Object
function normalizeStyleBinding (bindingStyle) {
  if (Array.isArray(bindingStyle)) {
    return toObject(bindingStyle)
  }
  if (typeof bindingStyle === 'string') {
    return parseStyleText(bindingStyle)
  }
  return bindingStyle
}

/**
 * parent component style should be after child's
 * so that parent component's style could override it
 */
function getStyle (vnode, checkChild) {
  var res = {};
  var styleData;

  if (checkChild) {
    var childNode = vnode;
    while (childNode.componentInstance) {
      childNode = childNode.componentInstance._vnode;
      if (
        childNode && childNode.data &&
        (styleData = normalizeStyleData(childNode.data))
      ) {
        extend(res, styleData);
      }
    }
  }

  if ((styleData = normalizeStyleData(vnode.data))) {
    extend(res, styleData);
  }

  var parentNode = vnode;
  while ((parentNode = parentNode.parent)) {
    if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {
      extend(res, styleData);
    }
  }
  return res
}

/*  */

var cssVarRE = /^--/;
var importantRE = /\s*!important$/;
var setProp = function (el, name, val) {
  /* istanbul ignore if */
  if (cssVarRE.test(name)) {
    el.style.setProperty(name, val);
  } else if (importantRE.test(val)) {
    el.style.setProperty(hyphenate(name), val.replace(importantRE, ''), 'important');
  } else {
    var normalizedName = normalize(name);
    if (Array.isArray(val)) {
      // Support values array created by autoprefixer, e.g.
      // {display: ["-webkit-box", "-ms-flexbox", "flex"]}
      // Set them one by one, and the browser will only set those it can recognize
      for (var i = 0, len = val.length; i < len; i++) {
        el.style[normalizedName] = val[i];
      }
    } else {
      el.style[normalizedName] = val;
    }
  }
};

var vendorNames = ['Webkit', 'Moz', 'ms'];

var emptyStyle;
var normalize = cached(function (prop) {
  emptyStyle = emptyStyle || document.createElement('div').style;
  prop = camelize(prop);
  if (prop !== 'filter' && (prop in emptyStyle)) {
    return prop
  }
  var capName = prop.charAt(0).toUpperCase() + prop.slice(1);
  for (var i = 0; i < vendorNames.length; i++) {
    var name = vendorNames[i] + capName;
    if (name in emptyStyle) {
      return name
    }
  }
});

function updateStyle (oldVnode, vnode) {
  var data = vnode.data;
  var oldData = oldVnode.data;

  if (isUndef(data.staticStyle) && isUndef(data.style) &&
    isUndef(oldData.staticStyle) && isUndef(oldData.style)
  ) {
    return
  }

  var cur, name;
  var el = vnode.elm;
  var oldStaticStyle = oldData.staticStyle;
  var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};

  // if static style exists, stylebinding already merged into it when doing normalizeStyleData
  var oldStyle = oldStaticStyle || oldStyleBinding;

  var style = normalizeStyleBinding(vnode.data.style) || {};

  // store normalized style under a different key for next diff
  // make sure to clone it if it's reactive, since the user likely wants
  // to mutate it.
  vnode.data.normalizedStyle = isDef(style.__ob__)
    ? extend({}, style)
    : style;

  var newStyle = getStyle(vnode, true);

  for (name in oldStyle) {
    if (isUndef(newStyle[name])) {
      setProp(el, name, '');
    }
  }
  for (name in newStyle) {
    cur = newStyle[name];
    if (cur !== oldStyle[name]) {
      // ie9 setting to null has no effect, must use empty string
      setProp(el, name, cur == null ? '' : cur);
    }
  }
}

var style = {
  create: updateStyle,
  update: updateStyle
};

/*  */

var whitespaceRE = /\s+/;

/**
 * Add class with compatibility for SVG since classList is not supported on
 * SVG elements in IE
 */
function addClass (el, cls) {
  /* istanbul ignore if */
  if (!cls || !(cls = cls.trim())) {
    return
  }

  /* istanbul ignore else */
  if (el.classList) {
    if (cls.indexOf(' ') > -1) {
      cls.split(whitespaceRE).forEach(function (c) { return el.classList.add(c); });
    } else {
      el.classList.add(cls);
    }
  } else {
    var cur = " " + (el.getAttribute('class') || '') + " ";
    if (cur.indexOf(' ' + cls + ' ') < 0) {
      el.setAttribute('class', (cur + cls).trim());
    }
  }
}

/**
 * Remove class with compatibility for SVG since classList is not supported on
 * SVG elements in IE
 */
function removeClass (el, cls) {
  /* istanbul ignore if */
  if (!cls || !(cls = cls.trim())) {
    return
  }

  /* istanbul ignore else */
  if (el.classList) {
    if (cls.indexOf(' ') > -1) {
      cls.split(whitespaceRE).forEach(function (c) { return el.classList.remove(c); });
    } else {
      el.classList.remove(cls);
    }
    if (!el.classList.length) {
      el.removeAttribute('class');
    }
  } else {
    var cur = " " + (el.getAttribute('class') || '') + " ";
    var tar = ' ' + cls + ' ';
    while (cur.indexOf(tar) >= 0) {
      cur = cur.replace(tar, ' ');
    }
    cur = cur.trim();
    if (cur) {
      el.setAttribute('class', cur);
    } else {
      el.removeAttribute('class');
    }
  }
}

/*  */

function resolveTransition (def$$1) {
  if (!def$$1) {
    return
  }
  /* istanbul ignore else */
  if (typeof def$$1 === 'object') {
    var res = {};
    if (def$$1.css !== false) {
      extend(res, autoCssTransition(def$$1.name || 'v'));
    }
    extend(res, def$$1);
    return res
  } else if (typeof def$$1 === 'string') {
    return autoCssTransition(def$$1)
  }
}

var autoCssTransition = cached(function (name) {
  return {
    enterClass: (name + "-enter"),
    enterToClass: (name + "-enter-to"),
    enterActiveClass: (name + "-enter-active"),
    leaveClass: (name + "-leave"),
    leaveToClass: (name + "-leave-to"),
    leaveActiveClass: (name + "-leave-active")
  }
});

var hasTransition = inBrowser && !isIE9;
var TRANSITION = 'transition';
var ANIMATION = 'animation';

// Transition property/event sniffing
var transitionProp = 'transition';
var transitionEndEvent = 'transitionend';
var animationProp = 'animation';
var animationEndEvent = 'animationend';
if (hasTransition) {
  /* istanbul ignore if */
  if (window.ontransitionend === undefined &&
    window.onwebkittransitionend !== undefined
  ) {
    transitionProp = 'WebkitTransition';
    transitionEndEvent = 'webkitTransitionEnd';
  }
  if (window.onanimationend === undefined &&
    window.onwebkitanimationend !== undefined
  ) {
    animationProp = 'WebkitAnimation';
    animationEndEvent = 'webkitAnimationEnd';
  }
}

// binding to window is necessary to make hot reload work in IE in strict mode
var raf = inBrowser
  ? window.requestAnimationFrame
    ? window.requestAnimationFrame.bind(window)
    : setTimeout
  : /* istanbul ignore next */ function (fn) { return fn(); };

function nextFrame (fn) {
  raf(function () {
    raf(fn);
  });
}

function addTransitionClass (el, cls) {
  var transitionClasses = el._transitionClasses || (el._transitionClasses = []);
  if (transitionClasses.indexOf(cls) < 0) {
    transitionClasses.push(cls);
    addClass(el, cls);
  }
}

function removeTransitionClass (el, cls) {
  if (el._transitionClasses) {
    remove(el._transitionClasses, cls);
  }
  removeClass(el, cls);
}

function whenTransitionEnds (
  el,
  expectedType,
  cb
) {
  var ref = getTransitionInfo(el, expectedType);
  var type = ref.type;
  var timeout = ref.timeout;
  var propCount = ref.propCount;
  if (!type) { return cb() }
  var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;
  var ended = 0;
  var end = function () {
    el.removeEventListener(event, onEnd);
    cb();
  };
  var onEnd = function (e) {
    if (e.target === el) {
      if (++ended >= propCount) {
        end();
      }
    }
  };
  setTimeout(function () {
    if (ended < propCount) {
      end();
    }
  }, timeout + 1);
  el.addEventListener(event, onEnd);
}

var transformRE = /\b(transform|all)(,|$)/;

function getTransitionInfo (el, expectedType) {
  var styles = window.getComputedStyle(el);
  // JSDOM may return undefined for transition properties
  var transitionDelays = (styles[transitionProp + 'Delay'] || '').split(', ');
  var transitionDurations = (styles[transitionProp + 'Duration'] || '').split(', ');
  var transitionTimeout = getTimeout(transitionDelays, transitionDurations);
  var animationDelays = (styles[animationProp + 'Delay'] || '').split(', ');
  var animationDurations = (styles[animationProp + 'Duration'] || '').split(', ');
  var animationTimeout = getTimeout(animationDelays, animationDurations);

  var type;
  var timeout = 0;
  var propCount = 0;
  /* istanbul ignore if */
  if (expectedType === TRANSITION) {
    if (transitionTimeout > 0) {
      type = TRANSITION;
      timeout = transitionTimeout;
      propCount = transitionDurations.length;
    }
  } else if (expectedType === ANIMATION) {
    if (animationTimeout > 0) {
      type = ANIMATION;
      timeout = animationTimeout;
      propCount = animationDurations.length;
    }
  } else {
    timeout = Math.max(transitionTimeout, animationTimeout);
    type = timeout > 0
      ? transitionTimeout > animationTimeout
        ? TRANSITION
        : ANIMATION
      : null;
    propCount = type
      ? type === TRANSITION
        ? transitionDurations.length
        : animationDurations.length
      : 0;
  }
  var hasTransform =
    type === TRANSITION &&
    transformRE.test(styles[transitionProp + 'Property']);
  return {
    type: type,
    timeout: timeout,
    propCount: propCount,
    hasTransform: hasTransform
  }
}

function getTimeout (delays, durations) {
  /* istanbul ignore next */
  while (delays.length < durations.length) {
    delays = delays.concat(delays);
  }

  return Math.max.apply(null, durations.map(function (d, i) {
    return toMs(d) + toMs(delays[i])
  }))
}

// Old versions of Chromium (below 61.0.3163.100) formats floating pointer numbers
// in a locale-dependent way, using a comma instead of a dot.
// If comma is not replaced with a dot, the input will be rounded down (i.e. acting
// as a floor function) causing unexpected behaviors
function toMs (s) {
  return Number(s.slice(0, -1).replace(',', '.')) * 1000
}

/*  */

function enter (vnode, toggleDisplay) {
  var el = vnode.elm;

  // call leave callback now
  if (isDef(el._leaveCb)) {
    el._leaveCb.cancelled = true;
    el._leaveCb();
  }

  var data = resolveTransition(vnode.data.transition);
  if (isUndef(data)) {
    return
  }

  /* istanbul ignore if */
  if (isDef(el._enterCb) || el.nodeType !== 1) {
    return
  }

  var css = data.css;
  var type = data.type;
  var enterClass = data.enterClass;
  var enterToClass = data.enterToClass;
  var enterActiveClass = data.enterActiveClass;
  var appearClass = data.appearClass;
  var appearToClass = data.appearToClass;
  var appearActiveClass = data.appearActiveClass;
  var beforeEnter = data.beforeEnter;
  var enter = data.enter;
  var afterEnter = data.afterEnter;
  var enterCancelled = data.enterCancelled;
  var beforeAppear = data.beforeAppear;
  var appear = data.appear;
  var afterAppear = data.afterAppear;
  var appearCancelled = data.appearCancelled;
  var duration = data.duration;

  // activeInstance will always be the <transition> component managing this
  // transition. One edge case to check is when the <transition> is placed
  // as the root node of a child component. In that case we need to check
  // <transition>'s parent for appear check.
  var context = activeInstance;
  var transitionNode = activeInstance.$vnode;
  while (transitionNode && transitionNode.parent) {
    context = transitionNode.context;
    transitionNode = transitionNode.parent;
  }

  var isAppear = !context._isMounted || !vnode.isRootInsert;

  if (isAppear && !appear && appear !== '') {
    return
  }

  var startClass = isAppear && appearClass
    ? appearClass
    : enterClass;
  var activeClass = isAppear && appearActiveClass
    ? appearActiveClass
    : enterActiveClass;
  var toClass = isAppear && appearToClass
    ? appearToClass
    : enterToClass;

  var beforeEnterHook = isAppear
    ? (beforeAppear || beforeEnter)
    : beforeEnter;
  var enterHook = isAppear
    ? (typeof appear === 'function' ? appear : enter)
    : enter;
  var afterEnterHook = isAppear
    ? (afterAppear || afterEnter)
    : afterEnter;
  var enterCancelledHook = isAppear
    ? (appearCancelled || enterCancelled)
    : enterCancelled;

  var explicitEnterDuration = toNumber(
    isObject(duration)
      ? duration.enter
      : duration
  );

  if (false) {}

  var expectsCSS = css !== false && !isIE9;
  var userWantsControl = getHookArgumentsLength(enterHook);

  var cb = el._enterCb = once(function () {
    if (expectsCSS) {
      removeTransitionClass(el, toClass);
      removeTransitionClass(el, activeClass);
    }
    if (cb.cancelled) {
      if (expectsCSS) {
        removeTransitionClass(el, startClass);
      }
      enterCancelledHook && enterCancelledHook(el);
    } else {
      afterEnterHook && afterEnterHook(el);
    }
    el._enterCb = null;
  });

  if (!vnode.data.show) {
    // remove pending leave element on enter by injecting an insert hook
    mergeVNodeHook(vnode, 'insert', function () {
      var parent = el.parentNode;
      var pendingNode = parent && parent._pending && parent._pending[vnode.key];
      if (pendingNode &&
        pendingNode.tag === vnode.tag &&
        pendingNode.elm._leaveCb
      ) {
        pendingNode.elm._leaveCb();
      }
      enterHook && enterHook(el, cb);
    });
  }

  // start enter transition
  beforeEnterHook && beforeEnterHook(el);
  if (expectsCSS) {
    addTransitionClass(el, startClass);
    addTransitionClass(el, activeClass);
    nextFrame(function () {
      removeTransitionClass(el, startClass);
      if (!cb.cancelled) {
        addTransitionClass(el, toClass);
        if (!userWantsControl) {
          if (isValidDuration(explicitEnterDuration)) {
            setTimeout(cb, explicitEnterDuration);
          } else {
            whenTransitionEnds(el, type, cb);
          }
        }
      }
    });
  }

  if (vnode.data.show) {
    toggleDisplay && toggleDisplay();
    enterHook && enterHook(el, cb);
  }

  if (!expectsCSS && !userWantsControl) {
    cb();
  }
}

function leave (vnode, rm) {
  var el = vnode.elm;

  // call enter callback now
  if (isDef(el._enterCb)) {
    el._enterCb.cancelled = true;
    el._enterCb();
  }

  var data = resolveTransition(vnode.data.transition);
  if (isUndef(data) || el.nodeType !== 1) {
    return rm()
  }

  /* istanbul ignore if */
  if (isDef(el._leaveCb)) {
    return
  }

  var css = data.css;
  var type = data.type;
  var leaveClass = data.leaveClass;
  var leaveToClass = data.leaveToClass;
  var leaveActiveClass = data.leaveActiveClass;
  var beforeLeave = data.beforeLeave;
  var leave = data.leave;
  var afterLeave = data.afterLeave;
  var leaveCancelled = data.leaveCancelled;
  var delayLeave = data.delayLeave;
  var duration = data.duration;

  var expectsCSS = css !== false && !isIE9;
  var userWantsControl = getHookArgumentsLength(leave);

  var explicitLeaveDuration = toNumber(
    isObject(duration)
      ? duration.leave
      : duration
  );

  if (false) {}

  var cb = el._leaveCb = once(function () {
    if (el.parentNode && el.parentNode._pending) {
      el.parentNode._pending[vnode.key] = null;
    }
    if (expectsCSS) {
      removeTransitionClass(el, leaveToClass);
      removeTransitionClass(el, leaveActiveClass);
    }
    if (cb.cancelled) {
      if (expectsCSS) {
        removeTransitionClass(el, leaveClass);
      }
      leaveCancelled && leaveCancelled(el);
    } else {
      rm();
      afterLeave && afterLeave(el);
    }
    el._leaveCb = null;
  });

  if (delayLeave) {
    delayLeave(performLeave);
  } else {
    performLeave();
  }

  function performLeave () {
    // the delayed leave may have already been cancelled
    if (cb.cancelled) {
      return
    }
    // record leaving element
    if (!vnode.data.show && el.parentNode) {
      (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;
    }
    beforeLeave && beforeLeave(el);
    if (expectsCSS) {
      addTransitionClass(el, leaveClass);
      addTransitionClass(el, leaveActiveClass);
      nextFrame(function () {
        removeTransitionClass(el, leaveClass);
        if (!cb.cancelled) {
          addTransitionClass(el, leaveToClass);
          if (!userWantsControl) {
            if (isValidDuration(explicitLeaveDuration)) {
              setTimeout(cb, explicitLeaveDuration);
            } else {
              whenTransitionEnds(el, type, cb);
            }
          }
        }
      });
    }
    leave && leave(el, cb);
    if (!expectsCSS && !userWantsControl) {
      cb();
    }
  }
}

// only used in dev mode
function checkDuration (val, name, vnode) {
  if (typeof val !== 'number') {
    warn(
      "<transition> explicit " + name + " duration is not a valid number - " +
      "got " + (JSON.stringify(val)) + ".",
      vnode.context
    );
  } else if (isNaN(val)) {
    warn(
      "<transition> explicit " + name + " duration is NaN - " +
      'the duration expression might be incorrect.',
      vnode.context
    );
  }
}

function isValidDuration (val) {
  return typeof val === 'number' && !isNaN(val)
}

/**
 * Normalize a transition hook's argument length. The hook may be:
 * - a merged hook (invoker) with the original in .fns
 * - a wrapped component method (check ._length)
 * - a plain function (.length)
 */
function getHookArgumentsLength (fn) {
  if (isUndef(fn)) {
    return false
  }
  var invokerFns = fn.fns;
  if (isDef(invokerFns)) {
    // invoker
    return getHookArgumentsLength(
      Array.isArray(invokerFns)
        ? invokerFns[0]
        : invokerFns
    )
  } else {
    return (fn._length || fn.length) > 1
  }
}

function _enter (_, vnode) {
  if (vnode.data.show !== true) {
    enter(vnode);
  }
}

var transition = inBrowser ? {
  create: _enter,
  activate: _enter,
  remove: function remove$$1 (vnode, rm) {
    /* istanbul ignore else */
    if (vnode.data.show !== true) {
      leave(vnode, rm);
    } else {
      rm();
    }
  }
} : {};

var platformModules = [
  attrs,
  klass,
  events,
  domProps,
  style,
  transition
];

/*  */

// the directive module should be applied last, after all
// built-in modules have been applied.
var modules = platformModules.concat(baseModules);

var patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });

/**
 * Not type checking this file because flow doesn't like attaching
 * properties to Elements.
 */

/* istanbul ignore if */
if (isIE9) {
  // http://www.matts411.com/post/internet-explorer-9-oninput/
  document.addEventListener('selectionchange', function () {
    var el = document.activeElement;
    if (el && el.vmodel) {
      trigger(el, 'input');
    }
  });
}

var directive = {
  inserted: function inserted (el, binding, vnode, oldVnode) {
    if (vnode.tag === 'select') {
      // #6903
      if (oldVnode.elm && !oldVnode.elm._vOptions) {
        mergeVNodeHook(vnode, 'postpatch', function () {
          directive.componentUpdated(el, binding, vnode);
        });
      } else {
        setSelected(el, binding, vnode.context);
      }
      el._vOptions = [].map.call(el.options, getValue);
    } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {
      el._vModifiers = binding.modifiers;
      if (!binding.modifiers.lazy) {
        el.addEventListener('compositionstart', onCompositionStart);
        el.addEventListener('compositionend', onCompositionEnd);
        // Safari < 10.2 & UIWebView doesn't fire compositionend when
        // switching focus before confirming composition choice
        // this also fixes the issue where some browsers e.g. iOS Chrome
        // fires "change" instead of "input" on autocomplete.
        el.addEventListener('change', onCompositionEnd);
        /* istanbul ignore if */
        if (isIE9) {
          el.vmodel = true;
        }
      }
    }
  },

  componentUpdated: function componentUpdated (el, binding, vnode) {
    if (vnode.tag === 'select') {
      setSelected(el, binding, vnode.context);
      // in case the options rendered by v-for have changed,
      // it's possible that the value is out-of-sync with the rendered options.
      // detect such cases and filter out values that no longer has a matching
      // option in the DOM.
      var prevOptions = el._vOptions;
      var curOptions = el._vOptions = [].map.call(el.options, getValue);
      if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {
        // trigger change event if
        // no matching option found for at least one value
        var needReset = el.multiple
          ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })
          : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);
        if (needReset) {
          trigger(el, 'change');
        }
      }
    }
  }
};

function setSelected (el, binding, vm) {
  actuallySetSelected(el, binding, vm);
  /* istanbul ignore if */
  if (isIE || isEdge) {
    setTimeout(function () {
      actuallySetSelected(el, binding, vm);
    }, 0);
  }
}

function actuallySetSelected (el, binding, vm) {
  var value = binding.value;
  var isMultiple = el.multiple;
  if (isMultiple && !Array.isArray(value)) {
     false && false;
    return
  }
  var selected, option;
  for (var i = 0, l = el.options.length; i < l; i++) {
    option = el.options[i];
    if (isMultiple) {
      selected = looseIndexOf(value, getValue(option)) > -1;
      if (option.selected !== selected) {
        option.selected = selected;
      }
    } else {
      if (looseEqual(getValue(option), value)) {
        if (el.selectedIndex !== i) {
          el.selectedIndex = i;
        }
        return
      }
    }
  }
  if (!isMultiple) {
    el.selectedIndex = -1;
  }
}

function hasNoMatchingOption (value, options) {
  return options.every(function (o) { return !looseEqual(o, value); })
}

function getValue (option) {
  return '_value' in option
    ? option._value
    : option.value
}

function onCompositionStart (e) {
  e.target.composing = true;
}

function onCompositionEnd (e) {
  // prevent triggering an input event for no reason
  if (!e.target.composing) { return }
  e.target.composing = false;
  trigger(e.target, 'input');
}

function trigger (el, type) {
  var e = document.createEvent('HTMLEvents');
  e.initEvent(type, true, true);
  el.dispatchEvent(e);
}

/*  */

// recursively search for possible transition defined inside the component root
function locateNode (vnode) {
  return vnode.componentInstance && (!vnode.data || !vnode.data.transition)
    ? locateNode(vnode.componentInstance._vnode)
    : vnode
}

var show = {
  bind: function bind (el, ref, vnode) {
    var value = ref.value;

    vnode = locateNode(vnode);
    var transition$$1 = vnode.data && vnode.data.transition;
    var originalDisplay = el.__vOriginalDisplay =
      el.style.display === 'none' ? '' : el.style.display;
    if (value && transition$$1) {
      vnode.data.show = true;
      enter(vnode, function () {
        el.style.display = originalDisplay;
      });
    } else {
      el.style.display = value ? originalDisplay : 'none';
    }
  },

  update: function update (el, ref, vnode) {
    var value = ref.value;
    var oldValue = ref.oldValue;

    /* istanbul ignore if */
    if (!value === !oldValue) { return }
    vnode = locateNode(vnode);
    var transition$$1 = vnode.data && vnode.data.transition;
    if (transition$$1) {
      vnode.data.show = true;
      if (value) {
        enter(vnode, function () {
          el.style.display = el.__vOriginalDisplay;
        });
      } else {
        leave(vnode, function () {
          el.style.display = 'none';
        });
      }
    } else {
      el.style.display = value ? el.__vOriginalDisplay : 'none';
    }
  },

  unbind: function unbind (
    el,
    binding,
    vnode,
    oldVnode,
    isDestroy
  ) {
    if (!isDestroy) {
      el.style.display = el.__vOriginalDisplay;
    }
  }
};

var platformDirectives = {
  model: directive,
  show: show
};

/*  */

var transitionProps = {
  name: String,
  appear: Boolean,
  css: Boolean,
  mode: String,
  type: String,
  enterClass: String,
  leaveClass: String,
  enterToClass: String,
  leaveToClass: String,
  enterActiveClass: String,
  leaveActiveClass: String,
  appearClass: String,
  appearActiveClass: String,
  appearToClass: String,
  duration: [Number, String, Object]
};

// in case the child is also an abstract component, e.g. <keep-alive>
// we want to recursively retrieve the real component to be rendered
function getRealChild (vnode) {
  var compOptions = vnode && vnode.componentOptions;
  if (compOptions && compOptions.Ctor.options.abstract) {
    return getRealChild(getFirstComponentChild(compOptions.children))
  } else {
    return vnode
  }
}

function extractTransitionData (comp) {
  var data = {};
  var options = comp.$options;
  // props
  for (var key in options.propsData) {
    data[key] = comp[key];
  }
  // events.
  // extract listeners and pass them directly to the transition methods
  var listeners = options._parentListeners;
  for (var key$1 in listeners) {
    data[camelize(key$1)] = listeners[key$1];
  }
  return data
}

function placeholder (h, rawChild) {
  if (/\d-keep-alive$/.test(rawChild.tag)) {
    return h('keep-alive', {
      props: rawChild.componentOptions.propsData
    })
  }
}

function hasParentTransition (vnode) {
  while ((vnode = vnode.parent)) {
    if (vnode.data.transition) {
      return true
    }
  }
}

function isSameChild (child, oldChild) {
  return oldChild.key === child.key && oldChild.tag === child.tag
}

var isNotTextNode = function (c) { return c.tag || isAsyncPlaceholder(c); };

var isVShowDirective = function (d) { return d.name === 'show'; };

var Transition = {
  name: 'transition',
  props: transitionProps,
  abstract: true,

  render: function render (h) {
    var this$1 = this;

    var children = this.$slots.default;
    if (!children) {
      return
    }

    // filter out text nodes (possible whitespaces)
    children = children.filter(isNotTextNode);
    /* istanbul ignore if */
    if (!children.length) {
      return
    }

    // warn multiple elements
    if (false) {}

    var mode = this.mode;

    // warn invalid mode
    if (false
    ) {}

    var rawChild = children[0];

    // if this is a component root node and the component's
    // parent container node also has transition, skip.
    if (hasParentTransition(this.$vnode)) {
      return rawChild
    }

    // apply transition data to child
    // use getRealChild() to ignore abstract components e.g. keep-alive
    var child = getRealChild(rawChild);
    /* istanbul ignore if */
    if (!child) {
      return rawChild
    }

    if (this._leaving) {
      return placeholder(h, rawChild)
    }

    // ensure a key that is unique to the vnode type and to this transition
    // component instance. This key will be used to remove pending leaving nodes
    // during entering.
    var id = "__transition-" + (this._uid) + "-";
    child.key = child.key == null
      ? child.isComment
        ? id + 'comment'
        : id + child.tag
      : isPrimitive(child.key)
        ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)
        : child.key;

    var data = (child.data || (child.data = {})).transition = extractTransitionData(this);
    var oldRawChild = this._vnode;
    var oldChild = getRealChild(oldRawChild);

    // mark v-show
    // so that the transition module can hand over the control to the directive
    if (child.data.directives && child.data.directives.some(isVShowDirective)) {
      child.data.show = true;
    }

    if (
      oldChild &&
      oldChild.data &&
      !isSameChild(child, oldChild) &&
      !isAsyncPlaceholder(oldChild) &&
      // #6687 component root is a comment node
      !(oldChild.componentInstance && oldChild.componentInstance._vnode.isComment)
    ) {
      // replace old child transition data with fresh one
      // important for dynamic transitions!
      var oldData = oldChild.data.transition = extend({}, data);
      // handle transition mode
      if (mode === 'out-in') {
        // return placeholder node and queue update when leave finishes
        this._leaving = true;
        mergeVNodeHook(oldData, 'afterLeave', function () {
          this$1._leaving = false;
          this$1.$forceUpdate();
        });
        return placeholder(h, rawChild)
      } else if (mode === 'in-out') {
        if (isAsyncPlaceholder(child)) {
          return oldRawChild
        }
        var delayedLeave;
        var performLeave = function () { delayedLeave(); };
        mergeVNodeHook(data, 'afterEnter', performLeave);
        mergeVNodeHook(data, 'enterCancelled', performLeave);
        mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });
      }
    }

    return rawChild
  }
};

/*  */

var props = extend({
  tag: String,
  moveClass: String
}, transitionProps);

delete props.mode;

var TransitionGroup = {
  props: props,

  beforeMount: function beforeMount () {
    var this$1 = this;

    var update = this._update;
    this._update = function (vnode, hydrating) {
      var restoreActiveInstance = setActiveInstance(this$1);
      // force removing pass
      this$1.__patch__(
        this$1._vnode,
        this$1.kept,
        false, // hydrating
        true // removeOnly (!important, avoids unnecessary moves)
      );
      this$1._vnode = this$1.kept;
      restoreActiveInstance();
      update.call(this$1, vnode, hydrating);
    };
  },

  render: function render (h) {
    var tag = this.tag || this.$vnode.data.tag || 'span';
    var map = Object.create(null);
    var prevChildren = this.prevChildren = this.children;
    var rawChildren = this.$slots.default || [];
    var children = this.children = [];
    var transitionData = extractTransitionData(this);

    for (var i = 0; i < rawChildren.length; i++) {
      var c = rawChildren[i];
      if (c.tag) {
        if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {
          children.push(c);
          map[c.key] = c
          ;(c.data || (c.data = {})).transition = transitionData;
        } else if (false) { var name, opts; }
      }
    }

    if (prevChildren) {
      var kept = [];
      var removed = [];
      for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {
        var c$1 = prevChildren[i$1];
        c$1.data.transition = transitionData;
        c$1.data.pos = c$1.elm.getBoundingClientRect();
        if (map[c$1.key]) {
          kept.push(c$1);
        } else {
          removed.push(c$1);
        }
      }
      this.kept = h(tag, null, kept);
      this.removed = removed;
    }

    return h(tag, null, children)
  },

  updated: function updated () {
    var children = this.prevChildren;
    var moveClass = this.moveClass || ((this.name || 'v') + '-move');
    if (!children.length || !this.hasMove(children[0].elm, moveClass)) {
      return
    }

    // we divide the work into three loops to avoid mixing DOM reads and writes
    // in each iteration - which helps prevent layout thrashing.
    children.forEach(callPendingCbs);
    children.forEach(recordPosition);
    children.forEach(applyTranslation);

    // force reflow to put everything in position
    // assign to this to avoid being removed in tree-shaking
    // $flow-disable-line
    this._reflow = document.body.offsetHeight;

    children.forEach(function (c) {
      if (c.data.moved) {
        var el = c.elm;
        var s = el.style;
        addTransitionClass(el, moveClass);
        s.transform = s.WebkitTransform = s.transitionDuration = '';
        el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {
          if (e && e.target !== el) {
            return
          }
          if (!e || /transform$/.test(e.propertyName)) {
            el.removeEventListener(transitionEndEvent, cb);
            el._moveCb = null;
            removeTransitionClass(el, moveClass);
          }
        });
      }
    });
  },

  methods: {
    hasMove: function hasMove (el, moveClass) {
      /* istanbul ignore if */
      if (!hasTransition) {
        return false
      }
      /* istanbul ignore if */
      if (this._hasMove) {
        return this._hasMove
      }
      // Detect whether an element with the move class applied has
      // CSS transitions. Since the element may be inside an entering
      // transition at this very moment, we make a clone of it and remove
      // all other transition classes applied to ensure only the move class
      // is applied.
      var clone = el.cloneNode();
      if (el._transitionClasses) {
        el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });
      }
      addClass(clone, moveClass);
      clone.style.display = 'none';
      this.$el.appendChild(clone);
      var info = getTransitionInfo(clone);
      this.$el.removeChild(clone);
      return (this._hasMove = info.hasTransform)
    }
  }
};

function callPendingCbs (c) {
  /* istanbul ignore if */
  if (c.elm._moveCb) {
    c.elm._moveCb();
  }
  /* istanbul ignore if */
  if (c.elm._enterCb) {
    c.elm._enterCb();
  }
}

function recordPosition (c) {
  c.data.newPos = c.elm.getBoundingClientRect();
}

function applyTranslation (c) {
  var oldPos = c.data.pos;
  var newPos = c.data.newPos;
  var dx = oldPos.left - newPos.left;
  var dy = oldPos.top - newPos.top;
  if (dx || dy) {
    c.data.moved = true;
    var s = c.elm.style;
    s.transform = s.WebkitTransform = "translate(" + dx + "px," + dy + "px)";
    s.transitionDuration = '0s';
  }
}

var platformComponents = {
  Transition: Transition,
  TransitionGroup: TransitionGroup
};

/*  */

// install platform specific utils
Vue.config.mustUseProp = mustUseProp;
Vue.config.isReservedTag = isReservedTag;
Vue.config.isReservedAttr = isReservedAttr;
Vue.config.getTagNamespace = getTagNamespace;
Vue.config.isUnknownElement = isUnknownElement;

// install platform runtime directives & components
extend(Vue.options.directives, platformDirectives);
extend(Vue.options.components, platformComponents);

// install platform patch function
Vue.prototype.__patch__ = inBrowser ? patch : noop;

// public mount method
Vue.prototype.$mount = function (
  el,
  hydrating
) {
  el = el && inBrowser ? query(el) : undefined;
  return mountComponent(this, el, hydrating)
};

// devtools global hook
/* istanbul ignore next */
if (inBrowser) {
  setTimeout(function () {
    if (config.devtools) {
      if (devtools) {
        devtools.emit('init', Vue);
      } else if (
        false
      ) {}
    }
    if (false
    ) {}
  }, 0);
}

/*  */

/* harmony default export */ __webpack_exports__["default"] = (Vue);

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("c8ba")))

/***/ }),

/***/ "2b3e":
/***/ (function(module, exports, __webpack_require__) {

var freeGlobal = __webpack_require__("585a");

/** Detect free variable `self`. */
var freeSelf = typeof self == 'object' && self && self.Object === Object && self;

/** Used as a reference to the global object. */
var root = freeGlobal || freeSelf || Function('return this')();

module.exports = root;


/***/ }),

/***/ "2c63":
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__("dc14");


/***/ }),

/***/ "2d7c":
/***/ (function(module, exports) {

/**
 * A specialized version of `_.filter` for arrays without support for
 * iteratee shorthands.
 *
 * @private
 * @param {Array} [array] The array to iterate over.
 * @param {Function} predicate The function invoked per iteration.
 * @returns {Array} Returns the new filtered array.
 */
function arrayFilter(array, predicate) {
  var index = -1,
      length = array == null ? 0 : array.length,
      resIndex = 0,
      result = [];

  while (++index < length) {
    var value = array[index];
    if (predicate(value, index, array)) {
      result[resIndex++] = value;
    }
  }
  return result;
}

module.exports = arrayFilter;


/***/ }),

/***/ "2d83":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var enhanceError = __webpack_require__("387f");

/**
 * Create an Error with the specified message, config, error code, request and response.
 *
 * @param {string} message The error message.
 * @param {Object} config The config.
 * @param {string} [code] The error code (for example, 'ECONNABORTED').
 * @param {Object} [request] The request.
 * @param {Object} [response] The response.
 * @returns {Error} The created error.
 */
module.exports = function createError(message, config, code, request, response) {
  var error = new Error(message);
  return enhanceError(error, config, code, request, response);
};


/***/ }),

/***/ "2dcb":
/***/ (function(module, exports, __webpack_require__) {

var overArg = __webpack_require__("91e9");

/** Built-in value references. */
var getPrototype = overArg(Object.getPrototypeOf, Object);

module.exports = getPrototype;


/***/ }),

/***/ "2dee":
/***/ (function(module) {

module.exports = JSON.parse("{\"regionalAccounts\":[{\"ids\":{\"mons_sel_dir_vgid\":\"amzn1.vg.d.AAN2RQ2666OGQNH644CSOQOVDEBQ\"},\"label\":\"US - Snailax Corporation\",\"typeLabel\":null,\"globalAccountId\":\"amzn1.pa.d.ACSQRKYVQAQ2TTWMED5XJVM5JGOA\",\"domain\":\"vendorcentral.amazon.co.uk\",\"selected\":false,\"searchIds\":[\"AXY5VTJEA7OYX\",\"amzn1.pa.o.AXY5VTJEA7OYX\",\"801222\",\"amzn1.vg.801222\"]},{\"ids\":{\"mons_sel_dir_vgid\":\"amzn1.vg.d.AAQ5DDVHF4JSEV4X7KKTVX6MUBCA\"},\"label\":\"CA - Snailax Corporation\",\"typeLabel\":null,\"globalAccountId\":\"amzn1.pa.d.ACSQRKYVQAQ2TTWMED5XJVM5JGOA\",\"domain\":\"vendorcentral.amazon.de\",\"selected\":false,\"searchIds\":[\"AXY5VTJEA7OYX\",\"amzn1.pa.o.AXY5VTJEA7OYX\",\"799123\",\"amzn1.vg.799123\"]}],\"paginationToken\":null,\"switcherOptions\":{\"defaultReturnTo\":\"/hz/post-auth\",\"additionalSearchParameters\":null},\"loadAllAccountsWeblabTreatment\":\"C\"}");

/***/ }),

/***/ "2e67":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


module.exports = function isCancel(value) {
  return !!(value && value.__CANCEL__);
};


/***/ }),

/***/ "2ec1":
/***/ (function(module, exports, __webpack_require__) {

var baseRest = __webpack_require__("100e"),
    isIterateeCall = __webpack_require__("9aff");

/**
 * Creates a function like `_.assign`.
 *
 * @private
 * @param {Function} assigner The function to assign values.
 * @returns {Function} Returns the new assigner function.
 */
function createAssigner(assigner) {
  return baseRest(function(object, sources) {
    var index = -1,
        length = sources.length,
        customizer = length > 1 ? sources[length - 1] : undefined,
        guard = length > 2 ? sources[2] : undefined;

    customizer = (assigner.length > 3 && typeof customizer == 'function')
      ? (length--, customizer)
      : undefined;

    if (guard && isIterateeCall(sources[0], sources[1], guard)) {
      customizer = length < 3 ? undefined : customizer;
      length = 1;
    }
    object = Object(object);
    while (++index < length) {
      var source = sources[index];
      if (source) {
        assigner(object, source, index, customizer);
      }
    }
    return object;
  });
}

module.exports = createAssigner;


/***/ }),

/***/ "2f79":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ cores; });
__webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ multiTskHandleMap; });

// EXTERNAL MODULE: ./src/utils/util.js
var util = __webpack_require__("ca00");

// EXTERNAL MODULE: ./src/data/log.js
var log = __webpack_require__("6b23");

// EXTERNAL MODULE: ./src/platform/temu/index.js
var temu = __webpack_require__("c04e");

// CONCATENATED MODULE: ./src/platform/temu/getSupplierPriceByOrder.js
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }

function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }




var CB_ORDER_BATCH_SIZE = 50;
var LOCAL_ORDER_BATCH_SIZE = 100;
var LOCAL_ORDER_PAGE_SIZE = 100;
var CB_ORDER_MIX_AREA = 'US_GLOBAL_MIX';
var CB_ORDER_AREA_HOST_MAP = {
  US: temu["h" /* temu */].cbUsHost,
  EU: temu["h" /* temu */].cbEuHost,
  GLOBAL: temu["h" /* temu */].cbGlobalHost
};
var isOrderSupplierPriceTask = function isOrderSupplierPriceTask(task) {
  return (task === null || task === void 0 ? void 0 : task.task_scene) === 'ORDER_ID' || (task === null || task === void 0 ? void 0 : task.taskScene) === 'ORDER_ID';
};

var getCbOrderArea = function getCbOrderArea(task) {
  return String((task === null || task === void 0 ? void 0 : task.area) || '').toUpperCase();
};

var getCbOrderSupplierPriceHost = function getCbOrderSupplierPriceHost(area) {
  return CB_ORDER_AREA_HOST_MAP[area];
};

var switchCbOrderSupplierPriceHost = /*#__PURE__*/function () {
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(task, host) {
    var loginRes, msg;
    return _regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            task.host = host;
            _context.next = 3;
            return Object(temu["g" /* loginCb */])(task);

          case 3:
            loginRes = _context.sent;

            if (!loginRes) {
              _context.next = 6;
              break;
            }

            return _context.abrupt("return", true);

          case 6:
            msg = "\u5207\u6362\u5230".concat(host, "\u7AD9\u70B9\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5");
            task.msg = msg;
            log["a" /* default */].setLog(msg);
            return _context.abrupt("return", false);

          case 10:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));

  return function switchCbOrderSupplierPriceHost(_x, _x2) {
    return _ref.apply(this, arguments);
  };
}();

var getOrderSn = function getOrderSn(item) {
  return (item === null || item === void 0 ? void 0 : item.parentOrderSn) && String(item.parentOrderSn);
};

var getReturnedOrderSnSet = function getReturnedOrderSnSet() {
  var list = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
  return new Set(list.map(getOrderSn).filter(Boolean));
};

var isEmptySupplierPriceOrder = function isEmptySupplierPriceOrder(item) {
  var orderSn = getOrderSn(item);
  var supplierPriceList = item === null || item === void 0 ? void 0 : item.supplierPriceWithSubOrderRespList;
  return orderSn && Array.isArray(supplierPriceList) && supplierPriceList.length === 0;
};

var buildCbSupplierPriceByOrderResult = function buildCbSupplierPriceByOrderResult(task, orderIds, succOrderList, failOrderIds, lastErrorMsg) {
  if (!succOrderList.length) {
    task.status = 14;
    return {
      code: 2,
      msg: lastErrorMsg || "\u672A\u83B7\u53D6\u5230\u8BA2\u5355\u4F9B\u8D27\u4EF7\u6570\u636E,\u9700\u8981\u83B7\u53D6\u7684\u8BA2\u5355\u53F7:".concat(orderIds.join(','))
    };
  }

  if (failOrderIds.length) {
    task.failOrderIds = _toConsumableArray(new Set(failOrderIds));
    return {
      code: 4,
      msg: '部分订单供货价获取失败',
      result: succOrderList,
      data: {
        failOrderIds: task.failOrderIds,
        order_ids: task.order_ids || task.orderIds || orderIds
      }
    };
  }

  task.failOrderIds = [];
  return {
    code: 0,
    msg: '获取完毕',
    result: succOrderList
  };
};

var pickLocalOrderFields = function pickLocalOrderFields(item) {
  var _item$parentOrderMap;

  var parentOrderSn = item === null || item === void 0 ? void 0 : (_item$parentOrderMap = item.parentOrderMap) === null || _item$parentOrderMap === void 0 ? void 0 : _item$parentOrderMap.parentOrderSn;
  if (!parentOrderSn) return null;
  return {
    parentOrderMap: {
      parentOrderSn: parentOrderSn
    },
    orderList: (item.orderList || []).reduce(function (arr, orderItem) {
      var _orderItem$goodsRetai, _orderItem$skuId, _orderItem$activityGo, _orderItem$goodsBaseP;

      if (!(orderItem !== null && orderItem !== void 0 && orderItem.orderSn)) return arr;
      arr.push({
        goodsRetailPrice: (_orderItem$goodsRetai = orderItem.goodsRetailPrice) !== null && _orderItem$goodsRetai !== void 0 ? _orderItem$goodsRetai : null,
        skuId: (_orderItem$skuId = orderItem.skuId) !== null && _orderItem$skuId !== void 0 ? _orderItem$skuId : null,
        orderSn: orderItem.orderSn,
        activityGoodsBasePrice: (_orderItem$activityGo = orderItem.activityGoodsBasePrice) !== null && _orderItem$activityGo !== void 0 ? _orderItem$activityGo : null,
        goodsBasePrice: (_orderItem$goodsBaseP = orderItem.goodsBasePrice) !== null && _orderItem$goodsBaseP !== void 0 ? _orderItem$goodsBaseP : null
      });
      return arr;
    }, [])
  };
};

var requestCbSupplierPriceByOrder = /*#__PURE__*/function () {
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(task, parentOrderSnList) {
    var retry,
        _yield$nativeRequest,
        success,
        errorMsg,
        errorCode,
        result,
        msg,
        _msg,
        _args2 = arguments;

    return _regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            retry = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : 0;
            _context2.prev = 1;
            _context2.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/bg-visage-agent-seller/product/sku/supplierPrice/batchQueryByOrder"), 'post', {
              parentOrderSnList: parentOrderSnList
            }, {
              Mallid: task.real_mall_id
            });

          case 4:
            _yield$nativeRequest = _context2.sent;
            success = _yield$nativeRequest.success;
            errorMsg = _yield$nativeRequest.errorMsg;
            errorCode = _yield$nativeRequest.errorCode;
            result = _yield$nativeRequest.result;

            if (!(success && result && Array.isArray(result.querySupplierPriceByOrderRespList))) {
              _context2.next = 11;
              break;
            }

            return _context2.abrupt("return", {
              code: 0,
              list: result.querySupplierPriceByOrderRespList
            });

          case 11:
            msg = "\u6839\u636E\u8BA2\u5355\u53F7\u83B7\u53D6\u8DE8\u5883\u534A\u6258\u4F9B\u8D27\u4EF7\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errorMsg || errorCode || JSON.stringify(result));
            log["a" /* default */].setLog(msg);
            return _context2.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 16:
            _context2.prev = 16;
            _context2.t0 = _context2["catch"](1);
            _msg = "\u6839\u636E\u8BA2\u5355\u53F7\u83B7\u53D6\u8DE8\u5883\u534A\u6258\u4F9B\u8D27\u4EF7\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context2.t0, task));
            log["a" /* default */].setLog(_msg);

            if (!(retry < 3)) {
              _context2.next = 25;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context2.next = 24;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 24:
            return _context2.abrupt("return", requestCbSupplierPriceByOrder(task, parentOrderSnList, ++retry));

          case 25:
            return _context2.abrupt("return", {
              code: 1,
              msg: _msg
            });

          case 26:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 16]]);
  }));

  return function requestCbSupplierPriceByOrder(_x3, _x4) {
    return _ref2.apply(this, arguments);
  };
}();

var getCbSupplierPriceByOrder = /*#__PURE__*/function () {
  var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(task) {
    var area, host, msg, orderIds, failOrderIds, succOrderList, lastErrorMsg, batchOrderIdList, i, _i, ids, _yield$requestCbSuppl, code, list, _msg2;

    return _regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            area = getCbOrderArea(task);

            if (!(area === CB_ORDER_MIX_AREA)) {
              _context3.next = 3;
              break;
            }

            return _context3.abrupt("return", getCbSupplierPriceByMixedOrder(task));

          case 3:
            host = getCbOrderSupplierPriceHost(area);

            if (host) {
              _context3.next = 9;
              break;
            }

            msg = "\u6839\u636E\u8BA2\u5355\u53F7\u83B7\u53D6\u8DE8\u5883\u534A\u6258\u4F9B\u8D27\u4EF7\u5931\u8D25\uFF0C\u4E0D\u652F\u6301\u7684area:".concat(task.area);
            task.msg = msg;
            log["a" /* default */].setLog(msg);
            return _context3.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 9:
            log["a" /* default */].setLog("\u6839\u636E\u8BA2\u5355\u53F7\u83B7\u53D6\u8DE8\u5883\u534A\u6258\u4F9B\u8D27\u4EF7\uFF0Carea:".concat(area, "\uFF0Chost:").concat(host));
            _context3.next = 12;
            return switchCbOrderSupplierPriceHost(task, host);

          case 12:
            if (_context3.sent) {
              _context3.next = 14;
              break;
            }

            return _context3.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 14:
            orderIds = _toConsumableArray(new Set((task.failOrderIds || task.order_ids || task.orderIds || []).map(String).filter(Boolean)));
            failOrderIds = [];
            succOrderList = [];
            lastErrorMsg = '';

            if (orderIds.length) {
              _context3.next = 21;
              break;
            }

            task.status = 14;
            return _context3.abrupt("return", {
              code: 2,
              msg: '未获取到任何订单号，请检查 order_ids'
            });

          case 21:
            batchOrderIdList = [];

            for (i = 0; i < orderIds.length; i += CB_ORDER_BATCH_SIZE) {
              batchOrderIdList.push(orderIds.slice(i, i + CB_ORDER_BATCH_SIZE));
            }

            _i = 0;

          case 24:
            if (!(_i < batchOrderIdList.length)) {
              _context3.next = 40;
              break;
            }

            ids = batchOrderIdList[_i];
            task.currentNum = Math.min((_i + 1) * CB_ORDER_BATCH_SIZE, orderIds.length);
            task.total = orderIds.length;
            _context3.next = 30;
            return Object(util["h" /* delayed */])(500);

          case 30:
            _context3.next = 32;
            return requestCbSupplierPriceByOrder(task, ids);

          case 32:
            _yield$requestCbSuppl = _context3.sent;
            code = _yield$requestCbSuppl.code;
            list = _yield$requestCbSuppl.list;
            _msg2 = _yield$requestCbSuppl.msg;

            if (code === 0) {
              succOrderList.push.apply(succOrderList, _toConsumableArray(list || []));
            } else {
              failOrderIds.push.apply(failOrderIds, _toConsumableArray(ids));
              lastErrorMsg = _msg2;
            }

          case 37:
            _i++;
            _context3.next = 24;
            break;

          case 40:
            return _context3.abrupt("return", buildCbSupplierPriceByOrderResult(task, orderIds, succOrderList, failOrderIds, lastErrorMsg));

          case 41:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));

  return function getCbSupplierPriceByOrder(_x5) {
    return _ref3.apply(this, arguments);
  };
}();

var getCbSupplierPriceByMixedOrder = /*#__PURE__*/function () {
  var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(task) {
    var orderIds, failOrderIds, succOrderList, lastErrorMsg, batchOrderIdList, i, _loop, _i2, _ret;

    return _regeneratorRuntime().wrap(function _callee4$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            orderIds = _toConsumableArray(new Set((task.failOrderIds || task.order_ids || task.orderIds || []).map(String).filter(Boolean)));
            failOrderIds = [];
            succOrderList = [];
            lastErrorMsg = '';

            if (orderIds.length) {
              _context5.next = 7;
              break;
            }

            task.status = 14;
            return _context5.abrupt("return", {
              code: 2,
              msg: '未获取到任何订单号，请检查 order_ids'
            });

          case 7:
            batchOrderIdList = [];

            for (i = 0; i < orderIds.length; i += CB_ORDER_BATCH_SIZE) {
              batchOrderIdList.push(orderIds.slice(i, i + CB_ORDER_BATCH_SIZE));
            }

            log["a" /* default */].setLog("\u6839\u636E\u8BA2\u5355\u53F7\u83B7\u53D6\u8DE8\u5883\u534A\u6258\u4F9B\u8D27\u4EF7\uFF0Carea:".concat(CB_ORDER_MIX_AREA, "\uFF0C\u5148\u8BF7\u6C42US\u518D\u8BF7\u6C42GLOBAL"));
            _loop = /*#__PURE__*/_regeneratorRuntime().mark(function _loop(_i2) {
              var ids, usRes, usList, usReturnedOrderSnSet, globalOrderIds, globalRes, globalList, globalReturnedOrderSnSet;
              return _regeneratorRuntime().wrap(function _loop$(_context4) {
                while (1) {
                  switch (_context4.prev = _context4.next) {
                    case 0:
                      ids = batchOrderIdList[_i2];
                      task.currentNum = Math.min((_i2 + 1) * CB_ORDER_BATCH_SIZE, orderIds.length);
                      task.total = orderIds.length;
                      _context4.next = 5;
                      return Object(util["h" /* delayed */])(500);

                    case 5:
                      _context4.next = 7;
                      return switchCbOrderSupplierPriceHost(task, temu["h" /* temu */].cbUsHost);

                    case 7:
                      if (_context4.sent) {
                        _context4.next = 9;
                        break;
                      }

                      return _context4.abrupt("return", {
                        v: {
                          code: 1,
                          msg: task.msg
                        }
                      });

                    case 9:
                      _context4.next = 11;
                      return requestCbSupplierPriceByOrder(task, ids);

                    case 11:
                      usRes = _context4.sent;

                      if (!(usRes.code !== 0)) {
                        _context4.next = 16;
                        break;
                      }

                      failOrderIds.push.apply(failOrderIds, _toConsumableArray(ids));
                      lastErrorMsg = usRes.msg;
                      return _context4.abrupt("return", "continue");

                    case 16:
                      usList = usRes.list || [];
                      usReturnedOrderSnSet = getReturnedOrderSnSet(usList);
                      globalOrderIds = [];
                      usList.forEach(function (item) {
                        if (isEmptySupplierPriceOrder(item)) {
                          globalOrderIds.push(getOrderSn(item));
                        } else {
                          succOrderList.push(item);
                        }
                      });
                      failOrderIds.push.apply(failOrderIds, _toConsumableArray(ids.filter(function (id) {
                        return !usReturnedOrderSnSet.has(String(id));
                      })));
                      log["a" /* default */].setLog("US_GLOBAL_MIX\u7B2C".concat(_i2 + 1, "/").concat(batchOrderIdList.length, "\u6279\uFF0CUS\u8BF7\u6C42").concat(ids.length, "\u4E2A\u8BA2\u5355\uFF0C\u9700\u8F6CGLOBAL\u8BF7\u6C42").concat(globalOrderIds.length, "\u4E2A\u8BA2\u5355"));

                      if (globalOrderIds.length) {
                        _context4.next = 24;
                        break;
                      }

                      return _context4.abrupt("return", "continue");

                    case 24:
                      _context4.next = 26;
                      return switchCbOrderSupplierPriceHost(task, temu["h" /* temu */].cbGlobalHost);

                    case 26:
                      if (_context4.sent) {
                        _context4.next = 30;
                        break;
                      }

                      failOrderIds.push.apply(failOrderIds, globalOrderIds);
                      lastErrorMsg = task.msg;
                      return _context4.abrupt("return", "continue");

                    case 30:
                      _context4.next = 32;
                      return requestCbSupplierPriceByOrder(task, globalOrderIds);

                    case 32:
                      globalRes = _context4.sent;

                      if (!(globalRes.code !== 0)) {
                        _context4.next = 37;
                        break;
                      }

                      failOrderIds.push.apply(failOrderIds, globalOrderIds);
                      lastErrorMsg = globalRes.msg;
                      return _context4.abrupt("return", "continue");

                    case 37:
                      globalList = globalRes.list || [];
                      globalReturnedOrderSnSet = getReturnedOrderSnSet(globalList);
                      succOrderList.push.apply(succOrderList, _toConsumableArray(globalList));
                      failOrderIds.push.apply(failOrderIds, _toConsumableArray(globalOrderIds.filter(function (id) {
                        return !globalReturnedOrderSnSet.has(String(id));
                      })));
                      log["a" /* default */].setLog("US_GLOBAL_MIX\u7B2C".concat(_i2 + 1, "/").concat(batchOrderIdList.length, "\u6279\uFF0CGLOBAL\u8FD4\u56DE").concat(globalList.length, "\u4E2A\u8BA2\u5355"));

                    case 42:
                    case "end":
                      return _context4.stop();
                  }
                }
              }, _loop);
            });
            _i2 = 0;

          case 12:
            if (!(_i2 < batchOrderIdList.length)) {
              _context5.next = 22;
              break;
            }

            return _context5.delegateYield(_loop(_i2), "t0", 14);

          case 14:
            _ret = _context5.t0;

            if (!(_ret === "continue")) {
              _context5.next = 17;
              break;
            }

            return _context5.abrupt("continue", 19);

          case 17:
            if (!(_typeof(_ret) === "object")) {
              _context5.next = 19;
              break;
            }

            return _context5.abrupt("return", _ret.v);

          case 19:
            _i2++;
            _context5.next = 12;
            break;

          case 22:
            return _context5.abrupt("return", buildCbSupplierPriceByOrderResult(task, orderIds, succOrderList, failOrderIds, lastErrorMsg));

          case 23:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee4);
  }));

  return function getCbSupplierPriceByMixedOrder(_x6) {
    return _ref4.apply(this, arguments);
  };
}();

var requestLocalSupplierPriceByOrder = /*#__PURE__*/function () {
  var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(task, parentOrderSnList) {
    var pageNumber,
        retry,
        _yield$nativeRequest2,
        success,
        errorMsg,
        errorCode,
        result,
        msg,
        _msg3,
        _args6 = arguments;

    return _regeneratorRuntime().wrap(function _callee5$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            pageNumber = _args6.length > 2 && _args6[2] !== undefined ? _args6[2] : 1;
            retry = _args6.length > 3 && _args6[3] !== undefined ? _args6[3] : 0;
            _context6.prev = 2;
            _context6.next = 5;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/mms/kirogi/local/recentOrderList"), 'post', {
              pageNumber: pageNumber,
              pageSize: LOCAL_ORDER_PAGE_SIZE,
              sortType: 9,
              queryType: 0,
              parentOrderSnList: parentOrderSnList
            }, {
              'Content-Type': 'application/json;charset=UTF-8'
            });

          case 5:
            _yield$nativeRequest2 = _context6.sent;
            success = _yield$nativeRequest2.success;
            errorMsg = _yield$nativeRequest2.errorMsg;
            errorCode = _yield$nativeRequest2.errorCode;
            result = _yield$nativeRequest2.result;

            if (!(success && result && Array.isArray(result.pageItems))) {
              _context6.next = 12;
              break;
            }

            return _context6.abrupt("return", {
              code: 0,
              result: result
            });

          case 12:
            msg = "\u6839\u636E\u8BA2\u5355\u53F7\u83B7\u53D6\u672C\u571F\u5E97\u4F9B\u8D27\u4EF7\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errorMsg || errorCode || JSON.stringify(result));
            log["a" /* default */].setLog(msg);
            return _context6.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 17:
            _context6.prev = 17;
            _context6.t0 = _context6["catch"](2);
            _msg3 = "\u6839\u636E\u8BA2\u5355\u53F7\u83B7\u53D6\u672C\u571F\u5E97\u4F9B\u8D27\u4EF7\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context6.t0, task));
            log["a" /* default */].setLog(_msg3);

            if (!(retry < 3)) {
              _context6.next = 26;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context6.next = 25;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 25:
            return _context6.abrupt("return", requestLocalSupplierPriceByOrder(task, parentOrderSnList, pageNumber, ++retry));

          case 26:
            return _context6.abrupt("return", {
              code: 1,
              msg: _msg3
            });

          case 27:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee5, null, [[2, 17]]);
  }));

  return function requestLocalSupplierPriceByOrder(_x7, _x8) {
    return _ref5.apply(this, arguments);
  };
}();

var getLocalSupplierPriceByOrderBatch = /*#__PURE__*/function () {
  var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(task, parentOrderSnList) {
    var list, pageNumber, totalItemNum, hasMore, _yield$requestLocalSu, code, result, msg, _ref7, _ref7$pageItems, pageItems, _ref7$totalItemNum, total, returnedOrderIdSet, failOrderIds;

    return _regeneratorRuntime().wrap(function _callee6$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            list = [];
            pageNumber = 1;
            totalItemNum = 0;
            hasMore = true;

          case 4:
            if (!hasMore) {
              _context7.next = 24;
              break;
            }

            _context7.next = 7;
            return requestLocalSupplierPriceByOrder(task, parentOrderSnList, pageNumber);

          case 7:
            _yield$requestLocalSu = _context7.sent;
            code = _yield$requestLocalSu.code;
            result = _yield$requestLocalSu.result;
            msg = _yield$requestLocalSu.msg;

            if (!(code !== 0)) {
              _context7.next = 13;
              break;
            }

            return _context7.abrupt("return", {
              code: code,
              msg: msg
            });

          case 13:
            _ref7 = result || {}, _ref7$pageItems = _ref7.pageItems, pageItems = _ref7$pageItems === void 0 ? [] : _ref7$pageItems, _ref7$totalItemNum = _ref7.totalItemNum, total = _ref7$totalItemNum === void 0 ? 0 : _ref7$totalItemNum;
            totalItemNum = total;
            list.push.apply(list, _toConsumableArray(pageItems.map(pickLocalOrderFields).filter(Boolean))); // 实际接口响应的totalItemNumc超过100时，获取下一页数据

            if (!(!pageItems.length || pageNumber * LOCAL_ORDER_PAGE_SIZE >= totalItemNum)) {
              _context7.next = 19;
              break;
            }

            hasMore = false;
            return _context7.abrupt("continue", 4);

          case 19:
            pageNumber++;
            _context7.next = 22;
            return Object(util["h" /* delayed */])(300);

          case 22:
            _context7.next = 4;
            break;

          case 24:
            returnedOrderIdSet = new Set(list.map(function (item) {
              return String(item.parentOrderMap.parentOrderSn);
            })); // 未成功获取的订单ids

            failOrderIds = parentOrderSnList.filter(function (parentOrderSn) {
              return !returnedOrderIdSet.has(String(parentOrderSn));
            });
            return _context7.abrupt("return", {
              code: 0,
              list: list,
              failOrderIds: failOrderIds
            });

          case 27:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee6);
  }));

  return function getLocalSupplierPriceByOrderBatch(_x9, _x10) {
    return _ref6.apply(this, arguments);
  };
}();

var getLocalSupplierPriceByOrder = /*#__PURE__*/function () {
  var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(task) {
    var orderIds, failOrderIds, succOrderList, lastErrorMsg, batchOrderIdList, i, _i3, ids, _yield$getLocalSuppli, code, list, msg, missingOrderIds;

    return _regeneratorRuntime().wrap(function _callee7$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            orderIds = _toConsumableArray(new Set((task.failOrderIds || task.order_ids || task.orderIds || []).map(String).filter(Boolean)));
            failOrderIds = [];
            succOrderList = [];
            lastErrorMsg = '';

            if (orderIds.length) {
              _context8.next = 7;
              break;
            }

            task.status = 14;
            return _context8.abrupt("return", {
              code: 2,
              msg: '未获取到任何订单号，请检查 order_ids'
            });

          case 7:
            batchOrderIdList = [];

            for (i = 0; i < orderIds.length; i += LOCAL_ORDER_BATCH_SIZE) {
              batchOrderIdList.push(orderIds.slice(i, i + LOCAL_ORDER_BATCH_SIZE));
            }

            _i3 = 0;

          case 10:
            if (!(_i3 < batchOrderIdList.length)) {
              _context8.next = 27;
              break;
            }

            ids = batchOrderIdList[_i3];
            task.currentNum = Math.min((_i3 + 1) * LOCAL_ORDER_BATCH_SIZE, orderIds.length);
            task.total = orderIds.length;
            _context8.next = 16;
            return Object(util["h" /* delayed */])(500);

          case 16:
            _context8.next = 18;
            return getLocalSupplierPriceByOrderBatch(task, ids);

          case 18:
            _yield$getLocalSuppli = _context8.sent;
            code = _yield$getLocalSuppli.code;
            list = _yield$getLocalSuppli.list;
            msg = _yield$getLocalSuppli.msg;
            missingOrderIds = _yield$getLocalSuppli.failOrderIds;

            if (code === 0) {
              succOrderList.push.apply(succOrderList, _toConsumableArray(list || []));
              failOrderIds.push.apply(failOrderIds, _toConsumableArray(missingOrderIds || []));
            } else {
              failOrderIds.push.apply(failOrderIds, _toConsumableArray(ids));
              lastErrorMsg = msg;
            }

          case 24:
            _i3++;
            _context8.next = 10;
            break;

          case 27:
            if (succOrderList.length) {
              _context8.next = 30;
              break;
            }

            task.status = 14;
            return _context8.abrupt("return", {
              code: 2,
              msg: lastErrorMsg || "\u672A\u83B7\u53D6\u5230\u8BA2\u5355\u4F9B\u8D27\u4EF7\u6570\u636E,\u9700\u8981\u83B7\u53D6\u7684\u8BA2\u5355\u53F7:".concat(orderIds.join(','))
            });

          case 30:
            if (!failOrderIds.length) {
              _context8.next = 33;
              break;
            }

            task.failOrderIds = _toConsumableArray(new Set(failOrderIds));
            return _context8.abrupt("return", {
              code: 4,
              msg: '部分订单供货价获取失败',
              result: succOrderList,
              data: {
                failOrderIds: task.failOrderIds,
                order_ids: task.order_ids || task.orderIds || orderIds
              }
            });

          case 33:
            task.failOrderIds = [];
            return _context8.abrupt("return", {
              code: 0,
              msg: '获取完毕',
              result: succOrderList
            });

          case 35:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee7);
  }));

  return function getLocalSupplierPriceByOrder(_x11) {
    return _ref8.apply(this, arguments);
  };
}();

var handleGetSupplierPriceByOrder = /*#__PURE__*/function () {
  var _ref9 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(task) {
    var res, _res, msg;

    return _regeneratorRuntime().wrap(function _callee8$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            _context9.prev = 0;

            if (!(task.resCache && task.resCache.code === 0)) {
              _context9.next = 3;
              break;
            }

            return _context9.abrupt("return", task.resCache);

          case 3:
            _context9.t0 = +task.type_id;
            _context9.next = _context9.t0 === 22002 ? 6 : _context9.t0 === 22011 ? 12 : 18;
            break;

          case 6:
            _context9.next = 8;
            return getCbSupplierPriceByOrder(task);

          case 8:
            res = _context9.sent;
            task.status = [1, 2].includes(res.code) ? 14 : 15;
            task.msg = res.msg;
            return _context9.abrupt("return", res);

          case 12:
            _context9.next = 14;
            return getLocalSupplierPriceByOrder(task);

          case 14:
            _res = _context9.sent;
            task.status = [1, 2].includes(_res.code) ? 14 : 15;
            task.msg = _res.msg;
            return _context9.abrupt("return", _res);

          case 18:
            msg = "\u6682\u4E0D\u652F\u6301\u7684\u8BA2\u5355\u4F9B\u8D27\u4EF7\u4EFB\u52A1\u7C7B\u578B\uFF1A".concat(task.type_id);
            task.status = 14;
            task.msg = msg;
            return _context9.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 22:
            _context9.next = 30;
            break;

          case 24:
            _context9.prev = 24;
            _context9.t1 = _context9["catch"](0);
            log["a" /* default */].setLog("handleGetSupplierPriceByOrder error: ".concat(Object(util["u" /* isError */])(_context9.t1)));
            task.status = 14;
            task.msg = "\u6839\u636E\u8BA2\u5355\u53F7\u83B7\u53D6\u4F9B\u8D27\u4EF7\u5931\u8D25\uFF0C\u5931\u8D25\u539F\u56E0\uFF1A".concat(Object(util["u" /* isError */])(_context9.t1));
            return _context9.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 30:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee8, null, [[0, 24]]);
  }));

  return function handleGetSupplierPriceByOrder(_x12) {
    return _ref9.apply(this, arguments);
  };
}();
// CONCATENATED MODULE: ./src/platform/temu/getSupplierPrice.js
function getSupplierPrice_typeof(obj) { "@babel/helpers - typeof"; return getSupplierPrice_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getSupplierPrice_typeof(obj); }

function getSupplierPrice_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getSupplierPrice_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getSupplierPrice_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getSupplierPrice_toConsumableArray(arr) { return getSupplierPrice_arrayWithoutHoles(arr) || getSupplierPrice_iterableToArray(arr) || getSupplierPrice_unsupportedIterableToArray(arr) || getSupplierPrice_nonIterableSpread(); }

function getSupplierPrice_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getSupplierPrice_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getSupplierPrice_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getSupplierPrice_arrayLikeToArray(o, minLen); }

function getSupplierPrice_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getSupplierPrice_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getSupplierPrice_arrayLikeToArray(arr); }

function getSupplierPrice_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getSupplierPrice_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getSupplierPrice_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getSupplierPrice_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getSupplierPrice_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }




 // 获取本土供货价

var getLocalSupplierPrice = /*#__PURE__*/function () {
  var _ref = getSupplierPrice_asyncToGenerator( /*#__PURE__*/getSupplierPrice_regeneratorRuntime().mark(function _callee2(task, skuIds) {
    var retry,
        changeStoreId,
        _yield$nativeRequest,
        success,
        error_code,
        result,
        succ,
        fail,
        skuIdSet,
        msg,
        _msg,
        _args2 = arguments;

    return getSupplierPrice_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            retry = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : 0;
            _context2.prev = 1;
            changeStoreId = "".concat(task.real_mall_id, "&").concat(task.siteId);
            _context2.next = 5;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/mms/marigold/goods/v2/search#LINGXING"), 'post', {
              page_size: 100,
              page_no: 1,
              order_type: 0,
              order_field: "gmt_create",
              enable_batch_search_text: true,
              goods_search_type: 1,
              search_text: skuIds.join(',')
            });

          case 5:
            _yield$nativeRequest = _context2.sent;
            success = _yield$nativeRequest.success;
            error_code = _yield$nativeRequest.error_code;
            result = _yield$nativeRequest.result;

            if (!(success && result && result.goods_list)) {
              _context2.next = 18;
              break;
            }

            succ = [];
            fail = [];
            skuIdSet = new Set((skuIds || []).map(String));
            _context2.next = 15;
            return Promise.all(result.goods_list.map( /*#__PURE__*/function () {
              var _ref3 = getSupplierPrice_asyncToGenerator( /*#__PURE__*/getSupplierPrice_regeneratorRuntime().mark(function _callee(_ref2) {
                var supplier_price, sku_id_list, commit_id, goods_id, currency, crt_time, variant;
                return getSupplierPrice_regeneratorRuntime().wrap(function _callee$(_context) {
                  while (1) {
                    switch (_context.prev = _context.next) {
                      case 0:
                        supplier_price = _ref2.supplier_price, sku_id_list = _ref2.sku_id_list, commit_id = _ref2.commit_id, goods_id = _ref2.goods_id, currency = _ref2.currency, crt_time = _ref2.crt_time;

                        if (!supplier_price) {
                          _context.next = 5;
                          break;
                        }

                        succ.push({
                          productSkuId: sku_id_list[0],
                          supplierPrice: supplier_price,
                          currency: currency,
                          crtTime: crt_time
                        });
                        _context.next = 9;
                        break;

                      case 5:
                        _context.next = 7;
                        return getLocalVariantSupplierPrice({
                          commit_id: commit_id,
                          goods_id: goods_id,
                          host: task.host,
                          changeStoreId: changeStoreId,
                          task: task
                        });

                      case 7:
                        variant = _context.sent;

                        if (variant.code === 0) {
                          succ.push.apply(succ, getSupplierPrice_toConsumableArray(variant.result));
                        } else {
                          // 获取失败时，因为不知道是任务下发的是哪个skuid，所以得找一下
                          sku_id_list.forEach(function (sku_id) {
                            if (skuIdSet.has(String(sku_id))) fail.push(sku_id);
                          });
                        }

                      case 9:
                      case "end":
                        return _context.stop();
                    }
                  }
                }, _callee);
              }));

              return function (_x3) {
                return _ref3.apply(this, arguments);
              };
            }()));

          case 15:
            return _context2.abrupt("return", {
              code: 0,
              succ: succ,
              fail: fail
            });

          case 18:
            msg = "\u83B7\u53D6\u672C\u571F\u4F9B\u8D27\u4EF7\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(result), "-----error_code: ").concat(error_code);
            log["a" /* default */].setLog(msg);
            return _context2.abrupt("return", {
              msg: msg,
              code: 2
            });

          case 21:
            _context2.next = 33;
            break;

          case 23:
            _context2.prev = 23;
            _context2.t0 = _context2["catch"](1);
            _msg = "\u83B7\u53D6\u672C\u571F\u4F9B\u8D27\u4EF7\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context2.t0, task));
            log["a" /* default */].setLog(_msg); // 重试三次

            if (!(retry < 3)) {
              _context2.next = 32;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context2.next = 31;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 31:
            return _context2.abrupt("return", getLocalSupplierPrice(task, skuIds, ++retry));

          case 32:
            return _context2.abrupt("return", {
              msg: _msg,
              code: 2
            });

          case 33:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 23]]);
  }));

  return function getLocalSupplierPrice(_x, _x2) {
    return _ref.apply(this, arguments);
  };
}(); // 获取本土变体供货价


var getLocalVariantSupplierPrice = /*#__PURE__*/function () {
  var _ref5 = getSupplierPrice_asyncToGenerator( /*#__PURE__*/getSupplierPrice_regeneratorRuntime().mark(function _callee3(_ref4) {
    var commit_id,
        goods_id,
        host,
        changeStoreId,
        task,
        retry,
        taskId,
        _yield$nativeRequest2,
        result,
        success,
        error_code,
        msg,
        _msg2,
        _args3 = arguments;

    return getSupplierPrice_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            commit_id = _ref4.commit_id, goods_id = _ref4.goods_id, host = _ref4.host, changeStoreId = _ref4.changeStoreId, task = _ref4.task;
            retry = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : 0;
            taskId = task.task_id;
            _context3.prev = 3;
            _context3.next = 6;
            return Object(util["z" /* nativeRequest */])("".concat(host, "/mms/marigold/sku/query#LINGXING"), 'POST', {
              commit_id: commit_id,
              goods_id: goods_id,
              source_type_of_sku_query: 1
            });

          case 6:
            _yield$nativeRequest2 = _context3.sent;
            result = _yield$nativeRequest2.result;
            success = _yield$nativeRequest2.success;
            error_code = _yield$nativeRequest2.error_code;

            if (!(success && result.sku_list && result.sku_list.length)) {
              _context3.next = 14;
              break;
            }

            return _context3.abrupt("return", {
              code: 0,
              result: result.sku_list.map(function (_ref6) {
                var sku_id = _ref6.sku_id,
                    supplier_price = _ref6.supplier_price,
                    currency = _ref6.currency,
                    crt_time = _ref6.crt_time;
                return {
                  productSkuId: sku_id,
                  supplierPrice: supplier_price,
                  currency: currency,
                  crtTime: crt_time
                };
              })
            });

          case 14:
            msg = "\u83B7\u53D6\u672C\u571F\u53D8\u4F53\u4F9B\u8D27\u4EF7\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(error_code, ",result----").concat(JSON.stringify(result));
            log["a" /* default */].report(msg, 'except', {
              goods_id: goods_id,
              taskId: taskId
            });
            return _context3.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 17:
            _context3.next = 29;
            break;

          case 19:
            _context3.prev = 19;
            _context3.t0 = _context3["catch"](3);
            _msg2 = "\u83B7\u53D6\u672C\u571F\u53D8\u4F53\u4F9B\u8D27\u4EF7\u8BF7\u6C42\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context3.t0, task));
            log["a" /* default */].report(_msg2, 'except', {
              goods_id: goods_id,
              taskId: taskId
            }); // 重试三次

            if (!(retry < 3)) {
              _context3.next = 28;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context3.next = 27;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 27:
            return _context3.abrupt("return", getLocalVariantSupplierPrice({
              commit_id: commit_id,
              goods_id: goods_id,
              host: host,
              changeStoreId: changeStoreId,
              taskId: taskId
            }, ++retry));

          case 28:
            return _context3.abrupt("return", {
              code: 1,
              msg: _msg2
            });

          case 29:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[3, 19]]);
  }));

  return function getLocalVariantSupplierPrice(_x4) {
    return _ref5.apply(this, arguments);
  };
}(); // 获取跨境供货价


var getCbSupplierPrice = /*#__PURE__*/function () {
  var _ref7 = getSupplierPrice_asyncToGenerator( /*#__PURE__*/getSupplierPrice_regeneratorRuntime().mark(function _callee4(task, skuIds) {
    var retry,
        _yield$nativeRequest3,
        success,
        errorMsg,
        result,
        msg,
        _msg3,
        _args4 = arguments;

    return getSupplierPrice_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            retry = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : 0;
            _context4.prev = 1;
            _context4.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/visage-agent-seller/product/skc/pageQuery"), // host需要改为 cbGLOBALhost
            'post', {
              productSkuIds: skuIds,
              page: 1,
              pageSize: 200
            }, {
              Mallid: task.real_mall_id
            });

          case 4:
            _yield$nativeRequest3 = _context4.sent;
            success = _yield$nativeRequest3.success;
            errorMsg = _yield$nativeRequest3.errorMsg;
            result = _yield$nativeRequest3.result;

            if (!(success && result && result.pageItems)) {
              _context4.next = 12;
              break;
            }

            return _context4.abrupt("return", {
              code: 0,
              succ: result.pageItems.reduce(function (arr, _ref8) {
                var productSkuSummaries = _ref8.productSkuSummaries,
                    createdAt = _ref8.createdAt;
                return arr.concat(productSkuSummaries.map(function (_ref9) {
                  var productSkuId = _ref9.productSkuId,
                      supplierPrice = _ref9.supplierPrice,
                      currencyType = _ref9.currencyType,
                      siteSupplierPrices = _ref9.siteSupplierPrices;
                  return {
                    productSkuId: productSkuId,
                    supplierPrice: supplierPrice,
                    siteSupplierPrices: siteSupplierPrices,
                    crtTime: createdAt,
                    currency: currencyType
                  };
                }));
              }, [])
            });

          case 12:
            msg = "\u83B7\u53D6\u8DE8\u5883\u4F9B\u8D27\u4EF7\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errorMsg);
            log["a" /* default */].setLog(msg);
            return _context4.abrupt("return", {
              msg: msg,
              code: 2
            });

          case 15:
            _context4.next = 27;
            break;

          case 17:
            _context4.prev = 17;
            _context4.t0 = _context4["catch"](1);
            _msg3 = "\u83B7\u53D6\u8DE8\u5883\u4F9B\u8D27\u4EF7\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context4.t0, task));
            log["a" /* default */].setLog(_msg3); // 重试三次

            if (!(retry < 3)) {
              _context4.next = 26;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context4.next = 25;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 25:
            return _context4.abrupt("return", getCbSupplierPrice(task, skuIds, ++retry));

          case 26:
            return _context4.abrupt("return", {
              msg: _msg3,
              code: 2
            });

          case 27:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[1, 17]]);
  }));

  return function getCbSupplierPrice(_x5, _x6) {
    return _ref7.apply(this, arguments);
  };
}();

var getSupplierPrice = /*#__PURE__*/function () {
  var _ref10 = getSupplierPrice_asyncToGenerator( /*#__PURE__*/getSupplierPrice_regeneratorRuntime().mark(function _callee5(task) {
    var num, handle, _res, skuIds, failSkuIds, succSkuIds, msg, res, count, batchSkuIds, i, ids, _yield$handle, code, errormMsg, fail, succ;

    return getSupplierPrice_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            // 获取单次请求skuid数量&不同类型方法
            if (+task.platform_code === 10022) {
              num = 200;
              handle = getCbSupplierPrice;
            } else {
              _res = {
                'GLOBAL': {
                  num: 200,
                  handle: getCbSupplierPrice
                },
                'LOCAL': {
                  num: 100,
                  handle: getLocalSupplierPrice
                }
              }[task.store_type];
              num = _res.num;
              handle = _res.handle;
            }

            skuIds = task.failSkuIds || task.skuIds || [];
            failSkuIds = [];
            succSkuIds = [];
            res = {
              code: 0,
              msg: ''
            };
            count = Math.ceil(skuIds.length / num);
            batchSkuIds = Array(count).fill(1).map(function (i, key) {
              return skuIds.slice(key * 200, (key + 1) * 200);
            }); // 分批遍历获取，一次性拿完后再上报

            i = 0;

          case 8:
            if (!(i < batchSkuIds.length)) {
              _context5.next = 23;
              break;
            }

            ids = batchSkuIds[i]; // 等待5s

            _context5.next = 12;
            return Object(util["h" /* delayed */])(5);

          case 12:
            _context5.next = 14;
            return handle(task, ids);

          case 14:
            _yield$handle = _context5.sent;
            code = _yield$handle.code;
            errormMsg = _yield$handle.errormMsg;
            fail = _yield$handle.fail;
            succ = _yield$handle.succ;

            if (code === 0) {
              // 执行前记录当前已获取数据
              task.currentNum = (i + 1) * 200;
              task.total = skuIds.length;
              succSkuIds.push.apply(succSkuIds, getSupplierPrice_toConsumableArray(succ || []));
            } else {
              failSkuIds.push.apply(failSkuIds, getSupplierPrice_toConsumableArray(fail || ids)); // 错误消息的话就取最后一个就行，一搬有报错都是一样的报错

              msg = errormMsg;
            }

          case 20:
            i++;
            _context5.next = 8;
            break;

          case 23:
            if (!succSkuIds.length) {
              _context5.next = 27;
              break;
            }

            // 上报的数据
            res.result = succSkuIds;
            _context5.next = 31;
            break;

          case 27:
            // 一条都没获取到，上报异常
            res.code = 2;
            res.msg = "\u672A\u83B7\u53D6\u5230\u4EFB\u4F55\u6570\u636E,\u9700\u8981\u83B7\u53D6\u7684skuId:".concat(skuIds.join(','));
            task.status = 14;
            return _context5.abrupt("return", res);

          case 31:
            // 记录获取失败的skuid
            if (failSkuIds.length) {
              task.failSkuIds = failSkuIds;
              res.code = 4;
              res.data = {
                failSkuIds: failSkuIds,
                skuIds: task.skuIds
              };
              res.msg = msg;
            } else {
              res.msg = '获取完毕';
            }

            return _context5.abrupt("return", res);

          case 33:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function getSupplierPrice(_x7) {
    return _ref10.apply(this, arguments);
  };
}();

var handleGetSupplierPrice = /*#__PURE__*/function () {
  var _ref11 = getSupplierPrice_asyncToGenerator( /*#__PURE__*/getSupplierPrice_regeneratorRuntime().mark(function _callee6(task) {
    var loginRes, msg, res;
    return getSupplierPrice_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.prev = 0;

            if (!isOrderSupplierPriceTask(task)) {
              _context6.next = 3;
              break;
            }

            return _context6.abrupt("return", handleGetSupplierPriceByOrder(task));

          case 3:
            if (!(task.resCache && task.resCache.code === 0)) {
              _context6.next = 5;
              break;
            }

            return _context6.abrupt("return", task.resCache);

          case 5:
            if (!(task.platform_code === 10022 || task.store_type === 'GLOBAL')) {
              _context6.next = 14;
              break;
            }

            _context6.next = 8;
            return Object(temu["g" /* loginCb */])(task);

          case 8:
            loginRes = _context6.sent;

            if (loginRes) {
              _context6.next = 14;
              break;
            }

            msg = '切换到美区或欧区站点失败，请检查';
            task.msg = msg;
            log["a" /* default */].setLog(msg);
            return _context6.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 14:
            _context6.next = 16;
            return getSupplierPrice(task);

          case 16:
            res = _context6.sent;
            task.status = [1, 2].indexOf(res.code) > -1 ? 14 : 15;
            task.msg = res.msg;
            return _context6.abrupt("return", res);

          case 22:
            _context6.prev = 22;
            _context6.t0 = _context6["catch"](0);
            log["a" /* default */].setLog("handleGetSupplierPrice error: ".concat(Object(util["u" /* isError */])(_context6.t0)));
            task.status = 14;
            task.msg = "\u83B7\u53D6\u4F9B\u8D27\u4EF7\u5931\u8D25\uFF0C\u5931\u8D25\u539F\u56E0\uFF1A".concat(Object(util["u" /* isError */])(_context6.t0));
            return _context6.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 28:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6, null, [[0, 22]]);
  }));

  return function handleGetSupplierPrice(_x8) {
    return _ref11.apply(this, arguments);
  };
}();

/* harmony default export */ var temu_getSupplierPrice = (handleGetSupplierPrice);
// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("c1df");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);

// EXTERNAL MODULE: ./src/platform/common/newTask.js
var common_newTask = __webpack_require__("5e61");

// CONCATENATED MODULE: ./src/platform/temu/getSaleVolume.js
function getSaleVolume_typeof(obj) { "@babel/helpers - typeof"; return getSaleVolume_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getSaleVolume_typeof(obj); }

function getSaleVolume_toConsumableArray(arr) { return getSaleVolume_arrayWithoutHoles(arr) || getSaleVolume_iterableToArray(arr) || getSaleVolume_unsupportedIterableToArray(arr) || getSaleVolume_nonIterableSpread(); }

function getSaleVolume_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getSaleVolume_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getSaleVolume_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getSaleVolume_arrayLikeToArray(o, minLen); }

function getSaleVolume_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getSaleVolume_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getSaleVolume_arrayLikeToArray(arr); }

function getSaleVolume_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getSaleVolume_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getSaleVolume_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getSaleVolume_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getSaleVolume_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getSaleVolume_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getSaleVolume_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getSaleVolume_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }





 // 获取销量列表的页数

var $count = 40;
/**
 * @description 获取近三十天销量
 * @param {*} task
 * @returns res object  code: 0: 成功 1:失败 2：异常 5：无销量
 */

var requestSaleVolumeBySkuId = /*#__PURE__*/function () {
  var _ref = getSaleVolume_asyncToGenerator( /*#__PURE__*/getSaleVolume_regeneratorRuntime().mark(function _callee(task, skuIds, retry) {
    var curDate, endDate, startDate, _yield$nativeRequest, success, errorMsg, result, msg, _msg, _msg2;

    return getSaleVolume_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(util["t" /* getServiceTime */])();

          case 3:
            curDate = _context.sent;
            endDate = moment_default()(curDate).format('YYYY-MM-DD');
            startDate = moment_default()(curDate).subtract(30, 'days').format('YYYY-MM-DD');
            _context.next = 8;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/mms/venom/api/supplier/sales/management/querySkuSalesNumber"), // host需要改为 cbGlobalHost
            'post', {
              productSkuIds: skuIds,
              startDate: startDate,
              endDate: endDate
            }, {
              Mallid: task.real_mall_id
            });

          case 8:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            errorMsg = _yield$nativeRequest.errorMsg;
            result = _yield$nativeRequest.result;

            if (!(success && result)) {
              _context.next = 22;
              break;
            }

            if (!result.length) {
              _context.next = 17;
              break;
            }

            return _context.abrupt("return", {
              code: 0,
              result: result
            });

          case 17:
            msg = "".concat(skuIds.splice(0, 3).join(','), "\u7B49skuid\u65E0\u9500\u91CF");
            log["a" /* default */].setLog(msg);
            return _context.abrupt("return", {
              msg: msg,
              code: 5
            });

          case 20:
            _context.next = 25;
            break;

          case 22:
            _msg = "\u83B7\u53D6\u5168\u6258\u7BA1\u9500\u91CF\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            log["a" /* default */].setLog(_msg);
            return _context.abrupt("return", {
              msg: _msg,
              code: 1
            });

          case 25:
            _context.next = 37;
            break;

          case 27:
            _context.prev = 27;
            _context.t0 = _context["catch"](0);
            _msg2 = "\u83B7\u53D6\u8FD1\u4E09\u5341\u5929\u9500\u91CF\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context.t0));
            log["a" /* default */].setLog(_msg2); // 重试三次

            if (!(retry < 3)) {
              _context.next = 36;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context.next = 35;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 35:
            return _context.abrupt("return", requestSaleVolumeBySkuId(task, skuIds, ++retry));

          case 36:
            return _context.abrupt("return", {
              msg: _msg2,
              code: 2
            });

          case 37:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 27]]);
  }));

  return function requestSaleVolumeBySkuId(_x, _x2, _x3) {
    return _ref.apply(this, arguments);
  };
}();
/**
 * @description 获取全托管近三十天销量列表&供货价&供货价
 * @param {*} task
 * @returns
 */


var requestSkuid = /*#__PURE__*/function () {
  var _ref2 = getSaleVolume_asyncToGenerator( /*#__PURE__*/getSaleVolume_regeneratorRuntime().mark(function _callee2(task) {
    var pageNo,
        retry,
        _yield$nativeRequest2,
        success,
        errorMsg,
        result,
        subOrderList,
        info,
        total,
        msg,
        _msg3,
        _args2 = arguments;

    return getSaleVolume_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            pageNo = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 1;
            retry = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : 0;
            _context2.prev = 2;
            _context2.next = 5;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/mms/venom/api/supplier/sales/management/listWarehouse"), // host需要改为 cbGlobalHost
            'post', {
              pageNo: pageNo,
              pageSize: $count,
              isLack: 0,
              priceAdjustRecentDays: 7,
              thirtyDaysSaleVolumMin: 1,
              advancedSort: {
                firstOrderByDesc: 1,
                firstOrderByParam: 'lastThirtyDaysSaleVolume',
                secondOrderByDesc: 1,
                secondOrderByParam: 'lastThirtyDaysSaleVolume'
              }
            }, {
              Mallid: task.real_mall_id
            });

          case 5:
            _yield$nativeRequest2 = _context2.sent;
            success = _yield$nativeRequest2.success;
            errorMsg = _yield$nativeRequest2.errorMsg;
            result = _yield$nativeRequest2.result;

            if (!(success && result && result.subOrderList)) {
              _context2.next = 19;
              break;
            }

            subOrderList = result.subOrderList;
            info = [];
            total = result.total || 0;

            if (subOrderList.length) {
              _context2.next = 15;
              break;
            }

            return _context2.abrupt("return", {
              code: 0,
              msg: '获取完毕',
              info: info,
              total: total
            });

          case 15:
            // 收集skuid&供货价
            subOrderList.forEach(function (_ref3) {
              var skuQuantityDetailList = _ref3.skuQuantityDetailList;

              if (skuQuantityDetailList.length) {
                info.push.apply(info, getSaleVolume_toConsumableArray(skuQuantityDetailList.map(function (_ref4) {
                  var productSkuId = _ref4.productSkuId,
                      supplierPrice = _ref4.supplierPrice,
                      currencyType = _ref4.currencyType,
                      skuExtCode = _ref4.skuExtCode;
                  return {
                    productSkuId: productSkuId,
                    supplierPrice: supplierPrice,
                    currencyType: currencyType,
                    skuExtCode: skuExtCode
                  };
                })));
              }
            });
            return _context2.abrupt("return", {
              code: 0,
              info: info,
              total: total,
              pageNo: pageNo
            });

          case 19:
            msg = "\u83B7\u53D6\u5168\u6258\u7BA1\u8FD130\u5929\u9500\u91CF\u5217\u8868\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            log["a" /* default */].setLog(msg);
            return _context2.abrupt("return", {
              msg: msg,
              pageNo: pageNo,
              code: 1
            });

          case 22:
            _context2.next = 34;
            break;

          case 24:
            _context2.prev = 24;
            _context2.t0 = _context2["catch"](2);
            _msg3 = "\u83B7\u53D6\u5168\u6258\u7BA1\u8FD1\u4E09\u5341\u5929\u9500\u91CF\u5217\u8868&\u4F9B\u8D27\u4EF7\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context2.t0, task));
            log["a" /* default */].setLog(_msg3); // 重试三次

            if (!(retry < 3)) {
              _context2.next = 33;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context2.next = 32;
            return Object(util["h" /* delayed */])(5 * 1000);

          case 32:
            return _context2.abrupt("return", requestSkuid(task, pageNo, ++retry));

          case 33:
            return _context2.abrupt("return", {
              msg: _msg3,
              pageNo: pageNo,
              code: 2
            });

          case 34:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[2, 24]]);
  }));

  return function requestSkuid(_x4) {
    return _ref2.apply(this, arguments);
  };
}();
/**
 * 获取全托管skuid&供货价 - 用户单独勾选sku获取销量时用到
 * @param {*} task
 * @param {*} retry
 * @returns
 */


var getSaleVolume_getCbSupplierPrice = /*#__PURE__*/function () {
  var _ref5 = getSaleVolume_asyncToGenerator( /*#__PURE__*/getSaleVolume_regeneratorRuntime().mark(function _callee3(task) {
    var retry,
        pageNo,
        _yield$nativeRequest3,
        success,
        errorMsg,
        result,
        skuIdSet,
        msg,
        _msg4,
        _args3 = arguments;

    return getSaleVolume_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            retry = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : 0;
            pageNo = task.pageNo || 1;
            _context3.prev = 2;
            _context3.next = 5;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/visage-agent-seller/product/skc/pageQuery"), // host需要改为 cbGlobalHost
            'post', {
              productSkuIds: task.skuIds,
              page: pageNo,
              pageSize: $count
            }, {
              Mallid: task.real_mall_id
            });

          case 5:
            _yield$nativeRequest3 = _context3.sent;
            success = _yield$nativeRequest3.success;
            errorMsg = _yield$nativeRequest3.errorMsg;
            result = _yield$nativeRequest3.result;

            if (!(success && result && result.pageItems)) {
              _context3.next = 14;
              break;
            }

            skuIdSet = new Set((task.skuIds || []).map(String));
            return _context3.abrupt("return", {
              code: 0,
              info: result.pageItems.reduce(function (arr, _ref6) {
                var productSkuSummaries = _ref6.productSkuSummaries;
                return arr.concat(productSkuSummaries.filter(function (_ref7) {
                  var productSkuId = _ref7.productSkuId;
                  return skuIdSet.has(String(productSkuId));
                }).map(function (_ref8) {
                  var productSkuId = _ref8.productSkuId,
                      supplierPrice = _ref8.supplierPrice,
                      currencyType = _ref8.currencyType,
                      extCode = _ref8.extCode;
                  return {
                    productSkuId: productSkuId,
                    supplierPrice: supplierPrice,
                    currencyType: currencyType,
                    skuExtCode: extCode
                  };
                }));
              }, []),
              total: result.total,
              pageNo: pageNo
            });

          case 14:
            msg = "\u83B7\u53D6\u5168\u6258\u7BA1\u4F9B\u8D27\u4EF7\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errorMsg);
            log["a" /* default */].setLog(msg);
            return _context3.abrupt("return", {
              msg: msg,
              pageNo: pageNo,
              code: 1
            });

          case 17:
            _context3.next = 29;
            break;

          case 19:
            _context3.prev = 19;
            _context3.t0 = _context3["catch"](2);
            _msg4 = "\u83B7\u53D6\u5168\u6258\u7BA1skuid&\u4F9B\u8D27\u4EF7\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context3.t0, task));
            log["a" /* default */].setLog(_msg4); // 重试三次

            if (!(retry < 3)) {
              _context3.next = 28;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context3.next = 27;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 27:
            return _context3.abrupt("return", getSaleVolume_getCbSupplierPrice(task, ++retry));

          case 28:
            return _context3.abrupt("return", {
              msg: _msg4,
              pageNo: 1,
              code: 2
            });

          case 29:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[2, 19]]);
  }));

  return function getCbSupplierPrice(_x5) {
    return _ref5.apply(this, arguments);
  };
}();

var getAllSaleVolume = /*#__PURE__*/function () {
  var _ref9 = getSaleVolume_asyncToGenerator( /*#__PURE__*/getSaleVolume_regeneratorRuntime().mark(function _callee4(task) {
    var _ref10, code, msg, pageNo, info, total, count, batchSkuIds, saleList, i, saleVolumeList;

    return getSaleVolume_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            if (!(task.skuIds && task.skuIds.length)) {
              _context4.next = 6;
              break;
            }

            _context4.next = 3;
            return getSaleVolume_getCbSupplierPrice(task);

          case 3:
            _context4.t0 = _context4.sent;
            _context4.next = 9;
            break;

          case 6:
            _context4.next = 8;
            return requestSkuid(task, task.pageNo || 1);

          case 8:
            _context4.t0 = _context4.sent;

          case 9:
            _ref10 = _context4.t0;
            code = _ref10.code;
            msg = _ref10.msg;
            pageNo = _ref10.pageNo;
            info = _ref10.info;
            total = _ref10.total;
            // 记录当前页数
            task.pageNo = pageNo; // 获取失败，上报状态

            if (!(code !== 0)) {
              _context4.next = 18;
              break;
            }

            return _context4.abrupt("return", {
              code: 2,
              msg: msg,
              data: {
                pageNo: pageNo,
                skuIds: task.skuIds
              }
            });

          case 18:
            count = Math.ceil(info.length / 100);
            batchSkuIds = Array(count).fill(1).map(function (i, key) {
              return info.slice(key * 100, (key + 1) * 100);
            });
            saleList = []; // 批量获取，每次获取100个sku的销量（原因：傻逼temu不能同时获取超过100个sku的销量）

            i = 0;

          case 22:
            if (!(i < batchSkuIds.length)) {
              _context4.next = 35;
              break;
            }

            _context4.next = 25;
            return requestSaleVolumeBySkuId(task, batchSkuIds[i].map(function (_ref11) {
              var productSkuId = _ref11.productSkuId;
              return productSkuId;
            }));

          case 25:
            saleVolumeList = _context4.sent;

            if (!(saleVolumeList.code !== 0)) {
              _context4.next = 31;
              break;
            }

            if (!(saleVolumeList.code !== 5)) {
              _context4.next = 29;
              break;
            }

            return _context4.abrupt("return", {
              code: saleVolumeList.code,
              msg: saleVolumeList.msg + "----sku\u6570\u91CF: ".concat(info.length),
              data: {
                pageNo: pageNo,
                skuIds: task.skuIds
              }
            });

          case 29:
            _context4.next = 32;
            break;

          case 31:
            saleList.push.apply(saleList, getSaleVolume_toConsumableArray(saleVolumeList.result));

          case 32:
            i++;
            _context4.next = 22;
            break;

          case 35:
            if (!(saleList.length === 0)) {
              _context4.next = 37;
              break;
            }

            return _context4.abrupt("return", {
              code: 0,
              result: {
                total: total,
                supplierPriceList: info
              }
            });

          case 37:
            // 记录当前已获取数据，用于显示
            task.currentNum = (task.currentNum || 0) + info.length;
            task.total = total;
            task.curPage = pageNo * $count; // 判断是否获取完毕

            if (!(task.curPage < total)) {
              _context4.next = 45;
              break;
            }

            task.pageNo += 1; // 上报当前状态

            _context4.next = 44;
            return common_newTask["a" /* default */].uploadTask({
              code: 4,
              data: {
                pageNo: task.pageNo
              },
              result: {
                total: total,
                supplierPriceList: info,
                saleVolume: saleList
              }
            }, task);

          case 44:
            return _context4.abrupt("return", getAllSaleVolume(task));

          case 45:
            return _context4.abrupt("return", {
              code: 0,
              result: {
                total: total,
                supplierPriceList: info,
                saleVolume: saleList
              }
            });

          case 46:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));

  return function getAllSaleVolume(_x6) {
    return _ref9.apply(this, arguments);
  };
}();

var getSaleVolume = /*#__PURE__*/function () {
  var _ref12 = getSaleVolume_asyncToGenerator( /*#__PURE__*/getSaleVolume_regeneratorRuntime().mark(function _callee5(task) {
    var loginRes, msg, res;
    return getSaleVolume_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            if (!(task.resCache && task.resCache.code === 0)) {
              _context5.next = 2;
              break;
            }

            return _context5.abrupt("return", task.resCache);

          case 2:
            _context5.next = 4;
            return Object(temu["g" /* loginCb */])(task);

          case 4:
            loginRes = _context5.sent;

            if (loginRes) {
              _context5.next = 10;
              break;
            }

            msg = '切换到美区或欧区站点失败，请检查';
            task.msg = msg;
            log["a" /* default */].setLog(msg);
            return _context5.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 10:
            _context5.next = 12;
            return getAllSaleVolume(task);

          case 12:
            res = _context5.sent;
            task.status = [1, 2].indexOf(res.code) > -1 ? 14 : 15;
            task.msg = res.msg;
            return _context5.abrupt("return", res);

          case 16:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function getSaleVolume(_x7) {
    return _ref12.apply(this, arguments);
  };
}();

/* harmony default export */ var temu_getSaleVolume = (getSaleVolume); // window.requestSaleVolumeBySkuId = () => {
//   requestSaleVolumeBySkuId({
//     host: 'https://seller.kuajingmaihuo.com',
//     skuIds: [
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118,
//       3092153307, 3269504539, 1851325013, 4010808419, 4582729262, 1857468159, 6711667118
//     ],
//     store_id: 65016470556
//   })
// }
// window.requestSkuid = () => {
//   requestSkuid({
//     host: 'https://seller.kuajingmaihuo.com',
//     store_id: 65016470556
//   })
// }
// EXTERNAL MODULE: ./node_modules/axios/index.js
var axios = __webpack_require__("bc3a");
var axios_default = /*#__PURE__*/__webpack_require__.n(axios);

// EXTERNAL MODULE: ./node_modules/jszip/dist/jszip.min.js
var jszip_min = __webpack_require__("c4e3");
var jszip_min_default = /*#__PURE__*/__webpack_require__.n(jszip_min);

// CONCATENATED MODULE: ./src/platform/temu/qtReport/getBillDetailsReport.js
function getBillDetailsReport_typeof(obj) { "@babel/helpers - typeof"; return getBillDetailsReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getBillDetailsReport_typeof(obj); }

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getBillDetailsReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getBillDetailsReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getBillDetailsReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getBillDetailsReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getBillDetailsReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getBillDetailsReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getBillDetailsReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }








var generateReport = /*#__PURE__*/function () {
  var _ref = getBillDetailsReport_asyncToGenerator( /*#__PURE__*/getBillDetailsReport_regeneratorRuntime().mark(function _callee(task) {
    var _yield$nativeRequest, success, errorCode, errorMsg, msg;

    return getBillDetailsReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export"), 'post', {
              beginTime: task.report_custom_datetime_start,
              endTime: task.report_custom_datetime_end,
              fundDetailExport: true,
              taskType: 19
            }, {
              Mallid: task.real_mall_id
            });

          case 3:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            errorCode = _yield$nativeRequest.errorCode;
            errorMsg = _yield$nativeRequest.errorMsg;

            if (!success) {
              _context.next = 13;
              break;
            }

            log["a" /* default */].setLog('全托管财务明细报表生成成功');
            task.status = 6;
            return _context.abrupt("return", true);

          case 13:
            if (!(errorCode == 2000000)) {
              _context.next = 16;
              break;
            }

            task.status = 6;
            return _context.abrupt("return", true);

          case 16:
            if (!(errorCode == 3000000)) {
              _context.next = 18;
              break;
            }

            return _context.abrupt("return", 'needSplit');

          case 18:
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            task.status = 3;
            log["a" /* default */].setLog(msg);
            task.msg = msg;

          case 22:
            _context.next = 30;
            break;

          case 24:
            _context.prev = 24;
            _context.t0 = _context["catch"](0);
            task.status = 3;
            task.msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context.t0, task));
            log["a" /* default */].setLog(task.msg);
            return _context.abrupt("return", false);

          case 30:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 24]]);
  }));

  return function generateReport(_x) {
    return _ref.apply(this, arguments);
  };
}(); // 查询报表生成状态


var awaitReportDownload = /*#__PURE__*/function () {
  var _ref2 = getBillDetailsReport_asyncToGenerator( /*#__PURE__*/getBillDetailsReport_regeneratorRuntime().mark(function _callee2(task) {
    var count,
        res,
        list,
        find,
        _args2 = arguments;
    return getBillDetailsReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            count = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 0;
            _context2.prev = 1;

            if (!(count >= 5)) {
              _context2.next = 7;
              break;
            }

            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
            task.run_time = 0;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D"; // task.status = 6

            return _context2.abrupt("return", false);

          case 7:
            _context2.next = 9;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export/history/page"), 'post', {
              pageNum: 1,
              pageSize: 50,
              taskType: 19
            }, {
              Mallid: task.real_mall_id
            });

          case 9:
            res = _context2.sent;

            if (!(res && res.result)) {
              _context2.next = 35;
              break;
            }

            list = res.result.merchantMerchantFileExportHistoryList;
            find = list.find(function (item) {
              return item.fundDetailExport == true && item.searchExportTimeBegin == task.report_custom_datetime_start && item.searchExportTimeEnd == task.report_custom_datetime_end && item.createTime > Date.now() - 24 * 60 * 60 * 1000;
            });

            if (!find) {
              _context2.next = 31;
              break;
            }

            _context2.t0 = find.status;
            _context2.next = _context2.t0 === 2 ? 17 : _context2.t0 === 1 ? 22 : 22;
            break;

          case 17:
            task.status = 2;
            task.agentSellerExportParams = find.agentSellerExportParams;
            task.agentSellerExportSign = find.agentSellerExportSign;
            task.downloadId = find.id;
            return _context2.abrupt("return", true);

          case 22:
            // task.status = 6
            task.msg = '文件正在生成中';
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context2.next = 26;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 26:
            _context2.next = 28;
            return awaitReportDownload(task, ++count);

          case 28:
            return _context2.abrupt("return", _context2.sent);

          case 29:
            _context2.next = 33;
            break;

          case 31:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25----not find\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D";
            log["a" /* default */].setLog(task.msg);

          case 33:
            _context2.next = 37;
            break;

          case 35:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0CTemu\u89C4\u5219\u53EF\u80FD\u6539\u53D8\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D";
            log["a" /* default */].setLog(task.msg);

          case 37:
            _context2.next = 43;
            break;

          case 39:
            _context2.prev = 39;
            _context2.t1 = _context2["catch"](1);
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u539F\u59CB\u9875\u9762\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context2.t1, task));
            log["a" /* default */].setLog(task.msg);

          case 43:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 39]]);
  }));

  return function awaitReportDownload(_x2) {
    return _ref2.apply(this, arguments);
  };
}(); // 获取下载报表链接


var getCnReportUrl = /*#__PURE__*/function () {
  var _ref3 = getBillDetailsReport_asyncToGenerator( /*#__PURE__*/getBillDetailsReport_regeneratorRuntime().mark(function _callee3(task) {
    var res;
    return getBillDetailsReport_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export/download"), 'post', {
              id: task.downloadId,
              taskType: 19
            }, {
              Mallid: task.real_mall_id
            });

          case 3:
            res = _context3.sent;

            if (!(res.success && res.result)) {
              _context3.next = 9;
              break;
            }

            task.fileUrl = res.result.fileUrl;
            return _context3.abrupt("return", {
              fileUrl: res.result.fileUrl
            });

          case 9:
            task.status = 9;
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u539F\u59CB\u9875\u9762\u62A5\u9519\uFF1A".concat(res.errorMsg);
            log["a" /* default */].setLog(task.msg);

          case 12:
            _context3.next = 19;
            break;

          case 14:
            _context3.prev = 14;
            _context3.t0 = _context3["catch"](0);
            task.status = 9;
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u539F\u59CB\u9875\u9762\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 19:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 14]]);
  }));

  return function getCnReportUrl(_x3) {
    return _ref3.apply(this, arguments);
  };
}(); // 获取英文中心下载报表链接


var getEnReportUrl = /*#__PURE__*/function () {
  var _ref4 = getBillDetailsReport_asyncToGenerator( /*#__PURE__*/getBillDetailsReport_regeneratorRuntime().mark(function _callee4(task, host) {
    var backUp, loginRes, changeStoreId, _yield$nativeRequest2, success, result, errorMsg, msg;

    return getBillDetailsReport_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            // 需要提前登录一下美区或者欧区
            backUp = _objectSpread(_objectSpread({}, task), {}, {
              host: host
            });
            _context4.next = 3;
            return Object(temu["g" /* loginCb */])(backUp);

          case 3:
            loginRes = _context4.sent;

            if (loginRes) {
              _context4.next = 9;
              break;
            }

            backUp.msg = '切换到美区、欧区或全球站点失败，请检查';
            backUp.status = 11;
            log["a" /* default */].setLog(backUp.msg);
            return _context4.abrupt("return", {
              code: 1,
              msg: backUp.msg
            });

          case 9:
            _context4.prev = 9;
            changeStoreId = "".concat(task.real_mall_id, "&").concat(task.siteId);
            _context4.next = 13;
            return Object(util["z" /* nativeRequest */])("".concat(host, "/api/merchant/file/export"), 'post', {
              params: task.agentSellerExportParams,
              sign: task.agentSellerExportSign,
              taskType: 31
            }, {
              Mallid: task.real_mall_id,
              changeStoreId: changeStoreId
            });

          case 13:
            _yield$nativeRequest2 = _context4.sent;
            success = _yield$nativeRequest2.success;
            result = _yield$nativeRequest2.result;
            errorMsg = _yield$nativeRequest2.errorMsg;

            if (!(success && result)) {
              _context4.next = 23;
              break;
            }

            _context4.next = 20;
            return getEnReportUrlDownload(task, host, result);

          case 20:
            return _context4.abrupt("return", _context4.sent);

          case 23:
            msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u539F\u59CB\u9875\u9762\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            task.msg = msg;
            task.status = 9;
            log["a" /* default */].setLog(msg);
            return _context4.abrupt("return", {
              msg: msg,
              code: 1
            });

          case 28:
            _context4.next = 36;
            break;

          case 30:
            _context4.prev = 30;
            _context4.t0 = _context4["catch"](9);
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u539F\u59CB\u9875\u9762\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context4.t0, task));
            task.status = 9;
            log["a" /* default */].setLog(task.msg);
            return _context4.abrupt("return", false);

          case 36:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[9, 30]]);
  }));

  return function getEnReportUrl(_x4, _x5) {
    return _ref4.apply(this, arguments);
  };
}();

var getEnReportUrlDownload = /*#__PURE__*/function () {
  var _ref5 = getBillDetailsReport_asyncToGenerator( /*#__PURE__*/getBillDetailsReport_regeneratorRuntime().mark(function _callee5(task, host, result) {
    var count,
        changeStoreId,
        res,
        _args5 = arguments;
    return getBillDetailsReport_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            count = _args5.length > 3 && _args5[3] !== undefined ? _args5[3] : 0;

            if (!(count >= 5)) {
              _context5.next = 6;
              break;
            }

            task.msg = '获取下载报表链接失败，超过最大重试次数';
            task.status = 9;
            log["a" /* default */].setLog(task.msg);
            return _context5.abrupt("return", false);

          case 6:
            changeStoreId = "".concat(task.real_mall_id, "&").concat(task.siteId);
            _context5.prev = 7;
            _context5.next = 10;
            return Object(util["z" /* nativeRequest */])("".concat(host, "/api/merchant/file/export/download"), 'post', {
              id: result,
              taskType: 31
            }, {
              Mallid: task.real_mall_id,
              changeStoreId: changeStoreId
            });

          case 10:
            res = _context5.sent;

            if (!(res.success && res.result)) {
              _context5.next = 16;
              break;
            }

            task.fileUrl = res.result.fileUrl;
            return _context5.abrupt("return", {
              fileUrl: res.result.fileUrl
            });

          case 16:
            // 这里失败可能是文件还未生成好（中文中心生成好了但是可能英文中心没生成好。。。）
            task.msg = res.errorMsg;
            task.status = 6;
            log["a" /* default */].setLog(task.msg, "---\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context5.next = 21;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 21:
            _context5.next = 23;
            return getEnReportUrlDownload(task, host, result, ++count);

          case 23:
            return _context5.abrupt("return", _context5.sent);

          case 24:
            _context5.next = 32;
            break;

          case 26:
            _context5.prev = 26;
            _context5.t0 = _context5["catch"](7);
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u539F\u59CB\u9875\u9762\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context5.t0, task));
            task.status = 9;
            log["a" /* default */].setLog(task.msg);
            return _context5.abrupt("return", false);

          case 32:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[7, 26]]);
  }));

  return function getEnReportUrlDownload(_x6, _x7, _x8) {
    return _ref5.apply(this, arguments);
  };
}(); // 下载报表


var downloadReport = /*#__PURE__*/function () {
  var _ref6 = getBillDetailsReport_asyncToGenerator( /*#__PURE__*/getBillDetailsReport_regeneratorRuntime().mark(function _callee6(task) {
    var res, name, oFile, fileRes, zip;
    return getBillDetailsReport_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.prev = 0;
            _context6.next = 3;
            return axios_default()({
              method: 'GET',
              url: task.fileUrl,
              responseType: 'blob'
            });

          case 3:
            res = _context6.sent;

            if (!(res && res.data)) {
              _context6.next = 16;
              break;
            }

            name = Object(util["q" /* getNameByUrl */])(task.fileUrl);
            oFile = new File([res.data], name, {
              type: 'application/zip'
            });
            // 文件压缩
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, res.data, {
              binary: true
            });
            _context6.next = 12;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"), {
                type: 'application/zip'
              });
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = {
                file: cFile
              };
            }).catch(function (e) {
              log["a" /* default */].setLog('财务报表压缩失败', Object(util["u" /* isError */])(e));
              fileRes = {
                file: oFile
              };
            });

          case 12:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context6.abrupt("return", fileRes);

          case 16:
            _context6.next = 23;
            break;

          case 18:
            _context6.prev = 18;
            _context6.t0 = _context6["catch"](0);
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u539F\u59CB\u9875\u9762\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context6.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 23:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6, null, [[0, 18]]);
  }));

  return function downloadReport(_x9) {
    return _ref6.apply(this, arguments);
  };
}();

var getBillDetailsReport = /*#__PURE__*/function () {
  var _ref7 = getBillDetailsReport_asyncToGenerator( /*#__PURE__*/getBillDetailsReport_regeneratorRuntime().mark(function _callee7(task) {
    var generateReportRes, host, param, res, uploadRes;
    return getBillDetailsReport_regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            _context7.t0 = task.status !== 6;

            if (!_context7.t0) {
              _context7.next = 5;
              break;
            }

            _context7.next = 4;
            return awaitReportDownload(task);

          case 4:
            _context7.t0 = !_context7.sent;

          case 5:
            if (!_context7.t0) {
              _context7.next = 14;
              break;
            }

            _context7.next = 8;
            return generateReport(task);

          case 8:
            generateReportRes = _context7.sent;

            if (generateReportRes) {
              _context7.next = 11;
              break;
            }

            return _context7.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 11:
            if (!(generateReportRes == 'needSplit')) {
              _context7.next = 14;
              break;
            }

            log["a" /* default */].setLog('当前时间段报表数据量太多，需要拆分');
            return _context7.abrupt("return", {
              code: 4,
              msg: '当前时间段报表数据量太多，需要拆分'
            });

          case 14:
            _context7.t1 = task.status !== 2;

            if (!_context7.t1) {
              _context7.next = 19;
              break;
            }

            _context7.next = 18;
            return awaitReportDownload(task);

          case 18:
            _context7.t1 = !_context7.sent;

          case 19:
            if (!_context7.t1) {
              _context7.next = 21;
              break;
            }

            return _context7.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 21:
            if (!(task.report_type == 51)) {
              _context7.next = 28;
              break;
            }

            _context7.next = 24;
            return getCnReportUrl(task);

          case 24:
            if (_context7.sent) {
              _context7.next = 26;
              break;
            }

            return _context7.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 26:
            _context7.next = 33;
            break;

          case 28:
            host = {
              5: temu["h" /* temu */].cbGlobalHost,
              502: temu["h" /* temu */].cbEuHost,
              503: temu["h" /* temu */].cbUsHost
            }[task.report_type]; // 监听header头修改cookie
            // await changeLocalMallId(task.platform_store_id, task.siteId, host)

            _context7.next = 31;
            return getEnReportUrl(task, host);

          case 31:
            if (_context7.sent) {
              _context7.next = 33;
              break;
            }

            return _context7.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 33:
            // 默认参数
            param = {
              type_id: task.type_id,
              platform_store_id: task.platform_store_id,
              result: null,
              code: 0,
              msg: null
            };
            _context7.next = 36;
            return downloadReport(task);

          case 36:
            res = _context7.sent;

            if (!(res && res.file)) {
              _context7.next = 47;
              break;
            }

            _context7.next = 40;
            return Object(util["L" /* uploadFile */])(res.file);

          case 40:
            uploadRes = _context7.sent;
            log["a" /* default */].setLog('文件上传结果：', JSON.stringify(uploadRes));

            if (!(uploadRes && uploadRes.code === 1)) {
              _context7.next = 44;
              break;
            }

            return _context7.abrupt("return", _objectSpread(_objectSpread({}, param), {}, {
              result: {
                report_file: uploadRes.data,
                cosKey: uploadRes.data.key,
                originFileName: uploadRes.data.originFileName,
                report_custom_date_start: task.report_custom_date_start,
                report_custom_date_end: task.report_custom_date_end,
                reportType: task.report_type,
                reportDate: task.report_date_month
              }
            }));

          case 44:
            // 上传失败
            task.status = 7;
            task.msg = '文件上传cos失败';
            param.result = {
              requestId: uploadRes.requestId,
              msg: uploadRes.msg
            };

          case 47:
            return _context7.abrupt("return", _objectSpread(_objectSpread({}, param), {}, {
              code: 2,
              msg: task.msg
            }));

          case 48:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7);
  }));

  return function getBillDetailsReport(_x10) {
    return _ref7.apply(this, arguments);
  };
}();

/* harmony default export */ var qtReport_getBillDetailsReport = (getBillDetailsReport);
// CONCATENATED MODULE: ./src/platform/temu/qtReport/getDeductionReportExportDetail.js
function getDeductionReportExportDetail_typeof(obj) { "@babel/helpers - typeof"; return getDeductionReportExportDetail_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getDeductionReportExportDetail_typeof(obj); }

function getDeductionReportExportDetail_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getDeductionReportExportDetail_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getDeductionReportExportDetail_ownKeys(Object(source), !0).forEach(function (key) { getDeductionReportExportDetail_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getDeductionReportExportDetail_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getDeductionReportExportDetail_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getDeductionReportExportDetail_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getDeductionReportExportDetail_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getDeductionReportExportDetail_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getDeductionReportExportDetail_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getDeductionReportExportDetail_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getDeductionReportExportDetail_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getDeductionReportExportDetail_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }




var remarkMap = {
  52: '消费者及履约保障-售后问题',
  521: '仓储增值服务-贴标费'
}; // 获取账务明细列表

var getAccountingDetailsList = /*#__PURE__*/function () {
  var _ref = getDeductionReportExportDetail_asyncToGenerator( /*#__PURE__*/getDeductionReportExportDetail_regeneratorRuntime().mark(function _callee(task) {
    var list,
        pageNum,
        res,
        _args = arguments;
    return getDeductionReportExportDetail_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            list = _args.length > 1 && _args[1] !== undefined ? _args[1] : [];
            pageNum = _args.length > 2 && _args[2] !== undefined ? _args[2] : 1;
            _context.prev = 2;
            _context.next = 5;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/fund/detail/pageSearch"), 'post', {
              beginTime: task.report_custom_datetime_start,
              endTime: task.report_custom_datetime_end,
              pageNum: pageNum,
              pageSize: 100
            }, {
              Mallid: task.real_mall_id
            });

          case 5:
            res = _context.sent;

            if (!(res.success && res.result && res.result.resultList)) {
              _context.next = 15;
              break;
            }

            list = list.concat(res.result.resultList.filter(function (_ref2) {
              var remark = _ref2.remark;
              return remarkMap[task.report_type] === remark;
            })); // 判断是否获取完毕

            if (!(res.result.total > pageNum * 100)) {
              _context.next = 12;
              break;
            }

            _context.next = 11;
            return getAccountingDetailsList(task, list, pageNum++);

          case 11:
            return _context.abrupt("return", _context.sent);

          case 12:
            return _context.abrupt("return", list);

          case 15:
            task.msg = "\u8BF7\u6C42\u5217\u8868\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D----code:".concat(res.errorCode, "--msg:").concat(res.errorMsg);
            log["a" /* default */].setLog(task.msg);

          case 17:
            _context.next = 23;
            break;

          case 19:
            _context.prev = 19;
            _context.t0 = _context["catch"](2);
            task.msg = "\u8BF7\u6C42\u5217\u8868\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 23:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[2, 19]]);
  }));

  return function getAccountingDetailsList(_x) {
    return _ref.apply(this, arguments);
  };
}(); // 获取账务明细详情，返回值是个数组


var getAccountingDetailsItem = /*#__PURE__*/function () {
  var _ref4 = getDeductionReportExportDetail_asyncToGenerator( /*#__PURE__*/getDeductionReportExportDetail_regeneratorRuntime().mark(function _callee2(task, _ref3) {
    var batchId, createTime, fundType, res;
    return getDeductionReportExportDetail_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            batchId = _ref3.batchId, createTime = _ref3.createTime, fundType = _ref3.fundType;
            _context2.prev = 1;
            _context2.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/fund/detail/item"), 'post', {
              batchId: batchId,
              createdTime: createTime,
              fundType: fundType
            }, {
              Mallid: task.real_mall_id
            });

          case 4:
            res = _context2.sent;

            if (!(res.success && res.result)) {
              _context2.next = 9;
              break;
            }

            return _context2.abrupt("return", res.result.map(function (item) {
              return getDeductionReportExportDetail_objectSpread({
                batchId: batchId,
                createTime: createTime
              }, item);
            }));

          case 9:
            task.msg = "\u8BF7\u6C42\u8BE6\u60C5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D----code:".concat(res.errorCode, "--msg:").concat(res.errorMsg);
            log["a" /* default */].setLog(task.msg);

          case 11:
            _context2.next = 17;
            break;

          case 13:
            _context2.prev = 13;
            _context2.t0 = _context2["catch"](1);
            task.msg = "\u8BF7\u6C42\u8BE6\u60C5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context2.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 17:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 13]]);
  }));

  return function getAccountingDetailsItem(_x2, _x3) {
    return _ref4.apply(this, arguments);
  };
}(); // 获取导出链接


var getFileUrl = /*#__PURE__*/function () {
  var _ref5 = getDeductionReportExportDetail_asyncToGenerator( /*#__PURE__*/getDeductionReportExportDetail_regeneratorRuntime().mark(function _callee3(task, item) {
    var res;
    return getDeductionReportExportDetail_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/fund/detail/item/download/detail"), 'post', item, {
              Mallid: task.real_mall_id
            });

          case 3:
            res = _context3.sent;

            if (!(res.success && res.result)) {
              _context3.next = 8;
              break;
            }

            return _context3.abrupt("return", res.result.fileUrl);

          case 8:
            task.msg = "\u8BF7\u6C42\u5BFC\u51FA\u6570\u636E\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D----code:".concat(res.errorCode, "--msg:").concat(res.errorMsg);
            log["a" /* default */].setLog(task.msg);

          case 10:
            _context3.next = 16;
            break;

          case 12:
            _context3.prev = 12;
            _context3.t0 = _context3["catch"](0);
            task.msg = "\u8BF7\u6C42\u5BFC\u51FA\u6570\u636E\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 16:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 12]]);
  }));

  return function getFileUrl(_x4, _x5) {
    return _ref5.apply(this, arguments);
  };
}(); // 下载报表


var getDeductionReportExportDetail_downloadReport = /*#__PURE__*/function () {
  var _ref6 = getDeductionReportExportDetail_asyncToGenerator( /*#__PURE__*/getDeductionReportExportDetail_regeneratorRuntime().mark(function _callee4(task, url) {
    var res, name, oFile;
    return getDeductionReportExportDetail_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return axios_default()({
              method: 'GET',
              url: url,
              responseType: 'blob'
            });

          case 3:
            res = _context4.sent;

            if (!(res && res.data)) {
              _context4.next = 8;
              break;
            }

            name = Object(util["q" /* getNameByUrl */])(url);
            oFile = new File([res.data], name, {
              type: 'application/zip'
            });
            return _context4.abrupt("return", {
              oFile: oFile,
              name: name,
              blob: res.data
            });

          case 8:
            _context4.next = 15;
            break;

          case 10:
            _context4.prev = 10;
            _context4.t0 = _context4["catch"](0);
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u62A5\u8868\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context4.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 15:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 10]]);
  }));

  return function downloadReport(_x6, _x7) {
    return _ref6.apply(this, arguments);
  };
}();

function getDeductionReportExportDetail(_x8) {
  return _getDeductionReportExportDetail.apply(this, arguments);
}

function _getDeductionReportExportDetail() {
  _getDeductionReportExportDetail = getDeductionReportExportDetail_asyncToGenerator( /*#__PURE__*/getDeductionReportExportDetail_regeneratorRuntime().mark(function _callee5(task) {
    var accountingDetailsList, items, fileUrls, files;
    return getDeductionReportExportDetail_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            _context5.next = 2;
            return getAccountingDetailsList(task);

          case 2:
            accountingDetailsList = _context5.sent;

            if (accountingDetailsList) {
              _context5.next = 5;
              break;
            }

            return _context5.abrupt("return", false);

          case 5:
            if (!(accountingDetailsList.length === 0)) {
              _context5.next = 7;
              break;
            }

            return _context5.abrupt("return", 'none');

          case 7:
            _context5.next = 9;
            return Promise.all(accountingDetailsList.map(function (item) {
              return getAccountingDetailsItem(task, item);
            })).catch(function () {
              return false;
            });

          case 9:
            items = _context5.sent;

            if (items) {
              _context5.next = 12;
              break;
            }

            return _context5.abrupt("return", false);

          case 12:
            _context5.next = 14;
            return Promise.all(items.flat().map(function (item) {
              return getFileUrl(task, item);
            })).catch(function () {
              return false;
            });

          case 14:
            fileUrls = _context5.sent;

            if (fileUrls) {
              _context5.next = 17;
              break;
            }

            return _context5.abrupt("return", false);

          case 17:
            _context5.next = 19;
            return Promise.all(fileUrls.map(function (url) {
              return getDeductionReportExportDetail_downloadReport(task, url);
            })).catch(function () {
              return false;
            });

          case 19:
            files = _context5.sent;

            if (files) {
              _context5.next = 22;
              break;
            }

            return _context5.abrupt("return", false);

          case 22:
            return _context5.abrupt("return", files);

          case 23:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));
  return _getDeductionReportExportDetail.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/platform/temu/qtReport/getDeductionReport.js
function getDeductionReport_typeof(obj) { "@babel/helpers - typeof"; return getDeductionReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getDeductionReport_typeof(obj); }

function getDeductionReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getDeductionReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getDeductionReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getDeductionReport_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getDeductionReport_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getDeductionReport_ownKeys(Object(source), !0).forEach(function (key) { getDeductionReport_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getDeductionReport_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getDeductionReport_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getDeductionReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getDeductionReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getDeductionReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getDeductionReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }






var deductionType = {
  53: 'SHIP_NOT_ON_TIME',
  54: 'DELIVERY_NOT_ON_TIME',
  55: 'DELIVERY_QUANTITY_NOT_STATIS',
  56: 'JIT_ISSUE',
  57: 'CUSTOMIZED_GOODS_QUALITY_ISSUE'
};
var deductionNameObj = {
  52: '消费者及履约保障-售后问题',
  53: '备货违规 - 发货履约保障-延迟发货',
  54: '备货违规 - 发货履约保障-延迟到货',
  55: '备货违规 - 发货履约保障-缺货',
  56: '备货违规 - 商品品质保障-质量问题(JIT商品)',
  57: '备货违规 - 商品品质保障-质量问题(定制商品)',
  58: '质量事故违规',
  521: '仓储增值服务-贴标费'
};

var getParamsByType = function getParamsByType(type) {
  switch (type) {
    case 52:
      return {
        fundDeductionType: 'AFTER_SALES'
      };

    case 53:
    case 54:
    case 55:
    case 56:
    case 57:
      return {
        fundDeductionType: 'STOCKING_VIOLATION',
        deductionCode: deductionType[type]
      };

    case 58:
      return {
        fundDeductionType: 'QUALITY_ACCIDENT'
      };

    default:
      return {};
  }
};

var getDeductionReport_generateReport = /*#__PURE__*/function () {
  var _ref = getDeductionReport_asyncToGenerator( /*#__PURE__*/getDeductionReport_regeneratorRuntime().mark(function _callee(task) {
    var params, _yield$nativeRequest, success, errorCode, errorMsg, msg;

    return getDeductionReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            // deductionCode: "SHIP_NOT_ON_TIME",
            // fundDeductionType: "STOCKING_VIOLATION", // AFTER_SALES, QUALITY_ACCIDENT
            params = getParamsByType(task.report_type);
            _context.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export"), 'post', getDeductionReport_objectSpread(getDeductionReport_objectSpread({
              beginFundTime: task.report_custom_datetime_start,
              endFundTime: task.report_custom_datetime_end
            }, params), {}, {
              taskType: 17
            }), {
              Mallid: task.real_mall_id
            });

          case 4:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            errorCode = _yield$nativeRequest.errorCode;
            errorMsg = _yield$nativeRequest.errorMsg;

            if (!success) {
              _context.next = 14;
              break;
            }

            log["a" /* default */].setLog('全托管支出详情报表生成成功');
            task.status = 6;
            return _context.abrupt("return", true);

          case 14:
            if (!(errorCode == 4000004)) {
              _context.next = 19;
              break;
            }

            task.status = 6;
            return _context.abrupt("return", true);

          case 19:
            if (!(errorCode == 3000000)) {
              _context.next = 21;
              break;
            }

            return _context.abrupt("return", 'needSplit');

          case 21:
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            task.status = 3;
            log["a" /* default */].setLog(msg);
            task.msg = msg;

          case 25:
            _context.next = 33;
            break;

          case 27:
            _context.prev = 27;
            _context.t0 = _context["catch"](0);
            task.status = 3;
            task.msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context.t0, task));
            log["a" /* default */].setLog(task.msg);
            return _context.abrupt("return", false);

          case 33:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 27]]);
  }));

  return function generateReport(_x) {
    return _ref.apply(this, arguments);
  };
}(); // 查询报表生成状态


var getDeductionReport_awaitReportDownload = /*#__PURE__*/function () {
  var _ref2 = getDeductionReport_asyncToGenerator( /*#__PURE__*/getDeductionReport_regeneratorRuntime().mark(function _callee2(task) {
    var count,
        res,
        list,
        find,
        _args2 = arguments;
    return getDeductionReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            count = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 0;
            _context2.prev = 1;

            if (!(count >= 5)) {
              _context2.next = 7;
              break;
            }

            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
            task.run_time = 0;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D"; // task.status = 6

            return _context2.abrupt("return", false);

          case 7:
            _context2.next = 9;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export/history/page"), 'post', {
              pageNum: 1,
              pageSize: 50,
              taskType: 17
            }, {
              Mallid: task.real_mall_id
            });

          case 9:
            res = _context2.sent;

            if (!(res && res.result)) {
              _context2.next = 33;
              break;
            }

            list = res.result.merchantMerchantFileExportHistoryList;
            find = list.find(function (item) {
              return item.deductionName == deductionNameObj[task.report_type] && item.dataBeginDateTime == task.beginTime && item.dataEndDateTime == task.endTime;
            });

            if (!find) {
              _context2.next = 29;
              break;
            }

            _context2.t0 = find.status;
            _context2.next = _context2.t0 === 2 ? 17 : _context2.t0 === 1 ? 20 : 20;
            break;

          case 17:
            task.status = 2;
            task.exportId = find.id;
            return _context2.abrupt("return", true);

          case 20:
            // task.status = 6
            task.msg = '文件正在生成中';
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context2.next = 24;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 24:
            _context2.next = 26;
            return getDeductionReport_awaitReportDownload(task, ++count);

          case 26:
            return _context2.abrupt("return", _context2.sent);

          case 27:
            _context2.next = 31;
            break;

          case 29:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D----not find";
            log["a" /* default */].setLog(task.msg);

          case 31:
            _context2.next = 35;
            break;

          case 33:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0CTemu\u89C4\u5219\u53EF\u80FD\u6539\u53D8\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D";
            log["a" /* default */].setLog(task.msg);

          case 35:
            _context2.next = 41;
            break;

          case 37:
            _context2.prev = 37;
            _context2.t1 = _context2["catch"](1);
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context2.t1, task));
            log["a" /* default */].setLog(task.msg);

          case 41:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 37]]);
  }));

  return function awaitReportDownload(_x2) {
    return _ref2.apply(this, arguments);
  };
}(); // 获取下载报表链接


var getReportUrl = /*#__PURE__*/function () {
  var _ref3 = getDeductionReport_asyncToGenerator( /*#__PURE__*/getDeductionReport_regeneratorRuntime().mark(function _callee3(task) {
    var res;
    return getDeductionReport_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export/download"), 'post', {
              id: task.exportId,
              taskType: 17
            }, {
              Mallid: task.real_mall_id
            });

          case 3:
            res = _context3.sent;

            if (!(res.success && res.result)) {
              _context3.next = 7;
              break;
            }

            task.fileUrl = res.result.fileUrl;
            return _context3.abrupt("return", {
              fileUrl: res.result.fileUrl
            });

          case 7:
            _context3.next = 14;
            break;

          case 9:
            _context3.prev = 9;
            _context3.t0 = _context3["catch"](0);
            task.status = 9;
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 14:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 9]]);
  }));

  return function getReportUrl(_x3) {
    return _ref3.apply(this, arguments);
  };
}(); // 下载报表


var getDeductionReport_downloadReport = /*#__PURE__*/function () {
  var _ref4 = getDeductionReport_asyncToGenerator( /*#__PURE__*/getDeductionReport_regeneratorRuntime().mark(function _callee4(task) {
    var res, name, oFile;
    return getDeductionReport_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return axios_default()({
              method: 'GET',
              url: task.fileUrl,
              responseType: 'blob'
            });

          case 3:
            res = _context4.sent;

            if (!(res && res.data)) {
              _context4.next = 11;
              break;
            }

            name = Object(util["q" /* getNameByUrl */])(task.fileUrl);
            oFile = new File([res.data], name, {
              type: 'application/zip'
            });
            log["a" /* default */].setLog('下载成功,源文件大小：', "".concat(oFile.size, "b"));
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context4.abrupt("return", [{
              oFile: oFile,
              name: name,
              blob: res.data
            }]);

          case 11:
            _context4.next = 18;
            break;

          case 13:
            _context4.prev = 13;
            _context4.t0 = _context4["catch"](0);
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context4.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 18:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 13]]);
  }));

  return function downloadReport(_x4) {
    return _ref4.apply(this, arguments);
  };
}();

var getDeductionReport = /*#__PURE__*/function () {
  var _ref5 = getDeductionReport_asyncToGenerator( /*#__PURE__*/getDeductionReport_regeneratorRuntime().mark(function _callee5(task) {
    var res, generateReportRes, fileRes, detailsRes, file, uploadRes;
    return getDeductionReport_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            res = [];

            if (!task.beginTime) {
              task.beginTime = task.report_custom_date_start + ' 00:00:00';
              task.endTime = task.report_custom_date_end + ' 23:59:59';
            }

            if ([521].includes(task.report_type)) {
              _context5.next = 27;
              break;
            }

            if (!(task.status !== 6)) {
              _context5.next = 12;
              break;
            }

            _context5.next = 6;
            return getDeductionReport_generateReport(task);

          case 6:
            generateReportRes = _context5.sent;

            if (generateReportRes) {
              _context5.next = 9;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 9:
            if (!(generateReportRes == 'needSplit')) {
              _context5.next = 12;
              break;
            }

            log["a" /* default */].setLog('当前时间段报表数据量太多，需要拆分');
            return _context5.abrupt("return", {
              code: 4,
              msg: '当前时间段报表数据量太多，需要拆分'
            });

          case 12:
            _context5.next = 14;
            return getDeductionReport_awaitReportDownload(task);

          case 14:
            _context5.t0 = !_context5.sent;

            if (_context5.t0) {
              _context5.next = 19;
              break;
            }

            _context5.next = 18;
            return getReportUrl(task);

          case 18:
            _context5.t0 = !_context5.sent;

          case 19:
            if (!_context5.t0) {
              _context5.next = 21;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 21:
            _context5.next = 23;
            return getDeductionReport_downloadReport(task);

          case 23:
            fileRes = _context5.sent;

            if (fileRes) {
              _context5.next = 26;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 26:
            res = fileRes;

          case 27:
            if (![52, 521].includes(task.report_type)) {
              _context5.next = 36;
              break;
            }

            _context5.next = 30;
            return getDeductionReportExportDetail(task);

          case 30:
            detailsRes = _context5.sent;

            if (detailsRes) {
              _context5.next = 33;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 33:
            if (!(detailsRes === 'none' && [521].includes(task.report_type))) {
              _context5.next = 35;
              break;
            }

            return _context5.abrupt("return", {
              code: 0,
              msg: '没有需要导出的数据'
            });

          case 35:
            res = res.concat(detailsRes);

          case 36:
            _context5.next = 38;
            return Object(util["n" /* generateAsync */])(res);

          case 38:
            file = _context5.sent;

            if (file) {
              _context5.next = 41;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: '文件压缩失败，稍后可尝试“重新获取”'
            });

          case 41:
            _context5.next = 43;
            return Object(util["L" /* uploadFile */])(file);

          case 43:
            uploadRes = _context5.sent;
            log["a" /* default */].setLog('文件上传结果：', JSON.stringify(uploadRes));

            if (!(uploadRes && uploadRes.code === 1)) {
              _context5.next = 47;
              break;
            }

            return _context5.abrupt("return", {
              code: 0,
              result: {
                report_file: uploadRes.data,
                cosKey: uploadRes.data.key,
                originFileName: uploadRes.data.originFileName,
                report_custom_date_start: task.report_custom_date_start,
                report_custom_date_end: task.report_custom_date_end,
                reportType: task.report_type,
                reportDate: task.report_date_month
              }
            });

          case 47:
            // 上传失败
            task.status = 7;
            task.msg = uploadRes.msg || '文件上传cos失败';
            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg,
              requestId: uploadRes.requestId
            });

          case 50:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function getDeductionReport(_x5) {
    return _ref5.apply(this, arguments);
  };
}();

/* harmony default export */ var qtReport_getDeductionReport = (getDeductionReport); // window.testDeductionReport = (report_type) => {
//   getDeductionReport({
//     report_type,
//     host:'https://seller.kuajingmaihuo.com',
//     report_custom_date_start:'2025-01-01',
//     report_custom_date_end:'2025-01-13',
//     platform_store_id: 65016470556,
//     status: 0,
//   })
// }
// CONCATENATED MODULE: ./src/platform/temu/qtReport/getEPRReport.js
function getEPRReport_typeof(obj) { "@babel/helpers - typeof"; return getEPRReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getEPRReport_typeof(obj); }

function getEPRReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getEPRReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getEPRReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getEPRReport_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getEPRReport_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getEPRReport_ownKeys(Object(source), !0).forEach(function (key) { getEPRReport_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getEPRReport_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getEPRReport_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getEPRReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getEPRReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getEPRReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getEPRReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }








var getEPRReport_generateReport = /*#__PURE__*/function () {
  var _ref = getEPRReport_asyncToGenerator( /*#__PURE__*/getEPRReport_regeneratorRuntime().mark(function _callee(task) {
    var params, _yield$nativeRequest, success, errorCode, errorMsg, msg;

    return getEPRReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            params = [16].includes(task.taskType) ? {
              billingCycleList: [],
              taskType: task.taskType,
              financeDateStart: task.report_custom_date_start,
              financeDateEnd: task.report_custom_date_end
            } : getEPRReport_objectSpread({
              financeStartTime: task.report_custom_datetime_start,
              financeEndTime: task.report_custom_datetime_end,
              exportType: task.exportType,
              taskType: task.taskType
            }, task.taskType === 19 ? {
              billingCycle: task.report_date_month
            } : {});
            _context.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export"), 'post', params, {
              Mallid: task.real_mall_id,
              changeStoreId: task.changeStoreId
            });

          case 4:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            errorCode = _yield$nativeRequest.errorCode;
            errorMsg = _yield$nativeRequest.errorMsg;

            if (!success) {
              _context.next = 14;
              break;
            }

            log["a" /* default */].setLog('欧区ERP费用生成成功');
            task.status = 6;
            return _context.abrupt("return", true);

          case 14:
            if (!(errorCode == 4000004)) {
              _context.next = 19;
              break;
            }

            task.status = 6;
            return _context.abrupt("return", true);

          case 19:
            if (!(errorCode == 3000000)) {
              _context.next = 21;
              break;
            }

            return _context.abrupt("return", 'needSplit');

          case 21:
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            task.status = 3;
            log["a" /* default */].setLog(msg);
            task.msg = msg;

          case 25:
            _context.next = 33;
            break;

          case 27:
            _context.prev = 27;
            _context.t0 = _context["catch"](0);
            task.status = 3;
            task.msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context.t0, task));
            log["a" /* default */].setLog(task.msg);
            return _context.abrupt("return", false);

          case 33:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 27]]);
  }));

  return function generateReport(_x) {
    return _ref.apply(this, arguments);
  };
}(); // 查询报表生成状态


var getEPRReport_awaitReportDownload = /*#__PURE__*/function () {
  var _ref2 = getEPRReport_asyncToGenerator( /*#__PURE__*/getEPRReport_regeneratorRuntime().mark(function _callee2(task) {
    var count,
        res,
        list,
        find,
        _args2 = arguments;
    return getEPRReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            count = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 0;
            _context2.prev = 1;

            if (!(count >= 5)) {
              _context2.next = 7;
              break;
            }

            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
            task.run_time = 0;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D"; // task.status = 6

            return _context2.abrupt("return", false);

          case 7:
            _context2.next = 9;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export/history/page"), 'post', {
              pageNum: 1,
              pageSize: 50,
              taskType: task.taskType
            }, {
              Mallid: task.real_mall_id,
              changeStoreId: task.changeStoreId
            });

          case 9:
            res = _context2.sent;

            if (!(res && res.result)) {
              _context2.next = 33;
              break;
            }

            list = res.result.merchantMerchantFileExportHistoryList;
            find = list.find(function (item) {
              return [16].includes(task.taskType) ? item.financeDateStart == task.report_custom_date_start && item.financeDateEnd == task.report_custom_date_end : item.exportType == task.exportType && item.financeStartTime == task.report_custom_datetime_start && item.financeEndTime == task.report_custom_datetime_end;
            });

            if (!find) {
              _context2.next = 29;
              break;
            }

            _context2.t0 = find.status;
            _context2.next = _context2.t0 === 2 ? 17 : _context2.t0 === 1 ? 20 : 20;
            break;

          case 17:
            task.status = 2;
            task.exportId = find.id;
            return _context2.abrupt("return", true);

          case 20:
            // task.status = 6
            task.msg = '文件正在生成中';
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context2.next = 24;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 24:
            _context2.next = 26;
            return getEPRReport_awaitReportDownload(task, ++count);

          case 26:
            return _context2.abrupt("return", _context2.sent);

          case 27:
            _context2.next = 31;
            break;

          case 29:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D----not find";
            log["a" /* default */].setLog(task.msg);

          case 31:
            _context2.next = 35;
            break;

          case 33:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0CTemu\u89C4\u5219\u53EF\u80FD\u6539\u53D8\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D";
            log["a" /* default */].setLog(task.msg);

          case 35:
            _context2.next = 41;
            break;

          case 37:
            _context2.prev = 37;
            _context2.t1 = _context2["catch"](1);
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context2.t1, task));
            log["a" /* default */].setLog(task.msg);

          case 41:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 37]]);
  }));

  return function awaitReportDownload(_x2) {
    return _ref2.apply(this, arguments);
  };
}(); // 获取下载报表链接


var getEPRReport_getReportUrl = /*#__PURE__*/function () {
  var _ref3 = getEPRReport_asyncToGenerator( /*#__PURE__*/getEPRReport_regeneratorRuntime().mark(function _callee3(task) {
    var res;
    return getEPRReport_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export/download"), 'post', {
              id: task.exportId,
              taskType: task.taskType
            }, {
              Mallid: task.real_mall_id,
              changeStoreId: task.changeStoreId
            });

          case 3:
            res = _context3.sent;

            if (!(res.success && res.result)) {
              _context3.next = 7;
              break;
            }

            task.fileUrl = res.result.fileUrl;
            return _context3.abrupt("return", {
              fileUrl: res.result.fileUrl
            });

          case 7:
            _context3.next = 14;
            break;

          case 9:
            _context3.prev = 9;
            _context3.t0 = _context3["catch"](0);
            task.status = 9;
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 14:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 9]]);
  }));

  return function getReportUrl(_x3) {
    return _ref3.apply(this, arguments);
  };
}(); // 下载报表


var getEPRReport_downloadReport = /*#__PURE__*/function () {
  var _ref4 = getEPRReport_asyncToGenerator( /*#__PURE__*/getEPRReport_regeneratorRuntime().mark(function _callee4(task) {
    var res, name, oFile, fileRes, zip;
    return getEPRReport_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return axios_default()({
              method: 'GET',
              url: task.fileUrl,
              responseType: 'blob'
            });

          case 3:
            res = _context4.sent;

            if (!(res && res.data)) {
              _context4.next = 16;
              break;
            }

            name = Object(util["q" /* getNameByUrl */])(task.fileUrl);
            oFile = new File([res.data], name, {
              type: 'application/zip'
            });
            // 文件压缩
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, res.data, {
              binary: true
            });
            _context4.next = 12;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"), {
                type: 'application/zip'
              });
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = {
                file: cFile
              };
            }).catch(function (e) {
              log["a" /* default */].setLog('财务报表压缩失败', Object(util["u" /* isError */])(e));
              fileRes = {
                file: oFile
              };
            });

          case 12:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context4.abrupt("return", fileRes);

          case 16:
            _context4.next = 23;
            break;

          case 18:
            _context4.prev = 18;
            _context4.t0 = _context4["catch"](0);
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context4.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 23:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 18]]);
  }));

  return function downloadReport(_x4) {
    return _ref4.apply(this, arguments);
  };
}();

var getEPRReport = /*#__PURE__*/function () {
  var _ref5 = getEPRReport_asyncToGenerator( /*#__PURE__*/getEPRReport_regeneratorRuntime().mark(function _callee5(task) {
    var loginRes, msg, generateReportRes, param, res, uploadRes;
    return getEPRReport_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            task.changeStoreId = "".concat(task.real_mall_id, "&").concat(task.siteId);
            task.host = temu["h" /* temu */].cbEuHost;
            task.taskType = 18; // 商品环保费18, 包装环保费19, 代付服务费16

            task.exportType = 2; // 已扣费2 ，已退费 4

            if (task.report_type == 59) {
              task.taskType = 18;
              task.exportType = 2;
            }

            if (task.report_type == 510) {
              task.taskType = 18;
              task.exportType = 4;
            }

            if (task.report_type == 511) {
              task.taskType = 19;
              task.exportType = 2;
            }

            if (task.report_type == 512) {
              task.taskType = 19;
              task.exportType = 4;
            } // 代付服务费-已扣费，生成接口传参和page查询不一样


            if (task.report_type == 513) {
              task.taskType = 16;
            } // 监听header头修改cookie
            // await changeLocalMallId(task.platform_store_id, task.siteId, task.host)


            _context5.next = 11;
            return Object(temu["g" /* loginCb */])(task);

          case 11:
            loginRes = _context5.sent;

            if (loginRes) {
              _context5.next = 17;
              break;
            }

            msg = '切换到欧区站点失败，请检查';
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context5.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 17:
            _context5.t0 = task.status !== 6;

            if (!_context5.t0) {
              _context5.next = 22;
              break;
            }

            _context5.next = 21;
            return getEPRReport_awaitReportDownload(task);

          case 21:
            _context5.t0 = !_context5.sent;

          case 22:
            if (!_context5.t0) {
              _context5.next = 31;
              break;
            }

            _context5.next = 25;
            return getEPRReport_generateReport(task);

          case 25:
            generateReportRes = _context5.sent;

            if (generateReportRes) {
              _context5.next = 28;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 28:
            if (!(generateReportRes == 'needSplit')) {
              _context5.next = 31;
              break;
            }

            log["a" /* default */].setLog('当前时间段报表数据量太多，需要拆分');
            return _context5.abrupt("return", {
              code: 4,
              msg: '当前时间段报表数据量太多，需要拆分'
            });

          case 31:
            _context5.t1 = task.status !== 2;

            if (!_context5.t1) {
              _context5.next = 36;
              break;
            }

            _context5.next = 35;
            return getEPRReport_awaitReportDownload(task);

          case 35:
            _context5.t1 = !_context5.sent;

          case 36:
            if (!_context5.t1) {
              _context5.next = 38;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 38:
            _context5.next = 40;
            return getEPRReport_getReportUrl(task);

          case 40:
            if (_context5.sent) {
              _context5.next = 42;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 42:
            // 默认参数
            param = {
              type_id: task.type_id,
              platform_store_id: task.platform_store_id,
              result: null,
              code: 0,
              msg: null
            };
            _context5.next = 45;
            return getEPRReport_downloadReport(task);

          case 45:
            res = _context5.sent;

            if (!(res && res.file)) {
              _context5.next = 56;
              break;
            }

            _context5.next = 49;
            return Object(util["L" /* uploadFile */])(res.file);

          case 49:
            uploadRes = _context5.sent;
            log["a" /* default */].setLog('文件上传结果：', JSON.stringify(uploadRes));

            if (!(uploadRes && uploadRes.code === 1)) {
              _context5.next = 53;
              break;
            }

            return _context5.abrupt("return", getEPRReport_objectSpread(getEPRReport_objectSpread({}, param), {}, {
              result: {
                report_file: uploadRes.data,
                cosKey: uploadRes.data.key,
                originFileName: uploadRes.data.originFileName,
                report_custom_date_start: task.report_custom_date_start,
                report_custom_date_end: task.report_custom_date_end,
                reportType: task.report_type,
                reportDate: task.report_date_month
              }
            }));

          case 53:
            // 上传失败
            task.status = 7;
            task.msg = '文件上传cos失败';
            param.result = {
              requestId: uploadRes.requestId,
              msg: uploadRes.msg
            };

          case 56:
            if (![8, 12].includes(task.status)) {
              _context5.next = 59;
              break;
            }

            task.isDelete = true;
            return _context5.abrupt("return", getEPRReport_objectSpread(getEPRReport_objectSpread({}, param), {}, {
              msg: task.msg,
              code: task.status === 8 ? 3 : 1
            }));

          case 59:
            return _context5.abrupt("return", getEPRReport_objectSpread(getEPRReport_objectSpread({}, param), {}, {
              code: 2,
              msg: task.msg
            }));

          case 60:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function getEPRReport(_x5) {
    return _ref5.apply(this, arguments);
  };
}();

/* harmony default export */ var qtReport_getEPRReport = (getEPRReport); // window.testEPRReport = () => {
//   getEPRReport({
//     report_type: 512,
//     host:'https://agentseller-eu.temu.com',
//     report_custom_date_start:'2025-01-01',
//     report_custom_date_end:'2025-01-13',
//     platform_store_id: 65016470556,
//     status: 0,
//   })
// }
// EXTERNAL MODULE: ./src/config.js
var src_config = __webpack_require__("db49");

// CONCATENATED MODULE: ./src/platform/temu/qtReport/getTemuReport.js
function getTemuReport_typeof(obj) { "@babel/helpers - typeof"; return getTemuReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getTemuReport_typeof(obj); }

function getTemuReport_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getTemuReport_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getTemuReport_ownKeys(Object(source), !0).forEach(function (key) { getTemuReport_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getTemuReport_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getTemuReport_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getTemuReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getTemuReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getTemuReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getTemuReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getTemuReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getTemuReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getTemuReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }









var getTemuReport_generateReport = /*#__PURE__*/function () {
  var _ref = getTemuReport_asyncToGenerator( /*#__PURE__*/getTemuReport_regeneratorRuntime().mark(function _callee(task) {
    var _yield$nativeRequest, success, errorMsg, errorCode, errMsg, msg;

    return getTemuReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export"), 'post', {
              beginTime: task.report_custom_datetime_start,
              endTime: task.report_custom_datetime_end,
              fundDetailExport: true,
              taskType: 19
            }, {
              Mallid: task.platform_store_id
            });

          case 3:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            errorMsg = _yield$nativeRequest.errorMsg;
            errorCode = _yield$nativeRequest.errorCode;

            if (!success) {
              _context.next = 13;
              break;
            }

            log["a" /* default */].setLog('半托管财务报表生成成功');
            task.status = 6;
            return _context.abrupt("return", true);

          case 13:
            errMsg = JSON.stringify(errorMsg);

            if (!(errorCode === 2000000 || errMsg.includes('请明日再试'))) {
              _context.next = 19;
              break;
            }

            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errMsg);
            _context.next = 24;
            break;

          case 19:
            if (!(errorCode == 3000000)) {
              _context.next = 23;
              break;
            }

            return _context.abrupt("return", 'needSplit');

          case 23:
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errMsg);

          case 24:
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            task.status = 3;

          case 27:
            _context.next = 35;
            break;

          case 29:
            _context.prev = 29;
            _context.t0 = _context["catch"](0);
            task.msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context.t0, task));
            task.status = 3;
            log["a" /* default */].setLog(task.msg);
            return _context.abrupt("return", false);

          case 35:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 29]]);
  }));

  return function generateReport(_x) {
    return _ref.apply(this, arguments);
  };
}(); // 查询报表生成状态


var getTemuReport_awaitReportDownload = /*#__PURE__*/function () {
  var _ref2 = getTemuReport_asyncToGenerator( /*#__PURE__*/getTemuReport_regeneratorRuntime().mark(function _callee2(task) {
    var count,
        res,
        list,
        find,
        _args2 = arguments;
    return getTemuReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            count = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 0;
            _context2.prev = 1;

            if (!(count >= 5)) {
              _context2.next = 7;
              break;
            }

            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
            task.run_time = 0;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D"; // task.status = 6

            return _context2.abrupt("return", false);

          case 7:
            _context2.next = 9;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export/history/page"), 'post', {
              pageNum: 1,
              pageSize: 50,
              taskType: 19
            }, {
              Mallid: task.platform_store_id
            });

          case 9:
            res = _context2.sent;

            if (!(res && res.result)) {
              _context2.next = 35;
              break;
            }

            list = res.result.merchantMerchantFileExportHistoryList;
            find = list.find(function (item) {
              return item.fundDetailExport == true && item.searchExportTimeBegin == task.report_custom_datetime_start && item.searchExportTimeEnd == task.report_custom_datetime_end && item.createTime > Date.now() - 24 * 60 * 60 * 1000;
            });

            if (!find) {
              _context2.next = 31;
              break;
            }

            _context2.t0 = find.status;
            _context2.next = _context2.t0 === 2 ? 17 : _context2.t0 === 1 ? 22 : 22;
            break;

          case 17:
            task.status = 2;
            task.agentSellerExportParams = find.agentSellerExportParams;
            task.agentSellerExportSign = find.agentSellerExportSign;
            task.downloadId = find.id;
            return _context2.abrupt("return", true);

          case 22:
            // task.status = 6
            task.msg = '文件正在生成中';
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context2.next = 26;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 26:
            _context2.next = 28;
            return getTemuReport_awaitReportDownload(task, ++count);

          case 28:
            return _context2.abrupt("return", _context2.sent);

          case 29:
            _context2.next = 33;
            break;

          case 31:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D----not find";
            log["a" /* default */].setLog(task.msg);

          case 33:
            _context2.next = 37;
            break;

          case 35:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0CTemu\u89C4\u5219\u53EF\u80FD\u6539\u53D8\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D";
            log["a" /* default */].setLog(task.msg);

          case 37:
            _context2.next = 43;
            break;

          case 39:
            _context2.prev = 39;
            _context2.t1 = _context2["catch"](1);
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context2.t1, task));
            log["a" /* default */].setLog(task.msg);

          case 43:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 39]]);
  }));

  return function awaitReportDownload(_x2) {
    return _ref2.apply(this, arguments);
  };
}(); // 获取英文中心下载报表链接


var getTemuReport_getEnReportUrl = /*#__PURE__*/function () {
  var _ref3 = getTemuReport_asyncToGenerator( /*#__PURE__*/getTemuReport_regeneratorRuntime().mark(function _callee3(task, host) {
    var backUp, loginRes, msg, changeStoreId, _yield$nativeRequest2, success, result, errorMsg, res, _msg;

    return getTemuReport_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            // 需要提前登录一下美区或者欧区
            backUp = getTemuReport_objectSpread(getTemuReport_objectSpread({}, task), {}, {
              host: host
            });
            _context3.next = 3;
            return Object(temu["g" /* loginCb */])(backUp);

          case 3:
            loginRes = _context3.sent;

            if (loginRes) {
              _context3.next = 10;
              break;
            }

            msg = '切换到美区、欧区或全球站点失败，请检查';
            backUp.msg = msg;
            backUp.status = 11;
            log["a" /* default */].setLog(backUp.msg);
            return _context3.abrupt("return", {
              code: 1,
              msg: backUp.msg
            });

          case 10:
            _context3.prev = 10;
            changeStoreId = "".concat(task.platform_store_id, "&").concat(task.siteId);
            _context3.next = 14;
            return Object(util["z" /* nativeRequest */])("".concat(host, "/api/merchant/file/export"), 'post', {
              params: task.agentSellerExportParams,
              sign: task.agentSellerExportSign,
              taskType: 31
            }, {
              Mallid: task.platform_store_id,
              changeStoreId: changeStoreId
            });

          case 14:
            _yield$nativeRequest2 = _context3.sent;
            success = _yield$nativeRequest2.success;
            result = _yield$nativeRequest2.result;
            errorMsg = _yield$nativeRequest2.errorMsg;

            if (!(success && result)) {
              _context3.next = 36;
              break;
            }

            _context3.prev = 19;
            _context3.next = 22;
            return Object(util["z" /* nativeRequest */])("".concat(host, "/api/merchant/file/export/download"), 'post', {
              id: result,
              taskType: 31
            }, {
              Mallid: task.platform_store_id,
              changeStoreId: changeStoreId
            });

          case 22:
            res = _context3.sent;

            if (!(res.success && res.result)) {
              _context3.next = 26;
              break;
            }

            task.fileUrl = res.result.fileUrl;
            return _context3.abrupt("return", {
              fileUrl: res.result.fileUrl
            });

          case 26:
            _context3.next = 34;
            break;

          case 28:
            _context3.prev = 28;
            _context3.t0 = _context3["catch"](19);
            task.msg = "\u4E0B\u8F7D\u62A5\u8868\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0, task));
            task.status = 9;
            log["a" /* default */].setLog(task.msg);
            return _context3.abrupt("return", false);

          case 34:
            _context3.next = 40;
            break;

          case 36:
            _msg = "\u83B7\u53D6\u62A5\u8868\u4E0B\u8F7D\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            task.msg = _msg;
            task.status = 9;
            log["a" /* default */].setLog(_msg);

          case 40:
            _context3.next = 48;
            break;

          case 42:
            _context3.prev = 42;
            _context3.t1 = _context3["catch"](10);
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t1, task));
            task.status = 9;
            log["a" /* default */].setLog(task.msg);
            return _context3.abrupt("return", false);

          case 48:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[10, 42], [19, 28]]);
  }));

  return function getEnReportUrl(_x3, _x4) {
    return _ref3.apply(this, arguments);
  };
}(); // 获取下载报表链接


var getTemuReport_getCnReportUrl = /*#__PURE__*/function () {
  var _ref4 = getTemuReport_asyncToGenerator( /*#__PURE__*/getTemuReport_regeneratorRuntime().mark(function _callee4(task) {
    var res;
    return getTemuReport_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export/download"), 'post', {
              id: task.downloadId,
              taskType: 19
            }, {
              Mallid: task.platform_store_id
            });

          case 3:
            res = _context4.sent;

            if (!(res.success && res.result)) {
              _context4.next = 9;
              break;
            }

            task.fileUrl = res.result.fileUrl;
            return _context4.abrupt("return", {
              fileUrl: res.result.fileUrl
            });

          case 9:
            task.status = 9;
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(res.errorMsg);
            log["a" /* default */].setLog(task.msg);

          case 12:
            _context4.next = 19;
            break;

          case 14:
            _context4.prev = 14;
            _context4.t0 = _context4["catch"](0);
            task.status = 9;
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context4.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 19:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 14]]);
  }));

  return function getCnReportUrl(_x5) {
    return _ref4.apply(this, arguments);
  };
}(); // 下载报表


var getTemuReport_downloadReport = /*#__PURE__*/function () {
  var _ref5 = getTemuReport_asyncToGenerator( /*#__PURE__*/getTemuReport_regeneratorRuntime().mark(function _callee5(task) {
    var res, name, oFile, fileRes, zip;
    return getTemuReport_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            _context5.prev = 0;
            _context5.next = 3;
            return axios_default()({
              method: 'GET',
              url: task.fileUrl,
              responseType: 'blob'
            });

          case 3:
            res = _context5.sent;

            if (!(res && res.data)) {
              _context5.next = 16;
              break;
            }

            name = Object(util["q" /* getNameByUrl */])(task.fileUrl);
            oFile = new File([res.data], name, {
              type: 'application/zip'
            });
            // 文件压缩
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, res.data, {
              binary: true
            });
            _context5.next = 12;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"), {
                type: 'application/zip'
              });
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = {
                file: cFile
              };
            }).catch(function (e) {
              log["a" /* default */].setLog('财务报表压缩失败', Object(util["u" /* isError */])(e));
              fileRes = {
                file: oFile
              };
            });

          case 12:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context5.abrupt("return", fileRes);

          case 16:
            _context5.next = 23;
            break;

          case 18:
            _context5.prev = 18;
            _context5.t0 = _context5["catch"](0);
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context5.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 23:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[0, 18]]);
  }));

  return function downloadReport(_x6) {
    return _ref5.apply(this, arguments);
  };
}();

var getTemuReport = /*#__PURE__*/function () {
  var _ref6 = getTemuReport_asyncToGenerator( /*#__PURE__*/getTemuReport_regeneratorRuntime().mark(function _callee6(task) {
    var generateReportRes, host, param, res, uploadRes;
    return getTemuReport_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.t0 = task.status !== 6;

            if (!_context6.t0) {
              _context6.next = 5;
              break;
            }

            _context6.next = 4;
            return getTemuReport_awaitReportDownload(task);

          case 4:
            _context6.t0 = !_context6.sent;

          case 5:
            if (!_context6.t0) {
              _context6.next = 14;
              break;
            }

            _context6.next = 8;
            return getTemuReport_generateReport(task);

          case 8:
            generateReportRes = _context6.sent;

            if (generateReportRes) {
              _context6.next = 11;
              break;
            }

            return _context6.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 11:
            if (!(generateReportRes == 'needSplit')) {
              _context6.next = 14;
              break;
            }

            log["a" /* default */].setLog('当前时间段报表数据量太多，需要拆分');
            return _context6.abrupt("return", {
              code: 4,
              msg: '当前时间段报表数据量太多，需要拆分'
            });

          case 14:
            _context6.t1 = task.status !== 2;

            if (!_context6.t1) {
              _context6.next = 19;
              break;
            }

            _context6.next = 18;
            return getTemuReport_awaitReportDownload(task);

          case 18:
            _context6.t1 = !_context6.sent;

          case 19:
            if (!_context6.t1) {
              _context6.next = 21;
              break;
            }

            return _context6.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 21:
            if (!(task.report_type == 1)) {
              _context6.next = 28;
              break;
            }

            _context6.next = 24;
            return getTemuReport_getCnReportUrl(task);

          case 24:
            if (_context6.sent) {
              _context6.next = 26;
              break;
            }

            return _context6.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 26:
            _context6.next = 33;
            break;

          case 28:
            host = {
              101: temu["h" /* temu */].cbGlobalHost,
              102: temu["h" /* temu */].cbEuHost,
              103: temu["h" /* temu */].cbUsHost
            }[task.report_type]; // 监听header头修改cookie
            // await changeLocalMallId(task.platform_store_id, task.siteId, host)

            _context6.next = 31;
            return getTemuReport_getEnReportUrl(task, host);

          case 31:
            if (_context6.sent) {
              _context6.next = 33;
              break;
            }

            return _context6.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 33:
            // 默认参数
            param = {
              type_id: task.type_id,
              platform_store_id: task.platform_store_id,
              result: null,
              code: 0,
              msg: null
            };
            _context6.next = 36;
            return getTemuReport_downloadReport(task);

          case 36:
            res = _context6.sent;

            if (!(res && res.file)) {
              _context6.next = 47;
              break;
            }

            _context6.next = 40;
            return Object(util["L" /* uploadFile */])(res.file);

          case 40:
            uploadRes = _context6.sent;
            log["a" /* default */].setLog('文件上传结果：', JSON.stringify(uploadRes));

            if (!(uploadRes && uploadRes.code === 1)) {
              _context6.next = 44;
              break;
            }

            return _context6.abrupt("return", getTemuReport_objectSpread(getTemuReport_objectSpread({}, param), {}, {
              result: {
                report_file: uploadRes.data,
                cosKey: uploadRes.data.key,
                originFileName: uploadRes.data.originFileName,
                report_custom_date_start: task.report_custom_date_start,
                report_custom_date_end: task.report_custom_date_end,
                reportType: task.report_type,
                reportDate: task.report_date_month
              }
            }));

          case 44:
            // 上传失败
            task.status = 7;
            task.msg = '文件上传cos失败';
            param.result = {
              requestId: uploadRes.requestId,
              msg: uploadRes.msg
            };

          case 47:
            if (![8, 12].includes(task.status)) {
              _context6.next = 50;
              break;
            }

            task.isDelete = true;
            return _context6.abrupt("return", getTemuReport_objectSpread(getTemuReport_objectSpread({}, param), {}, {
              msg: task.msg,
              code: task.status === 8 ? 3 : 1
            }));

          case 50:
            return _context6.abrupt("return", getTemuReport_objectSpread(getTemuReport_objectSpread({}, param), {}, {
              code: 2,
              msg: task.msg
            }));

          case 51:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6);
  }));

  return function getTemuReport(_x7) {
    return _ref6.apply(this, arguments);
  };
}();

/* harmony default export */ var qtReport_getTemuReport = (getTemuReport); // window.testGetTemuReport = () => {
//   getTemuReport({
//     host:'https://seller.kuajingmaihuo.com',
//     report_custom_date_start:'2024-11-01',
//     report_custom_date_end:'2024-11-26',
//     platform_store_id: 634418215364437,
//     beginTime:1730390400000,
//     endTime:1732636799000,
//     area: 'US',
//     status: 6,
//   })
// }
// CONCATENATED MODULE: ./src/platform/temu/qtReport/getStmlReport.js
function getStmlReport_typeof(obj) { "@babel/helpers - typeof"; return getStmlReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getStmlReport_typeof(obj); }

function getStmlReport_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getStmlReport_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getStmlReport_ownKeys(Object(source), !0).forEach(function (key) { getStmlReport_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getStmlReport_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getStmlReport_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getStmlReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getStmlReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getStmlReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getStmlReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getStmlReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getStmlReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getStmlReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }









var getStmlReport_generateReport = /*#__PURE__*/function () {
  var _ref = getStmlReport_asyncToGenerator( /*#__PURE__*/getStmlReport_regeneratorRuntime().mark(function _callee(task) {
    var _yield$nativeRequest, success, result, errorMsg, errorCode, errMsg, msg;

    return getStmlReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(util["z" /* nativeRequest */])(task.isUdp ? "".concat(task.host, "/api/udp/yuanbenchu/seller_central/recon_bill/download/async") : "".concat(task.host, "/portal/selene/seller/portal/recon/download"), 'post', {
              req: {
                deductTimeBegin: task.report_custom_datetime_start,
                deductTimeEnd: task.report_custom_datetime_end,
                settleStatus: 1
              },
              requestStr: JSON.stringify(["\u8D26\u5355\u652F\u51FA/\u9000\u6B3E\u65F6\u95F4: ".concat(task.report_custom_date_start, " ~ ").concat(task.report_custom_date_end)])
            }, {
              changeStoreId: task.platform_store_id,
              Mallid: task.platform_store_id
            });

          case 3:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            result = _yield$nativeRequest.result;
            errorMsg = _yield$nativeRequest.errorMsg;
            errorCode = _yield$nativeRequest.errorCode;

            if (!(success && result && result.taskId)) {
              _context.next = 15;
              break;
            }

            log["a" /* default */].setLog('发货面单费报表生成成功');
            task.taskId = result.taskId;
            task.status = 6;
            return _context.abrupt("return", true);

          case 15:
            errMsg = JSON.stringify(errorMsg);

            if (!(errorCode === 2000000 || errMsg.includes('请明日再试'))) {
              _context.next = 21;
              break;
            }

            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errMsg);
            _context.next = 26;
            break;

          case 21:
            if (!(errorCode == 3000000)) {
              _context.next = 25;
              break;
            }

            return _context.abrupt("return", 'needSplit');

          case 25:
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errMsg);

          case 26:
            log["a" /* default */].setLog(msg);
            task.msg = msg;

          case 28:
            _context.next = 36;
            break;

          case 30:
            _context.prev = 30;
            _context.t0 = _context["catch"](0);
            task.status = 3;
            task.msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context.t0, task));
            log["a" /* default */].setLog(task.msg);
            return _context.abrupt("return", false);

          case 36:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 30]]);
  }));

  return function generateReport(_x) {
    return _ref.apply(this, arguments);
  };
}(); // 查询报表生成状态


var getStmlReport_awaitReportDownload = /*#__PURE__*/function () {
  var _ref2 = getStmlReport_asyncToGenerator( /*#__PURE__*/getStmlReport_regeneratorRuntime().mark(function _callee2(task) {
    var count,
        res,
        list,
        curDate,
        requestDate,
        find,
        _args2 = arguments;
    return getStmlReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            count = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 0;
            _context2.prev = 1;

            if (!(count >= 5)) {
              _context2.next = 7;
              break;
            }

            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
            task.run_time = 0;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D"; // task.status = 6

            return _context2.abrupt("return", false);

          case 7:
            _context2.next = 9;
            return Object(util["z" /* nativeRequest */])(task.isUdp ? "".concat(task.host, "/api/udp/yuanbenchu/seller_central/recon_bill/task/info") : "".concat(task.host, "/portal/selene/seller/portal/recon/download_list"), 'post', {
              pageNum: 1,
              pageSize: 50,
              settleStatus: 1
            }, {
              changeStoreId: task.platform_store_id,
              Mallid: task.platform_store_id
            });

          case 9:
            res = _context2.sent;

            if (!(res && res.result)) {
              _context2.next = 37;
              break;
            }

            list = res.result.excelCommonTaskList;
            _context2.next = 14;
            return Object(util["t" /* getServiceTime */])();

          case 14:
            curDate = _context2.sent;
            requestDate = "".concat(task.report_custom_date_start, " ~ ").concat(task.report_custom_date_end);
            find = list.find(function (item) {
              // 判断列表是否已有要获取报表
              if (item.createTime > curDate - 23 * 60 * 60 * 1000 && !task.taskId) {
                return item.requestStr.indexOf(requestDate) > -1;
              } else return item.taskId == task.taskId;
            });

            if (!find) {
              _context2.next = 33;
              break;
            }

            _context2.t0 = find.isFinished;
            _context2.next = _context2.t0 === true ? 21 : _context2.t0 === false ? 24 : 24;
            break;

          case 21:
            task.status = 2;
            task.downloadUrl = find.downloadUrl;
            return _context2.abrupt("return", true);

          case 24:
            // task.status = 6
            task.msg = '文件正在生成中';
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context2.next = 28;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 28:
            _context2.next = 30;
            return getStmlReport_awaitReportDownload(task, ++count);

          case 30:
            return _context2.abrupt("return", _context2.sent);

          case 31:
            _context2.next = 35;
            break;

          case 33:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D----not find";
            log["a" /* default */].setLog(task.msg);

          case 35:
            _context2.next = 39;
            break;

          case 37:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0CTemu\u89C4\u5219\u53EF\u80FD\u6539\u53D8\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D";
            log["a" /* default */].setLog(task.msg);

          case 39:
            _context2.next = 45;
            break;

          case 41:
            _context2.prev = 41;
            _context2.t1 = _context2["catch"](1);
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context2.t1, task));
            log["a" /* default */].setLog(task.msg);

          case 45:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 41]]);
  }));

  return function awaitReportDownload(_x2) {
    return _ref2.apply(this, arguments);
  };
}(); // 下载报表


var getStmlReport_downloadReport = /*#__PURE__*/function () {
  var _ref3 = getStmlReport_asyncToGenerator( /*#__PURE__*/getStmlReport_regeneratorRuntime().mark(function _callee3(task) {
    var res, name, oFile, fileRes, zip;
    return getStmlReport_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return axios_default()({
              method: 'GET',
              url: task.downloadUrl,
              responseType: 'blob'
            });

          case 3:
            res = _context3.sent;

            if (!(res && res.data)) {
              _context3.next = 16;
              break;
            }

            name = Object(util["q" /* getNameByUrl */])(task.downloadUrl);
            oFile = new File([res.data], name, {
              type: 'application/zip'
            });
            // 文件压缩
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, res.data, {
              binary: true
            });
            _context3.next = 12;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"), {
                type: 'application/zip'
              });
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = {
                file: cFile
              };
            }).catch(function (e) {
              log["a" /* default */].setLog('发货面单费压缩失败', Object(util["u" /* isError */])(e));
              fileRes = {
                file: oFile
              };
            });

          case 12:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context3.abrupt("return", fileRes);

          case 16:
            _context3.next = 23;
            break;

          case 18:
            _context3.prev = 18;
            _context3.t0 = _context3["catch"](0);
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 23:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 18]]);
  }));

  return function downloadReport(_x3) {
    return _ref3.apply(this, arguments);
  };
}();

var getStmlReport = /*#__PURE__*/function () {
  var _ref4 = getStmlReport_asyncToGenerator( /*#__PURE__*/getStmlReport_regeneratorRuntime().mark(function _callee4(task) {
    var loginRes, msg, generateReportRes, param, res, uploadRes;
    return getStmlReport_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            task.host = task.report_type == 1102 ? temu["h" /* temu */].cbUsHost : temu["h" /* temu */].cbEuHost;
            task.isUdp = task.report_type == 1102; // 监听header头修改cookie
            // await changeLocalMallId(task.platform_store_id, task.siteId, task.host)
            // 需要提前登录一下美区或者欧区

            _context4.next = 4;
            return Object(temu["g" /* loginCb */])(task);

          case 4:
            loginRes = _context4.sent;

            if (loginRes) {
              _context4.next = 10;
              break;
            }

            msg = '切换到美区或欧区站点失败，请检查';
            task.msg = msg;
            log["a" /* default */].setLog(msg);
            return _context4.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 10:
            _context4.t0 = task.status !== 6;

            if (!_context4.t0) {
              _context4.next = 15;
              break;
            }

            _context4.next = 14;
            return getStmlReport_awaitReportDownload(task);

          case 14:
            _context4.t0 = !_context4.sent;

          case 15:
            if (!_context4.t0) {
              _context4.next = 24;
              break;
            }

            _context4.next = 18;
            return getStmlReport_generateReport(task);

          case 18:
            generateReportRes = _context4.sent;

            if (generateReportRes) {
              _context4.next = 21;
              break;
            }

            return _context4.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 21:
            if (!(generateReportRes == 'needSplit')) {
              _context4.next = 24;
              break;
            }

            log["a" /* default */].setLog('当前时间段报表数据量太多，需要拆分');
            return _context4.abrupt("return", {
              code: 4,
              msg: '当前时间段报表数据量太多，需要拆分'
            });

          case 24:
            _context4.t1 = task.status !== 2;

            if (!_context4.t1) {
              _context4.next = 29;
              break;
            }

            _context4.next = 28;
            return getStmlReport_awaitReportDownload(task);

          case 28:
            _context4.t1 = !_context4.sent;

          case 29:
            if (!_context4.t1) {
              _context4.next = 31;
              break;
            }

            return _context4.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 31:
            // 默认参数
            param = {
              type_id: task.type_id,
              platform_store_id: task.platform_store_id,
              result: null,
              code: 0,
              msg: null
            };
            _context4.next = 34;
            return getStmlReport_downloadReport(task);

          case 34:
            res = _context4.sent;

            if (!(res && res.file)) {
              _context4.next = 45;
              break;
            }

            _context4.next = 38;
            return Object(util["L" /* uploadFile */])(res.file);

          case 38:
            uploadRes = _context4.sent;
            log["a" /* default */].setLog('文件上传结果：', JSON.stringify(uploadRes));

            if (!(uploadRes && uploadRes.code === 1)) {
              _context4.next = 42;
              break;
            }

            return _context4.abrupt("return", getStmlReport_objectSpread(getStmlReport_objectSpread({}, param), {}, {
              result: {
                report_file: uploadRes.data,
                cosKey: uploadRes.data.key,
                originFileName: uploadRes.data.originFileName,
                report_custom_date_start: task.report_custom_date_start,
                report_custom_date_end: task.report_custom_date_end,
                reportType: task.report_type,
                reportDate: task.report_date_month
              }
            }));

          case 42:
            // 上传失败
            task.status = 7;
            task.msg = '文件上传cos失败';
            param.result = {
              requestId: uploadRes.requestId,
              msg: uploadRes.msg
            };

          case 45:
            if (![8, 12].includes(task.status)) {
              _context4.next = 48;
              break;
            }

            task.isDelete = true;
            return _context4.abrupt("return", getStmlReport_objectSpread(getStmlReport_objectSpread({}, param), {}, {
              msg: task.msg,
              code: task.status === 8 ? 3 : 1
            }));

          case 48:
            return _context4.abrupt("return", getStmlReport_objectSpread(getStmlReport_objectSpread({}, param), {}, {
              code: 2,
              msg: task.msg
            }));

          case 49:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));

  return function getStmlReport(_x4) {
    return _ref4.apply(this, arguments);
  };
}();

/* harmony default export */ var qtReport_getStmlReport = (getStmlReport); // window.testGetStmlReport = () => {
//   getStmlReport({
//     host:'https://agentseller-eu.temu.com',
//     report_custom_date_start:'2024-11-01',
//     report_custom_date_end:'2024-11-30',
//     platform_store_id: 634418215364437,
//     beginTime:1730390400000,
//     endTime:1732636799000,
//     area: 'EU'
//   })
// }
// CONCATENATED MODULE: ./src/platform/temu/qtReport/getReverseReport.js
function getReverseReport_typeof(obj) { "@babel/helpers - typeof"; return getReverseReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getReverseReport_typeof(obj); }

function getReverseReport_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getReverseReport_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getReverseReport_ownKeys(Object(source), !0).forEach(function (key) { getReverseReport_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getReverseReport_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getReverseReport_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getReverseReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getReverseReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getReverseReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getReverseReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getReverseReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getReverseReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getReverseReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }









var getReverseReport_generateReport = /*#__PURE__*/function () {
  var _ref = getReverseReport_asyncToGenerator( /*#__PURE__*/getReverseReport_regeneratorRuntime().mark(function _callee(task) {
    var _yield$nativeRequest, success, result, errorMsg, errorCode, errMsg, msg;

    return getReverseReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/portal/").concat(task.isUdp ? 'udp/' : '').concat(task.serverName, "/seller/center/bill/download/async"), 'post', {
              ext: JSON.stringify({
                deductTimeBegin: task.report_custom_datetime_start,
                deductTimeEnd: task.report_custom_datetime_end,
                rangeTime: "\u5BFC\u51FA\u4EFB\u52A1\u751F\u6210\u65F6\u95F4: ".concat(task.report_custom_date_start, " ~ ").concat(task.report_custom_date_end)
              })
            }, {
              changeStoreId: task.platform_store_id,
              Mallid: task.platform_store_id
            });

          case 3:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            result = _yield$nativeRequest.result;
            errorMsg = _yield$nativeRequest.errorMsg;
            errorCode = _yield$nativeRequest.errorCode;

            if (!(success && result && result.taskId)) {
              _context.next = 15;
              break;
            }

            log["a" /* default */].setLog('退货面单费已创建生成任务');
            task.taskId = result.taskId;
            task.status = 6;
            return _context.abrupt("return", true);

          case 15:
            errMsg = JSON.stringify(errorMsg);

            if (!(errorCode === 2000000 || errMsg.includes('请明日再试'))) {
              _context.next = 21;
              break;
            }

            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errMsg);
            _context.next = 26;
            break;

          case 21:
            if (!(errorCode == 3000000)) {
              _context.next = 25;
              break;
            }

            return _context.abrupt("return", 'needSplit');

          case 25:
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errMsg);

          case 26:
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            task.status = 3;
            return _context.abrupt("return", false);

          case 30:
            _context.next = 38;
            break;

          case 32:
            _context.prev = 32;
            _context.t0 = _context["catch"](0);
            task.status = 3;
            task.msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context.t0, task));
            log["a" /* default */].setLog(task.msg);
            return _context.abrupt("return", false);

          case 38:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 32]]);
  }));

  return function generateReport(_x) {
    return _ref.apply(this, arguments);
  };
}(); // 查询报表生成状态


var getReverseReport_awaitReportDownload = /*#__PURE__*/function () {
  var _ref2 = getReverseReport_asyncToGenerator( /*#__PURE__*/getReverseReport_regeneratorRuntime().mark(function _callee2(task) {
    var count,
        res,
        list,
        curDate,
        find,
        _args2 = arguments;
    return getReverseReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            count = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 0;
            _context2.prev = 1;

            if (!(count >= 5)) {
              _context2.next = 7;
              break;
            }

            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
            task.run_time = 0;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D"; // task.status = 6

            return _context2.abrupt("return", false);

          case 7:
            _context2.next = 9;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/portal/").concat(task.isUdp ? 'udp/' : '').concat(task.serverName, "/seller/center/bill/task/list"), 'post', {
              pageNum: 1,
              pageSize: 50
            }, {
              changeStoreId: task.platform_store_id,
              Mallid: task.platform_store_id
            });

          case 9:
            res = _context2.sent;

            if (!(res && res.result)) {
              _context2.next = 36;
              break;
            }

            list = res.result.excelCommonTaskList;
            _context2.next = 14;
            return Object(util["t" /* getServiceTime */])();

          case 14:
            curDate = _context2.sent;
            find = list.find(function (item) {
              var ext = item.ext && JSON.parse(item.ext);
              var createTime = new Date(item.createdAt).getTime(); // 判断列表是否已有要获取报表

              if (createTime > curDate - 23 * 60 * 60 * 1000 && ext && !task.taskId) {
                return ext.deductTimeBegin == task.report_custom_datetime_start && ext.deductTimeEnd == task.report_custom_datetime_end;
              } else return item.taskId == task.taskId;
            });

            if (!find) {
              _context2.next = 32;
              break;
            }

            _context2.t0 = find.isFinished;
            _context2.next = _context2.t0 === true ? 20 : _context2.t0 === false ? 23 : 23;
            break;

          case 20:
            task.status = 2;
            task.downloadUrl = find.downloadUrl;
            return _context2.abrupt("return", true);

          case 23:
            // task.status = 6
            task.msg = '文件正在生成中';
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context2.next = 27;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 27:
            _context2.next = 29;
            return getReverseReport_awaitReportDownload(task, ++count);

          case 29:
            return _context2.abrupt("return", _context2.sent);

          case 30:
            _context2.next = 34;
            break;

          case 32:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D----not find";
            log["a" /* default */].setLog(task.msg);

          case 34:
            _context2.next = 38;
            break;

          case 36:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0CTemu\u89C4\u5219\u53EF\u80FD\u6539\u53D8\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D";
            log["a" /* default */].setLog(task.msg);

          case 38:
            _context2.next = 44;
            break;

          case 40:
            _context2.prev = 40;
            _context2.t1 = _context2["catch"](1);
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context2.t1, task));
            log["a" /* default */].setLog(task.msg);

          case 44:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 40]]);
  }));

  return function awaitReportDownload(_x2) {
    return _ref2.apply(this, arguments);
  };
}(); // 下载报表


var getReverseReport_downloadReport = /*#__PURE__*/function () {
  var _ref3 = getReverseReport_asyncToGenerator( /*#__PURE__*/getReverseReport_regeneratorRuntime().mark(function _callee3(task) {
    var res, name, oFile, fileRes, zip;
    return getReverseReport_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return axios_default()({
              method: 'GET',
              url: task.downloadUrl,
              responseType: 'blob'
            });

          case 3:
            res = _context3.sent;

            if (!(res && res.data)) {
              _context3.next = 16;
              break;
            }

            name = Object(util["q" /* getNameByUrl */])(task.downloadUrl);
            oFile = new File([res.data], name, {
              type: 'application/zip'
            });
            // 文件压缩
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, res.data, {
              binary: true
            });
            _context3.next = 12;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"), {
                type: 'application/zip'
              });
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = {
                file: cFile
              };
            }).catch(function (e) {
              log["a" /* default */].setLog('退货面单费压缩失败', Object(util["u" /* isError */])(e));
              fileRes = {
                file: oFile
              };
            });

          case 12:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context3.abrupt("return", fileRes);

          case 16:
            _context3.next = 23;
            break;

          case 18:
            _context3.prev = 18;
            _context3.t0 = _context3["catch"](0);
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 23:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 18]]);
  }));

  return function downloadReport(_x3) {
    return _ref3.apply(this, arguments);
  };
}();

var getReverseReport = /*#__PURE__*/function () {
  var _ref4 = getReverseReport_asyncToGenerator( /*#__PURE__*/getReverseReport_regeneratorRuntime().mark(function _callee4(task) {
    var isUs, loginRes, msg, generateReportRes, param, res, uploadRes;
    return getReverseReport_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            isUs = [1202, 1302].includes(task.report_type);
            task.host = isUs ? temu["h" /* temu */].cbUsHost : temu["h" /* temu */].cbEuHost;
            task.serverName = [1201, 1202].includes(task.report_type) ? 'sunce' : 'sunquan';
            task.isUdp = isUs; // 监听header头修改cookie
            // await changeLocalMallId(task.platform_store_id, task.siteId, task.host)
            // 需要提前登录一下美区或者欧区

            _context4.next = 6;
            return Object(temu["g" /* loginCb */])(task);

          case 6:
            loginRes = _context4.sent;

            if (loginRes) {
              _context4.next = 12;
              break;
            }

            msg = '切换到美区或欧区站点失败，请检查';
            task.msg = msg;
            log["a" /* default */].setLog(msg);
            return _context4.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 12:
            _context4.t0 = task.status !== 6;

            if (!_context4.t0) {
              _context4.next = 17;
              break;
            }

            _context4.next = 16;
            return getReverseReport_awaitReportDownload(task);

          case 16:
            _context4.t0 = !_context4.sent;

          case 17:
            if (!_context4.t0) {
              _context4.next = 26;
              break;
            }

            _context4.next = 20;
            return getReverseReport_generateReport(task);

          case 20:
            generateReportRes = _context4.sent;

            if (generateReportRes) {
              _context4.next = 23;
              break;
            }

            return _context4.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 23:
            if (!(generateReportRes == 'needSplit')) {
              _context4.next = 26;
              break;
            }

            log["a" /* default */].setLog('当前时间段报表数据量太多，需要拆分');
            return _context4.abrupt("return", {
              code: 4,
              msg: '当前时间段报表数据量太多，需要拆分'
            });

          case 26:
            _context4.t1 = task.status !== 2;

            if (!_context4.t1) {
              _context4.next = 31;
              break;
            }

            _context4.next = 30;
            return getReverseReport_awaitReportDownload(task);

          case 30:
            _context4.t1 = !_context4.sent;

          case 31:
            if (!_context4.t1) {
              _context4.next = 33;
              break;
            }

            return _context4.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 33:
            // 默认参数
            param = {
              type_id: task.type_id,
              platform_store_id: task.platform_store_id,
              result: null,
              code: 0,
              msg: null
            };
            _context4.next = 36;
            return getReverseReport_downloadReport(task);

          case 36:
            res = _context4.sent;

            if (!(res && res.file)) {
              _context4.next = 47;
              break;
            }

            _context4.next = 40;
            return Object(util["L" /* uploadFile */])(res.file);

          case 40:
            uploadRes = _context4.sent;
            log["a" /* default */].setLog('文件上传结果：', JSON.stringify(uploadRes));

            if (!(uploadRes && uploadRes.code === 1)) {
              _context4.next = 44;
              break;
            }

            return _context4.abrupt("return", getReverseReport_objectSpread(getReverseReport_objectSpread({}, param), {}, {
              result: {
                report_file: uploadRes.data,
                cosKey: uploadRes.data.key,
                originFileName: uploadRes.data.originFileName,
                report_custom_date_start: task.report_custom_date_start,
                report_custom_date_end: task.report_custom_date_end,
                reportType: task.report_type,
                reportDate: task.report_date_month
              }
            }));

          case 44:
            // 上传失败
            task.status = 7;
            task.msg = '文件上传cos失败';
            param.result = {
              requestId: uploadRes.requestId,
              msg: uploadRes.msg
            };

          case 47:
            if (![8, 12].includes(task.status)) {
              _context4.next = 50;
              break;
            }

            task.isDelete = true;
            return _context4.abrupt("return", getReverseReport_objectSpread(getReverseReport_objectSpread({}, param), {}, {
              msg: task.msg,
              code: task.status === 8 ? 3 : 1
            }));

          case 50:
            return _context4.abrupt("return", getReverseReport_objectSpread(getReverseReport_objectSpread({}, param), {}, {
              code: 2,
              msg: task.msg
            }));

          case 51:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));

  return function getReverseReport(_x4) {
    return _ref4.apply(this, arguments);
  };
}();

/* harmony default export */ var qtReport_getReverseReport = (getReverseReport); // window.testGetReverseReport = () => {
//   getReverseReport({
//     area: 'EU',
//     host:'https://agentseller-eu.temu.com',
//     report_custom_date_start:'2024-11-01',
//     report_custom_date_end:'2024-11-26',
//     platform_store_id: 634418215364437,
//     beginTime:1730390400000,
//     endTime:1732636799000,
//     report_type:12,
//   })
// }
// CONCATENATED MODULE: ./src/platform/temu/qtReport/getPoDetail.js
function getPoDetail_typeof(obj) { "@babel/helpers - typeof"; return getPoDetail_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getPoDetail_typeof(obj); }

function getPoDetail_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getPoDetail_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getPoDetail_ownKeys(Object(source), !0).forEach(function (key) { getPoDetail_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getPoDetail_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getPoDetail_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getPoDetail_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getPoDetail_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getPoDetail_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getPoDetail_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getPoDetail_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getPoDetail_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getPoDetail_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }







 // 生成报告

var getPoDetail_generateReport = /*#__PURE__*/function () {
  var _ref = getPoDetail_asyncToGenerator( /*#__PURE__*/getPoDetail_regeneratorRuntime().mark(function _callee(task) {
    var _yield$nativeRequest, success, errorMsg, result, errorCode, errMsg, msg;

    return getPoDetail_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export"), 'post', {
              accountTimeEnd: task.report_custom_date_end,
              accountTimeStart: task.report_custom_date_start,
              taskType: 36
            }, {
              Mallid: task.platform_store_id
            });

          case 3:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            errorMsg = _yield$nativeRequest.errorMsg;
            result = _yield$nativeRequest.result;
            errorCode = _yield$nativeRequest.errorCode;

            if (!success) {
              _context.next = 15;
              break;
            }

            log["a" /* default */].setLog('半托管po明细生成成功');
            task.reportId = result;
            task.status = 6;
            return _context.abrupt("return", true);

          case 15:
            errMsg = JSON.stringify(errorMsg);

            if (!(errorCode === 2000000 || errMsg.includes('请明日再试'))) {
              _context.next = 21;
              break;
            }

            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errMsg);
            _context.next = 26;
            break;

          case 21:
            if (!(errorCode == 3000000)) {
              _context.next = 25;
              break;
            }

            return _context.abrupt("return", 'needSplit');

          case 25:
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errMsg);

          case 26:
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            task.status = 3;

          case 29:
            _context.next = 37;
            break;

          case 31:
            _context.prev = 31;
            _context.t0 = _context["catch"](0);
            task.msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context.t0, task));
            task.status = 3;
            log["a" /* default */].setLog(task.msg);
            return _context.abrupt("return", false);

          case 37:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 31]]);
  }));

  return function generateReport(_x) {
    return _ref.apply(this, arguments);
  };
}(); // 查询报表生成状态


var getPoDetail_awaitReportDownload = /*#__PURE__*/function () {
  var _ref2 = getPoDetail_asyncToGenerator( /*#__PURE__*/getPoDetail_regeneratorRuntime().mark(function _callee2(task) {
    var count,
        res,
        list,
        find,
        _args2 = arguments;
    return getPoDetail_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            count = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 0;
            _context2.prev = 1;

            if (!(count >= 5)) {
              _context2.next = 7;
              break;
            }

            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
            task.run_time = 0;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D"; // task.status = 6

            return _context2.abrupt("return", false);

          case 7:
            _context2.next = 9;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export/history/page"), 'post', {
              pageNum: 1,
              pageSize: 50,
              taskType: 36
            }, {
              Mallid: task.platform_store_id
            });

          case 9:
            res = _context2.sent;

            if (!(res && res.result)) {
              _context2.next = 33;
              break;
            }

            list = res.result.merchantMerchantFileExportHistoryList;
            find = list.find(function (item) {
              var accountTimeStart = moment_default()(item.accountTimeStart).format('YYYY-MM-DD');
              var accountTimeEnd = moment_default()(item.accountTimeEnd).format('YYYY-MM-DD');
              return item.expireSeconds > 0 && accountTimeStart == task.report_custom_date_start && accountTimeEnd == task.report_custom_date_end || item.id == task.reportId;
            });

            if (!find) {
              _context2.next = 29;
              break;
            }

            _context2.t0 = find.status;
            _context2.next = _context2.t0 === 2 ? 17 : _context2.t0 === 1 ? 20 : 20;
            break;

          case 17:
            task.status = 2;
            task.reportId = find.id;
            return _context2.abrupt("return", true);

          case 20:
            // task.status = 6
            task.msg = '文件正在生成中';
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context2.next = 24;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 24:
            _context2.next = 26;
            return getPoDetail_awaitReportDownload(task, ++count);

          case 26:
            return _context2.abrupt("return", _context2.sent);

          case 27:
            _context2.next = 31;
            break;

          case 29:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D----not find";
            log["a" /* default */].setLog(task.msg);

          case 31:
            _context2.next = 35;
            break;

          case 33:
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0CTemu\u89C4\u5219\u53EF\u80FD\u6539\u53D8\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D";
            log["a" /* default */].setLog(task.msg);

          case 35:
            _context2.next = 41;
            break;

          case 37:
            _context2.prev = 37;
            _context2.t1 = _context2["catch"](1);
            // task.status = 6
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context2.t1, task));
            log["a" /* default */].setLog(task.msg);

          case 41:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 37]]);
  }));

  return function awaitReportDownload(_x2) {
    return _ref2.apply(this, arguments);
  };
}(); // 生成下载报表链接


var getDownloadReportUrl = /*#__PURE__*/function () {
  var _ref3 = getPoDetail_asyncToGenerator( /*#__PURE__*/getPoDetail_regeneratorRuntime().mark(function _callee3(task) {
    var _yield$nativeRequest2, success, result, errorMsg;

    return getPoDetail_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/file/export/download"), 'post', {
              id: task.reportId,
              taskType: 36
            }, {
              Mallid: task.platform_store_id
            });

          case 3:
            _yield$nativeRequest2 = _context3.sent;
            success = _yield$nativeRequest2.success;
            result = _yield$nativeRequest2.result;
            errorMsg = _yield$nativeRequest2.errorMsg;

            if (!(success && result.fileUrl)) {
              _context3.next = 12;
              break;
            }

            task.fileUrl = result.fileUrl;
            return _context3.abrupt("return", {
              fileUrl: result.fileUrl
            });

          case 12:
            task.status = 9;
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errorMsg);
            log["a" /* default */].setLog(task.msg);

          case 15:
            _context3.next = 22;
            break;

          case 17:
            _context3.prev = 17;
            _context3.t0 = _context3["catch"](0);
            task.status = 9;
            task.msg = "\u751F\u6210\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 22:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 17]]);
  }));

  return function getDownloadReportUrl(_x3) {
    return _ref3.apply(this, arguments);
  };
}(); // 下载报表


var getPoDetail_downloadReport = /*#__PURE__*/function () {
  var _ref4 = getPoDetail_asyncToGenerator( /*#__PURE__*/getPoDetail_regeneratorRuntime().mark(function _callee4(task) {
    var res, name, oFile, fileRes, zip;
    return getPoDetail_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return axios_default()({
              method: 'GET',
              url: task.fileUrl,
              responseType: 'blob'
            });

          case 3:
            res = _context4.sent;

            if (!(res && res.data)) {
              _context4.next = 16;
              break;
            }

            name = Object(util["q" /* getNameByUrl */])(task.fileUrl);
            oFile = new File([res.data], name, {
              type: 'application/zip'
            });
            // 文件压缩
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, res.data, {
              binary: true
            });
            _context4.next = 12;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"), {
                type: 'application/zip'
              });
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = {
                file: cFile
              };
            }).catch(function (e) {
              log["a" /* default */].setLog('财务报表压缩失败', Object(util["u" /* isError */])(e));
              fileRes = {
                file: oFile
              };
            });

          case 12:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context4.abrupt("return", fileRes);

          case 16:
            _context4.next = 23;
            break;

          case 18:
            _context4.prev = 18;
            _context4.t0 = _context4["catch"](0);
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context4.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 23:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 18]]);
  }));

  return function downloadReport(_x4) {
    return _ref4.apply(this, arguments);
  };
}();

var getPoDetail = /*#__PURE__*/function () {
  var _ref5 = getPoDetail_asyncToGenerator( /*#__PURE__*/getPoDetail_regeneratorRuntime().mark(function _callee5(task) {
    var loginRes, msg, generateReportRes, param, res, uploadRes;
    return getPoDetail_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            task.host = {
              201: temu["h" /* temu */].cbGlobalHost,
              202: temu["h" /* temu */].cbEuHost,
              203: temu["h" /* temu */].cbUsHost
            }[task.report_type];
            _context5.next = 3;
            return Object(temu["g" /* loginCb */])(task);

          case 3:
            loginRes = _context5.sent;

            if (loginRes) {
              _context5.next = 10;
              break;
            }

            msg = '切换到美区、欧区或全球站点失败，请检查';
            task.msg = msg;
            task.status = 11;
            log["a" /* default */].setLog(task.msg);
            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 10:
            _context5.t0 = task.status !== 6;

            if (!_context5.t0) {
              _context5.next = 15;
              break;
            }

            _context5.next = 14;
            return getPoDetail_awaitReportDownload(task);

          case 14:
            _context5.t0 = !_context5.sent;

          case 15:
            if (!_context5.t0) {
              _context5.next = 24;
              break;
            }

            _context5.next = 18;
            return getPoDetail_generateReport(task);

          case 18:
            generateReportRes = _context5.sent;

            if (generateReportRes) {
              _context5.next = 21;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 21:
            if (!(generateReportRes == 'needSplit')) {
              _context5.next = 24;
              break;
            }

            log["a" /* default */].setLog('当前时间段报表数据量太多，需要拆分');
            return _context5.abrupt("return", {
              code: 4,
              msg: '当前时间段报表数据量太多，需要拆分'
            });

          case 24:
            _context5.t1 = task.status !== 2;

            if (!_context5.t1) {
              _context5.next = 29;
              break;
            }

            _context5.next = 28;
            return getPoDetail_awaitReportDownload(task);

          case 28:
            _context5.t1 = !_context5.sent;

          case 29:
            if (!_context5.t1) {
              _context5.next = 31;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 31:
            _context5.next = 33;
            return getDownloadReportUrl(task);

          case 33:
            if (_context5.sent) {
              _context5.next = 35;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 35:
            // 默认参数
            param = {
              type_id: task.type_id,
              platform_store_id: task.platform_store_id,
              result: null,
              code: 0,
              msg: null
            };
            _context5.next = 38;
            return getPoDetail_downloadReport(task);

          case 38:
            res = _context5.sent;

            if (!(res && res.file)) {
              _context5.next = 49;
              break;
            }

            _context5.next = 42;
            return Object(util["L" /* uploadFile */])(res.file);

          case 42:
            uploadRes = _context5.sent;
            log["a" /* default */].setLog('文件上传结果：', JSON.stringify(uploadRes));

            if (!(uploadRes && uploadRes.code === 1)) {
              _context5.next = 46;
              break;
            }

            return _context5.abrupt("return", getPoDetail_objectSpread(getPoDetail_objectSpread({}, param), {}, {
              result: {
                report_file: uploadRes.data,
                cosKey: uploadRes.data.key,
                originFileName: uploadRes.data.originFileName,
                report_custom_date_start: task.report_custom_date_start,
                report_custom_date_end: task.report_custom_date_end,
                reportType: task.report_type,
                reportDate: task.report_date_month
              }
            }));

          case 46:
            // 上传失败
            task.status = 7;
            task.msg = '文件上传cos失败';
            param.result = {
              requestId: uploadRes.requestId,
              msg: uploadRes.msg
            };

          case 49:
            if (![8, 12].includes(task.status)) {
              _context5.next = 52;
              break;
            }

            task.isDelete = true;
            return _context5.abrupt("return", getPoDetail_objectSpread(getPoDetail_objectSpread({}, param), {}, {
              msg: task.msg,
              code: task.status === 8 ? 3 : 1
            }));

          case 52:
            return _context5.abrupt("return", getPoDetail_objectSpread(getPoDetail_objectSpread({}, param), {}, {
              code: 2,
              msg: task.msg
            }));

          case 53:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function getPoDetail(_x5) {
    return _ref5.apply(this, arguments);
  };
}();

/* harmony default export */ var qtReport_getPoDetail = (getPoDetail);
// EXTERNAL MODULE: ./node_modules/moment-timezone/index.js
var moment_timezone = __webpack_require__("7f45");

// CONCATENATED MODULE: ./src/platform/temu/qtReport/getLocalTemuReport.js
function getLocalTemuReport_typeof(obj) { "@babel/helpers - typeof"; return getLocalTemuReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getLocalTemuReport_typeof(obj); }

function getLocalTemuReport_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getLocalTemuReport_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getLocalTemuReport_ownKeys(Object(source), !0).forEach(function (key) { getLocalTemuReport_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getLocalTemuReport_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getLocalTemuReport_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getLocalTemuReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getLocalTemuReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getLocalTemuReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getLocalTemuReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getLocalTemuReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getLocalTemuReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getLocalTemuReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }







 // 根据区域(US/EU)将日期字符串转换为对应当地时间的时间戳（不覆盖原字段）

var getLocalTemuReport_convertLocalDateRange = function convertLocalDateRange(task) {
  var tz = task.time_zone || (task.area === 'US' ? 'America/Los_Angeles' : 'Europe/Berlin');
  var startLocal = moment_default.a.tz(task.report_custom_date_start, 'YYYY-MM-DD', tz).startOf('day').valueOf();
  var endLocal = moment_default.a.tz(task.report_custom_date_end, 'YYYY-MM-DD', tz).endOf('day').valueOf();
  task.report_custom_datetime_start_local = startLocal;
  task.report_custom_datetime_end_local = endLocal;
};

var toGetReportSelectMaxTime = /*#__PURE__*/function () {
  var _ref = getLocalTemuReport_asyncToGenerator( /*#__PURE__*/getLocalTemuReport_regeneratorRuntime().mark(function _callee(task) {
    return getLocalTemuReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return getReportMaxTime(task);

          case 2:
            return _context.abrupt("return", _context.sent);

          case 3:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));

  return function toGetReportSelectMaxTime(_x) {
    return _ref.apply(this, arguments);
  };
}(); // 获取当前报表可导出的最新结束时间（失败最多重试3次）


var getReportMaxTime = /*#__PURE__*/function () {
  var _ref2 = getLocalTemuReport_asyncToGenerator( /*#__PURE__*/getLocalTemuReport_regeneratorRuntime().mark(function _callee2(task) {
    var retry,
        res,
        _res$result,
        max_time,
        time_zone,
        _args2 = arguments;

    return getLocalTemuReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            retry = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 0;
            _context2.prev = 1;
            _context2.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/mms/statement/export/task/time"), 'post', {
              exportType: 1
            });

          case 4:
            res = _context2.sent;

            if (!(res && res.success && res.result && res.result.max_time)) {
              _context2.next = 10;
              break;
            }

            _res$result = res.result, max_time = _res$result.max_time, time_zone = _res$result.time_zone;
            task.time_zone = time_zone;
            task.max_time = max_time;
            return _context2.abrupt("return", true);

          case 10:
            task.msg = '获取报表可导出时间失败-----res返回：' + JSON.stringify(res);
            log["a" /* default */].setLog(task.msg);
            task.status = 3;
            return _context2.abrupt("return", false);

          case 16:
            _context2.prev = 16;
            _context2.t0 = _context2["catch"](1);

            if (!(retry < 3)) {
              _context2.next = 25;
              break;
            }

            log["a" /* default */].setLog("\u83B7\u53D6\u62A5\u8868\u53EF\u5BFC\u51FA\u65F6\u95F4\u5931\u8D25\uFF0C\u91CD\u8BD5\u7B2C".concat(retry + 1, "\u6B21"), Object(util["u" /* isError */])(_context2.t0, task));
            _context2.next = 22;
            return Object(util["h" /* delayed */])(1000);

          case 22:
            _context2.next = 24;
            return getReportMaxTime(task, retry + 1);

          case 24:
            return _context2.abrupt("return", _context2.sent);

          case 25:
            task.msg = '获取报表可导出时间失败-----接口报错：' + Object(util["u" /* isError */])(_context2.t0, task);
            log["a" /* default */].setLog(task.msg);
            task.status = 3;
            return _context2.abrupt("return", false);

          case 29:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 16]]);
  }));

  return function getReportMaxTime(_x2) {
    return _ref2.apply(this, arguments);
  };
}(); // 校验并确定结束时间：开始时间必须 < max_time，结束时间取 min(report_custom_datetime_end, max_time)


var resolveReportEndTime = /*#__PURE__*/function () {
  var _ref3 = getLocalTemuReport_asyncToGenerator( /*#__PURE__*/getLocalTemuReport_regeneratorRuntime().mark(function _callee3(task) {
    var _task$report_custom_d, _task$report_custom_d2;

    var maxTime, startTime, endTime;
    return getLocalTemuReport_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            maxTime = task.max_time;

            if (maxTime) {
              _context3.next = 3;
              break;
            }

            return _context3.abrupt("return", null);

          case 3:
            startTime = Number((_task$report_custom_d = task.report_custom_datetime_start_local) !== null && _task$report_custom_d !== void 0 ? _task$report_custom_d : task.report_custom_datetime_start);
            endTime = Number((_task$report_custom_d2 = task.report_custom_datetime_end_local) !== null && _task$report_custom_d2 !== void 0 ? _task$report_custom_d2 : task.report_custom_datetime_end);

            if (startTime < maxTime) {
              _context3.next = 10;
              break;
            }

            task.msg = '开始时间大于最近可导出日期，请调整时间范围----startTime: ' + startTime + ' maxTime: ' + maxTime;
            log["a" /* default */].setLog(task.msg);
            task.status = 3;
            return _context3.abrupt("return", null);

          case 10:
            return _context3.abrupt("return", Math.min(endTime, maxTime));

          case 11:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));

  return function resolveReportEndTime(_x3) {
    return _ref3.apply(this, arguments);
  };
}(); // 确保任务上缓存可用的结束时间，保持“生成请求”和“状态查询”用同一结束时间，避免中途再次拉接口导致结束时间变化。


var ensureEndCreateTime = /*#__PURE__*/function () {
  var _ref4 = getLocalTemuReport_asyncToGenerator( /*#__PURE__*/getLocalTemuReport_regeneratorRuntime().mark(function _callee4(task) {
    var end;
    return getLocalTemuReport_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            if (!(typeof task.endCreateTime === 'number')) {
              _context4.next = 2;
              break;
            }

            return _context4.abrupt("return", task.endCreateTime);

          case 2:
            _context4.next = 4;
            return resolveReportEndTime(task);

          case 4:
            end = _context4.sent;

            if (typeof end === 'number') {
              task.endCreateTime = end;
            }

            return _context4.abrupt("return", end);

          case 7:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));

  return function ensureEndCreateTime(_x4) {
    return _ref4.apply(this, arguments);
  };
}();

var getLocalTemuReport_generateReport = /*#__PURE__*/function () {
  var _ref5 = getLocalTemuReport_asyncToGenerator( /*#__PURE__*/getLocalTemuReport_regeneratorRuntime().mark(function _callee5(task) {
    var _task$report_custom_d3, endCreateTime, createParams, _yield$nativeRequest, success, error_msg, error_code, errMsg, msg;

    return getLocalTemuReport_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            _context5.prev = 0;
            _context5.next = 3;
            return ensureEndCreateTime(task);

          case 3:
            endCreateTime = _context5.sent;

            if (endCreateTime) {
              _context5.next = 6;
              break;
            }

            return _context5.abrupt("return", false);

          case 6:
            createParams = {
              beginCreateTime: (_task$report_custom_d3 = task.report_custom_datetime_start_local) !== null && _task$report_custom_d3 !== void 0 ? _task$report_custom_d3 : task.report_custom_datetime_start,
              endCreateTime: endCreateTime,
              exportType: 1,
              fileType: 'excel'
            };
            _context5.next = 9;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/mms/statement/export/task/create"), 'post', createParams);

          case 9:
            _yield$nativeRequest = _context5.sent;
            success = _yield$nativeRequest.success;
            error_msg = _yield$nativeRequest.error_msg;
            error_code = _yield$nativeRequest.error_code;

            if (!success) {
              _context5.next = 18;
              break;
            }

            log["a" /* default */].setLog('半托管财务报表生成成功');
            return _context5.abrupt("return", true);

          case 18:
            errMsg = JSON.stringify(error_msg);

            // 操作频繁直接不让重试
            if (error_code === 2000000 || errMsg.includes('请明日再试')) {
              task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
              msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errMsg);
            } else {
              msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(errMsg);
            }

            log["a" /* default */].setLog(msg);
            task.msg = msg;
            task.status = 3;

          case 23:
            _context5.next = 31;
            break;

          case 25:
            _context5.prev = 25;
            _context5.t0 = _context5["catch"](0);
            task.msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context5.t0, task));
            task.status = 3;
            log["a" /* default */].setLog(task.msg);
            return _context5.abrupt("return", false);

          case 31:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[0, 25]]);
  }));

  return function generateReport(_x5) {
    return _ref5.apply(this, arguments);
  };
}(); // 查询报表生成状态


var getLocalTemuReport_awaitReportDownload = /*#__PURE__*/function () {
  var _ref6 = getLocalTemuReport_asyncToGenerator( /*#__PURE__*/getLocalTemuReport_regeneratorRuntime().mark(function _callee6(task) {
    var count,
        res,
        _task$report_custom_d4,
        list,
        normalizedEnd,
        endCreateTime,
        find,
        _args6 = arguments;

    return getLocalTemuReport_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            count = _args6.length > 1 && _args6[1] !== undefined ? _args6[1] : 0;
            _context6.prev = 1;

            if (!(count >= 5)) {
              _context6.next = 8;
              break;
            }

            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
            task.run_time = 0;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D";
            task.status = 6;
            return _context6.abrupt("return", false);

          case 8:
            _context6.next = 10;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/mms/statement/export/task/list"), 'post', {
              page: 1,
              size: 50
            });

          case 10:
            res = _context6.sent;

            if (!(res && res.success && res.result)) {
              _context6.next = 41;
              break;
            }

            list = res.result.export_task_list || []; // 为当前查询重新规范化结束时间（拉取一次 time 接口），确保与生成时使用的结束时间一致

            _context6.next = 15;
            return resolveReportEndTime(task);

          case 15:
            normalizedEnd = _context6.sent;
            if (typeof normalizedEnd === 'number') task.endCreateTime = normalizedEnd;
            endCreateTime = typeof task.endCreateTime === 'number' ? task.endCreateTime : normalizedEnd !== null && normalizedEnd !== void 0 ? normalizedEnd : (_task$report_custom_d4 = task.report_custom_datetime_end_local) !== null && _task$report_custom_d4 !== void 0 ? _task$report_custom_d4 : task.report_custom_datetime_end;
            find = list.find(function (item) {
              var _task$report_custom_d5;

              // temu后台报告记录有可能存在时间段非12:00:00-11:59:59的记录，所以需要判断是否是同一天，同一天则不需要重新去生成
              var isStartSameDay = moment_default()(item.start_time_stamp).isSame((_task$report_custom_d5 = task.report_custom_datetime_start_local) !== null && _task$report_custom_d5 !== void 0 ? _task$report_custom_d5 : task.report_custom_datetime_start, 'day');
              var isEndSameDay = moment_default()(item.end_time_stamp).isSame(endCreateTime, 'day');
              return isStartSameDay && isEndSameDay && item.create_time_stamp > Date.now() - 24 * 60 * 60 * 1000;
            });

            if (!find) {
              _context6.next = 36;
              break;
            }

            _context6.t0 = find.status;
            _context6.next = _context6.t0 === 1 ? 23 : 26;
            break;

          case 23:
            task.status = 2;
            task.flow_id = find.flow_id;
            return _context6.abrupt("return", true);

          case 26:
            task.status = 6;
            task.msg = '文件正在生成中';
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context6.next = 31;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 31:
            _context6.next = 33;
            return getLocalTemuReport_awaitReportDownload(task, ++count);

          case 33:
            return _context6.abrupt("return", _context6.sent);

          case 34:
            _context6.next = 39;
            break;

          case 36:
            task.status = 6;
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D----not find";
            log["a" /* default */].setLog(task.msg);

          case 39:
            _context6.next = 44;
            break;

          case 41:
            task.status = 6;
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0CTemu\u89C4\u5219\u53EF\u80FD\u6539\u53D8\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D";
            log["a" /* default */].setLog(task.msg);

          case 44:
            _context6.next = 51;
            break;

          case 46:
            _context6.prev = 46;
            _context6.t1 = _context6["catch"](1);
            task.status = 6;
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context6.t1, task));
            log["a" /* default */].setLog(task.msg);

          case 51:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6, null, [[1, 46]]);
  }));

  return function awaitReportDownload(_x6) {
    return _ref6.apply(this, arguments);
  };
}(); // 获取下载报表链接


var getLocalTemuReport_getReportUrl = /*#__PURE__*/function () {
  var _ref7 = getLocalTemuReport_asyncToGenerator( /*#__PURE__*/getLocalTemuReport_regeneratorRuntime().mark(function _callee7(task) {
    var res;
    return getLocalTemuReport_regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            _context7.prev = 0;
            _context7.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/mms/statement/export/task/result"), 'post', {
              flowId: task.flow_id
            });

          case 3:
            res = _context7.sent;

            if (!(res.success && res.result)) {
              _context7.next = 9;
              break;
            }

            task.fileUrl = res.result.file_url;
            return _context7.abrupt("return", {
              fileUrl: res.result.file_url
            });

          case 9:
            task.status = 9;
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(res.error_msg);
            log["a" /* default */].setLog(task.msg);

          case 12:
            _context7.next = 19;
            break;

          case 14:
            _context7.prev = 14;
            _context7.t0 = _context7["catch"](0);
            task.status = 9;
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context7.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 19:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7, null, [[0, 14]]);
  }));

  return function getReportUrl(_x7) {
    return _ref7.apply(this, arguments);
  };
}(); // 下载报表


var getLocalTemuReport_downloadReport = /*#__PURE__*/function () {
  var _ref8 = getLocalTemuReport_asyncToGenerator( /*#__PURE__*/getLocalTemuReport_regeneratorRuntime().mark(function _callee8(task) {
    var res, name, oFile, fileRes, zip;
    return getLocalTemuReport_regeneratorRuntime().wrap(function _callee8$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            _context8.prev = 0;
            _context8.next = 3;
            return axios_default()({
              method: 'GET',
              url: task.fileUrl,
              responseType: 'blob'
            });

          case 3:
            res = _context8.sent;

            if (!(res && res.data)) {
              _context8.next = 16;
              break;
            }

            name = Object(util["q" /* getNameByUrl */])(task.fileUrl);
            oFile = new File([res.data], name, {
              type: 'application/zip'
            });
            // 文件压缩
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, res.data, {
              binary: true
            });
            _context8.next = 12;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"), {
                type: 'application/zip'
              });
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = {
                file: cFile
              };
            }).catch(function (e) {
              log["a" /* default */].setLog('财务报表压缩失败', Object(util["u" /* isError */])(e));
              fileRes = {
                file: oFile
              };
            });

          case 12:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context8.abrupt("return", fileRes);

          case 16:
            _context8.next = 23;
            break;

          case 18:
            _context8.prev = 18;
            _context8.t0 = _context8["catch"](0);
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\u201C\u91CD\u65B0\u83B7\u53D6\u201D\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context8.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 23:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee8, null, [[0, 18]]);
  }));

  return function downloadReport(_x8) {
    return _ref8.apply(this, arguments);
  };
}();

var getLocalTemuReport = /*#__PURE__*/function () {
  var _ref9 = getLocalTemuReport_asyncToGenerator( /*#__PURE__*/getLocalTemuReport_regeneratorRuntime().mark(function _callee9(task) {
    var timeRes, param, res, uploadRes;
    return getLocalTemuReport_regeneratorRuntime().wrap(function _callee9$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            _context9.next = 2;
            return toGetReportSelectMaxTime(task);

          case 2:
            timeRes = _context9.sent;

            if (timeRes) {
              _context9.next = 5;
              break;
            }

            return _context9.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 5:
            // 先根据区域转换时间为当地时间戳（起始00:00:00，结束23:59:59）
            getLocalTemuReport_convertLocalDateRange(task); // 如果还未生成过，并且找历史导出列表也没有，那就生成一次

            _context9.t0 = task.status !== 6;

            if (!_context9.t0) {
              _context9.next = 11;
              break;
            }

            _context9.next = 10;
            return getLocalTemuReport_awaitReportDownload(task);

          case 10:
            _context9.t0 = !_context9.sent;

          case 11:
            if (!_context9.t0) {
              _context9.next = 16;
              break;
            }

            _context9.next = 14;
            return getLocalTemuReport_generateReport(task);

          case 14:
            if (_context9.sent) {
              _context9.next = 16;
              break;
            }

            return _context9.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 16:
            _context9.t1 = task.status !== 2;

            if (!_context9.t1) {
              _context9.next = 21;
              break;
            }

            _context9.next = 20;
            return getLocalTemuReport_awaitReportDownload(task);

          case 20:
            _context9.t1 = !_context9.sent;

          case 21:
            if (!_context9.t1) {
              _context9.next = 23;
              break;
            }

            return _context9.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 23:
            _context9.next = 25;
            return getLocalTemuReport_getReportUrl(task);

          case 25:
            if (_context9.sent) {
              _context9.next = 27;
              break;
            }

            return _context9.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 27:
            // 默认参数
            param = {
              type_id: task.type_id,
              platform_store_id: task.platform_store_id,
              result: null,
              code: 0,
              msg: null
            };
            _context9.next = 30;
            return getLocalTemuReport_downloadReport(task);

          case 30:
            res = _context9.sent;

            if (!(res && res.file)) {
              _context9.next = 41;
              break;
            }

            _context9.next = 34;
            return Object(util["L" /* uploadFile */])(res.file);

          case 34:
            uploadRes = _context9.sent;
            log["a" /* default */].setLog('文件上传结果：', JSON.stringify(uploadRes));

            if (!(uploadRes && uploadRes.code === 1)) {
              _context9.next = 38;
              break;
            }

            return _context9.abrupt("return", getLocalTemuReport_objectSpread(getLocalTemuReport_objectSpread({}, param), {}, {
              result: {
                report_file: uploadRes.data,
                cosKey: uploadRes.data.key,
                originFileName: uploadRes.data.originFileName,
                report_custom_date_start: task.report_custom_date_start,
                report_custom_date_end: task.report_custom_date_end,
                reportType: task.report_type,
                reportDate: task.report_date_month
              }
            }));

          case 38:
            // 上传失败
            task.status = 7;
            task.msg = '文件上传cos失败';
            param.result = {
              requestId: uploadRes.requestId,
              msg: uploadRes.msg
            };

          case 41:
            if (![8, 12].includes(task.status)) {
              _context9.next = 44;
              break;
            }

            task.isDelete = true;
            return _context9.abrupt("return", getLocalTemuReport_objectSpread(getLocalTemuReport_objectSpread({}, param), {}, {
              msg: task.msg,
              code: task.status === 8 ? 3 : 1
            }));

          case 44:
            return _context9.abrupt("return", getLocalTemuReport_objectSpread(getLocalTemuReport_objectSpread({}, param), {}, {
              code: 2,
              msg: task.msg
            }));

          case 45:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee9);
  }));

  return function getLocalTemuReport(_x9) {
    return _ref9.apply(this, arguments);
  };
}();

/* harmony default export */ var qtReport_getLocalTemuReport = (getLocalTemuReport);
// CONCATENATED MODULE: ./src/platform/temu/qtReport/getSettlementData.js
function getSettlementData_typeof(obj) { "@babel/helpers - typeof"; return getSettlementData_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getSettlementData_typeof(obj); }

function getSettlementData_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getSettlementData_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getSettlementData_ownKeys(Object(source), !0).forEach(function (key) { getSettlementData_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getSettlementData_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getSettlementData_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getSettlementData_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getSettlementData_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getSettlementData_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getSettlementData_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getSettlementData_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getSettlementData_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getSettlementData_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }






 // 根据report_type获取settleDataType
// 504, 505, 506 → 待处理款项 settleDataType: 1
// 507, 508, 509 → 结算中款项 settleDataType: 2

var getSettleDataType = function getSettleDataType(reportType) {
  if ([504, 505, 506].includes(reportType)) return 1;
  if ([507, 508, 509].includes(reportType)) return 2;
  return 1;
}; // 根据report_type获取英文中心host


var getSettlementData_getHost = function getHost(reportType) {
  return {
    504: temu["h" /* temu */].cbGlobalHost,
    505: temu["h" /* temu */].cbUsHost,
    506: temu["h" /* temu */].cbEuHost,
    507: temu["h" /* temu */].cbGlobalHost,
    508: temu["h" /* temu */].cbUsHost,
    509: temu["h" /* temu */].cbEuHost
  }[reportType];
};

var getSettlementData_generateReport = /*#__PURE__*/function () {
  var _ref = getSettlementData_asyncToGenerator( /*#__PURE__*/getSettlementData_regeneratorRuntime().mark(function _callee(task, host) {
    var settleDataType, changeStoreId, _yield$nativeRequest, success, errorCode, errorMsg, msg;

    return getSettlementData_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            settleDataType = getSettleDataType(task.report_type);
            changeStoreId = "".concat(task.real_mall_id, "&").concat(task.siteId);
            _context.next = 5;
            return Object(util["z" /* nativeRequest */])("".concat(host, "/api/merchant/file/export"), 'post', {
              settleDataType: settleDataType,
              taskType: 12
            }, {
              Mallid: task.real_mall_id,
              changeStoreId: changeStoreId
            });

          case 5:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            errorCode = _yield$nativeRequest.errorCode;
            errorMsg = _yield$nativeRequest.errorMsg;

            if (!success) {
              _context.next = 15;
              break;
            }

            log["a" /* default */].setLog('结算数据报表生成成功');
            task.status = 6;
            return _context.abrupt("return", true);

          case 15:
            if (!(errorCode == 2000000)) {
              _context.next = 18;
              break;
            }

            task.status = 6;
            return _context.abrupt("return", true);

          case 18:
            if (!(errorCode == 3000000)) {
              _context.next = 20;
              break;
            }

            return _context.abrupt("return", 'needSplit');

          case 20:
            msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            task.status = 3;
            log["a" /* default */].setLog(msg);
            task.msg = msg;

          case 24:
            _context.next = 32;
            break;

          case 26:
            _context.prev = 26;
            _context.t0 = _context["catch"](0);
            task.status = 3;
            task.msg = "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context.t0, task));
            log["a" /* default */].setLog(task.msg);
            return _context.abrupt("return", false);

          case 32:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 26]]);
  }));

  return function generateReport(_x, _x2) {
    return _ref.apply(this, arguments);
  };
}(); // 查询报表生成状态


var getSettlementData_awaitReportDownload = /*#__PURE__*/function () {
  var _ref2 = getSettlementData_asyncToGenerator( /*#__PURE__*/getSettlementData_regeneratorRuntime().mark(function _callee2(task, host) {
    var count,
        changeStoreId,
        res,
        list,
        settleDataType,
        find,
        _args2 = arguments;
    return getSettlementData_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            count = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : 0;
            _context2.prev = 1;

            if (!(count >= 5)) {
              _context2.next = 7;
              break;
            }

            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
            task.run_time = 0;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D";
            return _context2.abrupt("return", false);

          case 7:
            changeStoreId = "".concat(task.real_mall_id, "&").concat(task.siteId);
            _context2.next = 10;
            return Object(util["z" /* nativeRequest */])("".concat(host, "/api/merchant/file/export/history/page"), 'post', {
              pageNum: 1,
              pageSize: 50,
              taskType: 12
            }, {
              Mallid: task.real_mall_id,
              changeStoreId: changeStoreId
            });

          case 10:
            res = _context2.sent;

            if (!(res && res.result)) {
              _context2.next = 35;
              break;
            }

            list = res.result.merchantMerchantFileExportHistoryList;
            settleDataType = getSettleDataType(task.report_type);
            find = list.find(function (item) {
              // 只获取一小时内生成的报表
              var taskFinishedTime = new Date(item.taskFinishedTime).getTime();
              return item.settleDataType == settleDataType && taskFinishedTime > Date.now() - 1 * 60 * 60 * 1000;
            });

            if (!find) {
              _context2.next = 31;
              break;
            }

            _context2.t0 = find.status;
            _context2.next = _context2.t0 === 2 ? 19 : _context2.t0 === 1 ? 22 : 22;
            break;

          case 19:
            task.status = 2;
            task.downloadId = find.id;
            return _context2.abrupt("return", true);

          case 22:
            task.msg = '文件正在生成中';
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context2.next = 26;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 26:
            _context2.next = 28;
            return getSettlementData_awaitReportDownload(task, host, ++count);

          case 28:
            return _context2.abrupt("return", _context2.sent);

          case 29:
            _context2.next = 33;
            break;

          case 31:
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25----not find\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"";
            log["a" /* default */].setLog(task.msg);

          case 33:
            _context2.next = 37;
            break;

          case 35:
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0CTemu\u89C4\u5219\u53EF\u80FD\u6539\u53D8\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"";
            log["a" /* default */].setLog(task.msg);

          case 37:
            _context2.next = 43;
            break;

          case 39:
            _context2.prev = 39;
            _context2.t1 = _context2["catch"](1);
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"\uFF0C\u4EE5\u4E0B\u4E3A\u539F\u59CB\u9875\u9762\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context2.t1, task));
            log["a" /* default */].setLog(task.msg);

          case 43:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 39]]);
  }));

  return function awaitReportDownload(_x3, _x4) {
    return _ref2.apply(this, arguments);
  };
}(); // 获取下载报表链接


var getSettlementData_getReportUrl = /*#__PURE__*/function () {
  var _ref3 = getSettlementData_asyncToGenerator( /*#__PURE__*/getSettlementData_regeneratorRuntime().mark(function _callee3(task, host) {
    var changeStoreId, res;
    return getSettlementData_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            changeStoreId = "".concat(task.real_mall_id, "&").concat(task.siteId);
            _context3.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(host, "/api/merchant/file/export/download"), 'post', {
              id: task.downloadId,
              taskType: 12
            }, {
              Mallid: task.real_mall_id,
              changeStoreId: changeStoreId
            });

          case 4:
            res = _context3.sent;

            if (!(res.success && res.result)) {
              _context3.next = 10;
              break;
            }

            task.fileUrl = res.result.fileUrl;
            return _context3.abrupt("return", {
              fileUrl: res.result.fileUrl
            });

          case 10:
            task.status = 9;
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"\uFF0C\u4EE5\u4E0B\u4E3A\u539F\u59CB\u9875\u9762\u62A5\u9519\uFF1A".concat(res.errorMsg);
            log["a" /* default */].setLog(task.msg);

          case 13:
            _context3.next = 20;
            break;

          case 15:
            _context3.prev = 15;
            _context3.t0 = _context3["catch"](0);
            task.status = 9;
            task.msg = "\u83B7\u53D6\u4E0B\u8F7D\u62A5\u8868\u94FE\u63A5\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"\uFF0C\u4EE5\u4E0B\u4E3A\u539F\u59CB\u9875\u9762\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 20:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 15]]);
  }));

  return function getReportUrl(_x5, _x6) {
    return _ref3.apply(this, arguments);
  };
}(); // 下载报表


var getSettlementData_downloadReport = /*#__PURE__*/function () {
  var _ref4 = getSettlementData_asyncToGenerator( /*#__PURE__*/getSettlementData_regeneratorRuntime().mark(function _callee4(task) {
    var res, name, oFile, fileRes, zip;
    return getSettlementData_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return axios_default()({
              method: 'GET',
              url: task.fileUrl,
              responseType: 'blob'
            });

          case 3:
            res = _context4.sent;

            if (!(res && res.data)) {
              _context4.next = 16;
              break;
            }

            name = Object(util["q" /* getNameByUrl */])(task.fileUrl);
            oFile = new File([res.data], name, {
              type: 'application/zip'
            });
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, res.data, {
              binary: true
            });
            _context4.next = 12;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              compressionOptions: {
                level: 9
              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"), {
                type: 'application/zip'
              });
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = {
                file: cFile
              };
            }).catch(function (e) {
              log["a" /* default */].setLog('财务报表压缩失败', Object(util["u" /* isError */])(e));
              fileRes = {
                file: oFile
              };
            });

          case 12:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context4.abrupt("return", fileRes);

          case 16:
            _context4.next = 23;
            break;

          case 18:
            _context4.prev = 18;
            _context4.t0 = _context4["catch"](0);
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"\uFF0C\u4EE5\u4E0B\u4E3A\u539F\u59CB\u9875\u9762\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context4.t0, task));
            log["a" /* default */].setLog(task.msg);

          case 23:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 18]]);
  }));

  return function downloadReport(_x7) {
    return _ref4.apply(this, arguments);
  };
}();

var getSettlementData = /*#__PURE__*/function () {
  var _ref5 = getSettlementData_asyncToGenerator( /*#__PURE__*/getSettlementData_regeneratorRuntime().mark(function _callee5(task) {
    var host, backUp, loginRes, generateReportRes, param, res, uploadRes;
    return getSettlementData_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            host = getSettlementData_getHost(task.report_type); // 登录英文中心

            backUp = getSettlementData_objectSpread(getSettlementData_objectSpread({}, task), {}, {
              host: host
            });
            _context5.next = 4;
            return Object(temu["g" /* loginCb */])(backUp);

          case 4:
            loginRes = _context5.sent;

            if (loginRes) {
              _context5.next = 10;
              break;
            }

            task.msg = '切换到对应站点失败，请检查';
            task.status = 11;
            log["a" /* default */].setLog(task.msg);
            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 10:
            _context5.next = 12;
            return getSettlementData_awaitReportDownload(task, host);

          case 12:
            if (_context5.sent) {
              _context5.next = 21;
              break;
            }

            _context5.next = 15;
            return getSettlementData_generateReport(task, host);

          case 15:
            generateReportRes = _context5.sent;

            if (generateReportRes) {
              _context5.next = 18;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 18:
            if (!(generateReportRes == 'needSplit')) {
              _context5.next = 21;
              break;
            }

            log["a" /* default */].setLog('当前报表数据量太多，需要拆分');
            return _context5.abrupt("return", {
              code: 4,
              msg: '当前报表数据量太多，需要拆分'
            });

          case 21:
            _context5.t0 = task.status !== 2;

            if (!_context5.t0) {
              _context5.next = 26;
              break;
            }

            _context5.next = 25;
            return getSettlementData_awaitReportDownload(task, host);

          case 25:
            _context5.t0 = !_context5.sent;

          case 26:
            if (!_context5.t0) {
              _context5.next = 28;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 28:
            _context5.next = 30;
            return getSettlementData_getReportUrl(task, host);

          case 30:
            if (_context5.sent) {
              _context5.next = 32;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 32:
            // 默认参数
            param = {
              type_id: task.type_id,
              platform_store_id: task.platform_store_id,
              result: null,
              code: 0,
              msg: null
            };
            _context5.next = 35;
            return getSettlementData_downloadReport(task);

          case 35:
            res = _context5.sent;

            if (!(res && res.file)) {
              _context5.next = 46;
              break;
            }

            _context5.next = 39;
            return Object(util["L" /* uploadFile */])(res.file);

          case 39:
            uploadRes = _context5.sent;
            log["a" /* default */].setLog('文件上传结果：', JSON.stringify(uploadRes));

            if (!(uploadRes && uploadRes.code === 1)) {
              _context5.next = 43;
              break;
            }

            return _context5.abrupt("return", getSettlementData_objectSpread(getSettlementData_objectSpread({}, param), {}, {
              result: {
                report_file: uploadRes.data,
                cosKey: uploadRes.data.key,
                originFileName: uploadRes.data.originFileName,
                report_custom_date_start: task.report_custom_date_start,
                report_custom_date_end: task.report_custom_date_end,
                reportType: task.report_type,
                reportDate: task.report_date_month
              }
            }));

          case 43:
            // 上传失败
            task.status = 7;
            task.msg = '文件上传cos失败';
            param.result = {
              requestId: uploadRes.requestId,
              msg: uploadRes.msg
            };

          case 46:
            return _context5.abrupt("return", getSettlementData_objectSpread(getSettlementData_objectSpread({}, param), {}, {
              code: 2,
              msg: task.msg
            }));

          case 47:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function getSettlementData(_x8) {
    return _ref5.apply(this, arguments);
  };
}();

/* harmony default export */ var qtReport_getSettlementData = (getSettlementData);
// CONCATENATED MODULE: ./src/platform/temu/qtReport/index.js
function qtReport_typeof(obj) { "@babel/helpers - typeof"; return qtReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, qtReport_typeof(obj); }

function qtReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ qtReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == qtReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function qtReport_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function qtReport_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? qtReport_ownKeys(Object(source), !0).forEach(function (key) { qtReport_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : qtReport_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function qtReport_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = qtReport_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function qtReport_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return qtReport_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return qtReport_arrayLikeToArray(o, minLen); }

function qtReport_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function qtReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function qtReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { qtReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { qtReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

//     Temu_SETTLEMENT_REPORT(5, "Temu全托管结算报告"),
//     Temu_BILLDETAILS_REPORT(51, "Temu全托管账务明细"),
//     Temu_DEDUCTION_1(52, "Temu全托管支出详情1"),
//     Temu_DEDUCTION_2(53, "Temu全托管支出详情2"),
//     Temu_DEDUCTION_3(54, "Temu全托管支出详情3"),
//     Temu_DEDUCTION_4(55, "Temu全托管支出详情4"),
//     Temu_DEDUCTION_5(56, "Temu全托管支出详情5"),
//     Temu_DEDUCTION_6(57, "Temu全托管支出详情6"),
//     Temu_DEDUCTION_7(58, "Temu全托管支出详情7"),
//     Temu_ERPFEE_1(59, "Temu全托管ERP费用1"),
//     Temu_ERPFEE_2(510, "Temu全托管ERP费用2"),
//     Temu_ERPFEE_3(511, "Temu全托管ERP费用3"),
//     Temu_ERPFEE_4(512, "Temu全托管ERP费用4"),











var BillDetailsReportType = [5, // 全球
51, // 跨境中文中心
502, // 欧区
503, // 美区
504, // 全球 - 待处理款项
505, // 美区 - 待处理款项
506, // 欧区 - 待处理款项
507, // 全球 - 结算中款项
508, // 美区 - 结算中款项
509 // 欧区 - 结算中款项
];
var DeductionReportType = [52, // 消费者及履约保障-售后问题
53, // 备货违规 - 发货履约保障-延迟发货
54, // 备货违规 - 发货履约保障-延迟到货
55, // 备货违规 - 发货履约保障-缺货
56, // 备货违规 - 商品品质保障-质量问题(JIT商品)
57, // 备货违规 - 商品品质保障-质量问题(定制商品)
58, // 质量事故违规
521 // 仓储增值服务-贴标费
];
var EPRReportType = [59, // Temu全托管ERP费用1
510, // Temu全托管ERP费用2
511, // Temu全托管ERP费用3
512, // Temu全托管ERP费用4
513 // Temu全托管ERP费用5
];
var SemiBillDetailsReportType = [1, // 跨境中文中心
101, // 全球
102, // 欧区
103 // 美区
];
var StmlReportType = [1101, // 欧区
1102 // 美区
];
var ReverseReportType = [1201, // 欧区商家仓
1202, // 美区商家仓
1301, // 欧区Temu仓
1302 // 美区Temu仓
];
var PoDetailType = [201, // 全球
202, // 欧区
203 // 美区
];
var LocalTemuReportType = [6 // Temu本土交易报告
];
var reportIntroMap = {
  5: '全球',
  51: '商家中心',
  502: '欧区',
  503: '美区',
  52: '消费者及履约保障-售后问题',
  53: '备货违规 - 发货履约保障-延迟发货',
  54: '备货违规 - 发货履约保障-延迟到货',
  55: '备货违规 - 发货履约保障-缺货',
  56: '备货违规 - 商品品质保障-质量问题(JIT商品)',
  57: '备货违规 - 商品品质保障-质量问题(定制商品)',
  58: '质量事故违规',
  521: '仓储增值服务-贴标费',
  59: 'Temu全托管ERP费用1',
  510: 'Temu全托管ERP费用2',
  511: 'Temu全托管ERP费用3',
  512: 'Temu全托管ERP费用4',
  513: 'Temu全托管ERP费用5',
  1: '商家中心',
  101: '全球',
  102: '欧区',
  103: '美区',
  1101: '欧区',
  1102: '美区',
  1201: '欧区商家仓',
  1202: '美区商家仓',
  1301: '欧区Temu仓',
  1302: '美区Temu仓',
  201: '全球',
  202: '欧区',
  203: '美区'
};

var qtReport_splitTimeRange = function splitTimeRange(start, end) {
  var startTime = Number(start);
  var endTime = Number(end);
  var midTime = Math.floor((startTime + endTime) / 2);
  return [{
    start: startTime,
    end: midTime,
    // 用moment将时间戳转换成北京时间YYYY-MM-DD格式输出
    formatStart: moment_default.a.tz(startTime, 'x', 'Asia/Shanghai').format('YYYY-MM-DD'),
    formatEnd: moment_default.a.tz(midTime, 'x', 'Asia/Shanghai').format('YYYY-MM-DD')
  }, {
    start: midTime + 1,
    end: endTime,
    formatStart: moment_default.a.tz(midTime + 1, 'x', 'Asia/Shanghai').format('YYYY-MM-DD'),
    formatEnd: moment_default.a.tz(endTime, 'x', 'Asia/Shanghai').format('YYYY-MM-DD')
  }];
};

var executeWithSplit = /*#__PURE__*/function () {
  var _ref = qtReport_asyncToGenerator( /*#__PURE__*/qtReport_regeneratorRuntime().mark(function _callee(task, handleFunc, depth) {
    var res, _mergedList$map, ranges, subResults, _iterator, _step, range, subTask, subRes, failedResult, mergedList;

    return qtReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return handleFunc(task);

          case 2:
            res = _context.sent;

            if (!(res.code === 4 && depth < 2)) {
              _context.next = 32;
              break;
            }

            ranges = qtReport_splitTimeRange(task.report_custom_datetime_start, task.report_custom_datetime_end);
            subResults = [];
            _iterator = _createForOfIteratorHelper(ranges);
            _context.prev = 7;

            _iterator.s();

          case 9:
            if ((_step = _iterator.n()).done) {
              _context.next = 19;
              break;
            }

            range = _step.value;
            log["a" /* default */].setLog('拆分时间范围', "\u5F00\u59CB\u65F6\u95F4\uFF1A".concat(range.formatStart, "\uFF0C\u7ED3\u675F\u65F6\u95F4\uFF1A").concat(range.formatEnd));
            subTask = qtReport_objectSpread(qtReport_objectSpread({}, task), {}, {
              report_custom_datetime_start: range.start,
              report_custom_datetime_end: range.end,
              report_custom_date_start: range.formatStart,
              report_custom_date_end: range.formatEnd,
              reportId: null
            });
            _context.next = 15;
            return executeWithSplit(subTask, handleFunc, depth + 1);

          case 15:
            subRes = _context.sent;
            subResults.push(subRes);

          case 17:
            _context.next = 9;
            break;

          case 19:
            _context.next = 24;
            break;

          case 21:
            _context.prev = 21;
            _context.t0 = _context["catch"](7);

            _iterator.e(_context.t0);

          case 24:
            _context.prev = 24;

            _iterator.f();

            return _context.finish(24);

          case 27:
            failedResult = subResults.find(function (r) {
              return r.code !== 0;
            });

            if (!failedResult) {
              _context.next = 30;
              break;
            }

            return _context.abrupt("return", failedResult);

          case 30:
            mergedList = subResults.flatMap(function (r) {
              return r.result || [];
            });
            return _context.abrupt("return", {
              code: 0,
              msg: '',
              result: {
                coskey: (_mergedList$map = mergedList.map(function (_ref2) {
                  var cosKey = _ref2.cosKey;
                  return cosKey;
                })) === null || _mergedList$map === void 0 ? void 0 : _mergedList$map.join(',')
              }
            });

          case 32:
            return _context.abrupt("return", res);

          case 33:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[7, 21, 24, 27]]);
  }));

  return function executeWithSplit(_x, _x2, _x3) {
    return _ref.apply(this, arguments);
  };
}();

var SettlementDataTypes = [504, 505, 506, 507, 508, 509]; // 获取财务任务公共方法

var commonGetReport = /*#__PURE__*/function () {
  var _ref3 = qtReport_asyncToGenerator( /*#__PURE__*/qtReport_regeneratorRuntime().mark(function _callee2(task, type) {
    var handleFunc, res, reportIntro;
    return qtReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            handleFunc = type === 'billDetails' && SettlementDataTypes.includes(task.report_type) ? qtReport_getSettlementData : {
              billDetails: qtReport_getBillDetailsReport,
              deduction: qtReport_getDeductionReport,
              epr: qtReport_getEPRReport,
              semiBillDetails: qtReport_getTemuReport,
              stmlReport: qtReport_getStmlReport,
              reverseReport: qtReport_getReverseReport,
              poDetail: qtReport_getPoDetail,
              localTemuReport: qtReport_getLocalTemuReport
            }[type];
            _context2.next = 3;
            return executeWithSplit(task, handleFunc, 0);

          case 3:
            res = _context2.sent;
            reportIntro = reportIntroMap[task.report_type];
            return _context2.abrupt("return", qtReport_objectSpread({
              reportType: task.report_type,
              msg: (reportIntro ? "[".concat(reportIntro, "]") : '') + (res.msg || ''),
              code: res.code
            }, res.result || {}));

          case 6:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));

  return function commonGetReport(_x4, _x5) {
    return _ref3.apply(this, arguments);
  };
}(); // 公共处理方法


var commonHandleReport = /*#__PURE__*/function () {
  var _ref4 = qtReport_asyncToGenerator( /*#__PURE__*/qtReport_regeneratorRuntime().mark(function _callee3(task, type) {
    var res, taskCache, typeList, _iterator2, _step2, _loop, _ret, index, errTask, errRes;

    return qtReport_regeneratorRuntime().wrap(function _callee3$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            res = task.resCache ? task.resCache : {
              code: 0,
              msg: '',
              result: []
            };
            taskCache = [];
            typeList = {
              billDetails: BillDetailsReportType,
              deduction: DeductionReportType,
              epr: EPRReportType,
              semiBillDetails: SemiBillDetailsReportType,
              stmlReport: StmlReportType,
              reverseReport: ReverseReportType,
              poDetail: PoDetailType,
              localTemuReport: LocalTemuReportType
            }[type];
            _iterator2 = _createForOfIteratorHelper(typeList);
            _context4.prev = 4;
            _loop = /*#__PURE__*/qtReport_regeneratorRuntime().mark(function _loop() {
              var reportType, findIndex, newTask, _res;

              return qtReport_regeneratorRuntime().wrap(function _loop$(_context3) {
                while (1) {
                  switch (_context3.prev = _context3.next) {
                    case 0:
                      reportType = _step2.value;
                      findIndex = res.result.findIndex(function (res) {
                        return res.reportType === reportType;
                      });

                      if (!(findIndex !== -1 && res.result[findIndex].code === 0)) {
                        _context3.next = 6;
                        break;
                      }

                      return _context3.abrupt("return", "continue");

                    case 6:
                      newTask = qtReport_objectSpread(qtReport_objectSpread({}, task), {}, {
                        report_type: reportType
                      });
                      taskCache.push(newTask);
                      _context3.next = 10;
                      return commonGetReport(newTask, type);

                    case 10:
                      _res = _context3.sent;

                      if (findIndex !== -1) {
                        res.result[findIndex] = _res;
                      } else {
                        res.result.push(_res);
                      }

                    case 12:
                    case "end":
                      return _context3.stop();
                  }
                }
              }, _loop);
            });

            _iterator2.s();

          case 7:
            if ((_step2 = _iterator2.n()).done) {
              _context4.next = 14;
              break;
            }

            return _context4.delegateYield(_loop(), "t0", 9);

          case 9:
            _ret = _context4.t0;

            if (!(_ret === "continue")) {
              _context4.next = 12;
              break;
            }

            return _context4.abrupt("continue", 12);

          case 12:
            _context4.next = 7;
            break;

          case 14:
            _context4.next = 19;
            break;

          case 16:
            _context4.prev = 16;
            _context4.t1 = _context4["catch"](4);

            _iterator2.e(_context4.t1);

          case 19:
            _context4.prev = 19;

            _iterator2.f();

            return _context4.finish(19);

          case 22:
            // 找出第一个获取失败的报表
            index = res.result.findIndex(function (_ref5) {
              var code = _ref5.code;
              return code !== 0;
            });

            if (index !== -1) {
              errTask = taskCache[index];
              errRes = res.result[index];
              res.msg = errRes.msg;
              res.code = errRes.code;
              task.status = errTask.status;
              task.msg = errRes.msg;
              task.error_time = errTask.error_time; // 缓存获取成功的报表

              task.resCache = res;
            } else {
              // 全部获取成功
              res.code = 0;
              res.msg = '';
            }

            return _context4.abrupt("return", res);

          case 25:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee3, null, [[4, 16, 19, 22]]);
  }));

  return function commonHandleReport(_x6, _x7) {
    return _ref4.apply(this, arguments);
  };
}();

var getQtReport = /*#__PURE__*/function () {
  var _ref6 = qtReport_asyncToGenerator( /*#__PURE__*/qtReport_regeneratorRuntime().mark(function _callee4(task) {
    return qtReport_regeneratorRuntime().wrap(function _callee4$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            _context5.t0 = +task.type_id;
            _context5.next = _context5.t0 === 22006 ? 3 : _context5.t0 === 22015 ? 4 : _context5.t0 === 22009 ? 5 : _context5.t0 === 22003 ? 6 : _context5.t0 === 22005 ? 7 : _context5.t0 === 22004 ? 8 : _context5.t0 === 22018 ? 9 : _context5.t0 === 22019 ? 10 : 11;
            break;

          case 3:
            return _context5.abrupt("return", commonHandleReport(task, 'billDetails'));

          case 4:
            return _context5.abrupt("return", commonHandleReport(task, 'deduction'));

          case 5:
            return _context5.abrupt("return", commonHandleReport(task, 'epr'));

          case 6:
            return _context5.abrupt("return", commonHandleReport(task, 'semiBillDetails'));

          case 7:
            return _context5.abrupt("return", commonHandleReport(task, 'stmlReport'));

          case 8:
            return _context5.abrupt("return", commonHandleReport(task, 'reverseReport'));

          case 9:
            return _context5.abrupt("return", commonHandleReport(task, 'poDetail'));

          case 10:
            return _context5.abrupt("return", commonHandleReport(task, 'localTemuReport'));

          case 11:
            return _context5.abrupt("break", 12);

          case 12:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee4);
  }));

  return function getQtReport(_x8) {
    return _ref6.apply(this, arguments);
  };
}();

/* harmony default export */ var qtReport = (getQtReport);
// CONCATENATED MODULE: ./src/platform/temu/getTodaySaleVolume.js
function getTodaySaleVolume_typeof(obj) { "@babel/helpers - typeof"; return getTodaySaleVolume_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getTodaySaleVolume_typeof(obj); }

function getTodaySaleVolume_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getTodaySaleVolume_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getTodaySaleVolume_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getTodaySaleVolume_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getTodaySaleVolume_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getTodaySaleVolume_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getTodaySaleVolume_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }





 // 获取销量列表的页数

var getTodaySaleVolume_$count = 40;
/**
 * @description 获取今日销量列表
 * @param {*} task 任务对象
 * @param {number} pageNo 页码
 * @param {number} retry 重试次数
 * @returns {Promise<{
 *   code: number,
 *   msg?: string,
 *   result?: {
 *     total: number,
 *     list: Array<{
 *       todaySaleVolume: number,
 *       supplierPrice: number,
 *       skuExtCode: string,
 *       productSkuId: number,
 *       currencyType: string
 *     }>,
 *     getDate: string
 *   },
 *   data?: {
 *     pageNo: number
 *   }
 * }>}
 */

var requestTodaySaleVolume = /*#__PURE__*/function () {
  var _ref = getTodaySaleVolume_asyncToGenerator( /*#__PURE__*/getTodaySaleVolume_regeneratorRuntime().mark(function _callee(task) {
    var pageNo,
        retry,
        _yield$nativeRequest,
        success,
        errorMsg,
        result,
        total,
        subOrderList,
        list,
        msg,
        _msg,
        _args = arguments;

    return getTodaySaleVolume_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            pageNo = _args.length > 1 && _args[1] !== undefined ? _args[1] : 1;
            retry = _args.length > 2 && _args[2] !== undefined ? _args[2] : 0;
            _context.prev = 2;
            _context.next = 5;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/mms/venom/api/supplier/sales/management/listWarehouse"), // host需要改为 cbGLOBALhost
            'post', {
              pageNo: pageNo,
              pageSize: getTodaySaleVolume_$count,
              isLack: 0,
              priceAdjustRecentDays: 7,
              todaySaleVolumMin: 1,
              // sevenDaysSaleVolumMin: 1,
              advancedSort: {
                firstOrderByDesc: 1,
                firstOrderByParam: 'todaySaleVolume',
                secondOrderByDesc: 1,
                secondOrderByParam: 'todaySaleVolume'
              }
            }, {
              Mallid: task.platform_store_id
            });

          case 5:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            errorMsg = _yield$nativeRequest.errorMsg;
            result = _yield$nativeRequest.result;

            if (!(success && result && result.subOrderList)) {
              _context.next = 18;
              break;
            }

            total = result.total, subOrderList = result.subOrderList;

            if (!(!subOrderList || !subOrderList.length)) {
              _context.next = 13;
              break;
            }

            return _context.abrupt("return", {
              code: 0,
              msg: '获取完毕'
            });

          case 13:
            list = []; // 数据收集

            subOrderList.forEach(function (_ref2) {
              var skuQuantityDetailList = _ref2.skuQuantityDetailList;

              if (skuQuantityDetailList.length) {
                skuQuantityDetailList.forEach(function (_ref3) {
                  var productSkuId = _ref3.productSkuId,
                      supplierPrice = _ref3.supplierPrice,
                      currencyType = _ref3.currencyType,
                      todaySaleVolume = _ref3.todaySaleVolume,
                      skuExtCode = _ref3.skuExtCode;
                  // if (todaySaleVolume > 0) {
                  list.push({
                    productSkuId: productSkuId,
                    supplierPrice: supplierPrice,
                    currencyType: currencyType,
                    todaySaleVolume: todaySaleVolume,
                    skuExtCode: skuExtCode
                  }); // }
                });
              }
            });
            return _context.abrupt("return", {
              code: 0,
              total: total,
              list: list
            });

          case 18:
            msg = "\u83B7\u53D6\u4ECA\u65E5\u9500\u91CF\u5217\u8868\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            log["a" /* default */].report(msg, 'error', task.task_id);
            return _context.abrupt("return", {
              msg: msg,
              code: 1
            });

          case 21:
            _context.next = 33;
            break;

          case 23:
            _context.prev = 23;
            _context.t0 = _context["catch"](2);
            _msg = "\u83B7\u53D6\u4ECA\u65E5\u9500\u91CF\u5217\u8868\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context.t0, task));
            log["a" /* default */].setLog(_msg); // 重试三次

            if (!(retry < 3)) {
              _context.next = 32;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context.next = 31;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 31:
            return _context.abrupt("return", requestTodaySaleVolume(task, pageNo, ++retry));

          case 32:
            return _context.abrupt("return", {
              msg: _msg,
              code: 2
            });

          case 33:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[2, 23]]);
  }));

  return function requestTodaySaleVolume(_x) {
    return _ref.apply(this, arguments);
  };
}();
/**
 * @description 获取所有今日销量数据
 * @param {*} task 任务对象
 * @param {number} pageNo 页码
 * @returns {Promise<{
 *   code: number,
 *   msg?: string,
 *   result?: {
 *     total: number,
 *     list: Array<{
 *       todaySaleVolume: number,
 *       supplierPrice: number,
 *       skuExtCode: string,
 *       productSkuId: number,
 *       currencyType: string
 *     }>,
 *     getDate: string
 *   }
 * }>}
 */


var getAllTodaySaleVolume = /*#__PURE__*/function () {
  var _ref4 = getTodaySaleVolume_asyncToGenerator( /*#__PURE__*/getTodaySaleVolume_regeneratorRuntime().mark(function _callee2(task) {
    var pageNo,
        _yield$requestTodaySa,
        code,
        msg,
        list,
        total,
        res,
        getDate,
        _args2 = arguments;

    return getTodaySaleVolume_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            pageNo = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 1;
            _context2.next = 3;
            return requestTodaySaleVolume(task, pageNo);

          case 3:
            _yield$requestTodaySa = _context2.sent;
            code = _yield$requestTodaySa.code;
            msg = _yield$requestTodaySa.msg;
            list = _yield$requestTodaySa.list;
            total = _yield$requestTodaySa.total;

            if (!(code !== 0)) {
              _context2.next = 10;
              break;
            }

            return _context2.abrupt("return", {
              code: 4,
              // 重复任务上报4保证下次还能下发
              msg: msg
            });

          case 10:
            // 商品页总页数
            task.total = total; // 已获取页数

            task.curPage = pageNo * getTodaySaleVolume_$count; // 已获取销量的sku数

            task.currentNum = (task.currentNum || 0) + ((list === null || list === void 0 ? void 0 : list.length) || 0); // 获取当前北京时间

            _context2.next = 15;
            return Object(util["l" /* gateGet */])('api/v1/baseInfos', {}, 'task').catch(function () {});

          case 15:
            res = _context2.sent;
            getDate = res && res.data && res.data.time_format; // 判断是否获取完毕

            if (!(task.curPage < total)) {
              _context2.next = 23;
              break;
            }

            _context2.next = 20;
            return common_newTask["a" /* default */].uploadTask({
              code: 4,
              result: {
                currentNum: task.currentNum,
                curPage: task.curPage,
                total: total,
                list: list,
                getDate: getDate
              }
            }, task);

          case 20:
            _context2.next = 22;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 22:
            return _context2.abrupt("return", getAllTodaySaleVolume(task, ++pageNo));

          case 23:
            return _context2.abrupt("return", {
              code: 0,
              msg: msg,
              result: (list === null || list === void 0 ? void 0 : list.length) > 0 ? {
                list: list,
                getDate: getDate,
                currentNum: task.currentNum,
                curPage: task.curPage,
                total: total
              } : {
                list: [],
                getDate: getDate,
                currentNum: task.currentNum,
                curPage: task.curPage,
                total: total
              }
            });

          case 24:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));

  return function getAllTodaySaleVolume(_x2) {
    return _ref4.apply(this, arguments);
  };
}();
/**
 * @description 获取今日销量入口函数
 * @param {*} task 任务对象
 * @returns {Promise<{
 *   code: number,
 *   msg?: string,
 *   result?: {
 *     total: number,
 *     list: Array<{
 *       todaySaleVolume: number,
 *       supplierPrice: number,
 *       skuExtCode: string,
 *       productSkuId: number,
 *       currencyType: string
 *     }>,
 *     getDate: string
 *   }
 * }>}
 */


var getTodaySaleVolume = /*#__PURE__*/function () {
  var _ref5 = getTodaySaleVolume_asyncToGenerator( /*#__PURE__*/getTodaySaleVolume_regeneratorRuntime().mark(function _callee3(task) {
    var loginRes, msg, res;
    return getTodaySaleVolume_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            if (!(task.resCache && task.resCache.code === 0)) {
              _context3.next = 2;
              break;
            }

            return _context3.abrupt("return", task.resCache);

          case 2:
            _context3.next = 4;
            return Object(temu["g" /* loginCb */])(task);

          case 4:
            loginRes = _context3.sent;

            if (loginRes) {
              _context3.next = 10;
              break;
            }

            msg = '切换到美区或欧区站点失败，请检查';
            task.msg = msg;
            log["a" /* default */].setLog(msg);
            return _context3.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 10:
            _context3.next = 12;
            return getAllTodaySaleVolume(task);

          case 12:
            res = _context3.sent;
            task.status = [1, 2].indexOf(res.code) > -1 ? 14 : 15;
            task.msg = res.msg;
            return _context3.abrupt("return", res);

          case 16:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));

  return function getTodaySaleVolume(_x3) {
    return _ref5.apply(this, arguments);
  };
}();

/* harmony default export */ var temu_getTodaySaleVolume = (getTodaySaleVolume);
// CONCATENATED MODULE: ./src/platform/temu/getActivityPrice.js
function getActivityPrice_typeof(obj) { "@babel/helpers - typeof"; return getActivityPrice_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getActivityPrice_typeof(obj); }

function getActivityPrice_toConsumableArray(arr) { return getActivityPrice_arrayWithoutHoles(arr) || getActivityPrice_iterableToArray(arr) || getActivityPrice_unsupportedIterableToArray(arr) || getActivityPrice_nonIterableSpread(); }

function getActivityPrice_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getActivityPrice_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getActivityPrice_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getActivityPrice_arrayLikeToArray(arr); }

function getActivityPrice_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = getActivityPrice_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function getActivityPrice_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getActivityPrice_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getActivityPrice_arrayLikeToArray(o, minLen); }

function getActivityPrice_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getActivityPrice_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getActivityPrice_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getActivityPrice_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getActivityPrice_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getActivityPrice_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getActivityPrice_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getActivityPrice_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }



 // 获取活动列表的页数

var getActivityPrice_$count = 50;
/**
 * @description 获取报名记录列表-获取活动价
 * @param {*} task 任务对象
 * @param {number[]} ids skuId列表
 * @param {number} pageNo 页码
 * @param {number} retry 重试次数
 * @param {number} frequencyRetry 频率限制重试次数
 * @returns {Promise<{}>}
 */

var requestActivityPrice = /*#__PURE__*/function () {
  var _ref = getActivityPrice_asyncToGenerator( /*#__PURE__*/getActivityPrice_regeneratorRuntime().mark(function _callee(task, ids) {
    var pageNo,
        retry,
        frequencyRetry,
        _yield$nativeRequest,
        success,
        errorMsg,
        result,
        errorCode,
        total,
        list,
        _formatActivityData,
        res,
        isIn30Days,
        delaySeconds,
        msg,
        _msg,
        _msg2,
        _args = arguments;

    return getActivityPrice_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            pageNo = _args.length > 2 && _args[2] !== undefined ? _args[2] : 1;
            retry = _args.length > 3 && _args[3] !== undefined ? _args[3] : 0;
            frequencyRetry = _args.length > 4 && _args[4] !== undefined ? _args[4] : 0;
            _context.prev = 3;
            _context.next = 6;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/kiana/gamblers/marketing/enroll/list"), 'post', {
              pageNo: pageNo,
              pageSize: getActivityPrice_$count,
              productSkuIds: ids || []
            }, {
              Mallid: task.real_mall_id
            });

          case 6:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            errorMsg = _yield$nativeRequest.errorMsg;
            result = _yield$nativeRequest.result;
            errorCode = _yield$nativeRequest.errorCode;

            if (!(success && result)) {
              _context.next = 19;
              break;
            }

            total = result.total, list = result.list;

            if (!(!list || !list.length)) {
              _context.next = 15;
              break;
            }

            return _context.abrupt("return", {
              code: 0,
              msg: '获取完毕'
            });

          case 15:
            _formatActivityData = getActivityPrice_formatActivityData(list, task), res = _formatActivityData.res, isIn30Days = _formatActivityData.isIn30Days;
            return _context.abrupt("return", {
              code: 0,
              total: total,
              list: res,
              isIn30Days: isIn30Days // 最后一项的报名时间是否在近30天内

            });

          case 19:
            if (!(errorCode === 2000000 && errorMsg.includes('Operation too frequent'))) {
              _context.next = 33;
              break;
            }

            if (!(frequencyRetry < 3)) {
              _context.next = 28;
              break;
            }

            delaySeconds = (frequencyRetry + 1) * 3; // 3秒、6秒、9秒

            log["a" /* default */].setLog("\u83B7\u53D6\u6D3B\u52A8\u4EF7---\u9891\u7387\u9650\u5236\u91CD\u8BD5\u7B2C".concat(frequencyRetry + 1, "\u6B21\uFF0C").concat(delaySeconds, "\u79D2\u540E\u91CD\u8BD5..."));
            _context.next = 25;
            return Object(util["h" /* delayed */])(delaySeconds * 1000);

          case 25:
            return _context.abrupt("return", requestActivityPrice(task, ids, pageNo, retry, ++frequencyRetry));

          case 28:
            // 频率限制重试次数用完，返回失败
            msg = "\u83B7\u53D6\u62A5\u540D\u8BB0\u5F55\u5217\u8868\u5931\u8D25-----\u7FFB\u9875\u8FC7\u4E8E\u9891\u7E41\uFF0C\u5DF2\u91CD\u8BD53\u6B21\u4ECD\u5931\u8D25";
            log["a" /* default */].setLog(msg);
            return _context.abrupt("return", {
              msg: msg,
              code: 1
            });

          case 31:
            _context.next = 36;
            break;

          case 33:
            _msg = "\u83B7\u53D6\u62A5\u540D\u8BB0\u5F55\u5217\u8868\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            log["a" /* default */].report(_msg, 'error', task.task_id);
            return _context.abrupt("return", {
              msg: _msg,
              code: 1
            });

          case 36:
            _context.next = 48;
            break;

          case 38:
            _context.prev = 38;
            _context.t0 = _context["catch"](3);
            _msg2 = "\u83B7\u53D6\u62A5\u540D\u8BB0\u5F55\u5217\u8868\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context.t0, task));
            log["a" /* default */].setLog(_msg2); // 重试三次

            if (!(retry < 3)) {
              _context.next = 47;
              break;
            }

            log["a" /* default */].setLog('获取活动价---正在重试........................');
            _context.next = 46;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 46:
            return _context.abrupt("return", requestActivityPrice(task, ids, pageNo, ++retry, frequencyRetry));

          case 47:
            return _context.abrupt("return", {
              msg: _msg2,
              code: 2
            });

          case 48:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[3, 38]]);
  }));

  return function requestActivityPrice(_x, _x2) {
    return _ref.apply(this, arguments);
  };
}(); // 抽取上报数据结构


var getActivityPrice_formatActivityData = function formatActivityData(data, task) {
  var skuIds = task.skuIds || [];

  if (!Array.isArray(data)) {
    return {
      res: [],
      isIn30Days: false
    };
  }

  var isHalf = String(task.platform_code) !== '10022'; // 是否半托店铺（10022为全托，其他为半托）

  var now = Date.now();
  var THIRTY_DAYS = 30 * 24 * 60 * 60 * 1000;
  var res = [];
  var isIn30Days = true; // 映射报名结果 session 对象

  var mapSession = function mapSession(session) {
    if (!session) return null;
    return {
      sessionName: session.sessionName,
      sessionStatus: session.sessionStatus,
      sessionId: session.sessionId,
      siteName: session.siteName,
      siteId: session.siteId,
      startTime: session.startTime,
      endTime: session.endTime,
      startDateStr: session.startDateStr,
      endDateStr: session.endDateStr
    };
  };

  var _iterator = getActivityPrice_createForOfIteratorHelper(data),
      _step;

  try {
    for (_iterator.s(); !(_step = _iterator.n()).done;) {
      var _item$activityThemati, _item$activityTypeNam, _item$activityThemati2;

      var item = _step.value;

      // 判断是否在近30天内
      if (!item.enrollTime || now - item.enrollTime > THIRTY_DAYS) {
        // 由于数据是按时间倒序排列，后面的都更旧，直接停止循环
        log["a" /* default */].setLog("\u83B7\u53D6\u6D3B\u52A8\u4EF7---\u9047\u5230\u8D85\u8FC730\u5929\u7684\u6D3B\u52A8\u6570\u636E\uFF0C\u505C\u6B62\u83B7\u53D6\u540E\u7EED\u6570\u636E");
        isIn30Days = false;
        break;
      } // 处理 assignSessionList：半托店铺 map 所有项，全托店铺只取第一项


      var assignSessionList = item.assignSessionList || [];
      var processedAssignSessionList = void 0;

      if (isHalf) {
        // 半托店铺：map 所有项
        processedAssignSessionList = assignSessionList.map(mapSession).filter(function (session) {
          return session !== null;
        });
      } else {
        // 全托店铺：只取第一项
        var firstSession = assignSessionList[0] ? mapSession(assignSessionList[0]) : null;
        processedAssignSessionList = firstSession ? [firstSession] : [];
      }

      res.push({
        productId: item.productId,
        activityThematicName: (_item$activityThemati = item.activityThematicName) !== null && _item$activityThemati !== void 0 ? _item$activityThemati : '',
        activityTypeName: (_item$activityTypeNam = item.activityTypeName) !== null && _item$activityTypeNam !== void 0 ? _item$activityTypeNam : '',
        activityThematicId: (_item$activityThemati2 = item.activityThematicId) !== null && _item$activityThemati2 !== void 0 ? _item$activityThemati2 : null,
        enrollId: item.enrollId,
        assignSessionList: processedAssignSessionList,
        skcList: (item.skcList || []).map(function (skc) {
          return {
            skcId: skc.skcId,
            skuList: (skc.skuList || []).filter(function (sku) {
              return skuIds.map(String).includes(String(sku.skuId));
            }).flatMap(function (sku) {
              var _sku$activityDiscount;

              if (isHalf) {
                var siteList = Array.isArray(sku.sitePriceList) ? sku.sitePriceList : [];
                return siteList.map(function (siteItem) {
                  var _siteItem$activityDis, _siteItem$siteId, _siteItem$siteName;

                  return {
                    skuId: sku.skuId,
                    currency: sku.currency,
                    dailyPrice: siteItem === null || siteItem === void 0 ? void 0 : siteItem.dailyPrice,
                    activityPrice: siteItem === null || siteItem === void 0 ? void 0 : siteItem.activityPrice,
                    activityDiscount: (_siteItem$activityDis = siteItem === null || siteItem === void 0 ? void 0 : siteItem.activityDiscount) !== null && _siteItem$activityDis !== void 0 ? _siteItem$activityDis : null,
                    siteId: (_siteItem$siteId = siteItem === null || siteItem === void 0 ? void 0 : siteItem.siteId) !== null && _siteItem$siteId !== void 0 ? _siteItem$siteId : null,
                    siteName: (_siteItem$siteName = siteItem === null || siteItem === void 0 ? void 0 : siteItem.siteName) !== null && _siteItem$siteName !== void 0 ? _siteItem$siteName : null
                  };
                });
              }

              return [{
                skuId: sku.skuId,
                currency: sku.currency,
                dailyPrice: sku.dailyPrice,
                activityPrice: sku.activityPrice,
                activityDiscount: (_sku$activityDiscount = sku.activityDiscount) !== null && _sku$activityDiscount !== void 0 ? _sku$activityDiscount : null,
                siteId: null,
                siteName: null
              }];
            })
          };
        })
      });
    }
  } catch (err) {
    _iterator.e(err);
  } finally {
    _iterator.f();
  }

  return {
    res: res,
    isIn30Days: isIn30Days
  };
};
/**
 * @description 获取所有活动价数据
 * @param {*} task 任务对象
 * @param {number} pageNo 页码
 * @returns {Promise<{
 *   code: number,
 *   msg?: string,
 *   result?: {
 *     total: number,
 *     currentNum: number,
 *     curPage: number,
 *     list: Array<{
 *       activityThematicId: number,
 *       activityThematicName: string | null,
 *       activityTypeName: string,
 *       enrollStatus: number,
 *       enrollSessionIdList: Array<string>,
 *       sessionStatus: number,
 *       skuId: number,
 *       activityDiscount: number,
 *       activityPrice: number,
 *       currency: string,
 *     }>,
 *     getDate: string
 *   }
 * }>}
 */


var getAllActivityPrice = /*#__PURE__*/function () {
  var _ref2 = getActivityPrice_asyncToGenerator( /*#__PURE__*/getActivityPrice_regeneratorRuntime().mark(function _callee2(task) {
    var skuIds, succList, message, count, batchSkuIds, i, ids, _yield$getOneBatchAct, code, msg, result, timeRes, getDate;

    return getActivityPrice_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            skuIds = task.skuIds || []; // const failSkuIds = []

            succList = [];
            message = '';
            count = Math.ceil(skuIds.length / 50); // temu一次最多只能查50个skuid

            batchSkuIds = Array(count).fill(1).map(function (i, key) {
              return skuIds.slice(key * 50, (key + 1) * 50);
            });
            i = 0;

          case 6:
            if (!(i < batchSkuIds.length)) {
              _context2.next = 20;
              break;
            }

            ids = batchSkuIds[i]; // 等待5s

            _context2.next = 10;
            return Object(util["h" /* delayed */])(5 * 1000);

          case 10:
            _context2.next = 12;
            return getOneBatchActivityPrice(task, ids);

          case 12:
            _yield$getOneBatchAct = _context2.sent;
            code = _yield$getOneBatchAct.code;
            msg = _yield$getOneBatchAct.msg;
            result = _yield$getOneBatchAct.result;

            if (code === 0) {
              succList.push.apply(succList, getActivityPrice_toConsumableArray(result.list || []));
            } else {
              // failSkuIds.push(...ids)
              log["a" /* default */].setLog("\u83B7\u53D6\u7B2C".concat(i + 1, "\u6279\u6D3B\u52A8\u4EF7---\u83B7\u53D6\u5931\u8D25:").concat(msg));
            }

          case 17:
            i++;
            _context2.next = 6;
            break;

          case 20:
            message = succList.length > 0 ? '获取完毕' : "\u83B7\u53D6\u6240\u6709\u6D3B\u52A8\u4EF7---\u672A\u83B7\u53D6\u5230\u4EFB\u4F55\u6570\u636E,\u9700\u8981\u83B7\u53D6\u7684skuId:".concat(skuIds.join(','));
            log["a" /* default */].setLog(message);
            _context2.next = 24;
            return Object(util["l" /* gateGet */])('api/v1/baseInfos', {}, 'task').catch(function () {});

          case 24:
            timeRes = _context2.sent;
            getDate = timeRes && timeRes.data && timeRes.data.time_format;
            return _context2.abrupt("return", {
              code: 0,
              msg: message,
              result: {
                list: succList,
                total: succList.length || 0,
                // 用于保持结构，服务端不读取
                currentNum: succList.length || 0,
                // 用于保持结构，服务端不读取
                curPage: 1,
                // 用于保持结构，服务端不读取
                getDate: getDate || ''
              }
            });

          case 27:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));

  return function getAllActivityPrice(_x3) {
    return _ref2.apply(this, arguments);
  };
}();

var getOneBatchActivityPrice = /*#__PURE__*/function () {
  var _ref3 = getActivityPrice_asyncToGenerator( /*#__PURE__*/getActivityPrice_regeneratorRuntime().mark(function _callee3(task, ids) {
    var allResults, currentPage, total, isIn30Days, _yield$requestActivit, code, msg, list, pageTotal, pageIsIn30Days, curPage;

    return getActivityPrice_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            allResults = [];
            currentPage = 1;
            total = 0;
            isIn30Days = true;

          case 4:
            if (!isIn30Days) {
              _context3.next = 27;
              break;
            }

            _context3.next = 7;
            return requestActivityPrice(task, ids, currentPage);

          case 7:
            _yield$requestActivit = _context3.sent;
            code = _yield$requestActivit.code;
            msg = _yield$requestActivit.msg;
            list = _yield$requestActivit.list;
            pageTotal = _yield$requestActivit.total;
            pageIsIn30Days = _yield$requestActivit.isIn30Days;
            task.msg = msg;

            if (!(code !== 0)) {
              _context3.next = 16;
              break;
            }

            return _context3.abrupt("return", {
              code: code,
              msg: msg
            });

          case 16:
            // 更新总页数和30天标志
            total = pageTotal || 0;
            isIn30Days = pageIsIn30Days;

            if (list && list.length > 0) {
              allResults.push.apply(allResults, getActivityPrice_toConsumableArray(list));
            } // 判断是否还有下一页


            curPage = currentPage * getActivityPrice_$count;

            if (!(!isIn30Days || curPage >= total)) {
              _context3.next = 22;
              break;
            }

            return _context3.abrupt("break", 27);

          case 22:
            _context3.next = 24;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 24:
            currentPage++;
            _context3.next = 4;
            break;

          case 27:
            // 更新任务状态
            task.total = total;
            task.curPage = currentPage * getActivityPrice_$count;
            task.currentNum = allResults.length || 0;
            return _context3.abrupt("return", {
              code: 0,
              msg: task.msg,
              result: {
                list: allResults
              }
            });

          case 31:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));

  return function getOneBatchActivityPrice(_x4, _x5) {
    return _ref3.apply(this, arguments);
  };
}();
/**
 * @description 获取活动价入口函数
 * @param {*} task 任务对象
 * @returns {Promise<{
 *   code: number,
 *   msg?: string,
 *   result?: {
 *     total: number,
 *     currentNum: number,
 *     curPage: number,
 *     list: Array<{
 *       activityThematicId: number,
 *       activityThematicName: string | null,
 *       activityTypeName: string,
 *       sessionName: string | null,
 *       sessionStatus: number,
 *       skuId: number,
 *       activityDiscount: unknown,
 *       activityPrice: number,
 *       currency: string,
 *     }>,
 *     getDate: string
 *   }
 * }>}
 */


var getActivityPrice = /*#__PURE__*/function () {
  var _ref4 = getActivityPrice_asyncToGenerator( /*#__PURE__*/getActivityPrice_regeneratorRuntime().mark(function _callee4(task) {
    var loginRes, msg, res;
    return getActivityPrice_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            if (!(task.resCache && task.resCache.code === 0)) {
              _context4.next = 2;
              break;
            }

            return _context4.abrupt("return", task.resCache);

          case 2:
            _context4.next = 4;
            return Object(temu["g" /* loginCb */])(task);

          case 4:
            loginRes = _context4.sent;

            if (loginRes) {
              _context4.next = 10;
              break;
            }

            msg = '获取活动价---切换到美区或欧区站点失败，请检查';
            task.msg = msg;
            log["a" /* default */].setLog(msg);
            return _context4.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 10:
            _context4.next = 12;
            return getAllActivityPrice(task);

          case 12:
            res = _context4.sent;
            task.status = [1, 2].indexOf(res.code) > -1 ? 14 : 15;
            task.errorMsg = res.msg;
            return _context4.abrupt("return", res);

          case 16:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));

  return function getActivityPrice(_x6) {
    return _ref4.apply(this, arguments);
  };
}();

/* harmony default export */ var temu_getActivityPrice = (getActivityPrice);
// CONCATENATED MODULE: ./src/platform/temu/getGoodsTraffic.js
function getGoodsTraffic_toConsumableArray(arr) { return getGoodsTraffic_arrayWithoutHoles(arr) || getGoodsTraffic_iterableToArray(arr) || getGoodsTraffic_unsupportedIterableToArray(arr) || getGoodsTraffic_nonIterableSpread(); }

function getGoodsTraffic_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getGoodsTraffic_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getGoodsTraffic_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getGoodsTraffic_arrayLikeToArray(o, minLen); }

function getGoodsTraffic_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getGoodsTraffic_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getGoodsTraffic_arrayLikeToArray(arr); }

function getGoodsTraffic_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getGoodsTraffic_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getGoodsTraffic_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getGoodsTraffic_ownKeys(Object(source), !0).forEach(function (key) { getGoodsTraffic_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getGoodsTraffic_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getGoodsTraffic_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getGoodsTraffic_typeof(obj) { "@babel/helpers - typeof"; return getGoodsTraffic_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getGoodsTraffic_typeof(obj); }

function getGoodsTraffic_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getGoodsTraffic_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getGoodsTraffic_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getGoodsTraffic_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getGoodsTraffic_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getGoodsTraffic_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getGoodsTraffic_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }






var getGoodsTraffic_$count = 20; // 50、80、100, 通常在第24个左右的请求就会被temu接口限流, 所以这里设置为20

var cooldownSteps = [10000, 15000, 20000]; // 连续多次429的额外冷却：10/15/20s

var RATE_LIMIT_BREAKER_THRESHOLD = 30; // detail接口连续命中限流的熔断阈值（一页数据的第一轮获取以及第一轮重试前10个共计30次，耗时大约12分钟）

var randDelay = function randDelay(min, max) {
  return Math.floor(Math.random() * (max - min)) + min;
}; // 主体逻辑


var getGoodsTrafficList = /*#__PURE__*/function () {
  var _ref = getGoodsTraffic_asyncToGenerator( /*#__PURE__*/getGoodsTraffic_regeneratorRuntime().mark(function _callee3(task) {
    var loginRes, _msg, _yield$requestGoodsTr, code, msg, pageNo, info, total, goodsTrafficList, failedSpuIds, successStreak, rateLimitStreak, i, currentItem, result, cooldown, _msg2, retryCount, currentFailedItems, _i, failedItem, retryItem, _result, _cooldown, _msg3, retryBackoff;

    return getGoodsTraffic_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            if (!task.isDelete) {
              _context3.next = 2;
              break;
            }

            return _context3.abrupt("return", {
              code: 1,
              msg: '任务已停止'
            });

          case 2:
            _context3.next = 4;
            return Object(temu["g" /* loginCb */])(task);

          case 4:
            loginRes = _context3.sent;

            if (loginRes) {
              _context3.next = 10;
              break;
            }

            _msg = '切换到美区或欧区站点失败，请检查';
            task.msg = _msg;
            log["a" /* default */].setLog(_msg);
            return _context3.abrupt("return", {
              code: 1,
              msg: _msg
            });

          case 10:
            _context3.next = 12;
            return requestGoodsTrafficList(task, task.pageNo || 1);

          case 12:
            _yield$requestGoodsTr = _context3.sent;
            code = _yield$requestGoodsTr.code;
            msg = _yield$requestGoodsTr.msg;
            pageNo = _yield$requestGoodsTr.pageNo;
            info = _yield$requestGoodsTr.info;
            total = _yield$requestGoodsTr.total;
            // 记录当前页数
            task.pageNo = pageNo; // 获取失败，上报状态

            if (!(code !== 0)) {
              _context3.next = 21;
              break;
            }

            return _context3.abrupt("return", {
              code: 2,
              msg: msg,
              data: {
                pageNo: pageNo
              }
            });

          case 21:
            goodsTrafficList = [];
            failedSpuIds = []; // 记录失败的spu项，用于失败重试

            successStreak = 0;
            rateLimitStreak = 0;
            i = 0;

          case 26:
            if (!(i < info.length)) {
              _context3.next = 73;
              break;
            }

            if (!task.isDelete) {
              _context3.next = 29;
              break;
            }

            return _context3.abrupt("return", {
              code: 1,
              msg: '任务已停止'
            });

          case 29:
            if (!(i > 0)) {
              _context3.next = 31;
              break;
            }

            return _context3.delegateYield( /*#__PURE__*/getGoodsTraffic_regeneratorRuntime().mark(function _callee() {
              var delay;
              return getGoodsTraffic_regeneratorRuntime().wrap(function _callee$(_context) {
                while (1) {
                  switch (_context.prev = _context.next) {
                    case 0:
                      delay = void 0;

                      if (rateLimitStreak >= 2) {
                        delay = randDelay(5000, 8000); // 限流多次时加大间隔
                      } else if (rateLimitStreak === 1) {
                        delay = randDelay(4000, 6000);
                      } else if (successStreak >= 3) {
                        delay = randDelay(1500, 2500); // 连续成功时缩短间隔
                      } else {
                        delay = randDelay(2000, 3000);
                      }

                      _context.next = 4;
                      return new Promise(function (resolve) {
                        return setTimeout(resolve, delay);
                      });

                    case 4:
                    case "end":
                      return _context.stop();
                  }
                }
              }, _callee);
            })(), "t0", 31);

          case 31:
            // 获取当前项
            currentItem = info[i];
            _context3.prev = 32;
            _context3.next = 35;
            return requestGoodsDetail(task, currentItem);

          case 35:
            result = _context3.sent;

            if (!(result.code === 429)) {
              _context3.next = 50;
              break;
            }

            rateLimitStreak++;
            successStreak = 0;

            if (!result.rateLimitBreaker) {
              _context3.next = 41;
              break;
            }

            return _context3.abrupt("return", {
              code: 1,
              msg: result.msg,
              rateLimitBreaker: true
            });

          case 41:
            cooldown = rateLimitStreak >= 3 ? cooldownSteps[Math.min(rateLimitStreak - 3, cooldownSteps.length - 1)] : 0;

            if (!(cooldown > 0)) {
              _context3.next = 46;
              break;
            }

            log["a" /* default */].setLog("\u8FDE\u7EED".concat(rateLimitStreak, "\u6B21\u8FD4\u56DE429\uFF0C\u989D\u5916\u51B7\u5374").concat(cooldown / 1000, "s\uFF0C\u518D\u7EE7\u7EED\u5F53\u524D\u9875"));
            _context3.next = 46;
            return Object(util["h" /* delayed */])(cooldown);

          case 46:
            log["a" /* default */].setLog("\u7B2C ".concat(i + 1, " \u4E2A\u8BF7\u6C42\u9650\u6D41(429)\uFF0CspuId: ").concat((currentItem === null || currentItem === void 0 ? void 0 : currentItem.productId) || 'unknown')); // 计入失败列表，等待重试逻辑处理

            failedSpuIds.push({
              spuId: currentItem.productId,
              productName: currentItem.productName,
              siteId: currentItem.siteId,
              siteName: currentItem.siteName,
              category: currentItem.category || null,
              errorMsg: result.msg,
              retryCount: 0
            });
            _context3.next = 63;
            break;

          case 50:
            if (!(result.code !== 0)) {
              _context3.next = 59;
              break;
            }

            rateLimitStreak = 0;
            successStreak = 0;

            if (!result.rateLimitBreaker) {
              _context3.next = 55;
              break;
            }

            return _context3.abrupt("return", {
              code: 1,
              msg: result.msg,
              rateLimitBreaker: true
            });

          case 55:
            // 记录失败的spuid，保存完整信息用于重试
            if (currentItem && currentItem.productId) {
              failedSpuIds.push({
                spuId: currentItem.productId,
                productName: currentItem.productName,
                siteId: currentItem.siteId,
                siteName: currentItem.siteName,
                category: currentItem.category || null,
                errorMsg: result.msg,
                retryCount: 0
              });
            }

            log["a" /* default */].setLog("\u7B2C ".concat(i + 1, " \u4E2A\u8BF7\u6C42\u5931\u8D25: ").concat(result.msg, ", spuId: ").concat((currentItem === null || currentItem === void 0 ? void 0 : currentItem.productId) || 'unknown'));
            _context3.next = 63;
            break;

          case 59:
            rateLimitStreak = 0;
            successStreak++; // 收集成功的结果

            goodsTrafficList.push({
              productId: currentItem.productId,
              productName: currentItem.productName,
              siteId: currentItem.siteId,
              siteName: currentItem.siteName,
              category: currentItem.category || null,
              details: result.result || []
            });
            log["a" /* default */].setLog("\u7B2C ".concat(i + 1, " \u4E2A\u8BF7\u6C42\u6210\u529F: spuId: ").concat((currentItem === null || currentItem === void 0 ? void 0 : currentItem.productId) || 'unknown'));

          case 63:
            _context3.next = 70;
            break;

          case 65:
            _context3.prev = 65;
            _context3.t1 = _context3["catch"](32);
            _msg2 = "\u83B7\u53D6\u5546\u54C1\u8BE6\u60C5\u5931\u8D25---\u7B2C ".concat(i + 1, " \u4E2A\u8BF7\u6C42\u53D1\u751F\u5F02\u5E38: ").concat(Object(util["u" /* isError */])(_context3.t1, task));
            log["a" /* default */].setLog(_msg2);
            return _context3.abrupt("return", {
              code: 2,
              msg: _msg2
            });

          case 70:
            i++;
            _context3.next = 26;
            break;

          case 73:
            if (!(failedSpuIds.length > 0)) {
              _context3.next = 140;
              break;
            }

            log["a" /* default */].setLog("\u5F00\u59CB\u91CD\u8BD5\u5931\u8D25\u9879\uFF0C\u5171 ".concat(failedSpuIds.length, " \u4E2A\u5931\u8D25\u9879"));
            _context3.next = 77;
            return Object(util["h" /* delayed */])(5 * 1000);

          case 77:
            retryCount = 1;

          case 78:
            if (!(retryCount <= 3)) {
              _context3.next = 139;
              break;
            }

            if (!(failedSpuIds.length === 0)) {
              _context3.next = 81;
              break;
            }

            return _context3.abrupt("break", 139);

          case 81:
            // 没有失败项了，退出重试
            log["a" /* default */].setLog("\u7B2C ".concat(retryCount, " \u6B21\u91CD\u8BD5\uFF0C\u5269\u4F59 ").concat(failedSpuIds.length, " \u4E2A\u5931\u8D25\u9879"));
            currentFailedItems = [].concat(failedSpuIds); // 复制当前失败项列表

            failedSpuIds.length = 0; // 清空失败项列表，准备重新收集

            _i = 0;

          case 85:
            if (!(_i < currentFailedItems.length)) {
              _context3.next = 131;
              break;
            }

            if (!task.isDelete) {
              _context3.next = 88;
              break;
            }

            return _context3.abrupt("return", {
              code: 1,
              msg: '任务已停止'
            });

          case 88:
            failedItem = currentFailedItems[_i]; // 重试前自适应节流（使用当前循环的 rateLimitStreak）

            if (!(_i > 0)) {
              _context3.next = 91;
              break;
            }

            return _context3.delegateYield( /*#__PURE__*/getGoodsTraffic_regeneratorRuntime().mark(function _callee2() {
              var delay;
              return getGoodsTraffic_regeneratorRuntime().wrap(function _callee2$(_context2) {
                while (1) {
                  switch (_context2.prev = _context2.next) {
                    case 0:
                      delay = void 0;

                      if (rateLimitStreak >= 2) {
                        delay = randDelay(5000, 8000);
                      } else if (rateLimitStreak === 1) {
                        delay = randDelay(4000, 6000);
                      } else {
                        delay = randDelay(2000, 3000);
                      }

                      _context2.next = 4;
                      return new Promise(function (resolve) {
                        return setTimeout(resolve, delay);
                      });

                    case 4:
                    case "end":
                      return _context2.stop();
                  }
                }
              }, _callee2);
            })(), "t2", 91);

          case 91:
            _context3.prev = 91;
            retryItem = {
              productId: failedItem.spuId,
              siteId: failedItem.siteId || null
            };
            _context3.next = 95;
            return requestGoodsDetail(task, retryItem);

          case 95:
            _result = _context3.sent;

            if (!(_result.code !== 0)) {
              _context3.next = 115;
              break;
            }

            if (!_result.rateLimitBreaker) {
              _context3.next = 99;
              break;
            }

            return _context3.abrupt("return", {
              code: 1,
              msg: _result.msg,
              rateLimitBreaker: true
            });

          case 99:
            if (!(_result.code === 429)) {
              _context3.next = 109;
              break;
            }

            rateLimitStreak++;
            successStreak = 0;
            _cooldown = rateLimitStreak >= 3 ? cooldownSteps[Math.min(rateLimitStreak - 3, cooldownSteps.length - 1)] : 0;

            if (!(_cooldown > 0)) {
              _context3.next = 107;
              break;
            }

            log["a" /* default */].setLog("\u91CD\u8BD5\u65F6\u8FDE\u7EED".concat(rateLimitStreak, "\u6B21\u8FD4\u56DE429\uFF0C\u989D\u5916\u51B7\u5374").concat(_cooldown / 1000, "s\uFF0C\u518D\u7EE7\u7EED\u5F53\u524D\u9879"));
            _context3.next = 107;
            return Object(util["h" /* delayed */])(_cooldown);

          case 107:
            _context3.next = 111;
            break;

          case 109:
            rateLimitStreak = 0;
            successStreak = 0;

          case 111:
            // 重试仍然失败，重新加入失败列表
            failedSpuIds.push({
              spuId: failedItem.spuId,
              productName: failedItem.productName,
              siteId: failedItem.siteId,
              siteName: failedItem.siteName,
              category: failedItem.category,
              errorMsg: _result.msg,
              retryCount: retryCount
            });
            log["a" /* default */].setLog("\u91CD\u8BD5\u7B2C ".concat(retryCount, " \u6B21\u5931\u8D25: ").concat(_result.msg, ", spuId: ").concat(failedItem.spuId));
            _context3.next = 119;
            break;

          case 115:
            rateLimitStreak = 0;
            successStreak++; // 重试成功，添加到成功列表

            goodsTrafficList.push({
              productId: failedItem.spuId,
              productName: failedItem.productName || '未知商品',
              siteId: failedItem.siteId,
              siteName: failedItem.siteName || '未知站点',
              category: failedItem.category || null,
              details: _result.result || []
            });
            log["a" /* default */].setLog("\u91CD\u8BD5\u7B2C ".concat(retryCount, " \u6B21\u6210\u529F: spuId: ").concat(failedItem.spuId));

          case 119:
            _context3.next = 128;
            break;

          case 121:
            _context3.prev = 121;
            _context3.t3 = _context3["catch"](91);
            rateLimitStreak = 0;
            successStreak = 0;
            _msg3 = "\u91CD\u8BD5\u7B2C ".concat(retryCount, " \u6B21\u53D1\u751F\u5F02\u5E38: ").concat(Object(util["u" /* isError */])(_context3.t3, task), ", spuId: ").concat(failedItem.spuId);
            log["a" /* default */].setLog(_msg3); // 异常情况也重新加入失败列表

            failedSpuIds.push({
              spuId: failedItem.spuId,
              productName: failedItem.productName,
              siteId: failedItem.siteId,
              siteName: failedItem.siteName,
              category: failedItem.category,
              errorMsg: _msg3,
              retryCount: retryCount
            });

          case 128:
            _i++;
            _context3.next = 85;
            break;

          case 131:
            if (!(failedSpuIds.length > 0 && retryCount < 3)) {
              _context3.next = 136;
              break;
            }

            retryBackoff = [8000, 10000][retryCount - 1] || 10000;
            log["a" /* default */].setLog("\u7B2C ".concat(retryCount, " \u6B21\u91CD\u8BD5\u5B8C\u6210\uFF0C\u8FD8\u6709 ").concat(failedSpuIds.length, " \u4E2A\u5931\u8D25\u9879\uFF0C\u7B49\u5F85").concat(retryBackoff / 1000, "\u79D2\u540E\u8FDB\u884C\u4E0B\u6B21\u91CD\u8BD5"));
            _context3.next = 136;
            return Object(util["h" /* delayed */])(retryBackoff);

          case 136:
            retryCount++;
            _context3.next = 78;
            break;

          case 139:
            log["a" /* default */].setLog("\u91CD\u8BD5\u5B8C\u6210\uFF0C\u6700\u7EC8\u8FD8\u6709 ".concat(failedSpuIds.length, " \u4E2A\u5931\u8D25\u9879"));

          case 140:
            // 记录当前已获取数据，用于显示
            task.currentNum = (task.currentNum || 0) + goodsTrafficList.length;
            task.total = total;
            task.curPage = pageNo * getGoodsTraffic_$count; // 判断是否获取完毕

            if (!(task.curPage < total)) {
              _context3.next = 150;
              break;
            }

            task.pageNo += 1; // 上报当前状态

            _context3.next = 147;
            return common_newTask["a" /* default */].uploadTask({
              code: 4,
              data: {
                pageNo: task.pageNo
              },
              result: {
                currentNum: task.currentNum,
                curPage: task.curPage,
                total: total,
                list: goodsTrafficList,
                failedList: failedSpuIds,
                site_name: task.site_name
              }
            }, task);

          case 147:
            _context3.next = 149;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 149:
            return _context3.abrupt("return", getGoodsTrafficList(task));

          case 150:
            return _context3.abrupt("return", {
              code: 0,
              msg: '全部抓取完成',
              result: {
                currentNum: task.currentNum,
                curPage: task.curPage,
                total: total,
                list: goodsTrafficList,
                failedList: failedSpuIds
              }
            });

          case 151:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[32, 65], [91, 121]]);
  }));

  return function getGoodsTrafficList(_x) {
    return _ref.apply(this, arguments);
  };
}(); // 获取商品流量列表


var requestGoodsTrafficList = /*#__PURE__*/function () {
  var _ref2 = getGoodsTraffic_asyncToGenerator( /*#__PURE__*/getGoodsTraffic_regeneratorRuntime().mark(function _callee4(task) {
    var pageNo,
        retry,
        _yield$nativeRequest,
        success,
        errorMsg,
        result,
        msg,
        _msg4,
        _msg5,
        _args4 = arguments;

    return getGoodsTraffic_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            pageNo = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : 1;
            retry = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : 0;
            _context4.prev = 2;
            _context4.next = 5;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/flow/analysis/list"), // host需要改为 cbGlobalHost
            'post', {
              pageSize: getGoodsTraffic_$count,
              pageNumber: pageNo,
              timeDimension: 5
            }, {
              Mallid: task.platform_store_id
            });

          case 5:
            _yield$nativeRequest = _context4.sent;
            success = _yield$nativeRequest.success;
            errorMsg = _yield$nativeRequest.errorMsg;
            result = _yield$nativeRequest.result;

            if (!(success && result)) {
              _context4.next = 19;
              break;
            }

            if (!result.pageItems) {
              _context4.next = 14;
              break;
            }

            return _context4.abrupt("return", {
              code: 0,
              total: result.total,
              info: result.pageItems,
              pageNo: pageNo
            });

          case 14:
            msg = '获取商品流量列表数据失败，可能规则已改变';
            log["a" /* default */].setLog(msg);
            return _context4.abrupt("return", {
              code: 2,
              msg: msg,
              pageNo: pageNo
            });

          case 17:
            _context4.next = 22;
            break;

          case 19:
            _msg4 = "\u83B7\u53D6\u5546\u54C1\u6D41\u91CF\u5217\u8868\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            log["a" /* default */].setLog(_msg4);
            return _context4.abrupt("return", {
              msg: _msg4,
              pageNo: pageNo,
              code: 1
            });

          case 22:
            _context4.next = 34;
            break;

          case 24:
            _context4.prev = 24;
            _context4.t0 = _context4["catch"](2);
            _msg5 = "\u83B7\u53D6\u5546\u54C1\u6D41\u91CF\u5217\u8868\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context4.t0, task));
            log["a" /* default */].setLog(_msg5); // 重试三次

            if (!(retry < 3)) {
              _context4.next = 33;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context4.next = 32;
            return Object(util["h" /* delayed */])(5 * 1000);

          case 32:
            return _context4.abrupt("return", requestGoodsTrafficList(task, pageNo, ++retry));

          case 33:
            return _context4.abrupt("return", {
              code: 2,
              msg: _msg5,
              pageNo: pageNo
            });

          case 34:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[2, 24]]);
  }));

  return function requestGoodsTrafficList(_x2) {
    return _ref2.apply(this, arguments);
  };
}(); // 获取商品流量详情


var requestGoodsDetail = /*#__PURE__*/function () {
  var _ref3 = getGoodsTraffic_asyncToGenerator( /*#__PURE__*/getGoodsTraffic_regeneratorRuntime().mark(function _callee5(task, item) {
    var retry,
        productId,
        siteId,
        _yield$nativeRequest2,
        success,
        errorMsg,
        result,
        error_code,
        msg,
        _msg6,
        _msg7,
        _msg8,
        breakerMsg,
        _args5 = arguments;

    return getGoodsTraffic_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            retry = _args5.length > 2 && _args5[2] !== undefined ? _args5[2] : 0;

            if (!task.isDelete) {
              _context5.next = 3;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: '任务已停止'
            });

          case 3:
            if (typeof task.detailRateLimitCount !== 'number') task.detailRateLimitCount = 0;
            productId = item.productId, siteId = item.siteId;
            _context5.prev = 5;
            _context5.next = 8;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/flow/analysis/goods/detail"), // host需要改为 cbGlobalHost
            'post', {
              prodId: productId,
              siteId: siteId,
              timeType: 10
            }, {
              Mallid: task.platform_store_id
            });

          case 8:
            _yield$nativeRequest2 = _context5.sent;
            success = _yield$nativeRequest2.success;
            errorMsg = _yield$nativeRequest2.errorMsg;
            result = _yield$nativeRequest2.result;
            error_code = _yield$nativeRequest2.error_code;

            if (!(success && result)) {
              _context5.next = 24;
              break;
            }

            task.detailRateLimitCount = 0; // 成功重置计数器

            if (!(result.list && Array.isArray(result.list))) {
              _context5.next = 19;
              break;
            }

            return _context5.abrupt("return", {
              code: 0,
              result: result.list.slice(0, 31) // 只抓取最近31项

            });

          case 19:
            msg = "".concat(productId, "\u65E0list\u6D41\u91CF\u8BE6\u60C5\u6570\u636E\uFF0C\u53EF\u80FD\u89C4\u5219\u5DF2\u6539\u53D8");
            log["a" /* default */].setLog(msg);
            return _context5.abrupt("return", {
              msg: msg,
              code: 2
            });

          case 22:
            _context5.next = 40;
            break;

          case 24:
            if (!(error_code === 40002)) {
              _context5.next = 36;
              break;
            }

            task.detailRateLimitCount += 1;

            if (!(task.detailRateLimitCount >= RATE_LIMIT_BREAKER_THRESHOLD)) {
              _context5.next = 32;
              break;
            }

            _msg6 = 'Temu后台detail接口限流，请稍后重试';
            log["a" /* default */].setLog("\u89E6\u53D1\u7194\u65AD\uFF1Adetail\u63A5\u53E3\u8FDE\u7EED".concat(task.detailRateLimitCount, "\u6B21\u8FD4\u56DE429"));
            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            task.isDelete = true;
            return _context5.abrupt("return", {
              code: 429,
              msg: _msg6,
              rateLimitBreaker: true
            });

          case 32:
            log["a" /* default */].setLog('获取商品流量详情失败---被限流(429)');
            return _context5.abrupt("return", {
              code: 429,
              msg: '接口限流(429)'
            });

          case 36:
            task.detailRateLimitCount = 0; // 其他错误也重置，保证是连续429

            _msg7 = "\u83B7\u53D6\u5546\u54C1\u6D41\u91CF\u8BE6\u60C5\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            log["a" /* default */].setLog(_msg7);
            return _context5.abrupt("return", {
              msg: _msg7,
              code: 1
            });

          case 40:
            _context5.next = 74;
            break;

          case 42:
            _context5.prev = 42;
            _context5.t0 = _context5["catch"](5);

            if (!(_context5.t0.message && _context5.t0.message.includes('40002'))) {
              _context5.next = 57;
              break;
            }

            task.detailRateLimitCount += 1;

            if (!(task.detailRateLimitCount >= RATE_LIMIT_BREAKER_THRESHOLD)) {
              _context5.next = 52;
              break;
            }

            breakerMsg = 'Temu后台detail接口限流，请稍后重试';
            log["a" /* default */].setLog("\u89E6\u53D1\u7194\u65AD\uFF1Adetail\u63A5\u53E3\u8FDE\u7EED".concat(task.detailRateLimitCount, "\u6B21\u8FD4\u56DE429"));
            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            task.isDelete = true;
            return _context5.abrupt("return", {
              code: 429,
              msg: breakerMsg,
              rateLimitBreaker: true
            });

          case 52:
            _msg8 = '获取商品流量详情被限流(429)';
            log["a" /* default */].setLog(_msg8);
            return _context5.abrupt("return", {
              code: 429,
              msg: _msg8
            });

          case 57:
            if (!(_context5.t0.message && _context5.t0.message.includes('"error_code":40001'))) {
              _context5.next = 65;
              break;
            }

            task.detailRateLimitCount = 0; // 重置

            log["a" /* default */].setLog('检测到登录过期，开始重新登陆........................');
            _context5.next = 62;
            return reLogin(task);

          case 62:
            log["a" /* default */].setLog('重新登陆完成，准备重新请求........................');
            _context5.next = 68;
            break;

          case 65:
            task.detailRateLimitCount = 0; // 重置

            _msg8 = "\u83B7\u53D6\u5546\u54C1\u6D41\u91CF\u8BE6\u60C5\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context5.t0, task));
            log["a" /* default */].setLog(_msg8);

          case 68:
            if (!(retry < 3)) {
              _context5.next = 73;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context5.next = 72;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 72:
            return _context5.abrupt("return", requestGoodsDetail(task, item, ++retry));

          case 73:
            return _context5.abrupt("return", {
              code: 2,
              msg: _msg8 || '获取商品流量详情失败'
            });

          case 74:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[5, 42]]);
  }));

  return function requestGoodsDetail(_x3, _x4) {
    return _ref3.apply(this, arguments);
  };
}(); // 店铺重新登陆


var reLogin = /*#__PURE__*/function () {
  var _ref4 = getGoodsTraffic_asyncToGenerator( /*#__PURE__*/getGoodsTraffic_regeneratorRuntime().mark(function _callee6(task) {
    var loginRes, msg;
    return getGoodsTraffic_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.next = 2;
            return Object(temu["g" /* loginCb */])(task);

          case 2:
            loginRes = _context6.sent;

            if (loginRes) {
              _context6.next = 8;
              break;
            }

            msg = '切换到美区或欧区站点失败，请检查';
            task.msg = msg;
            log["a" /* default */].setLog(msg);
            return _context6.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 8:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6);
  }));

  return function reLogin(_x5) {
    return _ref4.apply(this, arguments);
  };
}(); // 入口函数


var getGoodsTraffic = /*#__PURE__*/function () {
  var _ref5 = getGoodsTraffic_asyncToGenerator( /*#__PURE__*/getGoodsTraffic_regeneratorRuntime().mark(function _callee7(task) {
    var loginRes, msg, res, subTask;
    return getGoodsTraffic_regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            if (!(task.resCache && task.resCache.code === 0)) {
              _context7.next = 2;
              break;
            }

            return _context7.abrupt("return", task.resCache);

          case 2:
            if (!(task.platform_code === 10022 || task.store_type === 'GLOBAL')) {
              _context7.next = 11;
              break;
            }

            _context7.next = 5;
            return Object(temu["g" /* loginCb */])(task);

          case 5:
            loginRes = _context7.sent;

            if (loginRes) {
              _context7.next = 11;
              break;
            }

            msg = '切换到美区或欧区站点失败，请检查';
            task.msg = msg;
            log["a" /* default */].setLog(msg);
            return _context7.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 11:
            if (!(task.store_type === 'GLOBAL' && task.area === 'US_GLOBAL_MIX')) {
              _context7.next = 17;
              break;
            }

            _context7.next = 14;
            return handleDoubleSiteTraffic(task);

          case 14:
            res = _context7.sent;
            _context7.next = 37;
            break;

          case 17:
            if (!(task.store_type === 'GLOBAL')) {
              _context7.next = 34;
              break;
            }

            // 跨境店铺
            // 使用克隆对象避免污染原 task
            subTask = Object(util["g" /* deepClone */])(task);
            _context7.t0 = task.area;
            _context7.next = _context7.t0 === 'US' ? 22 : _context7.t0 === 'EU' ? 24 : _context7.t0 === 'GLOBAL' ? 26 : 28;
            break;

          case 22:
            subTask.host = temu["h" /* temu */].cbUsHost;
            return _context7.abrupt("break", 29);

          case 24:
            subTask.host = temu["h" /* temu */].cbEuHost;
            return _context7.abrupt("break", 29);

          case 26:
            subTask.host = temu["h" /* temu */].cbGlobalHost;
            return _context7.abrupt("break", 29);

          case 28:
            return _context7.abrupt("return", {
              code: 1,
              msg: '不支持的站点task.area: ' + subTask.area
            });

          case 29:
            _context7.next = 31;
            return getGoodsTrafficList(subTask);

          case 31:
            res = _context7.sent;
            _context7.next = 37;
            break;

          case 34:
            _context7.next = 36;
            return getGoodsTrafficList(task);

          case 36:
            res = _context7.sent;

          case 37:
            task.status = [1, 2, 429].indexOf(res.code) > -1 ? 14 : 15; // code: 0 - 成功, 1 - 失败,2 - 异常, 4 - 执行中（进度上报）

            task.msg = res.msg;
            return _context7.abrupt("return", res);

          case 40:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7);
  }));

  return function getGoodsTraffic(_x6) {
    return _ref5.apply(this, arguments);
  };
}(); // 处理双站点流量分析（Global + US）


var handleDoubleSiteTraffic = /*#__PURE__*/function () {
  var _ref6 = getGoodsTraffic_asyncToGenerator( /*#__PURE__*/getGoodsTraffic_regeneratorRuntime().mark(function _callee8(task) {
    var combinedResult, finalCode, finalMsg, sites, _loop, _i2, _sites, _ret;

    return getGoodsTraffic_regeneratorRuntime().wrap(function _callee8$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            // 初始化汇总结果
            combinedResult = {
              currentNum: 0,
              curPage: 0,
              total: 0,
              list: [],
              failedList: [],
              site_global: {},
              site_us: {}
            };
            finalCode = 0;
            finalMsg = '全部抓取完成'; // 定义需要抓取的站点

            sites = [{
              host: temu["h" /* temu */].cbGlobalHost,
              name: 'GLOBAL'
            }, {
              host: temu["h" /* temu */].cbUsHost,
              name: 'US'
            }];
            _loop = /*#__PURE__*/getGoodsTraffic_regeneratorRuntime().mark(function _loop() {
              var site, subTask, subRes, _combinedResult$list, _combinedResult$faile, listWithSite, failedListWithSite;

              return getGoodsTraffic_regeneratorRuntime().wrap(function _loop$(_context8) {
                while (1) {
                  switch (_context8.prev = _context8.next) {
                    case 0:
                      site = _sites[_i2];

                      if (!task.isDelete) {
                        _context8.next = 3;
                        break;
                      }

                      return _context8.abrupt("return", "break");

                    case 3:
                      // 克隆任务对象，避免相互影响
                      subTask = Object(util["g" /* deepClone */])(task);
                      subTask.host = site.host; // 重置分页信息，确保每个站点都从第一页开始

                      subTask.pageNo = 1;
                      subTask.currentNum = 0;
                      subTask.curPage = 0;
                      subTask.site_name = site.name;
                      log["a" /* default */].setLog("\u5F00\u59CB\u6293\u53D6 ".concat(site.name, " \u7AD9\u70B9\u6D41\u91CF\u6570\u636E...")); // 执行抓取

                      _context8.next = 12;
                      return getGoodsTrafficList(subTask);

                    case 12:
                      subRes = _context8.sent;
                      console.log("[".concat(site.name, "\u5B50\u7ED3\u679C]"), subRes); // 记录状态（如果有失败，覆盖成功状态）

                      if (subRes.code !== 0) {
                        finalCode = subRes.code;
                        finalMsg = subRes.msg;
                      } // 如果触发了熔断，同步给原任务并立即终止后续站点执行


                      if (!subRes.rateLimitBreaker) {
                        _context8.next = 20;
                        break;
                      }

                      task.error_time = subTask.error_time;
                      task.isDelete = subTask.isDelete;
                      task.detailRateLimitCount = subTask.detailRateLimitCount;
                      return _context8.abrupt("return", {
                        v: {
                          code: finalCode,
                          msg: finalMsg,
                          result: combinedResult,
                          rateLimitBreaker: true
                        }
                      });

                    case 20:
                      // 合并数据
                      if (subRes.result) {
                        // 给每条数据增加站点标识
                        listWithSite = (subRes.result.list || []).map(function (item) {
                          return getGoodsTraffic_objectSpread(getGoodsTraffic_objectSpread({}, item), {}, {
                            site: site.name
                          });
                        });
                        failedListWithSite = (subRes.result.failedList || []).map(function (item) {
                          return getGoodsTraffic_objectSpread(getGoodsTraffic_objectSpread({}, item), {}, {
                            site: site.name
                          });
                        });

                        (_combinedResult$list = combinedResult.list).push.apply(_combinedResult$list, getGoodsTraffic_toConsumableArray(listWithSite));

                        (_combinedResult$faile = combinedResult.failedList).push.apply(_combinedResult$faile, getGoodsTraffic_toConsumableArray(failedListWithSite));

                        combinedResult.total += subRes.result.total || 0;
                        combinedResult.currentNum += subRes.result.currentNum || 0;
                        combinedResult.curPage += subRes.result.curPage || 0;

                        if (site.name === 'US' && subRes.result.total > 0) {
                          combinedResult.site_us = {
                            siteName: 'US',
                            currentNum: subRes.result.currentNum,
                            curPage: subRes.result.curPage,
                            total: subRes.result.total,
                            failedList: subRes.result.failedList
                          };
                        } else if (site.name === 'GLOBAL' && subRes.result.total > 0) {
                          combinedResult.site_global = {
                            siteName: 'GLOBAL',
                            currentNum: subRes.result.currentNum,
                            curPage: subRes.result.curPage,
                            total: subRes.result.total,
                            failedList: subRes.result.failedList
                          };
                        }
                      }

                    case 21:
                    case "end":
                      return _context8.stop();
                  }
                }
              }, _loop);
            });
            _i2 = 0, _sites = sites;

          case 6:
            if (!(_i2 < _sites.length)) {
              _context9.next = 16;
              break;
            }

            return _context9.delegateYield(_loop(), "t0", 8);

          case 8:
            _ret = _context9.t0;

            if (!(_ret === "break")) {
              _context9.next = 11;
              break;
            }

            return _context9.abrupt("break", 16);

          case 11:
            if (!(getGoodsTraffic_typeof(_ret) === "object")) {
              _context9.next = 13;
              break;
            }

            return _context9.abrupt("return", _ret.v);

          case 13:
            _i2++;
            _context9.next = 6;
            break;

          case 16:
            return _context9.abrupt("return", {
              code: finalCode,
              msg: finalMsg,
              result: combinedResult
            });

          case 17:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee8);
  }));

  return function handleDoubleSiteTraffic(_x7) {
    return _ref6.apply(this, arguments);
  };
}();

/* harmony default export */ var temu_getGoodsTraffic = (getGoodsTraffic);
// CONCATENATED MODULE: ./src/platform/temu/getStorageServiceFee.js
function getStorageServiceFee_typeof(obj) { "@babel/helpers - typeof"; return getStorageServiceFee_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getStorageServiceFee_typeof(obj); }

function getStorageServiceFee_toConsumableArray(arr) { return getStorageServiceFee_arrayWithoutHoles(arr) || getStorageServiceFee_iterableToArray(arr) || getStorageServiceFee_unsupportedIterableToArray(arr) || getStorageServiceFee_nonIterableSpread(); }

function getStorageServiceFee_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getStorageServiceFee_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getStorageServiceFee_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getStorageServiceFee_arrayLikeToArray(o, minLen); }

function getStorageServiceFee_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getStorageServiceFee_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getStorageServiceFee_arrayLikeToArray(arr); }

function getStorageServiceFee_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getStorageServiceFee_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getStorageServiceFee_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getStorageServiceFee_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getStorageServiceFee_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getStorageServiceFee_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getStorageServiceFee_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getStorageServiceFee_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }



 // 仅针对 temu 全托店铺，域名为 kuajingmaihuo
// 外层资金明细单页最多 100 条，详情单页最多 100 条

var OUTER_PAGE_SIZE = 100;
var DETAIL_PAGE_SIZE = 100; // 仓储综合服务费标识（bizType 最稳，remark 兜底）

var STORAGE_FEE_BIZ_TYPE = 'deduct_storage_service_fee';
var STORAGE_FEE_REMARK = '仓储综合服务费'; // 防止异常死循环

var MAX_PAGE = 200; // 判断外层 item 是否为仓储综合服务费

var isStorageFeeItem = function isStorageFeeItem(item) {
  return item && (item.bizType === STORAGE_FEE_BIZ_TYPE || item.remark === STORAGE_FEE_REMARK);
}; // 计算任务时间范围（毫秒），优先取自定义时间段，否则按月份


var getStorageServiceFee_getTimeRange = function getTimeRange(task) {
  var startDate = task.report_custom_date_start || moment_default()(task.report_date_month, 'YYYYMM').startOf('month').format('YYYY-MM-DD');
  var endDate = task.report_custom_date_end || moment_default()(task.report_date_month, 'YYYYMM').endOf('month').format('YYYY-MM-DD');
  return {
    beginTime: moment_default()("".concat(startDate, " 00:00:00")).valueOf(),
    endTime: moment_default()("".concat(endDate, " 23:59:59")).valueOf()
  };
};
/**
 * 获取外层资金明细单页
 * @returns {Promise<{code:number, list?:Array, total?:number, msg?:string}>}
 */


var requestFundDetailPage = /*#__PURE__*/function () {
  var _ref = getStorageServiceFee_asyncToGenerator( /*#__PURE__*/getStorageServiceFee_regeneratorRuntime().mark(function _callee(task, pageNum, beginTime, endTime) {
    var retry,
        _yield$nativeRequest,
        success,
        errorMsg,
        result,
        msg,
        _msg,
        _args = arguments;

    return getStorageServiceFee_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            retry = _args.length > 4 && _args[4] !== undefined ? _args[4] : 0;
            _context.prev = 1;
            _context.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/fund/detail/pageSearch"), 'post', {
              moneyChangeTypeList: [2],
              beginTime: beginTime,
              endTime: endTime,
              pageSize: OUTER_PAGE_SIZE,
              pageNum: pageNum
            }, {
              Mallid: task.real_mall_id
            });

          case 4:
            _yield$nativeRequest = _context.sent;
            success = _yield$nativeRequest.success;
            errorMsg = _yield$nativeRequest.errorMsg;
            result = _yield$nativeRequest.result;

            if (!(success && result)) {
              _context.next = 10;
              break;
            }

            return _context.abrupt("return", {
              code: 0,
              list: result.resultList || [],
              total: result.total || 0
            });

          case 10:
            msg = "\u83B7\u53D6\u8D44\u91D1\u660E\u7EC6\u5217\u8868\u5931\u8D25\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(JSON.stringify(errorMsg));
            log["a" /* default */].setLog(msg);
            return _context.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 15:
            _context.prev = 15;
            _context.t0 = _context["catch"](1);
            _msg = "\u83B7\u53D6\u8D44\u91D1\u660E\u7EC6\u5217\u8868\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context.t0, task));
            log["a" /* default */].setLog(_msg);

            if (!(retry < 3)) {
              _context.next = 24;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context.next = 23;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 23:
            return _context.abrupt("return", requestFundDetailPage(task, pageNum, beginTime, endTime, ++retry));

          case 24:
            return _context.abrupt("return", {
              code: 2,
              msg: _msg
            });

          case 25:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[1, 15]]);
  }));

  return function requestFundDetailPage(_x, _x2, _x3, _x4) {
    return _ref.apply(this, arguments);
  };
}();
/**
 * 获取单个仓储综合服务费的详情单页
 * @returns {Promise<{code:number, list?:Array, total?:number, msg?:string}>}
 */


var requestBillDetailPage = /*#__PURE__*/function () {
  var _ref2 = getStorageServiceFee_asyncToGenerator( /*#__PURE__*/getStorageServiceFee_regeneratorRuntime().mark(function _callee2(task, item, pageNum) {
    var retry,
        _yield$nativeRequest2,
        success,
        errorMsg,
        result,
        msg,
        _msg2,
        _args2 = arguments;

    return getStorageServiceFee_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            retry = _args2.length > 3 && _args2[3] !== undefined ? _args2[3] : 0;
            _context2.prev = 1;
            _context2.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/api/merchant/warehouse/express/bill/detail/list"), 'post', {
              pageNum: pageNum,
              pageSize: DETAIL_PAGE_SIZE,
              billStatus: 2,
              mallId: Number(task.real_mall_id),
              transId: item.transSn // billBizTimeStart: item.transactionTime,
              // billBizTimeEnd: item.transactionTime

            }, {
              Mallid: task.real_mall_id // 'express-entity-type': '0',
              // 'express-mall-type': '1',
              // 'express-source-type': '0'

            });

          case 4:
            _yield$nativeRequest2 = _context2.sent;
            success = _yield$nativeRequest2.success;
            errorMsg = _yield$nativeRequest2.errorMsg;
            result = _yield$nativeRequest2.result;

            if (!(success && result)) {
              _context2.next = 10;
              break;
            }

            return _context2.abrupt("return", {
              code: 0,
              list: result.list || [],
              total: result.total || 0
            });

          case 10:
            msg = "\u83B7\u53D6\u4ED3\u50A8\u7EFC\u5408\u670D\u52A1\u8D39\u8BE6\u60C5\u5931\u8D25(".concat(item.transSn, ")\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A").concat(JSON.stringify(errorMsg));
            log["a" /* default */].setLog(msg);
            return _context2.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 15:
            _context2.prev = 15;
            _context2.t0 = _context2["catch"](1);
            _msg2 = "\u83B7\u53D6\u4ED3\u50A8\u7EFC\u5408\u670D\u52A1\u8D39\u8BE6\u60C5\u5931\u8D25(".concat(item.transSn, ")-----").concat(Object(util["u" /* isError */])(_context2.t0, task));
            log["a" /* default */].setLog(_msg2);

            if (!(retry < 3)) {
              _context2.next = 24;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context2.next = 23;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 23:
            return _context2.abrupt("return", requestBillDetailPage(task, item, pageNum, ++retry));

          case 24:
            return _context2.abrupt("return", {
              code: 2,
              msg: _msg2
            });

          case 25:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 15]]);
  }));

  return function requestBillDetailPage(_x5, _x6, _x7) {
    return _ref2.apply(this, arguments);
  };
}(); // 获取单个仓储综合服务费的全部详情（翻页直到取完）


var getAllBillDetail = /*#__PURE__*/function () {
  var _ref3 = getStorageServiceFee_asyncToGenerator( /*#__PURE__*/getStorageServiceFee_regeneratorRuntime().mark(function _callee3(task, item) {
    var detailList, pageNum, _yield$requestBillDet, code, list, total, msg;

    return getStorageServiceFee_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            detailList = [];
            pageNum = 1;

          case 2:
            if (!(pageNum <= MAX_PAGE)) {
              _context3.next = 20;
              break;
            }

            _context3.next = 5;
            return requestBillDetailPage(task, item, pageNum);

          case 5:
            _yield$requestBillDet = _context3.sent;
            code = _yield$requestBillDet.code;
            list = _yield$requestBillDet.list;
            total = _yield$requestBillDet.total;
            msg = _yield$requestBillDet.msg;

            if (!(code !== 0)) {
              _context3.next = 12;
              break;
            }

            return _context3.abrupt("return", {
              code: code,
              msg: msg
            });

          case 12:
            detailList.push.apply(detailList, getStorageServiceFee_toConsumableArray(list));

            if (!(detailList.length >= total || !list.length)) {
              _context3.next = 15;
              break;
            }

            return _context3.abrupt("break", 20);

          case 15:
            _context3.next = 17;
            return Object(util["h" /* delayed */])(500);

          case 17:
            pageNum++;
            _context3.next = 2;
            break;

          case 20:
            return _context3.abrupt("return", {
              code: 0,
              detailList: detailList
            });

          case 21:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));

  return function getAllBillDetail(_x8, _x9) {
    return _ref3.apply(this, arguments);
  };
}(); // 获取外层全部仓储综合服务费 item（翻页直到取完）


var getAllStorageFeeItems = /*#__PURE__*/function () {
  var _ref4 = getStorageServiceFee_asyncToGenerator( /*#__PURE__*/getStorageServiceFee_regeneratorRuntime().mark(function _callee4(task, beginTime, endTime) {
    var items, pageNum, collected, _yield$requestFundDet, code, list, total, msg;

    return getStorageServiceFee_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            items = [];
            pageNum = 1;
            collected = 0;

          case 3:
            if (!(pageNum <= MAX_PAGE)) {
              _context4.next = 22;
              break;
            }

            _context4.next = 6;
            return requestFundDetailPage(task, pageNum, beginTime, endTime);

          case 6:
            _yield$requestFundDet = _context4.sent;
            code = _yield$requestFundDet.code;
            list = _yield$requestFundDet.list;
            total = _yield$requestFundDet.total;
            msg = _yield$requestFundDet.msg;

            if (!(code !== 0)) {
              _context4.next = 13;
              break;
            }

            return _context4.abrupt("return", {
              code: code,
              msg: msg
            });

          case 13:
            collected += list.length;
            list.filter(isStorageFeeItem).forEach(function (item) {
              items.push({
                transSn: item.transSn,
                transactionTime: item.transactionTime,
                amount: item.amount,
                currencyType: item.currencyType
              });
            });

            if (!(collected >= total || !list.length)) {
              _context4.next = 17;
              break;
            }

            return _context4.abrupt("break", 22);

          case 17:
            _context4.next = 19;
            return Object(util["h" /* delayed */])(500);

          case 19:
            pageNum++;
            _context4.next = 3;
            break;

          case 22:
            return _context4.abrupt("return", {
              code: 0,
              items: items
            });

          case 23:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));

  return function getAllStorageFeeItems(_x10, _x11, _x12) {
    return _ref4.apply(this, arguments);
  };
}();

var getStorageServiceFee = /*#__PURE__*/function () {
  var _ref5 = getStorageServiceFee_asyncToGenerator( /*#__PURE__*/getStorageServiceFee_regeneratorRuntime().mark(function _callee5(task) {
    var _getTimeRange, beginTime, endTime, outerRes, items, list, i, item, detailRes;

    return getStorageServiceFee_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            if (!(task.resCache && task.resCache.code === 0)) {
              _context5.next = 2;
              break;
            }

            return _context5.abrupt("return", task.resCache);

          case 2:
            _getTimeRange = getStorageServiceFee_getTimeRange(task), beginTime = _getTimeRange.beginTime, endTime = _getTimeRange.endTime; // 第一步：拿到时间段内所有仓储综合服务费 item（transactionTime + transSn）

            _context5.next = 5;
            return getAllStorageFeeItems(task, beginTime, endTime);

          case 5:
            outerRes = _context5.sent;

            if (!(outerRes.code !== 0)) {
              _context5.next = 10;
              break;
            }

            task.status = 14;
            task.msg = outerRes.msg;
            return _context5.abrupt("return", {
              code: 2,
              msg: outerRes.msg
            });

          case 10:
            items = outerRes.items;

            if (items.length) {
              _context5.next = 15;
              break;
            }

            task.status = 15;
            task.msg = '该时间段无仓储综合服务费数据';
            return _context5.abrupt("return", {
              code: 0,
              msg: task.msg,
              result: {
                list: []
              }
            });

          case 15:
            // 第二步：逐个 transSn 拉取详情 list 并整合
            list = [];
            i = 0;

          case 17:
            if (!(i < items.length)) {
              _context5.next = 32;
              break;
            }

            item = items[i];
            _context5.next = 21;
            return getAllBillDetail(task, item);

          case 21:
            detailRes = _context5.sent;

            if (!(detailRes.code !== 0)) {
              _context5.next = 26;
              break;
            }

            task.status = 14;
            task.msg = detailRes.msg;
            return _context5.abrupt("return", {
              code: 2,
              msg: detailRes.msg
            });

          case 26:
            list.push({
              transSn: item.transSn,
              transactionTime: item.transactionTime,
              amount: item.amount,
              currencyType: item.currencyType,
              detailList: detailRes.detailList
            });
            _context5.next = 29;
            return Object(util["h" /* delayed */])(500);

          case 29:
            i++;
            _context5.next = 17;
            break;

          case 32:
            task.status = 15;
            task.msg = '获取完毕';
            return _context5.abrupt("return", {
              code: 0,
              msg: '获取完毕',
              result: {
                list: list
              }
            });

          case 35:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function getStorageServiceFee(_x13) {
    return _ref5.apply(this, arguments);
  };
}();

var handleGetStorageServiceFee = /*#__PURE__*/function () {
  var _ref6 = getStorageServiceFee_asyncToGenerator( /*#__PURE__*/getStorageServiceFee_regeneratorRuntime().mark(function _callee6(task) {
    var res, msg;
    return getStorageServiceFee_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.prev = 0;
            _context6.next = 3;
            return getStorageServiceFee(task);

          case 3:
            res = _context6.sent;
            task.status = [1, 2].includes(res.code) ? 14 : 15;
            task.msg = res.msg;
            return _context6.abrupt("return", res);

          case 9:
            _context6.prev = 9;
            _context6.t0 = _context6["catch"](0);
            msg = "\u83B7\u53D6\u4ED3\u50A8\u7EFC\u5408\u670D\u52A1\u8D39\u5931\u8D25\uFF0C\u5931\u8D25\u539F\u56E0\uFF1A".concat(Object(util["u" /* isError */])(_context6.t0, task));
            log["a" /* default */].setLog(msg);
            task.status = 14;
            task.msg = msg;
            return _context6.abrupt("return", {
              code: 2,
              msg: msg
            });

          case 16:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6, null, [[0, 9]]);
  }));

  return function handleGetStorageServiceFee(_x14) {
    return _ref6.apply(this, arguments);
  };
}();

/* harmony default export */ var temu_getStorageServiceFee = (handleGetStorageServiceFee);
// EXTERNAL MODULE: ./src/platform/tiktok/utils/index.js
var utils = __webpack_require__("ba27");

// CONCATENATED MODULE: ./src/platform/tiktok/core/getTargetInvitation.js
function getTargetInvitation_typeof(obj) { "@babel/helpers - typeof"; return getTargetInvitation_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getTargetInvitation_typeof(obj); }

function getTargetInvitation_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = getTargetInvitation_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function getTargetInvitation_toConsumableArray(arr) { return getTargetInvitation_arrayWithoutHoles(arr) || getTargetInvitation_iterableToArray(arr) || getTargetInvitation_unsupportedIterableToArray(arr) || getTargetInvitation_nonIterableSpread(); }

function getTargetInvitation_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getTargetInvitation_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getTargetInvitation_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getTargetInvitation_arrayLikeToArray(o, minLen); }

function getTargetInvitation_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getTargetInvitation_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getTargetInvitation_arrayLikeToArray(arr); }

function getTargetInvitation_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getTargetInvitation_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getTargetInvitation_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getTargetInvitation_ownKeys(Object(source), !0).forEach(function (key) { getTargetInvitation_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getTargetInvitation_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getTargetInvitation_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getTargetInvitation_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getTargetInvitation_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getTargetInvitation_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getTargetInvitation_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getTargetInvitation_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getTargetInvitation_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getTargetInvitation_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }






var statusMap = {
  1: '进行中',
  2: '即将到期',
  3: '取消中',
  4: '已完成'
};

var getTargetInvitationTotal = /*#__PURE__*/function () {
  var _ref = getTargetInvitation_asyncToGenerator( /*#__PURE__*/getTargetInvitation_regeneratorRuntime().mark(function _callee(task) {
    var query, _yield$tkPost, code, data, message;

    return getTargetInvitation_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(utils["a" /* getQueryString */])(task);

          case 3:
            query = _context.sent;

            if (query) {
              _context.next = 6;
              break;
            }

            return _context.abrupt("return", false);

          case 6:
            _context.next = 8;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/invitation_group/count"), query, {
              search_params: {
                query_items: [],
                filter_accept_status: 3
              },
              invitation_status: [1, 2, 3, 4]
            });

          case 8:
            _yield$tkPost = _context.sent;
            code = _yield$tkPost.code;
            data = _yield$tkPost.data;
            message = _yield$tkPost.message;

            if (!(code === 0)) {
              _context.next = 16;
              break;
            }

            return _context.abrupt("return", data);

          case 16:
            log["a" /* default */].setLog("\u83B7\u53D6\u5B9A\u5411\u9080\u7EA6\u5217\u8868\u5404\u72B6\u6001\u6570\u636E\u603B\u6570\u5931\u8D25-----".concat(message));
            return _context.abrupt("return", false);

          case 18:
            _context.next = 23;
            break;

          case 20:
            _context.prev = 20;
            _context.t0 = _context["catch"](0);
            log["a" /* default */].setLog("\u83B7\u53D6\u5B9A\u5411\u9080\u7EA6\u5217\u8868\u5404\u72B6\u6001\u6570\u636E\u603B\u6570\u5931\u8D25-----".concat(Object(util["u" /* isError */])(_context.t0)));

          case 23:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 20]]);
  }));

  return function getTargetInvitationTotal(_x) {
    return _ref.apply(this, arguments);
  };
}();

var getTargetInvitationList = /*#__PURE__*/function () {
  var _ref3 = getTargetInvitation_asyncToGenerator( /*#__PURE__*/getTargetInvitation_regeneratorRuntime().mark(function _callee2(_ref2, task) {
    var curPage,
        status,
        retry,
        query,
        _yield$tkPost2,
        code,
        message,
        data,
        msg,
        _msg,
        _args2 = arguments;

    return getTargetInvitation_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            curPage = _ref2.curPage, status = _ref2.status;
            retry = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : 0;
            _context2.prev = 2;
            _context2.next = 5;
            return Object(utils["a" /* getQueryString */])(task);

          case 5:
            query = _context2.sent;

            if (query) {
              _context2.next = 8;
              break;
            }

            return _context2.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 8:
            _context2.next = 10;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/invitation_group/search"), query, {
              search_params: {
                query_items: [],
                filter_accept_status: 3
              },
              invitation_group_status: status,
              page_size: 50,
              cur_page: curPage
            }, {
              origin: task.host + "/connection/target-invitation?shop_region=US&tab=".concat(status)
            });

          case 10:
            _yield$tkPost2 = _context2.sent;
            code = _yield$tkPost2.code;
            message = _yield$tkPost2.message;
            data = _yield$tkPost2.data;

            if (!(code === 0)) {
              _context2.next = 18;
              break;
            }

            return _context2.abrupt("return", {
              code: 0,
              data: data
            });

          case 18:
            msg = "\u83B7\u53D6".concat(statusMap[status], "\u7684\u5B9A\u5411\u9080\u7EA6\u5217\u8868\u5931\u8D25-----").concat(message);
            log["a" /* default */].setLog(msg);
            return _context2.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 21:
            _context2.next = 33;
            break;

          case 23:
            _context2.prev = 23;
            _context2.t0 = _context2["catch"](2);
            _msg = "\u83B7\u53D6".concat(statusMap[status], "\u7684\u5B9A\u5411\u9080\u7EA6\u5217\u8868\u5931\u8D25-----").concat(Object(util["u" /* isError */])(_context2.t0, task));
            log["a" /* default */].setLog(_msg); // 重试三次

            if (!(retry < 3)) {
              _context2.next = 32;
              break;
            }

            log["a" /* default */].setLog("\u83B7\u53D6".concat(statusMap[status], "\u7684\u5B9A\u5411\u9080\u7EA6\u5217\u8868---\u6B63\u5728\u91CD\u8BD5\u7B2C").concat(retry + 1, "\u6B21........................"));
            _context2.next = 31;
            return Object(util["h" /* delayed */])((retry + 1) * 1 * 1000);

          case 31:
            return _context2.abrupt("return", getTargetInvitationList({
              curPage: curPage,
              status: status
            }, task, retry + 1));

          case 32:
            return _context2.abrupt("return", {
              code: 1,
              msg: _msg
            });

          case 33:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[2, 23]]);
  }));

  return function getTargetInvitationList(_x2, _x3) {
    return _ref3.apply(this, arguments);
  };
}();
/**
 * 分批获取定向邀约详情
 * @param {Array} invitationList - 邀约列表（只需要 invitation_group_id 字段）
 * @param {Object} task - 任务对象
 * @returns {Set} 失败的 invitation_group_id 集合（使用Set自动去重）
 */


var fetchInvitationDetails = /*#__PURE__*/function () {
  var _ref4 = getTargetInvitation_asyncToGenerator( /*#__PURE__*/getTargetInvitation_regeneratorRuntime().mark(function _callee4(invitationList, task) {
    var DETAIL_BATCH_SIZE, UPLOAD_BATCH_SIZE, failDetailsSet, allDetails, i, batch, batchDetails, uploadBatch, succAmount, uploadRes, _succAmount, _uploadRes;

    return getTargetInvitation_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            DETAIL_BATCH_SIZE = 1; // 每批获取10条

            UPLOAD_BATCH_SIZE = 1000; // 每1000条上报一次

            failDetailsSet = new Set(); // 使用Set自动去重，只存储 invitation_group_id

            allDetails = [];
            log["a" /* default */].setLog("\u5F00\u59CB\u83B7\u53D6\u5B9A\u5411\u9080\u7EA6\u8BE6\u60C5\uFF0C\u5171".concat(invitationList.length, "\u6761")); // 分批处理

            i = 0;

          case 6:
            if (!(i < invitationList.length)) {
              _context4.next = 24;
              break;
            }

            batch = invitationList.slice(i, i + DETAIL_BATCH_SIZE);
            log["a" /* default */].setLog("\u83B7\u53D6\u8BE6\u60C5\u8FDB\u5EA6\uFF1A".concat(i + batch.length, "/").concat(invitationList.length)); // 并发获取当前批次的详情

            _context4.next = 11;
            return Promise.all(batch.map( /*#__PURE__*/function () {
              var _ref5 = getTargetInvitation_asyncToGenerator( /*#__PURE__*/getTargetInvitation_regeneratorRuntime().mark(function _callee3(invitationId) {
                var detailRes, errMsg;
                return getTargetInvitation_regeneratorRuntime().wrap(function _callee3$(_context3) {
                  while (1) {
                    switch (_context3.prev = _context3.next) {
                      case 0:
                        _context3.prev = 0;
                        _context3.next = 3;
                        return getInvitationDetail({
                          invitation_group_id: invitationId
                        }, task);

                      case 3:
                        detailRes = _context3.sent;

                        if (!(detailRes.code === 0)) {
                          _context3.next = 8;
                          break;
                        }

                        return _context3.abrupt("return", getTargetInvitation_objectSpread(getTargetInvitation_objectSpread({
                          invitation_group_id: invitationId
                        }, detailRes.detail), {}, {
                          code: 0
                        }));

                      case 8:
                        // 获取失败：记录 ID 到 failDetailsSet
                        failDetailsSet.add(invitationId);
                        return _context3.abrupt("return", {
                          invitation_group_id: invitationId,
                          code: 1,
                          msg: detailRes.msg
                        });

                      case 10:
                        _context3.next = 18;
                        break;

                      case 12:
                        _context3.prev = 12;
                        _context3.t0 = _context3["catch"](0);
                        errMsg = "\u83B7\u53D6\u9080\u7EA6\u8BE6\u60C5\u5F02\u5E38[ID:".concat(invitationId, "]-----").concat(Object(util["u" /* isError */])(_context3.t0)); // 获取异常：记录 ID 到 failDetailsSet

                        failDetailsSet.add(invitationId);
                        log["a" /* default */].setLog(errMsg);
                        return _context3.abrupt("return", {
                          invitation_group_id: invitationId,
                          code: 1,
                          msg: errMsg
                        });

                      case 18:
                      case "end":
                        return _context3.stop();
                    }
                  }
                }, _callee3, null, [[0, 12]]);
              }));

              return function (_x6) {
                return _ref5.apply(this, arguments);
              };
            }()));

          case 11:
            batchDetails = _context4.sent;
            allDetails.push.apply(allDetails, getTargetInvitation_toConsumableArray(batchDetails)); // 每1000条详情上报一次

            if (!(allDetails.length >= UPLOAD_BATCH_SIZE)) {
              _context4.next = 21;
              break;
            }

            uploadBatch = allDetails.splice(0, UPLOAD_BATCH_SIZE);
            succAmount = uploadBatch.filter(function (item) {
              return item.code === 0;
            }).length;
            log["a" /* default */].setLog("\u5206\u6279\u4E0A\u62A5\u5B9A\u5411\u9080\u7EA6\u8BE6\u60C5\uFF0C\u6210\u529F\uFF1A".concat(succAmount, "\u6761\uFF0C\u5931\u8D25\uFF1A").concat(uploadBatch.length - succAmount, "\u6761"));
            _context4.next = 19;
            return common_newTask["a" /* default */].uploadTask({
              code: 4,
              result: {
                details: uploadBatch
              }
            }, task);

          case 19:
            uploadRes = _context4.sent;

            // 如果上报失败，将整批的 invitation_group_id 记录到 failDetailsSet（Set会自动去重）
            if (!uploadRes) {
              log["a" /* default */].setLog("\u4E0A\u62A5\u8BE6\u60C5\u5931\u8D25\uFF0C\u5C06".concat(uploadBatch.length, "\u6761\u6570\u636E\u7684ID\u8BB0\u5F55\u5230failDetails"));
              uploadBatch.forEach(function (item) {
                failDetailsSet.add(item.invitation_group_id);
              });
            }

          case 21:
            i += DETAIL_BATCH_SIZE;
            _context4.next = 6;
            break;

          case 24:
            if (!(allDetails.length > 0)) {
              _context4.next = 31;
              break;
            }

            _succAmount = allDetails.filter(function (item) {
              return item.code === 0;
            }).length;
            log["a" /* default */].setLog("\u51C6\u5907\u4E0A\u4F20\u5269\u4F59\u5B9A\u5411\u9080\u7EA6\u8BE6\u60C5\uFF0C\u6210\u529F\uFF1A".concat(_succAmount, "\u6761\uFF0C\u5931\u8D25\uFF1A").concat(allDetails.length - _succAmount, "\u6761"));
            _context4.next = 29;
            return common_newTask["a" /* default */].uploadTask({
              code: 4,
              result: {
                details: allDetails
              }
            }, task);

          case 29:
            _uploadRes = _context4.sent;

            // 如果上报失败，将剩余的 invitation_group_id 记录到 failDetailsSet（Set会自动去重）
            if (!_uploadRes) {
              log["a" /* default */].setLog("\u4E0A\u62A5\u5269\u4F59\u8BE6\u60C5\u5931\u8D25\uFF0C\u5C06".concat(allDetails.length, "\u6761\u6570\u636E\u7684ID\u8BB0\u5F55\u5230failDetails"));
              allDetails.forEach(function (item) {
                failDetailsSet.add(item.invitation_group_id);
              });
            }

          case 31:
            return _context4.abrupt("return", failDetailsSet);

          case 32:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));

  return function fetchInvitationDetails(_x4, _x5) {
    return _ref4.apply(this, arguments);
  };
}();
/**
 * 获取单个定向邀约详情
 * @param {Object} params - { invitation_group_id: string }
 * @param {Object} task - 任务对象
 * @param {number} retry - 重试次数
 * @returns {Object} { code: 0/1, detail: {}, msg: '' }
 */


var getInvitationDetail = /*#__PURE__*/function () {
  var _ref6 = getTargetInvitation_asyncToGenerator( /*#__PURE__*/getTargetInvitation_regeneratorRuntime().mark(function _callee5(params, task) {
    var retry,
        query,
        _yield$tkPost3,
        code,
        data,
        message,
        msg,
        _args5 = arguments;

    return getTargetInvitation_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            retry = _args5.length > 2 && _args5[2] !== undefined ? _args5[2] : 0;
            _context5.prev = 1;
            _context5.next = 4;
            return Object(utils["a" /* getQueryString */])(task);

          case 4:
            query = _context5.sent;

            if (query) {
              _context5.next = 7;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 7:
            _context5.next = 9;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/invitation_group/detail"), query, {
              invitation_group_id: params.invitation_group_id
            });

          case 9:
            _yield$tkPost3 = _context5.sent;
            code = _yield$tkPost3.code;
            data = _yield$tkPost3.data;
            message = _yield$tkPost3.message;

            if (!(code === 0)) {
              _context5.next = 17;
              break;
            }

            return _context5.abrupt("return", {
              code: 0,
              detail: data.invitation
            });

          case 17:
            log["a" /* default */].setLog("\u83B7\u53D6\u9080\u7EA6\u8BE6\u60C5\u5931\u8D25[ID:".concat(params.invitation_group_id, "]-----").concat(message));
            return _context5.abrupt("return", {
              code: 1,
              msg: message
            });

          case 19:
            _context5.next = 31;
            break;

          case 21:
            _context5.prev = 21;
            _context5.t0 = _context5["catch"](1);
            msg = "\u83B7\u53D6\u9080\u7EA6\u8BE6\u60C5\u5931\u8D25[ID:".concat(params.invitation_group_id, "]-----").concat(Object(util["u" /* isError */])(_context5.t0, task));
            log["a" /* default */].setLog(msg); // 重试3次

            if (!(retry < 3)) {
              _context5.next = 30;
              break;
            }

            log["a" /* default */].setLog("\u83B7\u53D6\u9080\u7EA6\u8BE6\u60C5\u91CD\u8BD5\u7B2C".concat(retry + 1, "\u6B21[ID:").concat(params.invitation_group_id, "]"));
            _context5.next = 29;
            return Object(util["h" /* delayed */])((retry + 1) * 1000);

          case 29:
            return _context5.abrupt("return", getInvitationDetail(params, task, retry + 1));

          case 30:
            return _context5.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 31:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[1, 21]]);
  }));

  return function getInvitationDetail(_x7, _x8) {
    return _ref6.apply(this, arguments);
  };
}();

function getTargetInvitation(_x9) {
  return _getTargetInvitation.apply(this, arguments);
}

function _getTargetInvitation() {
  _getTargetInvitation = getTargetInvitation_asyncToGenerator( /*#__PURE__*/getTargetInvitation_regeneratorRuntime().mark(function _callee7(task) {
    var _task$resCache, _task$resCache$data;

    var failDetailsSet, errorCache, list, allInvitations, NINETYDaysAgo, _iterator, _step, _loop, _failDetailsSet, totalData, findErr, code, msg;

    return getTargetInvitation_regeneratorRuntime().wrap(function _callee7$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            if (!(task.failDetails && task.failDetails.length > 0)) {
              _context8.next = 6;
              break;
            }

            log["a" /* default */].setLog("\u68C0\u6D4B\u5230".concat(task.failDetails.length, "\u6761\u5931\u8D25\u8BE6\u60C5\uFF0C\u4F18\u5148\u91CD\u8BD5"));
            _context8.next = 4;
            return fetchInvitationDetails(task.failDetails, task);

          case 4:
            failDetailsSet = _context8.sent;

            if (failDetailsSet.size === 0) {
              task.failDetails = [];
              log["a" /* default */].setLog('失败详情重试完成，全部成功');
            } else {
              task.failDetails = Array.from(failDetailsSet);
              log["a" /* default */].setLog("\u4ECD\u6709".concat(failDetailsSet.size, "\u6761\u8BE6\u60C5\u83B7\u53D6/\u4E0A\u62A5\u5931\u8D25"));
            }

          case 6:
            errorCache = [];
            list = [];
            allInvitations = []; // 收集所有邀约用于获取详情

            NINETYDaysAgo = Date.now() - 90 * 24 * 60 * 60 * 1000;
            _iterator = getTargetInvitation_createForOfIteratorHelper(((_task$resCache = task.resCache) === null || _task$resCache === void 0 ? void 0 : (_task$resCache$data = _task$resCache.data) === null || _task$resCache$data === void 0 ? void 0 : _task$resCache$data.errorCache) || [1, 2, 3, 4].map(function (item) {
              return {
                status: item,
                curPage: 1
              };
            }));
            _context8.prev = 11;
            _loop = /*#__PURE__*/getTargetInvitation_regeneratorRuntime().mark(function _loop() {
              var _step$value, status, curPage, has_more, errMsg, resCode, _yield$getTargetInvit, _code, data, _msg2, rawList, stopDueToTime, filtered, _iterator2, _step2, item;

              return getTargetInvitation_regeneratorRuntime().wrap(function _loop$(_context7) {
                while (1) {
                  switch (_context7.prev = _context7.next) {
                    case 0:
                      _step$value = _step.value, status = _step$value.status, curPage = _step$value.curPage;
                      has_more = true;
                      errMsg = '';
                      resCode = 0;

                    case 4:
                      if (!has_more) {
                        _context7.next = 54;
                        break;
                      }

                      _context7.next = 7;
                      return Object(util["h" /* delayed */])(Math.random() * 2000 + 1000);

                    case 7:
                      _context7.next = 9;
                      return getTargetInvitationList({
                        curPage: curPage,
                        status: status
                      }, task);

                    case 9:
                      _yield$getTargetInvit = _context7.sent;
                      _code = _yield$getTargetInvit.code;
                      data = _yield$getTargetInvit.data;
                      _msg2 = _yield$getTargetInvit.msg;

                      if (!(_code === 0)) {
                        _context7.next = 46;
                        break;
                      }

                      rawList = data.invitation_list || [];
                      stopDueToTime = false; // 停止标识：由于结束时间超出90天的

                      if (!(status === 4)) {
                        _context7.next = 40;
                        break;
                      }

                      filtered = [];
                      _iterator2 = getTargetInvitation_createForOfIteratorHelper(rawList);
                      _context7.prev = 19;

                      _iterator2.s();

                    case 21:
                      if ((_step2 = _iterator2.n()).done) {
                        _context7.next = 31;
                        break;
                      }

                      item = _step2.value;

                      if (!(Number(item.end_time) + 24 * 60 * 60 * 1000 >= NINETYDaysAgo)) {
                        _context7.next = 27;
                        break;
                      }

                      filtered.push(item);
                      _context7.next = 29;
                      break;

                    case 27:
                      stopDueToTime = true;
                      return _context7.abrupt("break", 31);

                    case 29:
                      _context7.next = 21;
                      break;

                    case 31:
                      _context7.next = 36;
                      break;

                    case 33:
                      _context7.prev = 33;
                      _context7.t0 = _context7["catch"](19);

                      _iterator2.e(_context7.t0);

                    case 36:
                      _context7.prev = 36;

                      _iterator2.f();

                      return _context7.finish(36);

                    case 39:
                      rawList = filtered;

                    case 40:
                      // 收集邀约用于后续获取详情
                      allInvitations.push.apply(allInvitations, getTargetInvitation_toConsumableArray(rawList));
                      list.push.apply(list, getTargetInvitation_toConsumableArray(rawList.map(function (item) {
                        return getTargetInvitation_objectSpread(getTargetInvitation_objectSpread({}, item), {}, {
                          invitation_group_status: status
                        });
                      })));

                      if (stopDueToTime) {
                        has_more = false;
                      } else {
                        has_more = data.has_more;
                      }

                      curPage++;
                      _context7.next = 49;
                      break;

                    case 46:
                      has_more = false;
                      errMsg = _msg2;
                      resCode = 1;

                    case 49:
                      if (!(list.length > 0 && (list.length >= 500 || !has_more))) {
                        _context7.next = 52;
                        break;
                      }

                      _context7.next = 52;
                      return common_newTask["a" /* default */].uploadTask({
                        code: 4,
                        result: {
                          list: list.splice(0, list.length),
                          totalData: null
                        }
                      }, task);

                    case 52:
                      _context7.next = 4;
                      break;

                    case 54:
                      // 获取失败的推入缓存，等重试再跑
                      if (resCode !== 0) errorCache.push({
                        status: status,
                        errMsg: errMsg,
                        curPage: curPage,
                        code: resCode
                      });

                    case 55:
                    case "end":
                      return _context7.stop();
                  }
                }
              }, _loop, null, [[19, 33, 36, 39]]);
            });

            _iterator.s();

          case 14:
            if ((_step = _iterator.n()).done) {
              _context8.next = 18;
              break;
            }

            return _context8.delegateYield(_loop(), "t0", 16);

          case 16:
            _context8.next = 14;
            break;

          case 18:
            _context8.next = 23;
            break;

          case 20:
            _context8.prev = 20;
            _context8.t1 = _context8["catch"](11);

            _iterator.e(_context8.t1);

          case 23:
            _context8.prev = 23;

            _iterator.f();

            return _context8.finish(23);

          case 26:
            if (!(allInvitations.length > 0)) {
              _context8.next = 32;
              break;
            }

            log["a" /* default */].setLog("\u5217\u8868\u83B7\u53D6\u5B8C\u6210\uFF0C\u5F00\u59CB\u83B7\u53D6".concat(allInvitations.length, "\u6761\u9080\u7EA6\u8BE6\u60C5"));
            _context8.next = 30;
            return fetchInvitationDetails(allInvitations.map(function (_ref8) {
              var id = _ref8.id;
              return id;
            }), task);

          case 30:
            _failDetailsSet = _context8.sent;

            // 如果有详情获取/上报失败，将 Set 转为数组保存到缓存
            if (_failDetailsSet.size > 0) {
              log["a" /* default */].setLog("\u6709".concat(_failDetailsSet.size, "\u6761\u9080\u7EA6\u8BE6\u60C5\u83B7\u53D6/\u4E0A\u62A5\u5931\u8D25\uFF0C\u5C06\u5728\u4E0B\u6B21\u91CD\u8BD5"));
              task.failDetails = Array.from(_failDetailsSet);
            }

          case 32:
            _context8.next = 34;
            return getTargetInvitationTotal(task);

          case 34:
            totalData = _context8.sent;
            findErr = errorCache[0];
            code = findErr ? 1 : 0;
            msg = findErr && findErr.errMsg;
            task.msg = msg;
            task.resCache = {
              data: {
                errorCache: errorCache,
                failDetails: task.failDetails
              }
            };
            return _context8.abrupt("return", {
              code: code,
              msg: msg,
              data: {
                errorCache: errorCache,
                failDetails: task.failDetails
              },
              result: {
                totalData: totalData || null
              }
            });

          case 41:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee7, null, [[11, 20, 23, 26]]);
  }));
  return _getTargetInvitation.apply(this, arguments);
}

var getTargetInvitationDetail = /*#__PURE__*/function () {
  var _ref7 = getTargetInvitation_asyncToGenerator( /*#__PURE__*/getTargetInvitation_regeneratorRuntime().mark(function _callee6(task) {
    var failDetailsSet;
    return getTargetInvitation_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            task.invitationIds = ['7593229570195965751'];

            if (!(!task.invitationIds || task.invitationIds.length === 0)) {
              _context6.next = 4;
              break;
            }

            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            return _context6.abrupt("return", {
              code: 1,
              msg: '没有invitationIds'
            });

          case 4:
            _context6.next = 6;
            return fetchInvitationDetails(task.invitationIds, task);

          case 6:
            failDetailsSet = _context6.sent;

            // 如果有详情获取/上报失败，将 Set 转为数组保存到缓存
            if (failDetailsSet.size > 0) {
              log["a" /* default */].setLog("\u6709".concat(failDetailsSet.size, "\u6761\u9080\u7EA6\u8BE6\u60C5\u83B7\u53D6/\u4E0A\u62A5\u5931\u8D25\uFF0C\u5C06\u5728\u4E0B\u6B21\u91CD\u8BD5"));
              task.failDetails = Array.from(failDetailsSet);
            }

            return _context6.abrupt("return", {
              code: task.failDetails && task.failDetails.length > 0 ? 1 : 0,
              msg: task.failDetails && task.failDetails.length > 0 ? "\u6709".concat(task.failDetails.length, "\u6761\u9080\u7EA6\u8BE6\u60C5\u83B7\u53D6/\u4E0A\u62A5\u5931\u8D25\uFF0C\u5C06\u5728\u4E0B\u6B21\u91CD\u8BD5") : ''
            });

          case 9:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6);
  }));

  return function getTargetInvitationDetail(_x10) {
    return _ref7.apply(this, arguments);
  };
}();
// CONCATENATED MODULE: ./src/platform/tiktok/core/createTargetInvitation.js
function createTargetInvitation_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function createTargetInvitation_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? createTargetInvitation_ownKeys(Object(source), !0).forEach(function (key) { createTargetInvitation_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : createTargetInvitation_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function createTargetInvitation_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function createTargetInvitation_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = createTargetInvitation_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function createTargetInvitation_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return createTargetInvitation_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return createTargetInvitation_arrayLikeToArray(o, minLen); }

function createTargetInvitation_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function createTargetInvitation_typeof(obj) { "@babel/helpers - typeof"; return createTargetInvitation_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, createTargetInvitation_typeof(obj); }

function createTargetInvitation_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ createTargetInvitation_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == createTargetInvitation_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function createTargetInvitation_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function createTargetInvitation_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { createTargetInvitation_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { createTargetInvitation_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }





var ConflitCreatorIds = []; // 不符合条件的达人列表

var checkQuota = /*#__PURE__*/function () {
  var _ref = createTargetInvitation_asyncToGenerator( /*#__PURE__*/createTargetInvitation_regeneratorRuntime().mark(function _callee(task) {
    var query, _yield$tkPost, code, data, message, msg, _msg, _msg2;

    return createTargetInvitation_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(utils["a" /* getQueryString */])(task);

          case 3:
            query = _context.sent;

            if (query) {
              _context.next = 6;
              break;
            }

            return _context.abrupt("return", false);

          case 6:
            _context.next = 8;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/quota/connection/check"), query, {
              creator_ids: task.creator_ids
            });

          case 8:
            _yield$tkPost = _context.sent;
            code = _yield$tkPost.code;
            data = _yield$tkPost.data;
            message = _yield$tkPost.message;

            if (!(code === 0)) {
              _context.next = 21;
              break;
            }

            if (!(data && data.is_pass)) {
              _context.next = 15;
              break;
            }

            return _context.abrupt("return", true);

          case 15:
            msg = "\u68C0\u67E5\u914D\u989D\u4E0D\u901A\u8FC7-----".concat(message);
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context.abrupt("return", false);

          case 21:
            _msg = "\u68C0\u67E5\u914D\u989D\u5931\u8D25-----".concat(message);
            log["a" /* default */].setLog(_msg);
            task.msg = _msg;
            return _context.abrupt("return", false);

          case 25:
            _context.next = 33;
            break;

          case 27:
            _context.prev = 27;
            _context.t0 = _context["catch"](0);
            _msg2 = "\u68C0\u67E5\u914D\u989D\u5931\u8D25-----\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A".concat(Object(util["u" /* isError */])(_context.t0));
            log["a" /* default */].setLog(_msg2);
            task.msg = _msg2;
            return _context.abrupt("return", false);

          case 33:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 27]]);
  }));

  return function checkQuota(_x) {
    return _ref.apply(this, arguments);
  };
}();

var checkSensitiveText = /*#__PURE__*/function () {
  var _ref2 = createTargetInvitation_asyncToGenerator( /*#__PURE__*/createTargetInvitation_regeneratorRuntime().mark(function _callee2(task) {
    var _task$invitation_grou, _task$invitation_grou2, query, _yield$tkPost2, code, message, msg, _msg3, _msg4;

    return createTargetInvitation_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;

            if ((_task$invitation_grou = task.invitation_group) !== null && _task$invitation_grou !== void 0 && _task$invitation_grou.message) {
              _context2.next = 5;
              break;
            }

            task.msg = '邀约文案不能为空';
            log["a" /* default */].setLog(task.msg);
            return _context2.abrupt("return", false);

          case 5:
            _context2.next = 7;
            return Object(utils["a" /* getQueryString */])(task);

          case 7:
            query = _context2.sent;

            if (query) {
              _context2.next = 10;
              break;
            }

            return _context2.abrupt("return", false);

          case 10:
            _context2.next = 12;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/invitation_group/sensitive_text_check"), query, {
              text: (_task$invitation_grou2 = task.invitation_group) === null || _task$invitation_grou2 === void 0 ? void 0 : _task$invitation_grou2.message
            });

          case 12:
            _yield$tkPost2 = _context2.sent;
            code = _yield$tkPost2.code;
            message = _yield$tkPost2.message;

            if (!(code === 0)) {
              _context2.next = 26;
              break;
            }

            if (!(message === 'success')) {
              _context2.next = 20;
              break;
            }

            return _context2.abrupt("return", true);

          case 20:
            msg = "\u68C0\u67E5\u654F\u611F\u6587\u672C\u4E0D\u901A\u8FC7-----".concat(message);
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context2.abrupt("return", false);

          case 24:
            _context2.next = 30;
            break;

          case 26:
            _msg3 = "\u68C0\u67E5\u654F\u611F\u6587\u672C\u5931\u8D25-----".concat(message);
            log["a" /* default */].setLog(_msg3);
            task.msg = _msg3;
            return _context2.abrupt("return", false);

          case 30:
            _context2.next = 37;
            break;

          case 32:
            _context2.prev = 32;
            _context2.t0 = _context2["catch"](0);
            _msg4 = "\u68C0\u67E5\u654F\u611F\u6587\u672C\u5931\u8D25-----\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A".concat(Object(util["u" /* isError */])(_context2.t0));
            log["a" /* default */].setLog(_msg4);
            task.msg = _msg4;

          case 37:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 32]]);
  }));

  return function checkSensitiveText(_x2) {
    return _ref2.apply(this, arguments);
  };
}(); // const getProductInfo = async (task, retry = 0) => {
//   try {
//     const query = await getQueryString(task)
//     if (!query) return false
//     const { code, product, message } = await tkPost(
//       `${task.host}/api/v1/oec/affiliate/seller/invitation/products_info`,
//       query,
// 			{
// 				product_id_list: task.product_id_list,
// 			}
//     )
//     if(code === 0) {
//       return product
//     } else {
//       const msg = `获取商品信息失败-----${message}`
//       log.setLog(msg)
//       task.msg = msg
//       return false
//     }
// 	} catch (e) {
// 		const msg = `获取商品信息失败-----原生接口返回：${isError(e)}`
// 		log.setLog(msg)
//     if (retry < 3) {
//       log.setLog(`获取商品信息---正在重试第${retry + 1}次........................`)
//       await delayed((retry + 1) * 1000)
//       return getProductInfo(task, retry + 1)
//     }
// 		task.msg = msg
//     return false
// 	}
// }


var checkCreatorConflict = /*#__PURE__*/function () {
  var _ref3 = createTargetInvitation_asyncToGenerator( /*#__PURE__*/createTargetInvitation_regeneratorRuntime().mark(function _callee3(task) {
    var iteration, maxIteration, query, params, _yield$tkPost3, code, data, message, _msg5, _ref4, conflict_cids, _ret, msg, _msg6;

    return createTargetInvitation_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            iteration = 0;
            maxIteration = 10; // 补齐达人操作最大循环次数

          case 3:
            if (!(iteration < maxIteration)) {
              _context3.next = 35;
              break;
            }

            log["a" /* default */].setLog("-----\u68C0\u67E5\u8FBE\u4EBA\u51B2\u7A81\u5E76\u8865\u9F50-----\u7B2C".concat(iteration + 1, "\u6B21-----"));
            iteration++;
            _context3.next = 8;
            return Object(utils["a" /* getQueryString */])(task);

          case 8:
            query = _context3.sent;

            if (query) {
              _context3.next = 11;
              break;
            }

            return _context3.abrupt("return", false);

          case 11:
            params = getCheckConflictParams(task);
            _context3.next = 14;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/invitation_group/conflict_check"), query, params);

          case 14:
            _yield$tkPost3 = _context3.sent;
            code = _yield$tkPost3.code;
            data = _yield$tkPost3.data;
            message = _yield$tkPost3.message;

            if (!(code !== 0)) {
              _context3.next = 23;
              break;
            }

            _msg5 = "\u68C0\u67E5\u8FBE\u4EBA\u51B2\u7A81\u5931\u8D25-----".concat(message);
            log["a" /* default */].setLog(_msg5);
            task.msg = _msg5;
            return _context3.abrupt("return", false);

          case 23:
            _ref4 = data || {}, conflict_cids = _ref4.conflict_cids;

            if (!(conflict_cids && conflict_cids.length > 0)) {
              _context3.next = 32;
              break;
            }

            _ret = function () {
              var conflictEntries = [];
              conflict_cids.forEach(function (item) {
                var _ref5 = item || {},
                    conflict_type = _ref5.conflict_type,
                    _ref5$cids = _ref5.cids,
                    cids = _ref5$cids === void 0 ? [] : _ref5$cids;

                var msg = Number(conflict_type) === 4 ? '达人邀约重叠' : '达人不符合邀约条件';
                cids.forEach(function (cid) {
                  conflictEntries.push({
                    code: 0,
                    msg: msg,
                    creator_oec_id: String(cid)
                  });
                });
              });
              var conflictSet = new Set(conflictEntries.map(function (i) {
                return i.creator_oec_id;
              }));
              ConflitCreatorIds = ConflitCreatorIds.concat(conflictEntries); // 同步剔除检查参数中的达人
              // if (task.conflict_check_data && Array.isArray(task.conflict_check_data.creator_id_list)) {
              //   task.conflict_check_data.creator_id_list = task.conflict_check_data.creator_id_list.filter(item => {
              //     const cid = item?.base_info?.creator_oec_id
              //     return !conflictSet.has(String(cid))
              //   })
              // }
              // 同步剔除邀请参数中的达人

              if (task.invitation_group && Array.isArray(task.invitation_group.creator_id_list)) {
                task.invitation_group.creator_id_list = task.invitation_group.creator_id_list.filter(function (item) {
                  var _item$base_info;

                  var cid = item === null || item === void 0 ? void 0 : (_item$base_info = item.base_info) === null || _item$base_info === void 0 ? void 0 : _item$base_info.creator_oec_id;
                  return !conflictSet.has(String(cid));
                });
              } // 查询备用达人，补足至 inviteNum


              var fillCreatorFromBackupResult = createTargetInvitation_fillCreatorFromBackup(task);

              if (!fillCreatorFromBackupResult) {
                // 无法补齐达人（人数已满或无可用备用达人），跳出循环使用当前列表
                return {
                  v: true
                };
              } // 补齐达人后继续循环，直到无冲突或无法补齐


              return "continue";
            }();

            if (!(_ret === "continue")) {
              _context3.next = 28;
              break;
            }

            return _context3.abrupt("continue", 3);

          case 28:
            if (!(createTargetInvitation_typeof(_ret) === "object")) {
              _context3.next = 30;
              break;
            }

            return _context3.abrupt("return", _ret.v);

          case 30:
            _context3.next = 33;
            break;

          case 32:
            return _context3.abrupt("return", true);

          case 33:
            _context3.next = 3;
            break;

          case 35:
            msg = "\u68C0\u67E5\u8FBE\u4EBA\u51B2\u7A81\u8D85\u8FC7\u6700\u5927\u8FED\u4EE3\u6B21\u6570".concat(maxIteration);
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context3.abrupt("return", false);

          case 41:
            _context3.prev = 41;
            _context3.t0 = _context3["catch"](0);
            _msg6 = "\u68C0\u67E5\u8FBE\u4EBA\u51B2\u7A81\u5931\u8D25-----\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0));
            log["a" /* default */].setLog(_msg6);
            task.msg = _msg6;
            return _context3.abrupt("return", false);

          case 47:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 41]]);
  }));

  return function checkCreatorConflict(_x3) {
    return _ref3.apply(this, arguments);
  };
}(); // 使用备用达人补齐邀约人数


var createTargetInvitation_fillCreatorFromBackup = function fillCreatorFromBackup(task) {
  var inviteNum = Number(task.invite_num) || 0;

  if (inviteNum <= 0) {
    task.msg = "\u9080\u7EA6\u4EBA\u6570\u4E0D\u8DB3\uFF0C\u65E0\u6CD5\u8865\u9F50\u8FBE\u4EBA\u3002inviteNum:".concat(inviteNum);
    log["a" /* default */].setLog(task.msg);
    return false;
  }

  var backupList = Array.isArray(task.backup_creator_list) ? task.backup_creator_list : [];

  if (backupList.length === 0) {
    task.msg = "\u5907\u7528\u8FBE\u4EBA\u5217\u8868\u4E3A\u7A7A\uFF0C\u65E0\u6CD5\u8865\u9F50\u8FBE\u4EBA\u3002backup_creator_list:".concat(backupList);
    log["a" /* default */].setLog(task.msg);
    return false;
  }

  task.invitation_group = task.invitation_group || {}; // task.conflict_check_data = task.conflict_check_data || {}

  var invitationList = Array.isArray(task.invitation_group.creator_id_list) ? task.invitation_group.creator_id_list : []; // const conflictList = Array.isArray(task.conflict_check_data.creator_id_list) ? task.conflict_check_data.creator_id_list : []

  var existSet = new Set(invitationList.map(function (item) {
    var _item$base_info2;

    return String(item === null || item === void 0 ? void 0 : (_item$base_info2 = item.base_info) === null || _item$base_info2 === void 0 ? void 0 : _item$base_info2.creator_oec_id);
  }));
  var needNum = inviteNum - invitationList.length;

  if (needNum <= 0) {
    task.invitation_group.creator_id_list = invitationList; // task.conflict_check_data.creator_id_list = conflictList

    log["a" /* default */].setLog("\u9080\u7EA6\u4EBA\u6570\u5DF2\u6EE1\u8DB3\uFF0C\u65E0\u9700\u8865\u9F50\u8FBE\u4EBA\u3002inviteNum:".concat(inviteNum));
    return false;
  }

  var addItems = [];

  var _iterator = createTargetInvitation_createForOfIteratorHelper(backupList),
      _step;

  try {
    for (_iterator.s(); !(_step = _iterator.n()).done;) {
      var _item$base_info6;

      var item = _step.value;
      var cid = item === null || item === void 0 ? void 0 : (_item$base_info6 = item.base_info) === null || _item$base_info6 === void 0 ? void 0 : _item$base_info6.creator_oec_id;
      if (!cid) continue;
      var key = String(cid);
      if (existSet.has(key)) continue;
      addItems.push(item);
      existSet.add(key);
      if (addItems.length >= needNum) break;
    }
  } catch (err) {
    _iterator.e(err);
  } finally {
    _iterator.f();
  }

  task.invitation_group.creator_id_list = invitationList.concat(addItems.map(function (item) {
    var _item$base_info3, _item$base_info4, _item$base_info5;

    return {
      base_info: {
        creator_id: (_item$base_info3 = item.base_info) === null || _item$base_info3 === void 0 ? void 0 : _item$base_info3.creator_id,
        nick_name: (_item$base_info4 = item.base_info) === null || _item$base_info4 === void 0 ? void 0 : _item$base_info4.nick_name,
        creator_oec_id: (_item$base_info5 = item.base_info) === null || _item$base_info5 === void 0 ? void 0 : _item$base_info5.creator_oec_id
      }
    };
  })); // task.conflict_check_data.creator_id_list = conflictList.concat(addItems)

  log["a" /* default */].setLog("-----\u8865\u9F50\u8FBE\u4EBA".concat(addItems.length, "\u4E2A-----"));
  return addItems.length > 0;
};

var getCheckConflictParams = function getCheckConflictParams(task) {
  var _ref6 = task.invitation_group || {},
      product_list = _ref6.product_list,
      creator_id_list = _ref6.creator_id_list; // const sourceProducts = Array.isArray(product_list) ? product_list : []


  return {
    invitation: {
      product_list: product_list,
      // product_list: (task.invitationProductInfo || []).map(item => {
      //   const matched = sourceProducts.find(p => String(p.product_id) === String(item.product_id))
      //   return matched ? { ...matched, ...item } : { ...item }
      // }),
      creator_id_list: creator_id_list.map(function (item) {
        return createTargetInvitation_objectSpread(createTargetInvitation_objectSpread({}, item), {}, {
          status: 1
        });
      })
    }
  };
};

var createInvitation = /*#__PURE__*/function () {
  var _ref7 = createTargetInvitation_asyncToGenerator( /*#__PURE__*/createTargetInvitation_regeneratorRuntime().mark(function _callee4(task) {
    var query, _yield$tkPost4, code, data, message, msg, _msg7, _msg8, _msg9;

    return createTargetInvitation_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return Object(utils["a" /* getQueryString */])(task);

          case 3:
            query = _context4.sent;

            if (query) {
              _context4.next = 6;
              break;
            }

            return _context4.abrupt("return", false);

          case 6:
            _context4.next = 8;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/invitation_group/create"), query, {
              invitation_group: task.invitation_group
            });

          case 8:
            _yield$tkPost4 = _context4.sent;
            code = _yield$tkPost4.code;
            data = _yield$tkPost4.data;
            message = _yield$tkPost4.message;

            if (!(code === 0)) {
              _context4.next = 16;
              break;
            }

            return _context4.abrupt("return", {
              code: 0,
              data: data
            });

          case 16:
            if (![50001702].includes(code)) {
              _context4.next = 23;
              break;
            }

            msg = "\u5B58\u5728\u5546\u54C1\u6216\u8FBE\u4EBA\u4E0D\u7B26\u5408TikTok\u521B\u5EFA\u5B9A\u5411\u9080\u7EA6\u8981\u6C42\uFF0C\u8BE5\u5B9A\u5411\u9080\u7EA6\u521B\u5EFA\u5931\u8D25";
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context4.abrupt("return", {
              code: 2
            });

          case 23:
            if (![16024019].includes(code)) {
              _context4.next = 31;
              break;
            }

            // 达人配额不足
            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            _msg7 = message;
            log["a" /* default */].setLog(_msg7);
            task.msg = _msg7;
            return _context4.abrupt("return", {
              code: 2
            });

          case 31:
            _msg8 = "\u521B\u5EFA\u9080\u7EA6\u5931\u8D25\uFF0C\u5931\u8D25\u539F\u56E0\uFF1A".concat(message);
            log["a" /* default */].setLog(_msg8);
            task.msg = _msg8;
            return _context4.abrupt("return", {
              code: 1
            });

          case 35:
            _context4.next = 43;
            break;

          case 37:
            _context4.prev = 37;
            _context4.t0 = _context4["catch"](0);
            _msg9 = "\u521B\u5EFA\u9080\u7EA6\u5931\u8D25\uFF0C\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A".concat(Object(util["u" /* isError */])(_context4.t0));
            log["a" /* default */].setLog(_msg9);
            task.msg = _msg9;
            return _context4.abrupt("return", {
              code: 1
            });

          case 43:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 37]]);
  }));

  return function createInvitation(_x4) {
    return _ref7.apply(this, arguments);
  };
}(); // 检测不合格商品或达人


var checkUnqualifiedProductOrCreator = /*#__PURE__*/function () {
  var _ref8 = createTargetInvitation_asyncToGenerator( /*#__PURE__*/createTargetInvitation_regeneratorRuntime().mark(function _callee5(task) {
    var unqualifiedProducts;
    return createTargetInvitation_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            _context5.next = 2;
            return checkUnqualifiedProduct(task);

          case 2:
            unqualifiedProducts = _context5.sent;

            if (unqualifiedProducts) {
              _context5.next = 6;
              break;
            }

            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            return _context5.abrupt("return", false);

          case 6:
            if (unqualifiedProducts.length > 0) {
              // task.error_time = TEMU_MAX_RETRY_COUNT
              task.msg = "\u5B58\u5728\u4E0D\u7B26\u5408\u6761\u4EF6\u7684\u5546\u54C1\uFF0C\u5DF2\u5254\u9664\uFF0Cid\uFF1A".concat(unqualifiedProducts.join(','));
            } // 剔除不合格商品，重新创建邀约


            task.invitation_group.product_list = task.invitation_group.product_list.filter(function (item) {
              return !unqualifiedProducts.includes(item.product_id);
            });
            return _context5.abrupt("return", unqualifiedProducts);

          case 9:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function checkUnqualifiedProductOrCreator(_x5) {
    return _ref8.apply(this, arguments);
  };
}(); // 检测不合格商品


var checkUnqualifiedProduct = /*#__PURE__*/function () {
  var _ref9 = createTargetInvitation_asyncToGenerator( /*#__PURE__*/createTargetInvitation_regeneratorRuntime().mark(function _callee6(task) {
    var _task$invitation_grou3, _task$invitation_grou4, query, product_id_list, _yield$tkPost5, code, _yield$tkPost5$produc, product, message, msg, _msg10;

    return createTargetInvitation_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.prev = 0;
            _context6.next = 3;
            return Object(utils["a" /* getQueryString */])(task);

          case 3:
            query = _context6.sent;

            if (query) {
              _context6.next = 6;
              break;
            }

            return _context6.abrupt("return", false);

          case 6:
            product_id_list = ((_task$invitation_grou3 = task.invitation_group) === null || _task$invitation_grou3 === void 0 ? void 0 : (_task$invitation_grou4 = _task$invitation_grou3.product_list) === null || _task$invitation_grou4 === void 0 ? void 0 : _task$invitation_grou4.map(function (item) {
              return item.product_id;
            })) || [];
            _context6.next = 9;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/invitation/products_info"), query, {
              product_id_list: product_id_list
            });

          case 9:
            _yield$tkPost5 = _context6.sent;
            code = _yield$tkPost5.code;
            _yield$tkPost5$produc = _yield$tkPost5.product;
            product = _yield$tkPost5$produc === void 0 ? [] : _yield$tkPost5$produc;
            message = _yield$tkPost5.message;

            if (!(code === 0)) {
              _context6.next = 18;
              break;
            }

            return _context6.abrupt("return", product_id_list.filter(function (product_id) {
              return !product.find(function (item) {
                return item.product_id == product_id;
              });
            }));

          case 18:
            msg = "\u68C0\u6D4B\u4E0D\u5408\u683C\u5546\u54C1\u5931\u8D25\uFF0C\u5931\u8D25\u539F\u56E0\uFF1A".concat(message);
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context6.abrupt("return", false);

          case 22:
            _context6.next = 30;
            break;

          case 24:
            _context6.prev = 24;
            _context6.t0 = _context6["catch"](0);
            _msg10 = "\u68C0\u6D4B\u4E0D\u5408\u683C\u5546\u54C1\u6216\u8FBE\u4EBA\u5931\u8D25\uFF0C\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A".concat(Object(util["u" /* isError */])(_context6.t0));
            log["a" /* default */].setLog(_msg10);
            task.msg = _msg10;
            return _context6.abrupt("return", false);

          case 30:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6, null, [[0, 24]]);
  }));

  return function checkUnqualifiedProduct(_x6) {
    return _ref9.apply(this, arguments);
  };
}(); // 入口函数


function createTargetInvitation(_x7) {
  return _createTargetInvitation.apply(this, arguments);
}

function _createTargetInvitation() {
  _createTargetInvitation = createTargetInvitation_asyncToGenerator( /*#__PURE__*/createTargetInvitation_regeneratorRuntime().mark(function _callee7(task) {
    var checkSensitiveTextResult, checkCreatorResult, checkUnqualifiedProductOrCreatorResult, createInvitationResult, _ref10, invitation, _task$invitation_grou5;

    return createTargetInvitation_regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            // 每次任务开始重置冲突达人记录
            ConflitCreatorIds = []; // 1、检查配额
            // const checkQuotaResult = await checkQuota(task)
            // if (!checkQuotaResult) {
            // 	return {
            //     code: 1,
            //     msg: task.msg
            //   }
            // }
            // 2、检查敏感文本

            _context7.next = 3;
            return checkSensitiveText(task);

          case 3:
            checkSensitiveTextResult = _context7.sent;

            if (checkSensitiveTextResult) {
              _context7.next = 6;
              break;
            }

            return _context7.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 6:
            _context7.next = 8;
            return checkCreatorConflict(task);

          case 8:
            checkCreatorResult = _context7.sent;

            if (checkCreatorResult) {
              _context7.next = 11;
              break;
            }

            return _context7.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 11:
            _context7.next = 13;
            return checkUnqualifiedProductOrCreator(task);

          case 13:
            checkUnqualifiedProductOrCreatorResult = _context7.sent;

            if (checkUnqualifiedProductOrCreatorResult) {
              _context7.next = 16;
              break;
            }

            return _context7.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 16:
            if (!(task.invitation_group.creator_id_list.length === 0)) {
              _context7.next = 19;
              break;
            }

            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            return _context7.abrupt("return", {
              code: 2,
              // 2是通知业务方此任务不在重试
              msg: task.msg
            });

          case 19:
            _context7.next = 21;
            return createInvitation(task);

          case 21:
            createInvitationResult = _context7.sent;
            _ref10 = createInvitationResult.data || {}, invitation = _ref10.invitation;

            if (!(createInvitationResult.code === 0 && invitation.id)) {
              _context7.next = 27;
              break;
            }

            return _context7.abrupt("return", {
              code: 0,
              msg: task.msg || "",
              result: {
                message: "success",
                data: {
                  id: invitation.id,
                  creatorIds: ConflitCreatorIds.concat((((_task$invitation_grou5 = task.invitation_group) === null || _task$invitation_grou5 === void 0 ? void 0 : _task$invitation_grou5.creator_id_list) || []).map(function (item) {
                    var _item$base_info7;

                    return {
                      code: 1,
                      msg: '',
                      creator_oec_id: (_item$base_info7 = item.base_info) === null || _item$base_info7 === void 0 ? void 0 : _item$base_info7.creator_oec_id
                    };
                  })),
                  productIds: checkUnqualifiedProductOrCreatorResult
                }
              }
            });

          case 27:
            return _context7.abrupt("return", {
              code: createInvitationResult.code,
              msg: task.msg
            });

          case 28:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7);
  }));
  return _createTargetInvitation.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/platform/tiktok/core/updateTargetInvitation.js
function updateTargetInvitation_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function updateTargetInvitation_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? updateTargetInvitation_ownKeys(Object(source), !0).forEach(function (key) { updateTargetInvitation_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : updateTargetInvitation_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function updateTargetInvitation_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function updateTargetInvitation_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = updateTargetInvitation_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function updateTargetInvitation_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return updateTargetInvitation_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return updateTargetInvitation_arrayLikeToArray(o, minLen); }

function updateTargetInvitation_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function updateTargetInvitation_typeof(obj) { "@babel/helpers - typeof"; return updateTargetInvitation_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, updateTargetInvitation_typeof(obj); }

function updateTargetInvitation_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ updateTargetInvitation_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == updateTargetInvitation_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function updateTargetInvitation_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function updateTargetInvitation_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { updateTargetInvitation_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { updateTargetInvitation_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }





var allUsedCreatorIds = []; // 记录所有被用过的达人，用于上报成功和失败原因

var getInvitationInfo = /*#__PURE__*/function () {
  var _ref = updateTargetInvitation_asyncToGenerator( /*#__PURE__*/updateTargetInvitation_regeneratorRuntime().mark(function _callee(task) {
    var query, _yield$tkPost, code, data, message, _data$invitation, msg, _msg;

    return updateTargetInvitation_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(utils["a" /* getQueryString */])(task);

          case 3:
            query = _context.sent;

            if (query) {
              _context.next = 6;
              break;
            }

            return _context.abrupt("return", false);

          case 6:
            _context.next = 8;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/invitation_group/detail"), query, {
              invitation_group_id: task.id
            });

          case 8:
            _yield$tkPost = _context.sent;
            code = _yield$tkPost.code;
            data = _yield$tkPost.data;
            message = _yield$tkPost.message;

            if (!(code === 0)) {
              _context.next = 21;
              break;
            }

            if (!((_data$invitation = data.invitation) !== null && _data$invitation !== void 0 && _data$invitation.flash_sale_info)) {
              _context.next = 18;
              break;
            }

            task.msg = "\u9080\u7EA6\u4FE1\u606F\u4E2D\u5305\u542B\u79D2\u6740\u6D3B\u52A8\uFF0C\u6682\u4E0D\u652F\u6301\u7F16\u8F91\u9080\u7EA6";
            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            log["a" /* default */].setLog(task.msg);
            return _context.abrupt("return", false);

          case 18:
            return _context.abrupt("return", data);

          case 21:
            msg = "\u83B7\u53D6\u9080\u7EA6\u4FE1\u606F\u5931\u8D25-----".concat(message);
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context.abrupt("return", false);

          case 25:
            _context.next = 32;
            break;

          case 27:
            _context.prev = 27;
            _context.t0 = _context["catch"](0);
            _msg = "\u83B7\u53D6\u9080\u7EA6\u4FE1\u606F\u5931\u8D25-----\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A".concat(Object(util["u" /* isError */])(_context.t0));
            log["a" /* default */].setLog(_msg);
            task.msg = _msg;

          case 32:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 27]]);
  }));

  return function getInvitationInfo(_x) {
    return _ref.apply(this, arguments);
  };
}();

var updateInvitation = /*#__PURE__*/function () {
  var _ref2 = updateTargetInvitation_asyncToGenerator( /*#__PURE__*/updateTargetInvitation_regeneratorRuntime().mark(function _callee2(task, infoRes, customCreatorIds) {
    var query, params, _yield$tkPost2, code, data, message, msg, _msg2;

    return updateTargetInvitation_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;
            _context2.next = 3;
            return Object(utils["a" /* getQueryString */])(task);

          case 3:
            query = _context2.sent;

            if (query) {
              _context2.next = 6;
              break;
            }

            return _context2.abrupt("return", false);

          case 6:
            params = getUpdateParams(task, infoRes, customCreatorIds);
            _context2.next = 9;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/invitation_group/update"), query, params);

          case 9:
            _yield$tkPost2 = _context2.sent;
            code = _yield$tkPost2.code;
            data = _yield$tkPost2.data;
            message = _yield$tkPost2.message;

            if (!(code === 0)) {
              _context2.next = 18;
              break;
            }

            allUsedCreatorIds = allUsedCreatorIds.concat(customCreatorIds.map(function (i) {
              return {
                code: 1,
                // 成功
                msg: "",
                creator_oec_id: i.creator_oec_id
              };
            }));
            return _context2.abrupt("return", true);

          case 18:
            msg = "-----\u66F4\u65B0\u9080\u7EA6\u5931\u8D25-----".concat(message);
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context2.abrupt("return", false);

          case 22:
            _context2.next = 30;
            break;

          case 24:
            _context2.prev = 24;
            _context2.t0 = _context2["catch"](0);
            _msg2 = "-----\u66F4\u65B0\u9080\u7EA6\u5931\u8D25-----\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A".concat(Object(util["u" /* isError */])(_context2.t0));
            log["a" /* default */].setLog(_msg2);
            task.msg = _msg2;
            return _context2.abrupt("return", false);

          case 30:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 24]]);
  }));

  return function updateInvitation(_x2, _x3, _x4) {
    return _ref2.apply(this, arguments);
  };
}();

var getUpdateParams = function getUpdateParams(task, infoRes, customCreatorIds) {
  if (!infoRes) return false;
  var invitation = infoRes.invitation;
  var params = {
    id: invitation.id,
    name: invitation.name,
    message: invitation.message,
    contacts_info: invitation.contacts_info,
    free_sample_rule: invitation.free_sample_rule,
    end_time: invitation.end_time,
    product_list: invitation.product_list.map(function (item) {
      return {
        product_id: item.product_id,
        target_commission: item.target_commission
      };
    }),
    delivery_requirements: invitation.delivery_requirements,
    has_flash_sale: invitation.flash_sale_info && invitation.flash_sale_info.flash_sale_status === 1
  };
  params.creator_id_list = customCreatorIds.map(function (i) {
    return {
      base_info: {
        creator_id: i.creator_id,
        nick_name: i.nick_name,
        creator_oec_id: i.creator_oec_id
      }
    };
  }); // 秒杀活动需以下参数
  // if(invitation.flash_sale_info && invitation.flash_sale_info.flash_sale_status === 1) {
  //   const {creator_id, end_time, start_time, limit_one_product,flash_sale_products} = invitation.flash_sale_info
  //   params.flash_sale_info = {
  //     creator_id,
  //     end_time,
  //     start_time,
  //     limit_one_product: Boolean(limit_one_product),
  //     flash_sale_products: flash_sale_products.map(item => ({product_id:item.product_id, skus:item.skus.map(sku => {
  //       const {fixed_sale_price, flash_sale_include, product_id, sku_id, sku_name, exclusive_inventory} = sku
  //       const newSku = {
  //         fixed_sale_price: {
  //           price: fixed_sale_price.price || "",
  //         },
  //         flash_sale_include,
  //         product_id,
  //         sku_id,
  //         sku_name,
  //       }
  //       if(exclusive_inventory) newSku.exclusive_inventory = exclusive_inventory
  //       return newSku
  //     })}))
  //   }
  // }

  return {
    invitation: params
  };
};

var updateTargetInvitation_checkCreatorConflict = /*#__PURE__*/function () {
  var _ref3 = updateTargetInvitation_asyncToGenerator( /*#__PURE__*/updateTargetInvitation_regeneratorRuntime().mark(function _callee3(task) {
    var iteration, maxIteration, query, params, _yield$tkPost3, code, data, message, _msg3, _ref4, conflict_cids, _ret, msg, _msg4;

    return updateTargetInvitation_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            iteration = 0;
            maxIteration = 10; // 补齐达人操作最大循环次数

          case 3:
            if (!(iteration < maxIteration)) {
              _context3.next = 35;
              break;
            }

            log["a" /* default */].setLog("-----\u68C0\u67E5\u8FBE\u4EBA\u51B2\u7A81\u5E76\u8865\u9F50-----\u7B2C".concat(iteration + 1, "\u6B21-----"));
            iteration++;
            _context3.next = 8;
            return Object(utils["a" /* getQueryString */])(task);

          case 8:
            query = _context3.sent;

            if (query) {
              _context3.next = 11;
              break;
            }

            return _context3.abrupt("return", false);

          case 11:
            params = updateTargetInvitation_getCheckConflictParams(task);
            _context3.next = 14;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/invitation_group/conflict_check"), query, params);

          case 14:
            _yield$tkPost3 = _context3.sent;
            code = _yield$tkPost3.code;
            data = _yield$tkPost3.data;
            message = _yield$tkPost3.message;

            if (!(code !== 0)) {
              _context3.next = 23;
              break;
            }

            _msg3 = "\u68C0\u67E5\u8FBE\u4EBA\u51B2\u7A81\u5931\u8D25-----".concat(message);
            log["a" /* default */].setLog(_msg3);
            task.msg = _msg3;
            return _context3.abrupt("return", false);

          case 23:
            _ref4 = data || {}, conflict_cids = _ref4.conflict_cids;

            if (!(conflict_cids && conflict_cids.length > 0)) {
              _context3.next = 32;
              break;
            }

            _ret = function () {
              var conflictEntries = [];
              conflict_cids.forEach(function (item) {
                var _ref5 = item || {},
                    conflict_type = _ref5.conflict_type,
                    _ref5$cids = _ref5.cids,
                    cids = _ref5$cids === void 0 ? [] : _ref5$cids;

                var msg = Number(conflict_type) === 4 ? '达人邀约重叠' : '达人不符合邀约条件';
                cids.forEach(function (cid) {
                  conflictEntries.push({
                    code: 0,
                    msg: msg,
                    creator_oec_id: String(cid)
                  });
                });
              });
              var conflictSet = new Set(conflictEntries.map(function (i) {
                return i.creator_oec_id;
              }));
              allUsedCreatorIds = allUsedCreatorIds.concat(conflictEntries); // 同步剔除检查参数中的达人
              // if (task.conflict_check_data && Array.isArray(task.conflict_check_data.creator_id_list)) {
              //   task.conflict_check_data.creator_id_list = task.conflict_check_data.creator_id_list.filter(item => {
              //     const cid = item?.base_info?.creator_oec_id
              //     return !conflictSet.has(String(cid))
              //   })
              // }
              // 同步剔除邀请参数中的达人

              if (task.invitation_group && Array.isArray(task.invitation_group.creator_id_list)) {
                task.invitation_group.creator_id_list = task.invitation_group.creator_id_list.filter(function (item) {
                  var _item$base_info;

                  var cid = item === null || item === void 0 ? void 0 : (_item$base_info = item.base_info) === null || _item$base_info === void 0 ? void 0 : _item$base_info.creator_oec_id;
                  return !conflictSet.has(String(cid));
                });
              } // 查询备用达人，补足至 inviteNum


              var fillCreatorFromBackupResult = updateTargetInvitation_fillCreatorFromBackup(task);

              if (!fillCreatorFromBackupResult) {
                // 无法补齐达人（人数已满或无可用备用达人），跳出循环使用当前列表
                return {
                  v: true
                };
              } // 补齐达人后继续循环，直到无冲突或无法补齐


              return "continue";
            }();

            if (!(_ret === "continue")) {
              _context3.next = 28;
              break;
            }

            return _context3.abrupt("continue", 3);

          case 28:
            if (!(updateTargetInvitation_typeof(_ret) === "object")) {
              _context3.next = 30;
              break;
            }

            return _context3.abrupt("return", _ret.v);

          case 30:
            _context3.next = 33;
            break;

          case 32:
            return _context3.abrupt("return", true);

          case 33:
            _context3.next = 3;
            break;

          case 35:
            msg = "\u68C0\u67E5\u8FBE\u4EBA\u51B2\u7A81\u8D85\u8FC7\u6700\u5927\u8FED\u4EE3\u6B21\u6570".concat(maxIteration);
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context3.abrupt("return", false);

          case 41:
            _context3.prev = 41;
            _context3.t0 = _context3["catch"](0);
            _msg4 = "\u68C0\u67E5\u8FBE\u4EBA\u51B2\u7A81\u5931\u8D25-----\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0));
            log["a" /* default */].setLog(_msg4);
            task.msg = _msg4;
            return _context3.abrupt("return", false);

          case 47:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 41]]);
  }));

  return function checkCreatorConflict(_x5) {
    return _ref3.apply(this, arguments);
  };
}(); // 使用新达人补齐邀约人数


var updateTargetInvitation_fillCreatorFromBackup = function fillCreatorFromBackup(task) {
  var inviteNum = Number(task.invite_num) || 0;

  if (inviteNum <= 0) {
    task.msg = "-----\u9080\u7EA6\u4EBA\u6570\u4E0D\u8DB3\uFF0C\u65E0\u6CD5\u8865\u9F50\u8FBE\u4EBA\u3002inviteNum:".concat(inviteNum);
    log["a" /* default */].setLog(task.msg);
    return false;
  }

  var backupList = Array.isArray(task.backup_creator_list) ? task.backup_creator_list : [];

  if (backupList.length === 0) {
    task.msg = "-----\u65B0\u8FBE\u4EBA\u5217\u8868\u4E3A\u7A7A\uFF0C\u65E0\u6CD5\u8865\u9F50\u8FBE\u4EBA\u3002new_creator_list:".concat(backupList);
    log["a" /* default */].setLog(task.msg);
    return false;
  }

  task.invitation_group = task.invitation_group || {}; // task.conflict_check_data = task.conflict_check_data || {}

  var invitationList = Array.isArray(task.invitation_group.creator_id_list) ? task.invitation_group.creator_id_list : []; // const conflictList = Array.isArray(task.conflict_check_data.creator_id_list) ? task.conflict_check_data.creator_id_list : []

  var existSet = new Set(invitationList.map(function (item) {
    var _item$base_info2;

    return String(item === null || item === void 0 ? void 0 : (_item$base_info2 = item.base_info) === null || _item$base_info2 === void 0 ? void 0 : _item$base_info2.creator_oec_id);
  }));
  var needNum = inviteNum - invitationList.length;

  if (needNum <= 0) {
    task.invitation_group.creator_id_list = invitationList; // task.conflict_check_data.creator_id_list = conflictList

    task.msg = "-----\u9080\u7EA6\u4EBA\u6570\u5DF2\u6EE1\u8DB3\uFF0C\u65E0\u9700\u8865\u9F50\u8FBE\u4EBA\u3002inviteNum:".concat(inviteNum);
    log["a" /* default */].setLog(task.msg);
    return false;
  }

  var addItems = [];

  var _iterator = updateTargetInvitation_createForOfIteratorHelper(backupList),
      _step;

  try {
    for (_iterator.s(); !(_step = _iterator.n()).done;) {
      var _item$base_info6;

      var item = _step.value;
      var cid = item === null || item === void 0 ? void 0 : (_item$base_info6 = item.base_info) === null || _item$base_info6 === void 0 ? void 0 : _item$base_info6.creator_oec_id;
      if (!cid) continue;
      var key = String(cid);
      if (existSet.has(key)) continue;
      addItems.push(item);
      existSet.add(key);
      if (addItems.length >= needNum) break;
    }
  } catch (err) {
    _iterator.e(err);
  } finally {
    _iterator.f();
  }

  task.invitation_group.creator_id_list = invitationList.concat(addItems.map(function (item) {
    var _item$base_info3, _item$base_info4, _item$base_info5;

    return {
      base_info: {
        creator_id: (_item$base_info3 = item.base_info) === null || _item$base_info3 === void 0 ? void 0 : _item$base_info3.creator_id,
        nick_name: (_item$base_info4 = item.base_info) === null || _item$base_info4 === void 0 ? void 0 : _item$base_info4.nick_name,
        creator_oec_id: (_item$base_info5 = item.base_info) === null || _item$base_info5 === void 0 ? void 0 : _item$base_info5.creator_oec_id
      }
    };
  })); // task.conflict_check_data.creator_id_list = conflictList.concat(addItems)

  log["a" /* default */].setLog("-----\u8865\u9F50\u8FBE\u4EBA".concat(addItems.length, "\u4E2A-----"));
  return addItems.length > 0;
};

var updateTargetInvitation_getCheckConflictParams = function getCheckConflictParams(task) {
  var _ref6 = task.invitation_group || {},
      product_list = _ref6.product_list,
      creator_id_list = _ref6.creator_id_list; // const sourceProducts = Array.isArray(product_list) ? product_list : []


  return {
    invitation: {
      product_list: product_list,
      // 检查冲突确实商品信息字段，从后端接口补齐
      // product_list: (task.invitationProductInfo || []).map(item => {
      //   const matched = sourceProducts.find(p => String(p.product_id) === String(item.product_id))
      //   return matched ? { 
      // 		status: matched.status,
      // 		create_time: matched.create_time,
      // 		sales: matched.sales,
      // 		 ...item 
      // 		}
      // 		  :
      // 		{ ...item }
      // }),
      creator_id_list: creator_id_list.map(function (item) {
        return updateTargetInvitation_objectSpread(updateTargetInvitation_objectSpread({}, item), {}, {
          status: 1
        });
      })
    }
  };
}; // 入口函数


function updateTargetInvitation(_x6) {
  return _updateTargetInvitation.apply(this, arguments);
}

function _updateTargetInvitation() {
  _updateTargetInvitation = updateTargetInvitation_asyncToGenerator( /*#__PURE__*/updateTargetInvitation_regeneratorRuntime().mark(function _callee5(task) {
    var infoRes, invitation, allCreators, repliedcreatorIds, noRepliedcreatorIds, updateRes1, updateRes2, newCreatorIds, inviteNum, fillCreatorIds, baseCreatorIds, mergedCreatorIds, updateRes;
    return updateTargetInvitation_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            allUsedCreatorIds = [];
            _context5.next = 3;
            return getInvitationInfo(task);

          case 3:
            infoRes = _context5.sent;

            if (infoRes) {
              _context5.next = 6;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 6:
            invitation = infoRes.invitation || {};
            task.invitation_group = task.invitation_group || {};
            task.invitation_group.product_list = invitation.product_list || [];
            allCreators = (invitation.creator_id_list || []).map(function (i) {
              return (i === null || i === void 0 ? void 0 : i.base_info) || {};
            });
            repliedcreatorIds = [];
            noRepliedcreatorIds = [];
            allCreators.forEach(function (i) {
              if (Number(i.product_add_cnt) > 0) repliedcreatorIds.push(i);else noRepliedcreatorIds.push(i);
            });

            if (!(task.invite_type === 0)) {
              _context5.next = 26;
              break;
            }

            _context5.next = 16;
            return updateInvitation(task, infoRes, repliedcreatorIds);

          case 16:
            updateRes1 = _context5.sent;

            if (updateRes1) {
              _context5.next = 19;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 19:
            _context5.next = 21;
            return updateInvitation(task, infoRes, allCreators);

          case 21:
            updateRes2 = _context5.sent;

            if (updateRes2) {
              _context5.next = 24;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 24:
            _context5.next = 42;
            break;

          case 26:
            // 2：加入新达人（继续邀约新达人或重试该邀约）
            newCreatorIds = Array.isArray(task.new_creator_ids) ? task.new_creator_ids : [];
            inviteNum = Number(task.invite_num) || 0;

            fillCreatorIds = /*#__PURE__*/function () {
              var _ref7 = updateTargetInvitation_asyncToGenerator( /*#__PURE__*/updateTargetInvitation_regeneratorRuntime().mark(function _callee4(baseList) {
                var needNum, newList, checkCreatorConflictResult;
                return updateTargetInvitation_regeneratorRuntime().wrap(function _callee4$(_context4) {
                  while (1) {
                    switch (_context4.prev = _context4.next) {
                      case 0:
                        if (!(baseList.length >= inviteNum)) {
                          _context4.next = 2;
                          break;
                        }

                        return _context4.abrupt("return", baseList);

                      case 2:
                        needNum = inviteNum - baseList.length;
                        newList = baseList.concat(newCreatorIds.slice(0, needNum)); // task.conflict_check_data.creator_id_list = newList
                        // task.conflict_check_data.product_list = infoRes.invitation?.product_list || []
                        // task.invitationProductInfo = infoRes.invitation?.product_list || []

                        task.invitation_group.creator_id_list = newList; // task.backup_creator_list = newCreatorIds

                        _context4.next = 7;
                        return updateTargetInvitation_checkCreatorConflict(task);

                      case 7:
                        checkCreatorConflictResult = _context4.sent;

                        if (checkCreatorConflictResult) {
                          _context4.next = 12;
                          break;
                        }

                        return _context4.abrupt("return", false);

                      case 12:
                        return _context4.abrupt("return", task.invitation_group.creator_id_list);

                      case 13:
                      case "end":
                        return _context4.stop();
                    }
                  }
                }, _callee4);
              }));

              return function fillCreatorIds(_x7) {
                return _ref7.apply(this, arguments);
              };
            }(); // 2.1 补齐达人至InviteNum


            baseCreatorIds = task.invite_type === 1 ? repliedcreatorIds : allCreators;
            _context5.next = 32;
            return fillCreatorIds(baseCreatorIds);

          case 32:
            mergedCreatorIds = _context5.sent;

            if (!(mergedCreatorIds && mergedCreatorIds.length > 0)) {
              _context5.next = 41;
              break;
            }

            _context5.next = 36;
            return updateInvitation(task, infoRes, mergedCreatorIds.map(function (i) {
              return (i === null || i === void 0 ? void 0 : i.base_info) || {};
            }));

          case 36:
            updateRes = _context5.sent;

            if (updateRes) {
              _context5.next = 39;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg,
              result: {
                creatorIds: allUsedCreatorIds || []
              }
            });

          case 39:
            _context5.next = 42;
            break;

          case 41:
            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg,
              result: {
                creatorIds: allUsedCreatorIds || []
              }
            });

          case 42:
            return _context5.abrupt("return", {
              code: 0,
              msg: task.msg || "",
              result: {
                message: "success",
                data: {},
                creatorIds: allUsedCreatorIds || [],
                removeCreatorIds: task.invite_type === 0 ? [] : noRepliedcreatorIds.map(function (item) {
                  return item.creator_oec_id;
                }) || [],
                invite_num: task.invite_num
              }
            });

          case 43:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));
  return _updateTargetInvitation.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/platform/tiktok/core/getCreators.js
function getCreators_typeof(obj) { "@babel/helpers - typeof"; return getCreators_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getCreators_typeof(obj); }

function getCreators_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = getCreators_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function getCreators_toConsumableArray(arr) { return getCreators_arrayWithoutHoles(arr) || getCreators_iterableToArray(arr) || getCreators_unsupportedIterableToArray(arr) || getCreators_nonIterableSpread(); }

function getCreators_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getCreators_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getCreators_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getCreators_arrayLikeToArray(o, minLen); }

function getCreators_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getCreators_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getCreators_arrayLikeToArray(arr); }

function getCreators_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getCreators_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getCreators_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getCreators_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getCreators_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getCreators_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getCreators_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getCreators_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }





var PAGE_SIZE = 12;
var MAX_LOOP = 200; // 防止异常循环

var CONFLICT_CHECK_BATCH_SIZE = 50; // TikTok API 限制每次冲突检查最多 50 个达人

var getCreators_search_key = ''; // 每次find接口都会返回search_key，用于下一页的请求（首次除外）

var fetchCreatorPage = /*#__PURE__*/function () {
  var _ref = getCreators_asyncToGenerator( /*#__PURE__*/getCreators_regeneratorRuntime().mark(function _callee(task, curPage) {
    var query, params, _yield$tkPost, code, next_pagination, creator_profile_list, creator_connect_info_list, msg, message, _ref2, _ref2$search_key, nextKey, _ref2$has_more, has_more, profileList, connectList, _msg, _msg2;

    return getCreators_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(utils["a" /* getQueryString */])(task);

          case 3:
            query = _context.sent;

            if (query) {
              _context.next = 6;
              break;
            }

            return _context.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 6:
            params = getFetchCreatorParams(task, curPage);
            _context.next = 9;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/creator/marketplace/find"), query, params);

          case 9:
            _yield$tkPost = _context.sent;
            code = _yield$tkPost.code;
            next_pagination = _yield$tkPost.next_pagination;
            creator_profile_list = _yield$tkPost.creator_profile_list;
            creator_connect_info_list = _yield$tkPost.creator_connect_info_list;
            msg = _yield$tkPost.msg;
            message = _yield$tkPost.message;

            if (!(code === 0)) {
              _context.next = 24;
              break;
            }

            _ref2 = next_pagination || {}, _ref2$search_key = _ref2.search_key, nextKey = _ref2$search_key === void 0 ? '' : _ref2$search_key, _ref2$has_more = _ref2.has_more, has_more = _ref2$has_more === void 0 ? false : _ref2$has_more;
            getCreators_search_key = nextKey || '';
            profileList = creator_profile_list || [];
            connectList = creator_connect_info_list || [];
            return _context.abrupt("return", {
              code: 0,
              profileList: profileList,
              connectList: connectList,
              has_more: has_more
            });

          case 24:
            _msg = "\u67E5\u8BE2\u53EF\u9080\u7EA6\u8FBE\u4EBA-\u83B7\u53D6\u8FBE\u4EBA\u5217\u8868\u5931\u8D25-----".concat(msg || message);
            log["a" /* default */].setLog(_msg);
            task.msg = _msg;
            return _context.abrupt("return", {
              code: 1,
              _msg: _msg
            });

          case 28:
            _context.next = 36;
            break;

          case 30:
            _context.prev = 30;
            _context.t0 = _context["catch"](0);
            _msg2 = "\u67E5\u8BE2\u53EF\u9080\u7EA6\u8FBE\u4EBA-\u83B7\u53D6\u8FBE\u4EBA\u5217\u8868\u5931\u8D25-----\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A".concat(Object(util["u" /* isError */])(_context.t0, task));
            log["a" /* default */].setLog(_msg2);
            task.msg = _msg2;
            return _context.abrupt("return", {
              code: 1,
              msg: _msg2
            });

          case 36:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 30]]);
  }));

  return function fetchCreatorPage(_x, _x2) {
    return _ref.apply(this, arguments);
  };
}();

var getFetchCreatorParams = function getFetchCreatorParams(task, curPage) {
  return {
    query: task.query || '',
    query_type: task.query ? 1 : undefined,
    algorithm: 1,
    pagination: curPage > 0 ? {
      next_item_cursor: curPage * PAGE_SIZE,
      page: curPage,
      size: PAGE_SIZE,
      search_key: getCreators_search_key
    } : {},
    filter_params: task.filter_params || {}
  };
};

var getCreators_getCheckConflictParams = function getCheckConflictParams(task, creatorList) {
  var product_list = task.product_list || [];
  var creator_id_list = creatorList.map(function (item) {
    var _item$baseInfo;

    return {
      base_info: {
        creator_oec_id: (_item$baseInfo = item.baseInfo) === null || _item$baseInfo === void 0 ? void 0 : _item$baseInfo.creator_oec_id
      }
    };
  });
  return {
    invitation: {
      product_list: product_list,
      creator_id_list: creator_id_list
    }
  };
};

var checkConflict = /*#__PURE__*/function () {
  var _ref3 = getCreators_asyncToGenerator( /*#__PURE__*/getCreators_regeneratorRuntime().mark(function _callee2(task, creatorList) {
    var query, params, _yield$tkPost2, code, data, message, msg, _ref4, conflict_cids, _msg3;

    return getCreators_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;

            if (creatorList.length) {
              _context2.next = 3;
              break;
            }

            return _context2.abrupt("return", []);

          case 3:
            _context2.next = 5;
            return Object(utils["a" /* getQueryString */])(task);

          case 5:
            query = _context2.sent;

            if (query) {
              _context2.next = 8;
              break;
            }

            return _context2.abrupt("return", []);

          case 8:
            params = getCreators_getCheckConflictParams(task, creatorList);
            _context2.next = 11;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/seller/invitation_group/conflict_check"), query, params);

          case 11:
            _yield$tkPost2 = _context2.sent;
            code = _yield$tkPost2.code;
            data = _yield$tkPost2.data;
            message = _yield$tkPost2.message;

            if (!(code !== 0)) {
              _context2.next = 20;
              break;
            }

            msg = "\u68C0\u67E5\u8FBE\u4EBA\u51B2\u7A81\u5931\u8D25-----".concat(message, ",params-----").concat(JSON.stringify(params));
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context2.abrupt("return", false);

          case 20:
            _ref4 = data || {}, conflict_cids = _ref4.conflict_cids;

            if (!(!conflict_cids || conflict_cids.length === 0)) {
              _context2.next = 23;
              break;
            }

            return _context2.abrupt("return", creatorList);

          case 23:
            return _context2.abrupt("return", creatorList.filter(function (item) {
              var _item$baseInfo2;

              return ((_item$baseInfo2 = item.baseInfo) === null || _item$baseInfo2 === void 0 ? void 0 : _item$baseInfo2.creator_oec_id) && !conflict_cids.includes(item.baseInfo.creator_oec_id);
            }));

          case 26:
            _context2.prev = 26;
            _context2.t0 = _context2["catch"](0);
            _msg3 = "\u68C0\u67E5\u8FBE\u4EBA\u51B2\u7A81\u5931\u8D25-----\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A".concat(Object(util["u" /* isError */])(_context2.t0, task));
            log["a" /* default */].setLog(_msg3);
            task.msg = _msg3;
            return _context2.abrupt("return", false);

          case 32:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 26]]);
  }));

  return function checkConflict(_x3, _x4) {
    return _ref3.apply(this, arguments);
  };
}(); // 分批冲突检查函数（每批最多 50 个达人）


var checkConflictInBatches = /*#__PURE__*/function () {
  var _ref5 = getCreators_asyncToGenerator( /*#__PURE__*/getCreators_regeneratorRuntime().mark(function _callee3(task, creatorList) {
    var batches, i, allValid, _i, batch, validInBatch;

    return getCreators_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            if (creatorList.length) {
              _context3.next = 2;
              break;
            }

            return _context3.abrupt("return", []);

          case 2:
            // 分批：每 CONFLICT_CHECK_BATCH_SIZE 个达人一组
            batches = [];

            for (i = 0; i < creatorList.length; i += CONFLICT_CHECK_BATCH_SIZE) {
              batches.push(creatorList.slice(i, i + CONFLICT_CHECK_BATCH_SIZE));
            }

            log["a" /* default */].setLog("\u51B2\u7A81\u68C0\u67E5-----\u603B\u5171 ".concat(creatorList.length, " \u4E2A\u8FBE\u4EBA\uFF0C\u5206 ").concat(batches.length, " \u6279\u68C0\u67E5")); // 逐批检查

            allValid = [];
            _i = 0;

          case 7:
            if (!(_i < batches.length)) {
              _context3.next = 22;
              break;
            }

            batch = batches[_i];
            log["a" /* default */].setLog("\u51B2\u7A81\u68C0\u67E5-----\u7B2C ".concat(_i + 1, "/").concat(batches.length, " \u6279\uFF0C\u68C0\u67E5 ").concat(batch.length, " \u4E2A\u8FBE\u4EBA"));
            _context3.next = 12;
            return checkConflict(task, batch);

          case 12:
            validInBatch = _context3.sent;

            if (!(validInBatch === false)) {
              _context3.next = 16;
              break;
            }

            log["a" /* default */].setLog("\u51B2\u7A81\u68C0\u67E5-----\u7B2C ".concat(_i + 1, " \u6279\u68C0\u67E5\u5931\u8D25"));
            return _context3.abrupt("return", false);

          case 16:
            allValid.push.apply(allValid, getCreators_toConsumableArray(validInBatch));
            log["a" /* default */].setLog("\u51B2\u7A81\u68C0\u67E5-----\u7B2C ".concat(_i + 1, " \u6279\u8FD4\u56DE ").concat(validInBatch.length, " \u4E2A\u6709\u6548\u8FBE\u4EBA")); // 批次间延迟，避免限流

            if (_i < batches.length - 1) {// await delayed(100)
            }

          case 19:
            _i++;
            _context3.next = 7;
            break;

          case 22:
            log["a" /* default */].setLog("\u51B2\u7A81\u68C0\u67E5-----\u5B8C\u6210\uFF0C\u603B\u5171 ".concat(allValid.length, " \u4E2A\u6709\u6548\u8FBE\u4EBA"));
            return _context3.abrupt("return", allValid);

          case 24:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));

  return function checkConflictInBatches(_x5, _x6) {
    return _ref5.apply(this, arguments);
  };
}(); // 入口函数


function getCreators(_x7) {
  return _getCreators.apply(this, arguments);
}

function _getCreators() {
  _getCreators = getCreators_asyncToGenerator( /*#__PURE__*/getCreators_regeneratorRuntime().mark(function _callee4(task) {
    var _ref6, _ref6$curPage, curPage, _ref6$collected, collected, _ref6$search_key, search_key, inviteNum, seen, has_more, pushCreators, _yield$fetchCreatorPa, code, profileList, connectList, nextHasMore, loopGuard, _loop, _ret;

    return getCreators_regeneratorRuntime().wrap(function _callee4$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            if (!task.resCache) task.resCache = {};
            _ref6 = task.resCache.data || {}, _ref6$curPage = _ref6.curPage, curPage = _ref6$curPage === void 0 ? 1 : _ref6$curPage, _ref6$collected = _ref6.collected, collected = _ref6$collected === void 0 ? [] : _ref6$collected, _ref6$search_key = _ref6.search_key, search_key = _ref6$search_key === void 0 ? '' : _ref6$search_key;
            inviteNum = Number(task.invite_num || task.inviteNum) || 0;

            if (!(inviteNum <= 0)) {
              _context5.next = 8;
              break;
            }

            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            task.msg = 'inviteNum参数异常';
            log["a" /* default */].setLog(task.msg);
            return _context5.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 8:
            if (!(!task.product_list || task.product_list.length === 0)) {
              _context5.next = 12;
              break;
            }

            task.error_time = src_config["d" /* TEMU_MAX_RETRY_COUNT */];
            task.msg = '未携带商品信息';
            return _context5.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 12:
            // 增加10%的备用达人
            inviteNum += Math.ceil(inviteNum * 0.1);
            seen = new Set();
            has_more = true;

            pushCreators = function pushCreators() {
              var profileList = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
              var connectList = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
              var inviteNum = arguments.length > 2 ? arguments[2] : undefined;
              // log.setLog(`第${curPage}页达人数据----进入pushCreators函数：${JSON.stringify(profileList)}-----${JSON.stringify(connectList)}`)
              var connectMap = new Map();
              connectList.forEach(function (info) {
                var _info$creator_id;

                var cid = (info === null || info === void 0 ? void 0 : (_info$creator_id = info.creator_id) === null || _info$creator_id === void 0 ? void 0 : _info$creator_id.value) || (info === null || info === void 0 ? void 0 : info.creator_id);
                if (!cid) return;
                connectMap.set(String(cid), info);
              });

              var _iterator = getCreators_createForOfIteratorHelper(profileList),
                  _step;

              try {
                for (_iterator.s(); !(_step = _iterator.n()).done;) {
                  var _item$creator_oecuid, _item$is_creator_bloc, _item$avatar, _item$handle, _item$nickname, _item$selection_regio;

                  var item = _step.value;
                  if (collected.length >= inviteNum) break;
                  var cid = ((_item$creator_oecuid = item.creator_oecuid) === null || _item$creator_oecuid === void 0 ? void 0 : _item$creator_oecuid.value) || item.creator_oecuid;
                  if (!cid || (_item$is_creator_bloc = item.is_creator_blocked_by_shop) !== null && _item$is_creator_bloc !== void 0 && _item$is_creator_bloc.value) return;
                  var key = String(cid);
                  if (seen.has(key)) return;
                  seen.add(key);
                  var connectInfo = connectMap.get(key);
                  var newItem = {
                    baseInfo: {
                      creator_id: null,
                      creator_oec_id: key,
                      image: (_item$avatar = item.avatar) === null || _item$avatar === void 0 ? void 0 : _item$avatar.value,
                      user_name: (_item$handle = item.handle) === null || _item$handle === void 0 ? void 0 : _item$handle.value,
                      nickname: (_item$nickname = item.nickname) === null || _item$nickname === void 0 ? void 0 : _item$nickname.value,
                      selection_region: (_item$selection_regio = item.selection_region) === null || _item$selection_regio === void 0 ? void 0 : _item$selection_regio.value,
                      is_creator_blocked_by_shop: item.is_creator_blocked_by_shop.value,
                      is_in_flat_fee_whitelist: item.is_in_flat_fee_whitelist.value,
                      creator_connect: connectInfo || null
                    },
                    status: 1
                  };
                  collected.push(newItem);
                }
              } catch (err) {
                _iterator.e(err);
              } finally {
                _iterator.f();
              }
            }; // 逐页获取直至收集的数量超过 inviteNum


          case 16:
            if (!(has_more && curPage <= MAX_LOOP && collected.length < inviteNum)) {
              _context5.next = 34;
              break;
            }

            log["a" /* default */].setLog("\u67E5\u8BE2\u53EF\u9080\u7EA6\u8FBE\u4EBA-----\u7B2C".concat(curPage, "\u9875"));
            _context5.next = 20;
            return fetchCreatorPage(task, curPage);

          case 20:
            _yield$fetchCreatorPa = _context5.sent;
            code = _yield$fetchCreatorPa.code;
            profileList = _yield$fetchCreatorPa.profileList;
            connectList = _yield$fetchCreatorPa.connectList;
            nextHasMore = _yield$fetchCreatorPa.has_more;

            if (!(code !== 0)) {
              _context5.next = 28;
              break;
            }

            // 失败缓存，下次直接从该页开始
            task.resCache.data = {
              curPage: curPage,
              collected: collected,
              search_key: search_key
            };
            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 28:
            pushCreators(profileList || [], connectList || []);
            log["a" /* default */].setLog("\u67E5\u8BE2\u53EF\u9080\u7EA6\u8FBE\u4EBA-----\u5F53\u524D\u6536\u96C6\u7684\u8FBE\u4EBA\u6570\uFF1A".concat(collected.length));
            has_more = nextHasMore;
            curPage++; // await delayed(100)

            _context5.next = 16;
            break;

          case 34:
            // 检查冲突（分批检查，每批最多 50 个达人）
            loopGuard = 0;
            _loop = /*#__PURE__*/getCreators_regeneratorRuntime().mark(function _loop() {
              var currentSlice, valid, validSet, invalidSet, nextCandidates, _yield$fetchCreatorPa2, _code, _profileList, _connectList, _nextHasMore;

              return getCreators_regeneratorRuntime().wrap(function _loop$(_context4) {
                while (1) {
                  switch (_context4.prev = _context4.next) {
                    case 0:
                      loopGuard++;
                      currentSlice = collected.slice(0, inviteNum);
                      _context4.next = 4;
                      return checkConflictInBatches(task, currentSlice);

                    case 4:
                      valid = _context4.sent;

                      if (!(valid === false)) {
                        _context4.next = 8;
                        break;
                      }

                      // 失败缓存，下次直接从该页开始
                      task.resCache.data = {
                        curPage: curPage,
                        collected: collected,
                        search_key: search_key
                      };
                      return _context4.abrupt("return", {
                        v: {
                          code: 1,
                          msg: task.msg
                        }
                      });

                    case 8:
                      if (!(valid.length >= inviteNum)) {
                        _context4.next = 10;
                        break;
                      }

                      return _context4.abrupt("return", {
                        v: {
                          code: 0,
                          msg: task.msg || '',
                          data: {
                            curPage: curPage,
                            collected: collected,
                            search_key: search_key
                          },
                          result: {
                            list: valid.slice(0, inviteNum)
                          }
                        }
                      });

                    case 10:
                      validSet = new Set(valid.map(function (i) {
                        return String(i.creator_oec_id);
                      }));
                      invalidSet = new Set(currentSlice.map(function (i) {
                        return i === null || i === void 0 ? void 0 : i.creator_oec_id;
                      }).filter(Boolean).map(String).filter(function (id) {
                        return !validSet.has(id);
                      }));
                      nextCandidates = collected.filter(function (_ref7) {
                        var cid = _ref7.creator_oec_id;
                        var key = String(cid || '');
                        return cid && !validSet.has(key) && !invalidSet.has(key);
                      });
                      collected.length = 0;
                      valid.forEach(function (i) {
                        return collected.push(i);
                      });
                      nextCandidates.forEach(function (i) {
                        return collected.push(i);
                      }); // 获取下一页达人列表，直至收集的数量超过 inviteNum 或 没有下一页 或 超过最大循环限制

                    case 16:
                      if (!(has_more && curPage <= MAX_LOOP && collected.length < inviteNum)) {
                        _context4.next = 32;
                        break;
                      }

                      _context4.next = 19;
                      return fetchCreatorPage(task, curPage);

                    case 19:
                      _yield$fetchCreatorPa2 = _context4.sent;
                      _code = _yield$fetchCreatorPa2.code;
                      _profileList = _yield$fetchCreatorPa2.profileList;
                      _connectList = _yield$fetchCreatorPa2.connectList;
                      _nextHasMore = _yield$fetchCreatorPa2.has_more;

                      if (!(_code !== 0)) {
                        _context4.next = 27;
                        break;
                      }

                      // 失败缓存，下次直接从该页开始
                      task.resCache.data = {
                        curPage: curPage,
                        collected: collected,
                        search_key: search_key
                      };
                      return _context4.abrupt("return", {
                        v: {
                          code: 1,
                          msg: task.msg
                        }
                      });

                    case 27:
                      pushCreators(_profileList || [], _connectList || [], inviteNum);
                      has_more = _nextHasMore;
                      curPage++; // await delayed(100)

                      _context4.next = 16;
                      break;

                    case 32:
                      if (!(!has_more && collected.length < inviteNum)) {
                        _context4.next = 34;
                        break;
                      }

                      return _context4.abrupt("return", {
                        v: {
                          code: 0,
                          msg: task.msg || '达人数量不足，已返回可用列表',
                          data: {
                            curPage: curPage,
                            collected: collected,
                            search_key: search_key
                          },
                          result: {
                            list: collected
                          }
                        }
                      });

                    case 34:
                    case "end":
                      return _context4.stop();
                  }
                }
              }, _loop);
            });

          case 36:
            if (!(loopGuard < MAX_LOOP)) {
              _context5.next = 43;
              break;
            }

            return _context5.delegateYield(_loop(), "t0", 38);

          case 38:
            _ret = _context5.t0;

            if (!(getCreators_typeof(_ret) === "object")) {
              _context5.next = 41;
              break;
            }

            return _context5.abrupt("return", _ret.v);

          case 41:
            _context5.next = 36;
            break;

          case 43:
            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg || '获取达人失败，超过最大循环次数'
            });

          case 44:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee4);
  }));
  return _getCreators.apply(this, arguments);
}
// EXTERNAL MODULE: ./src/platform/mercado/index.js
var mercado = __webpack_require__("e38f");

// CONCATENATED MODULE: ./src/platform/mercado/constants/pagoReportParams.js
// 跨境
// export const cbPagoSettingsParams = {
//   source: 'local',
//   settings: null,
//   previousSettings: {
//     columns: {
//       groups: [
//         {
//           mainOption: {
//             id: 'date_all',
//             title: 'Dates',
//             subOptions: [
//               { id: 'DATE', title: 'Release date' },
//               { id: 'TRANSACTION_APPROVAL_DATE', title: 'Transaction approval date' }
//             ]
//           }
//         },
//         {
//           mainOption: {
//             id: 'operation_all',
//             title: 'Operation data',
//             subOptions: [
//               { id: 'SOURCE_ID', title: 'Source ID' },
//               { id: 'EXTERNAL_REFERENCE', title: 'SKU' },
//               { id: 'RECORD_TYPE', title: 'Register type' },
//               { id: 'DESCRIPTION', title: 'Description' },
//               { id: 'CURRENCY', title: 'Currency' },
//               { id: 'NET_CREDIT_AMOUNT', title: 'Net credit amount' },
//               { id: 'NET_DEBIT_AMOUNT', title: 'Net debit amount' },
//               { id: 'GROSS_AMOUNT', title: 'Gross amount' },
//               { id: 'MP_FEE_AMOUNT', title: 'MP fee amount' },
//               { id: 'FINANCING_FEE_AMOUNT', title: 'Financing fee amount' },
//               { id: 'SHIPPING_FEE_AMOUNT', title: 'Shipping fee' },
//               { id: 'TAXES_AMOUNT', title: 'Taxes amount' },
//               { id: 'COUPON_AMOUNT', title: 'Coupon amount' },
//               { id: 'INSTALLMENTS', title: 'Installments' },
//               { id: 'PAYMENT_METHOD', title: 'Payment method' },
//               { id: 'TAX_DETAIL', title: 'Tax detail' },
//               { id: 'TAX_AMOUNT_TELCO', title: 'Tax amount telco' },
//               { id: 'TAXES_DISAGGREGATED', title: 'Taxes disaggregated' },
//               { id: 'EFFECTIVE_COUPON_AMOUNT', title: 'Effective coupon amount' },
//               { id: 'METADATA', title: 'Additional details' },
//               { id: 'SELLER_AMOUNT', title: 'Amount received for split payment purchases' },
//               { id: 'CARD_INITIAL_NUMBER', title: 'Your buyer’s card' },
//               { id: 'OPERATION_TAGS', title: 'Transaction labels' },
//               { id: 'ITEM_ID', title: 'Product identifier' },
//               { id: 'BUSINESS_UNIT', title: 'Sales channel' },
//               { id: 'SUB_UNIT', title: 'Payment platform' },
//               { id: 'BALANCE_AMOUNT', title: 'Balance' },
//               { id: 'PAYOUT_BANK_ACCOUNT_NUMBER', title: 'Payout bank account number' },
//               { id: 'PRODUCT_SKU', title: 'Product SKU' },
//               { id: 'SALE_DETAIL', title: 'Order details' },
//               { id: 'TRANSACTION_INTENT_ID', title: 'Transaction intent ID' },
//               { id: 'FRANCHISE', title: 'Franchise' },
//               { id: 'LAST_FOUR_DIGITS', title: 'Last 4 digits' },
//               { id: 'ORDER_MP', title: 'Request ID', isNewOption: true },
//               { id: 'PAYMENT_METHOD_TYPE', title: 'Type of payment', isNewOption: true },
//               { id: 'AVK_ID', title: 'Interbank CLABE number', isNewOption: true },
//               { id: 'PURCHASE_ID', title: 'Purchase ID', isNewOption: true },
//               { id: 'ISSUER_NAME', title: 'Issuer name', isNewOption: true }
//             ]
//           }
//         },
//         {
//           mainOption: {
//             id: 'store_all',
//             title: 'Cash register and Stores details',
//             subOptions: [
//               { id: 'POS_ID', title: 'POS ID' },
//               { id: 'POS_NAME', title: 'Cash register name' },
//               { id: 'EXTERNAL_POS_ID', title: 'Cash register ID set by the user' },
//               { id: 'STORE_ID', title: 'Store ID' },
//               { id: 'STORE_NAME', title: 'Store name' },
//               { id: 'EXTERNAL_STORE_ID', title: 'External store ID' },
//               { id: 'POI_ID', title: 'POI ID' }
//             ]
//           }
//         },
//         {
//           mainOption: {
//             id: 'shipping_all',
//             title: 'Shipment data',
//             subOptions: [
//               { id: 'SHIPPING_ID', title: 'Shipping ID' },
//               { id: 'SHIPMENT_MODE', title: 'Shipping mode' },
//               { id: 'ORDER_ID', title: 'Order ID' },
//               { id: 'PACK_ID', title: 'Pack ID' },
//               { id: 'SHIPPING_ORDER_ID', title: 'Shipment linking ID', isNewOption: true }
//             ]
//           }
//         },
//         {
//           mainOption: {
//             id: 'qr_interop',
//             title: 'Details from other digital wallets and banks',
//             subOptions: [
//               { id: 'POI_WALLET_NAME', title: 'Digital wallet' },
//               { id: 'POI_BANK_NAME', title: 'Bank of origin' }
//             ],
//             tooltipInfo: {
//               linkURL: '',
//               linkText: 'Alerta: Wording no definido',
//               description: 'By selecting these fields you can view in your report which digital wallet or bank your clients use to pay purchases made with a QR code.'
//             }
//           }
//         }
//       ],
//       selected: ['DATE', 'ORDER_ID', 'SHIPPING_ID', 'SOURCE_ID', 'EXTERNAL_REFERENCE', 'RECORD_TYPE', 'DESCRIPTION', 'NET_CREDIT_AMOUNT', 'NET_DEBIT_AMOUNT', 'GROSS_AMOUNT', 'MP_FEE_AMOUNT', 'SHIPPING_FEE_AMOUNT', 'CURRENCY', 'ITEM_ID', 'PACK_ID']
//     },
//     separators: ';',
//     // fileName: 'release-2542362139',
//     fileName: '',
//     displayTimezone: 'GMT-04',
//     displayLanguage: 'en',
//     reportLanguage: 'en',
//     headerLanguage: 'en',
//     isLegacyTranslation: false,
//     countryUserLanguage: 'en',
//     selectedReportLanguage: 'en',
//     advancedSettings: {
//       groups: [
//         {
//           mainOption: {
//             id: 'additional_rows',
//             subOptions: [
//               {
//                 showOption: true,
//                 id: 'check_available_balance',
//                 title: 'Available balance before and after a cash withdrawal',
//                 description: 'Adds two new rows to the report with the available balance before and after a withdrawal.',
//                 shouldValidateNLedger: false,
//                 showKeyName: true,
//                 isNewOption: false
//               },
//               {
//                 showOption: true,
//                 id: 'unite_reserve',
//                 title: 'Hide compensated reserve transactions',
//                 description: 'Marking this option will hide the transactions that show when your money was reserved and released within the period of the requested report.',
//                 shouldValidateNLedger: false,
//                 showKeyName: true,
//                 isNewOption: true
//               },
//               {
//                 showOption: true,
//                 id: 'visible_zero_releases',
//                 title: 'Show releases at zero',
//                 description: 'By selecting this option, the transactions with a zero balance will be displayed, corresponding to cancelled orders or payments.',
//                 shouldValidateNLedger: false,
//                 showKeyName: true,
//                 isNewOption: true
//               }
//             ]
//           }
//         }
//       ],
//       selected: []
//     },
//     ftp: null,
//     webhook: null
//   },
//   sellerId: '',
//   tonicUsername: ''
// }
// 跨境
var cbPagoSettingsParams = {
  source: 'local',
  settings: {
    columns: ['DATE', 'TRANSACTION_APPROVAL_DATE', 'SOURCE_ID', 'EXTERNAL_REFERENCE', 'RECORD_TYPE', 'DESCRIPTION', 'CURRENCY', 'NET_CREDIT_AMOUNT', 'NET_DEBIT_AMOUNT', 'GROSS_AMOUNT', 'MP_FEE_AMOUNT', 'FINANCING_FEE_AMOUNT', 'SHIPPING_FEE_AMOUNT', 'TAXES_AMOUNT', 'COUPON_AMOUNT', 'INSTALLMENTS', 'PAYMENT_METHOD', 'TAX_DETAIL', 'TAX_AMOUNT_TELCO', 'TAXES_DISAGGREGATED', 'EFFECTIVE_COUPON_AMOUNT', 'METADATA', 'SELLER_AMOUNT', 'CARD_INITIAL_NUMBER', 'OPERATION_TAGS', 'ITEM_ID', 'BUSINESS_UNIT', 'SUB_UNIT', 'BALANCE_AMOUNT', 'PAYOUT_BANK_ACCOUNT_NUMBER', 'PRODUCT_SKU', 'SALE_DETAIL', 'TRANSACTION_INTENT_ID', 'FRANCHISE', 'LAST_FOUR_DIGITS', 'ORDER_MP', 'PAYMENT_METHOD_TYPE', 'PURCHASE_ID', 'ISSUER_NAME', 'EXTERNAL_POS_ID', 'STORE_ID', 'STORE_NAME', 'EXTERNAL_STORE_ID', 'POI_ID', 'SHIPPING_ID', 'SHIPMENT_MODE', 'ORDER_ID', 'PACK_ID', 'SHIPPING_ORDER_ID', 'POI_WALLET_NAME', 'POI_BANK_NAME'],
    groups: ['check_available_balance', 'unite_reserve', 'visible_zero_releases'],
    fileConfig: {},
    is_legacy_translation: false,
    country_user_language: 'en',
    selected_report_language: 'en'
  },
  previousSettings: {
    columns: {
      groups: [{
        mainOption: {
          id: 'date_all',
          title: 'Dates',
          subOptions: [{
            id: 'DATE',
            title: 'Release date'
          }, {
            id: 'TRANSACTION_APPROVAL_DATE',
            title: 'Transaction approval date'
          }]
        }
      }, {
        mainOption: {
          id: 'operation_all',
          title: 'Operation data',
          subOptions: [{
            id: 'SOURCE_ID',
            title: 'Source ID'
          }, {
            id: 'EXTERNAL_REFERENCE',
            title: 'SKU'
          }, {
            id: 'RECORD_TYPE',
            title: 'Register type'
          }, {
            id: 'DESCRIPTION',
            title: 'Description'
          }, {
            id: 'CURRENCY',
            title: 'Currency'
          }, {
            id: 'NET_CREDIT_AMOUNT',
            title: 'Net credit amount'
          }, {
            id: 'NET_DEBIT_AMOUNT',
            title: 'Net debit amount'
          }, {
            id: 'GROSS_AMOUNT',
            title: 'Gross amount'
          }, {
            id: 'MP_FEE_AMOUNT',
            title: 'MP fee amount'
          }, {
            id: 'FINANCING_FEE_AMOUNT',
            title: 'Financing fee amount'
          }, {
            id: 'SHIPPING_FEE_AMOUNT',
            title: 'Shipping fee'
          }, {
            id: 'TAXES_AMOUNT',
            title: 'Taxes amount'
          }, {
            id: 'COUPON_AMOUNT',
            title: 'Coupon amount'
          }, {
            id: 'INSTALLMENTS',
            title: 'Installments'
          }, {
            id: 'PAYMENT_METHOD',
            title: 'Payment method'
          }, {
            id: 'TAX_DETAIL',
            title: 'Tax detail'
          }, {
            id: 'TAX_AMOUNT_TELCO',
            title: 'Tax amount telco'
          }, {
            id: 'TAXES_DISAGGREGATED',
            title: 'Taxes disaggregated'
          }, {
            id: 'EFFECTIVE_COUPON_AMOUNT',
            title: 'Effective coupon amount'
          }, {
            id: 'METADATA',
            title: 'Additional details'
          }, {
            id: 'SELLER_AMOUNT',
            title: 'Amount received for split payment purchases'
          }, {
            id: 'CARD_INITIAL_NUMBER',
            title: 'Your buyer’s card'
          }, {
            id: 'OPERATION_TAGS',
            title: 'Transaction labels'
          }, {
            id: 'ITEM_ID',
            title: 'Product identifier'
          }, {
            id: 'BUSINESS_UNIT',
            title: 'Sales channel'
          }, {
            id: 'SUB_UNIT',
            title: 'Payment platform'
          }, {
            id: 'BALANCE_AMOUNT',
            title: 'Balance'
          }, {
            id: 'PAYOUT_BANK_ACCOUNT_NUMBER',
            title: 'Payout bank account number'
          }, {
            id: 'PRODUCT_SKU',
            title: 'Product SKU'
          }, {
            id: 'SALE_DETAIL',
            title: 'Order details'
          }, {
            id: 'TRANSACTION_INTENT_ID',
            title: 'Transaction intent ID'
          }, {
            id: 'FRANCHISE',
            title: 'Franchise'
          }, {
            id: 'LAST_FOUR_DIGITS',
            title: 'Last 4 digits'
          }, {
            id: 'ORDER_MP',
            title: 'Request ID',
            isNewOption: true
          }, {
            id: 'PAYMENT_METHOD_TYPE',
            title: 'Type of payment',
            isNewOption: true
          }, {
            id: 'AVK_ID',
            title: 'Interbank CLABE number',
            isNewOption: true
          }, {
            id: 'PURCHASE_ID',
            title: 'Purchase ID',
            isNewOption: true
          }, {
            id: 'ISSUER_NAME',
            title: 'Issuer name',
            isNewOption: true
          }]
        }
      }, {
        mainOption: {
          id: 'store_all',
          title: 'Cash register and Stores details',
          subOptions: [{
            id: 'EXTERNAL_POS_ID',
            title: 'Cash register ID set by the user'
          }, {
            id: 'STORE_ID',
            title: 'Store ID'
          }, {
            id: 'STORE_NAME',
            title: 'Store name'
          }, {
            id: 'EXTERNAL_STORE_ID',
            title: 'External store ID'
          }, {
            id: 'POI_ID',
            title: 'POI ID'
          }]
        }
      }, {
        mainOption: {
          id: 'shipping_all',
          title: 'Shipment data',
          subOptions: [{
            id: 'SHIPPING_ID',
            title: 'Shipping ID'
          }, {
            id: 'SHIPMENT_MODE',
            title: 'Shipping mode'
          }, {
            id: 'ORDER_ID',
            title: 'Order ID'
          }, {
            id: 'PACK_ID',
            title: 'Pack ID'
          }, {
            id: 'SHIPPING_ORDER_ID',
            title: 'Shipment linking ID',
            isNewOption: true
          }]
        }
      }, {
        mainOption: {
          id: 'qr_interop',
          title: 'Details from other digital wallets and banks',
          subOptions: [{
            id: 'POI_WALLET_NAME',
            title: 'Digital wallet'
          }, {
            id: 'POI_BANK_NAME',
            title: 'Bank of origin'
          }],
          tooltipInfo: {
            linkURL: '',
            linkText: 'Alerta: Wording no definido',
            description: 'By selecting these fields you can view in your report which digital wallet or bank your clients use to pay purchases made with a QR code.'
          }
        }
      }],
      selected: ['DATE', 'TRANSACTION_APPROVAL_DATE', 'SOURCE_ID', 'EXTERNAL_REFERENCE', 'RECORD_TYPE', 'DESCRIPTION', 'CURRENCY', 'NET_CREDIT_AMOUNT', 'NET_DEBIT_AMOUNT', 'GROSS_AMOUNT', 'MP_FEE_AMOUNT', 'FINANCING_FEE_AMOUNT', 'SHIPPING_FEE_AMOUNT', 'TAXES_AMOUNT', 'COUPON_AMOUNT', 'INSTALLMENTS', 'PAYMENT_METHOD', 'TAX_DETAIL', 'TAX_AMOUNT_TELCO', 'TAXES_DISAGGREGATED', 'EFFECTIVE_COUPON_AMOUNT', 'METADATA', 'SELLER_AMOUNT', 'CARD_INITIAL_NUMBER', 'OPERATION_TAGS', 'ITEM_ID', 'BUSINESS_UNIT', 'SUB_UNIT', 'BALANCE_AMOUNT', 'PAYOUT_BANK_ACCOUNT_NUMBER', 'PRODUCT_SKU', 'SALE_DETAIL', 'TRANSACTION_INTENT_ID', 'FRANCHISE', 'LAST_FOUR_DIGITS', 'ORDER_MP', 'PAYMENT_METHOD_TYPE', 'PURCHASE_ID', 'EXTERNAL_POS_ID', 'STORE_ID', 'STORE_NAME', 'EXTERNAL_STORE_ID', 'POI_ID', 'SHIPPING_ID', 'SHIPMENT_MODE', 'ORDER_ID', 'PACK_ID', 'SHIPPING_ORDER_ID', 'POI_WALLET_NAME', 'POI_BANK_NAME']
    },
    separators: ';',
    // fileName: 'release-2715149713',
    fileName: '',
    displayTimezone: 'GMT-04',
    displayLanguage: 'en',
    reportLanguage: 'en',
    headerLanguage: 'en',
    isLegacyTranslation: false,
    countryUserLanguage: 'en',
    selectedReportLanguage: 'en',
    advancedSettings: {
      groups: [{
        mainOption: {
          id: 'additional_rows',
          subOptions: [{
            showOption: true,
            id: 'check_available_balance',
            title: 'Available balance before and after a cash withdrawal',
            description: 'Adds two new rows to the report with the available balance before and after a withdrawal.',
            shouldValidateNLedger: false,
            showKeyName: true,
            isNewOption: false
          }, {
            showOption: true,
            id: 'unite_reserve',
            title: 'Hide compensated reserve transactions',
            description: 'Marking this option will hide the transactions that show when your money was reserved and released within the period of the requested report.',
            shouldValidateNLedger: false,
            showKeyName: true,
            isNewOption: true
          }, {
            showOption: true,
            id: 'visible_zero_releases',
            title: 'Show releases at zero',
            description: 'By selecting this option, the transactions with a zero balance will be displayed, corresponding to cancelled orders or payments.',
            shouldValidateNLedger: false,
            showKeyName: true,
            isNewOption: true
          }]
        }
      }],
      selected: []
    },
    ftp: null,
    webhook: null
  },
  sellerId: '',
  tonicUsername: ''
}; // 跨境-哥伦比亚

var cbPagoSettingsParamsColombia = {
  source: 'local',
  settings: {
    editableColumns: [{
      id: 'DATE',
      order: 1,
      alias: ''
    }, {
      id: 'TRANSACTION_APPROVAL_DATE',
      order: 2,
      alias: ''
    }, {
      id: 'SOURCE_ID',
      order: 3,
      alias: ''
    }, {
      id: 'EXTERNAL_REFERENCE',
      order: 4,
      alias: ''
    }, {
      id: 'RECORD_TYPE',
      order: 5,
      alias: ''
    }, {
      id: 'DESCRIPTION',
      order: 6,
      alias: ''
    }, {
      id: 'CURRENCY',
      order: 7,
      alias: ''
    }, {
      id: 'NET_CREDIT_AMOUNT',
      order: 8,
      alias: ''
    }, {
      id: 'NET_DEBIT_AMOUNT',
      order: 9,
      alias: ''
    }, {
      id: 'GROSS_AMOUNT',
      order: 10,
      alias: ''
    }, {
      id: 'MP_FEE_AMOUNT',
      order: 11,
      alias: ''
    }, {
      id: 'FINANCING_FEE_AMOUNT',
      order: 12,
      alias: ''
    }, {
      id: 'SHIPPING_FEE_AMOUNT',
      order: 13,
      alias: ''
    }, {
      id: 'TAXES_AMOUNT',
      order: 14,
      alias: ''
    }, {
      id: 'COUPON_AMOUNT',
      order: 15,
      alias: ''
    }, {
      id: 'INSTALLMENTS',
      order: 16,
      alias: ''
    }, {
      id: 'PAYMENT_METHOD',
      order: 17,
      alias: ''
    }, {
      id: 'TAX_DETAIL',
      order: 18,
      alias: ''
    }, {
      id: 'TAX_AMOUNT_TELCO',
      order: 19,
      alias: ''
    }, {
      id: 'TAXES_DISAGGREGATED',
      order: 20,
      alias: ''
    }, {
      id: 'EFFECTIVE_COUPON_AMOUNT',
      order: 21,
      alias: ''
    }, {
      id: 'METADATA',
      order: 22,
      alias: ''
    }, {
      id: 'SELLER_AMOUNT',
      order: 23,
      alias: ''
    }, {
      id: 'CARD_INITIAL_NUMBER',
      order: 24,
      alias: ''
    }, {
      id: 'OPERATION_TAGS',
      order: 25,
      alias: ''
    }, {
      id: 'ITEM_ID',
      order: 26,
      alias: ''
    }, {
      id: 'BUSINESS_UNIT',
      order: 27,
      alias: ''
    }, {
      id: 'SUB_UNIT',
      order: 28,
      alias: ''
    }, {
      id: 'BALANCE_AMOUNT',
      order: 29,
      alias: ''
    }, {
      id: 'PAYOUT_BANK_ACCOUNT_NUMBER',
      order: 30,
      alias: ''
    }, {
      id: 'PRODUCT_SKU',
      order: 31,
      alias: ''
    }, {
      id: 'SALE_DETAIL',
      order: 32,
      alias: ''
    }, {
      id: 'TRANSACTION_INTENT_ID',
      order: 33,
      alias: ''
    }, {
      id: 'FRANCHISE',
      order: 34,
      alias: ''
    }, {
      id: 'LAST_FOUR_DIGITS',
      order: 35,
      alias: ''
    }, {
      id: 'ORDER_MP',
      order: 36,
      alias: ''
    }, {
      id: 'PAYMENT_METHOD_TYPE',
      order: 37,
      alias: ''
    }, {
      id: 'POS_ID',
      order: 38,
      alias: ''
    }, {
      id: 'POS_NAME',
      order: 39,
      alias: ''
    }, {
      id: 'EXTERNAL_POS_ID',
      order: 40,
      alias: ''
    }, {
      id: 'STORE_ID',
      order: 41,
      alias: ''
    }, {
      id: 'STORE_NAME',
      order: 42,
      alias: ''
    }, {
      id: 'EXTERNAL_STORE_ID',
      order: 43,
      alias: ''
    }, {
      id: 'POI_ID',
      order: 44,
      alias: ''
    }, {
      id: 'SHIPPING_ID',
      order: 45,
      alias: ''
    }, {
      id: 'SHIPMENT_MODE',
      order: 46,
      alias: ''
    }, {
      id: 'ORDER_ID',
      order: 47,
      alias: ''
    }, {
      id: 'PACK_ID',
      order: 48,
      alias: ''
    }, {
      id: 'POI_WALLET_NAME',
      order: 49,
      alias: ''
    }, {
      id: 'POI_BANK_NAME',
      order: 50,
      alias: ''
    }, {
      id: 'PURCHASE_ID',
      order: 51,
      alias: ''
    }, {
      id: 'SHIPPING_ORDER_ID',
      order: 52,
      alias: ''
    }, {
      id: 'ISSUER_NAME',
      order: 53,
      alias: ''
    }],
    groups: ['check_available_balance', 'compensate_detail', 'unite_reserve', 'visible_zero_releases'],
    fileConfig: {},
    is_legacy_translation: true,
    country_user_language: 'en',
    selected_report_language: 'en',
    selected_header_language: 'en'
  },
  previousSettings: {
    columns: {
      sections: [{
        id: 'DATE',
        title: 'Release date',
        key: 'DATE',
        alias: '',
        checked: true,
        order: 1
      }, {
        id: 'TRANSACTION_APPROVAL_DATE',
        title: 'Transaction approval date',
        key: 'TRANSACTION_APPROVAL_DATE',
        alias: '',
        checked: true,
        order: 2
      }, {
        id: 'SOURCE_ID',
        title: 'Source ID',
        key: 'SOURCE_ID',
        alias: '',
        checked: true,
        order: 3
      }, {
        id: 'EXTERNAL_REFERENCE',
        title: 'SKU',
        key: 'EXTERNAL_REFERENCE',
        alias: '',
        checked: true,
        order: 4
      }, {
        id: 'RECORD_TYPE',
        title: 'Register type',
        key: 'RECORD_TYPE',
        alias: '',
        checked: true,
        order: 5
      }, {
        id: 'DESCRIPTION',
        title: 'Description',
        key: 'DESCRIPTION',
        alias: '',
        checked: true,
        order: 6
      }, {
        id: 'CURRENCY',
        title: 'Currency',
        key: 'CURRENCY',
        alias: '',
        checked: true,
        order: 7
      }, {
        id: 'NET_CREDIT_AMOUNT',
        title: 'Net credit amount',
        key: 'NET_CREDIT_AMOUNT',
        alias: '',
        checked: true,
        order: 8
      }, {
        id: 'NET_DEBIT_AMOUNT',
        title: 'Net debit amount',
        key: 'NET_DEBIT_AMOUNT',
        alias: '',
        checked: true,
        order: 9
      }, {
        id: 'GROSS_AMOUNT',
        title: 'Gross amount',
        key: 'GROSS_AMOUNT',
        alias: '',
        checked: true,
        order: 10
      }, {
        id: 'MP_FEE_AMOUNT',
        title: 'MP fee amount',
        key: 'MP_FEE_AMOUNT',
        alias: '',
        checked: true,
        order: 11
      }, {
        id: 'FINANCING_FEE_AMOUNT',
        title: 'Financing fee amount',
        key: 'FINANCING_FEE_AMOUNT',
        alias: '',
        checked: true,
        order: 12
      }, {
        id: 'SHIPPING_FEE_AMOUNT',
        title: 'Shipping fee',
        key: 'SHIPPING_FEE_AMOUNT',
        alias: '',
        checked: true,
        order: 13
      }, {
        id: 'TAXES_AMOUNT',
        title: 'Taxes on IIBB withholdings',
        key: 'TAXES_AMOUNT',
        alias: '',
        checked: true,
        order: 14
      }, {
        id: 'COUPON_AMOUNT',
        title: 'Coupon amount',
        key: 'COUPON_AMOUNT',
        alias: '',
        checked: true,
        order: 15
      }, {
        id: 'INSTALLMENTS',
        title: 'Installments',
        key: 'INSTALLMENTS',
        alias: '',
        checked: true,
        order: 16
      }, {
        id: 'PAYMENT_METHOD',
        title: 'Payment method',
        key: 'PAYMENT_METHOD',
        alias: '',
        checked: true,
        order: 17
      }, {
        id: 'TAX_DETAIL',
        title: 'Tax detail',
        key: 'TAX_DETAIL',
        alias: '',
        checked: true,
        order: 18
      }, {
        id: 'TAX_AMOUNT_TELCO',
        title: 'Tax amount telco',
        key: 'TAX_AMOUNT_TELCO',
        alias: '',
        checked: true,
        order: 19
      }, {
        id: 'TAXES_DISAGGREGATED',
        title: 'Taxes disaggregated',
        key: 'TAXES_DISAGGREGATED',
        alias: '',
        checked: true,
        order: 20
      }, {
        id: 'EFFECTIVE_COUPON_AMOUNT',
        title: 'Effective coupon amount',
        key: 'EFFECTIVE_COUPON_AMOUNT',
        alias: '',
        checked: true,
        order: 21
      }, {
        id: 'METADATA',
        title: 'Additional details',
        key: 'METADATA',
        alias: '',
        checked: true,
        order: 22
      }, {
        id: 'SELLER_AMOUNT',
        title: 'Amount received for split payment purchases',
        key: 'SELLER_AMOUNT',
        alias: '',
        checked: true,
        order: 23
      }, {
        id: 'CARD_INITIAL_NUMBER',
        title: 'Your buyer’s card',
        key: 'CARD_INITIAL_NUMBER',
        alias: '',
        checked: true,
        order: 24
      }, {
        id: 'OPERATION_TAGS',
        title: 'Transaction labels',
        key: 'OPERATION_TAGS',
        alias: '',
        checked: true,
        order: 25
      }, {
        id: 'ITEM_ID',
        title: 'Product identifier',
        key: 'ITEM_ID',
        alias: '',
        checked: true,
        order: 26
      }, {
        id: 'BUSINESS_UNIT',
        title: 'Sales channel',
        key: 'BUSINESS_UNIT',
        alias: '',
        checked: true,
        order: 27
      }, {
        id: 'SUB_UNIT',
        title: 'Payment platform',
        key: 'SUB_UNIT',
        alias: '',
        checked: true,
        order: 28
      }, {
        id: 'BALANCE_AMOUNT',
        title: 'Balance',
        key: 'BALANCE_AMOUNT',
        alias: '',
        checked: true,
        order: 29
      }, {
        id: 'PAYOUT_BANK_ACCOUNT_NUMBER',
        title: 'Payout bank account number',
        key: 'PAYOUT_BANK_ACCOUNT_NUMBER',
        alias: '',
        checked: true,
        order: 30
      }, {
        id: 'PRODUCT_SKU',
        title: 'Product SKU',
        key: 'PRODUCT_SKU',
        alias: '',
        checked: true,
        order: 31
      }, {
        id: 'SALE_DETAIL',
        title: 'Order details',
        key: 'SALE_DETAIL',
        alias: '',
        checked: true,
        order: 32
      }, {
        id: 'TRANSACTION_INTENT_ID',
        title: 'Transaction intent ID',
        key: 'TRANSACTION_INTENT_ID',
        alias: '',
        checked: true,
        order: 33
      }, {
        id: 'FRANCHISE',
        title: 'Franchise',
        key: 'FRANCHISE',
        alias: '',
        checked: true,
        order: 34
      }, {
        id: 'LAST_FOUR_DIGITS',
        title: 'Last 4 digits',
        key: 'LAST_FOUR_DIGITS',
        alias: '',
        checked: true,
        order: 35
      }, {
        id: 'ORDER_MP',
        title: 'Request ID',
        key: 'ORDER_MP',
        alias: '',
        checked: true,
        order: 36
      }, {
        id: 'PAYMENT_METHOD_TYPE',
        title: 'Type of payment',
        key: 'PAYMENT_METHOD_TYPE',
        alias: '',
        checked: true,
        order: 37
      }, {
        id: 'POS_ID',
        title: 'POS ID',
        key: 'POS_ID',
        alias: '',
        checked: true,
        order: 38
      }, {
        id: 'POS_NAME',
        title: 'Cash register name',
        key: 'POS_NAME',
        alias: '',
        checked: true,
        order: 39
      }, {
        id: 'EXTERNAL_POS_ID',
        title: 'Cash register ID set by the user',
        key: 'EXTERNAL_POS_ID',
        alias: '',
        checked: true,
        order: 40
      }, {
        id: 'STORE_ID',
        title: 'Store ID',
        key: 'STORE_ID',
        alias: '',
        checked: true,
        order: 41
      }, {
        id: 'STORE_NAME',
        title: 'Store name',
        key: 'STORE_NAME',
        alias: '',
        checked: true,
        order: 42
      }, {
        id: 'EXTERNAL_STORE_ID',
        title: 'External store ID',
        key: 'EXTERNAL_STORE_ID',
        alias: '',
        checked: true,
        order: 43
      }, {
        id: 'POI_ID',
        title: 'POI ID',
        key: 'POI_ID',
        alias: '',
        checked: true,
        order: 44
      }, {
        id: 'SHIPPING_ID',
        title: 'Shipping ID',
        key: 'SHIPPING_ID',
        alias: '',
        checked: true,
        order: 45
      }, {
        id: 'SHIPMENT_MODE',
        title: 'Shipping mode',
        key: 'SHIPMENT_MODE',
        alias: '',
        checked: true,
        order: 46
      }, {
        id: 'ORDER_ID',
        title: 'Order ID',
        key: 'ORDER_ID',
        alias: '',
        checked: true,
        order: 47
      }, {
        id: 'PACK_ID',
        title: 'Pack ID',
        key: 'PACK_ID',
        alias: '',
        checked: true,
        order: 48
      }, {
        id: 'POI_WALLET_NAME',
        title: 'Digital wallet',
        key: 'POI_WALLET_NAME',
        alias: '',
        checked: true,
        order: 49
      }, {
        id: 'POI_BANK_NAME',
        title: 'Bank of origin',
        key: 'POI_BANK_NAME',
        alias: '',
        checked: true,
        order: 50
      }, {
        id: 'PURCHASE_ID',
        title: 'Purchase ID',
        key: 'PURCHASE_ID',
        alias: '',
        checked: true,
        order: 51
      }, {
        id: 'SHIPPING_ORDER_ID',
        title: 'Shipment linking ID',
        key: 'SHIPPING_ORDER_ID',
        alias: '',
        checked: true,
        order: 52
      }, {
        id: 'ISSUER_NAME',
        title: 'Issuer name',
        key: 'ISSUER_NAME',
        alias: '',
        checked: true,
        order: 53
      }]
    },
    separators: ';',
    // fileName: 'release-2507950668',
    displayTimezone: 'GMT-04',
    displayLanguage: 'en',
    reportLanguage: 'en',
    headerLanguage: 'en',
    isLegacyTranslation: true,
    countryUserLanguage: 'en',
    selectedReportLanguage: 'en',
    selectedHeaderLanguage: 'en',
    advancedSettings: {
      groups: [{
        mainOption: {
          id: 'additional_rows',
          subOptions: [{
            showOption: true,
            id: 'check_available_balance',
            title: 'Available balance before and after a cash withdrawal',
            description: 'Adds two new rows to the report with the available balance before and after a withdrawal.',
            shouldValidateNLedger: false,
            showKeyName: true,
            isNewOption: false
          }, {
            showOption: true,
            id: 'compensate_detail',
            title: 'Compensated transactions',
            description: 'Includes blocking and unblocking transactions that offset each other (Credit - Debit = 0) in a range of dates.',
            shouldValidateNLedger: true,
            showKeyName: true,
            isNewOption: false
          }, {
            showOption: true,
            id: 'unite_reserve',
            title: 'Hide compensated reserve transactions',
            description: 'Marking this option will hide the transactions that show when your money was reserved and released within the period of the requested report.',
            shouldValidateNLedger: false,
            showKeyName: true,
            isNewOption: true
          }, {
            showOption: true,
            id: 'visible_zero_releases',
            title: 'Show releases at zero',
            description: 'By selecting this option, the transactions with a zero balance will be displayed, corresponding to cancelled orders or payments.',
            shouldValidateNLedger: false,
            showKeyName: true,
            isNewOption: true
          }]
        }
      }],
      selected: []
    },
    ftp: {
      server: '',
      port: '',
      path: '',
      user: '',
      pass: ''
    },
    webhook: {
      url: '',
      password: ''
    }
  },
  sellerId: '',
  userId: '',
  tonicUsername: ''
}; // 本土

var LocalPagoSettingsParams = {
  source: "local",
  settings: {
    editableColumns: [{
      id: "DATE",
      order: 1,
      alias: ""
    }, {
      id: "TRANSACTION_APPROVAL_DATE",
      order: 2,
      alias: ""
    }, {
      id: "SOURCE_ID",
      order: 3,
      alias: ""
    }, {
      id: "DESCRIPTION",
      order: 4,
      alias: ""
    }, {
      id: "NET_CREDIT_AMOUNT",
      order: 5,
      alias: ""
    }, {
      id: "NET_DEBIT_AMOUNT",
      order: 6,
      alias: ""
    }, {
      id: "GROSS_AMOUNT",
      order: 7,
      alias: ""
    }, {
      id: "MP_FEE_AMOUNT",
      order: 8,
      alias: ""
    }, {
      id: "TAXES_AMOUNT",
      order: 9,
      alias: ""
    }, {
      id: "PAYMENT_METHOD",
      order: 10,
      alias: ""
    }, {
      id: "BUSINESS_UNIT",
      order: 11,
      alias: ""
    }, {
      id: "SUB_UNIT",
      order: 12,
      alias: ""
    }, {
      id: "BALANCE_AMOUNT",
      order: 13,
      alias: ""
    }, {
      id: "PAYMENT_METHOD_TYPE",
      order: 14,
      alias: ""
    }, {
      id: "PURCHASE_ID",
      order: 15,
      alias: ""
    }, {
      id: "ORDER_ID",
      order: 16,
      alias: ""
    }, {
      id: "PRODUCT_SKU",
      order: 17,
      alias: ""
    }, {
      id: "EXTERNAL_REFERENCE",
      order: 18
    }, {
      id: "CURRENCY",
      order: 19
    }, {
      id: "FINANCING_FEE_AMOUNT",
      order: 20
    }, {
      id: "RECORD_TYPE",
      order: 21
    }, {
      id: "SHIPPING_FEE_AMOUNT",
      order: 22
    }, {
      id: "COUPON_AMOUNT",
      order: 23
    }, {
      id: "INSTALLMENTS",
      order: 24
    }, {
      id: "TAX_DETAIL",
      order: 25
    }, {
      id: "TAX_AMOUNT_TELCO",
      order: 26
    }, {
      id: "TAXES_DISAGGREGATED",
      order: 27
    }, {
      id: "EFFECTIVE_COUPON_AMOUNT",
      order: 28
    }, {
      id: "METADATA",
      order: 29
    }, {
      id: "SELLER_AMOUNT",
      order: 30
    }, {
      id: "CARD_INITIAL_NUMBER",
      order: 31
    }, {
      id: "OPERATION_TAGS",
      order: 32
    }, {
      id: "ITEM_ID",
      order: 33
    }, {
      id: "PAYOUT_BANK_ACCOUNT_NUMBER",
      order: 34
    }, {
      id: "SALE_DETAIL",
      order: 35
    }, {
      id: "TRANSACTION_INTENT_ID",
      order: 36
    }, {
      id: "FRANCHISE",
      order: 37
    }, {
      id: "LAST_FOUR_DIGITS",
      order: 38
    }, {
      id: "ORDER_MP",
      order: 39
    }, {
      id: "POS_ID",
      order: 40
    }, {
      id: "POS_NAME",
      order: 41
    }, {
      id: "EXTERNAL_POS_ID",
      order: 42
    }, {
      id: "STORE_ID",
      order: 43
    }, {
      id: "STORE_NAME",
      order: 44
    }, {
      id: "EXTERNAL_STORE_ID",
      order: 45
    }, {
      id: "POI_ID",
      order: 46
    }, {
      id: "SHIPPING_ID",
      order: 47
    }, {
      id: "SHIPMENT_MODE",
      order: 48
    }, {
      id: "PACK_ID",
      order: 49
    }, {
      id: "POI_WALLET_NAME",
      order: 50
    }, {
      id: "POI_BANK_NAME",
      order: 51
    }, {
      id: "SHIPPING_ORDER_ID",
      order: 52
    }, {
      id: "ISSUER_NAME",
      order: 53
    }, {
      id: "COUNTRY_ISSUER",
      order: 54
    }],
    groups: ["check_available_balance", "compensate_detail", "unite_reserve", "visible_zero_releases"],
    fileConfig: {},
    is_legacy_translation: true,
    country_user_language: "en",
    selected_report_language: "en",
    selected_header_language: "en"
  },
  previousSettings: {
    columns: {
      sections: [{
        id: "DATE",
        title: "Data da liberação",
        key: "DATE",
        alias: "",
        order: 1,
        checked: true
      }, {
        id: "TRANSACTION_APPROVAL_DATE",
        title: "Data de aprovação",
        key: "TRANSACTION_APPROVAL_DATE",
        alias: "",
        order: 2,
        checked: true
      }, {
        id: "SOURCE_ID",
        title: "ID da operação no Mercado Pago",
        key: "SOURCE_ID",
        alias: "",
        order: 3,
        checked: true
      }, {
        id: "DESCRIPTION",
        title: "Descrição",
        key: "DESCRIPTION",
        alias: "",
        order: 4,
        checked: true
      }, {
        id: "NET_CREDIT_AMOUNT",
        title: "Valor líquido creditado",
        key: "NET_CREDIT_AMOUNT",
        alias: "",
        order: 5,
        checked: true
      }, {
        id: "NET_DEBIT_AMOUNT",
        title: "Valor líquido debitado",
        key: "NET_DEBIT_AMOUNT",
        alias: "",
        order: 6,
        checked: true
      }, {
        id: "GROSS_AMOUNT",
        title: "Valor bruto da operação",
        key: "GROSS_AMOUNT",
        alias: "",
        order: 7,
        checked: true
      }, {
        id: "MP_FEE_AMOUNT",
        title: "Tarifa do Mercado Pago ou do Mercado Livre",
        key: "MP_FEE_AMOUNT",
        alias: "",
        order: 8,
        checked: true
      }, {
        id: "TAXES_AMOUNT",
        title: "Impostos cobrados por retenções de IIBB",
        key: "TAXES_AMOUNT",
        alias: "",
        order: 9,
        checked: true
      }, {
        id: "PAYMENT_METHOD",
        title: "Meio de pagamento",
        key: "PAYMENT_METHOD",
        alias: "",
        order: 10,
        checked: true
      }, {
        id: "BUSINESS_UNIT",
        title: "Canal de venda",
        key: "BUSINESS_UNIT",
        alias: "",
        order: 11,
        checked: true
      }, {
        id: "SUB_UNIT",
        title: "Plataforma de pagamento",
        key: "SUB_UNIT",
        alias: "",
        order: 12,
        checked: true
      }, {
        id: "BALANCE_AMOUNT",
        title: "Saldo",
        key: "BALANCE_AMOUNT",
        alias: "",
        order: 13,
        checked: true
      }, {
        id: "PAYMENT_METHOD_TYPE",
        title: "Tipo de meio de pagamento",
        key: "PAYMENT_METHOD_TYPE",
        alias: "",
        order: 14,
        checked: true
      }, {
        id: "PURCHASE_ID",
        title: "ID da compra",
        key: "PURCHASE_ID",
        alias: "",
        order: 15,
        checked: true
      }, {
        id: "ORDER_ID",
        title: "ID do pedido",
        key: "ORDER_ID",
        alias: "",
        order: 16,
        checked: true
      }, {
        id: "PRODUCT_SKU",
        title: "Código SKU do produto",
        key: "PRODUCT_SKU",
        alias: "",
        order: 17,
        checked: true
      }, {
        id: "EXTERNAL_REFERENCE",
        title: "Código de referência",
        checked: false,
        order: 18
      }, {
        id: "RECORD_TYPE",
        title: "Tipo de registro",
        checked: false,
        order: 19
      }, {
        id: "CURRENCY",
        title: "Moeda",
        checked: false,
        order: 20
      }, {
        id: "FINANCING_FEE_AMOUNT",
        title: "Tarifa por oferecer parcelamento sem acréscimo",
        checked: false,
        order: 21
      }, {
        id: "SHIPPING_FEE_AMOUNT",
        title: "Custo de envio",
        checked: false,
        order: 22
      }, {
        id: "COUPON_AMOUNT",
        title: "Cupom de desconto",
        checked: false,
        order: 23
      }, {
        id: "INSTALLMENTS",
        title: "Parcelas",
        checked: false,
        order: 24
      }, {
        id: "TAX_DETAIL",
        title: "Detalhes dos impostos",
        checked: false,
        order: 25
      }, {
        id: "TAX_AMOUNT_TELCO",
        title: "Imposto descontado do valor bruto para telecomunicações",
        checked: false,
        order: 26
      }, {
        id: "TAXES_DISAGGREGATED",
        title: "Impostos desagregados",
        checked: false,
        order: 27
      }, {
        id: "EFFECTIVE_COUPON_AMOUNT",
        title: "Custo de oferecer desconto",
        checked: false,
        order: 28
      }, {
        id: "METADATA",
        title: "Dados adicionais",
        checked: false,
        order: 29
      }, {
        id: "SELLER_AMOUNT",
        title: "Valor recebido por compras com split de pagamento",
        checked: false,
        order: 30
      }, {
        id: "CARD_INITIAL_NUMBER",
        title: "Cartão do seu comprador",
        checked: false,
        order: 31
      }, {
        id: "OPERATION_TAGS",
        title: "Etiquetas da transação",
        checked: false,
        order: 32
      }, {
        id: "ITEM_ID",
        title: "Código do produto",
        checked: false,
        order: 33
      }, {
        id: "PAYOUT_BANK_ACCOUNT_NUMBER",
        title: "Conta de destino da retirada",
        checked: false,
        order: 34
      }, {
        id: "SALE_DETAIL",
        title: "Detalhe da venda",
        checked: false,
        order: 35
      }, {
        id: "TRANSACTION_INTENT_ID",
        title: "ID de tentativa de transação",
        checked: false,
        order: 36
      }, {
        id: "FRANCHISE",
        title: "Bandeira",
        checked: false,
        order: 37
      }, {
        id: "LAST_FOUR_DIGITS",
        title: "Últimos 4 dígitos",
        checked: false,
        order: 38
      }, {
        id: "ORDER_MP",
        title: "ID da solicitação",
        checked: false,
        order: 39
      }, {
        id: "POS_ID",
        title: "ID do caixa",
        checked: false,
        order: 40
      }, {
        id: "POS_NAME",
        title: "Nome do caixa",
        checked: false,
        order: 41
      }, {
        id: "EXTERNAL_POS_ID",
        title: "ID do caixa, definido pelo usuário",
        checked: false,
        order: 42
      }, {
        id: "STORE_ID",
        title: "ID da loja",
        checked: false,
        order: 43
      }, {
        id: "STORE_NAME",
        title: "Nome da loja",
        checked: false,
        order: 44
      }, {
        id: "EXTERNAL_STORE_ID",
        title: "ID da loja, definido pelo usuário",
        checked: false,
        order: 45
      }, {
        id: "POI_ID",
        title: "Número de série da maquininha (S/N)",
        checked: false,
        order: 46
      }, {
        id: "SHIPPING_ID",
        title: "ID do envio",
        checked: false,
        order: 47
      }, {
        id: "SHIPMENT_MODE",
        title: "Modalidade de Frete",
        checked: false,
        order: 48
      }, {
        id: "PACK_ID",
        title: "ID do pacote",
        checked: false,
        order: 49
      }, {
        id: "POI_WALLET_NAME",
        title: "Carteira digital",
        checked: false,
        order: 50
      }, {
        id: "POI_BANK_NAME",
        title: "Banco de origem",
        checked: false,
        order: 51
      }, {
        id: "SHIPPING_ORDER_ID",
        title: "ID de associação de envios",
        checked: false,
        order: 52
      }, {
        id: "ISSUER_NAME",
        title: "Nome do emissor",
        checked: false,
        order: 53
      }, {
        id: "COUNTRY_ISSUER",
        title: "País emissor",
        checked: false,
        order: 54
      }]
    },
    separators: ";",
    fileName: "",
    displayTimezone: "GMT-03",
    displayLanguage: "en",
    reportLanguage: "en",
    headerLanguage: "en",
    isLegacyTranslation: true,
    countryUserLanguage: "en",
    selectedReportLanguage: "en",
    selectedHeaderLanguage: "en",
    advancedSettings: {
      groups: [{
        mainOption: {
          id: "additional_rows",
          subOptions: [{
            showOption: true,
            id: "check_available_balance",
            title: "Saldo disponível antes e depois de sacar dinheiro",
            description: "Acrescenta duas novas linhas ao relatório com saldo disponível antes e depois de um saque.",
            shouldValidateNLedger: false,
            showKeyName: true,
            isNewOption: false
          }, {
            showOption: true,
            id: "compensate_detail",
            title: "Movimentações compensadas",
            description: "Inclui movimentações de bloqueio e desbloqueio de dinheiro compensadas entre si (Crédito - Débito = 0) em um determinado período.",
            shouldValidateNLedger: true,
            showKeyName: true,
            isNewOption: false
          }, {
            showOption: true,
            id: "unite_reserve",
            title: "Ocultar transações de reserva compensadas",
            description: "Ao selecionar essa opção, vamos ocultar as transações que são mostradas quando seu dinheiro foi reservado e liberado dentro do período do relatório solicitado.",
            shouldValidateNLedger: false,
            showKeyName: true,
            isNewOption: true
          }, {
            showOption: true,
            id: "visible_zero_releases",
            title: "Mostrar liberações em zero",
            description: "Marcando esta opção, serão mostradas as transações com balanço zero, que correspondem a vendas ou pagamentos cancelados.",
            shouldValidateNLedger: false,
            showKeyName: true,
            isNewOption: true
          }]
        }
      }],
      selected: []
    },
    emails: [],
    ftp: {
      server: "",
      port: "",
      path: "",
      user: "",
      pass: ""
    },
    webhook: {
      url: "",
      password: ""
    }
  },
  sellerId: "",
  userId: "",
  tonicUsername: ""
};
// CONCATENATED MODULE: ./src/platform/mercado/utils/index.js
function utils_typeof(obj) { "@babel/helpers - typeof"; return utils_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, utils_typeof(obj); }

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || utils_unsupportedIterableToArray(arr, i) || _nonIterableRest(); }

function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function utils_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return utils_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return utils_arrayLikeToArray(o, minLen); }

function utils_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function utils_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ utils_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == utils_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function utils_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function utils_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { utils_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { utils_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }


 // 记录任务期间所有站点 Cookie 覆盖规则 ID（每次切换站点都会新增一条），任务结束后需要全部清除

var siteCookieRuleIds = []; // 站点 key 到 IANA 时区名称的映射

var SITE_TIMEZONE_IANA_MAP = {
  MLM: 'America/Mexico_City',
  MLB: 'America/Sao_Paulo',
  MLC: 'America/Santiago',
  MCO: 'America/Bogota',
  MLA: 'America/Argentina/Buenos_Aires',
  MLU: 'America/Montevideo',
  AR: 'America/Argentina/Buenos_Aires',
  MX: 'America/Mexico_City',
  CO: 'America/Bogota',
  PE: 'America/Lima',
  UY: 'America/Montevideo',
  VE: 'America/Caracas',
  EC: 'America/Guayaquil',
  PA: 'America/Panama',
  PY: 'America/Asuncion',
  HN: 'America/Tegucigalpa',
  NI: 'America/Managua',
  SV: 'America/El_Salvador',
  GT: 'America/Guatemala',
  DO: 'America/Santo_Domingo',
  BO: 'America/La_Paz',
  BR: 'America/Sao_Paulo',
  CL: 'America/Santiago',
  CR: 'America/Costa_Rica'
};
/**
 * @description 切换 mercado 站点 cookie
 */

var changeMercadoSite = /*#__PURE__*/function () {
  var _ref = utils_asyncToGenerator( /*#__PURE__*/utils_regeneratorRuntime().mark(function _callee(site, host) {
    var url, _cookie, hasSiteId, hasSiteSelector, arr, newCookies, ruleId, msg;

    return utils_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            url = (host || '').trim();

            if (url) {
              _context.next = 4;
              break;
            }

            return _context.abrupt("return", false);

          case 4:
            _context.next = 6;
            return Object(util["o" /* getAllCookies */])({
              url: url
            });

          case 6:
            _cookie = _context.sent;
            hasSiteId = false;
            hasSiteSelector = false;
            arr = _cookie.map(function (_ref2) {
              var name = _ref2.name,
                  value = _ref2.value;

              if (name === 'cbtSiteId') {
                hasSiteId = true;
                return "cbtSiteId=".concat(site.site_key);
              }

              if (name === 'cbtSiteSelector') {
                hasSiteSelector = true;
                return "cbtSiteSelector=".concat(site.site_user_id);
              }

              return "".concat(name, "=").concat(value);
            });
            if (!hasSiteId) arr.push("cbtSiteId=".concat(site.site_key));
            if (!hasSiteSelector) arr.push("cbtSiteSelector=".concat(site.site_user_id));
            newCookies = arr.join(';');
            log["a" /* default */].setLog('changeMercadoSite', "url:".concat(url, "---"), 'arr:', arr, '---', '_cookie:', _cookie);

            if (!(newCookies === _cookie.map(function (_ref3) {
              var name = _ref3.name,
                  value = _ref3.value;
              return "".concat(name, "=").concat(value);
            }).join(';'))) {
              _context.next = 17;
              break;
            }

            log["a" /* default */].setLog("cookie\u672A\u4FEE\u6539\uFF0C\u4E0D\u9700\u8981\u76D1\u542C");
            return _context.abrupt("return", true);

          case 17:
            _context.next = 19;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Cookie',
              value: newCookies
            }], url + '/*');

          case 19:
            ruleId = _context.sent;
            // await setCookies({ url, name: 'cbtSiteId', value: site.site_key })
            // await setCookies({ url, name: 'cbtSiteSelector', value: site.site_user_id })
            if (ruleId) siteCookieRuleIds.push(ruleId);
            log["a" /* default */].setLog("\u5207\u6362\u7AD9\u70B9 cookie \u6210\u529F\uFF1A".concat(site.site_key));
            return _context.abrupt("return", true);

          case 25:
            _context.prev = 25;
            _context.t0 = _context["catch"](0);
            msg = "\u76D1\u542Cmercado\u8BF7\u6C42\u5E76\u4FEE\u6539cookie\u5931\u8D25,\u5931\u8D25\u539F\u56E0\uFF1A".concat(Object(util["u" /* isError */])(_context.t0));
            log["a" /* default */].report(msg, 'error', site.site_key);
            return _context.abrupt("return", false);

          case 30:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 25]]);
  }));

  return function changeMercadoSite(_x, _x2) {
    return _ref.apply(this, arguments);
  };
}();
/**
 * 清除站点 Cookie 覆盖规则，恢复客户浏览器正常的站点切换能力
 * 在跨境报表任务结束后调用
 */

var clearMercadoSiteCookie = /*#__PURE__*/function () {
  var _ref4 = utils_asyncToGenerator( /*#__PURE__*/utils_regeneratorRuntime().mark(function _callee2() {
    return utils_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            if (!(siteCookieRuleIds.length === 0)) {
              _context2.next = 2;
              break;
            }

            return _context2.abrupt("return");

          case 2:
            _context2.prev = 2;
            _context2.next = 5;
            return Object(util["D" /* removeDeclarativeNetRequestRules */])(siteCookieRuleIds);

          case 5:
            log["a" /* default */].setLog("\u5DF2\u6E05\u9664 ".concat(siteCookieRuleIds.length, " \u6761\u7AD9\u70B9 Cookie \u8986\u76D6\u89C4\u5219\uFF08ruleIds: ").concat(siteCookieRuleIds.join(','), "\uFF09"));
            _context2.next = 11;
            break;

          case 8:
            _context2.prev = 8;
            _context2.t0 = _context2["catch"](2);
            log["a" /* default */].setLog("\u6E05\u9664\u7AD9\u70B9 Cookie \u8986\u76D6\u89C4\u5219\u5931\u8D25\uFF1A".concat(Object(util["u" /* isError */])(_context2.t0)));

          case 11:
            _context2.prev = 11;
            siteCookieRuleIds = [];
            return _context2.finish(11);

          case 14:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[2, 8, 11, 14]]);
  }));

  return function clearMercadoSiteCookie() {
    return _ref4.apply(this, arguments);
  };
}();
/**
 * 根据站点 key 获取当前时刻对应的 GMT 偏移字符串，自动处理夏令时
 * @param {string} siteKey - 站点key（如 'MLC', 'PY', 'CL'）
 * @returns {string} GMT 偏移字符串（如 'GMT-03', 'GMT-04'）
 */

var getGmtOffset = function getGmtOffset(siteKey) {
  var ianaName = SITE_TIMEZONE_IANA_MAP[siteKey];
  if (!ianaName) return 'GMT-06';

  try {
    var parts = new Intl.DateTimeFormat('en', {
      timeZone: ianaName,
      timeZoneName: 'shortOffset'
    }).formatToParts(new Date());
    var rawOffset = (parts.find(function (p) {
      return p.type === 'timeZoneName';
    }) || {}).value || ''; // rawOffset 格式如 'GMT-3'、'GMT-4'，补零为 'GMT-03' 格式

    var match = rawOffset.match(/GMT([+-])(\d+)/);
    if (!match) return 'GMT-06';
    return "GMT".concat(match[1]).concat(String(match[2]).padStart(2, '0'));
  } catch (e) {
    return 'GMT-06';
  }
};
/**
 * 将 UTC ISO 字符串根据站点减去对应小时数，转为 YYYY-MM-DD 格式
 * @param {string} isoString - UTC ISO 字符串（如 "2025-12-01T00:00:00Z"）
 * @param {string} siteKey - 站点key
 * @returns {string} YYYY-MM-DD 格式的日期字符串
 */

var convertUtcToSiteDate = function convertUtcToSiteDate(isoString, siteKey) {
  // 1. 解析 ISO 字符串为 Date 对象
  var utcDate = new Date(isoString); // 2. 获取站点对应的 IANA 时区名称

  var timeZone = SITE_TIMEZONE_IANA_MAP[siteKey] || 'America/Mexico_City'; // 3. 使用站点时区格式化日期（会自动处理时区转换）

  return new Intl.DateTimeFormat('en-CA', {
    timeZone: timeZone,
    year: 'numeric',
    month: '2-digit',
    day: '2-digit'
  }).format(utcDate);
};
/**
 * 将日期字符串转换为 UTC ISO 字符串
 * @param {string} dateStr - 日期字符串（如 "2025-12-01"）
 * @returns {string} UTC 时间的 ISO 字符串
 */

var convertToUtc = function convertToUtc(dateStr) {
  // 解析日期字符串，构造 UTC 时间的 Date 对象
  var _dateStr$split$map = dateStr.split('-').map(Number),
      _dateStr$split$map2 = _slicedToArray(_dateStr$split$map, 3),
      year = _dateStr$split$map2[0],
      month = _dateStr$split$map2[1],
      day = _dateStr$split$map2[2];

  var utcDate = new Date(Date.UTC(year, month - 1, day, 0, 0, 0, 0)); // 转换为 ISO 字符串

  return utcDate.toISOString();
};
// CONCATENATED MODULE: ./src/platform/mercado/report/getPagoReport.js
function getPagoReport_typeof(obj) { "@babel/helpers - typeof"; return getPagoReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getPagoReport_typeof(obj); }

function getPagoReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getPagoReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getPagoReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getPagoReport_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getPagoReport_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getPagoReport_ownKeys(Object(source), !0).forEach(function (key) { getPagoReport_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getPagoReport_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getPagoReport_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getPagoReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getPagoReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getPagoReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getPagoReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }








/**
 * 判断异常是否为美客多限流（返回 403 + HTML 页面）
 * fetchAdapter 抛出的错误消息格式固定为：HTTP error! Status: 403, Reaponse: <html>...
 * 限流返回 HTML，真实鉴权失败返回 JSON，可通过响应体是否含 <html 来区分
 */

var isRateLimited403 = function isRateLimited403(e) {
  var msg = e instanceof Error ? e.message : String(e);
  return /Status:\s*403/.test(msg) && /<html/i.test(msg);
}; // 生成报告前，保存报表设置


var saveReportSettings = /*#__PURE__*/function () {
  var _ref = getPagoReport_asyncToGenerator( /*#__PURE__*/getPagoReport_regeneratorRuntime().mark(function _callee(task) {
    var _task$currentSite, _task$currentSite2, siteKey, currentSiteKey, settingsParams, params, res, msg, _msg;

    return getPagoReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            siteKey = task.store_type === 'GLOBAL' ? (((_task$currentSite = task.currentSite) === null || _task$currentSite === void 0 ? void 0 : _task$currentSite.site_key) || '').substring(0, 3) : task.area;
            currentSiteKey = ((_task$currentSite2 = task.currentSite) === null || _task$currentSite2 === void 0 ? void 0 : _task$currentSite2.site_key) || '';
            settingsParams = LocalPagoSettingsParams;

            if (task.store_type === 'GLOBAL') {
              // 跨境中哥伦比亚站点（MCO-*）使用单独的报表参数
              settingsParams = currentSiteKey.startsWith('MCO') ? cbPagoSettingsParamsColombia : cbPagoSettingsParams;
            }

            params = getPagoReport_objectSpread(getPagoReport_objectSpread({}, settingsParams), {}, {
              previousSettings: getPagoReport_objectSpread(getPagoReport_objectSpread({}, settingsParams.previousSettings), {}, {
                displayTimezone: getGmtOffset(siteKey)
              })
            }); // 根据当前站点动态计算时区偏移，自动处理夏令时

            _context.next = 8;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/balance/reports/api/reports/release/settings"), 'post', params);

          case 8:
            res = _context.sent;

            if (!(res && res.response === 'ok')) {
              _context.next = 13;
              break;
            }

            return _context.abrupt("return", true);

          case 13:
            msg = "\u4FDD\u5B58\u62A5\u8868\u8BBE\u7F6E\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(res === null || res === void 0 ? void 0 : res.errorMsg);
            task.msg = msg;
            task.status = 3;
            log["a" /* default */].setLog(msg);
            return _context.abrupt("return", false);

          case 18:
            _context.next = 27;
            break;

          case 20:
            _context.prev = 20;
            _context.t0 = _context["catch"](0);
            _msg = isRateLimited403(_context.t0) ? "\u4FDD\u5B58\u62A5\u8868\u8BBE\u7F6E\u5931\u8D25\uFF0C\u7F8E\u5BA2\u591A\u540E\u53F0\u9650\u6D41\uFF08\u8BF7\u7A0D\u540E\u91CD\u8BD5\uFF09\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context.t0)) : "\u4FDD\u5B58\u62A5\u8868\u8BBE\u7F6E\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context.t0, task));
            task.msg = _msg;
            task.status = 3;
            log["a" /* default */].setLog(_msg);
            return _context.abrupt("return", false);

          case 27:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 20]]);
  }));

  return function saveReportSettings(_x) {
    return _ref.apply(this, arguments);
  };
}(); // 生成报告


var getPagoReport_generateReport = /*#__PURE__*/function () {
  var _ref2 = getPagoReport_asyncToGenerator( /*#__PURE__*/getPagoReport_regeneratorRuntime().mark(function _callee2(task) {
    var paramsRes, dateEnd, res;
    return getPagoReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;
            _context2.next = 3;
            return saveReportSettings(task);

          case 3:
            paramsRes = _context2.sent;

            if (paramsRes) {
              _context2.next = 6;
              break;
            }

            return _context2.abrupt("return", false);

          case 6:
            // 使用调整后的结束日期（如果被调整过）
            dateEnd = task.isEndDateAdjusted ? moment_default()(task.report_custom_date_end).subtract(1, 'days').format('YYYY-MM-DD') : task.report_custom_date_end;
            _context2.next = 9;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/balance/reports/api/reports/release/statements"), 'post', {
              type: "date_range",
              data: {
                date_start: convertToUtc(task.report_custom_date_start),
                date_end: convertToUtc(dateEnd),
                format: 'XLSX',
                selectedDates: {
                  from: convertToUtc(task.report_custom_date_start),
                  to: convertToUtc(dateEnd)
                }
              }
            });

          case 9:
            res = _context2.sent;

            if (!res) {
              _context2.next = 15;
              break;
            }

            // todo: 暂未知接口成功如何返回
            log["a" /* default */].setLog('半托管财务报表生成成功');
            return _context2.abrupt("return", true);

          case 15:
            return _context2.abrupt("return", true);

          case 16:
            _context2.next = 24;
            break;

          case 18:
            _context2.prev = 18;
            _context2.t0 = _context2["catch"](0);
            task.msg = isRateLimited403(_context2.t0) ? "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7F8E\u5BA2\u591A\u540E\u53F0\u9650\u6D41\uFF08\u8BF7\u7A0D\u540E\u91CD\u8BD5\uFF09\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context2.t0)) : "\u62A5\u544A\u751F\u6210\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context2.t0, task));
            task.status = 3;
            log["a" /* default */].setLog(task.msg);
            return _context2.abrupt("return", false);

          case 24:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 18]]);
  }));

  return function generateReport(_x2) {
    return _ref2.apply(this, arguments);
  };
}();
/**
 * 查询报表生成状态
 * @param {Object} task
 * @param {number} count - 当前重试次数
 * @param {boolean} waitIfNotFound - 已触发生成时传 true：列表中找不到报告也视为"生成中"继续等待，
 *   用于处理数据量大时报告不出现在列表（美客多提示 "We are processing your data"）的场景
 * @returns {boolean} true=报告已就绪可下载；false=失败或超时（task.status=6）或未找到（task.status不变）
 *   注意：未找到历史报告时（waitIfNotFound=false）不修改 task.status，由上层决定是否触发生成
 */


var getPagoReport_awaitReportDownload = /*#__PURE__*/function () {
  var _ref3 = getPagoReport_asyncToGenerator( /*#__PURE__*/getPagoReport_regeneratorRuntime().mark(function _callee3(task) {
    var count,
        waitIfNotFound,
        res,
        hasResults,
        list,
        compareDateEnd,
        taskStart,
        taskStartMinusOne,
        compareEndPlusOne,
        compareEndMinusOne,
        find,
        _args3 = arguments;
    return getPagoReport_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            count = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : 0;
            waitIfNotFound = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : false;
            _context3.prev = 2;

            if (!(count >= 5)) {
              _context3.next = 9;
              break;
            }

            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
            task.run_time = 0;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D";
            task.status = 6;
            return _context3.abrupt("return", false);

          case 9:
            _context3.next = 11;
            return Object(util["z" /* nativeRequest */])("".concat(task.host, "/balance/reports/api/reports/release/statements"), 'get', {
              page: 1,
              year: 'creation'
            });

          case 11:
            res = _context3.sent;
            hasResults = Array.isArray(res === null || res === void 0 ? void 0 : res.results);

            if (!(hasResults && res.results.length > 0)) {
              _context3.next = 54;
              break;
            }

            list = res.results; // 期望的 task 日期范围；compareDateEnd 仅本土店铺(LOCAL)在 endDate==今天时被减一天

            compareDateEnd = task.isEndDateAdjusted ? moment_default()(task.report_custom_date_end).subtract(1, 'days').format('YYYY-MM-DD') : task.report_custom_date_end;
            taskStart = task.report_custom_date_start;
            taskStartMinusOne = moment_default()(taskStart).subtract(1, 'days').format('YYYY-MM-DD');
            compareEndPlusOne = moment_default()(compareDateEnd).add(1, 'days').format('YYYY-MM-DD');
            compareEndMinusOne = moment_default()(compareDateEnd).subtract(1, 'days').format('YYYY-MM-DD'); // 匹配逻辑：
            // 1) 只处理整天 XLSX 报表（use_exact_time=false），按放款自动生成的 CSV 报表跳过
            // 2) 用浏览器本地时区把 UTC 转日期 —— 客户的浏览器 TZ ≈ 客户 Mercado 账户 displayTimezone，
            //    所以"浏览器看到的本地日期"与"账户里存的本地日期"几乎总是一致
            // 3) ±1 天容差兜住两类边界：
            //    - localStart 容差 [-1, 0]：Mercado 跨境 GMT-6 会把 dateStart 往前推 1 天
            //    - localEnd 容差 [-1, 0, +1]：兼容客户在 UI 多选一天、本土 -1 调整、新旧任务并存

            find = list.find(function (item) {
              var _item$internalManagem, _item$download;

              if ((item === null || item === void 0 ? void 0 : (_item$internalManagem = item.internalManagement) === null || _item$internalManagem === void 0 ? void 0 : _item$internalManagem.use_exact_time) !== false) return false;
              if (!(item !== null && item !== void 0 && (_item$download = item.download) !== null && _item$download !== void 0 && _item$download.xlsx)) return false;
              var itemDateStart = moment_default()(item.dateStart).format('YYYY-MM-DD');
              var itemDateEnd = moment_default()(item.dateEnd).format('YYYY-MM-DD');
              var startOk = itemDateStart === taskStart || itemDateStart === taskStartMinusOne;
              var endOk = itemDateEnd === compareDateEnd || itemDateEnd === compareEndPlusOne || itemDateEnd === compareEndMinusOne;

              if (startOk && endOk) {
                log["a" /* default */].setLog("\u5339\u914D\u5230\u62A5\u8868 ".concat(item.id, ": \u672C\u5730\u8303\u56F4=").concat(itemDateStart, "~").concat(itemDateEnd, ", ") + "\u671F\u671B=".concat(taskStart, "~").concat(compareDateEnd, " (store_type=").concat(task.store_type || 'LOCAL', ")"));
                return true;
              }

              return false;
            });

            if (!find) {
              _context3.next = 38;
              break;
            }

            // 报告已在列表中：已完成则下载，否则等待
            log["a" /* default */].setLog('find===匹配到文件了====', JSON.stringify(find));
            log["a" /* default */].setLog('===waitIfNotFound====', waitIfNotFound);

            if (!(find.status === 'processed' && find.download)) {
              _context3.next = 28;
              break;
            }

            task.status = 2;
            task.downloadId = find.download.xlsx;
            return _context3.abrupt("return", true);

          case 28:
            // 报告存在但未完成（status 非 processed，或 download 尚未就绪）
            task.status = 6;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D\uFF08\u72B6\u6001\uFF1A".concat(find.status || '未知', "\uFF09");
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context3.next = 33;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 33:
            _context3.next = 35;
            return getPagoReport_awaitReportDownload(task, ++count, waitIfNotFound);

          case 35:
            return _context3.abrupt("return", _context3.sent);

          case 38:
            if (!waitIfNotFound) {
              _context3.next = 49;
              break;
            }

            // 已触发生成，但报告未在列表中出现（数据量大，后台提示 "We are processing your data"）
            task.status = 6;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D";
            log["a" /* default */].setLog(task.msg, "\u62A5\u544A\u5C1A\u672A\u51FA\u73B0\u5728\u5217\u8868\u4E2D\uFF0C\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context3.next = 44;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 44:
            _context3.next = 46;
            return getPagoReport_awaitReportDownload(task, ++count, waitIfNotFound);

          case 46:
            return _context3.abrupt("return", _context3.sent);

          case 49:
            // 第一次查询，列表中无匹配的历史报告，需要触发生成
            // 注意：此处不修改 task.status，上层通过 task.status 是否为 6 来判断是否应触发 generateReport
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"----not find";
            log["a" /* default */].setLog(task.msg);
            return _context3.abrupt("return", false);

          case 52:
            _context3.next = 75;
            break;

          case 54:
            if (!waitIfNotFound) {
              _context3.next = 65;
              break;
            }

            // 列表为空且已触发生成，继续等待（后台仍在处理数据）
            task.status = 6;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D";
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context3.next = 60;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 60:
            _context3.next = 62;
            return getPagoReport_awaitReportDownload(task, ++count, waitIfNotFound);

          case 62:
            return _context3.abrupt("return", _context3.sent);

          case 65:
            if (!hasResults) {
              _context3.next = 71;
              break;
            }

            // 第一次查询，结果列表为空，按未找到历史报表处理，继续触发生成
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"----not find";
            log["a" /* default */].setLog(task.msg);
            return _context3.abrupt("return", false);

          case 71:
            task.status = 6;
            task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0CMercado\u89C4\u5219\u53EF\u80FD\u6539\u53D8\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"";
            log["a" /* default */].setLog(task.msg);
            return _context3.abrupt("return", false);

          case 75:
            _context3.next = 83;
            break;

          case 77:
            _context3.prev = 77;
            _context3.t0 = _context3["catch"](2);
            task.status = 6;

            if (isRateLimited403(_context3.t0)) {
              // 限流是暂时性的，不设置 error_time，允许任务稍后重试
              task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7F8E\u5BA2\u591A\u540E\u53F0\u9650\u6D41\uFF08\u8BF7\u7A0D\u540E\u91CD\u8BD5\uFF09\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0));
            } else {
              task.msg = "\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0, task));
            }

            log["a" /* default */].setLog(task.msg);
            return _context3.abrupt("return", false);

          case 83:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[2, 77]]);
  }));

  return function awaitReportDownload(_x3) {
    return _ref3.apply(this, arguments);
  };
}(); // 下载报表


var getPagoReport_downloadReport = /*#__PURE__*/function () {
  var _ref4 = getPagoReport_asyncToGenerator( /*#__PURE__*/getPagoReport_regeneratorRuntime().mark(function _callee4(task) {
    var res, url, name, oFile, fileRes, zip;
    return getPagoReport_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return axios_default()({
              method: 'GET',
              url: task.host + task.downloadId,
              responseType: 'blob'
            });

          case 3:
            res = _context4.sent;

            if (!(res && res.data)) {
              _context4.next = 20;
              break;
            }

            url = task.host + task.downloadId;
            name = Object(util["q" /* getNameByUrl */])(url);

            if (!name.includes('.')) {
              name = "".concat(name, ".xlsx");
            }

            oFile = new File([res.data], name, {
              type: 'application/zip'
            });
            // 文件压缩
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, res.data, {
              binary: true
            });
            _context4.next = 14;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"), {
                type: 'application/zip'
              });
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = {
                file: cFile
              };
            }).catch(function (e) {
              log["a" /* default */].setLog('财务报表压缩失败', Object(util["u" /* isError */])(e));
              fileRes = {
                file: oFile
              };
            });

          case 14:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context4.abrupt("return", fileRes);

          case 20:
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u5931\u8D25\uFF0C\u54CD\u5E94\u4F53\u4E3A\u7A7A";
            log["a" /* default */].setLog(task.msg);
            return _context4.abrupt("return", false);

          case 24:
            _context4.next = 32;
            break;

          case 26:
            _context4.prev = 26;
            _context4.t0 = _context4["catch"](0);
            task.status = 5;
            task.msg = "\u4E0B\u8F7D\u5931\u8D25\uFF0C\u7A0D\u540E\u53EF\u5C1D\u8BD5\"\u91CD\u65B0\u83B7\u53D6\"\uFF0C\u4EE5\u4E0B\u4E3A\u9875\u9762\u539F\u59CB\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(_context4.t0, task));
            log["a" /* default */].setLog(task.msg);
            return _context4.abrupt("return", false);

          case 32:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 26]]);
  }));

  return function downloadReport(_x4) {
    return _ref4.apply(this, arguments);
  };
}();

var getPagoReport = /*#__PURE__*/function () {
  var _ref5 = getPagoReport_asyncToGenerator( /*#__PURE__*/getPagoReport_regeneratorRuntime().mark(function _callee5(task) {
    var today, isEndDateToday, param, res, uploadRes;
    return getPagoReport_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            // 判断结束时间是否是当天，如果是则修改为前一天并设置标记
            // 注意：仅本土店铺保留此调整；跨境/半托（store_type === 'GLOBAL'）经验证可以生成"当天"
            // 截止的报表，不再做 -1 天调整，避免与客户后台实际生成的报表对不上 dateEnd。
            if (task.store_type === 'GLOBAL') {
              task.isEndDateAdjusted = false;
            } else {
              // 获取北京时间的当前日期（UTC+8）
              today = new Intl.DateTimeFormat('en-CA', {
                timeZone: 'Asia/Shanghai',
                year: 'numeric',
                month: '2-digit',
                day: '2-digit'
              }).format(new Date());
              isEndDateToday = task.report_custom_date_end === today;

              if (isEndDateToday) {
                task.isEndDateAdjusted = true;
                log["a" /* default */].setLog("\u7ED3\u675F\u65F6\u95F4\u4E3A\u5F53\u5929\uFF0C\u5BF9\u6BD4\u65F6\u5C06\u4F7F\u7528\u524D\u4E00\u5929\uFF1A".concat(moment_default()(task.report_custom_date_end).subtract(1, 'days').format('YYYY-MM-DD')));
              } else {
                task.isEndDateAdjusted = false;
              }
            } // 先查询历史报告列表，有则直接复用，没有则触发生成


            _context5.next = 3;
            return getPagoReport_awaitReportDownload(task);

          case 3:
            if (_context5.sent) {
              _context5.next = 10;
              break;
            }

            if (!(task.status === 6)) {
              _context5.next = 6;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 6:
            _context5.next = 8;
            return getPagoReport_generateReport(task);

          case 8:
            if (_context5.sent) {
              _context5.next = 10;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 10:
            _context5.t0 = task.status !== 2;

            if (!_context5.t0) {
              _context5.next = 15;
              break;
            }

            _context5.next = 14;
            return getPagoReport_awaitReportDownload(task, 0, true);

          case 14:
            _context5.t0 = !_context5.sent;

          case 15:
            if (!_context5.t0) {
              _context5.next = 17;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 17:
            // 默认参数
            param = {
              type_id: task.type_id,
              platform_store_id: task.platform_store_id,
              result: null,
              code: 0,
              msg: null
            };
            _context5.next = 20;
            return getPagoReport_downloadReport(task);

          case 20:
            res = _context5.sent;

            if (!(res && res.file)) {
              _context5.next = 31;
              break;
            }

            _context5.next = 24;
            return Object(util["L" /* uploadFile */])(res.file);

          case 24:
            uploadRes = _context5.sent;
            log["a" /* default */].setLog('文件上传结果：', JSON.stringify(uploadRes));

            if (!(uploadRes && uploadRes.code === 1)) {
              _context5.next = 28;
              break;
            }

            return _context5.abrupt("return", getPagoReport_objectSpread(getPagoReport_objectSpread({}, param), {}, {
              result: {
                report_file: uploadRes.data,
                cosKey: uploadRes.data.key,
                originFileName: uploadRes.data.originFileName,
                report_custom_date_start: task.report_custom_date_start,
                report_custom_date_end: task.report_custom_date_end,
                reportType: task.report_type,
                reportDate: task.report_date_month
              }
            }));

          case 28:
            // 上传失败
            task.status = 7;
            task.msg = '文件上传cos失败';
            param.result = {
              requestId: uploadRes.requestId,
              msg: uploadRes.msg
            };

          case 31:
            if (![8, 12].includes(task.status)) {
              _context5.next = 34;
              break;
            }

            task.isDelete = true;
            return _context5.abrupt("return", getPagoReport_objectSpread(getPagoReport_objectSpread({}, param), {}, {
              msg: task.msg,
              code: task.status === 8 ? 3 : 1
            }));

          case 34:
            return _context5.abrupt("return", getPagoReport_objectSpread(getPagoReport_objectSpread({}, param), {}, {
              code: 2,
              msg: task.msg
            }));

          case 35:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function getPagoReport(_x5) {
    return _ref5.apply(this, arguments);
  };
}();

/* harmony default export */ var report_getPagoReport = (getPagoReport);
// CONCATENATED MODULE: ./src/platform/mercado/report/index.js
function report_typeof(obj) { "@babel/helpers - typeof"; return report_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, report_typeof(obj); }

function report_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = report_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function report_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return report_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return report_arrayLikeToArray(o, minLen); }

function report_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function report_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ report_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == report_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function report_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function report_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { report_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { report_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

function report_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function report_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? report_ownKeys(Object(source), !0).forEach(function (key) { report_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : report_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function report_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }






/**
 * @description 响应结构构建，对齐temu上传结构
 */

var buildSiteResult = function buildSiteResult(site, reportRes, task) {
  return report_objectSpread(report_objectSpread({
    site_key: site.site_key,
    site_name: site.site_name,
    code: reportRes ? reportRes.code : 1,
    msg: reportRes ? reportRes.msg : '未知错误'
  }, reportRes && reportRes.result ? reportRes.result : {}), {}, {
    report_type: getReportType(site.site_key) || '',
    reportType: getReportType(site.site_key) || ''
  });
};

var getReportType = function getReportType(siteKey) {
  switch (siteKey) {
    case 'MLM-remote':
      return 701;

    case 'MLM-fulfillment':
      return 702;

    case 'MLB-remote':
      return 703;

    case 'MLC-remote':
      return 704;

    case 'MLC-fulfillment':
      return 705;

    case 'MCO-remote':
      return 706;

    case 'MLA-remote':
      return 707;

    case 'MLU-remote':
      return 708;

    case 'LOCAL':
    default:
      return 7;
  }
};
/**
 * @description 处理单个站点报表获取，并构建响应结构
 * @param {Object} task 任务对象
 * @param {Object} site 站点对象
 * @param {Object} res 响应对象
 * @param {Object} taskMap 任务映射对象
 * @param {boolean} shouldChangeCookie 是否需要切换站点cookie（仅跨境需要切换）
 */


var handleSingleSiteReport = /*#__PURE__*/function () {
  var _ref = report_asyncToGenerator( /*#__PURE__*/report_regeneratorRuntime().mark(function _callee(task, site, res, taskMap, shouldChangeCookie) {
    var findIndex, newTask, changed, msg, _siteResult, reportRes, siteResult;

    return report_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            findIndex = res.result.findIndex(function (item) {
              return item.site_key === site.site_key;
            });

            if (!(findIndex !== -1 && res.result[findIndex].code === 0)) {
              _context.next = 3;
              break;
            }

            return _context.abrupt("return");

          case 3:
            log["a" /* default */].setLog("\u5F00\u59CB\u5904\u7406\u7AD9\u70B9\uFF1A".concat(site.site_name, " (").concat(site.site_key, ")"));
            newTask = report_objectSpread({}, task);
            taskMap[site.site_key] = newTask;

            if (!shouldChangeCookie) {
              _context.next = 19;
              break;
            }

            _context.next = 9;
            return changeMercadoSite(site, task.host);

          case 9:
            changed = _context.sent;

            if (changed) {
              _context.next = 17;
              break;
            }

            msg = "\u5207\u6362\u7AD9\u70B9".concat(site.site_name, "(").concat(site.site_key, ")cookie\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7AD9\u70B9\u4FE1\u606F");
            newTask.status = 3;
            newTask.msg = msg;
            _siteResult = {
              site_key: site.site_key,
              site_name: site.site_name,
              code: 1,
              msg: msg
            };

            if (findIndex !== -1) {
              res.result[findIndex] = _siteResult;
            } else {
              res.result.push(_siteResult);
            }

            return _context.abrupt("return");

          case 17:
            _context.next = 19;
            return Object(util["h" /* delayed */])(5000);

          case 19:
            task.currentSite = site;
            newTask.currentSite = site; // newTask.platform_store_id = site.site_user_id

            newTask.status = 0;
            newTask.msg = '';
            newTask.downloadId = null;
            newTask.fileUrl = null;
            _context.next = 27;
            return report_getPagoReport(newTask);

          case 27:
            reportRes = _context.sent;
            siteResult = buildSiteResult(site, reportRes, newTask);

            if (findIndex !== -1) {
              res.result[findIndex] = siteResult;
            } else {
              res.result.push(siteResult);
            }

          case 30:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));

  return function handleSingleSiteReport(_x, _x2, _x3, _x4, _x5) {
    return _ref.apply(this, arguments);
  };
}(); // mercado pago 报表入口


var getMercadoReportEntry = /*#__PURE__*/function () {
  var _ref2 = report_asyncToGenerator( /*#__PURE__*/report_regeneratorRuntime().mark(function _callee2(task) {
    var res, taskMap, currentSites, siteKey, localSite, sites, _iterator, _step, site, siteKeys, index, errRes, errTask;

    return report_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            res = task.resCache ? task.resCache : {
              code: 0,
              msg: '',
              result: []
            };
            taskMap = {};
            task.currentSite = {};
            currentSites = [];
            _context2.prev = 4;

            if (!(task.store_type !== 'GLOBAL')) {
              _context2.next = 13;
              break;
            }

            // 本土
            siteKey = task.area || 'LOCAL';
            localSite = {
              site_key: siteKey,
              site_name: siteKey
            };
            currentSites = [localSite];
            _context2.next = 11;
            return handleSingleSiteReport(task, localSite, res, taskMap, false);

          case 11:
            _context2.next = 37;
            break;

          case 13:
            // 跨境
            sites = mercado["c" /* mercado */].cbSiteInfo || [];

            if (!(sites.length === 0)) {
              _context2.next = 19;
              break;
            }

            task.status = 3;
            task.msg = '未找到站点信息，可能登录已过期，请重新登录';
            log["a" /* default */].setLog("".concat(task.msg, "\uFF0C\u65E0\u6CD5\u6267\u884C\u4EFB\u52A1"));
            return _context2.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 19:
            currentSites = sites;
            _iterator = report_createForOfIteratorHelper(sites);
            _context2.prev = 21;

            _iterator.s();

          case 23:
            if ((_step = _iterator.n()).done) {
              _context2.next = 29;
              break;
            }

            site = _step.value;
            _context2.next = 27;
            return handleSingleSiteReport(task, site, res, taskMap, true);

          case 27:
            _context2.next = 23;
            break;

          case 29:
            _context2.next = 34;
            break;

          case 31:
            _context2.prev = 31;
            _context2.t0 = _context2["catch"](21);

            _iterator.e(_context2.t0);

          case 34:
            _context2.prev = 34;

            _iterator.f();

            return _context2.finish(34);

          case 37:
            _context2.prev = 37;
            task.currentSite = null; // 清除站点 Cookie 覆盖规则，恢复客户浏览器正常的站点切换能力

            _context2.next = 41;
            return clearMercadoSiteCookie();

          case 41:
            return _context2.finish(37);

          case 42:
            // resCache 里可能混有历史失败站点（比如上次跨境任务失败的某个站点），而本次任务可能是本土或站点集合不同;
            // 只在本次站点集合里找失败,避免旧缓存干扰当前任务;
            siteKeys = new Set(currentSites.map(function (site) {
              return site.site_key;
            }));
            index = res.result.findIndex(function (_ref3) {
              var code = _ref3.code,
                  site_key = _ref3.site_key;
              return siteKeys.has(site_key) && code !== 0;
            });

            if (index !== -1) {
              errRes = res.result[index];
              errTask = taskMap[errRes.site_key] || task;
              res.msg = errRes.msg;
              res.code = errRes.code;
              task.status = errTask.status;
              task.msg = errRes.msg;
              task.error_time = errTask.error_time; // 缓存获取成功的站点报表

              task.resCache = res;
            } else {
              res.code = 0;
              res.msg = '';
            }

            return _context2.abrupt("return", {
              code: res.code,
              msg: res.code === 0 ? '获取Mercado Pago Report完成' : res.msg,
              type_id: task.type_id,
              platform_store_id: task.platform_store_id,
              result: res.result
            });

          case 46:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[4,, 37, 42], [21, 31, 34, 37]]);
  }));

  return function getMercadoReportEntry(_x6) {
    return _ref2.apply(this, arguments);
  };
}();

/* harmony default export */ var report = (getMercadoReportEntry);
// CONCATENATED MODULE: ./src/platform/tiktok/core/getCompassReport.js
function getCompassReport_typeof(obj) { "@babel/helpers - typeof"; return getCompassReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getCompassReport_typeof(obj); }

function getCompassReport_toConsumableArray(arr) { return getCompassReport_arrayWithoutHoles(arr) || getCompassReport_iterableToArray(arr) || getCompassReport_unsupportedIterableToArray(arr) || getCompassReport_nonIterableSpread(); }

function getCompassReport_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getCompassReport_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getCompassReport_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getCompassReport_arrayLikeToArray(o, minLen); }

function getCompassReport_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getCompassReport_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getCompassReport_arrayLikeToArray(arr); }

function getCompassReport_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getCompassReport_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getCompassReport_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getCompassReport_ownKeys(Object(source), !0).forEach(function (key) { getCompassReport_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getCompassReport_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getCompassReport_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getCompassReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getCompassReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getCompassReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getCompassReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getCompassReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getCompassReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getCompassReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }




 // 任务类型配置

var REPORT_CONFIG = {
  30002: {
    module_type: 103,
    detail_list_type: 1,
    list_params_key: 'creator_list_params',
    detail_list_key: 'creator_list_segments',
    data_key: 'creator_performances',
    metric_types: [2, 3, 5, 6, 7, 10, 11, 8, 9, 4, 12],
    name: '达人'
  },
  30006: {
    module_type: 104,
    detail_list_type: 2,
    list_params_key: 'product_list_params',
    detail_list_key: 'product_list_segments',
    data_key: 'product_performances',
    metric_types: [1, 2, 3, 4, 9, 10, 7, 8, 12, 11, 13, 14, 5, 6],
    name: '商品'
  }
};
/**
 * 获取可用时间范围
 * @param {object} task - 任务对象
 * @returns {Promise<object>} { code, startTime, endTime, timezone_offset }
 */

var getAvailableDate = /*#__PURE__*/function () {
  var _ref = getCompassReport_asyncToGenerator( /*#__PURE__*/getCompassReport_regeneratorRuntime().mark(function _callee(task, module_type) {
    var retry,
        query,
        _yield$tkPost,
        code,
        data,
        message,
        available_time_range_list,
        _available_time_range,
        start_time,
        end_time,
        timezone_offset,
        msg,
        _msg,
        _args = arguments;

    return getCompassReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            retry = _args.length > 2 && _args[2] !== undefined ? _args[2] : 0;
            _context.prev = 1;
            _context.next = 4;
            return Object(utils["a" /* getQueryString */])(task);

          case 4:
            query = _context.sent;

            if (query) {
              _context.next = 7;
              break;
            }

            return _context.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 7:
            _context.next = 9;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/compass/available_date/get"), query, {
              module_types: [105, 104, 106, 103]
            });

          case 9:
            _yield$tkPost = _context.sent;
            code = _yield$tkPost.code;
            data = _yield$tkPost.data;
            message = _yield$tkPost.message;

            if (!(code === 0 && data)) {
              _context.next = 20;
              break;
            }

            available_time_range_list = data.available_time_range_list;
            _available_time_range = available_time_range_list.find(function (item) {
              return item.module_type === module_type;
            }), start_time = _available_time_range.start_time, end_time = _available_time_range.end_time, timezone_offset = _available_time_range.timezone_offset;
            log["a" /* default */].setLog("\u83B7\u53D6\u53EF\u7528\u65F6\u95F4\u8303\u56F4\u6210\u529F-----\u5F00\u59CB\u65F6\u95F4\uFF1A".concat(start_time, "\uFF0C\u7ED3\u675F\u65F6\u95F4\uFF1A").concat(end_time, "\uFF0C\u65F6\u533A\u504F\u79FB\uFF1A").concat(timezone_offset));
            return _context.abrupt("return", {
              code: 0,
              startTime: start_time,
              endTime: end_time,
              timezone_offset: timezone_offset
            });

          case 20:
            msg = "\u83B7\u53D6\u53EF\u7528\u65F6\u95F4\u8303\u56F4\u5931\u8D25-----".concat(message);
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 24:
            _context.next = 37;
            break;

          case 26:
            _context.prev = 26;
            _context.t0 = _context["catch"](1);
            _msg = "\u83B7\u53D6\u53EF\u7528\u65F6\u95F4\u8303\u56F4\u5931\u8D25-----\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A".concat(Object(util["u" /* isError */])(_context.t0));
            log["a" /* default */].setLog(_msg);
            task.msg = _msg; // 重试3次

            if (!(retry < 3)) {
              _context.next = 36;
              break;
            }

            log["a" /* default */].setLog('正在重试........................');
            _context.next = 35;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 35:
            return _context.abrupt("return", getAvailableDate(task, module_type, ++retry));

          case 36:
            return _context.abrupt("return", {
              code: 2,
              msg: _msg
            });

          case 37:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[1, 26]]);
  }));

  return function getAvailableDate(_x, _x2) {
    return _ref.apply(this, arguments);
  };
}();
/**
 * 生成时间段参数数组
 * @param {number} startTime - 开始时间戳（秒）
 * @param {number} endTime - 结束时间戳（秒）
 * @param {number} timezone_offset - 时区偏移（秒）
 * @param {number} metric_types
 * @returns {Array} 时间段配置数组
 */


var getCompassReport_generateTimeRanges = function generateTimeRanges(_ref2) {
  var startTime = _ref2.startTime,
      endTime = _ref2.endTime,
      timezone_offset = _ref2.timezone_offset,
      metric_types = _ref2.metric_types;
  var timeRanges = [];
  var oneDaySeconds = 86400; // 一天的秒数
  // 从开始时间到结束时间，每天生成一个时间段
  // 这里获取到的startTime - endTime是九十天的范围，但是tk貌似最大只支持30个间隔，所以这里直接改成获取近30天的

  var currentStart = endTime - oneDaySeconds * 30;

  while (currentStart < endTime) {
    var currentEnd = Math.min(currentStart + oneDaySeconds, endTime);
    timeRanges.push({
      time_descriptor: {
        granularity_type: 1,
        timezone_offset: timezone_offset,
        start_time: currentStart,
        end_time: currentEnd
      },
      metric_types: metric_types,
      page_param: {
        page_no: 1,
        page_size: 200
      },
      sorter: {
        sort_type: 2,
        order_type: 1
      },
      filter: {},
      currentPage: 1 // 新增：记录当前时间段的页码

    });
    currentStart = currentEnd;
  }

  log["a" /* default */].setLog("\u751F\u6210\u65F6\u95F4\u6BB5\u53C2\u6570-----\u5171".concat(timeRanges.length, "\u4E2A\u65F6\u95F4\u6BB5"));
  return timeRanges;
};
/**
 * 批量获取报告数据（每次请求最多 2 个时间段）
 * @param {object} task - 任务对象
 * @param {Array} timeRanges - 时间段参数数组（最多2个）
 * @param {object} config - 报告配置
 * @param {number} retry - 重试次数
 * @returns {Promise<object>} { code, data, pendingRanges }
 */


var fetchReport = /*#__PURE__*/function () {
  var _ref4 = getCompassReport_asyncToGenerator( /*#__PURE__*/getCompassReport_regeneratorRuntime().mark(function _callee2(_ref3) {
    var task, timeRanges, config, _ref3$retry, retry, query, params, _yield$tkPost2, code, data, message, detailList, pendingRanges, msg, _msg2;

    return getCompassReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            task = _ref3.task, timeRanges = _ref3.timeRanges, config = _ref3.config, _ref3$retry = _ref3.retry, retry = _ref3$retry === void 0 ? 0 : _ref3$retry;
            _context2.prev = 1;
            _context2.next = 4;
            return Object(utils["a" /* getQueryString */])(task);

          case 4:
            query = _context2.sent;

            if (query) {
              _context2.next = 7;
              break;
            }

            return _context2.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 7:
            params = {
              params: getCompassReport_defineProperty({
                detail_list_type: config.detail_list_type
              }, config.list_params_key, timeRanges)
            };
            _context2.next = 10;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/oec/affiliate/compass/transaction/detail_list/get"), query, params);

          case 10:
            _yield$tkPost2 = _context2.sent;
            code = _yield$tkPost2.code;
            data = _yield$tkPost2.data;
            message = _yield$tkPost2.message;

            if (!(code === 0 && data)) {
              _context2.next = 22;
              break;
            }

            detailList = data[config.detail_list_key] || []; // 分析哪些时间段还有更多数据（返回数据达到200条的时间段）

            pendingRanges = [];
            detailList.forEach(function (item, index) {
              var total = item.total,
                  _item$config$data_key = item[config.data_key],
                  data = _item$config$data_key === void 0 ? [] : _item$config$data_key;
              var currentPage = timeRanges[index].page_param.page_no; // 如果某个时间段的数据达到200条，且未达到总数，说明还有下一页

              if (data.length >= 200 && currentPage * 200 < total) {
                pendingRanges.push(index);
              }
            });
            log["a" /* default */].setLog("\u83B7\u53D6".concat(config.name, "\u62A5\u544A\u6210\u529F-----\u672C\u6279\u6B21").concat((detailList === null || detailList === void 0 ? void 0 : detailList.length) || 0, "\u4E2A\u65F6\u95F4\u6BB5\uFF0C\u5176\u4E2D").concat((pendingRanges === null || pendingRanges === void 0 ? void 0 : pendingRanges.length) || 0, "\u4E2A\u9700\u8981\u7EE7\u7EED\u83B7\u53D6\u4E0B\u4E00\u9875"));
            return _context2.abrupt("return", {
              code: 0,
              data: detailList,
              pendingRanges: pendingRanges
            });

          case 22:
            msg = "\u83B7\u53D6".concat(config.name, "\u62A5\u544A\u5931\u8D25-----").concat(message);
            log["a" /* default */].setLog(msg);
            task.msg = msg;
            return _context2.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 26:
            _context2.next = 40;
            break;

          case 28:
            _context2.prev = 28;
            _context2.t0 = _context2["catch"](1);
            _msg2 = "\u83B7\u53D6".concat(config.name, "\u62A5\u544A\u5931\u8D25-----\u539F\u751F\u63A5\u53E3\u8FD4\u56DE\uFF1A").concat(Object(util["u" /* isError */])(_context2.t0));
            log["a" /* default */].setLog(_msg2);
            task.msg = _msg2; // 重试2次

            if (!(retry < 2)) {
              _context2.next = 38;
              break;
            }

            log["a" /* default */].setLog("\u6B63\u5728\u91CD\u8BD5\u7B2C ".concat(retry + 1, "/2 \u6B21........................"));
            _context2.next = 37;
            return Object(util["h" /* delayed */])(3 * 1000);

          case 37:
            return _context2.abrupt("return", fetchReport({
              task: task,
              timeRanges: timeRanges,
              config: config,
              retry: ++retry
            }));

          case 38:
            // 重试2次后仍失败，返回失败状态
            log["a" /* default */].setLog("\u91CD\u8BD52\u6B21\u540E\u4ECD\u5931\u8D25\uFF0C\u653E\u5F03\u5F53\u524D\u6279\u6B21");
            return _context2.abrupt("return", {
              code: 2,
              msg: _msg2
            });

          case 40:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 28]]);
  }));

  return function fetchReport(_x3) {
    return _ref4.apply(this, arguments);
  };
}();
/**
 * 主流程：获取报告（达人或商品）
 * @param {object} task - 任务对象
 * @returns {Promise<object>} { code, msg, result }
 */


var getCompassReport = /*#__PURE__*/function () {
  var _ref5 = getCompassReport_asyncToGenerator( /*#__PURE__*/getCompassReport_regeneratorRuntime().mark(function _callee4(task) {
    var _ret, msg;

    return getCompassReport_regeneratorRuntime().wrap(function _callee4$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.prev = 0;
            return _context6.delegateYield( /*#__PURE__*/getCompassReport_regeneratorRuntime().mark(function _callee3() {
              var _task$resCache;

              var config, msg, _ref6, timeRangesConfig, pendingIndexes, _ref6$failedIndexes, failedIndexes, _yield$getAvailableDa, code, startTime, endTime, timezone_offset, BATCH_SIZE, _loop;

              return getCompassReport_regeneratorRuntime().wrap(function _callee3$(_context5) {
                while (1) {
                  switch (_context5.prev = _context5.next) {
                    case 0:
                      // 根据 type_id 获取配置
                      config = REPORT_CONFIG[task.type_id];

                      if (config) {
                        _context5.next = 6;
                        break;
                      }

                      msg = "\u4E0D\u652F\u6301\u7684\u4EFB\u52A1\u7C7B\u578B\uFF1A".concat(task.type_id);
                      log["a" /* default */].setLog(msg);
                      task.status = 14;
                      return _context5.abrupt("return", {
                        v: {
                          code: 1,
                          msg: msg
                        }
                      });

                    case 6:
                      // 1. 检查是否有缓存（断点续传）
                      _ref6 = ((_task$resCache = task.resCache) === null || _task$resCache === void 0 ? void 0 : _task$resCache.data) || {}, timeRangesConfig = _ref6.timeRangesConfig, pendingIndexes = _ref6.pendingIndexes, _ref6$failedIndexes = _ref6.failedIndexes, failedIndexes = _ref6$failedIndexes === void 0 ? [] : _ref6$failedIndexes; // 2. 如果没有缓存，获取可用时间范围并生成时间段参数

                      if (timeRangesConfig) {
                        _context5.next = 21;
                        break;
                      }

                      _context5.next = 10;
                      return getAvailableDate(task, config.module_type);

                    case 10:
                      _yield$getAvailableDa = _context5.sent;
                      code = _yield$getAvailableDa.code;
                      startTime = _yield$getAvailableDa.startTime;
                      endTime = _yield$getAvailableDa.endTime;
                      timezone_offset = _yield$getAvailableDa.timezone_offset;
                      msg = _yield$getAvailableDa.msg;

                      if (!(code !== 0)) {
                        _context5.next = 19;
                        break;
                      }

                      task.status = 14;
                      return _context5.abrupt("return", {
                        v: {
                          code: code,
                          msg: msg
                        }
                      });

                    case 19:
                      // 生成所有时间段的配置（第一页）
                      timeRangesConfig = getCompassReport_generateTimeRanges({
                        startTime: startTime,
                        endTime: endTime,
                        timezone_offset: timezone_offset,
                        metric_types: config.metric_types
                      }); // 初始化：所有时间段都需要获取

                      pendingIndexes = timeRangesConfig.map(function (_, index) {
                        return index;
                      });

                    case 21:
                      BATCH_SIZE = 2; // 每批请求 2 个时间段
                      // 3. 循环获取数据，每次处理 2 个时间段

                      _loop = /*#__PURE__*/getCompassReport_regeneratorRuntime().mark(function _loop() {
                        var batches, i, newPendingIndexes, currentRoundData, _loop2, batchIdx;

                        return getCompassReport_regeneratorRuntime().wrap(function _loop$(_context4) {
                          while (1) {
                            switch (_context4.prev = _context4.next) {
                              case 0:
                                log["a" /* default */].setLog("\u5F00\u59CB\u65B0\u4E00\u8F6E\u83B7\u53D6-----\u5F85\u83B7\u53D6\u65F6\u95F4\u6BB5\uFF1A".concat(pendingIndexes.length, "\u4E2A")); // 分批处理：每次处理 2 个时间段

                                batches = [];

                                for (i = 0; i < pendingIndexes.length; i += BATCH_SIZE) {
                                  batches.push(pendingIndexes.slice(i, i + BATCH_SIZE));
                                }

                                log["a" /* default */].setLog("\u5171\u5206\u4E3A ".concat(batches.length, " \u6279\uFF0C\u6BCF\u6279\u6700\u591A ").concat(BATCH_SIZE, " \u4E2A\u65F6\u95F4\u6BB5"));
                                newPendingIndexes = []; // 下一轮需要继续处理的时间段（需要获取下一页的）

                                currentRoundData = []; // 当前轮收集的数据
                                // 逐批请求（每批2个时间段）

                                _loop2 = /*#__PURE__*/getCompassReport_regeneratorRuntime().mark(function _loop2(batchIdx) {
                                  var batchIndexes, pageInfo, currentTimeRanges, _yield$fetchReport, code, data, pendingRanges, msg;

                                  return getCompassReport_regeneratorRuntime().wrap(function _loop2$(_context3) {
                                    while (1) {
                                      switch (_context3.prev = _context3.next) {
                                        case 0:
                                          batchIndexes = batches[batchIdx]; // 获取每个时间段的页码信息

                                          pageInfo = batchIndexes.map(function (idx) {
                                            return "\u7D22\u5F15".concat(idx, ":\u7B2C").concat(timeRangesConfig[idx].currentPage, "\u9875");
                                          }).join(', ');
                                          log["a" /* default */].setLog("\u5904\u7406\u7B2C ".concat(batchIdx + 1, "/").concat(batches.length, " \u6279-----").concat(pageInfo)); // 构建当前批次的时间段配置（使用每个时间段自己的页码）

                                          currentTimeRanges = batchIndexes.map(function (index) {
                                            var range = getCompassReport_objectSpread({}, timeRangesConfig[index]);

                                            var currentPage = timeRangesConfig[index].currentPage;
                                            range.page_param = {
                                              page_no: currentPage,
                                              page_size: 200
                                            };
                                            return range;
                                          }); // 请求当前批次（fetchReport 内部会重试 2 次）

                                          _context3.next = 6;
                                          return fetchReport({
                                            task: task,
                                            timeRanges: currentTimeRanges,
                                            config: config,
                                            retry: 0
                                          });

                                        case 6:
                                          _yield$fetchReport = _context3.sent;
                                          code = _yield$fetchReport.code;
                                          data = _yield$fetchReport.data;
                                          pendingRanges = _yield$fetchReport.pendingRanges;
                                          msg = _yield$fetchReport.msg;

                                          if (code !== 0) {
                                            // 重试 2 次后仍然失败，记录失败的时间段
                                            log["a" /* default */].setLog("\u6279\u6B21\u5931\u8D25\uFF08\u5DF2\u91CD\u8BD52\u6B21\uFF09-----\u65F6\u95F4\u6BB5\u7D22\u5F15\uFF1A".concat(batchIndexes.join(','), "\uFF0C\u9519\u8BEF\uFF1A").concat(msg)); // 将失败的时间段索引记录下来

                                            batchIndexes.forEach(function (idx) {
                                              if (!failedIndexes.includes(idx)) {
                                                failedIndexes.push(idx);
                                              }
                                            });
                                          } else {
                                            // 成功，收集数据
                                            log["a" /* default */].setLog("\u6279\u6B21\u6210\u529F-----\u83B7\u53D6\u5230 ".concat((data === null || data === void 0 ? void 0 : data.length) || 0, " \u4E2A\u65F6\u95F4\u6BB5\u7684\u6570\u636E"));
                                            currentRoundData.push.apply(currentRoundData, getCompassReport_toConsumableArray(data || [])); // 检查是否有时间段需要继续获取下一页

                                            if (pendingRanges && pendingRanges.length > 0) {
                                              pendingRanges.forEach(function (i) {
                                                var index = batchIndexes[i]; // 更新该时间段的页码

                                                timeRangesConfig[index].currentPage += 1;
                                                newPendingIndexes.push(index);
                                                log["a" /* default */].setLog("\u65F6\u95F4\u6BB5".concat(index, "\u9700\u8981\u83B7\u53D6\u4E0B\u4E00\u9875\uFF08\u7B2C").concat(timeRangesConfig[index].currentPage, "\u9875\uFF09"));
                                              });
                                            }
                                          } // 批次间延迟，避免请求过快


                                          if (!(batchIdx < batches.length - 1)) {
                                            _context3.next = 15;
                                            break;
                                          }

                                          _context3.next = 15;
                                          return Object(util["h" /* delayed */])(2 * 1000);

                                        case 15:
                                        case "end":
                                          return _context3.stop();
                                      }
                                    }
                                  }, _loop2);
                                });
                                batchIdx = 0;

                              case 8:
                                if (!(batchIdx < batches.length)) {
                                  _context4.next = 13;
                                  break;
                                }

                                return _context4.delegateYield(_loop2(batchIdx), "t0", 10);

                              case 10:
                                batchIdx++;
                                _context4.next = 8;
                                break;

                              case 13:
                                if (!(currentRoundData.length > 0)) {
                                  _context4.next = 17;
                                  break;
                                }

                                log["a" /* default */].setLog("\u4E0A\u4F20\u5F53\u524D\u8F6E\u6570\u636E-----\u5171 ".concat(currentRoundData.length, " \u4E2A\u65F6\u95F4\u6BB5\u7684\u6570\u636E"));
                                _context4.next = 17;
                                return common_newTask["a" /* default */].uploadTask({
                                  code: 4,
                                  data: {
                                    timeRangesConfig: timeRangesConfig,
                                    // 包含每个时间段的 currentPage
                                    pendingIndexes: newPendingIndexes,
                                    failedIndexes: failedIndexes // 失败的时间段索引

                                  },
                                  result: {
                                    list: currentRoundData
                                  }
                                }, task);

                              case 17:
                                if (!(newPendingIndexes.length > 0)) {
                                  _context4.next = 24;
                                  break;
                                }

                                // 还有时间段需要继续获取下一页
                                log["a" /* default */].setLog("\u8FD8\u6709 ".concat(newPendingIndexes.length, " \u4E2A\u65F6\u95F4\u6BB5\u9700\u8981\u7EE7\u7EED\u83B7\u53D6\u4E0B\u4E00\u9875"));
                                pendingIndexes = newPendingIndexes;
                                _context4.next = 22;
                                return Object(util["h" /* delayed */])(2 * 1000);

                              case 22:
                                _context4.next = 25;
                                break;

                              case 24:
                                // 当前轮所有时间段都处理完毕
                                pendingIndexes = [];

                              case 25:
                              case "end":
                                return _context4.stop();
                            }
                          }
                        }, _loop);
                      });

                    case 23:
                      if (!(pendingIndexes && pendingIndexes.length > 0)) {
                        _context5.next = 27;
                        break;
                      }

                      return _context5.delegateYield(_loop(), "t0", 25);

                    case 25:
                      _context5.next = 23;
                      break;

                    case 27:
                      // 最后缓存进度（包括失败的时间段）
                      task.resCache = {
                        data: {
                          timeRangesConfig: timeRangesConfig,
                          pendingIndexes: [],
                          failedIndexes: failedIndexes
                        }
                      }; // 判断是否有失败的时间段

                      if (!(failedIndexes.length > 0)) {
                        _context5.next = 35;
                        break;
                      }

                      log["a" /* default */].setLog("".concat(config.name, "\u62A5\u544A\u83B7\u53D6\u5B8C\u6BD5-----\u5171 ").concat(timeRangesConfig.length, " \u4E2A\u65F6\u95F4\u6BB5\uFF0C\u5176\u4E2D ").concat(failedIndexes.length, " \u4E2A\u5931\u8D25"));
                      log["a" /* default */].setLog("\u5931\u8D25\u7684\u65F6\u95F4\u6BB5\u7D22\u5F15\uFF1A".concat(failedIndexes.join(',')));
                      task.status = 14;
                      return _context5.abrupt("return", {
                        v: {
                          code: 1,
                          msg: "\u83B7\u53D6".concat(config.name, "\u62A5\u544A\u90E8\u5206\u5931\u8D25\uFF0C\u5931\u8D25\u65F6\u95F4\u6BB5\uFF1A").concat(failedIndexes.join(','))
                        }
                      });

                    case 35:
                      log["a" /* default */].setLog("".concat(config.name, "\u62A5\u544A\u83B7\u53D6\u5B8C\u6BD5-----\u5171 ").concat(timeRangesConfig.length, " \u4E2A\u65F6\u95F4\u6BB5\uFF0C\u5168\u90E8\u6210\u529F"));
                      task.status = 15;
                      return _context5.abrupt("return", {
                        v: {
                          code: 0,
                          msg: "\u83B7\u53D6".concat(config.name, "\u62A5\u544A\u6210\u529F")
                        }
                      });

                    case 38:
                    case "end":
                      return _context5.stop();
                  }
                }
              }, _callee3);
            })(), "t0", 2);

          case 2:
            _ret = _context6.t0;

            if (!(getCompassReport_typeof(_ret) === "object")) {
              _context6.next = 5;
              break;
            }

            return _context6.abrupt("return", _ret.v);

          case 5:
            _context6.next = 14;
            break;

          case 7:
            _context6.prev = 7;
            _context6.t1 = _context6["catch"](0);
            msg = "\u83B7\u53D6\u62A5\u544A\u5F02\u5E38-----".concat(Object(util["u" /* isError */])(_context6.t1));
            log["a" /* default */].setLog(msg);
            task.status = 14;
            task.msg = msg;
            return _context6.abrupt("return", {
              code: 2,
              msg: msg
            });

          case 14:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee4, null, [[0, 7]]);
  }));

  return function getCompassReport(_x4) {
    return _ref5.apply(this, arguments);
  };
}();

/* harmony default export */ var core_getCompassReport = (getCompassReport);
// CONCATENATED MODULE: ./src/platform/common/taskType.js
function taskType_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function taskType_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? taskType_ownKeys(Object(source), !0).forEach(function (key) { taskType_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : taskType_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function taskType_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }














var cores = {
  getSupplierPrice: temu_getSupplierPrice,
  getSaleVolume: temu_getSaleVolume,
  getQtReport: qtReport,
  getTodaySaleVolume: temu_getTodaySaleVolume,
  getActivityPrice: temu_getActivityPrice,
  getGoodsTraffic: temu_getGoodsTraffic,
  getStorageServiceFee: temu_getStorageServiceFee,
  getTargetInvitation: getTargetInvitation,
  getTargetInvitationDetail: getTargetInvitationDetail,
  createTargetInvitation: createTargetInvitation,
  updateTargetInvitation: updateTargetInvitation,
  getCreators: getCreators,
  getMercadoReportEntry: report,
  getCompassReport: core_getCompassReport
}; // temu任务类型

var temuTaskType = {
  // temum半托
  22003: {
    name: '财务/账务明细-半托',
    type: 'temuReport',
    platform_code: 10024,
    handle: 'getQtReport',
    component: 'SaleVolume'
  },
  22005: {
    name: '发货面单费-半托',
    type: 'temuReport',
    platform_code: 10024,
    handle: 'getQtReport',
    component: 'SaleVolume'
  },
  22004: {
    name: '退货面单费-半托',
    type: 'temuReport',
    platform_code: 10024,
    handle: 'getQtReport',
    component: 'ReverseReport'
  },
  22002: {
    name: '最新供货价-半托',
    type: 'supplierPrice',
    platform_code: 10022,
    handle: 'getSupplierPrice',
    component: 'SupplierPrice'
  },
  22008: {
    name: '活动价-半托',
    type: 'activityPrice',
    platform_code: 10022,
    handle: 'getActivityPrice',
    component: 'SaleVolume'
  },
  22017: {
    name: '流量分析-半托',
    type: 'goodsTraffic',
    platform_code: 10022,
    handle: 'getGoodsTraffic',
    component: 'SaleVolume'
  },
  // temu全托
  22006: {
    name: '财务/账务明细-全托',
    type: 'temuReport',
    platform_code: 10024,
    handle: 'getQtReport',
    component: 'SaleVolume'
  },
  22015: {
    name: '支出详情-全托',
    type: 'temuReport',
    platform_code: 10024,
    handle: 'getQtReport',
    component: 'SaleVolume'
  },
  22009: {
    name: 'ERP费用-全托',
    type: 'temuReport',
    platform_code: 10024,
    handle: 'getQtReport',
    component: 'SaleVolume'
  },
  22001: {
    name: '近30天销量-全托',
    type: 'sale',
    platform_code: 10022,
    handle: 'getSaleVolume',
    component: 'SaleVolume'
  },
  22010: {
    name: '最新供货价-全托',
    type: 'supplierPrice',
    platform_code: 10022,
    handle: 'getSupplierPrice',
    component: 'SupplierPrice'
  },
  22016: {
    name: '活动价-全托',
    type: 'activityPrice',
    platform_code: 10022,
    handle: 'getActivityPrice',
    component: 'SaleVolume'
  },
  22020: {
    name: '仓储综合服务费-全托',
    type: 'storageServiceFee',
    platform_code: 10022,
    handle: 'getStorageServiceFee',
    component: 'SaleVolume'
  },
  //temu本土
  22011: {
    name: '最新供货价-本土',
    type: 'supplierPrice',
    platform_code: 10022,
    handle: 'getSupplierPrice',
    component: 'SupplierPrice'
  },
  // temu半托po明细
  22018: {
    name: 'PO明细-本土',
    type: 'temuReport',
    platform_code: 10022,
    handle: 'getQtReport',
    component: 'SaleVolume'
  },
  22019: {
    name: 'Temu本土付款报告',
    type: 'temuReport',
    platform_code: 10022,
    handle: 'getQtReport',
    component: 'SaleVolume'
  }
}; // tiktok任务类型

var tiktokTaskType = {
  30001: {
    name: '获取定向邀约-半托',
    type: 'tiktokCreator',
    platform_code: 10011,
    handle: 'getTargetInvitation'
  },
  30002: {
    name: '获取达人报告-半托',
    type: 'tiktokCompassReport',
    platform_code: 10011,
    handle: 'getCompassReport'
  },
  30003: {
    name: '创建定向邀约-半托',
    type: 'tiktokCreator',
    platform_code: 10011,
    handle: 'createTargetInvitation'
  },
  30004: {
    name: '更新定向邀约-半托',
    type: 'tiktokCreator',
    platform_code: 10011,
    handle: 'updateTargetInvitation'
  },
  30005: {
    name: '查询可邀约达人-半托',
    type: 'tiktokCreator',
    platform_code: 10011,
    handle: 'getCreators'
  },
  30006: {
    name: '获取商品报告-半托',
    type: 'tiktokCompassReport',
    platform_code: 10011,
    handle: 'getCompassReport'
  },
  30007: {
    name: '单个获取定向邀约-半托',
    type: 'tiktokCreator',
    platform_code: 10011,
    handle: 'getTargetInvitationDetail'
  }
}; // mercado跨境

var mercadoTaskType = {
  40001: {
    name: '财务/账务明细-跨境',
    type: 'mercadoReport',
    platform_code: 10012,
    handle: 'getMercadoReportEntry',
    component: 'SaleVolume'
  },
  40002: {
    name: '财务/账务明细-本土',
    type: 'mercadoReport',
    platform_code: 10012,
    handle: 'getMercadoReportEntry',
    component: 'SaleVolume'
  }
};
var multiTskHandleMap = taskType_objectSpread(taskType_objectSpread(taskType_objectSpread({}, temuTaskType), tiktokTaskType), mercadoTaskType);

/***/ }),

/***/ "2fcc":
/***/ (function(module, exports) {

/**
 * Removes `key` and its value from the stack.
 *
 * @private
 * @name delete
 * @memberOf Stack
 * @param {string} key The key of the value to remove.
 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
 */
function stackDelete(key) {
  var data = this.__data__,
      result = data['delete'](key);

  this.size = data.size;
  return result;
}

module.exports = stackDelete;


/***/ }),

/***/ "3022":
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(process) {// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.

var getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors ||
  function getOwnPropertyDescriptors(obj) {
    var keys = Object.keys(obj);
    var descriptors = {};
    for (var i = 0; i < keys.length; i++) {
      descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]);
    }
    return descriptors;
  };

var formatRegExp = /%[sdj%]/g;
exports.format = function(f) {
  if (!isString(f)) {
    var objects = [];
    for (var i = 0; i < arguments.length; i++) {
      objects.push(inspect(arguments[i]));
    }
    return objects.join(' ');
  }

  var i = 1;
  var args = arguments;
  var len = args.length;
  var str = String(f).replace(formatRegExp, function(x) {
    if (x === '%%') return '%';
    if (i >= len) return x;
    switch (x) {
      case '%s': return String(args[i++]);
      case '%d': return Number(args[i++]);
      case '%j':
        try {
          return JSON.stringify(args[i++]);
        } catch (_) {
          return '[Circular]';
        }
      default:
        return x;
    }
  });
  for (var x = args[i]; i < len; x = args[++i]) {
    if (isNull(x) || !isObject(x)) {
      str += ' ' + x;
    } else {
      str += ' ' + inspect(x);
    }
  }
  return str;
};


// Mark that a method should not be used.
// Returns a modified function which warns once by default.
// If --no-deprecation is set, then it is a no-op.
exports.deprecate = function(fn, msg) {
  if (typeof process !== 'undefined' && process.noDeprecation === true) {
    return fn;
  }

  // Allow for deprecating things in the process of starting up.
  if (typeof process === 'undefined') {
    return function() {
      return exports.deprecate(fn, msg).apply(this, arguments);
    };
  }

  var warned = false;
  function deprecated() {
    if (!warned) {
      if (process.throwDeprecation) {
        throw new Error(msg);
      } else if (process.traceDeprecation) {
        console.trace(msg);
      } else {
        console.error(msg);
      }
      warned = true;
    }
    return fn.apply(this, arguments);
  }

  return deprecated;
};


var debugs = {};
var debugEnviron;
exports.debuglog = function(set) {
  if (isUndefined(debugEnviron))
    debugEnviron = Object({"NODE_ENV":"production","BASE_URL":"/"}).NODE_DEBUG || '';
  set = set.toUpperCase();
  if (!debugs[set]) {
    if (new RegExp('\\b' + set + '\\b', 'i').test(debugEnviron)) {
      var pid = process.pid;
      debugs[set] = function() {
        var msg = exports.format.apply(exports, arguments);
        console.error('%s %d: %s', set, pid, msg);
      };
    } else {
      debugs[set] = function() {};
    }
  }
  return debugs[set];
};


/**
 * Echos the value of a value. Trys to print the value out
 * in the best way possible given the different types.
 *
 * @param {Object} obj The object to print out.
 * @param {Object} opts Optional options object that alters the output.
 */
/* legacy: obj, showHidden, depth, colors*/
function inspect(obj, opts) {
  // default options
  var ctx = {
    seen: [],
    stylize: stylizeNoColor
  };
  // legacy...
  if (arguments.length >= 3) ctx.depth = arguments[2];
  if (arguments.length >= 4) ctx.colors = arguments[3];
  if (isBoolean(opts)) {
    // legacy...
    ctx.showHidden = opts;
  } else if (opts) {
    // got an "options" object
    exports._extend(ctx, opts);
  }
  // set default options
  if (isUndefined(ctx.showHidden)) ctx.showHidden = false;
  if (isUndefined(ctx.depth)) ctx.depth = 2;
  if (isUndefined(ctx.colors)) ctx.colors = false;
  if (isUndefined(ctx.customInspect)) ctx.customInspect = true;
  if (ctx.colors) ctx.stylize = stylizeWithColor;
  return formatValue(ctx, obj, ctx.depth);
}
exports.inspect = inspect;


// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics
inspect.colors = {
  'bold' : [1, 22],
  'italic' : [3, 23],
  'underline' : [4, 24],
  'inverse' : [7, 27],
  'white' : [37, 39],
  'grey' : [90, 39],
  'black' : [30, 39],
  'blue' : [34, 39],
  'cyan' : [36, 39],
  'green' : [32, 39],
  'magenta' : [35, 39],
  'red' : [31, 39],
  'yellow' : [33, 39]
};

// Don't use 'blue' not visible on cmd.exe
inspect.styles = {
  'special': 'cyan',
  'number': 'yellow',
  'boolean': 'yellow',
  'undefined': 'grey',
  'null': 'bold',
  'string': 'green',
  'date': 'magenta',
  // "name": intentionally not styling
  'regexp': 'red'
};


function stylizeWithColor(str, styleType) {
  var style = inspect.styles[styleType];

  if (style) {
    return '\u001b[' + inspect.colors[style][0] + 'm' + str +
           '\u001b[' + inspect.colors[style][1] + 'm';
  } else {
    return str;
  }
}


function stylizeNoColor(str, styleType) {
  return str;
}


function arrayToHash(array) {
  var hash = {};

  array.forEach(function(val, idx) {
    hash[val] = true;
  });

  return hash;
}


function formatValue(ctx, value, recurseTimes) {
  // Provide a hook for user-specified inspect functions.
  // Check that value is an object with an inspect function on it
  if (ctx.customInspect &&
      value &&
      isFunction(value.inspect) &&
      // Filter out the util module, it's inspect function is special
      value.inspect !== exports.inspect &&
      // Also filter out any prototype objects using the circular check.
      !(value.constructor && value.constructor.prototype === value)) {
    var ret = value.inspect(recurseTimes, ctx);
    if (!isString(ret)) {
      ret = formatValue(ctx, ret, recurseTimes);
    }
    return ret;
  }

  // Primitive types cannot have properties
  var primitive = formatPrimitive(ctx, value);
  if (primitive) {
    return primitive;
  }

  // Look up the keys of the object.
  var keys = Object.keys(value);
  var visibleKeys = arrayToHash(keys);

  if (ctx.showHidden) {
    keys = Object.getOwnPropertyNames(value);
  }

  // IE doesn't make error fields non-enumerable
  // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx
  if (isError(value)
      && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {
    return formatError(value);
  }

  // Some type of object without properties can be shortcutted.
  if (keys.length === 0) {
    if (isFunction(value)) {
      var name = value.name ? ': ' + value.name : '';
      return ctx.stylize('[Function' + name + ']', 'special');
    }
    if (isRegExp(value)) {
      return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');
    }
    if (isDate(value)) {
      return ctx.stylize(Date.prototype.toString.call(value), 'date');
    }
    if (isError(value)) {
      return formatError(value);
    }
  }

  var base = '', array = false, braces = ['{', '}'];

  // Make Array say that they are Array
  if (isArray(value)) {
    array = true;
    braces = ['[', ']'];
  }

  // Make functions say that they are functions
  if (isFunction(value)) {
    var n = value.name ? ': ' + value.name : '';
    base = ' [Function' + n + ']';
  }

  // Make RegExps say that they are RegExps
  if (isRegExp(value)) {
    base = ' ' + RegExp.prototype.toString.call(value);
  }

  // Make dates with properties first say the date
  if (isDate(value)) {
    base = ' ' + Date.prototype.toUTCString.call(value);
  }

  // Make error with message first say the error
  if (isError(value)) {
    base = ' ' + formatError(value);
  }

  if (keys.length === 0 && (!array || value.length == 0)) {
    return braces[0] + base + braces[1];
  }

  if (recurseTimes < 0) {
    if (isRegExp(value)) {
      return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');
    } else {
      return ctx.stylize('[Object]', 'special');
    }
  }

  ctx.seen.push(value);

  var output;
  if (array) {
    output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);
  } else {
    output = keys.map(function(key) {
      return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);
    });
  }

  ctx.seen.pop();

  return reduceToSingleString(output, base, braces);
}


function formatPrimitive(ctx, value) {
  if (isUndefined(value))
    return ctx.stylize('undefined', 'undefined');
  if (isString(value)) {
    var simple = '\'' + JSON.stringify(value).replace(/^"|"$/g, '')
                                             .replace(/'/g, "\\'")
                                             .replace(/\\"/g, '"') + '\'';
    return ctx.stylize(simple, 'string');
  }
  if (isNumber(value))
    return ctx.stylize('' + value, 'number');
  if (isBoolean(value))
    return ctx.stylize('' + value, 'boolean');
  // For some reason typeof null is "object", so special case here.
  if (isNull(value))
    return ctx.stylize('null', 'null');
}


function formatError(value) {
  return '[' + Error.prototype.toString.call(value) + ']';
}


function formatArray(ctx, value, recurseTimes, visibleKeys, keys) {
  var output = [];
  for (var i = 0, l = value.length; i < l; ++i) {
    if (hasOwnProperty(value, String(i))) {
      output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,
          String(i), true));
    } else {
      output.push('');
    }
  }
  keys.forEach(function(key) {
    if (!key.match(/^\d+$/)) {
      output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,
          key, true));
    }
  });
  return output;
}


function formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {
  var name, str, desc;
  desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };
  if (desc.get) {
    if (desc.set) {
      str = ctx.stylize('[Getter/Setter]', 'special');
    } else {
      str = ctx.stylize('[Getter]', 'special');
    }
  } else {
    if (desc.set) {
      str = ctx.stylize('[Setter]', 'special');
    }
  }
  if (!hasOwnProperty(visibleKeys, key)) {
    name = '[' + key + ']';
  }
  if (!str) {
    if (ctx.seen.indexOf(desc.value) < 0) {
      if (isNull(recurseTimes)) {
        str = formatValue(ctx, desc.value, null);
      } else {
        str = formatValue(ctx, desc.value, recurseTimes - 1);
      }
      if (str.indexOf('\n') > -1) {
        if (array) {
          str = str.split('\n').map(function(line) {
            return '  ' + line;
          }).join('\n').substr(2);
        } else {
          str = '\n' + str.split('\n').map(function(line) {
            return '   ' + line;
          }).join('\n');
        }
      }
    } else {
      str = ctx.stylize('[Circular]', 'special');
    }
  }
  if (isUndefined(name)) {
    if (array && key.match(/^\d+$/)) {
      return str;
    }
    name = JSON.stringify('' + key);
    if (name.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)) {
      name = name.substr(1, name.length - 2);
      name = ctx.stylize(name, 'name');
    } else {
      name = name.replace(/'/g, "\\'")
                 .replace(/\\"/g, '"')
                 .replace(/(^"|"$)/g, "'");
      name = ctx.stylize(name, 'string');
    }
  }

  return name + ': ' + str;
}


function reduceToSingleString(output, base, braces) {
  var numLinesEst = 0;
  var length = output.reduce(function(prev, cur) {
    numLinesEst++;
    if (cur.indexOf('\n') >= 0) numLinesEst++;
    return prev + cur.replace(/\u001b\[\d\d?m/g, '').length + 1;
  }, 0);

  if (length > 60) {
    return braces[0] +
           (base === '' ? '' : base + '\n ') +
           ' ' +
           output.join(',\n  ') +
           ' ' +
           braces[1];
  }

  return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];
}


// NOTE: These type checking functions intentionally don't use `instanceof`
// because it is fragile and can be easily faked with `Object.create()`.
function isArray(ar) {
  return Array.isArray(ar);
}
exports.isArray = isArray;

function isBoolean(arg) {
  return typeof arg === 'boolean';
}
exports.isBoolean = isBoolean;

function isNull(arg) {
  return arg === null;
}
exports.isNull = isNull;

function isNullOrUndefined(arg) {
  return arg == null;
}
exports.isNullOrUndefined = isNullOrUndefined;

function isNumber(arg) {
  return typeof arg === 'number';
}
exports.isNumber = isNumber;

function isString(arg) {
  return typeof arg === 'string';
}
exports.isString = isString;

function isSymbol(arg) {
  return typeof arg === 'symbol';
}
exports.isSymbol = isSymbol;

function isUndefined(arg) {
  return arg === void 0;
}
exports.isUndefined = isUndefined;

function isRegExp(re) {
  return isObject(re) && objectToString(re) === '[object RegExp]';
}
exports.isRegExp = isRegExp;

function isObject(arg) {
  return typeof arg === 'object' && arg !== null;
}
exports.isObject = isObject;

function isDate(d) {
  return isObject(d) && objectToString(d) === '[object Date]';
}
exports.isDate = isDate;

function isError(e) {
  return isObject(e) &&
      (objectToString(e) === '[object Error]' || e instanceof Error);
}
exports.isError = isError;

function isFunction(arg) {
  return typeof arg === 'function';
}
exports.isFunction = isFunction;

function isPrimitive(arg) {
  return arg === null ||
         typeof arg === 'boolean' ||
         typeof arg === 'number' ||
         typeof arg === 'string' ||
         typeof arg === 'symbol' ||  // ES6 symbol
         typeof arg === 'undefined';
}
exports.isPrimitive = isPrimitive;

exports.isBuffer = __webpack_require__("d60a");

function objectToString(o) {
  return Object.prototype.toString.call(o);
}


function pad(n) {
  return n < 10 ? '0' + n.toString(10) : n.toString(10);
}


var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',
              'Oct', 'Nov', 'Dec'];

// 26 Feb 16:19:34
function timestamp() {
  var d = new Date();
  var time = [pad(d.getHours()),
              pad(d.getMinutes()),
              pad(d.getSeconds())].join(':');
  return [d.getDate(), months[d.getMonth()], time].join(' ');
}


// log is just a thin wrapper to console.log that prepends a timestamp
exports.log = function() {
  console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));
};


/**
 * Inherit the prototype methods from one constructor into another.
 *
 * The Function.prototype.inherits from lang.js rewritten as a standalone
 * function (not on Function.prototype). NOTE: If this file is to be loaded
 * during bootstrapping this function needs to be rewritten using some native
 * functions as prototype setup using normal JavaScript does not work as
 * expected during bootstrapping (see mirror.js in r114903).
 *
 * @param {function} ctor Constructor function which needs to inherit the
 *     prototype.
 * @param {function} superCtor Constructor function to inherit prototype from.
 */
exports.inherits = __webpack_require__("28a0");

exports._extend = function(origin, add) {
  // Don't do anything if add isn't an object
  if (!add || !isObject(add)) return origin;

  var keys = Object.keys(add);
  var i = keys.length;
  while (i--) {
    origin[keys[i]] = add[keys[i]];
  }
  return origin;
};

function hasOwnProperty(obj, prop) {
  return Object.prototype.hasOwnProperty.call(obj, prop);
}

var kCustomPromisifiedSymbol = typeof Symbol !== 'undefined' ? Symbol('util.promisify.custom') : undefined;

exports.promisify = function promisify(original) {
  if (typeof original !== 'function')
    throw new TypeError('The "original" argument must be of type Function');

  if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) {
    var fn = original[kCustomPromisifiedSymbol];
    if (typeof fn !== 'function') {
      throw new TypeError('The "util.promisify.custom" argument must be of type Function');
    }
    Object.defineProperty(fn, kCustomPromisifiedSymbol, {
      value: fn, enumerable: false, writable: false, configurable: true
    });
    return fn;
  }

  function fn() {
    var promiseResolve, promiseReject;
    var promise = new Promise(function (resolve, reject) {
      promiseResolve = resolve;
      promiseReject = reject;
    });

    var args = [];
    for (var i = 0; i < arguments.length; i++) {
      args.push(arguments[i]);
    }
    args.push(function (err, value) {
      if (err) {
        promiseReject(err);
      } else {
        promiseResolve(value);
      }
    });

    try {
      original.apply(this, args);
    } catch (err) {
      promiseReject(err);
    }

    return promise;
  }

  Object.setPrototypeOf(fn, Object.getPrototypeOf(original));

  if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, {
    value: fn, enumerable: false, writable: false, configurable: true
  });
  return Object.defineProperties(
    fn,
    getOwnPropertyDescriptors(original)
  );
}

exports.promisify.custom = kCustomPromisifiedSymbol

function callbackifyOnRejected(reason, cb) {
  // `!reason` guard inspired by bluebird (Ref: https://goo.gl/t5IS6M).
  // Because `null` is a special error value in callbacks which means "no error
  // occurred", we error-wrap so the callback consumer can distinguish between
  // "the promise rejected with null" or "the promise fulfilled with undefined".
  if (!reason) {
    var newReason = new Error('Promise was rejected with a falsy value');
    newReason.reason = reason;
    reason = newReason;
  }
  return cb(reason);
}

function callbackify(original) {
  if (typeof original !== 'function') {
    throw new TypeError('The "original" argument must be of type Function');
  }

  // We DO NOT return the promise as it gives the user a false sense that
  // the promise is actually somehow related to the callback's execution
  // and that the callback throwing will reject the promise.
  function callbackified() {
    var args = [];
    for (var i = 0; i < arguments.length; i++) {
      args.push(arguments[i]);
    }

    var maybeCb = args.pop();
    if (typeof maybeCb !== 'function') {
      throw new TypeError('The last argument must be of type Function');
    }
    var self = this;
    var cb = function() {
      return maybeCb.apply(self, arguments);
    };
    // In true node style we process the callback on `nextTick` with all the
    // implications (stack, `uncaughtException`, `async_hooks`)
    original.apply(this, args)
      .then(function(ret) { process.nextTick(cb, null, ret) },
            function(rej) { process.nextTick(callbackifyOnRejected, rej, cb) });
  }

  Object.setPrototypeOf(callbackified, Object.getPrototypeOf(original));
  Object.defineProperties(callbackified,
                          getOwnPropertyDescriptors(original));
  return callbackified;
}
exports.callbackify = callbackify;

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("f28c")))

/***/ }),

/***/ "3092":
/***/ (function(module, exports, __webpack_require__) {

var arraySome = __webpack_require__("4284"),
    baseIteratee = __webpack_require__("badf"),
    baseSome = __webpack_require__("361d"),
    isArray = __webpack_require__("6747"),
    isIterateeCall = __webpack_require__("9aff");

/**
 * Checks if `predicate` returns truthy for **any** element of `collection`.
 * Iteration is stopped once `predicate` returns truthy. The predicate is
 * invoked with three arguments: (value, index|key, collection).
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Collection
 * @param {Array|Object} collection The collection to iterate over.
 * @param {Function} [predicate=_.identity] The function invoked per iteration.
 * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
 * @returns {boolean} Returns `true` if any element passes the predicate check,
 *  else `false`.
 * @example
 *
 * _.some([null, 0, 'yes', false], Boolean);
 * // => true
 *
 * var users = [
 *   { 'user': 'barney', 'active': true },
 *   { 'user': 'fred',   'active': false }
 * ];
 *
 * // The `_.matches` iteratee shorthand.
 * _.some(users, { 'user': 'barney', 'active': false });
 * // => false
 *
 * // The `_.matchesProperty` iteratee shorthand.
 * _.some(users, ['active', false]);
 * // => true
 *
 * // The `_.property` iteratee shorthand.
 * _.some(users, 'active');
 * // => true
 */
function some(collection, predicate, guard) {
  var func = isArray(collection) ? arraySome : baseSome;
  if (guard && isIterateeCall(collection, predicate, guard)) {
    predicate = undefined;
  }
  return func(collection, baseIteratee(predicate, 3));
}

module.exports = some;


/***/ }),

/***/ "30b5":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");

function encode(val) {
  return encodeURIComponent(val).
    replace(/%40/gi, '@').
    replace(/%3A/gi, ':').
    replace(/%24/g, '$').
    replace(/%2C/gi, ',').
    replace(/%20/g, '+').
    replace(/%5B/gi, '[').
    replace(/%5D/gi, ']');
}

/**
 * Build a URL by appending params to the end
 *
 * @param {string} url The base of the url (e.g., http://www.google.com)
 * @param {object} [params] The params to be appended
 * @returns {string} The formatted url
 */
module.exports = function buildURL(url, params, paramsSerializer) {
  /*eslint no-param-reassign:0*/
  if (!params) {
    return url;
  }

  var serializedParams;
  if (paramsSerializer) {
    serializedParams = paramsSerializer(params);
  } else if (utils.isURLSearchParams(params)) {
    serializedParams = params.toString();
  } else {
    var parts = [];

    utils.forEach(params, function serialize(val, key) {
      if (val === null || typeof val === 'undefined') {
        return;
      }

      if (utils.isArray(val)) {
        key = key + '[]';
      } else {
        val = [val];
      }

      utils.forEach(val, function parseValue(v) {
        if (utils.isDate(v)) {
          v = v.toISOString();
        } else if (utils.isObject(v)) {
          v = JSON.stringify(v);
        }
        parts.push(encode(key) + '=' + encode(v));
      });
    });

    serializedParams = parts.join('&');
  }

  if (serializedParams) {
    var hashmarkIndex = url.indexOf('#');
    if (hashmarkIndex !== -1) {
      url = url.slice(0, hashmarkIndex);
    }

    url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;
  }

  return url;
};


/***/ }),

/***/ "30c8":
/***/ (function(module, exports) {

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMax = Math.max;

/**
 * This function is like `composeArgs` except that the arguments composition
 * is tailored for `_.partialRight`.
 *
 * @private
 * @param {Array} args The provided arguments.
 * @param {Array} partials The arguments to append to those provided.
 * @param {Array} holders The `partials` placeholder indexes.
 * @params {boolean} [isCurried] Specify composing for a curried function.
 * @returns {Array} Returns the new array of composed arguments.
 */
function composeArgsRight(args, partials, holders, isCurried) {
  var argsIndex = -1,
      argsLength = args.length,
      holdersIndex = -1,
      holdersLength = holders.length,
      rightIndex = -1,
      rightLength = partials.length,
      rangeLength = nativeMax(argsLength - holdersLength, 0),
      result = Array(rangeLength + rightLength),
      isUncurried = !isCurried;

  while (++argsIndex < rangeLength) {
    result[argsIndex] = args[argsIndex];
  }
  var offset = argsIndex;
  while (++rightIndex < rightLength) {
    result[offset + rightIndex] = partials[rightIndex];
  }
  while (++holdersIndex < holdersLength) {
    if (isUncurried || argsIndex < argsLength) {
      result[offset + holders[holdersIndex]] = args[argsIndex++];
    }
  }
  return result;
}

module.exports = composeArgsRight;


/***/ }),

/***/ "30c9":
/***/ (function(module, exports, __webpack_require__) {

var isFunction = __webpack_require__("9520"),
    isLength = __webpack_require__("b218");

/**
 * Checks if `value` is array-like. A value is considered array-like if it's
 * not a function and has a `value.length` that's an integer greater than or
 * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
 * @example
 *
 * _.isArrayLike([1, 2, 3]);
 * // => true
 *
 * _.isArrayLike(document.body.children);
 * // => true
 *
 * _.isArrayLike('abc');
 * // => true
 *
 * _.isArrayLike(_.noop);
 * // => false
 */
function isArrayLike(value) {
  return value != null && isLength(value.length) && !isFunction(value);
}

module.exports = isArrayLike;


/***/ }),

/***/ "32b3":
/***/ (function(module, exports, __webpack_require__) {

var baseAssignValue = __webpack_require__("872a"),
    eq = __webpack_require__("9638");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Assigns `value` to `key` of `object` if the existing value is not equivalent
 * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
 * for equality comparisons.
 *
 * @private
 * @param {Object} object The object to modify.
 * @param {string} key The key of the property to assign.
 * @param {*} value The value to assign.
 */
function assignValue(object, key, value) {
  var objValue = object[key];
  if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||
      (value === undefined && !(key in object))) {
    baseAssignValue(object, key, value);
  }
}

module.exports = assignValue;


/***/ }),

/***/ "32f4":
/***/ (function(module, exports, __webpack_require__) {

var arrayFilter = __webpack_require__("2d7c"),
    stubArray = __webpack_require__("d327");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Built-in value references. */
var propertyIsEnumerable = objectProto.propertyIsEnumerable;

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeGetSymbols = Object.getOwnPropertySymbols;

/**
 * Creates an array of the own enumerable symbols of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of symbols.
 */
var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
  if (object == null) {
    return [];
  }
  object = Object(object);
  return arrayFilter(nativeGetSymbols(object), function(symbol) {
    return propertyIsEnumerable.call(object, symbol);
  });
};

module.exports = getSymbols;


/***/ }),

/***/ "339e":
/***/ (function(module, exports) {

throw new Error("Module parse failed: Unexpected token (1:0)\nYou may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders\n> <header\n|   role=\"banner\"\n|   data-siteid=\"MLM\"");

/***/ }),

/***/ "34ac":
/***/ (function(module, exports, __webpack_require__) {

var isFunction = __webpack_require__("9520"),
    isMasked = __webpack_require__("1368"),
    isObject = __webpack_require__("1a8c"),
    toSource = __webpack_require__("dc57");

/**
 * Used to match `RegExp`
 * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
 */
var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;

/** Used to detect host constructors (Safari). */
var reIsHostCtor = /^\[object .+?Constructor\]$/;

/** Used for built-in method references. */
var funcProto = Function.prototype,
    objectProto = Object.prototype;

/** Used to resolve the decompiled source of functions. */
var funcToString = funcProto.toString;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/** Used to detect if a method is native. */
var reIsNative = RegExp('^' +
  funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&')
  .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
);

/**
 * The base implementation of `_.isNative` without bad shim checks.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a native function,
 *  else `false`.
 */
function baseIsNative(value) {
  if (!isObject(value) || isMasked(value)) {
    return false;
  }
  var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
  return pattern.test(toSource(value));
}

module.exports = baseIsNative;


/***/ }),

/***/ "34b3":
/***/ (function(module, exports) {

throw new Error("Module parse failed: Unexpected token (1:0)\nYou may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders\n> <!doctype html>\n| <html lang=\"en-GB\" data-19ax5a9jf=\"dingo\" class=\"a-no-js\">\n|     <head>");

/***/ }),

/***/ "361d":
/***/ (function(module, exports, __webpack_require__) {

var baseEach = __webpack_require__("48a0");

/**
 * The base implementation of `_.some` without support for iteratee shorthands.
 *
 * @private
 * @param {Array|Object} collection The collection to iterate over.
 * @param {Function} predicate The function invoked per iteration.
 * @returns {boolean} Returns `true` if any element passes the predicate check,
 *  else `false`.
 */
function baseSome(collection, predicate) {
  var result;

  baseEach(collection, function(value, index, collection) {
    result = predicate(value, index, collection);
    return !result;
  });
  return !!result;
}

module.exports = baseSome;


/***/ }),

/***/ "362e":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Mixin = module.exports = function (host) {
    var originalMethods = {},
        overriddenMethods = this._getOverriddenMethods(this, originalMethods);

    Object.keys(overriddenMethods).forEach(function (key) {
        if (typeof overriddenMethods[key] === 'function') {
            originalMethods[key] = host[key];
            host[key] = overriddenMethods[key];
        }
    });
};

Mixin.prototype._getOverriddenMethods = function () {
    throw new Error('Not implemented');
};



/***/ }),

/***/ "3631":
/***/ (function(module, exports, __webpack_require__) {

var map = {
	"./": "245a",
	"./ad/getCreatorProgram/generateReport": "45b5",
	"./ad/getCreatorProgram/generateReport.json": "45b5",
	"./ad/getCreatorProgram/getBrands": "44a6",
	"./ad/getCreatorProgram/getBrands.json": "44a6",
	"./ad/getCreatorProgram/getCampaign": "837d",
	"./ad/getCreatorProgram/getCampaign.json": "837d",
	"./ad/getCreatorProgram/getCollaboration": "021f",
	"./ad/getCreatorProgram/getCollaboration.json": "021f",
	"./ad/getCreatorProgram/getDownloadsReport": "7008",
	"./ad/getCreatorProgram/getDownloadsReport.json": "7008",
	"./bestDeal": "147b",
	"./bestDeal.json": "147b",
	"./bestDealDetail": "b5cf",
	"./bestDealDetail.json": "b5cf",
	"./index": "245a",
	"./index.js": "245a",
	"./mercado/getPagoReport/generate": "6e1d",
	"./mercado/getPagoReport/generate.json": "6e1d",
	"./mercado/getPagoReport/reportList": "d24a",
	"./mercado/getPagoReport/reportList.json": "d24a",
	"./mercado/getPagoReport/reportSettings": "25f8",
	"./mercado/getPagoReport/reportSettings.json": "25f8",
	"./mercado/storeInfo/getCbV2": "7884",
	"./mercado/storeInfo/getCbV2.html": "173a",
	"./mercado/storeInfo/getCbV2.js": "7884",
	"./mercado/storeInfo/getLocalV2": "718f",
	"./mercado/storeInfo/getLocalV2.html": "339e",
	"./mercado/storeInfo/getLocalV2.js": "718f",
	"./mercado/storeInfo/getProfile": "e082",
	"./mercado/storeInfo/getProfile.js": "e082",
	"./mercado/storeInfo/getResolveProps": "3c04",
	"./mercado/storeInfo/getResolveProps.json": "3c04",
	"./multiPlatformTaskType": "0e4a",
	"./multiPlatformTaskType.json": "0e4a",
	"./temu/getStorageServiceFee/getDetailList": "48f7",
	"./temu/getStorageServiceFee/getDetailList.json": "48f7",
	"./temu/getStorageServiceFee/getPageSearch": "bd91",
	"./temu/getStorageServiceFee/getPageSearch.json": "bd91",
	"./tiktok/createTargetInvitation/checkQuota": "23b5",
	"./tiktok/createTargetInvitation/checkQuota.json": "23b5",
	"./tiktok/createTargetInvitation/checkText": "8270",
	"./tiktok/createTargetInvitation/checkText.json": "8270",
	"./tiktok/createTargetInvitation/create": "1dc4",
	"./tiktok/createTargetInvitation/create.json": "1dc4",
	"./tiktok/getCreatorReport/getAvailableDate": "ed42",
	"./tiktok/getCreatorReport/getAvailableDate.json": "ed42",
	"./tiktok/getCreatorReport/getDetailList": "9cae",
	"./tiktok/getCreatorReport/getDetailList.json": "9cae",
	"./tiktok/getCreators/conflict_check": "8410",
	"./tiktok/getCreators/conflict_check.json": "8410",
	"./tiktok/getCreators/getCreatorList": "4643",
	"./tiktok/getCreators/getCreatorList.json": "4643",
	"./tiktok/getTargetInvitation/getCount": "ef19",
	"./tiktok/getTargetInvitation/getCount.json": "ef19",
	"./tiktok/getTargetInvitation/getInvitationGroup": "7cf0",
	"./tiktok/getTargetInvitation/getInvitationGroup.json": "7cf0",
	"./tiktok/getTargetInvitation/getTargetInvitationDetail": "16b4",
	"./tiktok/getTargetInvitation/getTargetInvitationDetail.json": "16b4",
	"./tiktok/passportAccountInfo": "7025",
	"./tiktok/passportAccountInfo.json": "7025",
	"./tiktok/tiktokGetSellerInfo": "c5ae",
	"./tiktok/tiktokGetSellerInfo.json": "c5ae",
	"./tiktok/updateTargetInvitation/getDateil": "befb",
	"./tiktok/updateTargetInvitation/getDateil.json": "befb",
	"./tiktok/updateTargetInvitation/update": "c266",
	"./tiktok/updateTargetInvitation/update.json": "c266",
	"./tiktokCustomTask": "13cf",
	"./tiktokCustomTask.json": "13cf",
	"./tiktokTaskList": "959b",
	"./tiktokTaskList.json": "959b",
	"./vc/arn/searchShipment": "49e9",
	"./vc/arn/searchShipment.json": "49e9",
	"./vc/cartonLabel/getLnData": "7fdb",
	"./vc/cartonLabel/getLnData.json": "7fdb",
	"./vc/cartonLabel/shipmentdetail": "96d5",
	"./vc/cartonLabel/shipmentdetail.json": "96d5",
	"./vc/coop/list": "8d14",
	"./vc/coop/list.html": "f60b",
	"./vc/coop/list.js": "8d14",
	"./vc/invoice/detail": "cc7a",
	"./vc/invoice/detail.json": "cc7a",
	"./vc/invoice/detailPageSize": "8c0a",
	"./vc/invoice/detailPageSize.json": "8c0a",
	"./vc/invoice/list": "45d4",
	"./vc/invoice/list.json": "45d4",
	"./vc/invoice/pageSize": "8a47",
	"./vc/invoice/pageSize.json": "8a47",
	"./vc/remittance/home": "95a2",
	"./vc/remittance/home.html": "d301",
	"./vc/remittance/home.js": "95a2",
	"./vc/remittance/list": "733b",
	"./vc/remittance/list.html": "34b3",
	"./vc/remittance/list.js": "733b",
	"./vc/vcAccount": "2dee",
	"./vc/vcAccount.json": "2dee",
	"./vc/vcPageContext": "6dfb",
	"./vc/vcPageContext.json": "6dfb"
};


function webpackContext(req) {
	var id = webpackContextResolve(req);
	return __webpack_require__(id);
}
function webpackContextResolve(req) {
	if(!__webpack_require__.o(map, req)) {
		var e = new Error("Cannot find module '" + req + "'");
		e.code = 'MODULE_NOT_FOUND';
		throw e;
	}
	return map[req];
}
webpackContext.keys = function webpackContextKeys() {
	return Object.keys(map);
};
webpackContext.resolve = webpackContextResolve;
module.exports = webpackContext;
webpackContext.id = "3631";

/***/ }),

/***/ "3698":
/***/ (function(module, exports) {

/**
 * Gets the value at `key` of `object`.
 *
 * @private
 * @param {Object} [object] The object to query.
 * @param {string} key The key of the property to get.
 * @returns {*} Returns the property value.
 */
function getValue(object, key) {
  return object == null ? undefined : object[key];
}

module.exports = getValue;


/***/ }),

/***/ "3729":
/***/ (function(module, exports, __webpack_require__) {

var Symbol = __webpack_require__("9e69"),
    getRawTag = __webpack_require__("00fd"),
    objectToString = __webpack_require__("29f3");

/** `Object#toString` result references. */
var nullTag = '[object Null]',
    undefinedTag = '[object Undefined]';

/** Built-in value references. */
var symToStringTag = Symbol ? Symbol.toStringTag : undefined;

/**
 * The base implementation of `getTag` without fallbacks for buggy environments.
 *
 * @private
 * @param {*} value The value to query.
 * @returns {string} Returns the `toStringTag`.
 */
function baseGetTag(value) {
  if (value == null) {
    return value === undefined ? undefinedTag : nullTag;
  }
  return (symToStringTag && symToStringTag in Object(value))
    ? getRawTag(value)
    : objectToString(value);
}

module.exports = baseGetTag;


/***/ }),

/***/ "374e":
/***/ (function(module, exports, __webpack_require__) {

var Tokenizer = __webpack_require__("0b32");

/*
	Options:

	xmlMode: Disables the special behavior for script/style tags (false by default)
	lowerCaseAttributeNames: call .toLowerCase for each attribute name (true if xmlMode is `false`)
	lowerCaseTags: call .toLowerCase for each tag name (true if xmlMode is `false`)
*/

/*
	Callbacks:

	oncdataend,
	oncdatastart,
	onclosetag,
	oncomment,
	oncommentend,
	onerror,
	onopentag,
	onprocessinginstruction,
	onreset,
	ontext
*/

var formTags = {
    input: true,
    option: true,
    optgroup: true,
    select: true,
    button: true,
    datalist: true,
    textarea: true
};

var openImpliesClose = {
    tr: { tr: true, th: true, td: true },
    th: { th: true },
    td: { thead: true, th: true, td: true },
    body: { head: true, link: true, script: true },
    li: { li: true },
    p: { p: true },
    h1: { p: true },
    h2: { p: true },
    h3: { p: true },
    h4: { p: true },
    h5: { p: true },
    h6: { p: true },
    select: formTags,
    input: formTags,
    output: formTags,
    button: formTags,
    datalist: formTags,
    textarea: formTags,
    option: { option: true },
    optgroup: { optgroup: true }
};

var voidElements = {
    __proto__: null,
    area: true,
    base: true,
    basefont: true,
    br: true,
    col: true,
    command: true,
    embed: true,
    frame: true,
    hr: true,
    img: true,
    input: true,
    isindex: true,
    keygen: true,
    link: true,
    meta: true,
    param: true,
    source: true,
    track: true,
    wbr: true
};

var foreignContextElements = {
    __proto__: null,
    math: true,
    svg: true
};
var htmlIntegrationElements = {
    __proto__: null,
    mi: true,
    mo: true,
    mn: true,
    ms: true,
    mtext: true,
    "annotation-xml": true,
    foreignObject: true,
    desc: true,
    title: true
};

var re_nameEnd = /\s|\//;

function Parser(cbs, options) {
    this._options = options || {};
    this._cbs = cbs || {};

    this._tagname = "";
    this._attribname = "";
    this._attribvalue = "";
    this._attribs = null;
    this._stack = [];
    this._foreignContext = [];

    this.startIndex = 0;
    this.endIndex = null;

    this._lowerCaseTagNames =
        "lowerCaseTags" in this._options
            ? !!this._options.lowerCaseTags
            : !this._options.xmlMode;
    this._lowerCaseAttributeNames =
        "lowerCaseAttributeNames" in this._options
            ? !!this._options.lowerCaseAttributeNames
            : !this._options.xmlMode;

    if (this._options.Tokenizer) {
        Tokenizer = this._options.Tokenizer;
    }
    this._tokenizer = new Tokenizer(this._options, this);

    if (this._cbs.onparserinit) this._cbs.onparserinit(this);
}

__webpack_require__("3fb5")(Parser, __webpack_require__("faa1").EventEmitter);

Parser.prototype._updatePosition = function(initialOffset) {
    if (this.endIndex === null) {
        if (this._tokenizer._sectionStart <= initialOffset) {
            this.startIndex = 0;
        } else {
            this.startIndex = this._tokenizer._sectionStart - initialOffset;
        }
    } else this.startIndex = this.endIndex + 1;
    this.endIndex = this._tokenizer.getAbsoluteIndex();
};

//Tokenizer event handlers
Parser.prototype.ontext = function(data) {
    this._updatePosition(1);
    this.endIndex--;

    if (this._cbs.ontext) this._cbs.ontext(data);
};

Parser.prototype.onopentagname = function(name) {
    if (this._lowerCaseTagNames) {
        name = name.toLowerCase();
    }

    this._tagname = name;

    if (!this._options.xmlMode && name in openImpliesClose) {
        for (
            var el;
            (el = this._stack[this._stack.length - 1]) in
            openImpliesClose[name];
            this.onclosetag(el)
        );
    }

    if (this._options.xmlMode || !(name in voidElements)) {
        this._stack.push(name);
        if (name in foreignContextElements) this._foreignContext.push(true);
        else if (name in htmlIntegrationElements)
            this._foreignContext.push(false);
    }

    if (this._cbs.onopentagname) this._cbs.onopentagname(name);
    if (this._cbs.onopentag) this._attribs = {};
};

Parser.prototype.onopentagend = function() {
    this._updatePosition(1);

    if (this._attribs) {
        if (this._cbs.onopentag)
            this._cbs.onopentag(this._tagname, this._attribs);
        this._attribs = null;
    }

    if (
        !this._options.xmlMode &&
        this._cbs.onclosetag &&
        this._tagname in voidElements
    ) {
        this._cbs.onclosetag(this._tagname);
    }

    this._tagname = "";
};

Parser.prototype.onclosetag = function(name) {
    this._updatePosition(1);

    if (this._lowerCaseTagNames) {
        name = name.toLowerCase();
    }
    
    if (name in foreignContextElements || name in htmlIntegrationElements) {
        this._foreignContext.pop();
    }

    if (
        this._stack.length &&
        (!(name in voidElements) || this._options.xmlMode)
    ) {
        var pos = this._stack.lastIndexOf(name);
        if (pos !== -1) {
            if (this._cbs.onclosetag) {
                pos = this._stack.length - pos;
                while (pos--) this._cbs.onclosetag(this._stack.pop());
            } else this._stack.length = pos;
        } else if (name === "p" && !this._options.xmlMode) {
            this.onopentagname(name);
            this._closeCurrentTag();
        }
    } else if (!this._options.xmlMode && (name === "br" || name === "p")) {
        this.onopentagname(name);
        this._closeCurrentTag();
    }
};

Parser.prototype.onselfclosingtag = function() {
    if (
        this._options.xmlMode ||
        this._options.recognizeSelfClosing ||
        this._foreignContext[this._foreignContext.length - 1]
    ) {
        this._closeCurrentTag();
    } else {
        this.onopentagend();
    }
};

Parser.prototype._closeCurrentTag = function() {
    var name = this._tagname;

    this.onopentagend();

    //self-closing tags will be on the top of the stack
    //(cheaper check than in onclosetag)
    if (this._stack[this._stack.length - 1] === name) {
        if (this._cbs.onclosetag) {
            this._cbs.onclosetag(name);
        }
        this._stack.pop();
        
    }
};

Parser.prototype.onattribname = function(name) {
    if (this._lowerCaseAttributeNames) {
        name = name.toLowerCase();
    }
    this._attribname = name;
};

Parser.prototype.onattribdata = function(value) {
    this._attribvalue += value;
};

Parser.prototype.onattribend = function() {
    if (this._cbs.onattribute)
        this._cbs.onattribute(this._attribname, this._attribvalue);
    if (
        this._attribs &&
        !Object.prototype.hasOwnProperty.call(this._attribs, this._attribname)
    ) {
        this._attribs[this._attribname] = this._attribvalue;
    }
    this._attribname = "";
    this._attribvalue = "";
};

Parser.prototype._getInstructionName = function(value) {
    var idx = value.search(re_nameEnd),
        name = idx < 0 ? value : value.substr(0, idx);

    if (this._lowerCaseTagNames) {
        name = name.toLowerCase();
    }

    return name;
};

Parser.prototype.ondeclaration = function(value) {
    if (this._cbs.onprocessinginstruction) {
        var name = this._getInstructionName(value);
        this._cbs.onprocessinginstruction("!" + name, "!" + value);
    }
};

Parser.prototype.onprocessinginstruction = function(value) {
    if (this._cbs.onprocessinginstruction) {
        var name = this._getInstructionName(value);
        this._cbs.onprocessinginstruction("?" + name, "?" + value);
    }
};

Parser.prototype.oncomment = function(value) {
    this._updatePosition(4);

    if (this._cbs.oncomment) this._cbs.oncomment(value);
    if (this._cbs.oncommentend) this._cbs.oncommentend();
};

Parser.prototype.oncdata = function(value) {
    this._updatePosition(1);

    if (this._options.xmlMode || this._options.recognizeCDATA) {
        if (this._cbs.oncdatastart) this._cbs.oncdatastart();
        if (this._cbs.ontext) this._cbs.ontext(value);
        if (this._cbs.oncdataend) this._cbs.oncdataend();
    } else {
        this.oncomment("[CDATA[" + value + "]]");
    }
};

Parser.prototype.onerror = function(err) {
    if (this._cbs.onerror) this._cbs.onerror(err);
};

Parser.prototype.onend = function() {
    if (this._cbs.onclosetag) {
        for (
            var i = this._stack.length;
            i > 0;
            this._cbs.onclosetag(this._stack[--i])
        );
    }
    if (this._cbs.onend) this._cbs.onend();
};

//Resets the parser to a blank state, ready to parse a new HTML document
Parser.prototype.reset = function() {
    if (this._cbs.onreset) this._cbs.onreset();
    this._tokenizer.reset();

    this._tagname = "";
    this._attribname = "";
    this._attribs = null;
    this._stack = [];

    if (this._cbs.onparserinit) this._cbs.onparserinit(this);
};

//Parses a complete HTML document and pushes it to the handler
Parser.prototype.parseComplete = function(data) {
    this.reset();
    this.end(data);
};

Parser.prototype.write = function(chunk) {
    this._tokenizer.write(chunk);
};

Parser.prototype.end = function(chunk) {
    this._tokenizer.end(chunk);
};

Parser.prototype.pause = function() {
    this._tokenizer.pause();
};

Parser.prototype.resume = function() {
    this._tokenizer.resume();
};

//alias for backwards compat
Parser.prototype.parseChunk = Parser.prototype.write;
Parser.prototype.done = Parser.prototype.end;

module.exports = Parser;


/***/ }),

/***/ "3789":
/***/ (function(module, exports, __webpack_require__) {

var LazyWrapper = __webpack_require__("6286"),
    getData = __webpack_require__("285e"),
    getFuncName = __webpack_require__("111b"),
    lodash = __webpack_require__("29fb");

/**
 * Checks if `func` has a lazy counterpart.
 *
 * @private
 * @param {Function} func The function to check.
 * @returns {boolean} Returns `true` if `func` has a lazy counterpart,
 *  else `false`.
 */
function isLaziable(func) {
  var funcName = getFuncName(func),
      other = lodash[funcName];

  if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {
    return false;
  }
  if (func === other) {
    return true;
  }
  var data = getData(other);
  return !!data && func === data[0];
}

module.exports = isLaziable;


/***/ }),

/***/ "387f":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


/**
 * Update an Error with the specified config, error code, and response.
 *
 * @param {Error} error The error to update.
 * @param {Object} config The config.
 * @param {string} [code] The error code (for example, 'ECONNABORTED').
 * @param {Object} [request] The request.
 * @param {Object} [response] The response.
 * @returns {Error} The error.
 */
module.exports = function enhanceError(error, config, code, request, response) {
  error.config = config;
  if (code) {
    error.code = code;
  }

  error.request = request;
  error.response = response;
  error.isAxiosError = true;

  error.toJSON = function() {
    return {
      // Standard
      message: this.message,
      name: this.name,
      // Microsoft
      description: this.description,
      number: this.number,
      // Mozilla
      fileName: this.fileName,
      lineNumber: this.lineNumber,
      columnNumber: this.columnNumber,
      stack: this.stack,
      // Axios
      config: this.config,
      code: this.code
    };
  };
  return error;
};


/***/ }),

/***/ "3934":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");

module.exports = (
  utils.isStandardBrowserEnv() ?

  // Standard browser envs have full support of the APIs needed to test
  // whether the request URL is of the same origin as current location.
    (function standardBrowserEnv() {
      var msie = /(msie|trident)/i.test(navigator.userAgent);
      var urlParsingNode = document.createElement('a');
      var originURL;

      /**
    * Parse a URL to discover it's components
    *
    * @param {String} url The URL to be parsed
    * @returns {Object}
    */
      function resolveURL(url) {
        var href = url;

        if (msie) {
        // IE needs attribute set twice to normalize properties
          urlParsingNode.setAttribute('href', href);
          href = urlParsingNode.href;
        }

        urlParsingNode.setAttribute('href', href);

        // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils
        return {
          href: urlParsingNode.href,
          protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',
          host: urlParsingNode.host,
          search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, '') : '',
          hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',
          hostname: urlParsingNode.hostname,
          port: urlParsingNode.port,
          pathname: (urlParsingNode.pathname.charAt(0) === '/') ?
            urlParsingNode.pathname :
            '/' + urlParsingNode.pathname
        };
      }

      originURL = resolveURL(window.location.href);

      /**
    * Determine if a URL shares the same origin as the current location
    *
    * @param {String} requestURL The URL to test
    * @returns {boolean} True if URL shares the same origin, otherwise false
    */
      return function isURLSameOrigin(requestURL) {
        var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;
        return (parsed.protocol === originURL.protocol &&
            parsed.host === originURL.host);
      };
    })() :

  // Non standard browser envs (web workers, react-native) lack needed support.
    (function nonStandardBrowserEnv() {
      return function isURLSameOrigin() {
        return true;
      };
    })()
);


/***/ }),

/***/ "39ff":
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__("0b07"),
    root = __webpack_require__("2b3e");

/* Built-in method references that are verified to be native. */
var WeakMap = getNative(root, 'WeakMap');

module.exports = WeakMap;


/***/ }),

/***/ "3a7c":
/***/ (function(module, exports, __webpack_require__) {

// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.

// NOTE: These type checking functions intentionally don't use `instanceof`
// because it is fragile and can be easily faked with `Object.create()`.

function isArray(arg) {
  if (Array.isArray) {
    return Array.isArray(arg);
  }
  return objectToString(arg) === '[object Array]';
}
exports.isArray = isArray;

function isBoolean(arg) {
  return typeof arg === 'boolean';
}
exports.isBoolean = isBoolean;

function isNull(arg) {
  return arg === null;
}
exports.isNull = isNull;

function isNullOrUndefined(arg) {
  return arg == null;
}
exports.isNullOrUndefined = isNullOrUndefined;

function isNumber(arg) {
  return typeof arg === 'number';
}
exports.isNumber = isNumber;

function isString(arg) {
  return typeof arg === 'string';
}
exports.isString = isString;

function isSymbol(arg) {
  return typeof arg === 'symbol';
}
exports.isSymbol = isSymbol;

function isUndefined(arg) {
  return arg === void 0;
}
exports.isUndefined = isUndefined;

function isRegExp(re) {
  return objectToString(re) === '[object RegExp]';
}
exports.isRegExp = isRegExp;

function isObject(arg) {
  return typeof arg === 'object' && arg !== null;
}
exports.isObject = isObject;

function isDate(d) {
  return objectToString(d) === '[object Date]';
}
exports.isDate = isDate;

function isError(e) {
  return (objectToString(e) === '[object Error]' || e instanceof Error);
}
exports.isError = isError;

function isFunction(arg) {
  return typeof arg === 'function';
}
exports.isFunction = isFunction;

function isPrimitive(arg) {
  return arg === null ||
         typeof arg === 'boolean' ||
         typeof arg === 'number' ||
         typeof arg === 'string' ||
         typeof arg === 'symbol' ||  // ES6 symbol
         typeof arg === 'undefined';
}
exports.isPrimitive = isPrimitive;

exports.isBuffer = __webpack_require__("b639").Buffer.isBuffer;

function objectToString(o) {
  return Object.prototype.toString.call(o);
}


/***/ }),

/***/ "3b4a":
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__("0b07");

var defineProperty = (function() {
  try {
    var func = getNative(Object, 'defineProperty');
    func({}, '', {});
    return func;
  } catch (e) {}
}());

module.exports = defineProperty;


/***/ }),

/***/ "3bb4":
/***/ (function(module, exports, __webpack_require__) {

var isStrictComparable = __webpack_require__("08cc"),
    keys = __webpack_require__("ec69");

/**
 * Gets the property names, values, and compare flags of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the match data of `object`.
 */
function getMatchData(object) {
  var result = keys(object),
      length = result.length;

  while (length--) {
    var key = result[length],
        value = object[key];

    result[length] = [key, value, isStrictComparable(value)];
  }
  return result;
}

module.exports = getMatchData;


/***/ }),

/***/ "3c04":
/***/ (function(module) {

module.exports = JSON.parse("{\"userInfo\":{\"userId\":114,\"siteId\":\"MLM\",\"isCBT\":false,\"callerId\":114,\"operatorId\":null},\"device\":{\"type\":\"desktop\",\"mobile\":false,\"tablet\":false,\"desktop\":true,\"forced\":false,\"originalType\":\"desktop\",\"osName\":\"windows\",\"osVersion\":\"10\",\"lowEnd\":false,\"webView\":false,\"pciCompliant\":true,\"nativeWebview\":false,\"webviewUserAgent\":{},\"appCapable\":false,\"memory\":\"8\",\"dpr\":\"1\",\"viewportWidth\":\"1263\",\"rtt\":\"250\",\"downlink\":\"9.9\",\"ect\":\"4g\"},\"i18n\":{\"translations\":{},\"locale\":\"es-MX\",\"jsx\":{}},\"isTest\":false}");

/***/ }),

/***/ "3cc0":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var TransformStream = __webpack_require__("d485").Transform,
    DevNullStream = __webpack_require__("ddcd"),
    inherits = __webpack_require__("3022").inherits,
    Tokenizer = __webpack_require__("b1dc"),
    LocationInfoTokenizerMixin = __webpack_require__("7180"),
    ParserFeedbackSimulator = __webpack_require__("6fb2"),
    mergeOptions = __webpack_require__("de90");

var DEFAULT_OPTIONS = {
    locationInfo: false
};

var SAXParser = module.exports = function (options) {
    TransformStream.call(this);

    this.options = mergeOptions(DEFAULT_OPTIONS, options);

    this.tokenizer = new Tokenizer(options);

    if (this.options.locationInfo)
        new LocationInfoTokenizerMixin(this.tokenizer);

    this.parserFeedbackSimulator = new ParserFeedbackSimulator(this.tokenizer);

    this.pendingText = null;
    this.currentTokenLocation = void 0;

    this.lastChunkWritten = false;
    this.stopped = false;

    // NOTE: always pipe stream to the /dev/null stream to avoid
    // `highWaterMark` hit even if we don't have consumers.
    // (see: https://github.com/inikulin/parse5/issues/97#issuecomment-171940774)
    this.pipe(new DevNullStream());
};

inherits(SAXParser, TransformStream);

//TransformStream implementation
SAXParser.prototype._transform = function (chunk, encoding, callback) {
    if (!this.stopped) {
        this.tokenizer.write(chunk.toString('utf8'), this.lastChunkWritten);
        this._runParsingLoop();
    }

    this.push(chunk);

    callback();
};

SAXParser.prototype._flush = function (callback) {
    callback();
};

SAXParser.prototype.end = function (chunk, encoding, callback) {
    this.lastChunkWritten = true;
    TransformStream.prototype.end.call(this, chunk, encoding, callback);
};

SAXParser.prototype.stop = function () {
    this.stopped = true;
};

//Internals
SAXParser.prototype._runParsingLoop = function () {
    do {
        var token = this.parserFeedbackSimulator.getNextToken();

        if (token.type === Tokenizer.HIBERNATION_TOKEN)
            break;

        if (token.type === Tokenizer.CHARACTER_TOKEN ||
            token.type === Tokenizer.WHITESPACE_CHARACTER_TOKEN ||
            token.type === Tokenizer.NULL_CHARACTER_TOKEN) {

            if (this.options.locationInfo) {
                if (this.pendingText === null)
                    this.currentTokenLocation = token.location;

                else
                    this.currentTokenLocation.endOffset = token.location.endOffset;
            }

            this.pendingText = (this.pendingText || '') + token.chars;
        }

        else {
            this._emitPendingText();
            this._handleToken(token);
        }
    } while (!this.stopped && token.type !== Tokenizer.EOF_TOKEN);
};

SAXParser.prototype._handleToken = function (token) {
    if (this.options.locationInfo)
        this.currentTokenLocation = token.location;

    if (token.type === Tokenizer.START_TAG_TOKEN)
        this.emit('startTag', token.tagName, token.attrs, token.selfClosing, this.currentTokenLocation);

    else if (token.type === Tokenizer.END_TAG_TOKEN)
        this.emit('endTag', token.tagName, this.currentTokenLocation);

    else if (token.type === Tokenizer.COMMENT_TOKEN)
        this.emit('comment', token.data, this.currentTokenLocation);

    else if (token.type === Tokenizer.DOCTYPE_TOKEN)
        this.emit('doctype', token.name, token.publicId, token.systemId, this.currentTokenLocation);
};

SAXParser.prototype._emitPendingText = function () {
    if (this.pendingText !== null) {
        this.emit('text', this.pendingText, this.currentTokenLocation);
        this.pendingText = null;
    }
};


/***/ }),

/***/ "3cf8":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var HTML = __webpack_require__("f30b");

//Aliases
var $ = HTML.TAG_NAMES,
    NS = HTML.NAMESPACES;

//Element utils

//OPTIMIZATION: Integer comparisons are low-cost, so we can use very fast tag name length filters here.
//It's faster than using dictionary.
function isImpliedEndTagRequired(tn) {
    switch (tn.length) {
        case 1:
            return tn === $.P;

        case 2:
            return tn === $.RB || tn === $.RP || tn === $.RT || tn === $.DD || tn === $.DT || tn === $.LI;

        case 3:
            return tn === $.RTC;

        case 6:
            return tn === $.OPTION;

        case 8:
            return tn === $.OPTGROUP || tn === $.MENUITEM;
    }

    return false;
}

function isScopingElement(tn, ns) {
    switch (tn.length) {
        case 2:
            if (tn === $.TD || tn === $.TH)
                return ns === NS.HTML;

            else if (tn === $.MI || tn === $.MO || tn === $.MN || tn === $.MS)
                return ns === NS.MATHML;

            break;

        case 4:
            if (tn === $.HTML)
                return ns === NS.HTML;

            else if (tn === $.DESC)
                return ns === NS.SVG;

            break;

        case 5:
            if (tn === $.TABLE)
                return ns === NS.HTML;

            else if (tn === $.MTEXT)
                return ns === NS.MATHML;

            else if (tn === $.TITLE)
                return ns === NS.SVG;

            break;

        case 6:
            return (tn === $.APPLET || tn === $.OBJECT) && ns === NS.HTML;

        case 7:
            return (tn === $.CAPTION || tn === $.MARQUEE) && ns === NS.HTML;

        case 8:
            return tn === $.TEMPLATE && ns === NS.HTML;

        case 13:
            return tn === $.FOREIGN_OBJECT && ns === NS.SVG;

        case 14:
            return tn === $.ANNOTATION_XML && ns === NS.MATHML;
    }

    return false;
}

//Stack of open elements
var OpenElementStack = module.exports = function (document, treeAdapter) {
    this.stackTop = -1;
    this.items = [];
    this.current = document;
    this.currentTagName = null;
    this.currentTmplContent = null;
    this.tmplCount = 0;
    this.treeAdapter = treeAdapter;
};

//Index of element
OpenElementStack.prototype._indexOf = function (element) {
    var idx = -1;

    for (var i = this.stackTop; i >= 0; i--) {
        if (this.items[i] === element) {
            idx = i;
            break;
        }
    }
    return idx;
};

//Update current element
OpenElementStack.prototype._isInTemplate = function () {
    return this.currentTagName === $.TEMPLATE && this.treeAdapter.getNamespaceURI(this.current) === NS.HTML;
};

OpenElementStack.prototype._updateCurrentElement = function () {
    this.current = this.items[this.stackTop];
    this.currentTagName = this.current && this.treeAdapter.getTagName(this.current);

    this.currentTmplContent = this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : null;
};

//Mutations
OpenElementStack.prototype.push = function (element) {
    this.items[++this.stackTop] = element;
    this._updateCurrentElement();

    if (this._isInTemplate())
        this.tmplCount++;

};

OpenElementStack.prototype.pop = function () {
    this.stackTop--;

    if (this.tmplCount > 0 && this._isInTemplate())
        this.tmplCount--;

    this._updateCurrentElement();
};

OpenElementStack.prototype.replace = function (oldElement, newElement) {
    var idx = this._indexOf(oldElement);

    this.items[idx] = newElement;

    if (idx === this.stackTop)
        this._updateCurrentElement();
};

OpenElementStack.prototype.insertAfter = function (referenceElement, newElement) {
    var insertionIdx = this._indexOf(referenceElement) + 1;

    this.items.splice(insertionIdx, 0, newElement);

    if (insertionIdx === ++this.stackTop)
        this._updateCurrentElement();
};

OpenElementStack.prototype.popUntilTagNamePopped = function (tagName) {
    while (this.stackTop > -1) {
        var tn = this.currentTagName,
            ns = this.treeAdapter.getNamespaceURI(this.current);

        this.pop();

        if (tn === tagName && ns === NS.HTML)
            break;
    }
};

OpenElementStack.prototype.popUntilElementPopped = function (element) {
    while (this.stackTop > -1) {
        var poppedElement = this.current;

        this.pop();

        if (poppedElement === element)
            break;
    }
};

OpenElementStack.prototype.popUntilNumberedHeaderPopped = function () {
    while (this.stackTop > -1) {
        var tn = this.currentTagName,
            ns = this.treeAdapter.getNamespaceURI(this.current);

        this.pop();

        if (tn === $.H1 || tn === $.H2 || tn === $.H3 || tn === $.H4 || tn === $.H5 || tn === $.H6 && ns === NS.HTML)
            break;
    }
};

OpenElementStack.prototype.popUntilTableCellPopped = function () {
    while (this.stackTop > -1) {
        var tn = this.currentTagName,
            ns = this.treeAdapter.getNamespaceURI(this.current);

        this.pop();

        if (tn === $.TD || tn === $.TH && ns === NS.HTML)
            break;
    }
};

OpenElementStack.prototype.popAllUpToHtmlElement = function () {
    //NOTE: here we assume that root <html> element is always first in the open element stack, so
    //we perform this fast stack clean up.
    this.stackTop = 0;
    this._updateCurrentElement();
};

OpenElementStack.prototype.clearBackToTableContext = function () {
    while (this.currentTagName !== $.TABLE &&
           this.currentTagName !== $.TEMPLATE &&
           this.currentTagName !== $.HTML ||
           this.treeAdapter.getNamespaceURI(this.current) !== NS.HTML)
        this.pop();
};

OpenElementStack.prototype.clearBackToTableBodyContext = function () {
    while (this.currentTagName !== $.TBODY &&
           this.currentTagName !== $.TFOOT &&
           this.currentTagName !== $.THEAD &&
           this.currentTagName !== $.TEMPLATE &&
           this.currentTagName !== $.HTML ||
           this.treeAdapter.getNamespaceURI(this.current) !== NS.HTML)
        this.pop();
};

OpenElementStack.prototype.clearBackToTableRowContext = function () {
    while (this.currentTagName !== $.TR &&
           this.currentTagName !== $.TEMPLATE &&
           this.currentTagName !== $.HTML ||
           this.treeAdapter.getNamespaceURI(this.current) !== NS.HTML)
        this.pop();
};

OpenElementStack.prototype.remove = function (element) {
    for (var i = this.stackTop; i >= 0; i--) {
        if (this.items[i] === element) {
            this.items.splice(i, 1);
            this.stackTop--;
            this._updateCurrentElement();
            break;
        }
    }
};

//Search
OpenElementStack.prototype.tryPeekProperlyNestedBodyElement = function () {
    //Properly nested <body> element (should be second element in stack).
    var element = this.items[1];

    return element && this.treeAdapter.getTagName(element) === $.BODY ? element : null;
};

OpenElementStack.prototype.contains = function (element) {
    return this._indexOf(element) > -1;
};

OpenElementStack.prototype.getCommonAncestor = function (element) {
    var elementIdx = this._indexOf(element);

    return --elementIdx >= 0 ? this.items[elementIdx] : null;
};

OpenElementStack.prototype.isRootHtmlElementCurrent = function () {
    return this.stackTop === 0 && this.currentTagName === $.HTML;
};

//Element in scope
OpenElementStack.prototype.hasInScope = function (tagName) {
    for (var i = this.stackTop; i >= 0; i--) {
        var tn = this.treeAdapter.getTagName(this.items[i]),
            ns = this.treeAdapter.getNamespaceURI(this.items[i]);

        if (tn === tagName && ns === NS.HTML)
            return true;

        if (isScopingElement(tn, ns))
            return false;
    }

    return true;
};

OpenElementStack.prototype.hasNumberedHeaderInScope = function () {
    for (var i = this.stackTop; i >= 0; i--) {
        var tn = this.treeAdapter.getTagName(this.items[i]),
            ns = this.treeAdapter.getNamespaceURI(this.items[i]);

        if ((tn === $.H1 || tn === $.H2 || tn === $.H3 || tn === $.H4 || tn === $.H5 || tn === $.H6) && ns === NS.HTML)
            return true;

        if (isScopingElement(tn, ns))
            return false;
    }

    return true;
};

OpenElementStack.prototype.hasInListItemScope = function (tagName) {
    for (var i = this.stackTop; i >= 0; i--) {
        var tn = this.treeAdapter.getTagName(this.items[i]),
            ns = this.treeAdapter.getNamespaceURI(this.items[i]);

        if (tn === tagName && ns === NS.HTML)
            return true;

        if ((tn === $.UL || tn === $.OL) && ns === NS.HTML || isScopingElement(tn, ns))
            return false;
    }

    return true;
};

OpenElementStack.prototype.hasInButtonScope = function (tagName) {
    for (var i = this.stackTop; i >= 0; i--) {
        var tn = this.treeAdapter.getTagName(this.items[i]),
            ns = this.treeAdapter.getNamespaceURI(this.items[i]);

        if (tn === tagName && ns === NS.HTML)
            return true;

        if (tn === $.BUTTON && ns === NS.HTML || isScopingElement(tn, ns))
            return false;
    }

    return true;
};

OpenElementStack.prototype.hasInTableScope = function (tagName) {
    for (var i = this.stackTop; i >= 0; i--) {
        var tn = this.treeAdapter.getTagName(this.items[i]),
            ns = this.treeAdapter.getNamespaceURI(this.items[i]);

        if (ns !== NS.HTML)
            continue;

        if (tn === tagName)
            return true;

        if (tn === $.TABLE || tn === $.TEMPLATE || tn === $.HTML)
            return false;
    }

    return true;
};

OpenElementStack.prototype.hasTableBodyContextInTableScope = function () {
    for (var i = this.stackTop; i >= 0; i--) {
        var tn = this.treeAdapter.getTagName(this.items[i]),
            ns = this.treeAdapter.getNamespaceURI(this.items[i]);

        if (ns !== NS.HTML)
            continue;

        if (tn === $.TBODY || tn === $.THEAD || tn === $.TFOOT)
            return true;

        if (tn === $.TABLE || tn === $.HTML)
            return false;
    }

    return true;
};

OpenElementStack.prototype.hasInSelectScope = function (tagName) {
    for (var i = this.stackTop; i >= 0; i--) {
        var tn = this.treeAdapter.getTagName(this.items[i]),
            ns = this.treeAdapter.getNamespaceURI(this.items[i]);

        if (ns !== NS.HTML)
            continue;

        if (tn === tagName)
            return true;

        if (tn !== $.OPTION && tn !== $.OPTGROUP)
            return false;
    }

    return true;
};

//Implied end tags
OpenElementStack.prototype.generateImpliedEndTags = function () {
    while (isImpliedEndTagRequired(this.currentTagName))
        this.pop();
};

OpenElementStack.prototype.generateImpliedEndTagsWithExclusion = function (exclusionTagName) {
    while (isImpliedEndTagRequired(this.currentTagName) && this.currentTagName !== exclusionTagName)
        this.pop();
};


/***/ }),

/***/ "3e68":
/***/ (function(module, exports, __webpack_require__) {

"use strict";
// Adapted from Chris Veness' SHA1 code at
// http://www.movable-type.co.uk/scripts/sha1.html


function f(s, x, y, z) {
  switch (s) {
    case 0: return (x & y) ^ (~x & z);
    case 1: return x ^ y ^ z;
    case 2: return (x & y) ^ (x & z) ^ (y & z);
    case 3: return x ^ y ^ z;
  }
}

function ROTL(x, n) {
  return (x << n) | (x>>> (32 - n));
}

function sha1(bytes) {
  var K = [0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6];
  var H = [0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0];

  if (typeof(bytes) == 'string') {
    var msg = unescape(encodeURIComponent(bytes)); // UTF8 escape
    bytes = new Array(msg.length);
    for (var i = 0; i < msg.length; i++) bytes[i] = msg.charCodeAt(i);
  }

  bytes.push(0x80);

  var l = bytes.length/4 + 2;
  var N = Math.ceil(l/16);
  var M = new Array(N);

  for (var i=0; i<N; i++) {
    M[i] = new Array(16);
    for (var j=0; j<16; j++) {
      M[i][j] =
        bytes[i * 64 + j * 4] << 24 |
        bytes[i * 64 + j * 4 + 1] << 16 |
        bytes[i * 64 + j * 4 + 2] << 8 |
        bytes[i * 64 + j * 4 + 3];
    }
  }

  M[N - 1][14] = ((bytes.length - 1) * 8) /
    Math.pow(2, 32); M[N - 1][14] = Math.floor(M[N - 1][14]);
  M[N - 1][15] = ((bytes.length - 1) * 8) & 0xffffffff;

  for (var i=0; i<N; i++) {
    var W = new Array(80);

    for (var t=0; t<16; t++) W[t] = M[i][t];
    for (var t=16; t<80; t++) {
      W[t] = ROTL(W[t - 3] ^ W[t - 8] ^ W[t - 14] ^ W[t - 16], 1);
    }

    var a = H[0];
    var b = H[1];
    var c = H[2];
    var d = H[3];
    var e = H[4];

    for (var t=0; t<80; t++) {
      var s = Math.floor(t/20);
      var T = ROTL(a, 5) + f(s, b, c, d) + e + K[s] + W[t] >>> 0;
      e = d;
      d = c;
      c = ROTL(b, 30) >>> 0;
      b = a;
      a = T;
    }

    H[0] = (H[0] + a) >>> 0;
    H[1] = (H[1] + b) >>> 0;
    H[2] = (H[2] + c) >>> 0;
    H[3] = (H[3] + d) >>> 0;
    H[4] = (H[4] + e) >>> 0;
  }

  return [
    H[0] >> 24 & 0xff, H[0] >> 16 & 0xff, H[0] >> 8 & 0xff, H[0] & 0xff,
    H[1] >> 24 & 0xff, H[1] >> 16 & 0xff, H[1] >> 8 & 0xff, H[1] & 0xff,
    H[2] >> 24 & 0xff, H[2] >> 16 & 0xff, H[2] >> 8 & 0xff, H[2] & 0xff,
    H[3] >> 24 & 0xff, H[3] >> 16 & 0xff, H[3] >> 8 & 0xff, H[3] & 0xff,
    H[4] >> 24 & 0xff, H[4] >> 16 & 0xff, H[4] >> 8 & 0xff, H[4] & 0xff
  ];
}

module.exports = sha1;


/***/ }),

/***/ "3e8b":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Mixin = __webpack_require__("362e"),
    inherits = __webpack_require__("3022").inherits,
    UNICODE = __webpack_require__("5182");

//Aliases
var $ = UNICODE.CODE_POINTS;

var PositionTrackingPreprocessorMixin = module.exports = function (preprocessor) {
    // NOTE: avoid installing tracker twice
    if (!preprocessor.__locTracker) {
        preprocessor.__locTracker = this;

        Mixin.call(this, preprocessor);

        this.preprocessor = preprocessor;
        this.isEol = false;
        this.lineStartPos = 0;
        this.droppedBufferSize = 0;

        this.col = -1;
        this.line = 1;
    }

    return preprocessor.__locTracker;
};

inherits(PositionTrackingPreprocessorMixin, Mixin);

Object.defineProperty(PositionTrackingPreprocessorMixin.prototype, 'offset', {
    get: function () {
        return this.droppedBufferSize + this.preprocessor.pos;
    }
});

PositionTrackingPreprocessorMixin.prototype._getOverriddenMethods = function (mxn, orig) {
    return {
        advance: function () {
            var cp = orig.advance.call(this);

            //NOTE: LF should be in the last column of the line
            if (mxn.isEol) {
                mxn.isEol = false;
                mxn.line++;
                mxn.lineStartPos = mxn.offset;
            }

            if (cp === $.LINE_FEED)
                mxn.isEol = true;

            mxn.col = mxn.offset - mxn.lineStartPos + 1;

            return cp;
        },

        retreat: function () {
            orig.retreat.call(this);
            mxn.isEol = false;

            mxn.col = mxn.offset - mxn.lineStartPos + 1;
        },

        dropParsedChunk: function () {
            var prevPos = this.pos;

            orig.dropParsedChunk.call(this);

            mxn.droppedBufferSize += prevPos - this.pos;
        }
    };
};


/***/ }),

/***/ "3fb5":
/***/ (function(module, exports) {

if (typeof Object.create === 'function') {
  // implementation from standard node.js 'util' module
  module.exports = function inherits(ctor, superCtor) {
    if (superCtor) {
      ctor.super_ = superCtor
      ctor.prototype = Object.create(superCtor.prototype, {
        constructor: {
          value: ctor,
          enumerable: false,
          writable: true,
          configurable: true
        }
      })
    }
  };
} else {
  // old school shim for old browsers
  module.exports = function inherits(ctor, superCtor) {
    if (superCtor) {
      ctor.super_ = superCtor
      var TempCtor = function () {}
      TempCtor.prototype = superCtor.prototype
      ctor.prototype = new TempCtor()
      ctor.prototype.constructor = ctor
    }
  }
}


/***/ }),

/***/ "4127":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("d233");
var formats = __webpack_require__("b313");

var arrayPrefixGenerators = {
    brackets: function brackets(prefix) {
        return prefix + '[]';
    },
    indices: function indices(prefix, key) {
        return prefix + '[' + key + ']';
    },
    repeat: function repeat(prefix) {
        return prefix;
    }
};

var isArray = Array.isArray;
var push = Array.prototype.push;
var pushToArray = function (arr, valueOrArray) {
    push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]);
};

var toISO = Date.prototype.toISOString;

var defaults = {
    delimiter: '&',
    encode: true,
    encoder: utils.encode,
    encodeValuesOnly: false,
    serializeDate: function serializeDate(date) {
        return toISO.call(date);
    },
    skipNulls: false,
    strictNullHandling: false
};

var stringify = function stringify(
    object,
    prefix,
    generateArrayPrefix,
    strictNullHandling,
    skipNulls,
    encoder,
    filter,
    sort,
    allowDots,
    serializeDate,
    formatter,
    encodeValuesOnly
) {
    var obj = object;
    if (typeof filter === 'function') {
        obj = filter(prefix, obj);
    } else if (obj instanceof Date) {
        obj = serializeDate(obj);
    }

    if (obj === null) {
        if (strictNullHandling) {
            return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder) : prefix;
        }

        obj = '';
    }

    if (typeof obj === 'string' || typeof obj === 'number' || typeof obj === 'boolean' || utils.isBuffer(obj)) {
        if (encoder) {
            var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder);
            return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder))];
        }
        return [formatter(prefix) + '=' + formatter(String(obj))];
    }

    var values = [];

    if (typeof obj === 'undefined') {
        return values;
    }

    var objKeys;
    if (isArray(filter)) {
        objKeys = filter;
    } else {
        var keys = Object.keys(obj);
        objKeys = sort ? keys.sort(sort) : keys;
    }

    for (var i = 0; i < objKeys.length; ++i) {
        var key = objKeys[i];

        if (skipNulls && obj[key] === null) {
            continue;
        }

        if (isArray(obj)) {
            pushToArray(values, stringify(
                obj[key],
                generateArrayPrefix(prefix, key),
                generateArrayPrefix,
                strictNullHandling,
                skipNulls,
                encoder,
                filter,
                sort,
                allowDots,
                serializeDate,
                formatter,
                encodeValuesOnly
            ));
        } else {
            pushToArray(values, stringify(
                obj[key],
                prefix + (allowDots ? '.' + key : '[' + key + ']'),
                generateArrayPrefix,
                strictNullHandling,
                skipNulls,
                encoder,
                filter,
                sort,
                allowDots,
                serializeDate,
                formatter,
                encodeValuesOnly
            ));
        }
    }

    return values;
};

module.exports = function (object, opts) {
    var obj = object;
    var options = opts ? utils.assign({}, opts) : {};

    if (options.encoder !== null && typeof options.encoder !== 'undefined' && typeof options.encoder !== 'function') {
        throw new TypeError('Encoder has to be a function.');
    }

    var delimiter = typeof options.delimiter === 'undefined' ? defaults.delimiter : options.delimiter;
    var strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : defaults.strictNullHandling;
    var skipNulls = typeof options.skipNulls === 'boolean' ? options.skipNulls : defaults.skipNulls;
    var encode = typeof options.encode === 'boolean' ? options.encode : defaults.encode;
    var encoder = typeof options.encoder === 'function' ? options.encoder : defaults.encoder;
    var sort = typeof options.sort === 'function' ? options.sort : null;
    var allowDots = typeof options.allowDots === 'undefined' ? false : options.allowDots;
    var serializeDate = typeof options.serializeDate === 'function' ? options.serializeDate : defaults.serializeDate;
    var encodeValuesOnly = typeof options.encodeValuesOnly === 'boolean' ? options.encodeValuesOnly : defaults.encodeValuesOnly;
    if (typeof options.format === 'undefined') {
        options.format = formats['default'];
    } else if (!Object.prototype.hasOwnProperty.call(formats.formatters, options.format)) {
        throw new TypeError('Unknown format option provided.');
    }
    var formatter = formats.formatters[options.format];
    var objKeys;
    var filter;

    if (typeof options.filter === 'function') {
        filter = options.filter;
        obj = filter('', obj);
    } else if (isArray(options.filter)) {
        filter = options.filter;
        objKeys = filter;
    }

    var keys = [];

    if (typeof obj !== 'object' || obj === null) {
        return '';
    }

    var arrayFormat;
    if (options.arrayFormat in arrayPrefixGenerators) {
        arrayFormat = options.arrayFormat;
    } else if ('indices' in options) {
        arrayFormat = options.indices ? 'indices' : 'repeat';
    } else {
        arrayFormat = 'indices';
    }

    var generateArrayPrefix = arrayPrefixGenerators[arrayFormat];

    if (!objKeys) {
        objKeys = Object.keys(obj);
    }

    if (sort) {
        objKeys.sort(sort);
    }

    for (var i = 0; i < objKeys.length; ++i) {
        var key = objKeys[i];

        if (skipNulls && obj[key] === null) {
            continue;
        }
        pushToArray(keys, stringify(
            obj[key],
            key,
            generateArrayPrefix,
            strictNullHandling,
            skipNulls,
            encode ? encoder : null,
            filter,
            sort,
            allowDots,
            serializeDate,
            formatter,
            encodeValuesOnly
        ));
    }

    var joined = keys.join(delimiter);
    var prefix = options.addQueryPrefix === true ? '?' : '';

    return joined.length > 0 ? prefix + joined : '';
};


/***/ }),

/***/ "41c3":
/***/ (function(module, exports, __webpack_require__) {

var isObject = __webpack_require__("1a8c"),
    isPrototype = __webpack_require__("eac5"),
    nativeKeysIn = __webpack_require__("ec8c");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names.
 */
function baseKeysIn(object) {
  if (!isObject(object)) {
    return nativeKeysIn(object);
  }
  var isProto = isPrototype(object),
      result = [];

  for (var key in object) {
    if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {
      result.push(key);
    }
  }
  return result;
}

module.exports = baseKeysIn;


/***/ }),

/***/ "4245":
/***/ (function(module, exports, __webpack_require__) {

var isKeyable = __webpack_require__("1290");

/**
 * Gets the data for `map`.
 *
 * @private
 * @param {Object} map The map to query.
 * @param {string} key The reference key.
 * @returns {*} Returns the map data.
 */
function getMapData(map, key) {
  var data = map.__data__;
  return isKeyable(key)
    ? data[typeof key == 'string' ? 'string' : 'hash']
    : data.map;
}

module.exports = getMapData;


/***/ }),

/***/ "42454":
/***/ (function(module, exports, __webpack_require__) {

var baseMerge = __webpack_require__("f909"),
    createAssigner = __webpack_require__("2ec1");

/**
 * This method is like `_.assign` except that it recursively merges own and
 * inherited enumerable string keyed properties of source objects into the
 * destination object. Source properties that resolve to `undefined` are
 * skipped if a destination value exists. Array and plain object properties
 * are merged recursively. Other objects and value types are overridden by
 * assignment. Source objects are applied from left to right. Subsequent
 * sources overwrite property assignments of previous sources.
 *
 * **Note:** This method mutates `object`.
 *
 * @static
 * @memberOf _
 * @since 0.5.0
 * @category Object
 * @param {Object} object The destination object.
 * @param {...Object} [sources] The source objects.
 * @returns {Object} Returns `object`.
 * @example
 *
 * var object = {
 *   'a': [{ 'b': 2 }, { 'd': 4 }]
 * };
 *
 * var other = {
 *   'a': [{ 'c': 3 }, { 'e': 5 }]
 * };
 *
 * _.merge(object, other);
 * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }
 */
var merge = createAssigner(function(object, source, srcIndex) {
  baseMerge(object, source, srcIndex);
});

module.exports = merge;


/***/ }),

/***/ "4284":
/***/ (function(module, exports) {

/**
 * A specialized version of `_.some` for arrays without support for iteratee
 * shorthands.
 *
 * @private
 * @param {Array} [array] The array to iterate over.
 * @param {Function} predicate The function invoked per iteration.
 * @returns {boolean} Returns `true` if any element passes the predicate check,
 *  else `false`.
 */
function arraySome(array, predicate) {
  var index = -1,
      length = array == null ? 0 : array.length;

  while (++index < length) {
    if (predicate(array[index], index, array)) {
      return true;
    }
  }
  return false;
}

module.exports = arraySome;


/***/ }),

/***/ "429b":
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__("faa1").EventEmitter;


/***/ }),

/***/ "42a2":
/***/ (function(module, exports, __webpack_require__) {

var DataView = __webpack_require__("b5a7"),
    Map = __webpack_require__("79bc"),
    Promise = __webpack_require__("1cec"),
    Set = __webpack_require__("c869"),
    WeakMap = __webpack_require__("39ff"),
    baseGetTag = __webpack_require__("3729"),
    toSource = __webpack_require__("dc57");

/** `Object#toString` result references. */
var mapTag = '[object Map]',
    objectTag = '[object Object]',
    promiseTag = '[object Promise]',
    setTag = '[object Set]',
    weakMapTag = '[object WeakMap]';

var dataViewTag = '[object DataView]';

/** Used to detect maps, sets, and weakmaps. */
var dataViewCtorString = toSource(DataView),
    mapCtorString = toSource(Map),
    promiseCtorString = toSource(Promise),
    setCtorString = toSource(Set),
    weakMapCtorString = toSource(WeakMap);

/**
 * Gets the `toStringTag` of `value`.
 *
 * @private
 * @param {*} value The value to query.
 * @returns {string} Returns the `toStringTag`.
 */
var getTag = baseGetTag;

// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.
if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||
    (Map && getTag(new Map) != mapTag) ||
    (Promise && getTag(Promise.resolve()) != promiseTag) ||
    (Set && getTag(new Set) != setTag) ||
    (WeakMap && getTag(new WeakMap) != weakMapTag)) {
  getTag = function(value) {
    var result = baseGetTag(value),
        Ctor = result == objectTag ? value.constructor : undefined,
        ctorString = Ctor ? toSource(Ctor) : '';

    if (ctorString) {
      switch (ctorString) {
        case dataViewCtorString: return dataViewTag;
        case mapCtorString: return mapTag;
        case promiseCtorString: return promiseTag;
        case setCtorString: return setTag;
        case weakMapCtorString: return weakMapTag;
      }
    }
    return result;
  };
}

module.exports = getTag;


/***/ }),

/***/ "42a5":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return monitor; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return removeMonitor; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return distribute; });
/* unused harmony export asyncDistribute */
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }

function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

/**
 * 事件管理
 * 用户注册/触发监听事件。
 */
//  var eventPools = window.eventPools = {};
var eventPools = {};
var event = {
  addEventListener: function addEventListener(type, selector, thisObj) {
    if (!eventPools[type]) {
      eventPools[type] = [];
    }

    eventPools[type].push({
      selector: selector,
      thisObj: thisObj
    });
    return true;
  },
  removeEventListener: function removeEventListener(type, selector) {
    if (!eventPools[type]) {
      return false;
    }

    for (var i = eventPools[type].length - 1; i > -1; i--) {
      if (selector) {
        if (eventPools[type][i].selector === selector) {
          eventPools[type].splice(i, 1);
        }
      } else {
        eventPools[type].splice(i, 1);
      }
    }

    if (eventPools[type].length === 0) {
      delete eventPools[type];
    }

    return true;
  },
  // triggerEvent (type, data) {
  //   if (!eventPools[type]) {
  //     return false;
  //   }
  //   for (let i = 0, len = eventPools[type].length; i < len; i++) {
  //     if (!eventPools[type]) {
  //       continue;
  //     }
  //     let thisObj = eventPools[type][i].thisObj;
  //     let selector = eventPools[type][i].selector;
  //     if (thisObj) {
  //       selector.call(thisObj, data);
  //     } else {
  //       selector(data);
  //     }
  //   }
  //   return true;
  // },
  triggerEvent: function triggerEvent(type, data) {
    if (!eventPools[type]) {
      return false;
    }

    var arr = [];

    for (var i = 0, len = eventPools[type].length; i < len; i++) {
      if (!eventPools[type]) {
        continue;
      }

      var thisObj = eventPools[type][i].thisObj;
      var selector = eventPools[type][i].selector;
      arr.push(thisObj ? selector.call(thisObj, data) : selector(data));
    }

    return arr;
  }
};
var connector = {
  // 发布事件
  emit: function emit(types, data) {
    if (!types) {
      return false;
    }

    var typeArr = [];

    if (typeof types === 'string') {
      typeArr = types.split(',');
    } else {
      typeArr = types.slice();
    }

    if (typeArr.length === 0) {
      return false;
    }

    typeArr.forEach(function (type) {
      event.triggerEvent(type, data);
    }, this);
    return true;
  },
  // 异步发布
  asyncEmit: function asyncEmit(types, data) {
    if (!types) {
      return false;
    }

    var typeArr = [];

    if (typeof types === 'string') {
      typeArr = types.split(',');
    } else {
      typeArr = types.slice();
    }

    if (typeArr.length === 0) {
      return false;
    }

    var arr = [];
    typeArr.forEach(function (type) {
      arr.push.apply(arr, _toConsumableArray(event.triggerEvent(type, data)));
    }, this);
    return Promise.all(arr);
  },
  // 订阅事件
  on: function on(types, selector, thisObj) {
    if (!types) {
      return false;
    }

    var typeArr = [];

    if (typeof types === 'string') {
      typeArr = types.split(',');
    } else {
      typeArr = types.slice();
    }

    if (typeArr.length === 0) {
      return false;
    }

    typeArr.forEach(function (type) {
      event.addEventListener(type, selector, thisObj);
    }, this);
    return true;
  },
  // 取消订阅
  off: function off(types, selector) {
    if (!types) {
      return false;
    }

    var typeArr = [];

    if (typeof types === 'string') {
      typeArr = types.split(',');
    } else {
      typeArr = types.slice();
    }

    if (typeArr.length === 0) {
      return false;
    }

    typeArr.forEach(function (type) {
      event.removeEventListener(type, selector);
    }, this);
    return true;
  }
};
var monitor = function monitor(types, selector, thisObj) {
  connector.on(types, selector, thisObj);
};
var removeMonitor = function removeMonitor(types, selector) {
  connector.off(types, selector);
};
var distribute = function distribute(types, data) {
  connector.emit(types, data);
};
var asyncDistribute = function asyncDistribute(types, data) {
  return connector.asyncEmit(types, data);
};

/***/ }),

/***/ "430c":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Tokenizer = __webpack_require__("b1dc"),
    OpenElementStack = __webpack_require__("3cf8"),
    FormattingElementList = __webpack_require__("b952"),
    LocationInfoParserMixin = __webpack_require__("1be6"),
    defaultTreeAdapter = __webpack_require__("bd47"),
    mergeOptions = __webpack_require__("de90"),
    doctype = __webpack_require__("1ff4"),
    foreignContent = __webpack_require__("00db"),
    UNICODE = __webpack_require__("5182"),
    HTML = __webpack_require__("f30b");

//Aliases
var $ = HTML.TAG_NAMES,
    NS = HTML.NAMESPACES,
    ATTRS = HTML.ATTRS;

var DEFAULT_OPTIONS = {
    locationInfo: false,
    treeAdapter: defaultTreeAdapter
};

//Misc constants
var HIDDEN_INPUT_TYPE = 'hidden';

//Adoption agency loops iteration count
var AA_OUTER_LOOP_ITER = 8,
    AA_INNER_LOOP_ITER = 3;

//Insertion modes
var INITIAL_MODE = 'INITIAL_MODE',
    BEFORE_HTML_MODE = 'BEFORE_HTML_MODE',
    BEFORE_HEAD_MODE = 'BEFORE_HEAD_MODE',
    IN_HEAD_MODE = 'IN_HEAD_MODE',
    AFTER_HEAD_MODE = 'AFTER_HEAD_MODE',
    IN_BODY_MODE = 'IN_BODY_MODE',
    TEXT_MODE = 'TEXT_MODE',
    IN_TABLE_MODE = 'IN_TABLE_MODE',
    IN_TABLE_TEXT_MODE = 'IN_TABLE_TEXT_MODE',
    IN_CAPTION_MODE = 'IN_CAPTION_MODE',
    IN_COLUMN_GROUP_MODE = 'IN_COLUMN_GROUP_MODE',
    IN_TABLE_BODY_MODE = 'IN_TABLE_BODY_MODE',
    IN_ROW_MODE = 'IN_ROW_MODE',
    IN_CELL_MODE = 'IN_CELL_MODE',
    IN_SELECT_MODE = 'IN_SELECT_MODE',
    IN_SELECT_IN_TABLE_MODE = 'IN_SELECT_IN_TABLE_MODE',
    IN_TEMPLATE_MODE = 'IN_TEMPLATE_MODE',
    AFTER_BODY_MODE = 'AFTER_BODY_MODE',
    IN_FRAMESET_MODE = 'IN_FRAMESET_MODE',
    AFTER_FRAMESET_MODE = 'AFTER_FRAMESET_MODE',
    AFTER_AFTER_BODY_MODE = 'AFTER_AFTER_BODY_MODE',
    AFTER_AFTER_FRAMESET_MODE = 'AFTER_AFTER_FRAMESET_MODE';

//Insertion mode reset map
var INSERTION_MODE_RESET_MAP = Object.create(null);

INSERTION_MODE_RESET_MAP[$.TR] = IN_ROW_MODE;
INSERTION_MODE_RESET_MAP[$.TBODY] =
INSERTION_MODE_RESET_MAP[$.THEAD] =
INSERTION_MODE_RESET_MAP[$.TFOOT] = IN_TABLE_BODY_MODE;
INSERTION_MODE_RESET_MAP[$.CAPTION] = IN_CAPTION_MODE;
INSERTION_MODE_RESET_MAP[$.COLGROUP] = IN_COLUMN_GROUP_MODE;
INSERTION_MODE_RESET_MAP[$.TABLE] = IN_TABLE_MODE;
INSERTION_MODE_RESET_MAP[$.BODY] = IN_BODY_MODE;
INSERTION_MODE_RESET_MAP[$.FRAMESET] = IN_FRAMESET_MODE;

//Template insertion mode switch map
var TEMPLATE_INSERTION_MODE_SWITCH_MAP = Object.create(null);

TEMPLATE_INSERTION_MODE_SWITCH_MAP[$.CAPTION] =
TEMPLATE_INSERTION_MODE_SWITCH_MAP[$.COLGROUP] =
TEMPLATE_INSERTION_MODE_SWITCH_MAP[$.TBODY] =
TEMPLATE_INSERTION_MODE_SWITCH_MAP[$.TFOOT] =
TEMPLATE_INSERTION_MODE_SWITCH_MAP[$.THEAD] = IN_TABLE_MODE;
TEMPLATE_INSERTION_MODE_SWITCH_MAP[$.COL] = IN_COLUMN_GROUP_MODE;
TEMPLATE_INSERTION_MODE_SWITCH_MAP[$.TR] = IN_TABLE_BODY_MODE;
TEMPLATE_INSERTION_MODE_SWITCH_MAP[$.TD] =
TEMPLATE_INSERTION_MODE_SWITCH_MAP[$.TH] = IN_ROW_MODE;

//Token handlers map for insertion modes
var _ = Object.create(null);

_[INITIAL_MODE] = Object.create(null);
_[INITIAL_MODE][Tokenizer.CHARACTER_TOKEN] =
_[INITIAL_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = tokenInInitialMode;
_[INITIAL_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = ignoreToken;
_[INITIAL_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[INITIAL_MODE][Tokenizer.DOCTYPE_TOKEN] = doctypeInInitialMode;
_[INITIAL_MODE][Tokenizer.START_TAG_TOKEN] =
_[INITIAL_MODE][Tokenizer.END_TAG_TOKEN] =
_[INITIAL_MODE][Tokenizer.EOF_TOKEN] = tokenInInitialMode;

_[BEFORE_HTML_MODE] = Object.create(null);
_[BEFORE_HTML_MODE][Tokenizer.CHARACTER_TOKEN] =
_[BEFORE_HTML_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = tokenBeforeHtml;
_[BEFORE_HTML_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = ignoreToken;
_[BEFORE_HTML_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[BEFORE_HTML_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[BEFORE_HTML_MODE][Tokenizer.START_TAG_TOKEN] = startTagBeforeHtml;
_[BEFORE_HTML_MODE][Tokenizer.END_TAG_TOKEN] = endTagBeforeHtml;
_[BEFORE_HTML_MODE][Tokenizer.EOF_TOKEN] = tokenBeforeHtml;

_[BEFORE_HEAD_MODE] = Object.create(null);
_[BEFORE_HEAD_MODE][Tokenizer.CHARACTER_TOKEN] =
_[BEFORE_HEAD_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = tokenBeforeHead;
_[BEFORE_HEAD_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = ignoreToken;
_[BEFORE_HEAD_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[BEFORE_HEAD_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[BEFORE_HEAD_MODE][Tokenizer.START_TAG_TOKEN] = startTagBeforeHead;
_[BEFORE_HEAD_MODE][Tokenizer.END_TAG_TOKEN] = endTagBeforeHead;
_[BEFORE_HEAD_MODE][Tokenizer.EOF_TOKEN] = tokenBeforeHead;

_[IN_HEAD_MODE] = Object.create(null);
_[IN_HEAD_MODE][Tokenizer.CHARACTER_TOKEN] =
_[IN_HEAD_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = tokenInHead;
_[IN_HEAD_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = insertCharacters;
_[IN_HEAD_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_HEAD_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_HEAD_MODE][Tokenizer.START_TAG_TOKEN] = startTagInHead;
_[IN_HEAD_MODE][Tokenizer.END_TAG_TOKEN] = endTagInHead;
_[IN_HEAD_MODE][Tokenizer.EOF_TOKEN] = tokenInHead;

_[AFTER_HEAD_MODE] = Object.create(null);
_[AFTER_HEAD_MODE][Tokenizer.CHARACTER_TOKEN] =
_[AFTER_HEAD_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = tokenAfterHead;
_[AFTER_HEAD_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = insertCharacters;
_[AFTER_HEAD_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[AFTER_HEAD_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[AFTER_HEAD_MODE][Tokenizer.START_TAG_TOKEN] = startTagAfterHead;
_[AFTER_HEAD_MODE][Tokenizer.END_TAG_TOKEN] = endTagAfterHead;
_[AFTER_HEAD_MODE][Tokenizer.EOF_TOKEN] = tokenAfterHead;

_[IN_BODY_MODE] = Object.create(null);
_[IN_BODY_MODE][Tokenizer.CHARACTER_TOKEN] = characterInBody;
_[IN_BODY_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = ignoreToken;
_[IN_BODY_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = whitespaceCharacterInBody;
_[IN_BODY_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_BODY_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_BODY_MODE][Tokenizer.START_TAG_TOKEN] = startTagInBody;
_[IN_BODY_MODE][Tokenizer.END_TAG_TOKEN] = endTagInBody;
_[IN_BODY_MODE][Tokenizer.EOF_TOKEN] = eofInBody;

_[TEXT_MODE] = Object.create(null);
_[TEXT_MODE][Tokenizer.CHARACTER_TOKEN] =
_[TEXT_MODE][Tokenizer.NULL_CHARACTER_TOKEN] =
_[TEXT_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = insertCharacters;
_[TEXT_MODE][Tokenizer.COMMENT_TOKEN] =
_[TEXT_MODE][Tokenizer.DOCTYPE_TOKEN] =
_[TEXT_MODE][Tokenizer.START_TAG_TOKEN] = ignoreToken;
_[TEXT_MODE][Tokenizer.END_TAG_TOKEN] = endTagInText;
_[TEXT_MODE][Tokenizer.EOF_TOKEN] = eofInText;

_[IN_TABLE_MODE] = Object.create(null);
_[IN_TABLE_MODE][Tokenizer.CHARACTER_TOKEN] =
_[IN_TABLE_MODE][Tokenizer.NULL_CHARACTER_TOKEN] =
_[IN_TABLE_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = characterInTable;
_[IN_TABLE_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_TABLE_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_TABLE_MODE][Tokenizer.START_TAG_TOKEN] = startTagInTable;
_[IN_TABLE_MODE][Tokenizer.END_TAG_TOKEN] = endTagInTable;
_[IN_TABLE_MODE][Tokenizer.EOF_TOKEN] = eofInBody;

_[IN_TABLE_TEXT_MODE] = Object.create(null);
_[IN_TABLE_TEXT_MODE][Tokenizer.CHARACTER_TOKEN] = characterInTableText;
_[IN_TABLE_TEXT_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = ignoreToken;
_[IN_TABLE_TEXT_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = whitespaceCharacterInTableText;
_[IN_TABLE_TEXT_MODE][Tokenizer.COMMENT_TOKEN] =
_[IN_TABLE_TEXT_MODE][Tokenizer.DOCTYPE_TOKEN] =
_[IN_TABLE_TEXT_MODE][Tokenizer.START_TAG_TOKEN] =
_[IN_TABLE_TEXT_MODE][Tokenizer.END_TAG_TOKEN] =
_[IN_TABLE_TEXT_MODE][Tokenizer.EOF_TOKEN] = tokenInTableText;

_[IN_CAPTION_MODE] = Object.create(null);
_[IN_CAPTION_MODE][Tokenizer.CHARACTER_TOKEN] = characterInBody;
_[IN_CAPTION_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = ignoreToken;
_[IN_CAPTION_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = whitespaceCharacterInBody;
_[IN_CAPTION_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_CAPTION_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_CAPTION_MODE][Tokenizer.START_TAG_TOKEN] = startTagInCaption;
_[IN_CAPTION_MODE][Tokenizer.END_TAG_TOKEN] = endTagInCaption;
_[IN_CAPTION_MODE][Tokenizer.EOF_TOKEN] = eofInBody;

_[IN_COLUMN_GROUP_MODE] = Object.create(null);
_[IN_COLUMN_GROUP_MODE][Tokenizer.CHARACTER_TOKEN] =
_[IN_COLUMN_GROUP_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = tokenInColumnGroup;
_[IN_COLUMN_GROUP_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = insertCharacters;
_[IN_COLUMN_GROUP_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_COLUMN_GROUP_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_COLUMN_GROUP_MODE][Tokenizer.START_TAG_TOKEN] = startTagInColumnGroup;
_[IN_COLUMN_GROUP_MODE][Tokenizer.END_TAG_TOKEN] = endTagInColumnGroup;
_[IN_COLUMN_GROUP_MODE][Tokenizer.EOF_TOKEN] = eofInBody;

_[IN_TABLE_BODY_MODE] = Object.create(null);
_[IN_TABLE_BODY_MODE][Tokenizer.CHARACTER_TOKEN] =
_[IN_TABLE_BODY_MODE][Tokenizer.NULL_CHARACTER_TOKEN] =
_[IN_TABLE_BODY_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = characterInTable;
_[IN_TABLE_BODY_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_TABLE_BODY_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_TABLE_BODY_MODE][Tokenizer.START_TAG_TOKEN] = startTagInTableBody;
_[IN_TABLE_BODY_MODE][Tokenizer.END_TAG_TOKEN] = endTagInTableBody;
_[IN_TABLE_BODY_MODE][Tokenizer.EOF_TOKEN] = eofInBody;

_[IN_ROW_MODE] = Object.create(null);
_[IN_ROW_MODE][Tokenizer.CHARACTER_TOKEN] =
_[IN_ROW_MODE][Tokenizer.NULL_CHARACTER_TOKEN] =
_[IN_ROW_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = characterInTable;
_[IN_ROW_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_ROW_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_ROW_MODE][Tokenizer.START_TAG_TOKEN] = startTagInRow;
_[IN_ROW_MODE][Tokenizer.END_TAG_TOKEN] = endTagInRow;
_[IN_ROW_MODE][Tokenizer.EOF_TOKEN] = eofInBody;

_[IN_CELL_MODE] = Object.create(null);
_[IN_CELL_MODE][Tokenizer.CHARACTER_TOKEN] = characterInBody;
_[IN_CELL_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = ignoreToken;
_[IN_CELL_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = whitespaceCharacterInBody;
_[IN_CELL_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_CELL_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_CELL_MODE][Tokenizer.START_TAG_TOKEN] = startTagInCell;
_[IN_CELL_MODE][Tokenizer.END_TAG_TOKEN] = endTagInCell;
_[IN_CELL_MODE][Tokenizer.EOF_TOKEN] = eofInBody;

_[IN_SELECT_MODE] = Object.create(null);
_[IN_SELECT_MODE][Tokenizer.CHARACTER_TOKEN] = insertCharacters;
_[IN_SELECT_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = ignoreToken;
_[IN_SELECT_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = insertCharacters;
_[IN_SELECT_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_SELECT_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_SELECT_MODE][Tokenizer.START_TAG_TOKEN] = startTagInSelect;
_[IN_SELECT_MODE][Tokenizer.END_TAG_TOKEN] = endTagInSelect;
_[IN_SELECT_MODE][Tokenizer.EOF_TOKEN] = eofInBody;

_[IN_SELECT_IN_TABLE_MODE] = Object.create(null);
_[IN_SELECT_IN_TABLE_MODE][Tokenizer.CHARACTER_TOKEN] = insertCharacters;
_[IN_SELECT_IN_TABLE_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = ignoreToken;
_[IN_SELECT_IN_TABLE_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = insertCharacters;
_[IN_SELECT_IN_TABLE_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_SELECT_IN_TABLE_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_SELECT_IN_TABLE_MODE][Tokenizer.START_TAG_TOKEN] = startTagInSelectInTable;
_[IN_SELECT_IN_TABLE_MODE][Tokenizer.END_TAG_TOKEN] = endTagInSelectInTable;
_[IN_SELECT_IN_TABLE_MODE][Tokenizer.EOF_TOKEN] = eofInBody;

_[IN_TEMPLATE_MODE] = Object.create(null);
_[IN_TEMPLATE_MODE][Tokenizer.CHARACTER_TOKEN] = characterInBody;
_[IN_TEMPLATE_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = ignoreToken;
_[IN_TEMPLATE_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = whitespaceCharacterInBody;
_[IN_TEMPLATE_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_TEMPLATE_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_TEMPLATE_MODE][Tokenizer.START_TAG_TOKEN] = startTagInTemplate;
_[IN_TEMPLATE_MODE][Tokenizer.END_TAG_TOKEN] = endTagInTemplate;
_[IN_TEMPLATE_MODE][Tokenizer.EOF_TOKEN] = eofInTemplate;

_[AFTER_BODY_MODE] = Object.create(null);
_[AFTER_BODY_MODE][Tokenizer.CHARACTER_TOKEN] =
_[AFTER_BODY_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = tokenAfterBody;
_[AFTER_BODY_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = whitespaceCharacterInBody;
_[AFTER_BODY_MODE][Tokenizer.COMMENT_TOKEN] = appendCommentToRootHtmlElement;
_[AFTER_BODY_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[AFTER_BODY_MODE][Tokenizer.START_TAG_TOKEN] = startTagAfterBody;
_[AFTER_BODY_MODE][Tokenizer.END_TAG_TOKEN] = endTagAfterBody;
_[AFTER_BODY_MODE][Tokenizer.EOF_TOKEN] = stopParsing;

_[IN_FRAMESET_MODE] = Object.create(null);
_[IN_FRAMESET_MODE][Tokenizer.CHARACTER_TOKEN] =
_[IN_FRAMESET_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = ignoreToken;
_[IN_FRAMESET_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = insertCharacters;
_[IN_FRAMESET_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[IN_FRAMESET_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[IN_FRAMESET_MODE][Tokenizer.START_TAG_TOKEN] = startTagInFrameset;
_[IN_FRAMESET_MODE][Tokenizer.END_TAG_TOKEN] = endTagInFrameset;
_[IN_FRAMESET_MODE][Tokenizer.EOF_TOKEN] = stopParsing;

_[AFTER_FRAMESET_MODE] = Object.create(null);
_[AFTER_FRAMESET_MODE][Tokenizer.CHARACTER_TOKEN] =
_[AFTER_FRAMESET_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = ignoreToken;
_[AFTER_FRAMESET_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = insertCharacters;
_[AFTER_FRAMESET_MODE][Tokenizer.COMMENT_TOKEN] = appendComment;
_[AFTER_FRAMESET_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[AFTER_FRAMESET_MODE][Tokenizer.START_TAG_TOKEN] = startTagAfterFrameset;
_[AFTER_FRAMESET_MODE][Tokenizer.END_TAG_TOKEN] = endTagAfterFrameset;
_[AFTER_FRAMESET_MODE][Tokenizer.EOF_TOKEN] = stopParsing;

_[AFTER_AFTER_BODY_MODE] = Object.create(null);
_[AFTER_AFTER_BODY_MODE][Tokenizer.CHARACTER_TOKEN] = tokenAfterAfterBody;
_[AFTER_AFTER_BODY_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = tokenAfterAfterBody;
_[AFTER_AFTER_BODY_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = whitespaceCharacterInBody;
_[AFTER_AFTER_BODY_MODE][Tokenizer.COMMENT_TOKEN] = appendCommentToDocument;
_[AFTER_AFTER_BODY_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[AFTER_AFTER_BODY_MODE][Tokenizer.START_TAG_TOKEN] = startTagAfterAfterBody;
_[AFTER_AFTER_BODY_MODE][Tokenizer.END_TAG_TOKEN] = tokenAfterAfterBody;
_[AFTER_AFTER_BODY_MODE][Tokenizer.EOF_TOKEN] = stopParsing;

_[AFTER_AFTER_FRAMESET_MODE] = Object.create(null);
_[AFTER_AFTER_FRAMESET_MODE][Tokenizer.CHARACTER_TOKEN] =
_[AFTER_AFTER_FRAMESET_MODE][Tokenizer.NULL_CHARACTER_TOKEN] = ignoreToken;
_[AFTER_AFTER_FRAMESET_MODE][Tokenizer.WHITESPACE_CHARACTER_TOKEN] = whitespaceCharacterInBody;
_[AFTER_AFTER_FRAMESET_MODE][Tokenizer.COMMENT_TOKEN] = appendCommentToDocument;
_[AFTER_AFTER_FRAMESET_MODE][Tokenizer.DOCTYPE_TOKEN] = ignoreToken;
_[AFTER_AFTER_FRAMESET_MODE][Tokenizer.START_TAG_TOKEN] = startTagAfterAfterFrameset;
_[AFTER_AFTER_FRAMESET_MODE][Tokenizer.END_TAG_TOKEN] = ignoreToken;
_[AFTER_AFTER_FRAMESET_MODE][Tokenizer.EOF_TOKEN] = stopParsing;


//Parser
var Parser = module.exports = function (options) {
    this.options = mergeOptions(DEFAULT_OPTIONS, options);

    this.treeAdapter = this.options.treeAdapter;
    this.pendingScript = null;

    if (this.options.locationInfo)
        new LocationInfoParserMixin(this);
};

// API
Parser.prototype.parse = function (html) {
    var document = this.treeAdapter.createDocument();

    this._bootstrap(document, null);
    this.tokenizer.write(html, true);
    this._runParsingLoop(null);

    return document;
};

Parser.prototype.parseFragment = function (html, fragmentContext) {
    //NOTE: use <template> element as a fragment context if context element was not provided,
    //so we will parse in "forgiving" manner
    if (!fragmentContext)
        fragmentContext = this.treeAdapter.createElement($.TEMPLATE, NS.HTML, []);

    //NOTE: create fake element which will be used as 'document' for fragment parsing.
    //This is important for jsdom there 'document' can't be recreated, therefore
    //fragment parsing causes messing of the main `document`.
    var documentMock = this.treeAdapter.createElement('documentmock', NS.HTML, []);

    this._bootstrap(documentMock, fragmentContext);

    if (this.treeAdapter.getTagName(fragmentContext) === $.TEMPLATE)
        this._pushTmplInsertionMode(IN_TEMPLATE_MODE);

    this._initTokenizerForFragmentParsing();
    this._insertFakeRootElement();
    this._resetInsertionMode();
    this._findFormInFragmentContext();
    this.tokenizer.write(html, true);
    this._runParsingLoop(null);

    var rootElement = this.treeAdapter.getFirstChild(documentMock),
        fragment = this.treeAdapter.createDocumentFragment();

    this._adoptNodes(rootElement, fragment);

    return fragment;
};

//Bootstrap parser
Parser.prototype._bootstrap = function (document, fragmentContext) {
    this.tokenizer = new Tokenizer(this.options);

    this.stopped = false;

    this.insertionMode = INITIAL_MODE;
    this.originalInsertionMode = '';

    this.document = document;
    this.fragmentContext = fragmentContext;

    this.headElement = null;
    this.formElement = null;

    this.openElements = new OpenElementStack(this.document, this.treeAdapter);
    this.activeFormattingElements = new FormattingElementList(this.treeAdapter);

    this.tmplInsertionModeStack = [];
    this.tmplInsertionModeStackTop = -1;
    this.currentTmplInsertionMode = null;

    this.pendingCharacterTokens = [];
    this.hasNonWhitespacePendingCharacterToken = false;

    this.framesetOk = true;
    this.skipNextNewLine = false;
    this.fosterParentingEnabled = false;
};

//Parsing loop
Parser.prototype._runParsingLoop  = function (scriptHandler) {
    while (!this.stopped) {
        this._setupTokenizerCDATAMode();

        var token = this.tokenizer.getNextToken();

        if (token.type === Tokenizer.HIBERNATION_TOKEN)
            break;

        if (this.skipNextNewLine) {
            this.skipNextNewLine = false;

            if (token.type === Tokenizer.WHITESPACE_CHARACTER_TOKEN && token.chars[0] === '\n') {
                if (token.chars.length === 1)
                    continue;

                token.chars = token.chars.substr(1);
            }
        }

        this._processInputToken(token);

        if (scriptHandler && this.pendingScript)
            break;
    }
};

Parser.prototype.runParsingLoopForCurrentChunk = function (writeCallback, scriptHandler) {
    this._runParsingLoop(scriptHandler);

    if (scriptHandler && this.pendingScript) {
        var script = this.pendingScript;

        this.pendingScript = null;

        scriptHandler(script);

        return;
    }

    if (writeCallback)
        writeCallback();
};

//Text parsing
Parser.prototype._setupTokenizerCDATAMode = function () {
    var current = this._getAdjustedCurrentElement();

    this.tokenizer.allowCDATA = current && current !== this.document &&
                                this.treeAdapter.getNamespaceURI(current) !== NS.HTML && !this._isIntegrationPoint(current);
};

Parser.prototype._switchToTextParsing = function (currentToken, nextTokenizerState) {
    this._insertElement(currentToken, NS.HTML);
    this.tokenizer.state = nextTokenizerState;
    this.originalInsertionMode = this.insertionMode;
    this.insertionMode = TEXT_MODE;
};

Parser.prototype.switchToPlaintextParsing = function () {
    this.insertionMode = TEXT_MODE;
    this.originalInsertionMode = IN_BODY_MODE;
    this.tokenizer.state = Tokenizer.MODE.PLAINTEXT;
};

//Fragment parsing
Parser.prototype._getAdjustedCurrentElement = function () {
    return this.openElements.stackTop === 0 && this.fragmentContext ?
        this.fragmentContext :
        this.openElements.current;
};

Parser.prototype._findFormInFragmentContext = function () {
    var node = this.fragmentContext;

    do {
        if (this.treeAdapter.getTagName(node) === $.FORM) {
            this.formElement = node;
            break;
        }

        node = this.treeAdapter.getParentNode(node);
    } while (node);
};

Parser.prototype._initTokenizerForFragmentParsing = function () {
    if (this.treeAdapter.getNamespaceURI(this.fragmentContext) === NS.HTML) {
        var tn = this.treeAdapter.getTagName(this.fragmentContext);

        if (tn === $.TITLE || tn === $.TEXTAREA)
            this.tokenizer.state = Tokenizer.MODE.RCDATA;

        else if (tn === $.STYLE || tn === $.XMP || tn === $.IFRAME ||
                 tn === $.NOEMBED || tn === $.NOFRAMES || tn === $.NOSCRIPT)
            this.tokenizer.state = Tokenizer.MODE.RAWTEXT;

        else if (tn === $.SCRIPT)
            this.tokenizer.state = Tokenizer.MODE.SCRIPT_DATA;

        else if (tn === $.PLAINTEXT)
            this.tokenizer.state = Tokenizer.MODE.PLAINTEXT;
    }
};

//Tree mutation
Parser.prototype._setDocumentType = function (token) {
    this.treeAdapter.setDocumentType(this.document, token.name, token.publicId, token.systemId);
};

Parser.prototype._attachElementToTree = function (element) {
    if (this._shouldFosterParentOnInsertion())
        this._fosterParentElement(element);

    else {
        var parent = this.openElements.currentTmplContent || this.openElements.current;

        this.treeAdapter.appendChild(parent, element);
    }
};

Parser.prototype._appendElement = function (token, namespaceURI) {
    var element = this.treeAdapter.createElement(token.tagName, namespaceURI, token.attrs);

    this._attachElementToTree(element);
};

Parser.prototype._insertElement = function (token, namespaceURI) {
    var element = this.treeAdapter.createElement(token.tagName, namespaceURI, token.attrs);

    this._attachElementToTree(element);
    this.openElements.push(element);
};

Parser.prototype._insertFakeElement = function (tagName) {
    var element = this.treeAdapter.createElement(tagName, NS.HTML, []);

    this._attachElementToTree(element);
    this.openElements.push(element);
};

Parser.prototype._insertTemplate = function (token) {
    var tmpl = this.treeAdapter.createElement(token.tagName, NS.HTML, token.attrs),
        content = this.treeAdapter.createDocumentFragment();

    this.treeAdapter.setTemplateContent(tmpl, content);
    this._attachElementToTree(tmpl);
    this.openElements.push(tmpl);
};

Parser.prototype._insertFakeRootElement = function () {
    var element = this.treeAdapter.createElement($.HTML, NS.HTML, []);

    this.treeAdapter.appendChild(this.openElements.current, element);
    this.openElements.push(element);
};

Parser.prototype._appendCommentNode = function (token, parent) {
    var commentNode = this.treeAdapter.createCommentNode(token.data);

    this.treeAdapter.appendChild(parent, commentNode);
};

Parser.prototype._insertCharacters = function (token) {
    if (this._shouldFosterParentOnInsertion())
        this._fosterParentText(token.chars);

    else {
        var parent = this.openElements.currentTmplContent || this.openElements.current;

        this.treeAdapter.insertText(parent, token.chars);
    }
};

Parser.prototype._adoptNodes = function (donor, recipient) {
    while (true) {
        var child = this.treeAdapter.getFirstChild(donor);

        if (!child)
            break;

        this.treeAdapter.detachNode(child);
        this.treeAdapter.appendChild(recipient, child);
    }
};

//Token processing
Parser.prototype._shouldProcessTokenInForeignContent = function (token) {
    var current = this._getAdjustedCurrentElement();

    if (!current || current === this.document)
        return false;

    var ns = this.treeAdapter.getNamespaceURI(current);

    if (ns === NS.HTML)
        return false;

    if (this.treeAdapter.getTagName(current) === $.ANNOTATION_XML && ns === NS.MATHML &&
        token.type === Tokenizer.START_TAG_TOKEN && token.tagName === $.SVG)
        return false;

    var isCharacterToken = token.type === Tokenizer.CHARACTER_TOKEN ||
                           token.type === Tokenizer.NULL_CHARACTER_TOKEN ||
                           token.type === Tokenizer.WHITESPACE_CHARACTER_TOKEN,
        isMathMLTextStartTag = token.type === Tokenizer.START_TAG_TOKEN &&
                               token.tagName !== $.MGLYPH &&
                               token.tagName !== $.MALIGNMARK;

    if ((isMathMLTextStartTag || isCharacterToken) && this._isIntegrationPoint(current, NS.MATHML))
        return false;

    if ((token.type === Tokenizer.START_TAG_TOKEN || isCharacterToken) && this._isIntegrationPoint(current, NS.HTML))
        return false;

    return token.type !== Tokenizer.EOF_TOKEN;
};

Parser.prototype._processToken = function (token) {
    _[this.insertionMode][token.type](this, token);
};

Parser.prototype._processTokenInBodyMode = function (token) {
    _[IN_BODY_MODE][token.type](this, token);
};

Parser.prototype._processTokenInForeignContent = function (token) {
    if (token.type === Tokenizer.CHARACTER_TOKEN)
        characterInForeignContent(this, token);

    else if (token.type === Tokenizer.NULL_CHARACTER_TOKEN)
        nullCharacterInForeignContent(this, token);

    else if (token.type === Tokenizer.WHITESPACE_CHARACTER_TOKEN)
        insertCharacters(this, token);

    else if (token.type === Tokenizer.COMMENT_TOKEN)
        appendComment(this, token);

    else if (token.type === Tokenizer.START_TAG_TOKEN)
        startTagInForeignContent(this, token);

    else if (token.type === Tokenizer.END_TAG_TOKEN)
        endTagInForeignContent(this, token);
};

Parser.prototype._processInputToken = function (token) {
    if (this._shouldProcessTokenInForeignContent(token))
        this._processTokenInForeignContent(token);

    else
        this._processToken(token);
};

//Integration points
Parser.prototype._isIntegrationPoint = function (element, foreignNS) {
    var tn = this.treeAdapter.getTagName(element),
        ns = this.treeAdapter.getNamespaceURI(element),
        attrs = this.treeAdapter.getAttrList(element);

    return foreignContent.isIntegrationPoint(tn, ns, attrs, foreignNS);
};

//Active formatting elements reconstruction
Parser.prototype._reconstructActiveFormattingElements = function () {
    var listLength = this.activeFormattingElements.length;

    if (listLength) {
        var unopenIdx = listLength,
            entry = null;

        do {
            unopenIdx--;
            entry = this.activeFormattingElements.entries[unopenIdx];

            if (entry.type === FormattingElementList.MARKER_ENTRY || this.openElements.contains(entry.element)) {
                unopenIdx++;
                break;
            }
        } while (unopenIdx > 0);

        for (var i = unopenIdx; i < listLength; i++) {
            entry = this.activeFormattingElements.entries[i];
            this._insertElement(entry.token, this.treeAdapter.getNamespaceURI(entry.element));
            entry.element = this.openElements.current;
        }
    }
};

//Close elements
Parser.prototype._closeTableCell = function () {
    this.openElements.generateImpliedEndTags();
    this.openElements.popUntilTableCellPopped();
    this.activeFormattingElements.clearToLastMarker();
    this.insertionMode = IN_ROW_MODE;
};

Parser.prototype._closePElement = function () {
    this.openElements.generateImpliedEndTagsWithExclusion($.P);
    this.openElements.popUntilTagNamePopped($.P);
};

//Insertion modes
Parser.prototype._resetInsertionMode = function () {
    for (var i = this.openElements.stackTop, last = false; i >= 0; i--) {
        var element = this.openElements.items[i];

        if (i === 0) {
            last = true;

            if (this.fragmentContext)
                element = this.fragmentContext;
        }

        var tn = this.treeAdapter.getTagName(element),
            newInsertionMode = INSERTION_MODE_RESET_MAP[tn];

        if (newInsertionMode) {
            this.insertionMode = newInsertionMode;
            break;
        }

        else if (!last && (tn === $.TD || tn === $.TH)) {
            this.insertionMode = IN_CELL_MODE;
            break;
        }

        else if (!last && tn === $.HEAD) {
            this.insertionMode = IN_HEAD_MODE;
            break;
        }

        else if (tn === $.SELECT) {
            this._resetInsertionModeForSelect(i);
            break;
        }

        else if (tn === $.TEMPLATE) {
            this.insertionMode = this.currentTmplInsertionMode;
            break;
        }

        else if (tn === $.HTML) {
            this.insertionMode = this.headElement ? AFTER_HEAD_MODE : BEFORE_HEAD_MODE;
            break;
        }

        else if (last) {
            this.insertionMode = IN_BODY_MODE;
            break;
        }
    }
};

Parser.prototype._resetInsertionModeForSelect = function (selectIdx) {
    if (selectIdx > 0) {
        for (var i = selectIdx - 1; i > 0; i--) {
            var ancestor = this.openElements.items[i],
                tn = this.treeAdapter.getTagName(ancestor);

            if (tn === $.TEMPLATE)
                break;

            else if (tn === $.TABLE) {
                this.insertionMode = IN_SELECT_IN_TABLE_MODE;
                return;
            }
        }
    }

    this.insertionMode = IN_SELECT_MODE;
};

Parser.prototype._pushTmplInsertionMode = function (mode) {
    this.tmplInsertionModeStack.push(mode);
    this.tmplInsertionModeStackTop++;
    this.currentTmplInsertionMode = mode;
};

Parser.prototype._popTmplInsertionMode = function () {
    this.tmplInsertionModeStack.pop();
    this.tmplInsertionModeStackTop--;
    this.currentTmplInsertionMode = this.tmplInsertionModeStack[this.tmplInsertionModeStackTop];
};

//Foster parenting
Parser.prototype._isElementCausesFosterParenting = function (element) {
    var tn = this.treeAdapter.getTagName(element);

    return tn === $.TABLE || tn === $.TBODY || tn === $.TFOOT || tn === $.THEAD || tn === $.TR;
};

Parser.prototype._shouldFosterParentOnInsertion = function () {
    return this.fosterParentingEnabled && this._isElementCausesFosterParenting(this.openElements.current);
};

Parser.prototype._findFosterParentingLocation = function () {
    var location = {
        parent: null,
        beforeElement: null
    };

    for (var i = this.openElements.stackTop; i >= 0; i--) {
        var openElement = this.openElements.items[i],
            tn = this.treeAdapter.getTagName(openElement),
            ns = this.treeAdapter.getNamespaceURI(openElement);

        if (tn === $.TEMPLATE && ns === NS.HTML) {
            location.parent = this.treeAdapter.getTemplateContent(openElement);
            break;
        }

        else if (tn === $.TABLE) {
            location.parent = this.treeAdapter.getParentNode(openElement);

            if (location.parent)
                location.beforeElement = openElement;
            else
                location.parent = this.openElements.items[i - 1];

            break;
        }
    }

    if (!location.parent)
        location.parent = this.openElements.items[0];

    return location;
};

Parser.prototype._fosterParentElement = function (element) {
    var location = this._findFosterParentingLocation();

    if (location.beforeElement)
        this.treeAdapter.insertBefore(location.parent, element, location.beforeElement);
    else
        this.treeAdapter.appendChild(location.parent, element);
};

Parser.prototype._fosterParentText = function (chars) {
    var location = this._findFosterParentingLocation();

    if (location.beforeElement)
        this.treeAdapter.insertTextBefore(location.parent, chars, location.beforeElement);
    else
        this.treeAdapter.insertText(location.parent, chars);
};

//Special elements
Parser.prototype._isSpecialElement = function (element) {
    var tn = this.treeAdapter.getTagName(element),
        ns = this.treeAdapter.getNamespaceURI(element);

    return HTML.SPECIAL_ELEMENTS[ns][tn];
};

//Adoption agency algorithm
//(see: http://www.whatwg.org/specs/web-apps/current-work/multipage/tree-construction.html#adoptionAgency)
//------------------------------------------------------------------

//Steps 5-8 of the algorithm
function aaObtainFormattingElementEntry(p, token) {
    var formattingElementEntry = p.activeFormattingElements.getElementEntryInScopeWithTagName(token.tagName);

    if (formattingElementEntry) {
        if (!p.openElements.contains(formattingElementEntry.element)) {
            p.activeFormattingElements.removeEntry(formattingElementEntry);
            formattingElementEntry = null;
        }

        else if (!p.openElements.hasInScope(token.tagName))
            formattingElementEntry = null;
    }

    else
        genericEndTagInBody(p, token);

    return formattingElementEntry;
}

//Steps 9 and 10 of the algorithm
function aaObtainFurthestBlock(p, formattingElementEntry) {
    var furthestBlock = null;

    for (var i = p.openElements.stackTop; i >= 0; i--) {
        var element = p.openElements.items[i];

        if (element === formattingElementEntry.element)
            break;

        if (p._isSpecialElement(element))
            furthestBlock = element;
    }

    if (!furthestBlock) {
        p.openElements.popUntilElementPopped(formattingElementEntry.element);
        p.activeFormattingElements.removeEntry(formattingElementEntry);
    }

    return furthestBlock;
}

//Step 13 of the algorithm
function aaInnerLoop(p, furthestBlock, formattingElement) {
    var lastElement = furthestBlock,
        nextElement = p.openElements.getCommonAncestor(furthestBlock);

    for (var i = 0, element = nextElement; element !== formattingElement; i++, element = nextElement) {
        //NOTE: store next element for the next loop iteration (it may be deleted from the stack by step 9.5)
        nextElement = p.openElements.getCommonAncestor(element);

        var elementEntry = p.activeFormattingElements.getElementEntry(element),
            counterOverflow = elementEntry && i >= AA_INNER_LOOP_ITER,
            shouldRemoveFromOpenElements = !elementEntry || counterOverflow;

        if (shouldRemoveFromOpenElements) {
            if (counterOverflow)
                p.activeFormattingElements.removeEntry(elementEntry);

            p.openElements.remove(element);
        }

        else {
            element = aaRecreateElementFromEntry(p, elementEntry);

            if (lastElement === furthestBlock)
                p.activeFormattingElements.bookmark = elementEntry;

            p.treeAdapter.detachNode(lastElement);
            p.treeAdapter.appendChild(element, lastElement);
            lastElement = element;
        }
    }

    return lastElement;
}

//Step 13.7 of the algorithm
function aaRecreateElementFromEntry(p, elementEntry) {
    var ns = p.treeAdapter.getNamespaceURI(elementEntry.element),
        newElement = p.treeAdapter.createElement(elementEntry.token.tagName, ns, elementEntry.token.attrs);

    p.openElements.replace(elementEntry.element, newElement);
    elementEntry.element = newElement;

    return newElement;
}

//Step 14 of the algorithm
function aaInsertLastNodeInCommonAncestor(p, commonAncestor, lastElement) {
    if (p._isElementCausesFosterParenting(commonAncestor))
        p._fosterParentElement(lastElement);

    else {
        var tn = p.treeAdapter.getTagName(commonAncestor),
            ns = p.treeAdapter.getNamespaceURI(commonAncestor);

        if (tn === $.TEMPLATE && ns === NS.HTML)
            commonAncestor = p.treeAdapter.getTemplateContent(commonAncestor);

        p.treeAdapter.appendChild(commonAncestor, lastElement);
    }
}

//Steps 15-19 of the algorithm
function aaReplaceFormattingElement(p, furthestBlock, formattingElementEntry) {
    var ns = p.treeAdapter.getNamespaceURI(formattingElementEntry.element),
        token = formattingElementEntry.token,
        newElement = p.treeAdapter.createElement(token.tagName, ns, token.attrs);

    p._adoptNodes(furthestBlock, newElement);
    p.treeAdapter.appendChild(furthestBlock, newElement);

    p.activeFormattingElements.insertElementAfterBookmark(newElement, formattingElementEntry.token);
    p.activeFormattingElements.removeEntry(formattingElementEntry);

    p.openElements.remove(formattingElementEntry.element);
    p.openElements.insertAfter(furthestBlock, newElement);
}

//Algorithm entry point
function callAdoptionAgency(p, token) {
    var formattingElementEntry;

    for (var i = 0; i < AA_OUTER_LOOP_ITER; i++) {
        formattingElementEntry = aaObtainFormattingElementEntry(p, token, formattingElementEntry);

        if (!formattingElementEntry)
            break;

        var furthestBlock = aaObtainFurthestBlock(p, formattingElementEntry);

        if (!furthestBlock)
            break;

        p.activeFormattingElements.bookmark = formattingElementEntry;

        var lastElement = aaInnerLoop(p, furthestBlock, formattingElementEntry.element),
            commonAncestor = p.openElements.getCommonAncestor(formattingElementEntry.element);

        p.treeAdapter.detachNode(lastElement);
        aaInsertLastNodeInCommonAncestor(p, commonAncestor, lastElement);
        aaReplaceFormattingElement(p, furthestBlock, formattingElementEntry);
    }
}


//Generic token handlers
//------------------------------------------------------------------
function ignoreToken() {
    //NOTE: do nothing =)
}

function appendComment(p, token) {
    p._appendCommentNode(token, p.openElements.currentTmplContent || p.openElements.current);
}

function appendCommentToRootHtmlElement(p, token) {
    p._appendCommentNode(token, p.openElements.items[0]);
}

function appendCommentToDocument(p, token) {
    p._appendCommentNode(token, p.document);
}

function insertCharacters(p, token) {
    p._insertCharacters(token);
}

function stopParsing(p) {
    p.stopped = true;
}

//12.2.5.4.1 The "initial" insertion mode
//------------------------------------------------------------------
function doctypeInInitialMode(p, token) {
    p._setDocumentType(token);

    var mode = token.forceQuirks ?
        HTML.DOCUMENT_MODE.QUIRKS :
        doctype.getDocumentMode(token.name, token.publicId, token.systemId);

    p.treeAdapter.setDocumentMode(p.document, mode);

    p.insertionMode = BEFORE_HTML_MODE;
}

function tokenInInitialMode(p, token) {
    p.treeAdapter.setDocumentMode(p.document, HTML.DOCUMENT_MODE.QUIRKS);
    p.insertionMode = BEFORE_HTML_MODE;
    p._processToken(token);
}


//12.2.5.4.2 The "before html" insertion mode
//------------------------------------------------------------------
function startTagBeforeHtml(p, token) {
    if (token.tagName === $.HTML) {
        p._insertElement(token, NS.HTML);
        p.insertionMode = BEFORE_HEAD_MODE;
    }

    else
        tokenBeforeHtml(p, token);
}

function endTagBeforeHtml(p, token) {
    var tn = token.tagName;

    if (tn === $.HTML || tn === $.HEAD || tn === $.BODY || tn === $.BR)
        tokenBeforeHtml(p, token);
}

function tokenBeforeHtml(p, token) {
    p._insertFakeRootElement();
    p.insertionMode = BEFORE_HEAD_MODE;
    p._processToken(token);
}


//12.2.5.4.3 The "before head" insertion mode
//------------------------------------------------------------------
function startTagBeforeHead(p, token) {
    var tn = token.tagName;

    if (tn === $.HTML)
        startTagInBody(p, token);

    else if (tn === $.HEAD) {
        p._insertElement(token, NS.HTML);
        p.headElement = p.openElements.current;
        p.insertionMode = IN_HEAD_MODE;
    }

    else
        tokenBeforeHead(p, token);
}

function endTagBeforeHead(p, token) {
    var tn = token.tagName;

    if (tn === $.HEAD || tn === $.BODY || tn === $.HTML || tn === $.BR)
        tokenBeforeHead(p, token);
}

function tokenBeforeHead(p, token) {
    p._insertFakeElement($.HEAD);
    p.headElement = p.openElements.current;
    p.insertionMode = IN_HEAD_MODE;
    p._processToken(token);
}


//12.2.5.4.4 The "in head" insertion mode
//------------------------------------------------------------------
function startTagInHead(p, token) {
    var tn = token.tagName;

    if (tn === $.HTML)
        startTagInBody(p, token);

    else if (tn === $.BASE || tn === $.BASEFONT || tn === $.BGSOUND || tn === $.LINK || tn === $.META)
        p._appendElement(token, NS.HTML);

    else if (tn === $.TITLE)
        p._switchToTextParsing(token, Tokenizer.MODE.RCDATA);

    //NOTE: here we assume that we always act as an interactive user agent with enabled scripting, so we parse
    //<noscript> as a rawtext.
    else if (tn === $.NOSCRIPT || tn === $.NOFRAMES || tn === $.STYLE)
        p._switchToTextParsing(token, Tokenizer.MODE.RAWTEXT);

    else if (tn === $.SCRIPT)
        p._switchToTextParsing(token, Tokenizer.MODE.SCRIPT_DATA);

    else if (tn === $.TEMPLATE) {
        p._insertTemplate(token, NS.HTML);
        p.activeFormattingElements.insertMarker();
        p.framesetOk = false;
        p.insertionMode = IN_TEMPLATE_MODE;
        p._pushTmplInsertionMode(IN_TEMPLATE_MODE);
    }

    else if (tn !== $.HEAD)
        tokenInHead(p, token);
}

function endTagInHead(p, token) {
    var tn = token.tagName;

    if (tn === $.HEAD) {
        p.openElements.pop();
        p.insertionMode = AFTER_HEAD_MODE;
    }

    else if (tn === $.BODY || tn === $.BR || tn === $.HTML)
        tokenInHead(p, token);

    else if (tn === $.TEMPLATE && p.openElements.tmplCount > 0) {
        p.openElements.generateImpliedEndTags();
        p.openElements.popUntilTagNamePopped($.TEMPLATE);
        p.activeFormattingElements.clearToLastMarker();
        p._popTmplInsertionMode();
        p._resetInsertionMode();
    }
}

function tokenInHead(p, token) {
    p.openElements.pop();
    p.insertionMode = AFTER_HEAD_MODE;
    p._processToken(token);
}


//12.2.5.4.6 The "after head" insertion mode
//------------------------------------------------------------------
function startTagAfterHead(p, token) {
    var tn = token.tagName;

    if (tn === $.HTML)
        startTagInBody(p, token);

    else if (tn === $.BODY) {
        p._insertElement(token, NS.HTML);
        p.framesetOk = false;
        p.insertionMode = IN_BODY_MODE;
    }

    else if (tn === $.FRAMESET) {
        p._insertElement(token, NS.HTML);
        p.insertionMode = IN_FRAMESET_MODE;
    }

    else if (tn === $.BASE || tn === $.BASEFONT || tn === $.BGSOUND || tn === $.LINK || tn === $.META ||
             tn === $.NOFRAMES || tn === $.SCRIPT || tn === $.STYLE || tn === $.TEMPLATE || tn === $.TITLE) {
        p.openElements.push(p.headElement);
        startTagInHead(p, token);
        p.openElements.remove(p.headElement);
    }

    else if (tn !== $.HEAD)
        tokenAfterHead(p, token);
}

function endTagAfterHead(p, token) {
    var tn = token.tagName;

    if (tn === $.BODY || tn === $.HTML || tn === $.BR)
        tokenAfterHead(p, token);

    else if (tn === $.TEMPLATE)
        endTagInHead(p, token);
}

function tokenAfterHead(p, token) {
    p._insertFakeElement($.BODY);
    p.insertionMode = IN_BODY_MODE;
    p._processToken(token);
}


//12.2.5.4.7 The "in body" insertion mode
//------------------------------------------------------------------
function whitespaceCharacterInBody(p, token) {
    p._reconstructActiveFormattingElements();
    p._insertCharacters(token);
}

function characterInBody(p, token) {
    p._reconstructActiveFormattingElements();
    p._insertCharacters(token);
    p.framesetOk = false;
}

function htmlStartTagInBody(p, token) {
    if (p.openElements.tmplCount === 0)
        p.treeAdapter.adoptAttributes(p.openElements.items[0], token.attrs);
}

function bodyStartTagInBody(p, token) {
    var bodyElement = p.openElements.tryPeekProperlyNestedBodyElement();

    if (bodyElement && p.openElements.tmplCount === 0) {
        p.framesetOk = false;
        p.treeAdapter.adoptAttributes(bodyElement, token.attrs);
    }
}

function framesetStartTagInBody(p, token) {
    var bodyElement = p.openElements.tryPeekProperlyNestedBodyElement();

    if (p.framesetOk && bodyElement) {
        p.treeAdapter.detachNode(bodyElement);
        p.openElements.popAllUpToHtmlElement();
        p._insertElement(token, NS.HTML);
        p.insertionMode = IN_FRAMESET_MODE;
    }
}

function addressStartTagInBody(p, token) {
    if (p.openElements.hasInButtonScope($.P))
        p._closePElement();

    p._insertElement(token, NS.HTML);
}

function numberedHeaderStartTagInBody(p, token) {
    if (p.openElements.hasInButtonScope($.P))
        p._closePElement();

    var tn = p.openElements.currentTagName;

    if (tn === $.H1 || tn === $.H2 || tn === $.H3 || tn === $.H4 || tn === $.H5 || tn === $.H6)
        p.openElements.pop();

    p._insertElement(token, NS.HTML);
}

function preStartTagInBody(p, token) {
    if (p.openElements.hasInButtonScope($.P))
        p._closePElement();

    p._insertElement(token, NS.HTML);
    //NOTE: If the next token is a U+000A LINE FEED (LF) character token, then ignore that token and move
    //on to the next one. (Newlines at the start of pre blocks are ignored as an authoring convenience.)
    p.skipNextNewLine = true;
    p.framesetOk = false;
}

function formStartTagInBody(p, token) {
    var inTemplate = p.openElements.tmplCount > 0;

    if (!p.formElement || inTemplate) {
        if (p.openElements.hasInButtonScope($.P))
            p._closePElement();

        p._insertElement(token, NS.HTML);

        if (!inTemplate)
            p.formElement = p.openElements.current;
    }
}

function listItemStartTagInBody(p, token) {
    p.framesetOk = false;

    var tn = token.tagName;

    for (var i = p.openElements.stackTop; i >= 0; i--) {
        var element = p.openElements.items[i],
            elementTn = p.treeAdapter.getTagName(element),
            closeTn = null;

        if (tn === $.LI && elementTn === $.LI)
            closeTn = $.LI;

        else if ((tn === $.DD || tn === $.DT) && (elementTn === $.DD || elementTn === $.DT))
            closeTn = elementTn;

        if (closeTn) {
            p.openElements.generateImpliedEndTagsWithExclusion(closeTn);
            p.openElements.popUntilTagNamePopped(closeTn);
            break;
        }

        if (elementTn !== $.ADDRESS && elementTn !== $.DIV && elementTn !== $.P && p._isSpecialElement(element))
            break;
    }

    if (p.openElements.hasInButtonScope($.P))
        p._closePElement();

    p._insertElement(token, NS.HTML);
}

function plaintextStartTagInBody(p, token) {
    if (p.openElements.hasInButtonScope($.P))
        p._closePElement();

    p._insertElement(token, NS.HTML);
    p.tokenizer.state = Tokenizer.MODE.PLAINTEXT;
}

function buttonStartTagInBody(p, token) {
    if (p.openElements.hasInScope($.BUTTON)) {
        p.openElements.generateImpliedEndTags();
        p.openElements.popUntilTagNamePopped($.BUTTON);
    }

    p._reconstructActiveFormattingElements();
    p._insertElement(token, NS.HTML);
    p.framesetOk = false;
}

function aStartTagInBody(p, token) {
    var activeElementEntry = p.activeFormattingElements.getElementEntryInScopeWithTagName($.A);

    if (activeElementEntry) {
        callAdoptionAgency(p, token);
        p.openElements.remove(activeElementEntry.element);
        p.activeFormattingElements.removeEntry(activeElementEntry);
    }

    p._reconstructActiveFormattingElements();
    p._insertElement(token, NS.HTML);
    p.activeFormattingElements.pushElement(p.openElements.current, token);
}

function bStartTagInBody(p, token) {
    p._reconstructActiveFormattingElements();
    p._insertElement(token, NS.HTML);
    p.activeFormattingElements.pushElement(p.openElements.current, token);
}

function nobrStartTagInBody(p, token) {
    p._reconstructActiveFormattingElements();

    if (p.openElements.hasInScope($.NOBR)) {
        callAdoptionAgency(p, token);
        p._reconstructActiveFormattingElements();
    }

    p._insertElement(token, NS.HTML);
    p.activeFormattingElements.pushElement(p.openElements.current, token);
}

function appletStartTagInBody(p, token) {
    p._reconstructActiveFormattingElements();
    p._insertElement(token, NS.HTML);
    p.activeFormattingElements.insertMarker();
    p.framesetOk = false;
}

function tableStartTagInBody(p, token) {
    if (p.treeAdapter.getDocumentMode(p.document) !== HTML.DOCUMENT_MODE.QUIRKS && p.openElements.hasInButtonScope($.P))
        p._closePElement();

    p._insertElement(token, NS.HTML);
    p.framesetOk = false;
    p.insertionMode = IN_TABLE_MODE;
}

function areaStartTagInBody(p, token) {
    p._reconstructActiveFormattingElements();
    p._appendElement(token, NS.HTML);
    p.framesetOk = false;
}

function inputStartTagInBody(p, token) {
    p._reconstructActiveFormattingElements();
    p._appendElement(token, NS.HTML);

    var inputType = Tokenizer.getTokenAttr(token, ATTRS.TYPE);

    if (!inputType || inputType.toLowerCase() !== HIDDEN_INPUT_TYPE)
        p.framesetOk = false;

}

function paramStartTagInBody(p, token) {
    p._appendElement(token, NS.HTML);
}

function hrStartTagInBody(p, token) {
    if (p.openElements.hasInButtonScope($.P))
        p._closePElement();

    if (p.openElements.currentTagName === $.MENUITEM)
        p.openElements.pop();

    p._appendElement(token, NS.HTML);
    p.framesetOk = false;
}

function imageStartTagInBody(p, token) {
    token.tagName = $.IMG;
    areaStartTagInBody(p, token);
}

function textareaStartTagInBody(p, token) {
    p._insertElement(token, NS.HTML);
    //NOTE: If the next token is a U+000A LINE FEED (LF) character token, then ignore that token and move
    //on to the next one. (Newlines at the start of textarea elements are ignored as an authoring convenience.)
    p.skipNextNewLine = true;
    p.tokenizer.state = Tokenizer.MODE.RCDATA;
    p.originalInsertionMode = p.insertionMode;
    p.framesetOk = false;
    p.insertionMode = TEXT_MODE;
}

function xmpStartTagInBody(p, token) {
    if (p.openElements.hasInButtonScope($.P))
        p._closePElement();

    p._reconstructActiveFormattingElements();
    p.framesetOk = false;
    p._switchToTextParsing(token, Tokenizer.MODE.RAWTEXT);
}

function iframeStartTagInBody(p, token) {
    p.framesetOk = false;
    p._switchToTextParsing(token, Tokenizer.MODE.RAWTEXT);
}

//NOTE: here we assume that we always act as an user agent with enabled plugins, so we parse
//<noembed> as a rawtext.
function noembedStartTagInBody(p, token) {
    p._switchToTextParsing(token, Tokenizer.MODE.RAWTEXT);
}

function selectStartTagInBody(p, token) {
    p._reconstructActiveFormattingElements();
    p._insertElement(token, NS.HTML);
    p.framesetOk = false;

    if (p.insertionMode === IN_TABLE_MODE ||
        p.insertionMode === IN_CAPTION_MODE ||
        p.insertionMode === IN_TABLE_BODY_MODE ||
        p.insertionMode === IN_ROW_MODE ||
        p.insertionMode === IN_CELL_MODE)

        p.insertionMode = IN_SELECT_IN_TABLE_MODE;

    else
        p.insertionMode = IN_SELECT_MODE;
}

function optgroupStartTagInBody(p, token) {
    if (p.openElements.currentTagName === $.OPTION)
        p.openElements.pop();

    p._reconstructActiveFormattingElements();
    p._insertElement(token, NS.HTML);
}

function rbStartTagInBody(p, token) {
    if (p.openElements.hasInScope($.RUBY))
        p.openElements.generateImpliedEndTags();

    p._insertElement(token, NS.HTML);
}

function rtStartTagInBody(p, token) {
    if (p.openElements.hasInScope($.RUBY))
        p.openElements.generateImpliedEndTagsWithExclusion($.RTC);

    p._insertElement(token, NS.HTML);
}

function menuitemStartTagInBody(p, token) {
    if (p.openElements.currentTagName === $.MENUITEM)
        p.openElements.pop();

    // TODO needs clarification, see https://github.com/whatwg/html/pull/907/files#r73505877
    p._reconstructActiveFormattingElements();

    p._insertElement(token, NS.HTML);
}

function menuStartTagInBody(p, token) {
    if (p.openElements.hasInButtonScope($.P))
        p._closePElement();

    if (p.openElements.currentTagName === $.MENUITEM)
        p.openElements.pop();

    p._insertElement(token, NS.HTML);
}

function mathStartTagInBody(p, token) {
    p._reconstructActiveFormattingElements();

    foreignContent.adjustTokenMathMLAttrs(token);
    foreignContent.adjustTokenXMLAttrs(token);

    if (token.selfClosing)
        p._appendElement(token, NS.MATHML);
    else
        p._insertElement(token, NS.MATHML);
}

function svgStartTagInBody(p, token) {
    p._reconstructActiveFormattingElements();

    foreignContent.adjustTokenSVGAttrs(token);
    foreignContent.adjustTokenXMLAttrs(token);

    if (token.selfClosing)
        p._appendElement(token, NS.SVG);
    else
        p._insertElement(token, NS.SVG);
}

function genericStartTagInBody(p, token) {
    p._reconstructActiveFormattingElements();
    p._insertElement(token, NS.HTML);
}

//OPTIMIZATION: Integer comparisons are low-cost, so we can use very fast tag name length filters here.
//It's faster than using dictionary.
function startTagInBody(p, token) {
    var tn = token.tagName;

    switch (tn.length) {
        case 1:
            if (tn === $.I || tn === $.S || tn === $.B || tn === $.U)
                bStartTagInBody(p, token);

            else if (tn === $.P)
                addressStartTagInBody(p, token);

            else if (tn === $.A)
                aStartTagInBody(p, token);

            else
                genericStartTagInBody(p, token);

            break;

        case 2:
            if (tn === $.DL || tn === $.OL || tn === $.UL)
                addressStartTagInBody(p, token);

            else if (tn === $.H1 || tn === $.H2 || tn === $.H3 || tn === $.H4 || tn === $.H5 || tn === $.H6)
                numberedHeaderStartTagInBody(p, token);

            else if (tn === $.LI || tn === $.DD || tn === $.DT)
                listItemStartTagInBody(p, token);

            else if (tn === $.EM || tn === $.TT)
                bStartTagInBody(p, token);

            else if (tn === $.BR)
                areaStartTagInBody(p, token);

            else if (tn === $.HR)
                hrStartTagInBody(p, token);

            else if (tn === $.RB)
                rbStartTagInBody(p, token);

            else if (tn === $.RT || tn === $.RP)
                rtStartTagInBody(p, token);

            else if (tn !== $.TH && tn !== $.TD && tn !== $.TR)
                genericStartTagInBody(p, token);

            break;

        case 3:
            if (tn === $.DIV || tn === $.DIR || tn === $.NAV)
                addressStartTagInBody(p, token);

            else if (tn === $.PRE)
                preStartTagInBody(p, token);

            else if (tn === $.BIG)
                bStartTagInBody(p, token);

            else if (tn === $.IMG || tn === $.WBR)
                areaStartTagInBody(p, token);

            else if (tn === $.XMP)
                xmpStartTagInBody(p, token);

            else if (tn === $.SVG)
                svgStartTagInBody(p, token);

            else if (tn === $.RTC)
                rbStartTagInBody(p, token);

            else if (tn !== $.COL)
                genericStartTagInBody(p, token);

            break;

        case 4:
            if (tn === $.HTML)
                htmlStartTagInBody(p, token);

            else if (tn === $.BASE || tn === $.LINK || tn === $.META)
                startTagInHead(p, token);

            else if (tn === $.BODY)
                bodyStartTagInBody(p, token);

            else if (tn === $.MAIN)
                addressStartTagInBody(p, token);

            else if (tn === $.FORM)
                formStartTagInBody(p, token);

            else if (tn === $.CODE || tn === $.FONT)
                bStartTagInBody(p, token);

            else if (tn === $.NOBR)
                nobrStartTagInBody(p, token);

            else if (tn === $.AREA)
                areaStartTagInBody(p, token);

            else if (tn === $.MATH)
                mathStartTagInBody(p, token);

            else if (tn === $.MENU)
                menuStartTagInBody(p, token);

            else if (tn !== $.HEAD)
                genericStartTagInBody(p, token);

            break;

        case 5:
            if (tn === $.STYLE || tn === $.TITLE)
                startTagInHead(p, token);

            else if (tn === $.ASIDE)
                addressStartTagInBody(p, token);

            else if (tn === $.SMALL)
                bStartTagInBody(p, token);

            else if (tn === $.TABLE)
                tableStartTagInBody(p, token);

            else if (tn === $.EMBED)
                areaStartTagInBody(p, token);

            else if (tn === $.INPUT)
                inputStartTagInBody(p, token);

            else if (tn === $.PARAM || tn === $.TRACK)
                paramStartTagInBody(p, token);

            else if (tn === $.IMAGE)
                imageStartTagInBody(p, token);

            else if (tn !== $.FRAME && tn !== $.TBODY && tn !== $.TFOOT && tn !== $.THEAD)
                genericStartTagInBody(p, token);

            break;

        case 6:
            if (tn === $.SCRIPT)
                startTagInHead(p, token);

            else if (tn === $.CENTER || tn === $.FIGURE || tn === $.FOOTER || tn === $.HEADER || tn === $.HGROUP)
                addressStartTagInBody(p, token);

            else if (tn === $.BUTTON)
                buttonStartTagInBody(p, token);

            else if (tn === $.STRIKE || tn === $.STRONG)
                bStartTagInBody(p, token);

            else if (tn === $.APPLET || tn === $.OBJECT)
                appletStartTagInBody(p, token);

            else if (tn === $.KEYGEN)
                areaStartTagInBody(p, token);

            else if (tn === $.SOURCE)
                paramStartTagInBody(p, token);

            else if (tn === $.IFRAME)
                iframeStartTagInBody(p, token);

            else if (tn === $.SELECT)
                selectStartTagInBody(p, token);

            else if (tn === $.OPTION)
                optgroupStartTagInBody(p, token);

            else
                genericStartTagInBody(p, token);

            break;

        case 7:
            if (tn === $.BGSOUND)
                startTagInHead(p, token);

            else if (tn === $.DETAILS || tn === $.ADDRESS || tn === $.ARTICLE || tn === $.SECTION || tn === $.SUMMARY)
                addressStartTagInBody(p, token);

            else if (tn === $.LISTING)
                preStartTagInBody(p, token);

            else if (tn === $.MARQUEE)
                appletStartTagInBody(p, token);

            else if (tn === $.NOEMBED)
                noembedStartTagInBody(p, token);

            else if (tn !== $.CAPTION)
                genericStartTagInBody(p, token);

            break;

        case 8:
            if (tn === $.BASEFONT)
                startTagInHead(p, token);

            else if (tn === $.MENUITEM)
                menuitemStartTagInBody(p, token);

            else if (tn === $.FRAMESET)
                framesetStartTagInBody(p, token);

            else if (tn === $.FIELDSET)
                addressStartTagInBody(p, token);

            else if (tn === $.TEXTAREA)
                textareaStartTagInBody(p, token);

            else if (tn === $.TEMPLATE)
                startTagInHead(p, token);

            else if (tn === $.NOSCRIPT)
                noembedStartTagInBody(p, token);

            else if (tn === $.OPTGROUP)
                optgroupStartTagInBody(p, token);

            else if (tn !== $.COLGROUP)
                genericStartTagInBody(p, token);

            break;

        case 9:
            if (tn === $.PLAINTEXT)
                plaintextStartTagInBody(p, token);

            else
                genericStartTagInBody(p, token);

            break;

        case 10:
            if (tn === $.BLOCKQUOTE || tn === $.FIGCAPTION)
                addressStartTagInBody(p, token);

            else
                genericStartTagInBody(p, token);

            break;

        default:
            genericStartTagInBody(p, token);
    }
}

function bodyEndTagInBody(p) {
    if (p.openElements.hasInScope($.BODY))
        p.insertionMode = AFTER_BODY_MODE;
}

function htmlEndTagInBody(p, token) {
    if (p.openElements.hasInScope($.BODY)) {
        p.insertionMode = AFTER_BODY_MODE;
        p._processToken(token);
    }
}

function addressEndTagInBody(p, token) {
    var tn = token.tagName;

    if (p.openElements.hasInScope(tn)) {
        p.openElements.generateImpliedEndTags();
        p.openElements.popUntilTagNamePopped(tn);
    }
}

function formEndTagInBody(p) {
    var inTemplate = p.openElements.tmplCount > 0,
        formElement = p.formElement;

    if (!inTemplate)
        p.formElement = null;

    if ((formElement || inTemplate) && p.openElements.hasInScope($.FORM)) {
        p.openElements.generateImpliedEndTags();

        if (inTemplate)
            p.openElements.popUntilTagNamePopped($.FORM);

        else
            p.openElements.remove(formElement);
    }
}

function pEndTagInBody(p) {
    if (!p.openElements.hasInButtonScope($.P))
        p._insertFakeElement($.P);

    p._closePElement();
}

function liEndTagInBody(p) {
    if (p.openElements.hasInListItemScope($.LI)) {
        p.openElements.generateImpliedEndTagsWithExclusion($.LI);
        p.openElements.popUntilTagNamePopped($.LI);
    }
}

function ddEndTagInBody(p, token) {
    var tn = token.tagName;

    if (p.openElements.hasInScope(tn)) {
        p.openElements.generateImpliedEndTagsWithExclusion(tn);
        p.openElements.popUntilTagNamePopped(tn);
    }
}

function numberedHeaderEndTagInBody(p) {
    if (p.openElements.hasNumberedHeaderInScope()) {
        p.openElements.generateImpliedEndTags();
        p.openElements.popUntilNumberedHeaderPopped();
    }
}

function appletEndTagInBody(p, token) {
    var tn = token.tagName;

    if (p.openElements.hasInScope(tn)) {
        p.openElements.generateImpliedEndTags();
        p.openElements.popUntilTagNamePopped(tn);
        p.activeFormattingElements.clearToLastMarker();
    }
}

function brEndTagInBody(p) {
    p._reconstructActiveFormattingElements();
    p._insertFakeElement($.BR);
    p.openElements.pop();
    p.framesetOk = false;
}

function genericEndTagInBody(p, token) {
    var tn = token.tagName;

    for (var i = p.openElements.stackTop; i > 0; i--) {
        var element = p.openElements.items[i];

        if (p.treeAdapter.getTagName(element) === tn) {
            p.openElements.generateImpliedEndTagsWithExclusion(tn);
            p.openElements.popUntilElementPopped(element);
            break;
        }

        if (p._isSpecialElement(element))
            break;
    }
}

//OPTIMIZATION: Integer comparisons are low-cost, so we can use very fast tag name length filters here.
//It's faster than using dictionary.
function endTagInBody(p, token) {
    var tn = token.tagName;

    switch (tn.length) {
        case 1:
            if (tn === $.A || tn === $.B || tn === $.I || tn === $.S || tn === $.U)
                callAdoptionAgency(p, token);

            else if (tn === $.P)
                pEndTagInBody(p, token);

            else
                genericEndTagInBody(p, token);

            break;

        case 2:
            if (tn === $.DL || tn === $.UL || tn === $.OL)
                addressEndTagInBody(p, token);

            else if (tn === $.LI)
                liEndTagInBody(p, token);

            else if (tn === $.DD || tn === $.DT)
                ddEndTagInBody(p, token);

            else if (tn === $.H1 || tn === $.H2 || tn === $.H3 || tn === $.H4 || tn === $.H5 || tn === $.H6)
                numberedHeaderEndTagInBody(p, token);

            else if (tn === $.BR)
                brEndTagInBody(p, token);

            else if (tn === $.EM || tn === $.TT)
                callAdoptionAgency(p, token);

            else
                genericEndTagInBody(p, token);

            break;

        case 3:
            if (tn === $.BIG)
                callAdoptionAgency(p, token);

            else if (tn === $.DIR || tn === $.DIV || tn === $.NAV)
                addressEndTagInBody(p, token);

            else
                genericEndTagInBody(p, token);

            break;

        case 4:
            if (tn === $.BODY)
                bodyEndTagInBody(p, token);

            else if (tn === $.HTML)
                htmlEndTagInBody(p, token);

            else if (tn === $.FORM)
                formEndTagInBody(p, token);

            else if (tn === $.CODE || tn === $.FONT || tn === $.NOBR)
                callAdoptionAgency(p, token);

            else if (tn === $.MAIN || tn === $.MENU)
                addressEndTagInBody(p, token);

            else
                genericEndTagInBody(p, token);

            break;

        case 5:
            if (tn === $.ASIDE)
                addressEndTagInBody(p, token);

            else if (tn === $.SMALL)
                callAdoptionAgency(p, token);

            else
                genericEndTagInBody(p, token);

            break;

        case 6:
            if (tn === $.CENTER || tn === $.FIGURE || tn === $.FOOTER || tn === $.HEADER || tn === $.HGROUP)
                addressEndTagInBody(p, token);

            else if (tn === $.APPLET || tn === $.OBJECT)
                appletEndTagInBody(p, token);

            else if (tn === $.STRIKE || tn === $.STRONG)
                callAdoptionAgency(p, token);

            else
                genericEndTagInBody(p, token);

            break;

        case 7:
            if (tn === $.ADDRESS || tn === $.ARTICLE || tn === $.DETAILS || tn === $.SECTION || tn === $.SUMMARY)
                addressEndTagInBody(p, token);

            else if (tn === $.MARQUEE)
                appletEndTagInBody(p, token);

            else
                genericEndTagInBody(p, token);

            break;

        case 8:
            if (tn === $.FIELDSET)
                addressEndTagInBody(p, token);

            else if (tn === $.TEMPLATE)
                endTagInHead(p, token);

            else
                genericEndTagInBody(p, token);

            break;

        case 10:
            if (tn === $.BLOCKQUOTE || tn === $.FIGCAPTION)
                addressEndTagInBody(p, token);

            else
                genericEndTagInBody(p, token);

            break;

        default :
            genericEndTagInBody(p, token);
    }
}

function eofInBody(p, token) {
    if (p.tmplInsertionModeStackTop > -1)
        eofInTemplate(p, token);

    else
        p.stopped = true;
}

//12.2.5.4.8 The "text" insertion mode
//------------------------------------------------------------------
function endTagInText(p, token) {
    if (token.tagName === $.SCRIPT)
        p.pendingScript = p.openElements.current;

    p.openElements.pop();
    p.insertionMode = p.originalInsertionMode;
}


function eofInText(p, token) {
    p.openElements.pop();
    p.insertionMode = p.originalInsertionMode;
    p._processToken(token);
}


//12.2.5.4.9 The "in table" insertion mode
//------------------------------------------------------------------
function characterInTable(p, token) {
    var curTn = p.openElements.currentTagName;

    if (curTn === $.TABLE || curTn === $.TBODY || curTn === $.TFOOT || curTn === $.THEAD || curTn === $.TR) {
        p.pendingCharacterTokens = [];
        p.hasNonWhitespacePendingCharacterToken = false;
        p.originalInsertionMode = p.insertionMode;
        p.insertionMode = IN_TABLE_TEXT_MODE;
        p._processToken(token);
    }

    else
        tokenInTable(p, token);
}

function captionStartTagInTable(p, token) {
    p.openElements.clearBackToTableContext();
    p.activeFormattingElements.insertMarker();
    p._insertElement(token, NS.HTML);
    p.insertionMode = IN_CAPTION_MODE;
}

function colgroupStartTagInTable(p, token) {
    p.openElements.clearBackToTableContext();
    p._insertElement(token, NS.HTML);
    p.insertionMode = IN_COLUMN_GROUP_MODE;
}

function colStartTagInTable(p, token) {
    p.openElements.clearBackToTableContext();
    p._insertFakeElement($.COLGROUP);
    p.insertionMode = IN_COLUMN_GROUP_MODE;
    p._processToken(token);
}

function tbodyStartTagInTable(p, token) {
    p.openElements.clearBackToTableContext();
    p._insertElement(token, NS.HTML);
    p.insertionMode = IN_TABLE_BODY_MODE;
}

function tdStartTagInTable(p, token) {
    p.openElements.clearBackToTableContext();
    p._insertFakeElement($.TBODY);
    p.insertionMode = IN_TABLE_BODY_MODE;
    p._processToken(token);
}

function tableStartTagInTable(p, token) {
    if (p.openElements.hasInTableScope($.TABLE)) {
        p.openElements.popUntilTagNamePopped($.TABLE);
        p._resetInsertionMode();
        p._processToken(token);
    }
}

function inputStartTagInTable(p, token) {
    var inputType = Tokenizer.getTokenAttr(token, ATTRS.TYPE);

    if (inputType && inputType.toLowerCase() === HIDDEN_INPUT_TYPE)
        p._appendElement(token, NS.HTML);

    else
        tokenInTable(p, token);
}

function formStartTagInTable(p, token) {
    if (!p.formElement && p.openElements.tmplCount === 0) {
        p._insertElement(token, NS.HTML);
        p.formElement = p.openElements.current;
        p.openElements.pop();
    }
}

function startTagInTable(p, token) {
    var tn = token.tagName;

    switch (tn.length) {
        case 2:
            if (tn === $.TD || tn === $.TH || tn === $.TR)
                tdStartTagInTable(p, token);

            else
                tokenInTable(p, token);

            break;

        case 3:
            if (tn === $.COL)
                colStartTagInTable(p, token);

            else
                tokenInTable(p, token);

            break;

        case 4:
            if (tn === $.FORM)
                formStartTagInTable(p, token);

            else
                tokenInTable(p, token);

            break;

        case 5:
            if (tn === $.TABLE)
                tableStartTagInTable(p, token);

            else if (tn === $.STYLE)
                startTagInHead(p, token);

            else if (tn === $.TBODY || tn === $.TFOOT || tn === $.THEAD)
                tbodyStartTagInTable(p, token);

            else if (tn === $.INPUT)
                inputStartTagInTable(p, token);

            else
                tokenInTable(p, token);

            break;

        case 6:
            if (tn === $.SCRIPT)
                startTagInHead(p, token);

            else
                tokenInTable(p, token);

            break;

        case 7:
            if (tn === $.CAPTION)
                captionStartTagInTable(p, token);

            else
                tokenInTable(p, token);

            break;

        case 8:
            if (tn === $.COLGROUP)
                colgroupStartTagInTable(p, token);

            else if (tn === $.TEMPLATE)
                startTagInHead(p, token);

            else
                tokenInTable(p, token);

            break;

        default:
            tokenInTable(p, token);
    }

}

function endTagInTable(p, token) {
    var tn = token.tagName;

    if (tn === $.TABLE) {
        if (p.openElements.hasInTableScope($.TABLE)) {
            p.openElements.popUntilTagNamePopped($.TABLE);
            p._resetInsertionMode();
        }
    }

    else if (tn === $.TEMPLATE)
        endTagInHead(p, token);

    else if (tn !== $.BODY && tn !== $.CAPTION && tn !== $.COL && tn !== $.COLGROUP && tn !== $.HTML &&
             tn !== $.TBODY && tn !== $.TD && tn !== $.TFOOT && tn !== $.TH && tn !== $.THEAD && tn !== $.TR)
        tokenInTable(p, token);
}

function tokenInTable(p, token) {
    var savedFosterParentingState = p.fosterParentingEnabled;

    p.fosterParentingEnabled = true;
    p._processTokenInBodyMode(token);
    p.fosterParentingEnabled = savedFosterParentingState;
}


//12.2.5.4.10 The "in table text" insertion mode
//------------------------------------------------------------------
function whitespaceCharacterInTableText(p, token) {
    p.pendingCharacterTokens.push(token);
}

function characterInTableText(p, token) {
    p.pendingCharacterTokens.push(token);
    p.hasNonWhitespacePendingCharacterToken = true;
}

function tokenInTableText(p, token) {
    var i = 0;

    if (p.hasNonWhitespacePendingCharacterToken) {
        for (; i < p.pendingCharacterTokens.length; i++)
            tokenInTable(p, p.pendingCharacterTokens[i]);
    }

    else {
        for (; i < p.pendingCharacterTokens.length; i++)
            p._insertCharacters(p.pendingCharacterTokens[i]);
    }

    p.insertionMode = p.originalInsertionMode;
    p._processToken(token);
}


//12.2.5.4.11 The "in caption" insertion mode
//------------------------------------------------------------------
function startTagInCaption(p, token) {
    var tn = token.tagName;

    if (tn === $.CAPTION || tn === $.COL || tn === $.COLGROUP || tn === $.TBODY ||
        tn === $.TD || tn === $.TFOOT || tn === $.TH || tn === $.THEAD || tn === $.TR) {
        if (p.openElements.hasInTableScope($.CAPTION)) {
            p.openElements.generateImpliedEndTags();
            p.openElements.popUntilTagNamePopped($.CAPTION);
            p.activeFormattingElements.clearToLastMarker();
            p.insertionMode = IN_TABLE_MODE;
            p._processToken(token);
        }
    }

    else
        startTagInBody(p, token);
}

function endTagInCaption(p, token) {
    var tn = token.tagName;

    if (tn === $.CAPTION || tn === $.TABLE) {
        if (p.openElements.hasInTableScope($.CAPTION)) {
            p.openElements.generateImpliedEndTags();
            p.openElements.popUntilTagNamePopped($.CAPTION);
            p.activeFormattingElements.clearToLastMarker();
            p.insertionMode = IN_TABLE_MODE;

            if (tn === $.TABLE)
                p._processToken(token);
        }
    }

    else if (tn !== $.BODY && tn !== $.COL && tn !== $.COLGROUP && tn !== $.HTML && tn !== $.TBODY &&
             tn !== $.TD && tn !== $.TFOOT && tn !== $.TH && tn !== $.THEAD && tn !== $.TR)
        endTagInBody(p, token);
}


//12.2.5.4.12 The "in column group" insertion mode
//------------------------------------------------------------------
function startTagInColumnGroup(p, token) {
    var tn = token.tagName;

    if (tn === $.HTML)
        startTagInBody(p, token);

    else if (tn === $.COL)
        p._appendElement(token, NS.HTML);

    else if (tn === $.TEMPLATE)
        startTagInHead(p, token);

    else
        tokenInColumnGroup(p, token);
}

function endTagInColumnGroup(p, token) {
    var tn = token.tagName;

    if (tn === $.COLGROUP) {
        if (p.openElements.currentTagName === $.COLGROUP) {
            p.openElements.pop();
            p.insertionMode = IN_TABLE_MODE;
        }
    }

    else if (tn === $.TEMPLATE)
        endTagInHead(p, token);

    else if (tn !== $.COL)
        tokenInColumnGroup(p, token);
}

function tokenInColumnGroup(p, token) {
    if (p.openElements.currentTagName === $.COLGROUP) {
        p.openElements.pop();
        p.insertionMode = IN_TABLE_MODE;
        p._processToken(token);
    }
}

//12.2.5.4.13 The "in table body" insertion mode
//------------------------------------------------------------------
function startTagInTableBody(p, token) {
    var tn = token.tagName;

    if (tn === $.TR) {
        p.openElements.clearBackToTableBodyContext();
        p._insertElement(token, NS.HTML);
        p.insertionMode = IN_ROW_MODE;
    }

    else if (tn === $.TH || tn === $.TD) {
        p.openElements.clearBackToTableBodyContext();
        p._insertFakeElement($.TR);
        p.insertionMode = IN_ROW_MODE;
        p._processToken(token);
    }

    else if (tn === $.CAPTION || tn === $.COL || tn === $.COLGROUP ||
             tn === $.TBODY || tn === $.TFOOT || tn === $.THEAD) {

        if (p.openElements.hasTableBodyContextInTableScope()) {
            p.openElements.clearBackToTableBodyContext();
            p.openElements.pop();
            p.insertionMode = IN_TABLE_MODE;
            p._processToken(token);
        }
    }

    else
        startTagInTable(p, token);
}

function endTagInTableBody(p, token) {
    var tn = token.tagName;

    if (tn === $.TBODY || tn === $.TFOOT || tn === $.THEAD) {
        if (p.openElements.hasInTableScope(tn)) {
            p.openElements.clearBackToTableBodyContext();
            p.openElements.pop();
            p.insertionMode = IN_TABLE_MODE;
        }
    }

    else if (tn === $.TABLE) {
        if (p.openElements.hasTableBodyContextInTableScope()) {
            p.openElements.clearBackToTableBodyContext();
            p.openElements.pop();
            p.insertionMode = IN_TABLE_MODE;
            p._processToken(token);
        }
    }

    else if (tn !== $.BODY && tn !== $.CAPTION && tn !== $.COL && tn !== $.COLGROUP ||
             tn !== $.HTML && tn !== $.TD && tn !== $.TH && tn !== $.TR)
        endTagInTable(p, token);
}

//12.2.5.4.14 The "in row" insertion mode
//------------------------------------------------------------------
function startTagInRow(p, token) {
    var tn = token.tagName;

    if (tn === $.TH || tn === $.TD) {
        p.openElements.clearBackToTableRowContext();
        p._insertElement(token, NS.HTML);
        p.insertionMode = IN_CELL_MODE;
        p.activeFormattingElements.insertMarker();
    }

    else if (tn === $.CAPTION || tn === $.COL || tn === $.COLGROUP || tn === $.TBODY ||
             tn === $.TFOOT || tn === $.THEAD || tn === $.TR) {
        if (p.openElements.hasInTableScope($.TR)) {
            p.openElements.clearBackToTableRowContext();
            p.openElements.pop();
            p.insertionMode = IN_TABLE_BODY_MODE;
            p._processToken(token);
        }
    }

    else
        startTagInTable(p, token);
}

function endTagInRow(p, token) {
    var tn = token.tagName;

    if (tn === $.TR) {
        if (p.openElements.hasInTableScope($.TR)) {
            p.openElements.clearBackToTableRowContext();
            p.openElements.pop();
            p.insertionMode = IN_TABLE_BODY_MODE;
        }
    }

    else if (tn === $.TABLE) {
        if (p.openElements.hasInTableScope($.TR)) {
            p.openElements.clearBackToTableRowContext();
            p.openElements.pop();
            p.insertionMode = IN_TABLE_BODY_MODE;
            p._processToken(token);
        }
    }

    else if (tn === $.TBODY || tn === $.TFOOT || tn === $.THEAD) {
        if (p.openElements.hasInTableScope(tn) || p.openElements.hasInTableScope($.TR)) {
            p.openElements.clearBackToTableRowContext();
            p.openElements.pop();
            p.insertionMode = IN_TABLE_BODY_MODE;
            p._processToken(token);
        }
    }

    else if (tn !== $.BODY && tn !== $.CAPTION && tn !== $.COL && tn !== $.COLGROUP ||
             tn !== $.HTML && tn !== $.TD && tn !== $.TH)
        endTagInTable(p, token);
}


//12.2.5.4.15 The "in cell" insertion mode
//------------------------------------------------------------------
function startTagInCell(p, token) {
    var tn = token.tagName;

    if (tn === $.CAPTION || tn === $.COL || tn === $.COLGROUP || tn === $.TBODY ||
        tn === $.TD || tn === $.TFOOT || tn === $.TH || tn === $.THEAD || tn === $.TR) {

        if (p.openElements.hasInTableScope($.TD) || p.openElements.hasInTableScope($.TH)) {
            p._closeTableCell();
            p._processToken(token);
        }
    }

    else
        startTagInBody(p, token);
}

function endTagInCell(p, token) {
    var tn = token.tagName;

    if (tn === $.TD || tn === $.TH) {
        if (p.openElements.hasInTableScope(tn)) {
            p.openElements.generateImpliedEndTags();
            p.openElements.popUntilTagNamePopped(tn);
            p.activeFormattingElements.clearToLastMarker();
            p.insertionMode = IN_ROW_MODE;
        }
    }

    else if (tn === $.TABLE || tn === $.TBODY || tn === $.TFOOT || tn === $.THEAD || tn === $.TR) {
        if (p.openElements.hasInTableScope(tn)) {
            p._closeTableCell();
            p._processToken(token);
        }
    }

    else if (tn !== $.BODY && tn !== $.CAPTION && tn !== $.COL && tn !== $.COLGROUP && tn !== $.HTML)
        endTagInBody(p, token);
}

//12.2.5.4.16 The "in select" insertion mode
//------------------------------------------------------------------
function startTagInSelect(p, token) {
    var tn = token.tagName;

    if (tn === $.HTML)
        startTagInBody(p, token);

    else if (tn === $.OPTION) {
        if (p.openElements.currentTagName === $.OPTION)
            p.openElements.pop();

        p._insertElement(token, NS.HTML);
    }

    else if (tn === $.OPTGROUP) {
        if (p.openElements.currentTagName === $.OPTION)
            p.openElements.pop();

        if (p.openElements.currentTagName === $.OPTGROUP)
            p.openElements.pop();

        p._insertElement(token, NS.HTML);
    }

    else if (tn === $.INPUT || tn === $.KEYGEN || tn === $.TEXTAREA || tn === $.SELECT) {
        if (p.openElements.hasInSelectScope($.SELECT)) {
            p.openElements.popUntilTagNamePopped($.SELECT);
            p._resetInsertionMode();

            if (tn !== $.SELECT)
                p._processToken(token);
        }
    }

    else if (tn === $.SCRIPT || tn === $.TEMPLATE)
        startTagInHead(p, token);
}

function endTagInSelect(p, token) {
    var tn = token.tagName;

    if (tn === $.OPTGROUP) {
        var prevOpenElement = p.openElements.items[p.openElements.stackTop - 1],
            prevOpenElementTn = prevOpenElement && p.treeAdapter.getTagName(prevOpenElement);

        if (p.openElements.currentTagName === $.OPTION && prevOpenElementTn === $.OPTGROUP)
            p.openElements.pop();

        if (p.openElements.currentTagName === $.OPTGROUP)
            p.openElements.pop();
    }

    else if (tn === $.OPTION) {
        if (p.openElements.currentTagName === $.OPTION)
            p.openElements.pop();
    }

    else if (tn === $.SELECT && p.openElements.hasInSelectScope($.SELECT)) {
        p.openElements.popUntilTagNamePopped($.SELECT);
        p._resetInsertionMode();
    }

    else if (tn === $.TEMPLATE)
        endTagInHead(p, token);
}

//12.2.5.4.17 The "in select in table" insertion mode
//------------------------------------------------------------------
function startTagInSelectInTable(p, token) {
    var tn = token.tagName;

    if (tn === $.CAPTION || tn === $.TABLE || tn === $.TBODY || tn === $.TFOOT ||
        tn === $.THEAD || tn === $.TR || tn === $.TD || tn === $.TH) {
        p.openElements.popUntilTagNamePopped($.SELECT);
        p._resetInsertionMode();
        p._processToken(token);
    }

    else
        startTagInSelect(p, token);
}

function endTagInSelectInTable(p, token) {
    var tn = token.tagName;

    if (tn === $.CAPTION || tn === $.TABLE || tn === $.TBODY || tn === $.TFOOT ||
        tn === $.THEAD || tn === $.TR || tn === $.TD || tn === $.TH) {
        if (p.openElements.hasInTableScope(tn)) {
            p.openElements.popUntilTagNamePopped($.SELECT);
            p._resetInsertionMode();
            p._processToken(token);
        }
    }

    else
        endTagInSelect(p, token);
}

//12.2.5.4.18 The "in template" insertion mode
//------------------------------------------------------------------
function startTagInTemplate(p, token) {
    var tn = token.tagName;

    if (tn === $.BASE || tn === $.BASEFONT || tn === $.BGSOUND || tn === $.LINK || tn === $.META ||
        tn === $.NOFRAMES || tn === $.SCRIPT || tn === $.STYLE || tn === $.TEMPLATE || tn === $.TITLE)
        startTagInHead(p, token);

    else {
        var newInsertionMode = TEMPLATE_INSERTION_MODE_SWITCH_MAP[tn] || IN_BODY_MODE;

        p._popTmplInsertionMode();
        p._pushTmplInsertionMode(newInsertionMode);
        p.insertionMode = newInsertionMode;
        p._processToken(token);
    }
}

function endTagInTemplate(p, token) {
    if (token.tagName === $.TEMPLATE)
        endTagInHead(p, token);
}

function eofInTemplate(p, token) {
    if (p.openElements.tmplCount > 0) {
        p.openElements.popUntilTagNamePopped($.TEMPLATE);
        p.activeFormattingElements.clearToLastMarker();
        p._popTmplInsertionMode();
        p._resetInsertionMode();
        p._processToken(token);
    }

    else
        p.stopped = true;
}


//12.2.5.4.19 The "after body" insertion mode
//------------------------------------------------------------------
function startTagAfterBody(p, token) {
    if (token.tagName === $.HTML)
        startTagInBody(p, token);

    else
        tokenAfterBody(p, token);
}

function endTagAfterBody(p, token) {
    if (token.tagName === $.HTML) {
        if (!p.fragmentContext)
            p.insertionMode = AFTER_AFTER_BODY_MODE;
    }

    else
        tokenAfterBody(p, token);
}

function tokenAfterBody(p, token) {
    p.insertionMode = IN_BODY_MODE;
    p._processToken(token);
}

//12.2.5.4.20 The "in frameset" insertion mode
//------------------------------------------------------------------
function startTagInFrameset(p, token) {
    var tn = token.tagName;

    if (tn === $.HTML)
        startTagInBody(p, token);

    else if (tn === $.FRAMESET)
        p._insertElement(token, NS.HTML);

    else if (tn === $.FRAME)
        p._appendElement(token, NS.HTML);

    else if (tn === $.NOFRAMES)
        startTagInHead(p, token);
}

function endTagInFrameset(p, token) {
    if (token.tagName === $.FRAMESET && !p.openElements.isRootHtmlElementCurrent()) {
        p.openElements.pop();

        if (!p.fragmentContext && p.openElements.currentTagName !== $.FRAMESET)
            p.insertionMode = AFTER_FRAMESET_MODE;
    }
}

//12.2.5.4.21 The "after frameset" insertion mode
//------------------------------------------------------------------
function startTagAfterFrameset(p, token) {
    var tn = token.tagName;

    if (tn === $.HTML)
        startTagInBody(p, token);

    else if (tn === $.NOFRAMES)
        startTagInHead(p, token);
}

function endTagAfterFrameset(p, token) {
    if (token.tagName === $.HTML)
        p.insertionMode = AFTER_AFTER_FRAMESET_MODE;
}

//12.2.5.4.22 The "after after body" insertion mode
//------------------------------------------------------------------
function startTagAfterAfterBody(p, token) {
    if (token.tagName === $.HTML)
        startTagInBody(p, token);

    else
        tokenAfterAfterBody(p, token);
}

function tokenAfterAfterBody(p, token) {
    p.insertionMode = IN_BODY_MODE;
    p._processToken(token);
}

//12.2.5.4.23 The "after after frameset" insertion mode
//------------------------------------------------------------------
function startTagAfterAfterFrameset(p, token) {
    var tn = token.tagName;

    if (tn === $.HTML)
        startTagInBody(p, token);

    else if (tn === $.NOFRAMES)
        startTagInHead(p, token);
}


//12.2.5.5 The rules for parsing tokens in foreign content
//------------------------------------------------------------------
function nullCharacterInForeignContent(p, token) {
    token.chars = UNICODE.REPLACEMENT_CHARACTER;
    p._insertCharacters(token);
}

function characterInForeignContent(p, token) {
    p._insertCharacters(token);
    p.framesetOk = false;
}

function startTagInForeignContent(p, token) {
    if (foreignContent.causesExit(token) && !p.fragmentContext) {
        while (p.treeAdapter.getNamespaceURI(p.openElements.current) !== NS.HTML && !p._isIntegrationPoint(p.openElements.current))
            p.openElements.pop();

        p._processToken(token);
    }

    else {
        var current = p._getAdjustedCurrentElement(),
            currentNs = p.treeAdapter.getNamespaceURI(current);

        if (currentNs === NS.MATHML)
            foreignContent.adjustTokenMathMLAttrs(token);

        else if (currentNs === NS.SVG) {
            foreignContent.adjustTokenSVGTagName(token);
            foreignContent.adjustTokenSVGAttrs(token);
        }

        foreignContent.adjustTokenXMLAttrs(token);

        if (token.selfClosing)
            p._appendElement(token, currentNs);
        else
            p._insertElement(token, currentNs);
    }
}

function endTagInForeignContent(p, token) {
    for (var i = p.openElements.stackTop; i > 0; i--) {
        var element = p.openElements.items[i];

        if (p.treeAdapter.getNamespaceURI(element) === NS.HTML) {
            p._processToken(token);
            break;
        }

        if (p.treeAdapter.getTagName(element).toLowerCase() === token.tagName) {
            p.openElements.popUntilElementPopped(element);
            break;
        }
    }
}


/***/ }),

/***/ "4328":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var stringify = __webpack_require__("4127");
var parse = __webpack_require__("9e6a");
var formats = __webpack_require__("b313");

module.exports = {
    formats: formats,
    parse: parse,
    stringify: stringify
};


/***/ }),

/***/ "4359":
/***/ (function(module, exports) {

/**
 * Copies the values of `source` to `array`.
 *
 * @private
 * @param {Array} source The array to copy values from.
 * @param {Array} [array=[]] The array to copy values to.
 * @returns {Array} Returns `array`.
 */
function copyArray(source, array) {
  var index = -1,
      length = source.length;

  array || (array = Array(length));
  while (++index < length) {
    array[index] = source[index];
  }
  return array;
}

module.exports = copyArray;


/***/ }),

/***/ "44a6":
/***/ (function(module) {

module.exports = JSON.parse("{\"status\":{\"statusMessage\":\"\",\"responseCode\":\"OK\",\"httpReturnCode\":200,\"httpReturnCodeMessage\":\"OK\"},\"headers\":[],\"responses\":[{\"brands\":[{\"entityId\":\"ENTITY3E2E9XK5B617C\",\"customerId\":\"ASKDHDL8OW84E\",\"brandName\":\"setdian\",\"lbrNodeId\":\"1977408\",\"brandID\":\"1977408\",\"campaignStats\":{\"pending\":0,\"active\":0,\"completed\":0,\"declined\":0,\"aggregatedCampaignData\":{\"spend\":0,\"sales\":0,\"clicks\":0,\"orders\":0,\"numberOfCampaigns\":0,\"currencyCode\":null}}}],\"paginationToken\":null}]}");

/***/ }),

/***/ "45b5":
/***/ (function(module) {

module.exports = JSON.parse("{\"status\":{\"statusMessage\":\"OK\",\"responseCode\":\"OK\",\"httpReturnCodeMessage\":\"OK\",\"httpReturnCode\":200},\"headers\":[],\"responses\":[{\"reportId\":\"amzn1.report.VGAZJEL0MF50\",\"downloadStatus\":\"DOWNLOAD_READY\"}]}");

/***/ }),

/***/ "45d4":
/***/ (function(module) {

module.exports = JSON.parse("{\"failureModel\":null,\"invoiceHeadersList\":[{\"vendorInvoiceNumber\":\"UK-83DQ4UCZ\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"83DQ4UCZ\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749523853000,\"invoicePaymentDueDate\":1755043199000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":70,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1755043199000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-6Y67MLPG\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"6Y67MLPG\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749523886000,\"invoicePaymentDueDate\":1755129599000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":6446.16},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":6446.16},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":6446.16},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":6446.16},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":420,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":6446.16},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1755129599000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-8IHL3INS\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"8IHL3INS\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749523818000,\"invoicePaymentDueDate\":1755129599000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":140,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1755129599000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-3MKXT57Y\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"3MKXT57Y\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749524021000,\"invoicePaymentDueDate\":1755129599000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":5371.8},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":5371.8},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":5371.8},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":5371.8},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":350,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":5371.8},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1755129599000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-7RT2ANEX\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"7RT2ANEX\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749523779000,\"invoicePaymentDueDate\":1754783999000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":70,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1754783999000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-6WBG1HUR\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"6WBG1HUR\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749523918000,\"invoicePaymentDueDate\":1754870399000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":140,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1754870399000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-17YTPRFO\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"17YTPRFO\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749524055000,\"invoicePaymentDueDate\":1755475199000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":3223.08},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":3223.08},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":3223.08},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":3223.08},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":210,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":3223.08},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1755475199000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-3T7ZHWFA\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"3T7ZHWFA\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749523990000,\"invoicePaymentDueDate\":1756425599000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":70,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1756425599000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-4DHXJH3P\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"4DHXJH3P\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749523666000,\"invoicePaymentDueDate\":1754783999000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":70,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1754783999000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-1L18XY5P\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"1L18XY5P\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749523744000,\"invoicePaymentDueDate\":1754783999000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":10743.6},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":10743.6},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":10743.6},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":10743.6},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":700,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":10743.6},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1754783999000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-63XHPA3U\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"63XHPA3U\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749523957000,\"invoicePaymentDueDate\":1755129599000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":140,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1755129599000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-2HQL6OFX\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"2HQL6OFX\"],\"invoiceDate\":1749513600000,\"invoiceCreationDate\":1749523706000,\"invoicePaymentDueDate\":1754783999000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":140,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":2148.72},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1754783999000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-3AKA5HDD\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"3AKA5HDD\"],\"invoiceDate\":1748908800000,\"invoiceCreationDate\":1748917180000,\"invoicePaymentDueDate\":1754179199000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":70,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1754179199000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-26CIZUOQ\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"26CIZUOQ\"],\"invoiceDate\":1748908800000,\"invoiceCreationDate\":1748917130000,\"invoicePaymentDueDate\":1754179199000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":70,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1754179199000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false},{\"vendorInvoiceNumber\":\"UK-84AD8C7T\",\"payeeCode\":\"IFADT\",\"legalEntityId\":\"102\",\"invoiceSource\":\"VendorCentralWeb\",\"marketplaceId\":\"GB\",\"childInvoiceIdentifiers\":[],\"poNumbers\":[\"84AD8C7T\"],\"invoiceDate\":1748476800000,\"invoiceCreationDate\":1748517777000,\"invoicePaymentDueDate\":1754092799000,\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"paidAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"queuedForPaymentAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"quickPayDiscountAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"approvedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"matchingInProgressAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"invoiceStatus\":null,\"invoiceStatusList\":[\"QUEUED_FOR_PAYMENT\"],\"units\":70,\"amountSettledPercentage\":100,\"invoiceInsights\":{\"simar-invoices-queued-for-payement\":[{\"invoiceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"isRejected\":null,\"descriptions\":[[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1754092799000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}]]}]},\"isUnderUpdation\":null,\"lastUpdatedDate\":0,\"issueCount\":0,\"rejectedSchemaAvailable\":false}],\"pageSize\":15}");

/***/ }),

/***/ "4643":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"next_pagination\":{\"has_more\":true,\"next_page\":1,\"search_key\":\"h19ZIxEh0TOIfcmxzN++aNE1cwItPNtHVnrU0ZdhPBY=\",\"next_item_cursor\":12},\"creator_profile_list\":[{\"creator_oecuid\":{\"value\":\"7494163661972932491\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"taraaddstocart\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"TaraAddsToCart\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/8ddf1fc75aaa866509e2ae4c731603b9~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=e8e895d4&x-expires=1768640400&x-signature=15FyEE3xOTGaB6093J68YLn6omQ%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/8ddf1fc75aaa866509e2ae4c731603b9~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=556abcca&x-expires=1768640400&x-signature=33mqQXZIg718adZvqW%2Fu%2BpyDsoM%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"5014\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"282\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d55fi8nog65vbfbr71b0\",\"duration\":22.2,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oofFknFeKVslLOAeIJVsGeCGAIORI8C6t9KXQ0~tplv-noop.image?dr=12525&refresh_token=03a5da5e&x-expires=1768491898&x-signature=Lq6x8S36I%2BVkflzXLh3bv1Lfti0%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/5c3e72822358e90bd1b3a30e1d20fd5f/69690b7a/video/tos/useast5/tos-useast5-pve-0068-tx/oMlK6eCeI8fsFntRQFuVnOA1ZGLWbIe6pA9GJI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=592&bt=296&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aDNlaTdnZGRnMzQ0Njs5M0BpMzR1aXk5cjtpODMzZzczNEBhXzEzYDI0XjUxL2MvYmM0YSNfNF9fMmRrZjJhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/5c3e72822358e90bd1b3a30e1d20fd5f/69690b7a/video/tos/useast5/tos-useast5-pve-0068-tx/oMlK6eCeI8fsFntRQFuVnOA1ZGLWbIe6pA9GJI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=592&bt=296&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aDNlaTdnZGRnMzQ0Njs5M0BpMzR1aXk5cjtpODMzZzczNEBhXzEzYDI0XjUxL2MvYmM0YSNfNF9fMmRrZjJhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491898,\"width\":576,\"height\":1024,\"file_hash\":\"0c355231dc369133676b199cb2a5f863\",\"format\":\"\",\"size\":843239,\"bitrate\":303869,\"video_quality\":\"lowest\"}]},\"name\":\"Life hack: Get work pants that are actually yoga pants!  These @G4Free Store work pants are so comfortable!  #g4free #workpants #officeoutfit #officeattire #officeootd \",\"release_date\":\"1766521183\",\"item_id\":\"7587150654225812749\",\"like_cnt\":12,\"play_cnt\":2219,\"comment_cnt\":7,\"video_products\":[{\"name\":\"G4Free Loose High-Waist Business Casual Pants Yoga Pants Women Wide Leg Pants with Pockets Comfortable Athletic Sweatpants Outdoorfun\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/9ac3e06b741b4590a9b84d68f877ecb5~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729814417873080623\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"52.84\",\"formatted_price\":\"$52.84\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"52.84\",\"formatted_price\":\"$52.84\"},\"promoted_product_num\":\"183213\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d51hk6vog65uc8jcu660\",\"duration\":27.5,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o4NIfIYGAMrCsQeLeBSjHLA5QiGJxhQJj3RChk~tplv-noop.image?dr=12525&refresh_token=91e295fa&x-expires=1768491903&x-signature=%2BN9xyEFqK8svP4rCngVMl%2FFIgwI%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/fa990a19381ad727a1ec7a0ed80b2ee9/69690b7f/video/tos/useast5/tos-useast5-pve-0068-tx/o4MoPQSDpBGeGUPFEBpxFAIYEDbDfQ9giRE4db/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=980&bt=490&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OzZmNzczPDQ6NTU8OzxpaEBpMzlmO3g5cjlrODMzZzczNEAyMGMuNjY0Ni8xYDEwY2I2YSMzcmdgMmRzaC5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/fa990a19381ad727a1ec7a0ed80b2ee9/69690b7f/video/tos/useast5/tos-useast5-pve-0068-tx/o4MoPQSDpBGeGUPFEBpxFAIYEDbDfQ9giRE4db/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=980&bt=490&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OzZmNzczPDQ6NTU8OzxpaEBpMzlmO3g5cjlrODMzZzczNEAyMGMuNjY0Ni8xYDEwY2I2YSMzcmdgMmRzaC5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491903,\"width\":576,\"height\":1024,\"file_hash\":\"0f6530629c61d6b2356ddf2edd8975f8\",\"format\":\"\",\"size\":1728235,\"bitrate\":502759,\"video_quality\":\"lowest\"}]},\"name\":\"Wednesday OOTD- @Arach&cloz Sweater TShirt @SHEINUS Pants  #ootd #arachcloz #officeootd #officewear #sweater \",\"release_date\":\"1766005640\",\"item_id\":\"7584936417281772813\",\"like_cnt\":11,\"play_cnt\":598,\"comment_cnt\":10,\"video_products\":[{\"name\":\"Arach&Cloz 2025 Womens Wool Blend Sweater Soft V Neck Short Sleeve Spring Fashion Pullover Tops Business Casual Outfits\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/5313296502bd4fa59ae3d72dff487666~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730774112854643048\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"47.13\",\"formatted_price\":\"$47.13\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"47.13\",\"formatted_price\":\"$47.13\"},\"promoted_product_num\":\"8274\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d5ckrrvog65n181h3hq0\",\"duration\":12.867,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oUCQSQnegA3ADFujRFfAUpDB9yW6oEEjEwYvIy~tplv-noop.image?dr=12525&refresh_token=ceedb9fe&x-expires=1768491888&x-signature=1M9dHp0tmYFSF%2F7w1Io7aHNqdx4%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/95e365037d1da8a073ff680acc03c037/69690b70/video/tos/useast5/tos-useast5-pve-0068-tx/oQZ03iAIpB0JrMCbTwlgAqiRIfx3CrBi17EnKP/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1240&bt=620&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTo7Nzo0aDUzZzg6OmQ1OkBpM2trO3E5cnVuODMzZzczNEA2YTUyNjNgNTMxXzQvNjVhYSNuMC4uMmRzb2BhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/95e365037d1da8a073ff680acc03c037/69690b70/video/tos/useast5/tos-useast5-pve-0068-tx/oQZ03iAIpB0JrMCbTwlgAqiRIfx3CrBi17EnKP/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1240&bt=620&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTo7Nzo0aDUzZzg6OmQ1OkBpM2trO3E5cnVuODMzZzczNEA2YTUyNjNgNTMxXzQvNjVhYSNuMC4uMmRzb2BhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"url_expire\":1768491888,\"width\":576,\"height\":1024,\"file_hash\":\"adacf52b747483a2a1824a1e88c34d40\",\"format\":\"\",\"size\":1021554,\"bitrate\":635146,\"video_quality\":\"lowest\"}]},\"name\":\"High-waisted, stretchy, flowy Gingham pants perfect for the office or casual wear. @Anrabess Fashion  #gingham #ginghampants #fashion #fashiontiktok #ootd\",\"release_date\":\"1767460389\",\"item_id\":\"7591184355276459278\",\"like_cnt\":11,\"play_cnt\":346,\"comment_cnt\":8,\"video_products\":[{\"name\":\"ANRABESS Womens Striped Gingham Palazzo Pants Wide Leg High Waisted Lounge Pajama Pants Cute Casual Trousers with Pockets for Comfort\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/8c97a8cf577e47149fe398c365bba4d2~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732128391237112137\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"49.99\",\"formatted_price\":\"$49.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"49.99\",\"formatted_price\":\"$49.99\"},\"promoted_product_num\":\"1788\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"11\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"314.70\",\"symbol\":\"$\",\"format\":\"$314.70\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_700645\",\"name\":\"Health\"},{\"starling_key\":\"magellan_824584\",\"name\":\"Luggage & Bags\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":635,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"175.96\",\"symbol\":\"$\",\"format\":\"$175.96\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":434,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"339\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"249\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"282\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"8399\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"249\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"282\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.3\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495471822630062339\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"kyla.rutter81\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Kyla Rutter\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/ec2863aa793b825a9a82a55575154938~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=a408565f&x-expires=1768640400&x-signature=n%2F36agiHH2HYhvj9twG0YMnmyC8%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/ec2863aa793b825a9a82a55575154938~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=1b442444&x-expires=1768640400&x-signature=l4lMJg3LU%2By40wBbLDSgFAXyMLw%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"34560\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"109\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d4s6c2nog65hslt8ahsg\",\"duration\":33.18,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oUxCTRXAEIRFiB5B1ccqCIq4VAvqaSmh53iZh~tplv-noop.image?dr=12525&refresh_token=690b99a3&x-expires=1768491909&x-signature=S%2BetDyYYZ51h25%2Fw94cZyyfhCqE%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/0fb38149ca552dfa1585cd5802349a0c/69690b85/video/tos/useast8/tos-useast8-pve-0068-tx2/oEVBACa4A5XviYx5RFiB9TRmIFQsZhqEEviZC/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1030&bt=515&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Ojs4OzM5ZWQzOzg5NjdkNUBpams7b2s5cjU5NzMzaTczNEAwNWAwNl8yXy4xLV4tLy9jYSNwXnFwMmRrYHBhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/0fb38149ca552dfa1585cd5802349a0c/69690b85/video/tos/useast8/tos-useast8-pve-0068-tx2/oEVBACa4A5XviYx5RFiB9TRmIFQsZhqEEviZC/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1030&bt=515&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Ojs4OzM5ZWQzOzg5NjdkNUBpams7b2s5cjU5NzMzaTczNEAwNWAwNl8yXy4xLV4tLy9jYSNwXnFwMmRrYHBhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"url_expire\":1768491909,\"width\":576,\"height\":1024,\"file_hash\":\"3111f448102fbf147516a786f680243a\",\"format\":\"\",\"size\":2191002,\"bitrate\":528270,\"video_quality\":\"lowest\"}]},\"name\":\"@FeelinGirl LLC #shapewear #feelingirlshapewear #fyp #addtocart #buynow \",\"release_date\":\"1765303835\",\"item_id\":\"7581922124407786783\",\"like_cnt\":4,\"play_cnt\":914,\"comment_cnt\":0,\"video_products\":[{\"name\":\"FeelinGirl Belt Waist Cincher Ab Belt Tummy Control Body Shaper with Triple Wrap WomenB Comfortable Fabrics Nylon Adjustable Multicolor Lady Festival Womenswear Lady  Comfort Fabrics Womenswear Fits Sexy Waist Trainer TikTokShopBlackFriday\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/71eac69ccb3f44a39dbdc17c2bf9eb2b~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730076199814861297\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"45\",\"formatted_price\":\"$45\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"45\",\"formatted_price\":\"$45\"},\"promoted_product_num\":\"124376\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d5e0qtvog65s26cb3qmg\",\"duration\":40.448,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oYf40LAgIvGAuqqLB9CmKSGrwfRIjIHcQV1qeH~tplv-noop.image?dr=12525&refresh_token=f2aa39cd&x-expires=1768491916&x-signature=p63YCLR21yKCxGtrCryIyZZWEyI%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/3caca2cc3e6e1927a11e6f215ab5a012/69690b8c/video/tos/useast8/tos-useast8-pve-0068-tx2/osL4vqAueAgVfrqaAGjSm3C0GIIqLIeHRBMR2w/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1312&bt=656&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OWlkODhpNzg8ZmVpNjw0NkBpanRlOXY5cnczODMzaTczNEBiYWIxMi42XjMxL14uYDViYSNqMGAvMmRzbmJhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/3caca2cc3e6e1927a11e6f215ab5a012/69690b8c/video/tos/useast8/tos-useast8-pve-0068-tx2/osL4vqAueAgVfrqaAGjSm3C0GIIqLIeHRBMR2w/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1312&bt=656&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OWlkODhpNzg8ZmVpNjw0NkBpanRlOXY5cnczODMzaTczNEBiYWIxMi42XjMxL14uYDViYSNqMGAvMmRzbmJhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"url_expire\":1768491916,\"width\":576,\"height\":1024,\"file_hash\":\"a1325e0d779d323ec2ec048edf208f92\",\"format\":\"\",\"size\":3397048,\"bitrate\":671884,\"video_quality\":\"lowest\"}]},\"name\":\"#fyp #viraltiktok #addtocart #viralproducts #lingerie \",\"release_date\":\"1767640493\",\"item_id\":\"7591957989100129567\",\"like_cnt\":5,\"play_cnt\":1344,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Lady's Starlight Night Sexy Underwear - Mesh and Lace Erotic Underwear - Suitable for couples to wear as a Valentine's Day gift. Fashionable outerwear and clothing.\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/7e580dcba73d4396b7da1b5410c46f9d~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731784798047343292\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"15.9\",\"formatted_price\":\"$15.9\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"15.9\",\"formatted_price\":\"$15.9\"},\"promoted_product_num\":\"0\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d44fe77og65u8r6outu0\",\"duration\":36.64,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oABpA9dCiF0lREPDEpEDezf8ILADAc2sEVIcPR~tplv-noop.image?dr=12525&refresh_token=b3adb5f3&x-expires=1768491912&x-signature=sMzaTQQ7hDbYcUP1XVr%2BhtTYVyg%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/41cebaf7f64b5b4853439533d0159b19/69690b88/video/tos/useast8/tos-useast8-ve-0068c003-tx2/o8BjA9dCkFsKREPQIpEDezf8E45XAc2sEVIcPR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=4866&bt=2433&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZDszZzY4OWU0PGk4OTxnZEBpM3dydXg5cjppNzMzaTczNEBiYGA0LTQuXzAxY18tYTMxYSNycjM1MmQ0YjFhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/41cebaf7f64b5b4853439533d0159b19/69690b88/video/tos/useast8/tos-useast8-ve-0068c003-tx2/o8BjA9dCkFsKREPQIpEDezf8E45XAc2sEVIcPR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=4866&bt=2433&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZDszZzY4OWU0PGk4OTxnZEBpM3dydXg5cjppNzMzaTczNEBiYGA0LTQuXzAxY18tYTMxYSNycjM1MmQ0YjFhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"url_expire\":1768491912,\"width\":576,\"height\":1024,\"file_hash\":\"52ea7c83e5b005431323e842ef52fa9b\",\"format\":\"\",\"size\":11414828,\"bitrate\":2492320,\"video_quality\":\"normal\"}]},\"name\":\"#lingerie #sleepwear #fyp #buynow #addtocart \",\"release_date\":\"1762195248\",\"item_id\":\"7568570839390522655\",\"like_cnt\":19,\"play_cnt\":2050,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Silvina's Day Women's Red Silk Bow Sleepwear Set - Glamour Nightwear for New Year, Valentine's Day, Birthday Gifts - Soft, Breathable, Minimalist Design - Comfortable Pajamas for Women Fabric Womenswear Suits Elegance\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/bb9fb5dd7e984b58b31853955cb64b5a~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729443248777040733\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"35.2\",\"formatted_price\":\"$35.2\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"35.2\",\"formatted_price\":\"$35.2\"},\"promoted_product_num\":\"28208\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"20\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"594.91\",\"symbol\":\"$\",\"format\":\"$594.91\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"},{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":207,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"594.91\",\"symbol\":\"$\",\"format\":\"$594.91\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":128,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"486\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"135\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"109\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"5414\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"135\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"109\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.3\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7493997394525063896\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"maddyshinaver\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"maddy✨🌻🦋\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/cb03574d56b0596c66538fed425e2f0b~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=b4e29ae6&x-expires=1768640400&x-signature=EcfZEcijcybsBaE7%2BMOLF474kjI%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/cb03574d56b0596c66538fed425e2f0b~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=53ca6a07&x-expires=1768640400&x-signature=ALqazmXryn8AHElvFvM3tE4EcSw%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"5192\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"783\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d3vsjkvog65hi2pg42d0\",\"duration\":15.4,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oEQjnkRA8EbIrT0fDHQEEfFXvXHCYAfjEyIEWm~tplv-noop.image?dr=12525&refresh_token=bf23eb66&x-expires=1768491891&x-signature=h%2BkA3mw%2FUP665yX%2BYhca3HtJw%2B8%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/9549033818ba883ea811130e575e2a7a/69690b73/video/tos/useast5/tos-useast5-pve-0068-tx/oIEDYwjIQHAfnIvfYRHAW0IEkCFnEyfD850Taj/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=822&bt=411&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZWg1Nzw1Zzs1Nzs3Z2lnO0BpMzVqNWs5cm52NjMzZzczNEA0MS5hLWM2NjIxNGNiMjQzYSNhMW1mMmRzZ3NhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/9549033818ba883ea811130e575e2a7a/69690b73/video/tos/useast5/tos-useast5-pve-0068-tx/oIEDYwjIQHAfnIvfYRHAW0IEkCFnEyfD850Taj/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=822&bt=411&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZWg1Nzw1Zzs1Nzs3Z2lnO0BpMzVqNWs5cm52NjMzZzczNEA0MS5hLWM2NjIxNGNiMjQzYSNhMW1mMmRzZ3NhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491891,\"width\":480,\"height\":854,\"file_hash\":\"41276c099888221eb0dade6bf513ac3f\",\"format\":\"\",\"size\":811069,\"bitrate\":421334,\"video_quality\":\"lowest\"}]},\"name\":\"fall outfit inspo🐻🖤 #fallootd #falloutfitinspo #fyppppviral #tiktokmademebuyit #bodysuitstyle \",\"release_date\":\"1761593959\",\"item_id\":\"7565988290097089806\",\"like_cnt\":345,\"play_cnt\":2291,\"comment_cnt\":242,\"video_products\":[{\"name\":\"FeelinGirl Women's Seamless Shaping Long Sleeve Thong Comfortable Bodysuit for Tops and Underwear Lady Comfort Basic\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/f6bba67fa8b74a0992d56a2c30588208~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729613312682725576\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"59.99\",\"formatted_price\":\"$59.99\"},\"promoted_product_num\":\"90362\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4hpvi7og65n6dor08i0\",\"duration\":14.2,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o0p3BGPBpI3AIw0CMoQkIkIcjAOApif7iDwyIw~tplv-noop.image?dr=12525&refresh_token=0994597f&x-expires=1768491890&x-signature=K2H85pYT30EYKSym3NokTA3Tu9M%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/cb48185177b0dcf0c5b0e5f1fe788406/69690b72/video/tos/useast5/tos-useast5-ve-0068c003-tx/o0jwIpYCIEMAPpFP3wIJ3GB0M2kiiBycAwSfok/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=694&bt=347&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzU6ZDNkNDRpPGUzNzVlM0BpMzt1Z3E5cmxzNzMzZzczNEA2XzA1Nl8uXi8xYy0xYzFhYSNmLWwzMmQ0c2VhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/cb48185177b0dcf0c5b0e5f1fe788406/69690b72/video/tos/useast5/tos-useast5-ve-0068c003-tx/o0jwIpYCIEMAPpFP3wIJ3GB0M2kiiBycAwSfok/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=694&bt=347&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzU6ZDNkNDRpPGUzNzVlM0BpMzt1Z3E5cmxzNzMzZzczNEA2XzA1Nl8uXi8xYy0xYzFhYSNmLWwzMmQ0c2VhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"url_expire\":1768491890,\"width\":480,\"height\":854,\"file_hash\":\"c16b1cb4ede911173b4212e84289d34f\",\"format\":\"\",\"size\":632012,\"bitrate\":356063,\"video_quality\":\"lowest\"}]},\"name\":\"little black dress moment🖤#outfitinspo #fypシ゚viral \",\"release_date\":\"1763942633\",\"item_id\":\"7576075795882331405\",\"like_cnt\":280,\"play_cnt\":1538,\"comment_cnt\":132,\"video_products\":[{\"name\":\"Women's Floral Print Deep V Neck A Line Dress, Elegant Sleeveless Plunge Neck Bodycon Long Dress, Ladies Summer Clothes for Party Holiday Wedding Guest, Summer Dresses\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/94940c8efd49421aa46e1453f905953c~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729495121263693976\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"31.19\",\"formatted_price\":\"$31.19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"34.49\",\"formatted_price\":\"$34.49\"},\"promoted_product_num\":\"17105\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4i9s97og65jukm11oh0\",\"duration\":4.367,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o4BkHpcJIAQkwEiZvPInCpzByerikw4SB9Ani0~tplv-noop.image?dr=12525&refresh_token=4a673053&x-expires=1768491880&x-signature=NMwImC7hqTuDCU22fg5JfF4uE48%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/fcb1a90ef2fa52c7d3822811d2a853a7/69690b68/video/tos/useast5/tos-useast5-pve-0068-tx/o0kkpIJEBwoekAn4wiPwAJCgQi9Sp0BCyziIlk/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=620&bt=310&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZmY8aDw7Z2VnZWg7MzM2Z0BpM3I0bm05cjw8NzMzZzczNEBiY2BfXzJhXmAxNTItLzU0YSNlLmpyMmQ0cGZhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/fcb1a90ef2fa52c7d3822811d2a853a7/69690b68/video/tos/useast5/tos-useast5-pve-0068-tx/o0kkpIJEBwoekAn4wiPwAJCgQi9Sp0BCyziIlk/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=620&bt=310&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZmY8aDw7Z2VnZWg7MzM2Z0BpM3I0bm05cjw8NzMzZzczNEBiY2BfXzJhXmAxNTItLzU0YSNlLmpyMmQ0cGZhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"url_expire\":1768491880,\"width\":480,\"height\":854,\"file_hash\":\"913345c1b6228fe244bfaf35067f2ee0\",\"format\":\"\",\"size\":173577,\"bitrate\":317979,\"video_quality\":\"lowest\"}]},\"name\":\"Can’t hype these bodysuits up enough @FeelinGirl LLC …you need her baddies #bodysuit #ttss #viralbodysuit #girlsupportinggirls #fypシ゚viral \",\"release_date\":\"1764007675\",\"item_id\":\"7576355073178078519\",\"like_cnt\":358,\"play_cnt\":7415,\"comment_cnt\":129,\"video_products\":[{\"name\":\"FeelinGirl Women's Seamless Shaping Long Sleeve Thong Comfortable Bodysuit for Tops and Underwear Lady Comfort Basic\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/f6bba67fa8b74a0992d56a2c30588208~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729613312682725576\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"59.99\",\"formatted_price\":\"$59.99\"},\"promoted_product_num\":\"90362\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"28\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"790.65\",\"symbol\":\"$\",\"format\":\"$790.65\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_824328\",\"name\":\"Menswear & Underwear\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":2714,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"38.24\",\"symbol\":\"$\",\"format\":\"$38.24\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":1635,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"532\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"686\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"783\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"25-34\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"8362\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"686\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"783\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.3\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495024979869927933\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"jhaniece89\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Kii💋\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/a0ff28c95e95ea5a1c4cc050e0a8c093~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=f8dcf91c&x-expires=1768640400&x-signature=VyGk%2Fv4gpPbsBdaceCJlRiYilOw%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/a0ff28c95e95ea5a1c4cc050e0a8c093~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=4925b3a6&x-expires=1768640400&x-signature=Rjv7Bej8q6DFZY0w3b0gjU%2FrCW8%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"2762\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"6871\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"393\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d3tuv37og65lho04ekvg\",\"duration\":30.967,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/osn8IqIG6OeIdWAC7R97ITeQ5fLlAjA9EZCJoA~tplv-noop.image?dr=12525&refresh_token=97dbde97&x-expires=1768491906&x-signature=hnmYYviAQDo9F4tRq8S%2BllV3hgM%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/4241f768df955db13157f58accda96e3/69690b82/video/tos/useast8/tos-useast8-ve-0068c003-tx2/osQpAMffjRE2rqIHCCD7OeF9C5E9AArIHu7BEI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=550&bt=275&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZjtlNGVoNDg8Ojw0PGc4O0Bpam43cm85cjZ4NjMzaTczNEA2Li9jMGJgNjAxYzReNmE0YSNzYi1lMmQ0c3FhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/4241f768df955db13157f58accda96e3/69690b82/video/tos/useast8/tos-useast8-ve-0068c003-tx2/osQpAMffjRE2rqIHCCD7OeF9C5E9AArIHu7BEI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=550&bt=275&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZjtlNGVoNDg8Ojw0PGc4O0Bpam43cm85cjZ4NjMzaTczNEA2Li9jMGJgNjAxYzReNmE0YSNzYi1lMmQ0c3FhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"url_expire\":1768491906,\"width\":480,\"height\":854,\"file_hash\":\"60c86088e09f5d60c14bd3ea9dbdfa90\",\"format\":\"\",\"size\":1091835,\"bitrate\":282064,\"video_quality\":\"lowest\"}]},\"name\":\"@FeelinGirl LLC The results speak for themselves 🫰🏽 #fyp #ttshop #creatorsearchinsights #shapewear \",\"release_date\":\"1761341328\",\"item_id\":\"7564903337426963743\",\"like_cnt\":134,\"play_cnt\":7417,\"comment_cnt\":9,\"video_products\":[{\"name\":\"FeelinGirl Shapewear for Women Butt Lifter Bodysuit  Tummy Control Shapewear Seamless Womenswear Comfort Spaghetti Strap Hip Underwear Basic Minimalist TikTokShopBlackFriday\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/25aaedc596134f57846835360742c2ab~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729385924325380593\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"promoted_product_num\":\"395917\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3rbjpfog65nbv3jvpv0\",\"duration\":43.667,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oMfxI4CRIArQmPj8qQ2e8CzAtLmM7W6PXqfczI~tplv-noop.image?dr=12525&refresh_token=61761c34&x-expires=1768491919&x-signature=hodugfo03lvA1tjCaETzD%2BjqM3M%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/6d19d8b0837808a66682cc19eed3540d/69690b8f/video/tos/useast8/tos-useast8-pve-0068-tx2/ooxNrtAfPKff5aoeiH8v5FAAxxAwbgAPfKuHci/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=502&bt=251&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Omc1M2U4ZTY2NmUzOWY4Z0BpM3NteXE5cnNlNjMzaTczNEAvX2IxYTM2XzMxYTI2Mi1jYSNzczBfMmRjZ29hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/6d19d8b0837808a66682cc19eed3540d/69690b8f/video/tos/useast8/tos-useast8-pve-0068-tx2/ooxNrtAfPKff5aoeiH8v5FAAxxAwbgAPfKuHci/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=502&bt=251&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Omc1M2U4ZTY2NmUzOWY4Z0BpM3NteXE5cnNlNjMzaTczNEAvX2IxYTM2XzMxYTI2Mi1jYSNzczBfMmRjZ29hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"url_expire\":1768491919,\"width\":480,\"height\":854,\"file_hash\":\"4ec1149b127d2a34fdcb16064b174001\",\"format\":\"\",\"size\":1406796,\"bitrate\":257731,\"video_quality\":\"lowest\"}]},\"name\":\"#ttshop #tikt #creator #shapewear #tiktokshopfinds \",\"release_date\":\"1760999913\",\"item_id\":\"7563436946584833311\",\"like_cnt\":60,\"play_cnt\":1450,\"comment_cnt\":8,\"video_products\":[{\"name\":\"FeelinGirl Shapewear for Women Butt Lifter Bodysuit  Tummy Control Shapewear Seamless Womenswear Comfort Spaghetti Strap Hip Underwear Basic Minimalist TikTokShopBlackFriday\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/25aaedc596134f57846835360742c2ab~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729385924325380593\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"promoted_product_num\":\"395917\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4aicq7og65jdt8gtupg\",\"duration\":21.434,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oMQRZVpASsa3eomqDEId9FFwEpBBIAfmEUExqO~tplv-noop.image?dr=12525&refresh_token=a0f1e826&x-expires=1768491897&x-signature=Ebu87cH3xgJTBdF7QUrV5vck9UQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/d48af9961d00eb79911d0d81afb282bf/69690b79/video/tos/useast8/tos-useast8-pve-0068-tx2/ogEp9fEIQEApoEFfqUFVqEwdmPZIlEA3DBSRRm/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=406&bt=203&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Mzs5PGc3ZDVnOGc0OzRnOUBpanhqd205cnRsNzMzaTczNEBgYC4xYjQzXi4xMy4uXmBjYSNtcTVhMmQ0YF5hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/d48af9961d00eb79911d0d81afb282bf/69690b79/video/tos/useast8/tos-useast8-pve-0068-tx2/ogEp9fEIQEApoEFfqUFVqEwdmPZIlEA3DBSRRm/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=406&bt=203&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Mzs5PGc3ZDVnOGc0OzRnOUBpanhqd205cnRsNzMzaTczNEBgYC4xYjQzXi4xMy4uXmBjYSNtcTVhMmQ0YF5hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491897,\"width\":480,\"height\":854,\"file_hash\":\"ca4ed853f87f0d03fc1e0084b1ee60c4\",\"format\":\"\",\"size\":559438,\"bitrate\":208803,\"video_quality\":\"lowest\"}]},\"name\":\"#viralvideo #viraltiktok #fypシ゚viral #shapewear \",\"release_date\":\"1762994296\",\"item_id\":\"7572002759734529311\",\"like_cnt\":33,\"play_cnt\":847,\"comment_cnt\":4,\"video_products\":[{\"name\":\"Womenswear  Tummy Control Shapewear Full Body Suit Womem's Bodysuit Ultra Stretch Farbic Adjustable Strap Breathable Mesh Design Comfortable Womenswear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/37353ade789e4610ba5779081250c34b~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729947042556318687\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"32.48\",\"formatted_price\":\"$32.48\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"44.98\",\"formatted_price\":\"$44.98\"},\"promoted_product_num\":\"93\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"220\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"1747.02\",\"symbol\":\"$\",\"format\":\"$1,747.02\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_604206\",\"name\":\"Toys & Hobbies\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":228,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"1713.93\",\"symbol\":\"$\",\"format\":\"$1,713.93\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"33.09\",\"symbol\":\"$\",\"format\":\"$33.09\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":238,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"4907\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"394\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"393\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"6188\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"2762\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"394\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"393\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.6\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494165782447949882\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"billionaire_beauty88\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Mel\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/d74aea2aab430a86673bcbc18b352923~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=72f93922&x-expires=1768640400&x-signature=NdFNl4WmONjOo9O0pnZ8ToZ2CUA%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/d74aea2aab430a86673bcbc18b352923~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=5e6cd8ed&x-expires=1768640400&x-signature=LUWLqZP6h6%2FCfnYVX8Og9Rh6sIk%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"35264\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"324\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d460o4vog65l5n5te93g\",\"duration\":14.652,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oIBLMXfYBvJg0iKCvj1AAJqHihIiDEcAIXs6M6~tplv-noop.image?dr=12525&refresh_token=0757aa27&x-expires=1768491890&x-signature=RAc6MOrNxn7EnC%2B9E9pIrWSLk18%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/3146e6c51e23999983ffc0e60f32f6ba/69690b72/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oUsQJifioAhX0JHqLEAYIXAUBcIpivCLB1MgDM/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1314&bt=657&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Ozg0aWhpOjQ8NTo7ZjllOkBpajx3cW85cjczNzMzaTczNEAyNjUtYi00Ni8xMTUtXy9eYSMwYjIyMmRzbDNhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/3146e6c51e23999983ffc0e60f32f6ba/69690b72/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oUsQJifioAhX0JHqLEAYIXAUBcIpivCLB1MgDM/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1314&bt=657&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Ozg0aWhpOjQ8NTo7ZjllOkBpajx3cW85cjczNzMzaTczNEAyNjUtYi00Ni8xMTUtXy9eYSMwYjIyMmRzbDNhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491890,\"width\":576,\"height\":1024,\"file_hash\":\"25251b7e19d4f95b0f03173ab85fd401\",\"format\":\"\",\"size\":1232616,\"bitrate\":673009,\"video_quality\":\"normal\"}]},\"name\":\"This dress is so sexy 🔥 Perfect for date night 🖤 #dress #bodycondress #datenight #tiktokshop #fyp \",\"release_date\":\"1762397556\",\"item_id\":\"7569439793633971487\",\"like_cnt\":3442,\"play_cnt\":105091,\"comment_cnt\":66,\"video_products\":[{\"name\":\"Tonark Leopard Print Dress - Tummy Control Lace-Up Front & Bodycon Fit, Sheer Mesh Bralette & Matching Panty, Adjustable Straps, True to Size, Unlock Your Confidence\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/08eeffe5b7304bb6b4d3ce544898c8ac~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731732636056785587\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"41.99\",\"formatted_price\":\"$41.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"41.99\",\"formatted_price\":\"$41.99\"},\"promoted_product_num\":\"784\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3opqffog65jsrjj108g\",\"duration\":14.652,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oYIjzdgxPfA5QwGCCAeELmAqDpQBUfG7Iz4RnI~tplv-noop.image?dr=12525&refresh_token=9677f3aa&x-expires=1768491890&x-signature=cIVEMElooOohMjh82EN6Y0%2BH2iA%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/683d88363174921836ca45e0cecdc2a0/69690b72/video/tos/useast8/tos-useast8-ve-0068c002-tx2/oMZEu8F75iwRABVAcozeR7AV0iILfEgBExnUhJ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=372&bt=186&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZjM8Ozc3aGU2aDQ1aDtkO0BpajNtdW05cmlzNjMzaTczNEAvMDJhMWFfNTUxMTJiM2I0YSM1LmdwMmRjbmxhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/683d88363174921836ca45e0cecdc2a0/69690b72/video/tos/useast8/tos-useast8-ve-0068c002-tx2/oMZEu8F75iwRABVAcozeR7AV0iILfEgBExnUhJ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=372&bt=186&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZjM8Ozc3aGU2aDQ1aDtkO0BpajNtdW05cmlzNjMzaTczNEAvMDJhMWFfNTUxMTJiM2I0YSM1LmdwMmRjbmxhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491890,\"width\":480,\"height\":854,\"file_hash\":\"d63ac3cee56d77bf2e2702a59625c0e2\",\"format\":\"\",\"size\":349198,\"bitrate\":190662,\"video_quality\":\"lowest\"}]},\"name\":\"These stockings are so sexy 🔥 Comes in a pack of two 🙌🏽 @jojoans_US #leggings #fishnetstockings #sexy #tiktokshop #fyp \",\"release_date\":\"1760664899\",\"item_id\":\"7561998081659620639\",\"like_cnt\":626,\"play_cnt\":31265,\"comment_cnt\":21,\"video_products\":[{\"name\":\"Mock Thigh High Stockings For Women Sexy Fishnet Tights Suspender Pantyhose 2 Pairs Leg Matching tights\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/47b2cb6574d84473810da7bd1f376fa2~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730268738706706816\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"promoted_product_num\":\"9248\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4l7897og65olqjslk0g\",\"duration\":15.117,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/okkREXLKAQxRAEfLpJI4UvF6EKEqVnfdB0BBDE~tplv-noop.image?dr=12525&refresh_token=0ba51e50&x-expires=1768491891&x-signature=0gD0bv9%2BOjJZs%2BUfYbetnCcDetk%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/f927645242c019c8afd181936e0f5671/69690b73/video/tos/useast8/tos-useast8-pve-0068-tx2/ookIVEdhAAQCEXx0RFfUnpDBTlKrBEEKMHfkEq/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=310&bt=155&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=MzdoODpoaDwzZ2VnZzVoOEBpam52dHI5cjw6NzMzaTczNEAzYzYvMTFhXzAxYzBeYTNfYSMtaWdpMmQ0NWlhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/f927645242c019c8afd181936e0f5671/69690b73/video/tos/useast8/tos-useast8-pve-0068-tx2/ookIVEdhAAQCEXx0RFfUnpDBTlKrBEEKMHfkEq/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=310&bt=155&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=MzdoODpoaDwzZ2VnZzVoOEBpam52dHI5cjw6NzMzaTczNEAzYzYvMTFhXzAxYzBeYTNfYSMtaWdpMmQ0NWlhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491891,\"width\":480,\"height\":854,\"file_hash\":\"d5b4caefbda2486d019b314e8678a162\",\"format\":\"\",\"size\":300153,\"bitrate\":158842,\"video_quality\":\"lowest\"}]},\"name\":\"This dress is so sexy 🔥 I'm wearing a small @Hawthaw Women Apparel #bodycondress #sexy #dress #blackfridaydeals #cybermonday \",\"release_date\":\"1764390076\",\"item_id\":\"7577997588142509342\",\"like_cnt\":188,\"play_cnt\":7215,\"comment_cnt\":17,\"video_products\":[{\"name\":\"Women's Solid Ruched Halter Neck Bodycon Dress, Elegant Fashion Sleeveless Split Hem Dress for Party Club Dating Wear, Women Dress for Summer, Bodycon Side Slit\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/5e306e22f0c7426b9e2c4d70998c2bd1~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731197773517263153\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"24.19\",\"formatted_price\":\"$24.19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"24.19\",\"formatted_price\":\"$24.19\"},\"promoted_product_num\":\"2864\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"183\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"4235.71\",\"symbol\":\"$\",\"format\":\"$4,235.71\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":578,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"4189.66\",\"symbol\":\"$\",\"format\":\"$4,189.66\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":338,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"622\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"338\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"324\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Male\",\"value\":\"6310\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"338\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"324\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.5\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495352890626705475\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"highland.fashion7\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Highland Fashion\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/d2edae7ea344cd8f87ce064caf5f2ead~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=c95b6ddb&x-expires=1768640400&x-signature=MVoa35kZLpackA4ungimhWuXchc%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/d2edae7ea344cd8f87ce064caf5f2ead~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=487d38ba&x-expires=1768640400&x-signature=bhKz37Z%2BTaMjcOTcs7yQxQ6Wlsg%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"992656\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"208903\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"8175\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d4hcjs7og65ji8t6v3u0\",\"duration\":21.267,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oQPgMIBu8zD0czLBQ4gIyiUkpDijvajE8JSAi~tplv-noop.image?dr=12525&refresh_token=20c98145&x-expires=1768491897&x-signature=MpdiZcVG%2BG6ZcID3a52WVU2uyvQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/78c3a2503cc067dddad6b52cd3b09e12/69690b79/video/tos/useast5/tos-useast5-ve-0068c001-tx/o80PakggjILEUJiSpgEijj7XiNHM8Az8BB4yv/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=622&bt=311&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZmgzOTdlN2doZmU2aDQ0aUBpMzY5O205cnZmNzMzZzczNEBhNWFfYC5jXi4xXi0uMGJhYSNyc3FmMmQ0Z2VhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/78c3a2503cc067dddad6b52cd3b09e12/69690b79/video/tos/useast5/tos-useast5-ve-0068c001-tx/o80PakggjILEUJiSpgEijj7XiNHM8Az8BB4yv/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=622&bt=311&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZmgzOTdlN2doZmU2aDQ0aUBpMzY5O205cnZmNzMzZzczNEBhNWFfYC5jXi4xXi0uMGJhYSNyc3FmMmQ0Z2VhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491897,\"width\":480,\"height\":854,\"file_hash\":\"6949796f7ef410755c2822b3990933ea\",\"format\":\"\",\"size\":847416,\"bitrate\":318772,\"video_quality\":\"lowest\"}]},\"name\":\"Winter party!! Perfect coat🤎🥹#zzh #tiktokshopblackfriday #spotlightfinds #chirstmasgift #winterfashiontrends  \",\"release_date\":\"1763887613\",\"item_id\":\"7575839203213331725\",\"like_cnt\":1011,\"play_cnt\":178502,\"comment_cnt\":54,\"video_products\":[{\"name\":\"Women's Fall Winter Long Faux Fur Coat, Vintage Style Casual Cotton Jacket with Large Collar and Belt, Elegant Plain Design\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/a70e2b33c3304a9d89d79f1dda5bd467~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730764012551377481\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"100.89\",\"formatted_price\":\"$100.89\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"100.89\",\"formatted_price\":\"$100.89\"},\"promoted_product_num\":\"325\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4jvegnog65ril4con5g\",\"duration\":25.267,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/ogs6AGIGkF7ucfxLIfceVAQVROMPen7ASGg5BF~tplv-noop.image?dr=12525&refresh_token=6344697e&x-expires=1768491901&x-signature=pzE4YX6gFQP5xs7s3%2BVXKp6nADI%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/aba9cbb4d24199ec4053109896da73c2/69690b7d/video/tos/useast5/tos-useast5-pve-0068-tx/oo8ICZ9LiiAlYkNwEI8BpQjMfX9r370n5BUvA9/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=554&bt=277&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDVmNDRlZjhmOTg3aWQ7O0BpanFmb3U5cmp5NzMzZzczNEAtYi9gXjFfNS8xMF8vXmJeYSMybDFmMmRrYmdhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/aba9cbb4d24199ec4053109896da73c2/69690b7d/video/tos/useast5/tos-useast5-pve-0068-tx/oo8ICZ9LiiAlYkNwEI8BpQjMfX9r370n5BUvA9/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=554&bt=277&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDVmNDRlZjhmOTg3aWQ7O0BpanFmb3U5cmp5NzMzZzczNEAtYi9gXjFfNS8xMF8vXmJeYSMybDFmMmRrYmdhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491901,\"width\":480,\"height\":854,\"file_hash\":\"b80541495d94cc9b2b74588f93a75020\",\"format\":\"\",\"size\":896415,\"bitrate\":283821,\"video_quality\":\"lowest\"}]},\"name\":\"Super comfortable set!!🥹#zzh #twopieceset #skirt #tiktokshopblackfriday #spotlightfindst \",\"release_date\":\"1764227025\",\"item_id\":\"7577297192981957901\",\"like_cnt\":843,\"play_cnt\":165328,\"comment_cnt\":35,\"video_products\":[{\"name\":\"Women's V-Neck Sweater Dress Set, Casual Fashion Two-Piece Knitwear, Autumn Winter New Arrival, Comfortable and Elegant Style\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/df663ce245024d2cbe782dc889db9552~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732021914767429957\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"42.99\",\"formatted_price\":\"$42.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"42.99\",\"formatted_price\":\"$42.99\"},\"promoted_product_num\":\"1402\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d51rdknog65nlqnlto80\",\"duration\":27.934,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o84FQEBeIrRSZbZS9fvXDI76pP4uVDWMQEEgAD~tplv-noop.image?dr=12525&refresh_token=e89099b2&x-expires=1768491903&x-signature=KYq8h3p2CL1OkdHZ4wtTCMaQbQE%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/d66a034079a9659f2265a3e60b1f7b9f/69690b7f/video/tos/useast5/tos-useast5-ve-0068c002-tx/oIRpmDS6AvGE4QPpQ7SFEbeQIBVfwCsDjgDuEX/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1232&bt=616&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZzQ1ZGRoOmk8aTk7NDg5O0BpM3JvdHE5cm51ODMzZzczNEA0Xy0xYDNiX18xXmNfLzE1YSM1cWtpMmRrYS5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/d66a034079a9659f2265a3e60b1f7b9f/69690b7f/video/tos/useast5/tos-useast5-ve-0068c002-tx/oIRpmDS6AvGE4QPpQ7SFEbeQIBVfwCsDjgDuEX/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1232&bt=616&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZzQ1ZGRoOmk8aTk7NDg5O0BpM3JvdHE5cm51ODMzZzczNEA0Xy0xYDNiX18xXmNfLzE1YSM1cWtpMmRrYS5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491903,\"width\":576,\"height\":1024,\"file_hash\":\"2a97bc16b5589d1e99480c7405c7ee3b\",\"format\":\"\",\"size\":2205758,\"bitrate\":631705,\"video_quality\":\"lowest\"}]},\"name\":\"leather coat🥹#zzh #fur #coat #leather #tiktokshopholidayhaul \",\"release_date\":\"1766045939\",\"item_id\":\"7585109145037049143\",\"like_cnt\":598,\"play_cnt\":128177,\"comment_cnt\":37,\"video_products\":[{\"name\":\"Women's Belted Coat with faux fur collar, Winter Fashion Long Sleeve Coat, Casual Loose Fit Longline Outerwear, Daily Wear Warm Clothing\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/cc12e0dd49384c3bb1ef88b0301b71e4~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732149870545572201\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"132.69\",\"formatted_price\":\"$132.69\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"132.69\",\"formatted_price\":\"$132.69\"},\"promoted_product_num\":\"997\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"35653\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"964832.18\",\"symbol\":\"$\",\"format\":\"$964.8K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":21,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"29544.31\",\"symbol\":\"$\",\"format\":\"$29.5K\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"927508.75\",\"symbol\":\"$\",\"format\":\"$927.5K\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":46,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"33277\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"10138\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"8175\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$150K+\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"1K+\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7451\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"992656\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"10138\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"8175\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\",\"55+\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.4\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"value\":[{\"starling_key\":\"vertical_creator_pro_tag_option_fashion_and_style\"}],\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495988653477300472\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"tasha.gordon87\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"tasha.and.ry\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/aec979f6169e4db6e4c88babba7dae2f~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=b6084e69&x-expires=1768640400&x-signature=Sj%2FAWQpVQTNlJ0MdJorN%2FnCyuF0%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/aec979f6169e4db6e4c88babba7dae2f~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=d94d1ef7&x-expires=1768640400&x-signature=vHFcTTCCpauCXk4haq%2BlwB0mxos%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"6610\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"309\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d4lr3v7og65opbf40mcg\",\"duration\":14.674,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oEt0lCBAEiAiBw4PPCAAITAi5drfaZWjhkyIqs~tplv-noop.image?dr=12525&refresh_token=af5b78a5&x-expires=1768491890&x-signature=SMyR5EiVLkGqE8gt04cs11mpt7c%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/17e4c6818700a4afb0bb5cfbb8e81250/69690b72/video/tos/useast8/tos-useast8-pve-0068-tx2/oEwEysAhQlxEVXKBsrsDfEyRH8AFbe7AjxYpIb/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=960&bt=480&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTo7Njc4ZTc8MzxlPDk6O0BpanA3ZXI5cnl1NzMzaTczNEBfNF8vLi8uXjMxMi1eLWBfYSNgLWNtMmQ0MGlhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/17e4c6818700a4afb0bb5cfbb8e81250/69690b72/video/tos/useast8/tos-useast8-pve-0068-tx2/oEwEysAhQlxEVXKBsrsDfEyRH8AFbe7AjxYpIb/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=960&bt=480&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTo7Njc4ZTc8MzxlPDk6O0BpanA3ZXI5cnl1NzMzaTczNEBfNF8vLi8uXjMxMi1eLWBfYSNgLWNtMmQ0MGlhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491890,\"width\":480,\"height\":854,\"file_hash\":\"e8b28186c6197c4af142dcd18b320542\",\"format\":\"\",\"size\":903148,\"bitrate\":492379,\"video_quality\":\"lowest\"}]},\"name\":\"Thanksgiving Day #ootd #tiktokshopblackfriday #tiktokshopcybermonday #womensfashion #dress\",\"release_date\":\"1764471316\",\"item_id\":\"7578346538875751711\",\"like_cnt\":416,\"play_cnt\":54956,\"comment_cnt\":24,\"video_products\":[{\"name\":\"Women's Bell Long Sleeve Godet Mini A-Line Dress - Universal Thread\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/336b0f8e04d542e2a2038dd3496b519d~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732087431687738353\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"12.99\",\"formatted_price\":\"$12.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"15.99\",\"formatted_price\":\"$15.99\"},\"promoted_product_num\":\"139\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4obk7nog65r5lk76hg0\",\"duration\":8.381,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oQwbgHAziR6ACW7TBAZZaRuiEBoBvDLhvVIRE~tplv-noop.image?dr=12525&refresh_token=68e2e863&x-expires=1768491884&x-signature=JvJrxiTubiUmSRp1BHb4ciYN5Ds%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/63b5e1583311f6af415657c48736a3ae/69690b6c/video/tos/useast8/tos-useast8-pve-0068-tx2/o8aI42wEvVEzAHBRhRiuQ7i6sCGQg2LWAviBT/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=764&bt=382&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NjtkaDZoZGZoNmg0NmdmNUBpM2s6b3U5cjplNzMzaTczNEAzYTA1NjZgNWMxY2JgYV82YSNkM2gyMmRraGxhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/63b5e1583311f6af415657c48736a3ae/69690b6c/video/tos/useast8/tos-useast8-pve-0068-tx2/o8aI42wEvVEzAHBRhRiuQ7i6sCGQg2LWAviBT/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=764&bt=382&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NjtkaDZoZGZoNmg0NmdmNUBpM2s6b3U5cjplNzMzaTczNEAzYTA1NjZgNWMxY2JgYV82YSNkM2gyMmRraGxhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"url_expire\":1768491884,\"width\":576,\"height\":1024,\"file_hash\":\"7cf264afa1001dc9b5a2b4b8383891f2\",\"format\":\"\",\"size\":410468,\"bitrate\":391808,\"video_quality\":\"lowest\"}]},\"name\":\"Still obsessed with this dress I wore for Thanksgiving ❤️ #ootd #dress #womensfashion #tiktokshopholidayhaul #affordablefashion\",\"release_date\":\"1764801272\",\"item_id\":\"7579763646457318686\",\"like_cnt\":266,\"play_cnt\":38021,\"comment_cnt\":12,\"video_products\":[{\"name\":\"Women's Bell Long Sleeve Godet Mini A-Line Dress - Universal Thread\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/336b0f8e04d542e2a2038dd3496b519d~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732087431687738353\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"12.99\",\"formatted_price\":\"$12.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"15.99\",\"formatted_price\":\"$15.99\"},\"promoted_product_num\":\"139\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4s5canog65nvfmssq60\",\"duration\":15,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oEqFjOAd3EPA9nepAMCtIVE4fYEknBEVaDvROF~tplv-noop.image?dr=12525&refresh_token=32eaf95b&x-expires=1768491891&x-signature=NuJ4YyoexuAcyf7SnE0gil%2BDBNU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/9231560ccd60f45bc6229b7dda1f9b9d/69690b73/video/tos/useast8/tos-useast8-ve-0068c002-tx2/owfVxfuwgQocSe1IKWSIhMOCcQa7q5S8AA7WDj/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=798&bt=399&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODpkaWRkNDQ8aDY3aTQ0aEBpM3R2aXE5cmQ4NzMzaTczNEAtLl82LWJiNS8xYi1hLjUvYSMzcGpzMmRrYHBhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/9231560ccd60f45bc6229b7dda1f9b9d/69690b73/video/tos/useast8/tos-useast8-ve-0068c002-tx2/owfVxfuwgQocSe1IKWSIhMOCcQa7q5S8AA7WDj/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=798&bt=399&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODpkaWRkNDQ8aDY3aTQ0aEBpM3R2aXE5cmQ4NzMzaTczNEAtLl82LWJiNS8xYi1hLjUvYSMzcGpzMmRrYHBhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491891,\"width\":576,\"height\":1024,\"file_hash\":\"a89496f43c8762e625cd1c7ce6cf4873\",\"format\":\"\",\"size\":767304,\"bitrate\":409228,\"video_quality\":\"lowest\"}]},\"name\":\"The perfect dress & it has POCKETS!!!! #tiktokshopholidayhaul #dress #ootd #womensfashion #holidaydress \",\"release_date\":\"1765299761\",\"item_id\":\"7581904560772418846\",\"like_cnt\":10,\"play_cnt\":2004,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Women's Bell Long Sleeve Godet Mini A-Line Dress - Universal Thread\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/336b0f8e04d542e2a2038dd3496b519d~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732087431687738353\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"12.99\",\"formatted_price\":\"$12.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"15.99\",\"formatted_price\":\"$15.99\"},\"promoted_product_num\":\"139\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"83\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"2039.18\",\"symbol\":\"$\",\"format\":\"$2,039.18\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":124,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"1637.60\",\"symbol\":\"$\",\"format\":\"$1,637.60\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":99,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"789\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"306\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"309\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7917\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"306\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"309\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.7\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494179292385216047\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"flowformzj4\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"flowformzj4\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/726c409f4440dcf47252a612754a143c~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=0587007f&x-expires=1768640400&x-signature=j7uWaq03N8fsKyXZyZxj4IzFEL8%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/726c409f4440dcf47252a612754a143c~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=e2ecfeed&x-expires=1768640400&x-signature=%2Bd6D0iX01%2BFLkeRwf8y9VZhmHEQ%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"66\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"343\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d4khi5vog65iqugu3pe0\",\"duration\":8.451,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o8fHpGLABGAiRhw1yZB5p0IUlI7y4GIgIicCM6~tplv-noop.image?dr=12525&refresh_token=76515318&x-expires=1768491884&x-signature=AeDJHnEAAXRls2e83Dvgw8YKOv8%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/0a7aa9036dd9c6152bec6aa729ee35dd/69690b6c/video/tos/useast5/tos-useast5-ve-0068c002-tx/osD0epRBrDkEEqFRNyIMwrASPGgf4XlpaEKQUD/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=784&bt=392&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZDdpOWY7Njc8PDc3Ozs7ZUBpM3N4eGw5cjhrNzMzZzczNEAuMS9jYmIwNjAxYjAzY15gYSNiMGRuMmRzZmhhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/0a7aa9036dd9c6152bec6aa729ee35dd/69690b6c/video/tos/useast5/tos-useast5-ve-0068c002-tx/osD0epRBrDkEEqFRNyIMwrASPGgf4XlpaEKQUD/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=784&bt=392&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZDdpOWY7Njc8PDc3Ozs7ZUBpM3N4eGw5cjhrNzMzZzczNEAuMS9jYmIwNjAxYjAzY15gYSNiMGRuMmRzZmhhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"url_expire\":1768491884,\"width\":480,\"height\":854,\"file_hash\":\"c3a8b20944e16fdb499d548ecb839db3\",\"format\":\"\",\"size\":424353,\"bitrate\":401706,\"video_quality\":\"lowest\"}]},\"name\":\"#spotlightfinds #tiktokshopcybermonday #tiktokshopblackfriday #girlsfashion #trousers \",\"release_date\":\"1764301119\",\"item_id\":\"7577615506010574094\",\"like_cnt\":314,\"play_cnt\":40079,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Women's Fashion Abstract Polka Dot Print Loose Pocket Casual Wide Leg Pants, Comfortable High Waist Trousers for Daily Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/57f5e7cb3bab46f58e885e4e07be8df7~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731692371125375907\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"37.19\",\"formatted_price\":\"$37.19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"37.19\",\"formatted_price\":\"$37.19\"},\"promoted_product_num\":\"643\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4kg7gnog65n6dv9id8g\",\"duration\":10.077,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oExKSQCQD0iPQBBagEffACSCyFZvzpDE3uiRuS~tplv-noop.image?dr=12525&refresh_token=f0a01978&x-expires=1768491886&x-signature=K6VBdHratStqPWUFI7Sr1kbuZhg%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/2017d2dc8ed7f0b77534addce382331b/69690b6e/video/tos/useast5/tos-useast5-ve-0068c003-tx/oAkUDgcBp4iDRowiHEwBMdBviaQNAS3IEZI36/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=5074&bt=2537&cs=0&ds=3&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Nzs4M2ZnOGc2NDg0ZWY0OUBpamc8Z3E5cmpqNzMzZzczNEAzXjIxMTYuXmMxMDUwYjReYSM1ZnMzMmRrNGhhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/2017d2dc8ed7f0b77534addce382331b/69690b6e/video/tos/useast5/tos-useast5-ve-0068c003-tx/oAkUDgcBp4iDRowiHEwBMdBviaQNAS3IEZI36/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=5074&bt=2537&cs=0&ds=3&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Nzs4M2ZnOGc2NDg0ZWY0OUBpamc8Z3E5cmpqNzMzZzczNEAzXjIxMTYuXmMxMDUwYjReYSM1ZnMzMmRrNGhhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"url_expire\":1768491886,\"width\":720,\"height\":1280,\"file_hash\":\"ce08a9c78c31d378d4b305e44a6f57c8\",\"format\":\"\",\"size\":3272711,\"bitrate\":2598162,\"video_quality\":\"normal\"}]},\"name\":\"#spotlightfinds #tiktokshopcybermonday #tiktokshopblackfriday #nightwear  #pjs \",\"release_date\":\"1764295662\",\"item_id\":\"7577592073147256078\",\"like_cnt\":938,\"play_cnt\":47499,\"comment_cnt\":2,\"video_products\":[{\"name\":\"Women's Strawberry Pattern Sleepwear Set, Long Sleeve Button-Up Top & Elastic Pants, Casual Fall Winter Pajamas, Comfortable Home Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ccfb3c10d887467fb2e5943895b2cc06~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731961532329726338\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"27.09\",\"formatted_price\":\"$27.09\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"27.09\",\"formatted_price\":\"$27.09\"},\"promoted_product_num\":\"1066\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d47c2cfog65g42c2jisg\",\"duration\":9.38,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/okTpDPDTQDBE6ggvfEAgQeqFBsdx9ylE6vQRSg~tplv-noop.image?dr=12525&refresh_token=6cef6be6&x-expires=1768491885&x-signature=ftUE6h6SoDYsvbqF%2BwU1tfFVOBU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/c935f69f62fd769aa8106e5faf47eeb0/69690b6d/video/tos/useast5/tos-useast5-pve-0068-tx/o4pBiAgI2CwXyICOIQCdif5Ypwhi0EAJABpIwB/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=4124&bt=2062&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZmdlODc7MzxkNTRnaDhnZUBpamw1NWo5cmZmNzMzZzczNEBjMzUuLWBeX14xLzU0MjAxYSNwZ2AxMmRjLzRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/c935f69f62fd769aa8106e5faf47eeb0/69690b6d/video/tos/useast5/tos-useast5-pve-0068-tx/o4pBiAgI2CwXyICOIQCdif5Ypwhi0EAJABpIwB/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=4124&bt=2062&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZmdlODc7MzxkNTRnaDhnZUBpamw1NWo5cmZmNzMzZzczNEBjMzUuLWBeX14xLzU0MjAxYSNwZ2AxMmRjLzRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"url_expire\":1768491885,\"width\":576,\"height\":1024,\"file_hash\":\"b633930380bb6614cf1d2c56380c62f7\",\"format\":\"\",\"size\":2476152,\"bitrate\":2111856,\"video_quality\":\"normal\"}]},\"name\":\"#tiktokshopblackfriday #spotlightfinds #wireless  #lacebra #fallfashion \",\"release_date\":\"1762574805\",\"item_id\":\"7570200993015680311\",\"like_cnt\":11,\"play_cnt\":5815,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Women's Contrast Lace Backless Wireless Bra & Panty Underwear Set, Sexy Comfy Breathable Pink Lingerie Set for Daily Wear, Underwear Set for Women\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/781ce9e3bde54ed59e146a177d833996~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729606202892063601\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"32.59\",\"formatted_price\":\"$32.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"32.59\",\"formatted_price\":\"$32.59\"},\"promoted_product_num\":\"21979\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"86\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"1500.61\",\"symbol\":\"$\",\"format\":\"$1,500.61\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":111,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"1500.61\",\"symbol\":\"$\",\"format\":\"$1,500.61\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":128,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"1546\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"344\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"343\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"6515\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"344\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"343\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.1\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494022295611475126\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"latashalee357\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"me_latasha_lee\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/f02d3b4e907488b40686916779c6675d~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=6f3e3a4a&x-expires=1768640400&x-signature=sMxoJ1qJCCQMgBlPIMACd1X1e9A%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/f02d3b4e907488b40686916779c6675d~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=dd427e71&x-expires=1768640400&x-signature=iYaj5Y0I%2BN4k4LKbXVIn95Rd%2BxQ%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"83846\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"352\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d4i6u0nog65qi66005tg\",\"duration\":27.4,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o4fpEARZEADJgIeE04F8CIpdE2VxQAB1GLDVIA~tplv-noop.image?dr=12525&refresh_token=f6bd8bc2&x-expires=1768491903&x-signature=o%2F87alxji6PbDiIibvd7sPadfr8%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/cc8b11315afe4d19d8b6eab9d219126f/69690b7f/video/tos/useast8/tos-useast8-pve-0068-tx2/oUcSkASka7FYRAVPEowARQaVEAkvivBIBQ6iE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2766&bt=1383&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OzVoNTk4Mzg2MzU2OmVoO0BpajgzOXQ5cjM5NzMzaTczNEA2YC01MDIxXjYxL15jYDFiYSNxLTNmMmRrcmZhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/cc8b11315afe4d19d8b6eab9d219126f/69690b7f/video/tos/useast8/tos-useast8-pve-0068-tx2/oUcSkASka7FYRAVPEowARQaVEAkvivBIBQ6iE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2766&bt=1383&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OzVoNTk4Mzg2MzU2OmVoO0BpajgzOXQ5cjM5NzMzaTczNEA2YC01MDIxXjYxL15jYDFiYSNxLTNmMmRrcmZhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491903,\"width\":576,\"height\":1024,\"file_hash\":\"232eda54e0ac670e4a47f8cf9505eb69\",\"format\":\"\",\"size\":4853827,\"bitrate\":1417175,\"video_quality\":\"normal\"}]},\"name\":\"I do have to say this is my first time ever getting me, Fiona flairs and now I am in love! These are the stretchiest jeans and the cutest flares!! #fionaflares #flarepants #bellbottoms #camo \",\"release_date\":\"1763995887\",\"item_id\":\"7576304500563119390\",\"like_cnt\":276,\"play_cnt\":25897,\"comment_cnt\":10,\"video_products\":[{\"name\":\"Fiona High Waisted Bell Bottom Flare Jeans - Woodland Green Camo\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/f4d3fdb0592f49a4bf7eb738a3a3f132~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732042880648450470\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"56.99\",\"formatted_price\":\"$56.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"56.99\",\"formatted_price\":\"$56.99\"},\"promoted_product_num\":\"331\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3rns4vog65pdn87darg\",\"duration\":38.3,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o42o7h4DrAOyCRCCAIFu9fVDTf6Vt93EEEB3uQ~tplv-noop.image?dr=12525&refresh_token=c40226a4&x-expires=1768491914&x-signature=dUUc%2FfmGufH3i2j4I6ZOUbRX9%2BA%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/056e52989f70d9b89d4b6025b29c5ac3/69690b8a/video/tos/useast8/tos-useast8-pve-0068-tx2/o4e1A5X2JoqnNW2dIAMAiw7LjbRAfCfI3vQO8m/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2948&bt=1474&cs=0&ds=3&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OzZlNjk0O2k0ZTZnNmRkNkBpamQ6cXM5cjdxNjMzaTczNEAvMmJfLV4yNTExNTI1L14zYSNvYTVhMmRzcG9hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/056e52989f70d9b89d4b6025b29c5ac3/69690b8a/video/tos/useast8/tos-useast8-pve-0068-tx2/o4e1A5X2JoqnNW2dIAMAiw7LjbRAfCfI3vQO8m/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2948&bt=1474&cs=0&ds=3&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OzZlNjk0O2k0ZTZnNmRkNkBpamQ6cXM5cjdxNjMzaTczNEAvMmJfLV4yNTExNTI1L14zYSNvYTVhMmRzcG9hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"url_expire\":1768491914,\"width\":720,\"height\":1280,\"file_hash\":\"4a8efe59200c59c87006ea2880b1ffcb\",\"format\":\"\",\"size\":7228611,\"bitrate\":1509892,\"video_quality\":\"normal\"}]},\"name\":\"This is the absolute perfect dress for any event this season! It’s so silky, smooth and comfortable, but so beautiful! #fallfashion #christmasdress #formaldress \",\"release_date\":\"1761050591\",\"item_id\":\"7563654513324870943\",\"like_cnt\":113,\"play_cnt\":14205,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Elegant satin backless fitted dress 2025 Summer wedding cocktail party dress\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/05c616f30b6742399c69a0c3ca87d956~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731600080136540428\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"62.57\",\"formatted_price\":\"$62.57\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"62.57\",\"formatted_price\":\"$62.57\"},\"promoted_product_num\":\"382\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4ti5n7og65kd5c7690g\",\"duration\":18.034,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oMgmICFN1rVcoSt2EDDAQLOoR0pARBhEtyEDfe~tplv-noop.image?dr=12525&refresh_token=f9d80264&x-expires=1768491894&x-signature=YqD3hrU4ZigjZTxCMp8n5YtY0sA%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/75d52ba7fb16f67ec6c9ac08b7c3e85f/69690b76/video/tos/useast8/tos-useast8-ve-0068c002-tx2/oUTwA70EPwV8hIIiBqJa6ABlREiBd3QViaszB/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1330&bt=665&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Omc8Mzs8PDtlNmlmNGQ2NEBpajw6OG45cnFsNzMzaTczNEBgYTJhMGA2NmExYjQ1MWEyYSMtM2BhMmQ0MnFhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/75d52ba7fb16f67ec6c9ac08b7c3e85f/69690b76/video/tos/useast8/tos-useast8-ve-0068c002-tx2/oUTwA70EPwV8hIIiBqJa6ABlREiBd3QViaszB/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1330&bt=665&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Omc8Mzs8PDtlNmlmNGQ2NEBpajw6OG45cnFsNzMzaTczNEBgYTJhMGA2NmExYjQ1MWEyYSMtM2BhMmQ0MnFhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491894,\"width\":576,\"height\":1024,\"file_hash\":\"98d00fc42c302ef997ffac8612cac3ab\",\"format\":\"\",\"size\":1536272,\"bitrate\":681500,\"video_quality\":\"lowest\"}]},\"name\":\"Fiona Flares in camouflage! These stretchy bells are the most comfortable jeans I Own!! #bellbottoms #fionaflares #camo \",\"release_date\":\"1765483266\",\"item_id\":\"7582692825746181407\",\"like_cnt\":24,\"play_cnt\":848,\"comment_cnt\":2,\"video_products\":[{\"name\":\"Fiona High Waisted Bell Bottom Flare Jeans - Woodland Green Camo\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/f4d3fdb0592f49a4bf7eb738a3a3f132~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732042880648450470\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"56.99\",\"formatted_price\":\"$56.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"56.99\",\"formatted_price\":\"$56.99\"},\"promoted_product_num\":\"331\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"17\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"497.28\",\"symbol\":\"$\",\"format\":\"$497.28\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_801928\",\"name\":\"Books, Magazines & Audio\"},{\"starling_key\":\"magellan_700645\",\"name\":\"Health\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":340,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"497.28\",\"symbol\":\"$\",\"format\":\"$497.28\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":186,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"621\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"359\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"352\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Male\",\"value\":\"6967\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"359\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"352\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.7\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494192152340498160\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"thriftking00\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"thriftking\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/musically-maliva-obj/1594805258216454~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=157a9199&x-expires=1768640400&x-signature=goCvNtyoEBcI1CwW%2BRGghX09onw%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/musically-maliva-obj/1594805258216454~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=15584afa&x-expires=1768640400&x-signature=FrmBHn6WxccJDXnL1ZIxSTs2nRk%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"335\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"528\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d41j9tvog65u0rrhcq6g\",\"duration\":15.634,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/owHe4SmCGsnIInLjn0QFeMAk4bAeav4GboBIJG~tplv-noop.image?dr=12525&refresh_token=dd437aa2&x-expires=1768491891&x-signature=4y5wfOaNI%2BGs7q%2B0dYHH9spq66A%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/2a1dfec9efbee32d4d4816cde41011ef/69690b73/video/tos/useast5/tos-useast5-ve-0068c003-tx/osDWaP9EREBAlSpfe4IPvcDpxKNFED3zBgFTNA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=998&bt=499&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=N2g6ZDo8ZzM5M2Y5OGc6NUBpanRrdXg5cndtNzMzZzczNEA1Ly8yMTA1NjYxMC0xNS81YSMzYG8tMmRzNi5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/2a1dfec9efbee32d4d4816cde41011ef/69690b73/video/tos/useast5/tos-useast5-ve-0068c003-tx/osDWaP9EREBAlSpfe4IPvcDpxKNFED3zBgFTNA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=998&bt=499&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=N2g6ZDo8ZzM5M2Y5OGc6NUBpanRrdXg5cndtNzMzZzczNEA1Ly8yMTA1NjYxMC0xNS81YSMzYG8tMmRzNi5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491891,\"width\":480,\"height\":854,\"file_hash\":\"37753b9631e4b3837fc235580101b5bb\",\"format\":\"\",\"size\":999198,\"bitrate\":511294,\"video_quality\":\"lowest\"}]},\"name\":\"Such a cute nightgown🎀🖤#nightgown #polkadot #dress #tiktokshopblackfriday #ForYou \",\"release_date\":\"1761818197\",\"item_id\":\"7566951473897082167\",\"like_cnt\":1586,\"play_cnt\":144632,\"comment_cnt\":8,\"video_products\":[{\"name\":\"Women's Elegant Polka Dot Sleepwear Set, Lightweight Knit Fabric, Soft Touch, Half-Transparent Effect, Classic Bow, All Seasons\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/6ac9d05526c14e78a81439a7dd6f1ebd~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731398333250966155\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"14.69\",\"formatted_price\":\"$14.69\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"14.69\",\"formatted_price\":\"$14.69\"},\"promoted_product_num\":\"18116\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d40ua1vog65vk3qt0pbg\",\"duration\":19.634,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o08EX5QaEofIknACZBQDfHXjUHAFBWeAv12SIP~tplv-noop.image?dr=12525&refresh_token=f40cf7a8&x-expires=1768491895&x-signature=oe48%2BD7Ni2Sq3haUINya3mN9p4U%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/b05244ae6e23ff9fcfc18c9394025ebe/69690b77/video/tos/useast5/tos-useast5-ve-0068c001-tx/oUzoQkugPMA2yeCHa8XeHjSgAIgAyCPAIu8eDQ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1004&bt=502&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTs8Z2U6ZGdpZGdnZ2U6ZEBpanN3Nnk5cjR4NzMzZzczNEAzMzBeMzM2XmMxMDA2NV8wYSNfLW5oMmRzXi1hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/b05244ae6e23ff9fcfc18c9394025ebe/69690b77/video/tos/useast5/tos-useast5-ve-0068c001-tx/oUzoQkugPMA2yeCHa8XeHjSgAIgAyCPAIu8eDQ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1004&bt=502&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTs8Z2U6ZGdpZGdnZ2U6ZEBpanN3Nnk5cjR4NzMzZzczNEAzMzBeMzM2XmMxMDA2NV8wYSNfLW5oMmRzXi1hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491895,\"width\":480,\"height\":854,\"file_hash\":\"f5ccc96a74885c1076a1f57c0a8dffd1\",\"format\":\"\",\"size\":1261983,\"bitrate\":514203,\"video_quality\":\"lowest\"}]},\"name\":\"Two-piece Set Women's Contrast Lace Ruffle Trim Cami Nightdress & Bow Decor Panty Pyjama Set!💕 #christmascountdown #sparklydress #glitterdress #minidress #tiktokmademebuyit \",\"release_date\":\"1761732011\",\"item_id\":\"7566581294604373262\",\"like_cnt\":749,\"play_cnt\":98592,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Women's Contrast Lace Ruffle Trim Wrap Cami Nightdress & Bow Front Panty Set, Adjustable Spaghetti Strap Backless Nightgown & Knicker Set, Ladies Summer Clothes, Summer Outfits 2024\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ac09569db3514a338dcb46acd6b474d0~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729448403992155061\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"18.99\",\"formatted_price\":\"$18.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"34.09\",\"formatted_price\":\"$34.09\"},\"promoted_product_num\":\"45918\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4bfpk7og65r1l9de4s0\",\"duration\":15.134,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oQfQ8JUAvpqCIgEdfWuFGEcDB8CwFQRtz2SAGD~tplv-noop.image?dr=12525&refresh_token=f3e72834&x-expires=1768491891&x-signature=m1LI6GqVVdFOMJLh%2FSgb4J6VAKs%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/8a9f8961d2f9effe4c6f606a56aea49c/69690b73/video/tos/useast5/tos-useast5-pve-0068-tx/oUQHEGdFgz2RAQWVpCIYqRFhEuDtSvffBJgwDl/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1398&bt=699&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDUzNzk0O2ZkODo1aDw6aUBpMzdnb3U5cm5pNzMzZzczNEAwLzQ2LS0tX2ExXjQxYDY2YSNwYjYuMmQ0bV9hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/8a9f8961d2f9effe4c6f606a56aea49c/69690b73/video/tos/useast5/tos-useast5-pve-0068-tx/oUQHEGdFgz2RAQWVpCIYqRFhEuDtSvffBJgwDl/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1398&bt=699&cs=0&ds=2&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDUzNzk0O2ZkODo1aDw6aUBpMzdnb3U5cm5pNzMzZzczNEAwLzQ2LS0tX2ExXjQxYDY2YSNwYjYuMmQ0bV9hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491891,\"width\":480,\"height\":854,\"file_hash\":\"596a288c60a41c338ae7995eec7c7703\",\"format\":\"\",\"size\":1355427,\"bitrate\":716493,\"video_quality\":\"lowest\"}]},\"name\":\"Obsessed with leopard print sleepwear✨💖🫶🏻#dress #spotlightfinds #tiktokshopblackfriday #tiktokshopcybermonday #nightgown \",\"release_date\":\"1763114320\",\"item_id\":\"7572518269270117645\",\"like_cnt\":1483,\"play_cnt\":165601,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Women's Elegant Polka Dot Sleepwear Set, Lightweight Knit Fabric, Soft Touch, Half-Transparent Effect, Classic Bow, All Seasons\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/6ac9d05526c14e78a81439a7dd6f1ebd~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731398333250966155\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"14.69\",\"formatted_price\":\"$14.69\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"14.69\",\"formatted_price\":\"$14.69\"},\"promoted_product_num\":\"18116\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"284\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"4350.54\",\"symbol\":\"$\",\"format\":\"$4,350.54\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":131,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"4350.54\",\"symbol\":\"$\",\"format\":\"$4,350.54\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":192,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"2882\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"529\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"528\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7044\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"529\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"528\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.7\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7493991674729236167\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"2minican_chika\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Geraldine\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/3b3b77df0eab0c37d499e50b197e93cd~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=fecc5328&x-expires=1768640400&x-signature=lJlz6xvLnHTv9CzlQNqIAac9dQk%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/3b3b77df0eab0c37d499e50b197e93cd~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=4069f737&x-expires=1768640400&x-signature=3zY79Zfz%2BGx74IABKNgEjunbImw%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"1357116\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"243\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d4s8kc7og65haq3m2dig\",\"duration\":58.266,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ow4lLAiozRpixKBAiVnTBiaMoBcCNIdPTEEhV~tplv-noop.image?dr=12525&refresh_token=ebca09b4&x-expires=1768491934&x-signature=refFJjtCVDuHbHQ1QidVkHHodmk%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/f1a6b18881097a4b47c9a83194bf5372/69690b9e/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oEpOxibFIPIKBCrEQwHxaEAfgRFScVfQoA7DoE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1018&bt=509&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Z2k5NmlmaTVnZTY5OTg3Z0BpamdwdGs5cmY7NzMzaTczNEAyYjQ1NjQyNV8xYDFhYzNjYSNmLzBeMmQ0aHBhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/f1a6b18881097a4b47c9a83194bf5372/69690b9e/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oEpOxibFIPIKBCrEQwHxaEAfgRFScVfQoA7DoE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1018&bt=509&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Z2k5NmlmaTVnZTY5OTg3Z0BpamdwdGs5cmY7NzMzaTczNEAyYjQ1NjQyNV8xYDFhYzNjYSNmLzBeMmQ0aHBhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"url_expire\":1768491934,\"width\":576,\"height\":1024,\"file_hash\":\"9ee31816dde9ceaab56ec04b9b99d462\",\"format\":\"\",\"size\":3799325,\"bitrate\":521652,\"video_quality\":\"lowest\"}]},\"name\":\"\",\"release_date\":\"1765313157\",\"item_id\":\"7581962160838872351\",\"like_cnt\":909,\"play_cnt\":126414,\"comment_cnt\":46,\"video_products\":[{\"name\":\"Halara Flex High Waisted Tummy Control Wide Leg Casual Jeans with Pockets\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/2bf37b19c8404e598e96a0f87441fd98~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731704114456400164\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"62.95\",\"formatted_price\":\"$62.95\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"62.95\",\"formatted_price\":\"$62.95\"},\"promoted_product_num\":\"19389\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d5d8gkvog65okndbj9ug\",\"duration\":59.034,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oMlQEqiBCpfi54oBi0UaCp9I3zimdIArqpAaOA~tplv-noop.image?dr=12525&refresh_token=ff40a6db&x-expires=1768491935&x-signature=kLM5q1bAcqRRlHq6djxPPe%2FPSAo%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/4f37e89a819b8dac7640d5b975da21e3/69690b9f/video/tos/useast8/tos-useast8-ve-0068c004-tx2/oc9QRQqB0Ai4pR5iiCmUWAIpCiqafrqAdIE4hp/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=722&bt=361&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGY5O2RnMzQ8O2U6ZDhpPEBpajxlcXI5cm47ODMzaTczNEA0NmI0MWNiNS0xL14xYl41YSNyZ2FoMmRzZGFhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/4f37e89a819b8dac7640d5b975da21e3/69690b9f/video/tos/useast8/tos-useast8-ve-0068c004-tx2/oc9QRQqB0Ai4pR5iiCmUWAIpCiqafrqAdIE4hp/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=722&bt=361&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGY5O2RnMzQ8O2U6ZDhpPEBpajxlcXI5cm47ODMzaTczNEA0NmI0MWNiNS0xL14xYl41YSNyZ2FoMmRzZGFhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"url_expire\":1768491935,\"width\":576,\"height\":1024,\"file_hash\":\"ce6bfcfcd089a38c8b55c3d3523ed0a9\",\"format\":\"\",\"size\":2728360,\"bitrate\":369734,\"video_quality\":\"lowest\"}]},\"name\":\"Replying to @🥀enma Mazariegos🥀 \",\"release_date\":\"1767541627\",\"item_id\":\"7591533321079868703\",\"like_cnt\":149,\"play_cnt\":21853,\"comment_cnt\":7,\"video_products\":[{\"name\":\"Halara Flex High Waisted Tummy Control Wide Leg Casual Jeans with Pockets\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/2bf37b19c8404e598e96a0f87441fd98~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731704114456400164\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"62.95\",\"formatted_price\":\"$62.95\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"62.95\",\"formatted_price\":\"$62.95\"},\"promoted_product_num\":\"19389\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3ukv9nog65jb49a2l30\",\"duration\":59.047,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oIFGGEDoeHpfeZ9V6seiUAmEDMmFIRjCQQAAMq~tplv-noop.image?dr=12525&refresh_token=ed5f8b27&x-expires=1768491935&x-signature=Qc73U7J0dp0ZomAJj6bSr%2FbxW%2FY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/4ea41ce7f0f425622b7d525bec2a40e1/69690b9f/video/tos/useast8/tos-useast8-pve-0068-tx2/o4YGNeInqdZIe6UNRE9NooAgGeAsLQAUFFfjpR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2080&bt=1040&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NjtmaTk4Mzo4aTo1OTloZkBpM29kN205cjxuNjMzaTczNEBiYmAyMzJeNl8xLV5jYzBeYSMwLzZfMmRrc3JhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/4ea41ce7f0f425622b7d525bec2a40e1/69690b9f/video/tos/useast8/tos-useast8-pve-0068-tx2/o4YGNeInqdZIe6UNRE9NooAgGeAsLQAUFFfjpR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2080&bt=1040&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NjtmaTk4Mzo4aTo1OTloZkBpM29kN205cjxuNjMzaTczNEBiYmAyMzJeNl8xLV5jYzBeYSMwLzZfMmRrc3JhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00088000\",\"url_expire\":1768491935,\"width\":576,\"height\":1024,\"file_hash\":\"5a92e1388a917c50e7b5a2f035bea1f1\",\"format\":\"\",\"size\":7861089,\"bitrate\":1065061,\"video_quality\":\"normal\"}]},\"name\":\"\",\"release_date\":\"1761431649\",\"item_id\":\"7565291261058469150\",\"like_cnt\":293,\"play_cnt\":73459,\"comment_cnt\":13,\"video_products\":[{\"name\":\"Elengatine FallFreshness Sparkling Embellished Denim Wide-Leg Pants for Women Classic Blue Denim with Rhinestone Details Loose-Fitting Stylish Basic Womenswear Bottom Jean Trouser Pocket Bohemian All Seasons Casual Everyday Light Chic  Soft\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/b0830c2b5d844bdd80a5670d4220eda6~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731269568965350394\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"58\",\"formatted_price\":\"$58\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"58\",\"formatted_price\":\"$58\"},\"promoted_product_num\":\"253\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"306\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"10059.54\",\"symbol\":\"$\",\"format\":\"$10.1K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_605196\",\"name\":\"Automotive & Motorcycle\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":277,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"10059.54\",\"symbol\":\"$\",\"format\":\"$10.1K\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":118,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"1240\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"288\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"243\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Male\",\"value\":\"6049\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"288\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"243\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.5\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494014246304909519\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"zerotothriving_with_tati\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Tati | Zero To Thriving ⭐️\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/a69642335a4c0d420626385d1c5f2196~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=f810e52b&x-expires=1768640400&x-signature=V2qT0mrlLfcK3GqqTowgw8%2BtVG0%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/a69642335a4c0d420626385d1c5f2196~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=32a9cf9a&x-expires=1768640400&x-signature=7EtGpwfWU1bEXs6tTQJCv%2Bp%2FUE4%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"5133\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"226\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d59ft3fog65rtsfp4990\",\"duration\":62,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/owSDSMNDERoDIJFgpEJAeAvf363RBNEUTIDHjS~tplv-noop.image?dr=12525&refresh_token=60355f2d&x-expires=1768491937&x-signature=QnCVN0ASVJ9Kqiyhg7V9PdzJArE%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/60907f6c17fcd14f672698a266b50e10/69690ba1/video/tos/useast5/tos-useast5-ve-0068c003-tx/oANUSINEDeJ6vBAJgEfJA4QRSF3jEpDER3SRuT/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1128&bt=564&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=M2Y5ZTQ2ZzM6NmU3Ozo2NkBpMzxzdnU5cjZpODMzZzczNEAxXy80YGJgXjIxLWFgXi01YSM2MWNxMmRjcTZhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00090000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/60907f6c17fcd14f672698a266b50e10/69690ba1/video/tos/useast5/tos-useast5-ve-0068c003-tx/oANUSINEDeJ6vBAJgEfJA4QRSF3jEpDER3SRuT/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1128&bt=564&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=M2Y5ZTQ2ZzM6NmU3Ozo2NkBpMzxzdnU5cjZpODMzZzczNEAxXy80YGJgXjIxLWFgXi01YSM2MWNxMmRjcTZhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e00090000\",\"url_expire\":1768491937,\"width\":576,\"height\":1024,\"file_hash\":\"92da296c39a5507fbe63b9802f4c4e6e\",\"format\":\"\",\"size\":4476573,\"bitrate\":577622,\"video_quality\":\"lowest\"}]},\"name\":\"I didn’t realize how uncomfortable my bras were until I tried this one. Wireless, supportive, seamless, and actually flattering, without the pain. If you’re done choosing between comfort or shape… this is it. #wirelessbra #everydaybra #comfortwear #plussizefriendly #tiktokmademebuyit\",\"release_date\":\"1767047312\",\"item_id\":\"7589410261426064653\",\"like_cnt\":7,\"play_cnt\":504,\"comment_cnt\":0,\"video_products\":[{\"name\":\"REALWILL Women Wireless Push Up Jelly Bra Plus Size Supportive Seamless Bras Full Coverage Comfortable No Underwire T-Shirt Padded Bras Vneck Everyday Bras\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/03a65727a9144773935c03aa7b820560~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731800192754028593\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"46.99\",\"formatted_price\":\"$46.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"46.99\",\"formatted_price\":\"$46.99\"},\"promoted_product_num\":\"867\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d5b0kp7og65jpfp0da6g\",\"duration\":11.767,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/ocpENfgWGgNRDXYIBInEAkBSCDVFEx1fpqplhd~tplv-noop.image?dr=12525&refresh_token=d419ac08&x-expires=1768491887&x-signature=1DrTUumKVoeH4RO%2Fti%2Bykfn2V9Y%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/1c440fc73c9dc15b892a8e5d5a3afd96/69690b6f/video/tos/useast5/tos-useast5-ve-0068c004-tx/ooEIMkIgS6AFNEgCdwRqnVffkpD7DB3EGJpplW/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=858&bt=429&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=N2dlOTYzOjw6PGY4MzxkOUBpamQzaW05cnMzODMzZzczNEAtNjMwYWI0NjExNDRgYmBjYSMzYW1tMmQ0aF9hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/1c440fc73c9dc15b892a8e5d5a3afd96/69690b6f/video/tos/useast5/tos-useast5-ve-0068c004-tx/ooEIMkIgS6AFNEgCdwRqnVffkpD7DB3EGJpplW/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=858&bt=429&cs=0&ds=6&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=N2dlOTYzOjw6PGY4MzxkOUBpamQzaW05cnMzODMzZzczNEAtNjMwYWI0NjExNDRgYmBjYSMzYW1tMmQ0aF9hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b0000\",\"url_expire\":1768491887,\"width\":576,\"height\":1024,\"file_hash\":\"2cf96fc26dccc10f5e3ee951bee8c1b9\",\"format\":\"\",\"size\":646727,\"bitrate\":439688,\"video_quality\":\"lowest\"}]},\"name\":\"I wanted something she’d actually wear every day, no wires, no digging, just comfort that still looks good. Found this wireless jelly bra and yeah… husband win 🫶 Soft, supportive, and smooth under everything she hasn’t stopped wearing it since. #husbandapproved #wirelessbra #everydaycomfort #giftforher #tiktokshopfinds\",\"release_date\":\"1767248266\",\"item_id\":\"7590265768508476686\",\"like_cnt\":5,\"play_cnt\":743,\"comment_cnt\":0,\"video_products\":[{\"name\":\"REALWILL Women Wireless Push Up Jelly Bra Plus Size Supportive Seamless Bras Full Coverage Comfortable No Underwire T-Shirt Padded Bras Vneck Everyday Bras\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/03a65727a9144773935c03aa7b820560~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731800192754028593\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"46.99\",\"formatted_price\":\"$46.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"46.99\",\"formatted_price\":\"$46.99\"},\"promoted_product_num\":\"867\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d5g7h7vog65ng4ol8640\",\"duration\":21.067,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oQfjQIEAQvft7dmAMnCiQcKeAEFKHSAPwoDkVE~tplv-noop.image?dr=12525&refresh_token=ebc67c72&x-expires=1768491897&x-signature=7SOqKHIMRANPlk%2BMxEna1zLaWA0%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/d3499fd4efd4ced1c2b24cd0e505a0b8/69690b79/video/tos/useast5/tos-useast5-ve-0068c004-tx/ogLoQQFSAmkfMMzAHgDAIEwvjASAeC7IHPEKfl/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2726&bt=1363&cs=0&ds=3&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OzhnMzk0NjtmOThoNjM0NkBpMzlvN3E5cjo6ODMzZzczNEAvMV8xMGE1XzIxNDI1MF4vYSMxNWxkMmRzZWRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/d3499fd4efd4ced1c2b24cd0e505a0b8/69690b79/video/tos/useast5/tos-useast5-ve-0068c004-tx/ogLoQQFSAmkfMMzAHgDAIEwvjASAeC7IHPEKfl/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2726&bt=1363&cs=0&ds=3&ft=GS-jnInz7Thj8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OzhnMzk0NjtmOThoNjM0NkBpMzlvN3E5cjo6ODMzZzczNEAvMV8xMGE1XzIxNDI1MF4vYSMxNWxkMmRzZWRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094435475B2CFA5F5812049440&btag=e000b8000\",\"url_expire\":1768491897,\"width\":720,\"height\":1280,\"file_hash\":\"932b8b63f5f1a01d261f804d486a4239\",\"format\":\"\",\"size\":3677456,\"bitrate\":1396480,\"video_quality\":\"normal\"}]},\"name\":\"Instant Lift with the Snowy! #instantlift #pushups\",\"release_date\":\"1767930022\",\"item_id\":\"7593201508162784526\",\"like_cnt\":14,\"play_cnt\":51,\"comment_cnt\":4,\"video_products\":[{\"name\":\"SNOWY Sticky Inserts - Instant Lift & Boost, Washable & Reusable, Outfit Enhancer\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/a42a69b509c7475d82a932cc4ef46ecc~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729420460993712801\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"79\",\"formatted_price\":\"$79\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"79\",\"formatted_price\":\"$79\"},\"promoted_product_num\":\"304017\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"5\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"173.81\",\"symbol\":\"$\",\"format\":\"$173.81\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_601352\",\"name\":\"Shoes\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":371,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"25.14\",\"symbol\":\"$\",\"format\":\"$25.14\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":346,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"278\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"214\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"226\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"0-10\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"6277\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"214\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"226\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.0\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7496258862278084928\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"zkfmb5821\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"zkfmb5821\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/e524768af2effca3115dbb683539769f~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=fef3951c&x-expires=1768640400&x-signature=WFEqa52EwPhDOeofo01hWMMaer0%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/e524768af2effca3115dbb683539769f~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=bed8e6aa&x-expires=1768640400&x-signature=nus163Pvy0c6TdqdKS3WTaWXYY4%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"5316\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"51\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d446qu7og65rmoeak7a0\",\"duration\":7.081,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oEkBHBPiJwhn0eUptIAaIqAIrhEDiyCdB7EDbI~tplv-noop.image?dr=12525&refresh_token=775ddf90&x-expires=1768491938&x-signature=ZvMFBMKAF3Q7SeGlVSp0w1h8ifc%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/fea0772788b710e3a310827d89f02972/69690ba2/video/tos/useast5/tos-useast5-pve-0068-tx/ogUI7hiAyCt4aIpnChaebjwIBPAFiBMHqAz0DE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1740&bt=870&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aWZpaWg6ZGY4Ojs4aTozM0BpMzpkcnU5cng5NzMzZzczNEAuM2M1LTEuXmExYi41Li5fYSNeaGJqMmQ0bjFhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/fea0772788b710e3a310827d89f02972/69690ba2/video/tos/useast5/tos-useast5-pve-0068-tx/ogUI7hiAyCt4aIpnChaebjwIBPAFiBMHqAz0DE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1740&bt=870&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aWZpaWg6ZGY4Ojs4aTozM0BpMzpkcnU5cng5NzMzZzczNEAuM2M1LTEuXmExYi41Li5fYSNeaGJqMmQ0bjFhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491938,\"width\":480,\"height\":854,\"file_hash\":\"3990120b6ee0d2745ac4d706820304b3\",\"format\":\"\",\"size\":789296,\"bitrate\":891733,\"video_quality\":\"lowest\"}]},\"name\":\"Small details make a big difference!   Stand collar + long sleeves, the best fall look! 🧡  #StandCollar #LongSleeve  #TikTokShopCyberMonday\\n  #spotlightfinds \",\"release_date\":\"1762160242\",\"item_id\":\"7568419874888895757\",\"like_cnt\":734,\"play_cnt\":104161,\"comment_cnt\":5,\"video_products\":[{\"name\":\"Aliling Elegant Floral Print Women's Dress with Stand Collar, Long Sleeve Hollow Out, Ruffled Hem Mini Dress for Parties, Fall Fashion\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/3000ef04fad34c8a9ca67b84da57f703~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731834264743613250\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"29.19\",\"formatted_price\":\"$29.19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"29.19\",\"formatted_price\":\"$29.19\"},\"promoted_product_num\":\"4918\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d5fn6rfog65veca5j610\",\"duration\":12.816,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o4ei1fbIubIMvs5SA5CQjciLceyzj4IkHGECAz~tplv-noop.image?dr=12525&refresh_token=04f75d1f&x-expires=1768491943&x-signature=PTHMMe6tZoekSQXTPFcj2eWGoPc%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/eb7fab98077897fc41a171ba8b0cbac7/69690ba7/video/tos/useast5/tos-useast5-pve-0068-tx/o4iIz6LvMQGdbebAbE3AeiI5SfIIjniHkR6ucC/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1088&bt=544&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZztlZjg6ZjVoNDQzZDc3NkBpMzk4Znk5cnVxODMzZzczNEA2Ml8xL2NhXmMxYjFeMGNhYSMuZ15iMmRjM2NhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/eb7fab98077897fc41a171ba8b0cbac7/69690ba7/video/tos/useast5/tos-useast5-pve-0068-tx/o4iIz6LvMQGdbebAbE3AeiI5SfIIjniHkR6ucC/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1088&bt=544&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZztlZjg6ZjVoNDQzZDc3NkBpMzk4Znk5cnVxODMzZzczNEA2Ml8xL2NhXmMxYjFeMGNhYSMuZ15iMmRjM2NhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491943,\"width\":576,\"height\":1024,\"file_hash\":\"a755b76c644f1ed222c5353bbf2479a4\",\"format\":\"\",\"size\":893887,\"bitrate\":557981,\"video_quality\":\"lowest\"}]},\"name\":\"✨ These corduroy pants are my new obsession!#HighWaistDesign #DrawstringWaist #FashionOutfit #ComfortableFabric #DailyEss\",\"release_date\":\"1767863198\",\"item_id\":\"7592914151886916877\",\"like_cnt\":184,\"play_cnt\":70039,\"comment_cnt\":2,\"video_products\":[{\"name\":\"Women's Essential Corduroy Pants, Lightweight and Breathable with Back Pockets and Drawstring, Perfect for Versatile Occasions\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/3fc82b75e2da4cd7b79e86754ae65b54~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732167845082337563\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"45.99\",\"formatted_price\":\"$45.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"45.99\",\"formatted_price\":\"$45.99\"},\"promoted_product_num\":\"216\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4ckje7og65gke875q40\",\"duration\":9.473,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oAADCf0yRRpQfBzxhADUlI42SGkREmFgHNDEQy~tplv-noop.image?dr=12525&refresh_token=cf5ad8da&x-expires=1768491940&x-signature=eGZ02GjWlmzoyVFO9B0FJBx8SvY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/9e68ac521418be1af1739684324e0851/69690ba4/video/tos/useast5/tos-useast5-pve-0068-tx/oMSBGqyA4UDDjRhjSdsRf4fmE0DFykEpgQQIlt/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=996&bt=498&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NWU5ZTVmZTRlaTczOzU6Z0BpM3Q6aGo5cmhuNzMzZzczNEAvXzNjL2IyNTIxNjVfMy1gYSMxMjVoMmQ0Z2BhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/9e68ac521418be1af1739684324e0851/69690ba4/video/tos/useast5/tos-useast5-pve-0068-tx/oMSBGqyA4UDDjRhjSdsRf4fmE0DFykEpgQQIlt/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=996&bt=498&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NWU5ZTVmZTRlaTczOzU6Z0BpM3Q6aGo5cmhuNzMzZzczNEAvXzNjL2IyNTIxNjVfMy1gYSMxMjVoMmQ0Z2BhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491940,\"width\":480,\"height\":854,\"file_hash\":\"ea51b16fbc10d772096aaf7ba9c341d9\",\"format\":\"\",\"size\":605031,\"bitrate\":510951,\"video_quality\":\"lowest\"}]},\"name\":\"Add some personality to your holiday outfit!#FashionJeans #ChristmasTheme #TikTokShopBlackFriday\\n #TikTokShopCyberMonday\\n #spotlightfinds\",\"release_date\":\"1763265014\",\"item_id\":\"7573165476151315725\",\"like_cnt\":127,\"play_cnt\":14084,\"comment_cnt\":5,\"video_products\":[{\"name\":\"Women's Faux Denim Tight Pants Blue Jeans Print Christmas Women's Bottoms, Casual Fit, All Seasons, Fashionable Ladies' Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/139c827334e7438ca8e85898054426f5~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731946842487034353\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"16.99\",\"formatted_price\":\"$16.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"16.99\",\"formatted_price\":\"$16.99\"},\"promoted_product_num\":\"279\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"124\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"2160.31\",\"symbol\":\"$\",\"format\":\"$2,160.31\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_600001\",\"name\":\"Home Supplies\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":43,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"2160.31\",\"symbol\":\"$\",\"format\":\"$2,160.31\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":54,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"911\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"51\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"51\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Male\",\"value\":\"4892\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"51\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"51\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"55+\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.7\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495209386857302870\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"juicy.fashion.lab\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Juicy Fashion Lab\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/c51950903b06c2d0eb8ed8a9373a591b~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=bbbb277d&x-expires=1768640400&x-signature=bCjZAgrTOveM2F7gjvHlEz6LrPQ%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/c51950903b06c2d0eb8ed8a9373a591b~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=4c70869f&x-expires=1768640400&x-signature=CMzadsCqMEwaZC%2F5dkPDvESNXEo%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"6926\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"374\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d40uujnog65h13igaam0\",\"duration\":18.1,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o0VDjeYpSIqaIzIi3CAFs49EQoDHEDAKOAffvc~tplv-noop.image?dr=12525&refresh_token=5dde98ad&x-expires=1768491949&x-signature=OwGeWOoSZJXdwI2jXmGcZ5BTKpQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/c9f2e25566be4e072a461922ab9d4899/69690bad/video/tos/useast8/tos-useast8-ve-0068c004-tx2/ogAxIiOxFQAUB7BRvVFaBCEQCv3H0TsKBEiv4/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=944&bt=472&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OTU3NTY4N2Y4aGlpNzY8OUBpM2RqNms5cm14NzMzaTczNEAwLV5iYDM2NS4xY2NhYmFfYSNqXmYuMmRrci1hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/c9f2e25566be4e072a461922ab9d4899/69690bad/video/tos/useast8/tos-useast8-ve-0068c004-tx2/ogAxIiOxFQAUB7BRvVFaBCEQCv3H0TsKBEiv4/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=944&bt=472&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OTU3NTY4N2Y4aGlpNzY8OUBpM2RqNms5cm14NzMzaTczNEAwLV5iYDM2NS4xY2NhYmFfYSNqXmYuMmRrci1hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491949,\"width\":480,\"height\":854,\"file_hash\":\"01c0d3dbebf7046278a21cfcdc2b070f\",\"format\":\"\",\"size\":1095535,\"bitrate\":484214,\"video_quality\":\"lowest\"}]},\"name\":\"#tiktokshopfalldealsforyou #tiktokshopblackfriday #outfitideas #tiktokshopcybermonday #christmas\",\"release_date\":\"1761734522\",\"item_id\":\"7566592083583175966\",\"like_cnt\":79,\"play_cnt\":17301,\"comment_cnt\":2,\"video_products\":[{\"name\":\"Women's Christmas Pajama Set, Fitted Nightwear with Moderate Fabric, Casual Style Sleepwear for All Seasons, Festive Holiday\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/abc884cbc0dc4752a4a4dd594c57e0dc~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731833829668786789\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"23.59\",\"formatted_price\":\"$23.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"23.59\",\"formatted_price\":\"$23.59\"},\"promoted_product_num\":\"730\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d41jhs7og65pbuek10a0\",\"duration\":18.807,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oQ3IdiPva0841RAIMU5UBZEgrBu5QDgXP4AiB~tplv-noop.image?dr=12525&refresh_token=1626a51e&x-expires=1768491949&x-signature=oTsAWQ2Sg2dvrVezKg1tGwH%2BtPo%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/7abc19c1828226e6f0fe726846ef80a4/69690bad/video/tos/useast8/tos-useast8-pve-0068-tx2/oAfOARFkOAei7wGhbghv4ACAMDeYDuVPOIEfoR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3044&bt=1522&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=aDM2Z2Q6ZGQ0PGQzZDc6M0BpMzNueHM5cnZtNzMzZzczNEAxLjMuNC5hNl8xY2EuMjIxYSNeLmJfMmQ0ZS5hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/7abc19c1828226e6f0fe726846ef80a4/69690bad/video/tos/useast8/tos-useast8-pve-0068-tx2/oAfOARFkOAei7wGhbghv4ACAMDeYDuVPOIEfoR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3044&bt=1522&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=aDM2Z2Q6ZGQ0PGQzZDc6M0BpMzNueHM5cnZtNzMzZzczNEAxLjMuNC5hNl8xY2EuMjIxYSNeLmJfMmQ0ZS5hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491949,\"width\":576,\"height\":1024,\"file_hash\":\"92e209172fb6b98dbc2c9bef0c59f5ec\",\"format\":\"\",\"size\":3665667,\"bitrate\":1559277,\"video_quality\":\"normal\"}]},\"name\":\"#tiktokshopfalldealsforyou #tiktokshopblackfriday #outfitideas #tiktokshopcybermonday #christmas\",\"release_date\":\"1761820396\",\"item_id\":\"7566960935986793758\",\"like_cnt\":22,\"play_cnt\":4651,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Women's Button Front Blouse & Bow Front Contrast Binding Pants Pyjama Set, Casual Long Sleeve Lapel Top & Trousers, Summer Outfits 2024, Sleepwear for Spring & Fall, National Day Offers\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ab2f8aefddd344e8adfabd8db5efe038~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729405769257816637\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"20.59\",\"formatted_price\":\"$20.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"20.59\",\"formatted_price\":\"$20.59\"},\"promoted_product_num\":\"46458\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3ub6efog65gm84cr5lg\",\"duration\":18.412,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/okqbfWejLIZGIZBIERLAFMDhF5fDAC3vXQc5BA~tplv-noop.image?dr=12525&refresh_token=3c84cce8&x-expires=1768491949&x-signature=V9x8YHChhmSTznm4ShhKMFbdylQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/8c15acb63c340cdc23eaff24058a3ca2/69690bad/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oQnQW9IQgQAjz7eeCsLU8Yf2s8ZMZRAyGFWGfC/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=878&bt=439&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzpoNDdlOmVpZzs4Zjw0NkBpajhmO2o5cmhlNjMzaTczNEAxNWMzMmEyNTAxXy40LjIyYSNpbzFqMmRjM3JhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/8c15acb63c340cdc23eaff24058a3ca2/69690bad/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oQnQW9IQgQAjz7eeCsLU8Yf2s8ZMZRAyGFWGfC/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=878&bt=439&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzpoNDdlOmVpZzs4Zjw0NkBpajhmO2o5cmhlNjMzaTczNEAxNWMzMmEyNTAxXy40LjIyYSNpbzFqMmRjM3JhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491949,\"width\":480,\"height\":854,\"file_hash\":\"7c35725d2df1a967975b7589b523a3f1\",\"format\":\"\",\"size\":1035911,\"bitrate\":450102,\"video_quality\":\"lowest\"}]},\"name\":\"#tiktokshopfalldealsforyou #tiktokshopblackfriday #outfitideas #tiktokshopcybermonday #christmas\",\"release_date\":\"1761391561\",\"item_id\":\"7565118885561781535\",\"like_cnt\":23,\"play_cnt\":2411,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Women's Christmas Pajama Set, Fitted Nightwear with Moderate Fabric, Casual Style Sleepwear for All Seasons, Festive Holiday\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/abc884cbc0dc4752a4a4dd594c57e0dc~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731833829668786789\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"23.59\",\"formatted_price\":\"$23.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"23.59\",\"formatted_price\":\"$23.59\"},\"promoted_product_num\":\"730\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"121\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"2465.47\",\"symbol\":\"$\",\"format\":\"$2,465.47\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_602284\",\"name\":\"Baby & Maternity\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":109,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"2429\",\"symbol\":\"$\",\"format\":\"$2,429\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"36.47\",\"symbol\":\"$\",\"format\":\"$36.47\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":99,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"2398\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"374\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"374\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7737\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"374\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"374\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.4\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495261793589561739\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"charlie202306\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Charlie\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/272d126db07d19da01f88f789ef0a393~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=74228e62&x-expires=1768640400&x-signature=ECCtI03iFcvtcbvJiNqpHCDUbho%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/272d126db07d19da01f88f789ef0a393~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=5574c348&x-expires=1768640400&x-signature=fN%2BVRncuu7vDq5OKgm4oLQQOUNg%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"13193\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"is_authorized\":false,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"39\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"is_authorized\":false,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d41u36fog65o73sf8c50\",\"duration\":57.284,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oAMO6BDEKlifEjMfEA4DPVpr4oR0AAcoiIjBBu~tplv-noop.image?dr=12525&refresh_token=44749bb4&x-expires=1768491988&x-signature=DtJkLTYExw4MeRXOANd3WW%2Bbe3Q%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/24c3f16e82854b68f97215148004195d/69690bd4/video/tos/useast8/tos-useast8-pve-0068-tx2/oAgRBiAjIOpQ0UEsEBDzMViHPAKu4Eff41AsDM/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&br=2232&bt=1116&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ODNpZTU3ODM0OjM2ZWk5PEBpM2ZpNnI5cjl4NzMzaTczNEAzYV4tYWA0Xl8xLy00Li4zYSMyNXA0MmRjMC5hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/24c3f16e82854b68f97215148004195d/69690bd4/video/tos/useast8/tos-useast8-pve-0068-tx2/oAgRBiAjIOpQ0UEsEBDzMViHPAKu4Eff41AsDM/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&br=2232&bt=1116&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ODNpZTU3ODM0OjM2ZWk5PEBpM2ZpNnI5cjl4NzMzaTczNEAzYV4tYWA0Xl8xLy00Li4zYSMyNXA0MmRjMC5hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e00088000\",\"url_expire\":1768491988,\"width\":576,\"height\":1024,\"file_hash\":\"c3070e1ad26b0d40b06e0740556e8176\",\"format\":\"\",\"size\":8183899,\"bitrate\":1142922,\"video_quality\":\"normal\"}]},\"name\":\"These Christmas vacation pajamas are silky and comfortable! They are true to size and so fun! #christmaspajamas #pajamas #silkpajamas #tiktokshopblackfriday #blackfridaydeals \",\"release_date\":\"1761862332\",\"item_id\":\"7567141063786237215\",\"like_cnt\":5,\"play_cnt\":620,\"comment_cnt\":2,\"video_products\":[{\"name\":\"Griswold Pajamas Set, National Lampoons Women Pajamas, Christmas Vacation Pjs, Christmas Tree Farm Holiday Pajamas, Gift For Fan\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/29db6eaa1ab44038a62e882f6e40a155~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731644186025169413\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"48.98\",\"formatted_price\":\"$48.98\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"69.98\",\"formatted_price\":\"$69.98\"},\"promoted_product_num\":\"2\",\"status\":2}]},{\"video\":{\"id\":\"v15044gf0000d3qjrjfog65llfljjisg\",\"duration\":71.379,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oMrR3RuzCAZWFjfHAQLk6fqGbe6LntnIIICvUg~tplv-noop.image?dr=12525&refresh_token=b55ddc89&x-expires=1768492002&x-signature=YMpAxOUZ5IkrU5GyWI1i9sm4y%2Fk%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/8b58d84e37d437d4c2328f5fc1bcb06f/69690be2/video/tos/useast8/tos-useast8-ve-0068c004-tx2/osf6qAbiMnVunCfXAQ8wAfAzOWX1TRIIHtJjrU/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=568&bt=284&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=MzdpPDtnZTg6Zzg7PDllZ0BpamxtaW85cm1tNjMzaTczNEAyYzZgYy4tNV8xNmNfMWM0YSNwZ2lpMmRjb25hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e00090000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/8b58d84e37d437d4c2328f5fc1bcb06f/69690be2/video/tos/useast8/tos-useast8-ve-0068c004-tx2/osf6qAbiMnVunCfXAQ8wAfAzOWX1TRIIHtJjrU/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=568&bt=284&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=MzdpPDtnZTg6Zzg7PDllZ0BpamxtaW85cm1tNjMzaTczNEAyYzZgYy4tNV8xNmNfMWM0YSNwZ2lpMmRjb25hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e00090000\",\"url_expire\":1768492002,\"width\":480,\"height\":854,\"file_hash\":\"4710c5221ee2b176d018b5dd29d74801\",\"format\":\"\",\"size\":2596473,\"bitrate\":291006,\"video_quality\":\"lowest\"}]},\"name\":\"This is a great bra for big chested girlies! Very supportive and cute. #bra #bigbustbra #tiktokshopcybermonday #tiktokshopblackfriday #blackfridaydeals \",\"release_date\":\"1760903024\",\"item_id\":\"7563020833543687454\",\"like_cnt\":4,\"play_cnt\":363,\"comment_cnt\":0,\"video_products\":[{\"name\":\"HSIA Cardi Comfort Plus Size Bra Underwire Smoothing Seamless Soft Fabric Wide Adjustable Strap Full Coverage Unlined Minimizer T-shirt Bra\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/13bbb02894f046cb88891ef12953d0df~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731609735633277126\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"46.99\",\"formatted_price\":\"$46.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"46.99\",\"formatted_price\":\"$46.99\"},\"promoted_product_num\":\"8083\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3p3amfog65j2getaodg\",\"duration\":58.1,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oEIXyoqE5BjXHARDmuQAfFEEVNDzw8C8Kf2ZiV~tplv-noop.image?dr=12525&refresh_token=551cb4dc&x-expires=1768491989&x-signature=1kTXvL1NydlgDvTpq90jeOftvsc%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/9ef1506f0fe278421f27ad55d0a56607/69690bd5/video/tos/useast8/tos-useast8-pve-0068-tx2/oEfomqRnEeD8uksEsbFVZQHHE2EDIABmjwgVKA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=580&bt=290&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aDk4NzhmOmk5Mzs0Njs0aUBpanJ3am05cnA2NjMzaTczNEBjYV5jMGMyNTUxLS1eLzMzYSNhXmIvMmRjXm1hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/9ef1506f0fe278421f27ad55d0a56607/69690bd5/video/tos/useast8/tos-useast8-pve-0068-tx2/oEfomqRnEeD8uksEsbFVZQHHE2EDIABmjwgVKA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=580&bt=290&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aDk4NzhmOmk5Mzs0Njs0aUBpanJ3am05cnA2NjMzaTczNEBjYV5jMGMyNTUxLS1eLzMzYSNhXmIvMmRjXm1hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e00088000\",\"url_expire\":1768491989,\"width\":480,\"height\":854,\"file_hash\":\"4e71070489ce5384c8a026026c97a05d\",\"format\":\"\",\"size\":2158931,\"bitrate\":297271,\"video_quality\":\"lowest\"}]},\"name\":\"@SPARK PAWS #matchinghoodies #hoodie#tiktokshopblackfriday #tiktokshopcybermonday #blackfridaydeals \",\"release_date\":\"1760704048\",\"item_id\":\"7562166259240930591\",\"like_cnt\":3,\"play_cnt\":410,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Spark Paws Velvet Human Hoodies - Premium Quality, Buttery Soft, Superior Comfort and Fit, Calming Fleece Interior, Suitable for All Styles\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/68af38d49636489d976cdeb982c20346~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730910841491656785\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"44\",\"formatted_price\":\"$44\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"44\",\"formatted_price\":\"$44\"},\"promoted_product_num\":\"17\",\"status\":2}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"is_authorized\":false,\"status\":0},\"med_gmv_revenue\":{\"is_authorized\":false,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_602118\",\"name\":\"Pet Supplies\"},{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_600154\",\"name\":\"Textiles & Soft Furnishings\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":1114,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"is_authorized\":false,\"status\":0},\"live_gmv\":{\"is_authorized\":false,\"status\":0},\"ec_video_engagement\":{\"value\":209,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"132\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"76\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"39\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"6880\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"76\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"39\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.8\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7496268845403114069\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"avaloops1\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"AvaLoops\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/dff8e5a0edeb7af7ef1e6bc6cc1f54b5~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=218aa524&x-expires=1768640400&x-signature=PfncNjtvKik1K9cNlRNkeHrCWBA%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/dff8e5a0edeb7af7ef1e6bc6cc1f54b5~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=d94ab45b&x-expires=1768640400&x-signature=w9Wwb2jVhKwJJ95QcQ0uP%2B%2Bb2ek%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"351\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"291\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d3rosjvog65r6eecl920\",\"duration\":7.967,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oQMKahBnIiAcIhBeEDiS4kE4D78SfRz3o50Xgp~tplv-noop.image?dr=12525&refresh_token=51b10184&x-expires=1768491938&x-signature=Gz3jrZRGArNvlXbS66F7AECX92s%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/4fa29bbadd3edc5ebb242ab52acc083a/69690ba2/video/tos/useast5/tos-useast5-pve-0068-tx/ow0EEf83KgmRBnBEQz7iAnBSkDeiICA5opcMhT/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3124&bt=1562&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NGk5Mzc8OjNmaGVpNjg8OUBpMzxmaHU5cm1yNjMzZzczNEBfMV4yNC0wX2ExYTE0YjQuYSMvaWIzMmRzcG9hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/4fa29bbadd3edc5ebb242ab52acc083a/69690ba2/video/tos/useast5/tos-useast5-pve-0068-tx/ow0EEf83KgmRBnBEQz7iAnBSkDeiICA5opcMhT/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3124&bt=1562&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NGk5Mzc8OjNmaGVpNjg8OUBpMzxmaHU5cm1yNjMzZzczNEBfMV4yNC0wX2ExYTE0YjQuYSMvaWIzMmRzcG9hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491938,\"width\":720,\"height\":1274,\"file_hash\":\"b3dc4a3923e334a8aa3ab83a15f9910d\",\"format\":\"\",\"size\":1593577,\"bitrate\":1600177,\"video_quality\":\"normal\"}]},\"name\":\"Look at these cute little Highland Cows!🤭🐮✨#fyp #TikTokShopBlackFriday #TikTokShopCyberMonday #highland #christmas \",\"release_date\":\"1761055557\",\"item_id\":\"7563675752625949965\",\"like_cnt\":11012,\"play_cnt\":566843,\"comment_cnt\":22,\"video_products\":[{\"name\":\"【Highland cattle】Women's Cartoon Print Pajama Set, Long Sleeve Top & Pants, Elastic Waistband, Comfortable Home Wear, Fall Winter, Loungewear\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/6a1d97ed852242f3adecb0a7387e7ab7~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731737804141728287\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"23.29\",\"formatted_price\":\"$23.29\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"23.29\",\"formatted_price\":\"$23.29\"},\"promoted_product_num\":\"2022\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4g1kbfog65nqc53nuig\",\"duration\":14.6,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/osERHtQgStAFKEBNR1R9vIfhOoDfDBdQ3EsppA~tplv-noop.image?dr=12525&refresh_token=fa1a3c75&x-expires=1768491945&x-signature=RgAvMpSQdkZQWILzyFJ1b3jmcKs%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/4a54485cd12b2d002452def90bab78ba/69690ba9/video/tos/useast5/tos-useast5-ve-0068c004-tx/oADpg2foLReBpFoEGFvBAtSlEIEDGIhgR3wFqH/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=814&bt=407&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZzhkZGQ7OjU3Ozc7ZTpkNkBpang2ZnE5cmU0NzMzZzczNEBgMl82LzJfNmExMi8tYV4tYSNmazJuMmRjaGRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/4a54485cd12b2d002452def90bab78ba/69690ba9/video/tos/useast5/tos-useast5-ve-0068c004-tx/oADpg2foLReBpFoEGFvBAtSlEIEDGIhgR3wFqH/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=814&bt=407&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZzhkZGQ7OjU3Ozc7ZTpkNkBpang2ZnE5cmU0NzMzZzczNEBgMl82LzJfNmExMi8tYV4tYSNmazJuMmRjaGRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491945,\"width\":480,\"height\":872,\"file_hash\":\"8b1a6e6ef53ae9fbabd79f124829cc12\",\"format\":\"\",\"size\":761948,\"bitrate\":417505,\"video_quality\":\"lowest\"}]},\"name\":\"I seriously love how this turned out 💫#TikTokShopBlackFriday #TikTokShopCyberMonday #spotightfinds #christmas \",\"release_date\":\"1763711845\",\"item_id\":\"7575084209795124493\",\"like_cnt\":205,\"play_cnt\":44019,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Women's Cute Cat Print Pajama Set, Long Sleeve Lapel Top & Elastic Pants, Comfortable Fall Winter Sleepwear, Casual Home Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/9e77301d85a84f08a78d72fa7c096adf~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731677998381502631\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"26.59\",\"formatted_price\":\"$26.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"30.49\",\"formatted_price\":\"$30.49\"},\"promoted_product_num\":\"1259\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4e2cenog65r85s96s60\",\"duration\":14.6,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oIvgv4J6AgYEC2SpRSYBDmEOuEQFQGFce49HfD~tplv-noop.image?dr=12525&refresh_token=07d69c12&x-expires=1768491945&x-signature=F3SqIWRMBo7cFI1IbgmJ4TYvzz8%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/f601a3d36c3779e9b136547dd833c1cf/69690ba9/video/tos/useast5/tos-useast5-ve-0068c003-tx/oY818weRESecgAQBmJNXCIeMCgMwORjwxakAAH/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3630&bt=1815&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZWZmZjM6O2U1ODdoZzU0NkBpM3Y8OHU5cmg1NzMzZzczNEAyM2NjYGIzNmExYTQwMzM0YSMzM3A1MmRrYGJhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/f601a3d36c3779e9b136547dd833c1cf/69690ba9/video/tos/useast5/tos-useast5-ve-0068c003-tx/oY818weRESecgAQBmJNXCIeMCgMwORjwxakAAH/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3630&bt=1815&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZWZmZjM6O2U1ODdoZzU0NkBpM3Y8OHU5cmg1NzMzZzczNEAyM2NjYGIzNmExYTQwMzM0YSMzM3A1MmRrYGJhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491945,\"width\":720,\"height\":1310,\"file_hash\":\"989f15b2019dcd1084b2d15cb293e4ce\",\"format\":\"\",\"size\":3393046,\"bitrate\":1859203,\"video_quality\":\"normal\"}]},\"name\":\"Totally worth every penny 💰#TikTokShopBlackFriday #TikTokShopCyberMonday #spotightfinds #christmas \",\"release_date\":\"1763452650\",\"item_id\":\"7573971068663237943\",\"like_cnt\":44,\"play_cnt\":35847,\"comment_cnt\":1,\"video_products\":[{\"name\":\"2-Piece Vegetable Print Women's Pajama Set, Button-Up Short Sleeve Top and Comfortable Shorts, Elegant Sleepwear for All Seasons\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/b8bee21651f84ba2a70c7cc21f5493ab~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731362979537391848\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"21.79\",\"formatted_price\":\"$21.79\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"21.79\",\"formatted_price\":\"$21.79\"},\"promoted_product_num\":\"8799\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"144\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"2603.99\",\"symbol\":\"$\",\"format\":\"$2,603.99\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_600154\",\"name\":\"Textiles & Soft Furnishings\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":72,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"2603.99\",\"symbol\":\"$\",\"format\":\"$2,603.99\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":188,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"928\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"294\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"291\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"45-54\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7085\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"294\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"291\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"45-54\",\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"5.0\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495350182967281874\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"z1539190yg7\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"z1539190yg7\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/9d70773cb1a462c7161aeecc984163f2~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=0d048be6&x-expires=1768640400&x-signature=PQINHiLBA5E6OcceCYy0r6RqrPs%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/9d70773cb1a462c7161aeecc984163f2~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=0e19605e&x-expires=1768640400&x-signature=7mZ1p%2FIC3LSJVLbuYNT2JXpn06I%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"504\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"is_authorized\":false,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"is_authorized\":false,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d2jeqh7og65udhcbf5vg\",\"duration\":22.942,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/okfr7uEVpBEFF6fECIvG8FA6L21Ago2LDERmEW~tplv-noop.image?dr=12525&refresh_token=7f876fe8&x-expires=1768491953&x-signature=Ta3XPooUzskxueIw5TmXyXF3t84%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/2fcd656f16d3f510fe59afdbbaf7056f/69690bb1/video/tos/useast8/tos-useast8-ve-0068c004-tx2/osfpIeqjJITdYdMeIGAXXTDpQ83WRJQCsgqzNA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2194&bt=1097&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZGRmM2RnZTM2aGg7NGk5aEBpajhla3g5cmtoNTMzaTczNEBeLTMzLTNeXi8xYzZjLjYzYSNzY2BhMmQ0bmdhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/2fcd656f16d3f510fe59afdbbaf7056f/69690bb1/video/tos/useast8/tos-useast8-ve-0068c004-tx2/osfpIeqjJITdYdMeIGAXXTDpQ83WRJQCsgqzNA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2194&bt=1097&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZGRmM2RnZTM2aGg7NGk5aEBpajhla3g5cmtoNTMzaTczNEBeLTMzLTNeXi8xYzZjLjYzYSNzY2BhMmQ0bmdhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491953,\"width\":576,\"height\":1024,\"file_hash\":\"64ab42e69627305c9a5e75b915282112\",\"format\":\"\",\"size\":3223466,\"bitrate\":1124040,\"video_quality\":\"normal\"}]},\"name\":\"#tiktokshop #fyp #fouryou #fyppppppppppppppppppppppp \",\"release_date\":\"1755770384\",\"item_id\":\"7540976307480399135\",\"like_cnt\":6,\"play_cnt\":1615,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Women's Solid Crop Tee & Shorts Loungewear, Casual Comfy Round Neck Short Sleeve T-Shirt & Shorts PJ Set, Ladies Sleepwear for All Seasons, Pajama, Casual Comfy Pyjama\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/a14aa120df06488b993b9c7eca94678c~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731239718671848063\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"25.09\",\"formatted_price\":\"$25.09\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"25.09\",\"formatted_price\":\"$25.09\"},\"promoted_product_num\":\"693\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d2l6refog65vjgui7t10\",\"duration\":16.208,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oYgjECFORDV5Z9uqEBDAI2qfRnoAbBuETmE0fz~tplv-noop.image?dr=12525&refresh_token=7f864c87&x-expires=1768491947&x-signature=Dnqtzfv0Byy0RXEUR6teczcwMac%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/86ed6c77f837478b97e5dda89ac94143/69690bab/video/tos/useast8/tos-useast8-ve-0068c004-tx2/oggHQEL6fHqzS6wqIgGAItVfjORAbCiIGNIpeR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3530&bt=1765&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZzQ4NDk5OmZoOmc8PGUzN0BpM3dsank5cmg5NTMzaTczNEAzYDMuL19hNWAxMDIwLmBeYSMuNHJnMmRjb2lhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/86ed6c77f837478b97e5dda89ac94143/69690bab/video/tos/useast8/tos-useast8-ve-0068c004-tx2/oggHQEL6fHqzS6wqIgGAItVfjORAbCiIGNIpeR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3530&bt=1765&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZzQ4NDk5OmZoOmc8PGUzN0BpM3dsank5cmg5NTMzaTczNEAzYDMuL19hNWAxMDIwLmBeYSMuNHJnMmRjb2lhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491947,\"width\":576,\"height\":1024,\"file_hash\":\"36339cdd5d799ecdcd141fd2373d06fa\",\"format\":\"\",\"size\":3661906,\"bitrate\":1807456,\"video_quality\":\"normal\"}]},\"name\":\"#tiktokshop #fyp #fouyou #fyppppppppppppppppppppppp #foryoupage \",\"release_date\":\"1755999749\",\"item_id\":\"7541961430216477982\",\"like_cnt\":4,\"play_cnt\":798,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Women's Autumn New Design Elegant Long Dress, Slim Fit Fairy Style with Stand Collar, Perfect for Casual & Party Wear, Womenswear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/6b35f42d9a764615a81af3198c6b984a~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731598444779704566\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"36.19\",\"formatted_price\":\"$36.19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"43.39\",\"formatted_price\":\"$43.39\"},\"promoted_product_num\":\"3\",\"status\":2}]},{\"video\":{\"id\":\"v15044gf0000d2ht9dvog65lnm59o2t0\",\"duration\":16.556,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oMejQIle0WvPlnxHFCCyQ7UqAMLfIRA6R4Gq7I~tplv-noop.image?dr=12525&refresh_token=1c3e3652&x-expires=1768491947&x-signature=IjGL7%2BZBJ6ByUBBlGLEr969KfwY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/8855b997b97898ea8bf711fdc4fdd096/69690bab/video/tos/useast8/tos-useast8-ve-0068c004-tx2/owfbzCgaeoY8IAiL1qcivE3BBXD6oERjp1VAQE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3764&bt=1882&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=aWk2ZDM1OzU2OTU8OmQ8aUBpMzU8cG85cmd3NTMzaTczNEA1XzJgMzMxXjAxNWBiXjZgYSNxbDJrMmRzNmVhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/8855b997b97898ea8bf711fdc4fdd096/69690bab/video/tos/useast8/tos-useast8-ve-0068c004-tx2/owfbzCgaeoY8IAiL1qcivE3BBXD6oERjp1VAQE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3764&bt=1882&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=aWk2ZDM1OzU2OTU8OmQ8aUBpMzU8cG85cmd3NTMzaTczNEA1XzJgMzMxXjAxNWBiXjZgYSNxbDJrMmRzNmVhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491947,\"width\":576,\"height\":1024,\"file_hash\":\"f67920e45607b69c45fd61ec87a202d5\",\"format\":\"\",\"size\":3988361,\"bitrate\":1927209,\"video_quality\":\"normal\"}]},\"name\":\"#tiktokshop #fyp #fouryou #trending #women \",\"release_date\":\"1755567460\",\"item_id\":\"7540104790102052127\",\"like_cnt\":2,\"play_cnt\":509,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Women's All Over Print Cami Nightdress, Sleeveless Cami Nightdress, Casual Soft Comfortable Spaghetti Strap Nightgown for All Seasons, Lady's Sleepwear for Indoor Wear, Breathable Sleep Dress\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/47ca8505c9e544cfa7b86bbd43c1ff8d~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731147169222070346\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"24.99\",\"formatted_price\":\"$24.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"25.19\",\"formatted_price\":\"$25.19\"},\"promoted_product_num\":\"9557\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"is_authorized\":false,\"status\":0},\"med_gmv_revenue\":{\"is_authorized\":false,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":0,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"is_authorized\":false,\"status\":0},\"live_gmv\":{\"is_authorized\":false,\"status\":0},\"ec_video_engagement\":{\"value\":62,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7103\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"3.4\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494011448716724103\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"tangxy123\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Forestia\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/2d37efe054be319866a95f9e782ae525~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=d492db6f&x-expires=1768640400&x-signature=bX3CODnW8JOnTEawgnPDARhx%2BdU%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/2d37efe054be319866a95f9e782ae525~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=2dbe6ace&x-expires=1768640400&x-signature=OLNB85Krnvlzk7ESTlAi4rwOrkc%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"6250\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"213\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d3thlhfog65sq1ahooo0\",\"duration\":19.134,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oEonE7YEABi6cARowHlBfiJ81EVTiIF0RYfUqD~tplv-noop.image?dr=12525&refresh_token=2893d5f4&x-expires=1768491950&x-signature=bnAH%2FMn0Bs8b6ShIQMdZUAATNf8%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/94590a1be661682e25bea112a06fbffa/69690bae/video/tos/useast8/tos-useast8-ve-0068c003-tx2/o4fRz4jfIdDeo7AEuHFrFQQKIgPKIAC5xxgqoA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=6534&bt=3267&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NDhpZDdpZWQ4PGllZmY4aUBpM3JrNHY5cmtrNjMzaTczNEBeMDIyYDIwNV4xLi8wYF41YSNsbF5uMmRjaXFhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/94590a1be661682e25bea112a06fbffa/69690bae/video/tos/useast8/tos-useast8-ve-0068c003-tx2/o4fRz4jfIdDeo7AEuHFrFQQKIgPKIAC5xxgqoA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=6534&bt=3267&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NDhpZDdpZWQ4PGllZmY4aUBpM3JrNHY5cmtrNjMzaTczNEBeMDIyYDIwNV4xLi8wYF41YSNsbF5uMmRjaXFhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491950,\"width\":720,\"height\":1280,\"file_hash\":\"29c54bb9da70f68ddb96e9955aedcef5\",\"format\":\"\",\"size\":8003410,\"bitrate\":3346256,\"video_quality\":\"normal\"}]},\"name\":\"So chic!Life is too short for boring outfits. 💋 This long-sleeve bodysuit with cargo pants set is perfect for a casual day☺️, Such a lovely casual 2-piece set💓 #2pieceset #bodysuitsets  #loungewearset #loungewearsets #bodysuitset #pantset #fallfashion #dealsforyoudays #legpants #TiktokshopBlackFriday #tiktokshopcybermonday \",\"release_date\":\"1761287330\",\"item_id\":\"7564671283967855902\",\"like_cnt\":329,\"play_cnt\":26368,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Women's Slim-Fit Solid Color Ribbed Fleece Jumpsuit Set, Wide Leg Pants, Fashionable Comfortable Fabric for Daily Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/0742b501108548c69ae3edebbe62435d~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731787692088529370\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"31.59\",\"formatted_price\":\"$31.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"31.59\",\"formatted_price\":\"$31.59\"},\"promoted_product_num\":\"3163\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3oh4onog65jlcr4rtf0\",\"duration\":12.467,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oAxmA8DCkIoiF7bJ2VfBRVi85n6aEREyAEEeZE~tplv-noop.image?dr=12525&refresh_token=6a80a06f&x-expires=1768491943&x-signature=dxTQDNo3fE%2FblWeoSFmu02%2BT6II%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/c92435912d332570a5804f5ae03bb52e/69690ba7/video/tos/useast8/tos-useast8-ve-0068c002-tx2/o4nyexJERiQ68c5oAVdIREmF9fL3LxEVED8BAb/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&br=1208&bt=604&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDs7NzM1PGY6OTU6OjxmZUBpM3c3Zm05cnJrNjMzaTczNEBhYDUyMTQwNS0xLzYwNmAtYSNjb29pMmRrMWxhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/c92435912d332570a5804f5ae03bb52e/69690ba7/video/tos/useast8/tos-useast8-ve-0068c002-tx2/o4nyexJERiQ68c5oAVdIREmF9fL3LxEVED8BAb/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&br=1208&bt=604&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDs7NzM1PGY6OTU6OjxmZUBpM3c3Zm05cnJrNjMzaTczNEBhYDUyMTQwNS0xLzYwNmAtYSNjb29pMmRrMWxhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491943,\"width\":480,\"height\":854,\"file_hash\":\"1e44b114bc3f70281ba1365f2bee0ebc\",\"format\":\"\",\"size\":965090,\"bitrate\":619292,\"video_quality\":\"lowest\"}]},\"name\":\"Cozy meets chic 🍂✨  A sweater dress i actually like.🎀 #sweaterdress #SweaterDressSeason #FallFashionVibes #WinterWardrobe #OffTheShoulderStyle #BodyconChic #ootd #sweaterweather #sweaterdress #fallwinter #outfitinspo #fyp #fallfashion #outfitideas \",\"release_date\":\"1760629655\",\"item_id\":\"7561846741008469278\",\"like_cnt\":18,\"play_cnt\":933,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Women's Off Shoulder Sweater Dress, Elegant Long Sleeve Bodycon Dress for Party Club Dating Wear, Women's Knitwear for Fall & Winter\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/4d45bed60c344cad8e1018e0a61b96dd~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729566000268087462\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"32.09\",\"formatted_price\":\"$32.09\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"32.09\",\"formatted_price\":\"$32.09\"},\"promoted_product_num\":\"12283\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3vng9vog65knrcm1okg\",\"duration\":10.1,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ogQg9jDRnFvAmAG2lWgAvWQQB4MeifJee8kPOU~tplv-noop.image?dr=12525&refresh_token=d965ba3c&x-expires=1768491941&x-signature=jpzPoBJruZY6AmjzSMBi2lBnG%2Bo%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/e3e46552a1ac9a2ce4c26fa2f696e346/69690ba5/video/tos/useast8/tos-useast8-pve-0068-tx2/o8QrgU68vEFAsHRGPefj97WBJo4MsfAQAHlBeF/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=756&bt=378&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZDM3Zjs8NzxkNTVlZDQ3OEBpanJwdW45cjxxNjMzaTczNEAwY2ItMC0yNjQxLzBfLzM0YSNoLmBrMmRzZHNhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/e3e46552a1ac9a2ce4c26fa2f696e346/69690ba5/video/tos/useast8/tos-useast8-pve-0068-tx2/o8QrgU68vEFAsHRGPefj97WBJo4MsfAQAHlBeF/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=756&bt=378&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZDM3Zjs8NzxkNTVlZDQ3OEBpanJwdW45cjxxNjMzaTczNEAwY2ItMC0yNjQxLzBfLzM0YSNoLmBrMmRzZHNhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491941,\"width\":480,\"height\":854,\"file_hash\":\"b273ef8c052c4d01de2a03418c4da0c7\",\"format\":\"\",\"size\":488913,\"bitrate\":387257,\"video_quality\":\"lowest\"}]},\"name\":\"Girls,Ribbed Long-sleeved top—perfect with a jacket or worn alone, a must-have for spring and autumn✨ #Ribbed #top #longsleeve #womenswear #fallfreshness #OOTD #fashiontiktok  #dealforyoudays #TikTokShopLaborDaySale #tiktokmademebuyit #TiktokshopBlackFriday #TiktokShopCyberMonday\",\"release_date\":\"1761572924\",\"item_id\":\"7565897948245019934\",\"like_cnt\":6,\"play_cnt\":888,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Women's Plain & Leopard Asymmetrical Neck Flounce Sleeve Tee, Casual Long Sleeve T-shirt for Fall & Winter, Women's Clothing for Daily Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/663c3c7170cd4eb28036e74632da7179~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730243325765915514\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"22.19\",\"formatted_price\":\"$22.19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"22.19\",\"formatted_price\":\"$22.19\"},\"promoted_product_num\":\"2244\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"292\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"2942.05\",\"symbol\":\"$\",\"format\":\"$2,942.05\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_600001\",\"name\":\"Home Supplies\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":156,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"2942.05\",\"symbol\":\"$\",\"format\":\"$2,942.05\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":158,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"399\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"230\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"213\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"18-24\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7849\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"230\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"213\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"18-24\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.0\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7496070247266879813\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"lia.beautytok\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Lia | Beautytok\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/5182e11a6a63e44425e40db48b3c5619~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=4ea43162&x-expires=1768640400&x-signature=7x8s0N3ipnL%2F7AlKhUzTWhZ1KHQ%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/5182e11a6a63e44425e40db48b3c5619~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=140bf68e&x-expires=1768640400&x-signature=jgW8mEAKEnIxSyQSTFzN2ZqrgFc%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"4961\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"263\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d51isovog65ul6birdc0\",\"duration\":7.567,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/ognyUDQyQASjUaEE9DLEXb5lHQxRgeF5pDBywf~tplv-noop.image?dr=12525&refresh_token=41d34fcd&x-expires=1768491938&x-signature=%2FitX94XFPfa4PsWev9H1exQnkd8%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/2c2c98009842294f55631d8d91158d2a/69690ba2/video/tos/useast5/tos-useast5-pve-0068-tx/ooWDFBcqyEe3tZ5DIIWnEfYjSLQGpEAZgDtRgz/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1130&bt=565&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aGRoZzZnPDw2Z2g1aDk4NEBpM2dsOXg5cnJsODMzZzczNEBeMDFiNTVeXl4xLTAxYDUxYSNgb19pMmRzcC5hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/2c2c98009842294f55631d8d91158d2a/69690ba2/video/tos/useast5/tos-useast5-pve-0068-tx/ooWDFBcqyEe3tZ5DIIWnEfYjSLQGpEAZgDtRgz/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1130&bt=565&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aGRoZzZnPDw2Z2g1aDk4NEBpM2dsOXg5cnJsODMzZzczNEBeMDFiNTVeXl4xLTAxYDUxYSNgb19pMmRzcC5hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491938,\"width\":576,\"height\":1024,\"file_hash\":\"2f2f5996bb4f80b16eb59576dcb6dd8c\",\"format\":\"\",\"size\":547702,\"bitrate\":579042,\"video_quality\":\"lowest\"}]},\"name\":\"Don’t forget about the disposable gloves for cooking and serving 👩‍🍳 #disposablegloves #cooking #kitchen \",\"release_date\":\"1766010479\",\"item_id\":\"7584957198950747447\",\"like_cnt\":8,\"play_cnt\":523,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Disposable Food-Safe Gloves\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/422e334312c74e73af90972a8629ef6b~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732001078026277853\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"6.99\",\"formatted_price\":\"$6.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"18.99\",\"formatted_price\":\"$18.99\"},\"promoted_product_num\":\"15\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4fl407og65guaj0ov4g\",\"duration\":6.338,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/occIxYLPeQGYBDGAQSJAepIySfQtjxgHkElqUC~tplv-noop.image?dr=12525&refresh_token=05853169&x-expires=1768491937&x-signature=xKCRJoHIkVOOMP%2BjNYB99sncPcg%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/81785ddafed4bf8f909d9fccd878c48c/69690ba1/video/tos/useast5/tos-useast5-ve-0068c003-tx/owefByQIZpjgHI3QDCLSAU4GASkhvHileqPIxD/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=624&bt=312&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZGg5ZzU4Njk2M2czMzo2M0BpankzZGo5cjNvNzMzZzczNEA1LV5eLWMvXzYxM2NiY14tYSMxbGdyMmQ0MWNhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/81785ddafed4bf8f909d9fccd878c48c/69690ba1/video/tos/useast5/tos-useast5-ve-0068c003-tx/owefByQIZpjgHI3QDCLSAU4GASkhvHileqPIxD/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=624&bt=312&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZGg5ZzU4Njk2M2czMzo2M0BpankzZGo5cjNvNzMzZzczNEA1LV5eLWMvXzYxM2NiY14tYSMxbGdyMmQ0MWNhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491937,\"width\":480,\"height\":854,\"file_hash\":\"610dfcbc1e8937ab1229bf20cd79da49\",\"format\":\"\",\"size\":253647,\"bitrate\":320160,\"video_quality\":\"lowest\"}]},\"name\":\"If you still don’t have perfect skin, hurry up. #TikTokShopBlackFriday #acne #blackhead #blackheadextractor #koreanskincare \",\"release_date\":\"1763660378\",\"item_id\":\"7574863578797231373\",\"like_cnt\":11,\"play_cnt\":615,\"comment_cnt\":0,\"video_products\":[{\"name\":\"[Anua Official] Viral Ultimate Glass Skin Bundle | Salmon PDRN + Niacinamide + Double Cleansing + Collagen Mask| Daily Korean Skincare Kit Hydrating Calming\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/840a5000d13c4158b90ab61750d290b9~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729472700694237665\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"148\",\"formatted_price\":\"$148\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"153\",\"formatted_price\":\"$153\"},\"promoted_product_num\":\"153694\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4gbmhfog65q89pu4j3g\",\"duration\":8.381,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/ogD2IpHQiBALvnHpSFi6BI0CkCiwTArkIPf8gi~tplv-noop.image?dr=12525&refresh_token=c3181591&x-expires=1768491939&x-signature=ylk3c0kZKUwJ5aJV11AuVYfvJ8o%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/305edc3456be71d4676060b49d473316/69690ba3/video/tos/useast5/tos-useast5-ve-0068c001-tx/oo0B21BaijTikugviINHAAiCQ6PIEpHfw0Fndi/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=922&bt=461&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OTY7Mzs0NTplMzUzNGk7N0Bpam14PHQ5cmtlNzMzZzczNEBhMS4zY2MyXl8xM2JfMF81YSMwMW01MmRjamRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/305edc3456be71d4676060b49d473316/69690ba3/video/tos/useast5/tos-useast5-ve-0068c001-tx/oo0B21BaijTikugviINHAAiCQ6PIEpHfw0Fndi/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=922&bt=461&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OTY7Mzs0NTplMzUzNGk7N0Bpam14PHQ5cmtlNzMzZzczNEBhMS4zY2MyXl8xM2JfMF81YSMwMW01MmRjamRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491939,\"width\":480,\"height\":854,\"file_hash\":\"627b2841220784641b172552ebafc730\",\"format\":\"\",\"size\":495149,\"bitrate\":472639,\"video_quality\":\"lowest\"}]},\"name\":\"Don’t miss this sale if your aim is to grow out your hair 🤗 #TikTokShopBlackFriday #maryruths #hairgrowthjourney \",\"release_date\":\"1763752785\",\"item_id\":\"7575260366012288270\",\"like_cnt\":8,\"play_cnt\":517,\"comment_cnt\":0,\"video_products\":[{\"name\":\"MaryRuth's Liquid Multivitamin + Hair Growth - Clinically Tested Lustriva for Thicker Hair in Women - Improve Facial Wrinkles - Vegan - 15.22 Fl Oz\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/36ea5cff64d1408199c5a0086e230554~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729444839009194958\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"44.95\",\"formatted_price\":\"$44.95\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"179.8\",\"formatted_price\":\"$179.8\"},\"promoted_product_num\":\"623815\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_700645\",\"name\":\"Health\"},{\"starling_key\":\"magellan_700437\",\"name\":\"Food & Beverages\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":651,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":219,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"1243\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"275\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"263\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"0-10\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"6826\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"275\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"263\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"3.9\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7493992057617025737\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"annalisejacobsen\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"annalise\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/3e1681b0bcfedc92ac61fe567848ce23~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=54a25220&x-expires=1768640400&x-signature=IwF5XFvxjKWYjosLjfA1WQjI6sw%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/3e1681b0bcfedc92ac61fe567848ce23~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=599c5b5b&x-expires=1768640400&x-signature=EYUkM9BmsaxPhrWgK3FfTIYH0Fg%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"6281\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"2927\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d2qtfp7og65kfmlvlg2g\",\"duration\":7.174,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/owefrMJAQCFIA1A9RbGgUiQ91ISffrGV1LKRtq~tplv-noop.image?dr=12525&refresh_token=4f021872&x-expires=1768491938&x-signature=MEw3ddJ0hzffEJSBc5FmcrZl6%2F0%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/bea19b7a34681c56262b190755a19361/69690ba2/video/tos/useast8/tos-useast8-ve-0068c003-tx2/osRfbrfI1JQg1CfiA9gIGrqLKetb6ARUQGKFA1/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2778&bt=1389&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NTs0ODs1NTdnOGVlZWY8N0Bpamp5cG45cnN3NTMzaTczNEBfYjA0YWAvNTExNjJhLTUtYSMvaWljMmQ0Y25hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/bea19b7a34681c56262b190755a19361/69690ba2/video/tos/useast8/tos-useast8-ve-0068c003-tx2/osRfbrfI1JQg1CfiA9gIGrqLKetb6ARUQGKFA1/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2778&bt=1389&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NTs0ODs1NTdnOGVlZWY8N0Bpamp5cG45cnN3NTMzaTczNEBfYjA0YWAvNTExNjJhLTUtYSMvaWljMmQ0Y25hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491938,\"width\":576,\"height\":1024,\"file_hash\":\"f7dd057dd589d68f2281b6f24e427d49\",\"format\":\"\",\"size\":1275868,\"bitrate\":1422768,\"video_quality\":\"normal\"}]},\"name\":\"Loved this fit   #ootd #outfit #edikted \",\"release_date\":\"1756747755\",\"item_id\":\"7545174075887406366\",\"like_cnt\":39140,\"play_cnt\":801079,\"comment_cnt\":60,\"video_products\":[{\"name\":\"Ronan Zip Up Denim Mini Skort\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/2240537523634fc2b3b13f5b989bfda4~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731341834210545826\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"43\",\"formatted_price\":\"$43\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"43\",\"formatted_price\":\"$43\"},\"promoted_product_num\":\"378\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4htm6nog65pih03i1p0\",\"duration\":9.31,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o4lAAQViav3ENBE5FGbECAIBj5SBERPMB3iyL~tplv-noop.image?dr=12525&refresh_token=c6fbe86b&x-expires=1768491940&x-signature=s4xWRUHgvz1Fqf7O%2BGBHa2%2BoA1k%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/e270a3d1bf0415cd79b3bf33337edead/69690ba4/video/tos/useast8/tos-useast8-pve-0068-tx2/owA5gsFVaE5E3AljAGBBiMoE9GBivSyjIbRPI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=736&bt=368&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZDQ0PDpkaGU3NjU5N2RlM0BpMzQ2a3M5cjl3NzMzaTczNEA0YmFjMjZfXzMxLzYuYjUzYSNtZi1mMmRramVhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/e270a3d1bf0415cd79b3bf33337edead/69690ba4/video/tos/useast8/tos-useast8-pve-0068-tx2/owA5gsFVaE5E3AljAGBBiMoE9GBivSyjIbRPI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=736&bt=368&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZDQ0PDpkaGU3NjU5N2RlM0BpMzQ2a3M5cjl3NzMzaTczNEA0YmFjMjZfXzMxLzYuYjUzYSNtZi1mMmRramVhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491940,\"width\":480,\"height\":854,\"file_hash\":\"6db0debd4b179e1f0b9146d50d857885\",\"format\":\"\",\"size\":439258,\"bitrate\":377450,\"video_quality\":\"lowest\"}]},\"name\":\"Fav top ever is 70% off rn #blackfriday #edikted #shop \",\"release_date\":\"1763957838\",\"item_id\":\"7576141141725203742\",\"like_cnt\":290,\"play_cnt\":42077,\"comment_cnt\":8,\"video_products\":[{\"name\":\"Issey Layered Bandeau Cowl Neck Top\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/6f1bbd0c62bc4c5780b51bd642add2c8~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731605884344373410\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"19.2\",\"formatted_price\":\"$19.2\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"19.2\",\"formatted_price\":\"$19.2\"},\"promoted_product_num\":\"553\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d51gtq7og65qct5hn9mg\",\"duration\":45.667,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o4DzGff7CYTwpFpE9t0BAoVaEQQEHIpAR3Smm2~tplv-noop.image?dr=12525&refresh_token=e9af98d4&x-expires=1768491976&x-signature=wpSg1E1ylVJypmCp7xRDiTdQDSU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/13ab07e3c29429aa938d6d666aff1b48/69690bc8/video/tos/useast8/tos-useast8-ve-0068c004-tx2/o8BZEbQpOBtRUAH6zsiDPXIQiBUiaEE6VAMh0/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2704&bt=1352&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OmQ2OmZpZWhlaThmMzpkNkBpajxrd3Q5cnRqODMzaTczNEAwMDFhMjBeNmAxMzQvMS0wYSNqazJgMmQ0cS5hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/13ab07e3c29429aa938d6d666aff1b48/69690bc8/video/tos/useast8/tos-useast8-ve-0068c004-tx2/o8BZEbQpOBtRUAH6zsiDPXIQiBUiaEE6VAMh0/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2704&bt=1352&cs=0&ds=3&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OmQ2OmZpZWhlaThmMzpkNkBpajxrd3Q5cnRqODMzaTczNEAwMDFhMjBeNmAxMzQvMS0wYSNqazJgMmQ0cS5hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e00088000\",\"url_expire\":1768491976,\"width\":720,\"height\":1280,\"file_hash\":\"91fe4dd3fcbc5da4382ddef3cc1de6a1\",\"format\":\"\",\"size\":7905299,\"bitrate\":1384859,\"video_quality\":\"normal\"}]},\"name\":\"Slowly building my study abroad wardrobe thank you @Cider  #studyabroad #shopcider #cider #studyabroadoutfits \",\"release_date\":\"1766002682\",\"item_id\":\"7584923725875678494\",\"like_cnt\":103,\"play_cnt\":3884,\"comment_cnt\":15,\"video_products\":[{\"name\":\"Cider Dachshund Detail Round Neckline Oversized Sweater\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/20f83940331a49e5be28c250801ae824~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732017094879645783\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"45.9\",\"formatted_price\":\"$45.9\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"45.9\",\"formatted_price\":\"$45.9\"},\"promoted_product_num\":\"85\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"41\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"1114.64\",\"symbol\":\"$\",\"format\":\"$1,114.64\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":735,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"1077.46\",\"symbol\":\"$\",\"format\":\"$1,077.46\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":534,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"4027\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"1876\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"2927\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"18-24\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"4925\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"1876\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"2927\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"18-24\",\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.3\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495875409523411505\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"valleymoms\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Valleymom🌵💫✨\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/2e8ceb93c34c2892e2fd15578fcf802e~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=5dc84239&x-expires=1768640400&x-signature=c6fDo%2B1KcqBmkJzgTOX8CZaMqNQ%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/2e8ceb93c34c2892e2fd15578fcf802e~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=a8c2b5db&x-expires=1768640400&x-signature=hoAmCFlfuKeFQE4rRd%2FZfbAlNI4%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"10628\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"75\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d54st2fog65s0je1bqs0\",\"duration\":15.44,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oEddEqiBrBfiV85Bz0OJC64I5diUNIApwEAM2A~tplv-noop.image?dr=12525&refresh_token=dfb3e10e&x-expires=1768491946&x-signature=JG9d5DxA7KZktx01gkBEGA8a8Vw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/fab91705897d2399f332c4660ff23370/69690baa/video/tos/useast8/tos-useast8-pve-0068-tx2/ocVEA4pIBwFziI04NiOECbiBJB86fjA6IQAdZq/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1150&bt=575&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NmVoNGRnO2Q7NWk8PDk0ZUBpM3Q0bXY5cjV2ODMzaTczNEAyLS1eYjBfNmAxYy1eNDAtYSNwX2ItMmRjcTFhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/fab91705897d2399f332c4660ff23370/69690baa/video/tos/useast8/tos-useast8-pve-0068-tx2/ocVEA4pIBwFziI04NiOECbiBJB86fjA6IQAdZq/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1150&bt=575&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NmVoNGRnO2Q7NWk8PDk0ZUBpM3Q0bXY5cjV2ODMzaTczNEAyLS1eYjBfNmAxYy1eNDAtYSNwX2ItMmRjcTFhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491946,\"width\":576,\"height\":1024,\"file_hash\":\"993867a09aa179d39959e40061fd01c0\",\"format\":\"\",\"size\":1137380,\"bitrate\":589316,\"video_quality\":\"lowest\"}]},\"name\":\"The one who calls me by name. #tiktokshopcreatorpicks #tiktokshopfinds #foryoupage #forgiven#godsloveovercomes @God’s Love Overcomes \",\"release_date\":\"1766444959\",\"item_id\":\"7586823277834734879\",\"like_cnt\":542,\"play_cnt\":54955,\"comment_cnt\":36,\"video_products\":[{\"name\":\"GLO Kingdom Essential Hoodie – Bright and Bold Christian Streetwear in Vibrant Colors | Premium Printed Faith Hoodie for Everyday Comfort and Style\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/9af3144d1606410d8e1e67257c0737cc~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731942936990880419\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"120\",\"formatted_price\":\"$120\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"120\",\"formatted_price\":\"$120\"},\"promoted_product_num\":\"1492\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d5de14fog65inb6be580\",\"duration\":15.367,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/osCWVQRQDluCuBwKAEfyAeIguFdZSpEEslgRV1~tplv-noop.image?dr=12525&refresh_token=b655c68f&x-expires=1768491946&x-signature=71PEUjNzJZHoqUnkDpnM0pklpww%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/b93747724e7fd92c02b229a318afab91/69690baa/video/tos/useast8/tos-useast8-pve-0068-tx2/o0CyrIIAqGAiQiX4NxIFyrfsZBBHiA6E3PZ0ua/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1060&bt=530&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzM8aTQ1OWY2Zmc0PGRnNEBpMzhlZWw5cjdoODMzaTczNEAuNjQ0MjAxXmMxMDQwNWAvYSM1YjNrMmRjLmFhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/b93747724e7fd92c02b229a318afab91/69690baa/video/tos/useast8/tos-useast8-pve-0068-tx2/o0CyrIIAqGAiQiX4NxIFyrfsZBBHiA6E3PZ0ua/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1060&bt=530&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzM8aTQ1OWY2Zmc0PGRnNEBpMzhlZWw5cjdoODMzaTczNEAuNjQ0MjAxXmMxMDQwNWAvYSM1YjNrMmRjLmFhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491946,\"width\":576,\"height\":1024,\"file_hash\":\"d2526aa69670afef12f42804819c3f3e\",\"format\":\"\",\"size\":1042835,\"bitrate\":542895,\"video_quality\":\"lowest\"}]},\"name\":\"Pad liner boxers 🩸 #foryoupage #padlinerboxers#padlinerbrief #viraltok#foryoupage\",\"release_date\":\"1767563668\",\"item_id\":\"7591628036601072927\",\"like_cnt\":2381,\"play_cnt\":304639,\"comment_cnt\":21,\"video_products\":[{\"name\":\"Baller 5\\\" Pad Liner Boxer Briefs | For Menstruators & Pure Comfort\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/dc3f859c2a0147b4ae7df8cd6384707c~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731303287260615333\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"24\",\"formatted_price\":\"$24\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"24\",\"formatted_price\":\"$24\"},\"promoted_product_num\":\"1092\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d5ar6vnog65inb2u3c4g\",\"duration\":8.5,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oQINYifXAyLIsCA0JtqiimhqEAsvnvEVzABtCu~tplv-noop.image?dr=12525&refresh_token=33fd334e&x-expires=1768491939&x-signature=zRofrzZI2IYHFUbJTxlZUMxj3a4%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/e9d7aa7df19835bd83d8331f826ff1da/69690ba3/video/tos/useast8/tos-useast8-ve-0068c004-tx2/owrDY88IjIdAAqeflaQSYvDSVCSFEIe2CAJbaq/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1140&bt=570&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTNoODVmNmk4Ozg2ZDdmaUBpamZ4ZWw5cnl1ODMzaTczNEBhYy5hNmFiNV4xYS8yNTBeYSMxMC9rMmRrM15hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/e9d7aa7df19835bd83d8331f826ff1da/69690ba3/video/tos/useast8/tos-useast8-ve-0068c004-tx2/owrDY88IjIdAAqeflaQSYvDSVCSFEIe2CAJbaq/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1140&bt=570&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTNoODVmNmk4Ozg2ZDdmaUBpamZ4ZWw5cnl1ODMzaTczNEBhYy5hNmFiNV4xYS8yNTBeYSMxMC9rMmRrM15hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491939,\"width\":576,\"height\":1024,\"file_hash\":\"49ff591bff63d7a851b228d11fb00433\",\"format\":\"\",\"size\":620715,\"bitrate\":584202,\"video_quality\":\"lowest\"}]},\"name\":\"Boxers with a pad yessssss #boxerswithapad#tiktokshopfinds #tiktokshopcreatorpicks #foryoupage #fypシ \",\"release_date\":\"1767224321\",\"item_id\":\"7590170571359522079\",\"like_cnt\":422,\"play_cnt\":63645,\"comment_cnt\":10,\"video_products\":[{\"name\":\"Baller 5\\\" Pad Liner Boxer Briefs | For Menstruators & Pure Comfort\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/dc3f859c2a0147b4ae7df8cd6384707c~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731303287260615333\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"24\",\"formatted_price\":\"$24\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"24\",\"formatted_price\":\"$24\"},\"promoted_product_num\":\"1092\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"282\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"6314.79\",\"symbol\":\"$\",\"format\":\"$6,314.79\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_604206\",\"name\":\"Toys & Hobbies\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":111,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"6266.88\",\"symbol\":\"$\",\"format\":\"$6,266.88\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":95,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"1045\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"88\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"75\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7852\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"88\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"75\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.9\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494176942263929854\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"hungrybug69\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"coco demetros\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/7330495921551048747~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=258f6bdc&x-expires=1768640400&x-signature=FDfrk2Mx6kq2i2im8E3XnaudUVY%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/7330495921551048747~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=81633d7f&x-expires=1768640400&x-signature=%2FJ%2BROjpJvVy527mBsUFjKah34WE%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"78209\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"4627\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d3v8e1vog65pup5qnd9g\",\"duration\":8.405,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o0C3j5Dhf3ofcrPde7VJq3HECmzFIIRXIQAAya~tplv-noop.image?dr=12525&refresh_token=ef74dc01&x-expires=1768491939&x-signature=Ox1tYXH3UdtnsIU%2Breun%2BToBeaI%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/d37541d416c33a4fefac3c0658ea1028/69690ba3/video/tos/useast8/tos-useast8-ve-0068c001-tx2/ocejruGvRCGf6ejINhL4PgbzQMfSQAFnQ1YU2A/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=760&bt=380&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZGhkNGU1ZDkzaGlpPDY0NEBpamd0c3M5cjQ7NjMzaTczNEA2X18xM2M0XzUxMzQuYy8vYSM2azJyMmRzYnNhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/d37541d416c33a4fefac3c0658ea1028/69690ba3/video/tos/useast8/tos-useast8-ve-0068c001-tx2/ocejruGvRCGf6ejINhL4PgbzQMfSQAFnQ1YU2A/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=760&bt=380&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZGhkNGU1ZDkzaGlpPDY0NEBpamd0c3M5cjQ7NjMzaTczNEA2X18xM2M0XzUxMzQuYy8vYSM2azJyMmRzYnNhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b0000\",\"url_expire\":1768491939,\"width\":480,\"height\":854,\"file_hash\":\"a1c304bec78a9b0621f3a8e6ba0a0ac3\",\"format\":\"\",\"size\":409309,\"bitrate\":389586,\"video_quality\":\"lowest\"}]},\"name\":\"\",\"release_date\":\"1761511213\",\"item_id\":\"7565632975497481502\",\"like_cnt\":5491,\"play_cnt\":101815,\"comment_cnt\":18,\"video_products\":[{\"name\":\"Women's Summer Halter Neck Vest Sleeveless Deep V Neck Solid Color Crop Tank Tops Polyester Womenswear Casual Black\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/9884eb0b069e47519f1e89d224cb75a5~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731428829129642728\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"18.48\",\"formatted_price\":\"$18.48\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"19.12\",\"formatted_price\":\"$19.12\"},\"promoted_product_num\":\"62\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d5gkd1vog65ghhlkcpn0\",\"duration\":15,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o8GIAFsIjtcRiT0uGiKDCqiJhBwof9AZIEAN5q~tplv-noop.image?dr=12525&refresh_token=cc50544d&x-expires=1768491946&x-signature=C1xflsAeWa4foK51m%2BFUPe8NZLs%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/20bcc020543e1196853c5f9a3ad9bb15/69690baa/video/tos/useast8/tos-useast8-ve-0068c004-tx2/oEaGhAfNVYIdcRRtEHAaQMFERVfzhphpDFEUB0/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1022&bt=511&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODg5ZzVoZTllOGY6OjM1O0BpM3Nua2o5cjRuODMzaTczNEAuNjUtNGI1NS0xNTEvNDVhYSNrYGllMmRzYWRhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/20bcc020543e1196853c5f9a3ad9bb15/69690baa/video/tos/useast8/tos-useast8-ve-0068c004-tx2/oEaGhAfNVYIdcRRtEHAaQMFERVfzhphpDFEUB0/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1022&bt=511&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODg5ZzVoZTllOGY6OjM1O0BpM3Nua2o5cjRuODMzaTczNEAuNjUtNGI1NS0xNTEvNDVhYSNrYGllMmRzYWRhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491946,\"width\":576,\"height\":1024,\"file_hash\":\"dc26bef80609beabcca0e64d7fb00f6a\",\"format\":\"\",\"size\":982555,\"bitrate\":524029,\"video_quality\":\"lowest\"}]},\"name\":\"\",\"release_date\":\"1767982733\",\"item_id\":\"7593427937811025183\",\"like_cnt\":1600,\"play_cnt\":18822,\"comment_cnt\":4,\"video_products\":[{\"name\":\"Starrylion Lace Body Suit Square Neck Tops for Women Sleeveless Spaghetti Strap Tank Top Bodysuits for Women Sexy Jumpsuit\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/af8e9c2c9e9e4e588c25aee07bd0e4dd~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730546968285516150\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"24.98\",\"formatted_price\":\"$24.98\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"24.98\",\"formatted_price\":\"$24.98\"},\"promoted_product_num\":\"6480\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4gv2ffog65hknugure0\",\"duration\":15.835,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oMLI6e2fQM4hQUeD14WpAJQQGANyBk78R8Fkye~tplv-noop.image?dr=12525&refresh_token=03626b39&x-expires=1768491946&x-signature=nXR6K%2BQ8qvGZxZqM02iQqJ8f8kM%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/9c8f162b28fae78a3483fce5f08d336f/69690baa/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oEcEoKqDSC8jbyPFEkwfHAISII0hfQ6AfjEdo9/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=682&bt=341&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NWg2ODplNDo0aWloZGg3OUBpM3VqcWs5cml5NzMzaTczNEAxYC5hYV5iXi4xYGEvLmBiYSNicnJoMmRjL2RhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/9c8f162b28fae78a3483fce5f08d336f/69690baa/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oEcEoKqDSC8jbyPFEkwfHAISII0hfQ6AfjEdo9/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=682&bt=341&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NWg2ODplNDo0aWloZGg3OUBpM3VqcWs5cml5NzMzaTczNEAxYC5hYV5iXi4xYGEvLmBiYSNicnJoMmRjL2RhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491946,\"width\":480,\"height\":854,\"file_hash\":\"1c42aa4bdaa5c2e5ec4dd723ee33b7da\",\"format\":\"\",\"size\":693002,\"bitrate\":350111,\"video_quality\":\"lowest\"}]},\"name\":\"\",\"release_date\":\"1763832278\",\"item_id\":\"7575601834308455711\",\"like_cnt\":534,\"play_cnt\":14132,\"comment_cnt\":4,\"video_products\":[{\"name\":\"Aelfric Eden Oversized Boxy Hoodie Minimalist Solid Pullover with Embroidered Heart Unisex Long Sleeve Hooded Sweatshirt Y2K Aesthetic Streetwear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/e633c2494c864a819605e6795f29e413~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731575235286831714\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"59.95\",\"formatted_price\":\"$59.95\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"59.95\",\"formatted_price\":\"$59.95\"},\"promoted_product_num\":\"3870\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"12\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"180.03\",\"symbol\":\"$\",\"format\":\"$180.03\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"},{\"starling_key\":\"magellan_953224\",\"name\":\"Jewelry Accessories & Derivatives\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":1284,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"180.03\",\"symbol\":\"$\",\"format\":\"$180.03\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":959,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"26727\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"5912\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"4627\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"25-34\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Male\",\"value\":\"6809\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"5912\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"4627\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"25-34\",\"35-44\",\"18-24\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.3\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494980432537225651\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"leann.111\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Leann.111\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/62c97a9a20cea51e22939b1e37dd6a84~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=291268d1&x-expires=1768640400&x-signature=rudA%2BrChQiWTYfV5J0iZegQ0t8Q%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/62c97a9a20cea51e22939b1e37dd6a84~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=afa31e45&x-expires=1768640400&x-signature=9MTHZenBoiJBH3Rrl%2FahKy1l3iE%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"84475\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"1036\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d4hif87og65u52vl857g\",\"duration\":14.934,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oM6UEPFQxLqglFbjIBDAIeRejKSAJCoICkE9fb~tplv-noop.image?dr=12525&refresh_token=475c15e0&x-expires=1768491945&x-signature=7zllYa9FpVF4V0EihwU4bu0aoqk%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/966811a8211592a5c8be3fc61ea75db7/69690ba9/video/tos/useast8/tos-useast8-pve-0068-tx2/okBIQfFLDIwSFC9IgjEJkbI6RCqEKPUAe6j6eA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1144&bt=572&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Z2ZkZmg6aTVlZDg3ZjhlN0BpajhvNXg5cjtsNzMzaTczNEBfLl40YjReXjExYmAzYzQ1YSM0NXMyMmQ0Y2VhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/966811a8211592a5c8be3fc61ea75db7/69690ba9/video/tos/useast8/tos-useast8-pve-0068-tx2/okBIQfFLDIwSFC9IgjEJkbI6RCqEKPUAe6j6eA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1144&bt=572&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Z2ZkZmg6aTVlZDg3ZjhlN0BpajhvNXg5cjtsNzMzaTczNEBfLl40YjReXjExYmAzYzQ1YSM0NXMyMmQ0Y2VhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491945,\"width\":480,\"height\":872,\"file_hash\":\"8d7e6a7c32cf701d75be8b5cd0f465f2\",\"format\":\"\",\"size\":1094475,\"bitrate\":586299,\"video_quality\":\"lowest\"}]},\"name\":\"❄️🎄🌟#fauxfurcoat #fauxfur #fauxfurjacket #tiktokshopcybermonday #TikTokShopBlackFriday \",\"release_date\":\"1763911590\",\"item_id\":\"7575942466612808991\",\"like_cnt\":5562,\"play_cnt\":1030398,\"comment_cnt\":59,\"video_products\":[{\"name\":\"Women's Solid Color Open Faux Fur Coat, Loose Fit Jacket, Elegant Long Sleeve Waterfall Collar Outerwear for Fall & Winter, Women's Clothing for Daily Wear, Clothing for Women\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/736287717f144fe1bc615a5a477518c7~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730399801591632637\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"93.99\",\"formatted_price\":\"$93.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"95.79\",\"formatted_price\":\"$95.79\"},\"promoted_product_num\":\"9614\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d48bd6nog65ivj7ov010\",\"duration\":14.767,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oACjLIIoeCe9FQqtIZ01tNAEGeAZLIBgPC5SWI~tplv-noop.image?dr=12525&refresh_token=502daa5f&x-expires=1768491945&x-signature=f9r9VbzC0Nujkr8xFFG3cJKosvo%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/36b509b70dfa991b937b68f1a2a2202a/69690ba9/video/tos/useast8/tos-useast8-pve-0068-tx2/o0C0LQqGSCtLg9PLIBDWmAIeIIeQeIrAZjEts1/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1174&bt=587&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Nzs7Ojk5OGY0aTQzNzk6OkBpMzNybWw5cjllNzMzaTczNEBhLTNfYmBiX2MxYTEvNWMxYSMuczRzMmRrYTVhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/36b509b70dfa991b937b68f1a2a2202a/69690ba9/video/tos/useast8/tos-useast8-pve-0068-tx2/o0C0LQqGSCtLg9PLIBDWmAIeIIeQeIrAZjEts1/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1174&bt=587&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Nzs7Ojk5OGY0aTQzNzk6OkBpMzNybWw5cjllNzMzaTczNEBhLTNfYmBiX2MxYTEvNWMxYSMuczRzMmRrYTVhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491945,\"width\":480,\"height\":872,\"file_hash\":\"5188f1218de0ce99cb93b2969289f03e\",\"format\":\"\",\"size\":1109711,\"bitrate\":601184,\"video_quality\":\"lowest\"}]},\"name\":\"🔔🎄❄️🌟#top #shirt #shirts #tiktokshopcybermonday #TikTokShopBlackFriday \",\"release_date\":\"1762703059\",\"item_id\":\"7570751910639160607\",\"like_cnt\":28497,\"play_cnt\":3122605,\"comment_cnt\":74,\"video_products\":[{\"name\":\"Cider Boat Neck Gingham Bowknot Ruched Long Sleeve Top\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/1f4dc9914a6040588b45185eb32e4c66~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730500421618667896\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"30.88\",\"formatted_price\":\"$30.88\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"30.88\",\"formatted_price\":\"$30.88\"},\"promoted_product_num\":\"2579\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4pg66vog65oc5tgd0m0\",\"duration\":14.967,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oktWBfBvDEhpFEYEbmEBwWIpMBVQwYNAw9RfMA~tplv-noop.image?dr=12525&refresh_token=597dd4be&x-expires=1768491946&x-signature=0OTsOv8BeQF0958LoK2u9WkgkwQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/4759f6968a741e56e500957d42dab0bd/69690baa/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oEiIsXEz400XUSBGAAfsiYAqOGIg1jiNiYm0AC/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=994&bt=497&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=MzxmPDY4ZWQ5aGhkZmVpZ0BpMzNqOHI5cjlqNzMzaTczNEA1Xy40MTAxXzAxMDY1YS1fYSNqYXFgMmRzM21hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/4759f6968a741e56e500957d42dab0bd/69690baa/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oEiIsXEz400XUSBGAAfsiYAqOGIg1jiNiYm0AC/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=994&bt=497&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=MzxmPDY4ZWQ5aGhkZmVpZ0BpMzNqOHI5cjlqNzMzaTczNEA1Xy40MTAxXzAxMDY1YS1fYSNqYXFgMmRzM21hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491946,\"width\":576,\"height\":1048,\"file_hash\":\"3b7a87b85ba44791fb5aca5588108a91\",\"format\":\"\",\"size\":953677,\"bitrate\":509749,\"video_quality\":\"lowest\"}]},\"name\":\"❄️☕️🎄🌟#dress #dresstoimpress #partydress #tiktokshopcybermonday #tiktokholidayhaul \",\"release_date\":\"1764950865\",\"item_id\":\"7580406103708552478\",\"like_cnt\":24796,\"play_cnt\":1968934,\"comment_cnt\":123,\"video_products\":[{\"name\":\"Women Long Sleeve Mini Dress Crew Neck Feather Hem Mini Dress Bodycon Stretch Velvet Cocktail Party Dress\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/62b8da8c972b422eb9ad99ad26693eb0~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730546888796443135\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"31.87\",\"formatted_price\":\"$31.87\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"34.3\",\"formatted_price\":\"$34.3\"},\"promoted_product_num\":\"1682\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"3401\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"99059.44\",\"symbol\":\"$\",\"format\":\"$99.1K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_824328\",\"name\":\"Menswear & Underwear\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":89,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"99059.44\",\"symbol\":\"$\",\"format\":\"$99.1K\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":110,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"14155\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"1055\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"1036\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$60K-$150K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"1K+\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"18-24\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Male\",\"value\":\"5709\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"1055\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"1036\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"18-24\",\"35-44\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.3\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"value\":[{\"starling_key\":\"vertical_creator_pro_tag_option_fashion_and_style\"}],\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494197229820216327\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"boyffhtxuvq\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"boyffhtxuvq\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/b401105bcde7ad9c65d6267ed827d736~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=b2a5635d&x-expires=1768640400&x-signature=EsdoVhKmDwsE%2BscE9pgOwkjSN5Q%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/b401105bcde7ad9c65d6267ed827d736~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=370dc20f&x-expires=1768640400&x-signature=DFgSyW3s3AJsoE3Uf2ZDhGHDcdY%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"159\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"320\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d4k59gvog65g42b56o3g\",\"duration\":19.436,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/ocLmf4TSUA1NHgHJIAlKCjUCkVhegfl6IgcAgG~tplv-noop.image?dr=12525&refresh_token=d710e7d5&x-expires=1768491950&x-signature=nAmVH1xlkrghsageZG5i99X3SSE%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/7d71e1950fa6ff300a2b9943c477a213/69690bae/video/tos/useast5/tos-useast5-ve-0068c001-tx/o4APoiThplIPBVGhIfJAC1CwwpiVB8ZEY0bZIH/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=816&bt=408&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OzdlZWk2NzZlPDc3NGU4aUBpanI4NWo5cmo4NzMzZzczNEAtYzAyLl9jXy4xNTY2Xl4yYSMwM18xMmRzNmhhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/7d71e1950fa6ff300a2b9943c477a213/69690bae/video/tos/useast5/tos-useast5-ve-0068c001-tx/o4APoiThplIPBVGhIfJAC1CwwpiVB8ZEY0bZIH/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=816&bt=408&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OzdlZWk2NzZlPDc3NGU4aUBpanI4NWo5cmo4NzMzZzczNEAtYzAyLl9jXy4xNTY2Xl4yYSMwM18xMmRzNmhhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491950,\"width\":480,\"height\":854,\"file_hash\":\"a8c2e1fd950c4f18e1fd189dde0007cb\",\"format\":\"\",\"size\":1017247,\"bitrate\":418706,\"video_quality\":\"lowest\"}]},\"name\":\"#tiktokshop #fyp #fouyou \",\"release_date\":\"1764250872\",\"item_id\":\"7577399562449489166\",\"like_cnt\":5423,\"play_cnt\":635148,\"comment_cnt\":6,\"video_products\":[{\"name\":\"Women's Solid Short Sleeve Tee & Leggings Loungewear, Casual Comfy Round Neck Top & Skinny Pants PJ Set, Ladies Sleepwear for Spring & Fall, Pajama\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/f9130838ab4f47568529727c5f09a6ba~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731270867154670207\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"26.19\",\"formatted_price\":\"$26.19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.29\",\"formatted_price\":\"$39.29\"},\"promoted_product_num\":\"4081\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d47knunog65jukjaf9q0\",\"duration\":15.651,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oUIIXp0A6ow9he0PBBInphikjFDAawvziTCGSB~tplv-noop.image?dr=12525&refresh_token=caa1847d&x-expires=1768491946&x-signature=EvDNHB%2FiAAbGqUDSqw0v9LBZ58M%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/0e3959199cf34dd3f6b5e5abb04afdfc/69690baa/video/tos/useast5/tos-useast5-ve-0068c003-tx/oo0XkQpB0ATzpjniiEU6TAI9CBaPvhuwSIEBAe/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=4514&bt=2257&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Nzs6OjMzOzM1ZzYzODk4O0BpMzxkbm05cnhuNzMzZzczNEBiNDUzLWNgNl8xYjAvLl4tYSNuY2dyMmRrazRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/0e3959199cf34dd3f6b5e5abb04afdfc/69690baa/video/tos/useast5/tos-useast5-ve-0068c003-tx/oo0XkQpB0ATzpjniiEU6TAI9CBaPvhuwSIEBAe/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=4514&bt=2257&cs=0&ds=6&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Nzs6OjMzOzM1ZzYzODk4O0BpMzxkbm05cnhuNzMzZzczNEBiNDUzLWNgNl8xYjAvLl4tYSNuY2dyMmRrazRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491946,\"width\":576,\"height\":1024,\"file_hash\":\"3a69717e0d7f2182d0364285eb3465f7\",\"format\":\"\",\"size\":4522849,\"bitrate\":2311851,\"video_quality\":\"normal\"}]},\"name\":\"#tiktokshop #fyp #fouyou \",\"release_date\":\"1762610198\",\"item_id\":\"7570352894059367694\",\"like_cnt\":516,\"play_cnt\":108139,\"comment_cnt\":6,\"video_products\":[{\"name\":\"Winter New Vintage Plaid Elastic Straight Loose Thick Warm Casual Pants, Comfortable and Stylish for Cold Weather Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/5f3825b163d64693b5b64cceb9918c22~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731365989215998674\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"30.19\",\"formatted_price\":\"$30.19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"30.19\",\"formatted_price\":\"$30.19\"},\"promoted_product_num\":\"2951\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d43bj67og65lsjusl59g\",\"duration\":23.755,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o85340UiaPoEwBPKom5aUAIlG1QFIgamBuiTp~tplv-noop.image?dr=12525&refresh_token=bdab0f0e&x-expires=1768491954&x-signature=fmIkKRkLBOtvyCUa5fJETJ4F7sg%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/7d4e3e8f9725598fff5ff6dcb4d0a00e/69690bb2/video/tos/useast5/tos-useast5-pve-0068-tx/o8sQkIvHAAMAHkXKjLefXSGCcEDPmIIVOeuxgG/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1710&bt=855&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Ojk2NGQ6M2YzZTpoaDw8N0Bpajh2bW85cjllNzMzZzczNEA1Li1gY2AvX2MxL2BgMGBfYSM2aXJwMmQ0ZzBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/7d4e3e8f9725598fff5ff6dcb4d0a00e/69690bb2/video/tos/useast5/tos-useast5-pve-0068-tx/o8sQkIvHAAMAHkXKjLefXSGCcEDPmIIVOeuxgG/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1710&bt=855&cs=0&ds=2&ft=GS-jnInz7ThC8NuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Ojk2NGQ6M2YzZTpoaDw8N0Bpajh2bW85cjllNzMzZzczNEA1Li1gY2AvX2MxL2BgMGBfYSM2aXJwMmQ0ZzBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150945301D522780A8A3F0047477&btag=e000b8000\",\"url_expire\":1768491954,\"width\":480,\"height\":854,\"file_hash\":\"2c9f7afee638dd369d5be13e0de880ab\",\"format\":\"\",\"size\":2600289,\"bitrate\":875702,\"video_quality\":\"lowest\"}]},\"name\":\"#fyp #tiktokshop #fouyou \",\"release_date\":\"1762048424\",\"item_id\":\"7567940275507596558\",\"like_cnt\":2177,\"play_cnt\":209604,\"comment_cnt\":3,\"video_products\":[{\"name\":\"[Christmas pajamas] Women's Monkey Print Button Front Shirt and Pants Two-Piece Pajama Set, Long Sleeve Casual Homewear, All Seasons Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/d55332bd5c624641b2d9dbc05e47c084~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731680557596185083\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"25.49\",\"formatted_price\":\"$25.49\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"26.19\",\"formatted_price\":\"$26.19\"},\"promoted_product_num\":\"988\",\"status\":2}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"340\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"5737.01\",\"symbol\":\"$\",\"format\":\"$5,737.01\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":72,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"5737.01\",\"symbol\":\"$\",\"format\":\"$5,737.01\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":111,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"5111\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"320\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"320\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7204\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"320\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"320\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.5\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494903417591532262\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"oyamireina1\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Oyacita🫦dueña🫦de🫦los viento\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/be7fff9ab345efd7bb84d349b35f3eb6~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=5d668a71&x-expires=1768640400&x-signature=iWL%2FABzUyURY78dDxm4Rqdqg1gE%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/be7fff9ab345efd7bb84d349b35f3eb6~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=4bc9d149&x-expires=1768640400&x-signature=ptHV280v%2FmjMlhoDLLff0RnndAc%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"7017\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"is_authorized\":false,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"274\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"is_authorized\":false,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d40lt8fog65ld5qqj7n0\",\"duration\":24.612,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oEABBipQ9ga5BX5OIfXAKJC1Aqi6iYcIn0aWEu~tplv-noop.image?dr=12525&refresh_token=385ad996&x-expires=1768492000&x-signature=zHz04%2BoidqMYeRnoK%2F4%2FU9%2BeV04%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/522c4502f53297e2ebb942cae9b83a60/69690be0/video/tos/useast8/tos-useast8-ve-0068c001-tx2/okaI5PnXiBXgWqpBBuiEA9EiIA1yO3QfC7A0UK/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&br=620&bt=310&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTo2aGc0aTY2NTQ4PDs0NUBpMzp0OG85cjtvNzMzaTczNEA2NWIzL2EzXy4xXzAwNDNfYSNrZ25hMmRjcS1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/522c4502f53297e2ebb942cae9b83a60/69690be0/video/tos/useast8/tos-useast8-ve-0068c001-tx2/okaI5PnXiBXgWqpBBuiEA9EiIA1yO3QfC7A0UK/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&br=620&bt=310&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTo2aGc0aTY2NTQ4PDs0NUBpMzp0OG85cjtvNzMzaTczNEA2NWIzL2EzXy4xXzAwNDNfYSNrZ25hMmRjcS1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768492000,\"width\":480,\"height\":854,\"file_hash\":\"a9817b15ea4faad735cb19a38d6cc010\",\"format\":\"\",\"size\":978241,\"bitrate\":317972,\"video_quality\":\"lowest\"}]},\"name\":\"La mejor y más virar faja del momento súper súper recomendada #Tips súper oferta aproveche\",\"release_date\":\"1761737400\",\"item_id\":\"7566433872221703454\",\"like_cnt\":24,\"play_cnt\":180,\"comment_cnt\":5,\"video_products\":[{\"name\":\"FeelinGirl Belt Waist Cincher Ab Belt Tummy Control Body Shaper with Triple Wrap WomenB Comfortable Fabrics Nylon Adjustable Multicolor Lady Festival Womenswear Lady  Comfort Fabrics Womenswear Fits Sexy Waist Trainer TikTokShopBlackFriday\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/71eac69ccb3f44a39dbdc17c2bf9eb2b~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730076199814861297\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"45\",\"formatted_price\":\"$45\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"45\",\"formatted_price\":\"$45\"},\"promoted_product_num\":\"124376\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d41oc5vog65r757lbpbg\",\"duration\":59.001,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/okAkrE46pEBdDyX2ADB0QpfAFCYIVQfRVEpcHu~tplv-noop.image?dr=12525&refresh_token=90218e93&x-expires=1768492035&x-signature=uQ2DFr%2FUrDRrDxm8uSlBfav65Ns%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/7e997a7dd70e53a0815585ddc66ff7b2/69690c03/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oYrUi9fBqI75IV0COh7Xcg5cDArAxiMyiQCLEA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&br=774&bt=387&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTU3NmllZDxlZzRlOTs8N0BpanNvOHU5cjhyNzMzaTczNEBeMGMzYWItNjAxXzAtNV9jYSNfXzQ0MmRzYC5hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/7e997a7dd70e53a0815585ddc66ff7b2/69690c03/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oYrUi9fBqI75IV0COh7Xcg5cDArAxiMyiQCLEA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&br=774&bt=387&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTU3NmllZDxlZzRlOTs8N0BpanNvOHU5cjhyNzMzaTczNEBeMGMzYWItNjAxXzAtNV9jYSNfXzQ0MmRzYC5hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"url_expire\":1768492035,\"width\":480,\"height\":854,\"file_hash\":\"e682e517c40142532b6bbe314acdd257\",\"format\":\"\",\"size\":2923553,\"bitrate\":396407,\"video_quality\":\"lowest\"}]},\"name\":\"Esto lo va dejar enamorado como quedé yo además del precio valla por el suyo q no se va arrepentir#Tips \",\"release_date\":\"1761838763\",\"item_id\":\"7567039820459953439\",\"like_cnt\":29,\"play_cnt\":506,\"comment_cnt\":14,\"video_products\":[{\"name\":\"Orisha Bracelet Orunla Ilde Stainless Steel 8.25\\\" (21cm) Chain Length\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/c159eae61eb541de86f00783753af643~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729533991005098626\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"19.99\",\"formatted_price\":\"$19.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"19.99\",\"formatted_price\":\"$19.99\"},\"promoted_product_num\":\"103\",\"status\":2}]},{\"video\":{\"id\":\"v15044gf0000d3sn3efog65jb4e3numg\",\"duration\":59.001,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oMP8qQzgGDrNuC56AIeZARCevLZH2RIIeN0jTy~tplv-noop.image?dr=12525&refresh_token=c27f8b1d&x-expires=1768492035&x-signature=KfK42zz05goNwozFSwCUVPxBYYY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/00431f51cc1c7aa6ab44f297529adb46/69690c03/video/tos/useast8/tos-useast8-pve-0068-tx2/oYFGtDOReAG3Ie5QEmjXjjcCqt5fEjhBIstAID/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&br=838&bt=419&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTtpOTU4ZmlmNztkaWZmZUBpang2N205cmhxNjMzaTczNEA0MDIzYTRgX2AxLzIzLi9hYSNqa2JfMmRjMHBhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/00431f51cc1c7aa6ab44f297529adb46/69690c03/video/tos/useast8/tos-useast8-pve-0068-tx2/oYFGtDOReAG3Ie5QEmjXjjcCqt5fEjhBIstAID/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&br=838&bt=419&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTtpOTU4ZmlmNztkaWZmZUBpang2N205cmhxNjMzaTczNEA0MDIzYTRgX2AxLzIzLi9hYSNqa2JfMmRjMHBhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"url_expire\":1768492035,\"width\":480,\"height\":854,\"file_hash\":\"d48066b8286aa55a6874333ef178b7c3\",\"format\":\"\",\"size\":3170965,\"bitrate\":429954,\"video_quality\":\"lowest\"}]},\"name\":\"Parches de metabolismo tres tipo y lo mejor q te los puedes poner los tres junto #creatorsearchinsights2025 \",\"release_date\":\"1761178315\",\"item_id\":\"7564203181140397343\",\"like_cnt\":26,\"play_cnt\":354,\"comment_cnt\":14,\"video_products\":[{\"name\":\"Kind Patches Metabolic Trio Bundle, MB Patches + Berberine Patches + Unpuff Patches, Metabolic Support, Clean Energy, Balanced Gut, Digestive Health, Natural Ingredients, 3 Months Supply\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/f3ab814b6421420f92af2f053909dc4c~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731749473462227501\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"45\",\"formatted_price\":\"$45\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"45\",\"formatted_price\":\"$45\"},\"promoted_product_num\":\"64521\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"is_authorized\":false,\"status\":0},\"med_gmv_revenue\":{\"is_authorized\":false,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":1525,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"is_authorized\":false,\"status\":0},\"live_gmv\":{\"is_authorized\":false,\"status\":0},\"ec_video_engagement\":{\"value\":1399,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"229\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"162\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"274\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"0-10\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"4327\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"162\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"274\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.3\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494010558164862549\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"dj.foof\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"dj.foof🦋🐚🫧🌷\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-maliva-avt-0068/7327948915260489734~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=d801f314&x-expires=1768640400&x-signature=Im9aY2IGOXUJ9xZEpZYxhQQpg48%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-maliva-avt-0068/7327948915260489734~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=4f864fcf&x-expires=1768640400&x-signature=JCuQjd9KCuNv9oc0fJLUutrCVpo%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"633138\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"8852\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d45bjpfog65r94807960\",\"duration\":43.267,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oMfIECzSM7yxQkRKpEAXITAuABi3i0AVhDBqHi~tplv-noop.image?dr=12525&refresh_token=21f05705&x-expires=1768492019&x-signature=JxwrCl4l7aiu15qUUyDnvd7RsQg%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/e26a5a915b524a8b7dfa1a162087fdf4/69690bf3/video/tos/useast8/tos-useast8-ve-0068c003-tx2/osAKz0RSiHbVAiZ8DQqIpAiuqyBhAMB7CE4fIp/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=626&bt=313&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OTRmaGk7OGVlaWkzO2VpNUBpMzwzN3U5cnNlNzMzaTczNEA0MWMwX2MtXjExLi4yXjRhYSMzNDU2MmRjZzJhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/e26a5a915b524a8b7dfa1a162087fdf4/69690bf3/video/tos/useast8/tos-useast8-ve-0068c003-tx2/osAKz0RSiHbVAiZ8DQqIpAiuqyBhAMB7CE4fIp/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=626&bt=313&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OTRmaGk7OGVlaWkzO2VpNUBpMzwzN3U5cnNlNzMzaTczNEA0MWMwX2MtXjExLi4yXjRhYSMzNDU2MmRjZzJhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"url_expire\":1768492019,\"width\":480,\"height\":854,\"file_hash\":\"ce51eeedafbad96defa9820825d430b6\",\"format\":\"\",\"size\":1736404,\"bitrate\":321058,\"video_quality\":\"lowest\"}]},\"name\":\"HOW ARE THESE JEANS SO PERFECT\",\"release_date\":\"1762311031\",\"item_id\":\"7569068201728855327\",\"like_cnt\":59750,\"play_cnt\":4542998,\"comment_cnt\":286,\"video_products\":[{\"name\":\"LEVI'S Superlow Womens Loose Jeans - Twisted Vibe\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/e50b954ab8cc4c659bfb93bebc9bc9eb~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731756228606398901\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"69.99\",\"formatted_price\":\"$69.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"69.99\",\"formatted_price\":\"$69.99\"},\"promoted_product_num\":\"4980\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d458venog65man16bgp0\",\"duration\":39.267,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o4AAcCVRlJQ2jE8jBPIEaKiBBqP3cywViuvRV~tplv-noop.image?dr=12525&refresh_token=e2ef13d1&x-expires=1768492015&x-signature=jqSOzEloqTsje7rI37cREHk7XIw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/3801a59a3c2f5f5bac67eec92ae9e65c/69690bef/video/tos/useast8/tos-useast8-ve-0068c003-tx2/o8jQKAGraywcqlV9E4JARM0SEuVPivBIBQ2iE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2034&bt=1017&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NWk8NjM8aWVmMzo5O2Y3M0BpM2o5cXA5cmg7NzMzaTczNEAwLV8vMTJhXjExLmBhXjJgYSNtXy5eMmRrczJhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/3801a59a3c2f5f5bac67eec92ae9e65c/69690bef/video/tos/useast8/tos-useast8-ve-0068c003-tx2/o8jQKAGraywcqlV9E4JARM0SEuVPivBIBQ2iE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2034&bt=1017&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NWk8NjM8aWVmMzo5O2Y3M0BpM2o5cXA5cmg7NzMzaTczNEAwLV8vMTJhXjExLmBhXjJgYSNtXy5eMmRrczJhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"url_expire\":1768492015,\"width\":720,\"height\":1280,\"file_hash\":\"aad99594417a07326d0e6cf29f6f9a5a\",\"format\":\"\",\"size\":5115270,\"bitrate\":1042151,\"video_quality\":\"normal\"}]},\"name\":\"the perfect wedding guest dress!!🍂☕️🧸\",\"release_date\":\"1762299849\",\"item_id\":\"7569020147126603039\",\"like_cnt\":33815,\"play_cnt\":4740876,\"comment_cnt\":180,\"video_products\":[{\"name\":\"OYS Women's Sexy One Shoulder Satin High Split Cocktail Fit Wedding Party Maxi Formal Dress\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/f226348061c04cefa97565b64e479038~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729467441089778277\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"59.99\",\"formatted_price\":\"$59.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"59.99\",\"formatted_price\":\"$59.99\"},\"promoted_product_num\":\"116867\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4lj7b7og65i74k2glng\",\"duration\":23.467,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ooRPHzBOorBIEAVVjKwrSiTyvBoSNiEaAsg6t~tplv-noop.image?dr=12525&refresh_token=fcd04136&x-expires=1768491999&x-signature=S0vCRCJ5guPWScvnl3P8U%2BGM%2FwY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/d401017407ee90c707ae95ec4dd81352/69690bdf/video/tos/useast8/tos-useast8-pve-0068-tx2/o4YSyErioAdVaBg4oSNvsV2GIR2OrEEzABPiN/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=570&bt=285&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDs8OmQzNGY2ZTVnNzg3NkBpam81N2w5cmVtNzMzaTczNEBjLy5iXjIzNi4xYWBgMS00YSNrZGg0MmQ0NGlhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/d401017407ee90c707ae95ec4dd81352/69690bdf/video/tos/useast8/tos-useast8-pve-0068-tx2/o4YSyErioAdVaBg4oSNvsV2GIR2OrEEzABPiN/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=570&bt=285&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDs8OmQzNGY2ZTVnNzg3NkBpam81N2w5cmVtNzMzaTczNEBjLy5iXjIzNi4xYWBgMS00YSNrZGg0MmQ0NGlhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768491999,\"width\":480,\"height\":854,\"file_hash\":\"56525b8d67b462cbeb5e5edd43933e57\",\"format\":\"\",\"size\":859009,\"bitrate\":292839,\"video_quality\":\"lowest\"}]},\"name\":\"one of the BEST sets i’ve ever gotten from tiktok\",\"release_date\":\"1764439682\",\"item_id\":\"7578210649998642463\",\"like_cnt\":12982,\"play_cnt\":3588751,\"comment_cnt\":110,\"video_products\":[{\"name\":\"MFVIM Women's Two-Piece Sports Set, Comfortable Activewear for Fitness and Gym, Athletic Clothing for Everyday Use Summer Sportswear Yoga Bottoms Sporty Casual Seamless\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/b7eddbce976648ec98e57d0a96820f03~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729468042116830231\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"42.99\",\"formatted_price\":\"$42.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"75.99\",\"formatted_price\":\"$75.99\"},\"promoted_product_num\":\"9750\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"29574\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"869911.05\",\"symbol\":\"$\",\"format\":\"$869.9K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_601352\",\"name\":\"Shoes\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":162,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"868582.98\",\"symbol\":\"$\",\"format\":\"$868.6K\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":146,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"68025\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"8792\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"8852\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$150K+\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"1K+\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"18-24\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"8139\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"8792\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"8852\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"18-24\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.2\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"value\":[{\"starling_key\":\"vertical_creator_pro_tag_option_fashion_and_style\"}],\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495865443031550514\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"lillyhig\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Lilly Hig\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/a7cb4438b988e754c81ba54925fa9bda~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=1ad58301&x-expires=1768640400&x-signature=HVTMb3Ri7wYkNV%2FmqFY%2FTMHnkUY%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/a7cb4438b988e754c81ba54925fa9bda~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=37abcde5&x-expires=1768640400&x-signature=u669OcSe5q7Xk3YXMdePCcRGhrc%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"16244\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"870\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d448jpnog65rptib2gh0\",\"duration\":29.767,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oUCAEBEIfSDFRhAhnnqiFUREf3VCQpQEElIms7~tplv-noop.image?dr=12525&refresh_token=44829699&x-expires=1768492005&x-signature=fq%2F4ZG%2BSgwI2ECdlN68XyX9R4QY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/d2c786b1b52ef36d853c285b3a8b5995/69690be5/video/tos/useast8/tos-useast8-ve-0068c003-tx2/okvB2iJEBRAIiZ5ziQEgwaAi27QQIjEVxBSiz/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=590&bt=295&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDdlPDg6Njg4Ozk3Ozw1Z0BpM2pld3U5cnM7NzMzaTczNEBeMGJhYzZhXy4xYl80MDAyYSNlL2ZtMmRrZzFhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/d2c786b1b52ef36d853c285b3a8b5995/69690be5/video/tos/useast8/tos-useast8-ve-0068c003-tx2/okvB2iJEBRAIiZ5ziQEgwaAi27QQIjEVxBSiz/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=590&bt=295&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDdlPDg6Njg4Ozk3Ozw1Z0BpM2pld3U5cnM7NzMzaTczNEBeMGJhYzZhXy4xYl80MDAyYSNlL2ZtMmRrZzFhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"url_expire\":1768492005,\"width\":480,\"height\":854,\"file_hash\":\"0acb8d82668cbbe3561cf3e6a98ff6a2\",\"format\":\"\",\"size\":1127257,\"bitrate\":302954,\"video_quality\":\"lowest\"}]},\"name\":\"How precious is this sweatshirt?! #jesus #fashion #tiktokshopfashion #tiktokshopcreatorpicks #tiktokshopblackfriday \",\"release_date\":\"1762167285\",\"item_id\":\"7568450761722563870\",\"like_cnt\":856,\"play_cnt\":61792,\"comment_cnt\":39,\"video_products\":[{\"name\":\"Christian Jesus Leopard Sweatshirt, Cheetah Print Bible Verse , Trendy Faith Apparel Gift, Jesus Loves You, The Way The Truth The Life\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/2d64befffe4b4da9955b7b3781e9effd~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731919314644603637\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"20.99\",\"formatted_price\":\"$20.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"37.99\",\"formatted_price\":\"$37.99\"},\"promoted_product_num\":\"943\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d5668vfog65mfmn4lreg\",\"duration\":100,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o4EsfADTdZZEjFR5pf79RBVEAENMBaPIuWsGEK~tplv-noop.image?dr=12525&refresh_token=3f061fa2&x-expires=1768492076&x-signature=oWR4Kd1nAbeI5KBlCNKT%2FuvPuhU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/dc852dafa37adb0281bc6cf19a5d6afe/69690c2c/video/tos/useast8/tos-useast8-ve-0068c003-tx2/ooZE5ZKmIfsEVATB7MrDfEdRR9AFQlGADDlpEa/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=586&bt=293&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OWVlMzY3ZjY7aDg5NjVnNUBpanU3cHA5cnk5ODMzaTczNEBgX2MtYS9hXzAxNTRiLWMxYSNiaWtjMmRjNTNhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00090000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/dc852dafa37adb0281bc6cf19a5d6afe/69690c2c/video/tos/useast8/tos-useast8-ve-0068c003-tx2/ooZE5ZKmIfsEVATB7MrDfEdRR9AFQlGADDlpEa/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=586&bt=293&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OWVlMzY3ZjY7aDg5NjVnNUBpanU3cHA5cnk5ODMzaTczNEBgX2MtYS9hXzAxNTRiLWMxYSNiaWtjMmRjNTNhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00090000\",\"url_expire\":1768492076,\"width\":576,\"height\":1024,\"file_hash\":\"881bdbd281ec31abf922a745872c7c35\",\"format\":\"\",\"size\":3758882,\"bitrate\":300710,\"video_quality\":\"lowest\"}]},\"name\":\"Okay but I’m obsessed 🫶🏼 what do you think? @Old Navy #fyp #barreljeans #oldnavy #holidayhustle #tiktokholidaycontest \",\"release_date\":\"1766614579\",\"item_id\":\"7587551750765251870\",\"like_cnt\":392,\"play_cnt\":37206,\"comment_cnt\":51,\"video_products\":[{\"name\":\"Old Navy Women's Wow High-Waisted Barrel Ankle Jeans\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ba486a4f275f41d3b6e6c5a5b86637d0~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732088238294340263\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"19\",\"formatted_price\":\"$19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"44.99\",\"formatted_price\":\"$44.99\"},\"promoted_product_num\":\"2096\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d48s8ofog65i6q7r4050\",\"duration\":50,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oskeLRREchEAE2HpAbBIRxRFGfc40rEVEDKBAy~tplv-noop.image?dr=12525&refresh_token=ce0f6fda&x-expires=1768492026&x-signature=sulN5gfOppW0JLeiO4CuLdX6tcY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/40c92558890feb608d3834ee12bee06c/69690bfa/video/tos/useast8/tos-useast8-ve-0068c002-tx2/o4KDFB9bcEkFAoRjQgESEfUhViEkpIARfEkRAn/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=670&bt=335&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZmhoaTtpNzRlNTszM2doaUBpMzN1dGw5cnJ2NzMzaTczNEBeNi8uMS0uNmExNjNiM15gYSMyMTQzMmRjNTVhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/40c92558890feb608d3834ee12bee06c/69690bfa/video/tos/useast8/tos-useast8-ve-0068c002-tx2/o4KDFB9bcEkFAoRjQgESEfUhViEkpIARfEkRAn/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=670&bt=335&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZmhoaTtpNzRlNTszM2doaUBpMzN1dGw5cnJ2NzMzaTczNEBeNi8uMS0uNmExNjNiM15gYSMyMTQzMmRjNTVhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"url_expire\":1768492026,\"width\":480,\"height\":854,\"file_hash\":\"2c51a09197aa8c312e41005f32530c11\",\"format\":\"\",\"size\":2144215,\"bitrate\":343074,\"video_quality\":\"lowest\"}]},\"name\":\"I love a good funny tee! And who doesn’t want to be comfortable on Thanksgiving?!?  #thanksgiving #funny #tiktokshopholidayhaul #tiktokshopblackfriday #tiktokshopcybermonday \",\"release_date\":\"1762772090\",\"item_id\":\"7571048118305819934\",\"like_cnt\":187,\"play_cnt\":53197,\"comment_cnt\":9,\"video_products\":[{\"name\":\"Thanksgiving Funny Comfort Colors, Distressed Turkey Shirt , Pies Before Guys, Talk Turkey to Me, Family Group Fall Shirts\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/d192745581cf47a2bc40408be416aadc~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731860183290581749\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"13.99\",\"formatted_price\":\"$13.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"26.99\",\"formatted_price\":\"$26.99\"},\"promoted_product_num\":\"1451\",\"status\":2}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"202\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"4608.41\",\"symbol\":\"$\",\"format\":\"$4,608.41\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":250,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"4372.47\",\"symbol\":\"$\",\"format\":\"$4,372.47\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":144,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"1090\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"484\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"870\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7117\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"484\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"870\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.7\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7496186149528374150\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"girls_shoplingerie\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"girls_shoplingerie\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/ef173c338039e551d5837dde61bc033b~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=5224c3dd&x-expires=1768640400&x-signature=0IYDGJGq29xzBUz%2BpmkcTqago8A%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/ef173c338039e551d5837dde61bc033b~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=aa669570&x-expires=1768640400&x-signature=sDzjCch%2Fr%2BjtFos6t0yh%2BLnIpzw%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"1494\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"417\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d4ok69fog65qvmv5mv1g\",\"duration\":9.473,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oQvwiAtEoqHelIgSRYLeICAH8hkJZMQ9jfGrIL~tplv-noop.image?dr=12525&refresh_token=f0c0b1d1&x-expires=1768491985&x-signature=K%2BI3b8nKwDjCBbKUviukPwmLRMY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/0422c4750bcb4d563980425105a440cb/69690bd1/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oUIjywExrQd3FbG2CAeDLeAqLZIf5TDLIoYSQI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1220&bt=610&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=MzU4NWU6OjVpZTNnZDtkaEBpank4cHQ5cjxuNzMzaTczNEBiNjEzYmMxXy4xMmBiYmMuYSMuanNzMmRjM2xhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/0422c4750bcb4d563980425105a440cb/69690bd1/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oUIjywExrQd3FbG2CAeDLeAqLZIf5TDLIoYSQI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1220&bt=610&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=MzU4NWU6OjVpZTNnZDtkaEBpank4cHQ5cjxuNzMzaTczNEBiNjEzYmMxXy4xMmBiYmMuYSMuanNzMmRjM2xhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491985,\"width\":576,\"height\":1024,\"file_hash\":\"08ef3be9525daade38383ee949cd5f46\",\"format\":\"\",\"size\":740436,\"bitrate\":625302,\"video_quality\":\"lowest\"}]},\"name\":\"A soft three-piece set! Wear the jacket when it's cold, and the vest when it's warm! 💕😍 #tiktokshop #fyp #sleepwear #twopieceset #pjs \",\"release_date\":\"1764836233\",\"item_id\":\"7579913610533621023\",\"like_cnt\":1238,\"play_cnt\":83988,\"comment_cnt\":5,\"video_products\":[{\"name\":\"Women's Solid Color Plush Three-piece Pyjama Set, Fluffy Pajamas, Casual Comfy V Neck Cami Top & Hooded Coat & Tie Front Shorts Loungewear Set, Pajama Sets Women, Women's Sleepwear for Winter, Fluffy Pajamas, Cute Pajama Sets, Sleep Sets, Womenswear, Pjs\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/5ea43835d8f64201af2d521f80b3df0b~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729566073096933845\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"30.89\",\"formatted_price\":\"$30.89\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"30.89\",\"formatted_price\":\"$30.89\"},\"promoted_product_num\":\"12311\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4j5epfog65l0n4etgsg\",\"duration\":10.3,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oofFrllVJBEFHOyIDQddqdAhhCdAfph5DERMEJ~tplv-noop.image?dr=12525&refresh_token=3d5f5007&x-expires=1768491986&x-signature=xAYUkCuCIOOsn0cbm5dDPPsjfU4%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/6dc5dd8a10cb0cf449cdf0708b28328b/69690bd2/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oMAEWAhMUCpIfBlgqBDldQlWVJsREdFAlfHEy5/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1118&bt=559&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=O2RnPGVoOzk3ZjU2NDlpN0BpampocW85cnM4NzMzaTczNEAzMTReYWAxNjExNTFjYGBgYSNwcTEtMmRjYmdhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/6dc5dd8a10cb0cf449cdf0708b28328b/69690bd2/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oMAEWAhMUCpIfBlgqBDldQlWVJsREdFAlfHEy5/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1118&bt=559&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=O2RnPGVoOzk3ZjU2NDlpN0BpampocW85cnM4NzMzaTczNEAzMTReYWAxNjExNTFjYGBgYSNwcTEtMmRjYmdhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491986,\"width\":480,\"height\":854,\"file_hash\":\"d10bdd380b012d2460ed1069eff0eabd\",\"format\":\"\",\"size\":737576,\"bitrate\":572874,\"video_quality\":\"lowest\"}]},\"name\":\"Cute underwear💕 #tiktokshop #fyp #pajamas #twopieceset #underwater \",\"release_date\":\"1764120570\",\"item_id\":\"7576840100613459231\",\"like_cnt\":180,\"play_cnt\":35869,\"comment_cnt\":2,\"video_products\":[{\"name\":\"Women's Leopard Print & Solid Color Panties, Comfortable Seamless Triangle Underwear, V-Shape Pull-Up Waistband, Floral Pattern\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/6a1859a6b63e40aabb33c9df2414a545~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731871967485137527\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"7.39\",\"formatted_price\":\"$7.39\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"18.69\",\"formatted_price\":\"$18.69\"},\"promoted_product_num\":\"3063\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3p0dn7og65rptuou3d0\",\"duration\":10.541,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ogNyLU7PVVPE3PRiI3CazDACBBIaRi2GkB5AE~tplv-noop.image?dr=12525&refresh_token=ec31c12d&x-expires=1768491986&x-signature=gv55n8%2B9wnCBwn912ggU%2BTbsVlQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/21e1ae336c7a9d091f3cfa9ede199d41/69690bd2/video/tos/useast8/tos-useast8-pve-0068-tx2/ooaJBYP7I3BPiDmIWGyz2R7aEPCEAPiAsVD3h/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=908&bt=454&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aGhnaDtkOmhkZWRmPGZoOUBpMzZyd3U5cnEzNjMzaTczNEBiMS4yM2FjX2MxLTFgLTExYSNhcnJtMmQ0YW1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/21e1ae336c7a9d091f3cfa9ede199d41/69690bd2/video/tos/useast8/tos-useast8-pve-0068-tx2/ooaJBYP7I3BPiDmIWGyz2R7aEPCEAPiAsVD3h/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=908&bt=454&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aGhnaDtkOmhkZWRmPGZoOUBpMzZyd3U5cnEzNjMzaTczNEBiMS4yM2FjX2MxLTFgLTExYSNhcnJtMmQ0YW1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491986,\"width\":480,\"height\":854,\"file_hash\":\"3cefba1fce2e377340d3b97431d5faea\",\"format\":\"\",\"size\":612894,\"bitrate\":465150,\"video_quality\":\"lowest\"}]},\"name\":\"So cute 🥰 #fyp  #pajamas  #twopieceset  #tiktokshopfalldealsforyou  #cute \",\"release_date\":\"1760692272\",\"item_id\":\"7562115658453060894\",\"like_cnt\":66,\"play_cnt\":16122,\"comment_cnt\":2,\"video_products\":[{\"name\":\"Women's Cartoon Cat Print Pajama Set, 3 Piece Sleepwear Collection, Casual Fitted Nightwear for All Seasons, Loungewear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/842e5b81b0784ba1ad970bef8c39fbf9~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731704154073305701\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"30.79\",\"formatted_price\":\"$30.79\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"30.79\",\"formatted_price\":\"$30.79\"},\"promoted_product_num\":\"756\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"431\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"6887\",\"symbol\":\"$\",\"format\":\"$6,887\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":75,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"6887\",\"symbol\":\"$\",\"format\":\"$6,887\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":61,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"2144\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"417\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"417\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"45-54\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"6617\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"417\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"417\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"45-54\",\"35-44\",\"55+\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.6\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494213467448641426\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"etcegggvxj8\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"etcegggvxj8\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/784b93296aa0c36fd8e673a465666d96~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=5311339c&x-expires=1768640400&x-signature=HMTahnUXypy1Z65sDyOBwB04Sg0%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/784b93296aa0c36fd8e673a465666d96~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=923222e2&x-expires=1768640400&x-signature=a7n0RTpGnRKf0ubkgf0U9AYV4KE%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"480\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"524\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d57c17vog65rfm9h37p0\",\"duration\":17.787,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ogUGkz6fI5dHQULAlAPAYwweeJtGFfROOIQ8yj~tplv-noop.image?dr=12525&refresh_token=3033de39&x-expires=1768491993&x-signature=29D750D05%2F3B4WhkzPmo%2FAW82Jg%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/d53e71895b64545fba4248ebe20863e1/69690bd9/video/tos/useast8/tos-useast8-ve-0068c003-tx2/ocZUOARpYqQuMEESJnFfICADnwdREyIfjBD2If/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1168&bt=584&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=MzYzN2Y5ZTxmaDppNDgzNEBpMzprcHU5cjpmODMzaTczNEAtYTBiLi5hNjExLjIzNV4tYSNtMDZjMmRzLjRhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/d53e71895b64545fba4248ebe20863e1/69690bd9/video/tos/useast8/tos-useast8-ve-0068c003-tx2/ocZUOARpYqQuMEESJnFfICADnwdREyIfjBD2If/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1168&bt=584&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=MzYzN2Y5ZTxmaDppNDgzNEBpMzprcHU5cjpmODMzaTczNEAtYTBiLi5hNjExLjIzNV4tYSNtMDZjMmRzLjRhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768491993,\"width\":576,\"height\":1024,\"file_hash\":\"3c9799c4013b664e2bf25877ba9ecf69\",\"format\":\"\",\"size\":1330126,\"bitrate\":598246,\"video_quality\":\"lowest\"}]},\"name\":\"#tiktokshopholidayhaul #tiktokshop #fyp #spotlightfinds #bra \",\"release_date\":\"1766768963\",\"item_id\":\"7588214793253784863\",\"like_cnt\":957,\"play_cnt\":273792,\"comment_cnt\":5,\"video_products\":[{\"name\":\"4-piece seamless women's bra set - Full cup design, lifts and supports the back, lightweight and breathable, wire-free, stylish V-neck, suitable for yoga, fitness and everyday wear, fashionable sports bra; comfortable fit; sports top bra\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/87dda8cc87eb4799a7822571949b5756~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732077203276075999\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"38.98\",\"formatted_price\":\"$38.98\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"38.98\",\"formatted_price\":\"$38.98\"},\"promoted_product_num\":\"4253\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d50iq0fog65volvle90g\",\"duration\":18.368,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/okf9tB0ESBEJQsqpAxCIRLXFZfV1qmEVEDBBAX~tplv-noop.image?dr=12525&refresh_token=9f8bceb7&x-expires=1768491994&x-signature=JifdradEqY%2B%2FbXbe6XEHMbjXK54%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/a953311fbabe52528b5c3d8e588b17e7/69690bda/video/tos/useast8/tos-useast8-pve-0068-tx2/oIf5LSBVQBEF9rBIQEXQfBAZJx0Arp5XDERBE1/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1126&bt=563&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Ojw3ZGY3OztlNTZkNmc1OUBpajxvb3k5cjNsODMzaTczNEBeNWE0NDE1Xi4xNmAwLzQ0YSMtYnNsMmRjbi1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/a953311fbabe52528b5c3d8e588b17e7/69690bda/video/tos/useast8/tos-useast8-pve-0068-tx2/oIf5LSBVQBEF9rBIQEXQfBAZJx0Arp5XDERBE1/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1126&bt=563&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Ojw3ZGY3OztlNTZkNmc1OUBpajxvb3k5cjNsODMzaTczNEBeNWE0NDE1Xi4xNmAwLzQ0YSMtYnNsMmRjbi1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768491994,\"width\":576,\"height\":1024,\"file_hash\":\"e4b4fbf4dbd02ce442a7a3bc63f64b90\",\"format\":\"\",\"size\":1324168,\"bitrate\":576728,\"video_quality\":\"lowest\"}]},\"name\":\"#tiktokshopholidayhaul #ootd #pants #spotlightfinds #girls \",\"release_date\":\"1765879472\",\"item_id\":\"7584394156697603358\",\"like_cnt\":346,\"play_cnt\":53167,\"comment_cnt\":12,\"video_products\":[{\"name\":\"4pcs Cozy Thermal Pants - Soft, Comfy, Slim-Fit, Plush Lined, Elastic Waistband, Warm, Fleece-Lined, Winter Lingerie & Sleepwear for Women\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/cbcd9bcdfa4942c0aa4d5e47f4962d61~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731617186437632274\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"30\",\"formatted_price\":\"$30\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"60\",\"formatted_price\":\"$60\"},\"promoted_product_num\":\"1751\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d59te0nog65kv7339nlg\",\"duration\":19.32,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oMycIVreCDAF2cATs9FpERpK5E0A3BuUIYfnTE~tplv-noop.image?dr=12525&refresh_token=0066bca1&x-expires=1768491995&x-signature=1mW0mFl5NUAgbLKpODtVkcAhm%2FQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/b8a8b0119b8383f285a63046bdc96281/69690bdb/video/tos/useast8/tos-useast8-pve-0068-tx2/oIBeAsvUbFKI8E9gQpEDpLfWIcSQAcx4EVnCpR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3578&bt=1789&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OTs1NTo4NjdkOWZkNDw8ZEBpanE2Om45cjN3ODMzaTczNEBgXy81LS82NmExMF9gXy8xYSNpNjBzMmRrYjZhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/b8a8b0119b8383f285a63046bdc96281/69690bdb/video/tos/useast8/tos-useast8-pve-0068-tx2/oIBeAsvUbFKI8E9gQpEDpLfWIcSQAcx4EVnCpR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3578&bt=1789&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OTs1NTo4NjdkOWZkNDw8ZEBpanE2Om45cjN3ODMzaTczNEBgXy81LS82NmExMF9gXy8xYSNpNjBzMmRrYjZhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768491995,\"width\":720,\"height\":1280,\"file_hash\":\"1d1f95b0a25533c072f5d80167469a57\",\"format\":\"\",\"size\":4425372,\"bitrate\":1832452,\"video_quality\":\"normal\"}]},\"name\":\"#tiktokshopholidayhaul #tiktokshop #fyp #fashion #bra \",\"release_date\":\"1767102546\",\"item_id\":\"7589647442082024735\",\"like_cnt\":87,\"play_cnt\":44786,\"comment_cnt\":0,\"video_products\":[{\"name\":\"4-piece seamless women's bra set - Full cup design, lifts and supports the back, lightweight and breathable, wire-free, stylish V-neck, suitable for yoga, fitness and everyday wear, fashionable sports bra; comfortable fit; sports top bra\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/87dda8cc87eb4799a7822571949b5756~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732077203276075999\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"38.98\",\"formatted_price\":\"$38.98\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"38.98\",\"formatted_price\":\"$38.98\"},\"promoted_product_num\":\"4253\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"605\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"12736.69\",\"symbol\":\"$\",\"format\":\"$12.7K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_824328\",\"name\":\"Menswear & Underwear\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":52,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"12736.69\",\"symbol\":\"$\",\"format\":\"$12.7K\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":55,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"10446\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"524\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"524\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"6918\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"524\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"524\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\",\"55+\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"2.0\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7496117449514060046\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"sunshinespicequeen\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"sunshinespicequeen\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/68a4da52dd85b9b1956a2bf6e7ed7d6a~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=fced590e&x-expires=1768640400&x-signature=axatQvWxd84Ddd8HJNPMRbihNxs%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/68a4da52dd85b9b1956a2bf6e7ed7d6a~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=33aa418a&x-expires=1768640400&x-signature=9uWeMcIhoRJA6snkoxLqQ6ZeQHk%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"6269\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"98\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d5aeclfog65ov7gk62qg\",\"duration\":30.634,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oMOpBUWyEVxFDR5ANg7EV18lRZeFDDBxEfAICS~tplv-noop.image?dr=12525&refresh_token=3a590235&x-expires=1768492006&x-signature=4L%2FLHgtNTQq9ABVH52bhofxpYbQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/948870baf38c960d6ebf0af33939d74a/69690be6/video/tos/useast5/tos-useast5-ve-0068c004-tx/oYCURO1BpISBEkDx5BVFUxZEEFDQ8jADVgf6xe/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=842&bt=421&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTc5NjczaDU7ZThkNjpmO0BpajVuOnI5cm9oODMzZzczNEAuMWAxNS4tNTAxNi5hYjQxYSNuM2RzMmRjYF5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/948870baf38c960d6ebf0af33939d74a/69690be6/video/tos/useast5/tos-useast5-ve-0068c004-tx/oYCURO1BpISBEkDx5BVFUxZEEFDQ8jADVgf6xe/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=842&bt=421&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTc5NjczaDU7ZThkNjpmO0BpajVuOnI5cm9oODMzZzczNEAuMWAxNS4tNTAxNi5hYjQxYSNuM2RzMmRjYF5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"url_expire\":1768492006,\"width\":576,\"height\":1024,\"file_hash\":\"8efdf1a81b43417bcef5671dffd43b68\",\"format\":\"\",\"size\":1651277,\"bitrate\":431227,\"video_quality\":\"lowest\"}]},\"name\":\"Plus sized #plussize #curygirl #bra #lacsperbra #TikTokCreatorSearchInsightsIncentive @Lacsper-Bras \",\"release_date\":\"1767171856\",\"item_id\":\"7589945262588628237\",\"like_cnt\":21,\"play_cnt\":1466,\"comment_cnt\":3,\"video_products\":[{\"name\":\"Lacsper Daisy minimizer Bra Floral Lace Unlined Comfort Non-Padded Full Coverage Plus Size Underwire with Supportive Under Band Comfortable Fit\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/1082e3a07c1045bdac0be90b4b92989f~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731589895165612280\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"promoted_product_num\":\"9809\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4g0up7og65iquglc8b0\",\"duration\":37.266,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oEA4gGTHWFSyDE2iBPIEagiBBATs6WIUiZPg1~tplv-noop.image?dr=12525&refresh_token=520a5520&x-expires=1768492013&x-signature=EU5nx%2FuH66dEekzlUNSjaLuoTso%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/7cc22d4214d47be8b02a9cb79e44175b/69690bed/video/tos/useast5/tos-useast5-pve-0068-tx/oYAQKWDBgiE3YH1gZaB64UPP3EySQAWZBiIIF/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=552&bt=276&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTQ1NzhnNWZnOmllOjdoZEBpMztveGw5cnMzNzMzZzczNEBeYl5iL2AtXmAxNTItNWM1YSNfYGRuMmQ0cmRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/7cc22d4214d47be8b02a9cb79e44175b/69690bed/video/tos/useast5/tos-useast5-pve-0068-tx/oYAQKWDBgiE3YH1gZaB64UPP3EySQAWZBiIIF/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=552&bt=276&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTQ1NzhnNWZnOmllOjdoZEBpMztveGw5cnMzNzMzZzczNEBeYl5iL2AtXmAxNTItNWM1YSNfYGRuMmQ0cmRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"url_expire\":1768492013,\"width\":480,\"height\":854,\"file_hash\":\"6eb990f5e9c735d8dfef3aa21645274f\",\"format\":\"\",\"size\":1317696,\"bitrate\":282873,\"video_quality\":\"lowest\"}]},\"name\":\"Hsia zebra bra #minimizerbra #hsiabra #breathablebra #fullcoveragebra #fullsupportbra \",\"release_date\":\"1763708776\",\"item_id\":\"7575071145196588302\",\"like_cnt\":23,\"play_cnt\":831,\"comment_cnt\":9,\"video_products\":[{\"name\":\"HSIA Zebra Wild Breathable Unlined Plus Size Soft Mesh No Padding Underwire Women Bra\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ebf129a457da46e0a79f3a53aed26760~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729550712368566470\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"34.99\",\"formatted_price\":\"$34.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"34.99\",\"formatted_price\":\"$34.99\"},\"promoted_product_num\":\"65733\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4nuvlnog65jukk43tj0\",\"duration\":32.234,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/okvlBvz1CiJpI9799B0wiASvEaIfAOBmUBkMh7~tplv-noop.image?dr=12525&refresh_token=83bdcb2c&x-expires=1768492008&x-signature=ZGdfR6hnMZE%2BehESqvxuED7PWHE%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/2b70138328244d44def3451e371bd8c6/69690be8/video/tos/useast5/tos-useast5-ve-0068c003-tx/oMb7ePAaIgfQqKUkAxA3i3Af49RyjFOIsYfGvs/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=698&bt=349&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODtoOTU7ZDNpZDg4aDVmNEBpM3c3bm05cm94NzMzZzczNEBeLmNfLTMtNl8xYDE1MzA2YSNnMGhyMmRrc2thLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/2b70138328244d44def3451e371bd8c6/69690be8/video/tos/useast5/tos-useast5-ve-0068c003-tx/oMb7ePAaIgfQqKUkAxA3i3Af49RyjFOIsYfGvs/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=698&bt=349&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODtoOTU7ZDNpZDg4aDVmNEBpM3c3bm05cm94NzMzZzczNEBeLmNfLTMtNl8xYDE1MzA2YSNnMGhyMmRrc2thLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"url_expire\":1768492008,\"width\":576,\"height\":1024,\"file_hash\":\"53407ef66e681ad212d459dbbe80899f\",\"format\":\"\",\"size\":1441480,\"bitrate\":357753,\"video_quality\":\"lowest\"}]},\"name\":\"Tummy control yoga pants #gymworkout #tiktokmademebuyit #parati #brxllegging #tiktokholidayhaul @BRXL \",\"release_date\":\"1764749274\",\"item_id\":\"7579540332770102542\",\"like_cnt\":7,\"play_cnt\":455,\"comment_cnt\":0,\"video_products\":[{\"name\":\"BRXL High-Waisted Yoga Pants for Women - Seamless Tummy Control fall Outfits& Butt Lifting Workout Leggings  flared leggings leggings #Parati #GymWorkout #TikTokMadeMeBuyIt #outdoorfun#warmupforholiday#tiktokmademebuyit#Christmas costume for women-1\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/bc2b6c265470433c9eb587532306b926~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731106741955235937\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"35.99\",\"formatted_price\":\"$35.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"35.99\",\"formatted_price\":\"$35.99\"},\"promoted_product_num\":\"47307\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"27\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"419.02\",\"symbol\":\"$\",\"format\":\"$419.02\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":689,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"409.03\",\"symbol\":\"$\",\"format\":\"$409.03\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":454,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"201\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"115\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"98\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"6515\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"115\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"98\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.4\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494131457828881702\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"lowkeyliamn\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"lowkeyliamn\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/ee0d7a25868d364cd35439ec0cefdb82~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=73a65df9&x-expires=1768640400&x-signature=v1WA0sEkv3T4t8KT3mpiWdhZ30w%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/ee0d7a25868d364cd35439ec0cefdb82~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=d85fa2f1&x-expires=1768640400&x-signature=aiG44fZ%2BWHPHXYIQwk1vGJ76saQ%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"212\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"307\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d3rp1vvog65lb9sphb4g\",\"duration\":9.367,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/ogQPvRxIPCyDtAjPqMQAnFEHHJDBW7EftfSfXk~tplv-noop.image?dr=12525&refresh_token=d5b21f3d&x-expires=1768491985&x-signature=DmljZCyMRyG5qZakg8cDlf1tPFY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/498f2a15771817b9e9bdb146c29d6fa1/69690bd1/video/tos/useast5/tos-useast5-ve-0068c003-tx/oMz9SIfEBmyD5BkrgifsAHKRYiWnOoDEY1JRC3/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1116&bt=558&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=O2U0Omk5ZmZpPDw7NTQ1aEBpamVzPG85cnlzNjMzZzczNEAwNC4yMjMtNWExMmMtLjNiYSMxZXBfMmRzLm9hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/498f2a15771817b9e9bdb146c29d6fa1/69690bd1/video/tos/useast5/tos-useast5-ve-0068c003-tx/oMz9SIfEBmyD5BkrgifsAHKRYiWnOoDEY1JRC3/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1116&bt=558&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=O2U0Omk5ZmZpPDw7NTQ1aEBpamVzPG85cnlzNjMzZzczNEAwNC4yMjMtNWExMmMtLjNiYSMxZXBfMmRzLm9hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491985,\"width\":480,\"height\":850,\"file_hash\":\"494a325d6ed328a92342adca32e29be9\",\"format\":\"\",\"size\":669980,\"bitrate\":572204,\"video_quality\":\"lowest\"}]},\"name\":\"Hurry and get this soft Highland Cow pajama with a special discount for your Christmas shopping!🎁🥳🎄☃️💗#fyp #TikTokShopCyberMonday #TikTokShopBlackFriday #christmas #highland \",\"release_date\":\"1761055421\",\"item_id\":\"7563675233211682062\",\"like_cnt\":7289,\"play_cnt\":197653,\"comment_cnt\":7,\"video_products\":[{\"name\":\"【Highland cattle】Women's Cartoon Print Pajama Set, Long Sleeve Top & Pants, Elastic Waistband, Comfortable Home Wear, Fall Winter, Loungewear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/6a1d97ed852242f3adecb0a7387e7ab7~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731737804141728287\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"23.29\",\"formatted_price\":\"$23.29\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"23.29\",\"formatted_price\":\"$23.29\"},\"promoted_product_num\":\"2022\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3r3d2nog65hs42qte5g\",\"duration\":10.167,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ogDBPBABLWiEIIxQE5RXiIJua2EvuA29YNiV4~tplv-noop.image?dr=12525&refresh_token=bb011ee2&x-expires=1768491986&x-signature=eUqxORnZ%2BgCBeLcDQe6rEjYNYlw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/e3a88267afe31b4dd8547cbb4c577dd8/69690bd2/video/tos/useast8/tos-useast8-pve-0068-tx2/ogQj0qRAGXchTVssGIg647LfOYvCaAeHIbIUBe/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1192&bt=596&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OmlmOjxmNTpkZmk0ZDkzZkBpamh0N2s5cjU2NjMzaTczNEBgLTJjX14tXjIxYTY1MjMxYSMycS9wMmRrYW9hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/e3a88267afe31b4dd8547cbb4c577dd8/69690bd2/video/tos/useast8/tos-useast8-pve-0068-tx2/ogQj0qRAGXchTVssGIg647LfOYvCaAeHIbIUBe/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1192&bt=596&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OmlmOjxmNTpkZmk0ZDkzZkBpamh0N2s5cjU2NjMzaTczNEBgLTJjX14tXjIxYTY1MjMxYSMycS9wMmRrYW9hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491986,\"width\":480,\"height\":850,\"file_hash\":\"a471bc8697e70669833053e5e5925788\",\"format\":\"\",\"size\":776275,\"bitrate\":610819,\"video_quality\":\"lowest\"}]},\"name\":\"This cute rooster pajama set is on discount ‼️🐣#fyp #TikTokShopCyberMonday #TikTokShopBlackFriday #pajama #christmas \",\"release_date\":\"1760966623\",\"item_id\":\"7563293896525090079\",\"like_cnt\":64,\"play_cnt\":12229,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Women's Casual Pajama Set, Lapel Button Short Sleeve Top & Elastic Waist Shorts, Cartoon Chicken Print, All Seasons Loungewear\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ef2ecd7691b1431798e9264ca723a057~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731639280564671150\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"22.69\",\"formatted_price\":\"$22.69\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"22.69\",\"formatted_price\":\"$22.69\"},\"promoted_product_num\":\"291\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3oq6bfog65hav6l0mv0\",\"duration\":10.1,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oko8PitRQxa8BgrEItzjqEAkCRFqjVf5eAqDME~tplv-noop.image?dr=12525&refresh_token=23fe2438&x-expires=1768491986&x-signature=xvw%2BWOaSLkJe2XpsMnRsBDOmtGg%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/8045e965f3cb9686731c49083016910e/69690bd2/video/tos/useast8/tos-useast8-pve-0068-tx2/ocqjttA8fAQs3M3eSDRo5rB8REEVFExgraMI2i/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=922&bt=461&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDc2OzdpOTM6OztmNWY6OEBpM3BveWs5cmV0NjMzaTczNEAyLzEyLmFgXjIxNjQzMDItYSNzLTNeMmRjM2xhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/8045e965f3cb9686731c49083016910e/69690bd2/video/tos/useast8/tos-useast8-pve-0068-tx2/ocqjttA8fAQs3M3eSDRo5rB8REEVFExgraMI2i/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=922&bt=461&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDc2OzdpOTM6OztmNWY6OEBpM3BveWs5cmV0NjMzaTczNEAyLzEyLmFgXjIxNjQzMDItYSNzLTNeMmRjM2xhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491986,\"width\":480,\"height\":850,\"file_hash\":\"a3e8d3d86e0ad270909b5eabfe38070d\",\"format\":\"\",\"size\":596366,\"bitrate\":472369,\"video_quality\":\"lowest\"}]},\"name\":\"How adorable are these monkeys with bananas and books?😍💗#fyp #TikTokShopCyberMonday #TikTokShopBlackFriday #monkey #monkeybanana \",\"release_date\":\"1760666455\",\"item_id\":\"7562004775559122206\",\"like_cnt\":1259,\"play_cnt\":43560,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Cute Monkey Pajama Set for Women, Long Sleeve & Pants, Elastic Waist, Comfortable Christmas Gift, Fall Winter Home Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/5a9866dad8c240568117ab7f7ac91c39~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731892751408927263\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"24.49\",\"formatted_price\":\"$24.49\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"24.49\",\"formatted_price\":\"$24.49\"},\"promoted_product_num\":\"457\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"174\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"3506.48\",\"symbol\":\"$\",\"format\":\"$3,506.48\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_600154\",\"name\":\"Textiles & Soft Furnishings\"},{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":184,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"3506.48\",\"symbol\":\"$\",\"format\":\"$3,506.48\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":160,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"2724\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"307\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"307\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"45-54\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"5943\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"307\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"307\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"45-54\",\"35-44\",\"55+\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.5\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494030178360002342\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"tiiffancy\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"TIFFANI ✰\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/34b1bf2c58a38f7d427f16095309ab81~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=bf655963&x-expires=1768640400&x-signature=%2B5KBHOIgFLipr6ekGPcNV8nl7So%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=a1d2006b&idc=useast5\"],\"url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/34b1bf2c58a38f7d427f16095309ab81~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=dd4a6145&x-expires=1768640400&x-signature=a8iEQJPru0NPhwNJIshRo31hFRw%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=a1d2006b&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"70032\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"1394\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d4bcdknog65njmedhffg\",\"duration\":13.434,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oEwQNjifQdeIk4LC9tMM8Hej2lAWLOYAShLSQn~tplv-noop.image?dr=12525&refresh_token=9cdb9cf3&x-expires=1768491989&x-signature=1k%2Blg8KOXSsyKJL45Tp4SU2YO38%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/1e78dfc238e6f525ed8741c155b096d5/69690bd5/video/tos/useast5/tos-useast5-ve-0068c003-tx/ok2IAQeUj2NQSAj8tceLAYfln9wMICWlkdaHWi/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=794&bt=397&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZmQ5Z2Y3N2lmZmdkZzg2NEBpamlncHE5cm5mNzMzZzczNEAzXmI1YC8vNTMxNF5eNGIvYSNjZWJnMmRrYV9hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/1e78dfc238e6f525ed8741c155b096d5/69690bd5/video/tos/useast5/tos-useast5-ve-0068c003-tx/ok2IAQeUj2NQSAj8tceLAYfln9wMICWlkdaHWi/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=794&bt=397&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZmQ5Z2Y3N2lmZmdkZzg2NEBpamlncHE5cm5mNzMzZzczNEAzXmI1YC8vNTMxNF5eNGIvYSNjZWJnMmRrYV9hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491989,\"width\":480,\"height\":854,\"file_hash\":\"df3ff703d20df507c27a5cc4b0014a74\",\"format\":\"\",\"size\":683232,\"bitrate\":406867,\"video_quality\":\"lowest\"}]},\"name\":\"these are so cute imo #fyp #fashioninspo #yogapants #ootd #tiktokshop \",\"release_date\":\"1763100657\",\"item_id\":\"7572459386887523639\",\"like_cnt\":20569,\"play_cnt\":1442634,\"comment_cnt\":238,\"video_products\":[{\"name\":\"UEU Womens Wide Leg Crossover High Waisted Yoga Pants Camo Bootcut Workout Flared Leggings Casual Pants Comfy Fall active wear gym  29''/31''/33''\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/9d881bf62f614365a30cd98dc5614b43~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729468763571720840\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"34.99\",\"formatted_price\":\"$34.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"34.99\",\"formatted_price\":\"$34.99\"},\"promoted_product_num\":\"7615\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d51j1ffog65utd9d5d70\",\"duration\":20.067,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/okeWMzP1DQ9RcD9CAlFFSLR9aBfApqDIE0gqEQ~tplv-noop.image?dr=12525&refresh_token=eabd8fc2&x-expires=1768491996&x-signature=17OJIe9InC8AlHPrGnlrqOGaHA4%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/5a3f071ae23f0c15dae068b369f58f5b/69690bdc/video/tos/useast5/tos-useast5-pve-0068-tx/o8FhGe77II2kRjY0rASALCUGgjjmAfK4qHFFtf/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1222&bt=611&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aThlZGdpOzVkNWg0ZmY0M0BpM2dnZ3g5cmltODMzZzczNEBiL2IuLjZiNWMxMDBjXi00YSM0MjZxMmRjLi5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/5a3f071ae23f0c15dae068b369f58f5b/69690bdc/video/tos/useast5/tos-useast5-pve-0068-tx/o8FhGe77II2kRjY0rASALCUGgjjmAfK4qHFFtf/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1222&bt=611&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aThlZGdpOzVkNWg0ZmY0M0BpM2dnZ3g5cmltODMzZzczNEBiL2IuLjZiNWMxMDBjXi00YSM0MjZxMmRjLi5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768491996,\"width\":576,\"height\":1024,\"file_hash\":\"5c7b80417a0a928c565d73a4b67887f4\",\"format\":\"\",\"size\":1570529,\"bitrate\":626114,\"video_quality\":\"lowest\"}]},\"name\":\"🐎🐎🐎 #fyp #ootd #fitcheck #fashioninspo #fashion \",\"release_date\":\"1766011155\",\"item_id\":\"7584960104194264334\",\"like_cnt\":1521,\"play_cnt\":123872,\"comment_cnt\":44,\"video_products\":[{\"name\":\"Women's Retro Horseshoe Flower Print Turtleneck Cardigan Set Cozy Knit Long Sleeve Outfit for Winter Christmas New Year Holiday Travel Casual Top\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ed68fd9b964047769fc50a8ec146c6f7~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732087655484133408\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"77.99\",\"formatted_price\":\"$77.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"77.99\",\"formatted_price\":\"$77.99\"},\"promoted_product_num\":\"191\",\"status\":2}]},{\"video\":{\"id\":\"v12044gd0000d4mvfh7og65vgschk2rg\",\"duration\":16.5,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/osCF3RFaI3GI4f8E0ffhtIekk879xDkgtFEAAO~tplv-noop.image?dr=12525&refresh_token=44a5d0b8&x-expires=1768491992&x-signature=wV8gDAWnRgOl2hOcZG7RJfUGIGY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/ad0f7e65dd2dde426821f8718c0a2d48/69690bd8/video/tos/useast5/tos-useast5-ve-0068c001-tx/oEwfIIEDkhfOaf3Q9ketRC3E8EF7xGAtkEFRnA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=4542&bt=2271&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZDc3OzxoaTxoaDNkNzxnaEBpajVrdnk5cmt5NzMzZzczNEBeLy9gLjMvXzYxNTY2YTBjYSNvaGBkMmQ0Y2phLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/ad0f7e65dd2dde426821f8718c0a2d48/69690bd8/video/tos/useast5/tos-useast5-ve-0068c001-tx/oEwfIIEDkhfOaf3Q9ketRC3E8EF7xGAtkEFRnA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=4542&bt=2271&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZDc3OzxoaTxoaDNkNzxnaEBpajVrdnk5cmt5NzMzZzczNEBeLy9gLjMvXzYxNTY2YTBjYSNvaGBkMmQ0Y2phLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768491992,\"width\":576,\"height\":1024,\"file_hash\":\"1ac4c70f0017cd28763a1493d012b9f3\",\"format\":\"\",\"size\":4797097,\"bitrate\":2325865,\"video_quality\":\"normal\"}]},\"name\":\"the softest pjs ever ☁️ #fyp #pjs #pajamas #holidays #tiktokshop \",\"release_date\":\"1764620231\",\"item_id\":\"7578985957077077262\",\"like_cnt\":2592,\"play_cnt\":268042,\"comment_cnt\":22,\"video_products\":[{\"name\":\"Blue Bow Wide Leg Pants Pajama Set\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/53272067e2f84f54b863bddacd170c47~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731275475567677932\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"54\",\"formatted_price\":\"$54\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"54\",\"formatted_price\":\"$54\"},\"promoted_product_num\":\"1188\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"2128\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"59677.92\",\"symbol\":\"$\",\"format\":\"$59.7K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_601352\",\"name\":\"Shoes\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":276,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"59613.81\",\"symbol\":\"$\",\"format\":\"$59.6K\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":151,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"4495\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"1393\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"1394\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$25K-$60K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"1K+\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"25-34\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7834\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"1393\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"1394\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"25-34\",\"18-24\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.9\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"value\":[{\"starling_key\":\"vertical_creator_pro_tag_option_fashion_and_style\"}],\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494887032686087063\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"anniedanner\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Alli’s fave finds✨\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/2802d58b5d089f5f37d603e82af192f1~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=a176a28f&x-expires=1768640400&x-signature=h%2B2DFyFT3vFcwziQ618seeJi3g4%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/2802d58b5d089f5f37d603e82af192f1~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=da7dd18e&x-expires=1768640400&x-signature=DjF86%2FclUWFpMp54WyohCn8ng%2Fk%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"33471\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"8057\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d4j5cbnog65rmh1o0rgg\",\"duration\":41.9,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/ocgOWhSmbtAOBIMA9SvBaVqEEi4kEiCITUZL7~tplv-noop.image?dr=12525&refresh_token=df6e55f7&x-expires=1768492017&x-signature=UHDdTuhFe1pNbxofkLyY7WVYMWQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/abb3ddc425b3059770dc5f6a4df881f3/69690bf1/video/tos/useast5/tos-useast5-pve-0068-tx/ogrlpDI3YgDAgcAuQppEBeIMCSF8RJ3EvLYaf3/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2320&bt=1160&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=aDU4OzozMzU8ZWk5OmYzNEBpanVya3U5cmU4NzMzZzczNEA1LjBgYjMvNjAxMGIvNS1fYSNkLS5qMmRrYGdhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/abb3ddc425b3059770dc5f6a4df881f3/69690bf1/video/tos/useast5/tos-useast5-pve-0068-tx/ogrlpDI3YgDAgcAuQppEBeIMCSF8RJ3EvLYaf3/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2320&bt=1160&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=aDU4OzozMzU8ZWk5OmYzNEBpanVya3U5cmU4NzMzZzczNEA1LjBgYjMvNjAxMGIvNS1fYSNkLS5qMmRrYGdhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"url_expire\":1768492017,\"width\":720,\"height\":1280,\"file_hash\":\"8422578b9fc1a3df4718157f934b0c72\",\"format\":\"\",\"size\":6222875,\"bitrate\":1188138,\"video_quality\":\"normal\"}]},\"name\":\"POV: You finally found a bra that’s comfortable & flattering😍 No wires, no lines — just lift, support, and buttery-soft fabric 💕 #tiktokshop #tiktokshopfinds #viralproducts #jellybra  #tiktokshopcreatorpicks \",\"release_date\":\"1764120530\",\"item_id\":\"7576839935928356110\",\"like_cnt\":250355,\"play_cnt\":61962279,\"comment_cnt\":3495,\"video_products\":[{\"name\":\"VRCOMFY Jelly Wireless Womens Comfortable Wireless Bras Push Up Bralettes Seamless Tshirts Bras Deep V Everyday Bras\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/230cc0a5f6c44d72abab99872b390cd0~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730491237165011696\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"32.99\",\"formatted_price\":\"$32.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"32.99\",\"formatted_price\":\"$32.99\"},\"promoted_product_num\":\"504513\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4toa8vog65jumtmc5j0\",\"duration\":27.734,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/ognAmAicq4BnIpwFK9gmiX7BfzpCw0IChtIRbl~tplv-noop.image?dr=12525&refresh_token=2110dea1&x-expires=1768492003&x-signature=3CWLtBk9gpPZ3dWJB%2BzGceqpDls%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/083921cfa323ad25c89cbf4775c79951/69690be3/video/tos/useast5/tos-useast5-pve-0068-tx/owABQqF7y90EfASBzEBcmIRPpnhIiKiwcytCmb/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=850&bt=425&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzllNzRlaDc5PDNlNGc6M0BpMzhwcG05cjtyNzMzZzczNEBiNjBiMl8wNTQxYV5eXy41YSNnYHFyMmRzXnFhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/083921cfa323ad25c89cbf4775c79951/69690be3/video/tos/useast5/tos-useast5-pve-0068-tx/owABQqF7y90EfASBzEBcmIRPpnhIiKiwcytCmb/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=850&bt=425&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzllNzRlaDc5PDNlNGc6M0BpMzhwcG05cjtyNzMzZzczNEBiNjBiMl8wNTQxYV5eXy41YSNnYHFyMmRzXnFhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768492003,\"width\":576,\"height\":1024,\"file_hash\":\"e5dddf4b2084cbd33a00b54b55719ce2\",\"format\":\"\",\"size\":1509028,\"bitrate\":435286,\"video_quality\":\"lowest\"}]},\"name\":\"No wires, no lines, just buttery soft lift with jelly strips🥰 #tiktokshopholidayhaul #tiktokshopcreatorpicks #tiktokshopfinds #viralproducts #vrcomfy \",\"release_date\":\"1765508771\",\"item_id\":\"7582802333541600525\",\"like_cnt\":92169,\"play_cnt\":15783869,\"comment_cnt\":798,\"video_products\":[{\"name\":\"VRCOMFY Jelly Wireless Womens Comfortable Wireless Bras Push Up Bralettes Seamless Tshirts Bras Deep V Everyday Bras\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/230cc0a5f6c44d72abab99872b390cd0~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730491237165011696\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"32.99\",\"formatted_price\":\"$32.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"32.99\",\"formatted_price\":\"$32.99\"},\"promoted_product_num\":\"504513\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d473a4fog65s9nlea4e0\",\"duration\":40.471,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oEa4IFmEEQ4QgTDKjcfU4BRARO9apDSXDFf7Bh~tplv-noop.image?dr=12525&refresh_token=2bb0745f&x-expires=1768492016&x-signature=Oi8Wf76QsHCw2Xwz8s%2B7%2BOthYHM%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/f74a8cef3c4841d16244ef0ea8b841b2/69690bf0/video/tos/useast5/tos-useast5-ve-0068c004-tx/osERXrIc4AC9lIDKBgf4FmASgUQIeCQRDjDpaE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=522&bt=261&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGQ5ZTVkNWc5aDxnM2ZlZ0BpMzdocXY5cjc2NzMzZzczNEBjLS4zNi0xNTYxLzQxMS4zYSNiXmk2MmRjXjRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/f74a8cef3c4841d16244ef0ea8b841b2/69690bf0/video/tos/useast5/tos-useast5-ve-0068c004-tx/osERXrIc4AC9lIDKBgf4FmASgUQIeCQRDjDpaE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=522&bt=261&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGQ5ZTVkNWc5aDxnM2ZlZ0BpMzdocXY5cjc2NzMzZzczNEBjLS4zNi0xNTYxLzQxMS4zYSNiXmk2MmRjXjRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e00088000\",\"url_expire\":1768492016,\"width\":480,\"height\":854,\"file_hash\":\"c80413f320f483442e272f5a3c4701d2\",\"format\":\"\",\"size\":1352071,\"bitrate\":267267,\"video_quality\":\"lowest\"}]},\"name\":\"POV: You finally found a bra that’s actually comfortable 😍 No wires, no lines — just lift, support, and buttery-soft fabric 💕 #tiktokmademebuyit #tiktokshopfinds #viralproducts #seamlessbra #oeakbra  \",\"release_date\":\"1762538969\",\"item_id\":\"7570047031272639757\",\"like_cnt\":15947,\"play_cnt\":6171633,\"comment_cnt\":284,\"video_products\":[{\"name\":\"Vertvie Women Wireless Seamless Jelly Bras Deep V No Underwire Push Up Bras Wirefree Full Coverage T Shirt Adjustable Bra Nylon Spandex Womenswear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ba8af801fce44d9794975433e240b424~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729558911395206059\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"35.99\",\"formatted_price\":\"$35.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"35.99\",\"formatted_price\":\"$35.99\"},\"promoted_product_num\":\"109267\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"59389\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"1204869.08\",\"symbol\":\"$\",\"format\":\"$1.2M\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_602284\",\"name\":\"Baby & Maternity\"},{\"starling_key\":\"magellan_600942\",\"name\":\"Household Appliances\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":69,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"1204250.25\",\"symbol\":\"$\",\"format\":\"$1.2M\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":69,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"330975\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"8349\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"8057\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$150K+\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"1K+\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7580\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"8349\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"8057\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"3.3\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"value\":[{\"starling_key\":\"vertical_creator_pro_tag_option_fashion_and_style\"}],\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494015114846963196\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"ellaglosson\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Ella.grace\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/bcb319d43548e9cc3f8701c3f3c73bf4~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=66e86801&x-expires=1768640400&x-signature=FTu4UfC2d%2F6tjuYIRdnqlMDeeLA%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/bcb319d43548e9cc3f8701c3f3c73bf4~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=8da8079b&x-expires=1768640400&x-signature=noELMTAlnR%2FnmsVDJXbbJR9u%2FCg%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"121401\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d3n3ignog65hb1clom20\",\"duration\":15.022,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oIWlADViavDEFBFc2Q5hcAIWuxOBER4KBOiEY~tplv-noop.image?dr=12525&refresh_token=f4b65f4b&x-expires=1768491991&x-signature=M3kalVGo8qPPEufdH3aGAMGXWek%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/58de17805f136e406ace0fa51ab85681/69690bd7/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oYAxavENEiOBRAbOt4hWSu5VBIQElW5YFWIci/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=904&bt=452&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aGRpZjU2aWZnaTU6NGVnM0BpM3BvNGs5cmo2NjMzaTczNEAxMmI1MTItNWIxYF5eYTItYSMvbGBfMmRrZmthLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/58de17805f136e406ace0fa51ab85681/69690bd7/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oYAxavENEiOBRAbOt4hWSu5VBIQElW5YFWIci/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=904&bt=452&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aGRpZjU2aWZnaTU6NGVnM0BpM3BvNGs5cmo2NjMzaTczNEAxMmI1MTItNWIxYF5eYTItYSMvbGBfMmRrZmthLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768491991,\"width\":480,\"height\":854,\"file_hash\":\"b868ae4157bdd7a5edd07553bce1beed\",\"format\":\"\",\"size\":870534,\"bitrate\":463604,\"video_quality\":\"lowest\"}]},\"name\":\"@Edikted #ediktedad #ediktedoncampus #ediktedoncampus \",\"release_date\":\"1760442896\",\"item_id\":\"7561044610621934879\",\"like_cnt\":9277,\"play_cnt\":109694,\"comment_cnt\":9,\"video_products\":[{\"name\":\"Saphi Striped Oversized Knit Sweater\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/430f807c958144feabeba9e43de7d8af~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731737273241538722\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"20.4\",\"formatted_price\":\"$20.4\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"20.4\",\"formatted_price\":\"$20.4\"},\"promoted_product_num\":\"2861\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d2aoa1nog65kth53kp80\",\"duration\":11.586,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ocIrQBE1RCRlAQDo2FMifypJgUpEGEcAV0YfBa~tplv-noop.image?dr=12525&refresh_token=140da303&x-expires=1768491987&x-signature=46fZn%2FQQ0TgJyvgFHxTw%2Bg5GMok%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/a5cf418e042663177c407142c8ee3842/69690bd3/video/tos/useast8/tos-useast8-ve-0068c003-tx2/o0yDFBR2YEp1yUUrQcbfEfgGVClwoIAJUE0RAS/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1256&bt=628&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ODs7OTw4NGY7aTg4ODc4ZEBpM3M2a245cjRyNTMzaTczNEA1Xy9gLy42NjMxYDQxMC5eYSM1aDJxMmRrXl5hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/a5cf418e042663177c407142c8ee3842/69690bd3/video/tos/useast8/tos-useast8-ve-0068c003-tx2/o0yDFBR2YEp1yUUrQcbfEfgGVClwoIAJUE0RAS/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1256&bt=628&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ODs7OTw4NGY7aTg4ODc4ZEBpM3M2a245cjRyNTMzaTczNEA1Xy9gLy42NjMxYDQxMC5eYSM1aDJxMmRrXl5hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491987,\"width\":576,\"height\":1024,\"file_hash\":\"4346cadc679f6d39b8fa821e06544b84\",\"format\":\"\",\"size\":931754,\"bitrate\":643365,\"video_quality\":\"normal\"}]},\"name\":\"maybe i’ll actually get in the gym now #defynedupe #workout #gym \",\"release_date\":\"1754629620\",\"item_id\":\"7536076738216955166\",\"like_cnt\":4310,\"play_cnt\":260822,\"comment_cnt\":8,\"video_products\":[{\"name\":\"DENFY Impact Strappy Bra Gymwear Fitness Halter Sports Bra Open Back Padded Sportswear Gym Workout Women Seamless Tank Tops Low Impact Gym\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/d44f0abd05f545d7829c8cb685860e80~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731360847302398151\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"29.98\",\"formatted_price\":\"$29.98\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"54.8\",\"formatted_price\":\"$54.8\"},\"promoted_product_num\":\"17408\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3tu2m7og65gltthm7v0\",\"duration\":9.055,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o8YvpUPjgFY7jQgeX4GhRIKQjVf44Af9GeAFsj~tplv-noop.image?dr=12525&refresh_token=8cb468cd&x-expires=1768491985&x-signature=jhudcFZASwZc95LEpqgwyH0X4Vk%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/9f632ee5b95f33c79be9b79adbfce1ef/69690bd1/video/tos/useast8/tos-useast8-ve-0068c001-tx2/o4PIAEhOjFYQRA4f7J89feWbvPZDICFYqXIIH2/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=804&bt=402&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NDUzO2RoZTkzaTU5OTU6ZEBpMzprd2o5cnB4NjMzaTczNEBjMDIyLjFiNTUxYmMwXjUuYSNzanFpMmQ0L3FhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/9f632ee5b95f33c79be9b79adbfce1ef/69690bd1/video/tos/useast8/tos-useast8-ve-0068c001-tx2/o4PIAEhOjFYQRA4f7J89feWbvPZDICFYqXIIH2/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=804&bt=402&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NDUzO2RoZTkzaTU5OTU6ZEBpMzprd2o5cnB4NjMzaTczNEBjMDIyLjFiNTUxYmMwXjUuYSNzanFpMmQ0L3FhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491985,\"width\":480,\"height\":854,\"file_hash\":\"cfcf0007bc5c9cb3cbefa0b40ac35f3d\",\"format\":\"\",\"size\":466511,\"bitrate\":412157,\"video_quality\":\"lowest\"}]},\"name\":\"gym tanks for the win\",\"release_date\":\"1761337692\",\"item_id\":\"7564887700977831199\",\"like_cnt\":290,\"play_cnt\":12930,\"comment_cnt\":1,\"video_products\":[{\"name\":\"TRYTO Impact Halter Top Fitness Sportswear Gymwear Sports Yoga Tanks Women Solid Removable Chest Pad Casual Comfy Sleeveless Open Back Athletic Yoga Workout Gym Outdoor Running Tank Tops\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/1eda2a4926794987ae99605ffc144c96~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731507182036292007\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"33.32\",\"formatted_price\":\"$33.32\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"64.8\",\"formatted_price\":\"$64.8\"},\"promoted_product_num\":\"2412\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"31\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"759.87\",\"symbol\":\"$\",\"format\":\"$759.87\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":824,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"759.87\",\"symbol\":\"$\",\"format\":\"$759.87\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":513,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"4722\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"3286\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"18-24\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Male\",\"value\":\"5365\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"3286\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"18-24\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.6\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495178454161918417\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"simple1ifee\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"simple1ifee\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/62f3b7fe2d06d5bd9df45bf4e36ad9f4~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=11c23359&x-expires=1768640400&x-signature=flN%2BhMPwBEDqLZOBDPXfmMCNCEA%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/62f3b7fe2d06d5bd9df45bf4e36ad9f4~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=87ff2550&x-expires=1768640400&x-signature=WQKEcfEWeOdzVq01Bsejw8mKBzk%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"6974\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"is_authorized\":false,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"1082\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"is_authorized\":false,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d3p0m27og65knrcapifg\",\"duration\":19.62,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o0IIkWReBCOJIKMUQ8d5HqDAQqH2e5lRzPYAjf~tplv-noop.image?dr=12525&refresh_token=5274e7cb&x-expires=1768491995&x-signature=MOMi%2FZ9n6wm0%2Fyn5sDAIrFpR0gM%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/ada3bd12092bcf2e479d7b4c1aa445d0/69690bdb/video/tos/useast8/tos-useast8-ve-0068c003-tx2/o0r5qIREGFGYBCEkAIeAAEQGZLfbERIIUSfjHy/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3426&bt=1713&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OmY1aTVnPDg2OWQ4Ojk6NUBpamxkdW45cjUzNjMzaTczNEAvMWEzMzE0NTMxLWIuLjEuYSNjbWBrMmQ0am1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/ada3bd12092bcf2e479d7b4c1aa445d0/69690bdb/video/tos/useast8/tos-useast8-ve-0068c003-tx2/o0r5qIREGFGYBCEkAIeAAEQGZLfbERIIUSfjHy/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3426&bt=1713&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OmY1aTVnPDg2OWQ4Ojk6NUBpamxkdW45cjUzNjMzaTczNEAvMWEzMzE0NTMxLWIuLjEuYSNjbWBrMmQ0am1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768491995,\"width\":720,\"height\":1280,\"file_hash\":\"2ba69a5b7e4a8e738e817ff695ec7337\",\"format\":\"\",\"size\":4303519,\"bitrate\":1754747,\"video_quality\":\"normal\"}]},\"name\":\"Candy Color Polka Dot Mesh sleepwear✨#fashiontiktok #spotlightfinds \",\"release_date\":\"1760694262\",\"item_id\":\"7562124205584649502\",\"like_cnt\":3341,\"play_cnt\":156623,\"comment_cnt\":4,\"video_products\":[{\"name\":\"Women's Elegant Polka Dot Sleepwear Set, Lightweight Knit Fabric, Soft Touch, Half-Transparent Effect, Classic Bow, All Seasons\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/6ac9d05526c14e78a81439a7dd6f1ebd~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731398333250966155\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"14.69\",\"formatted_price\":\"$14.69\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"14.69\",\"formatted_price\":\"$14.69\"},\"promoted_product_num\":\"18116\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3pie7vog65jc277dso0\",\"duration\":18.575,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/okPIqQc4AA4tIwm5jFfRkRDC0d5QgEIteczfCm~tplv-noop.image?dr=12525&refresh_token=be938b8d&x-expires=1768491994&x-signature=PoATBU3HccL82Ma9enqIxu6ImPc%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/6906ece10ffafdb9182fef2e50d37a1d/69690bda/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oExXkIBfmmRAgUTcRoEXCF5IjIfDwA4qzQfnt5/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=634&bt=317&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTtmODg4ZDs0aDM1O2ZlZEBpM3Y6NW05cjpsNjMzaTczNEBiLzMzNV5gXjQxNjQzMzAtYSNsYTRgMmRzYm1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/6906ece10ffafdb9182fef2e50d37a1d/69690bda/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oExXkIBfmmRAgUTcRoEXCF5IjIfDwA4qzQfnt5/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=634&bt=317&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTtmODg4ZDs0aDM1O2ZlZEBpM3Y6NW05cjpsNjMzaTczNEBiLzMzNV5gXjQxNjQzMzAtYSNsYTRgMmRzYm1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768491994,\"width\":480,\"height\":854,\"file_hash\":\"b19303c78fdc0d3821170853d1d65769\",\"format\":\"\",\"size\":754572,\"bitrate\":324983,\"video_quality\":\"lowest\"}]},\"name\":\"Soooo comfortable and perfect for layering pr wearing plain!#spotlightfinds #fashiontiktok #tiktokshoplabordaysale \",\"release_date\":\"1760770543\",\"item_id\":\"7562451688620182815\",\"like_cnt\":36,\"play_cnt\":5744,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Women's Solid Color V Neck Long Sleeve Tee, Casual Basic T-shirt for Spring & Fall, Women's Top for Daily Wear, Womenswear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/bd957bfadbed4e1c9f438c30acd1ece7~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729715738268241983\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"13.99\",\"formatted_price\":\"$13.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"36.59\",\"formatted_price\":\"$36.59\"},\"promoted_product_num\":\"2796\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d589d8fog65loqi021rg\",\"duration\":27.834,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oMLEMapQhUDDnBgMAhVLJfEkFEAR6IUreuCj1Q~tplv-noop.image?dr=12525&refresh_token=a361aacb&x-expires=1768492003&x-signature=wG2oQKhFxEcxPFwGcVD9EAUgSgM%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/a765985a13e84afd6fc3b0399c8d572e/69690be3/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oc0uqrQxQABIEAiI1iBEqGlQBqCQAMfZltmBi3/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1014&bt=507&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aDY2NDtoZjs0NjY6NDQ6aUBpajQzdG85cjs8ODMzaTczNEBhMS0tMTAxNTIxYjMvLzZeYSNvL2ZsMmRjYTVhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/a765985a13e84afd6fc3b0399c8d572e/69690be3/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oc0uqrQxQABIEAiI1iBEqGlQBqCQAMfZltmBi3/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1014&bt=507&cs=0&ds=6&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aDY2NDtoZjs0NjY6NDQ6aUBpajQzdG85cjs8ODMzaTczNEBhMS0tMTAxNTIxYjMvLzZeYSNvL2ZsMmRjYTVhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b8000\",\"url_expire\":1768492003,\"width\":576,\"height\":1024,\"file_hash\":\"cf41c67fb71540fe9f55c1adacf4cc0c\",\"format\":\"\",\"size\":1808744,\"bitrate\":519866,\"video_quality\":\"lowest\"}]},\"name\":\"Comfortable,soft and easy to wear#spotlightfinds \",\"release_date\":\"1766889565\",\"item_id\":\"7588732811046128926\",\"like_cnt\":39,\"play_cnt\":14775,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Women's Solid Color Panty, Breathable Comfortable Panty for Daily Wear, Women's Underwear for All Seasons, Soft Comfy Brief\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/00415c66b82c403cb86416c0ab065576~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729659983595999374\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"14.89\",\"formatted_price\":\"$14.89\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"44.09\",\"formatted_price\":\"$44.09\"},\"promoted_product_num\":\"46625\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"is_authorized\":false,\"status\":0},\"med_gmv_revenue\":{\"is_authorized\":false,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"},{\"starling_key\":\"magellan_600024\",\"name\":\"Kitchenware\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":118,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"is_authorized\":false,\"status\":0},\"live_gmv\":{\"is_authorized\":false,\"status\":0},\"ec_video_engagement\":{\"value\":164,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"7314\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"1220\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"1082\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"1K+\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7959\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"1220\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"1082\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.5\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494177151106123173\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"nj_nikijason\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"nj_nikijason\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/f0e4c645bf3f23093a9980f9cda1cf4f~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=88c739ba&x-expires=1768640400&x-signature=kyxYkFR%2Bq10y8dfGY%2BN23NEhh7E%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/f0e4c645bf3f23093a9980f9cda1cf4f~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=7e509f15&x-expires=1768640400&x-signature=6ySS6Zpq54PBPVfaQVzCCYNr0oo%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"273\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"759\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d3pn52fog65ho0irfnlg\",\"duration\":11,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oQHIAixBRlWEoAcfzYrePbwDC3GBEBiEVwwEQ3~tplv-noop.image?dr=12525&refresh_token=8182ec97&x-expires=1768491987&x-signature=lqsjMZ9Us4hN9ATuFVW2zOrKcJc%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/3d435ad2e76635df74ac1f7cbd2e32a3/69690bd3/video/tos/useast8/tos-useast8-ve-0068c003-tx2/ogRBliELGCEf3xewxocKArVzbIIEEO3WBbc3iA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=578&bt=289&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aGRpNTk1NTk1NTs3ZmU5NEBpanF1M2s5cjVxNjMzaTczNEAvNl4tMDU0XzMxX2AwM2JhYSNpY2ZsMmRjMm1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/3d435ad2e76635df74ac1f7cbd2e32a3/69690bd3/video/tos/useast8/tos-useast8-ve-0068c003-tx2/ogRBliELGCEf3xewxocKArVzbIIEEO3WBbc3iA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=578&bt=289&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aGRpNTk1NTk1NTs3ZmU5NEBpanF1M2s5cjVxNjMzaTczNEAvNl4tMDU0XzMxX2AwM2JhYSNpY2ZsMmRjMm1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491987,\"width\":480,\"height\":854,\"file_hash\":\"ad32a0ff354557f47a0a364f828582c5\",\"format\":\"\",\"size\":407693,\"bitrate\":296504,\"video_quality\":\"lowest\"}]},\"name\":\"Cozy meets cute! Hooded dress vibes. 💖 #HoodedDress #cozystyle #spotlightfinds #tiktokshopblackfriday  #tiktokshopcybermonday \",\"release_date\":\"1760785165\",\"item_id\":\"7562514355435212063\",\"like_cnt\":1135,\"play_cnt\":132522,\"comment_cnt\":10,\"video_products\":[{\"name\":\"Women's Hooded Drawstring Slim Fit Long Sleeve Knit Dress, Casual Fall Winter Fashion, Ladies' Clothing for Daily Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/018857f65d0f491fada5d09f4fd8cc49~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731630439823216666\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"22.59\",\"formatted_price\":\"$22.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"26.19\",\"formatted_price\":\"$26.19\"},\"promoted_product_num\":\"5119\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3vig5fog65ml707phkg\",\"duration\":10.667,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o8JAwGKrApARlaUjGwkFQzHrZIgSQFLfkfTfeG~tplv-noop.image?dr=12525&refresh_token=07076be6&x-expires=1768491986&x-signature=sQ%2BqKGEQPso4UvNtFHwIO5Bvf80%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/08235696a6e06d089687f732c72fe1c2/69690bd2/video/tos/useast8/tos-useast8-ve-0068c002-tx2/o0NeGlJQjAUNR8Q1UFfW1fAQgPM3TEAmrA8ezg/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=662&bt=331&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NjM4aDk5NDZkNmY0M2k4OUBpams6OnA5cjhsNjMzaTczNEBjYDFgM2MvXjIxLTYyMDQzYSNobS1pMmRjZHNhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/08235696a6e06d089687f732c72fe1c2/69690bd2/video/tos/useast8/tos-useast8-ve-0068c002-tx2/o0NeGlJQjAUNR8Q1UFfW1fAQgPM3TEAmrA8ezg/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=662&bt=331&cs=0&ds=2&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NjM4aDk5NDZkNmY0M2k4OUBpams6OnA5cjhsNjMzaTczNEBjYDFgM2MvXjIxLTYyMDQzYSNobS1pMmRjZHNhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491986,\"width\":480,\"height\":854,\"file_hash\":\"c0054534741e6d88e477376633d07939\",\"format\":\"\",\"size\":452345,\"bitrate\":339248,\"video_quality\":\"lowest\"}]},\"name\":\"So warm and cosy🥰 don’t wait for it to snow and they’ve already sold out🥺 #fleecelined #jeans #spotlightfinds #tiktokshopblackfriday  #tiktokshopcybermonday \",\"release_date\":\"1761552788\",\"item_id\":\"7565811376355118366\",\"like_cnt\":433,\"play_cnt\":74185,\"comment_cnt\":9,\"video_products\":[{\"name\":\"Women's Fleece-Lined Jeans, High Stretch Thick Denim For Winter, Slimming And Comfortable\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/250b8cd773eb42839586c5fba3e1442d~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731593169763603267\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"47.09\",\"formatted_price\":\"$47.09\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"47.09\",\"formatted_price\":\"$47.09\"},\"promoted_product_num\":\"34705\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3oc0dvog65rg5a7vg40\",\"duration\":12.734,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oQjw3wA8fAEX6Aj2BDRoqUBIwEEVFEgfAMaIO3~tplv-noop.image?dr=12525&refresh_token=d21df01e&x-expires=1768491988&x-signature=cNvjQXcG%2FcBRX9ZX7LbK%2FibBO4A%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/71c5003d70392335ddda694b393c1acf/69690bd4/video/tos/useast8/tos-useast8-ve-0068c004-tx2/okTEjwfUIA3EVk8Bww3DfEIRA3AFQEMAC5uoEq/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2658&bt=1329&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OWg2ZjQ0PGg7PDc6PGllOUBpM2o6OHU5cmdmNjMzaTczNEAuNDJgXjI2XjMxYGFhMDEyYSMxc15kMmRzLWxhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/71c5003d70392335ddda694b393c1acf/69690bd4/video/tos/useast8/tos-useast8-ve-0068c004-tx2/okTEjwfUIA3EVk8Bww3DfEIRA3AFQEMAC5uoEq/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2658&bt=1329&cs=0&ds=3&ft=GS-jnInz7ThGTNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OWg2ZjQ0PGg7PDc6PGllOUBpM2o6OHU5cmdmNjMzaTczNEAuNDJgXjI2XjMxYGFhMDEyYSMxc15kMmRzLWxhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094615D84C5190147C7104A678&btag=e000b0000\",\"url_expire\":1768491988,\"width\":720,\"height\":1280,\"file_hash\":\"58edd02740e56389aeabde5c423508df\",\"format\":\"\",\"size\":2167414,\"bitrate\":1361654,\"video_quality\":\"normal\"}]},\"name\":\"Snatched on top, cozy on bottom—because who says you can't have both? 😉🔥 #2pieceset #bodysuitshapewear #spotlightfinds #tiktokshopblackfriday  #tiktokshopcybermonday \",\"release_date\":\"1760608582\",\"item_id\":\"7561756197284629790\",\"like_cnt\":894,\"play_cnt\":52870,\"comment_cnt\":3,\"video_products\":[{\"name\":\"Women's Solid Long Sleeve Bodysuit & Drawstring Waist Pants Set, Casual Round Neck Bodysuit & Trousers, Women's Clothing for Daily Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/980f876fbbe14175b39085e08865697f~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729924853591675354\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"35.79\",\"formatted_price\":\"$35.79\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"82.69\",\"formatted_price\":\"$82.69\"},\"promoted_product_num\":\"5420\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"477\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"9666.57\",\"symbol\":\"$\",\"format\":\"$9,666.57\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_601303\",\"name\":\"Muslim Fashion\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":199,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"9666.57\",\"symbol\":\"$\",\"format\":\"$9,666.57\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":166,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"3978\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"760\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"759\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7372\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"760\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"759\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.4\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7496267851039214247\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"appaleking\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"appaleking\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/17cf21b2fd55794d7910c881d1f3d7bd~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=35f5d683&x-expires=1768640400&x-signature=rrB7ChZSUBA8tym6zSut4%2BNaRVo%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/17cf21b2fd55794d7910c881d1f3d7bd~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=90af86da&x-expires=1768640400&x-signature=YjRQ0dtFjHCfsFtnZ8BzszJoyR4%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"69\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"45\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d44tbenog65qs7fm6d90\",\"duration\":5.1,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oQ494EUiavGEuBdjvuVlbAINJ6QDIgnEB1iSh~tplv-noop.image?dr=12525&refresh_token=e4132b8b&x-expires=1768492017&x-signature=TJGEUtxWewY7J8GdCIxu63%2F%2FJDs%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/76849665fe1b514cd1dc25a70becc739/69690bf1/video/tos/useast5/tos-useast5-ve-0068c004-tx/o8BJko6jbUvEuQmindlS4N41BQEagi9V2BQAI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=5248&bt=2624&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=aTNpNDpoZWk3ZTVoNTY1OUBpM2dwOnQ5cmh3NzMzZzczNEAyNjQyMl4wNTYxXzFgLTQyYSM2M2NwMmRrXzFhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/76849665fe1b514cd1dc25a70becc739/69690bf1/video/tos/useast5/tos-useast5-ve-0068c004-tx/o8BJko6jbUvEuQmindlS4N41BQEagi9V2BQAI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=5248&bt=2624&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=aTNpNDpoZWk3ZTVoNTY1OUBpM2dwOnQ5cmh3NzMzZzczNEAyNjQyMl4wNTYxXzFgLTQyYSM2M2NwMmRrXzFhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492017,\"width\":720,\"height\":1280,\"file_hash\":\"4c9037419dba90f77ea101575c679d0f\",\"format\":\"\",\"size\":1713383,\"bitrate\":2687659,\"video_quality\":\"normal\"}]},\"name\":\"🌟\\n     Loose fit, flattering and slimming!#TikTokShopBlackFriday #TikTokShopCyberMonday #spotlightfinds #foryou #fyp \",\"release_date\":\"1762252367\",\"item_id\":\"7568815798781824311\",\"like_cnt\":721,\"play_cnt\":157528,\"comment_cnt\":9,\"video_products\":[{\"name\":\"Women's Vintage Corduroy Drawstring Pants, Loose-Fitting Casual Autumn Winter Bottoms, Ladies' Textured Long Trousers\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/e6fda21ec9774ab98eaf012d7c86ea42~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731878986132263245\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"22.99\",\"formatted_price\":\"$22.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"22.99\",\"formatted_price\":\"$22.99\"},\"promoted_product_num\":\"5572\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d46us87og65lggrk7f2g\",\"duration\":8.3,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oIGN1IWIxQ3GBLeIekkeY0is3O1KCjAEbSQ9AH~tplv-noop.image?dr=12525&refresh_token=0434f89f&x-expires=1768492020&x-signature=l85SgRPUwcCwk727w9reilba%2Bbo%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/03f82075d4e67b002f515d9ba5215bc7/69690bf4/video/tos/useast5/tos-useast5-pve-0068-tx/o8VhdIEQ4DgguDA3BUNUIEVFVcP7vIi2h1Bia/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1028&bt=514&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OGY2aDw6OGg1PDNlNGY2OEBpamluam85cjt4NzMzZzczNEAzMzU2MzQyNV4xNV4xMmJfYSMvNG9kMmQ0cDNhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/03f82075d4e67b002f515d9ba5215bc7/69690bf4/video/tos/useast5/tos-useast5-pve-0068-tx/o8VhdIEQ4DgguDA3BUNUIEVFVcP7vIi2h1Bia/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1028&bt=514&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OGY2aDw6OGg1PDNlNGY2OEBpamluam85cjt4NzMzZzczNEAzMzU2MzQyNV4xNV4xMmJfYSMvNG9kMmQ0cDNhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492020,\"width\":480,\"height\":854,\"file_hash\":\"93d7cc0ab27986cf46e289ace379c338\",\"format\":\"\",\"size\":546133,\"bitrate\":526393,\"video_quality\":\"lowest\"}]},\"name\":\"👗 Casual yet chic, this suit is a must-have!#TikTokShopBlackFriday #TikTokShopCyberMonday #spotlightfinds #foryou #fyp \",\"release_date\":\"1762520931\",\"item_id\":\"7569969464490429710\",\"like_cnt\":319,\"play_cnt\":92668,\"comment_cnt\":6,\"video_products\":[{\"name\":\"Women's Striped Print Blazer Jacket & Wide Leg Pants Set, Casual Fitted Suit for All Seasons, Stylish Ladies' Clothing Ensemble\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/d1e285ffac294773a7d9e06c609a0d81~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731929462973174214\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"45.69\",\"formatted_price\":\"$45.69\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"45.69\",\"formatted_price\":\"$45.69\"},\"promoted_product_num\":\"571\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d47hhfvog65ril6rf5bg\",\"duration\":7.3,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o0I8Pp3EvBxvjgRU72IAoiiDiGBwlDCHlfXfVS~tplv-noop.image?dr=12525&refresh_token=c2ff4ae4&x-expires=1768492019&x-signature=lr4z%2BX7otDWeK%2BbM16J0w0KCcug%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/8a24db388dbe389096a2a6fddb5d56d4/69690bf3/video/tos/useast5/tos-useast5-ve-0068c002-tx/owE2jfIgSgAiXixGgXRl7DfUTiBwDBBE3QVplP/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2928&bt=1464&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OjZkaDdoM2k7ZTs1OTo7N0Bpajh1b3U5cmlrNzMzZzczNEBeYzFjXl4zX2MxNTJjMzU2YSNfYzNmMmRzZTRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/8a24db388dbe389096a2a6fddb5d56d4/69690bf3/video/tos/useast5/tos-useast5-ve-0068c002-tx/owE2jfIgSgAiXixGgXRl7DfUTiBwDBBE3QVplP/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2928&bt=1464&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OjZkaDdoM2k7ZTs1OTo7N0Bpajh1b3U5cmlrNzMzZzczNEBeYzFjXl4zX2MxNTJjMzU2YSNfYzNmMmRzZTRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492019,\"width\":720,\"height\":1280,\"file_hash\":\"5ceedfbfba31bd2753a4d94fbbb144dc\",\"format\":\"\",\"size\":1368757,\"bitrate\":1500007,\"video_quality\":\"normal\"}]},\"name\":\"🔥 Winter essential! These fleece-lined jeans keep you warm and stylish!#TikTokShopBlackFriday #TikTokShopCyberMonday #spotlightfinds #foryou #fyp \",\"release_date\":\"1762597200\",\"item_id\":\"7570296789459324173\",\"like_cnt\":39,\"play_cnt\":11625,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Women's Fleece Lined Thick Denim Flare Pants, Comfortable Winter Fashion Jeans, Elegant Plain Design, All Seasons Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/3fab68a69b364ad7a174f0001d57a4d7~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731869190886560579\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.69\",\"formatted_price\":\"$39.69\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.69\",\"formatted_price\":\"$39.69\"},\"promoted_product_num\":\"669\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"152\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"3645.76\",\"symbol\":\"$\",\"format\":\"$3,645.76\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_600154\",\"name\":\"Textiles & Soft Furnishings\"},{\"starling_key\":\"magellan_601303\",\"name\":\"Muslim Fashion\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":14,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"3645.76\",\"symbol\":\"$\",\"format\":\"$3,645.76\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":44,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"849\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"45\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"45\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"55+\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7123\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"45\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"45\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"55+\",\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.4\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494003841207339172\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"claudiaanaya14\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"claudiafashion14\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/0b49e79cd87b5b8e7491e00ce34c3095~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=3ea14440&x-expires=1768640400&x-signature=Ssu31z61m10rUxYHdxvk3KF2fGw%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/0b49e79cd87b5b8e7491e00ce34c3095~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=fa572380&x-expires=1768640400&x-signature=4243sg0VIMM4uzym9LnTVMAvhnw%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"173809\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"51539\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"3319\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d42pnqvog65vau7uc0jg\",\"duration\":39.167,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oEmkFFnQIXqLM8nAzABQFOXfGfjfGOE9RegQBI~tplv-noop.image?dr=12525&refresh_token=ecea1902&x-expires=1768492051&x-signature=CY4xrwhzHY1JxouS84ufI%2BCwCK8%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/76a4c2f0fc9e35b4481c0d479151424e/69690c13/video/tos/useast5/tos-useast5-pve-0068-tx/oErkK8ffBAReQGHbAILnFnIGXexAmrmIORF0FE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=534&bt=267&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTU5OjplaDw4NjhlNmg7PEBpajN4eHk5cnRzNzMzZzczNEAvMWAxYzM1NTQxMjEzMi0vYSNnYDReMmRzay9hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/76a4c2f0fc9e35b4481c0d479151424e/69690c13/video/tos/useast5/tos-useast5-pve-0068-tx/oErkK8ffBAReQGHbAILnFnIGXexAmrmIORF0FE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=534&bt=267&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTU5OjplaDw4NjhlNmg7PEBpajN4eHk5cnRzNzMzZzczNEAvMWAxYzM1NTQxMjEzMi0vYSNnYDReMmRzay9hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"url_expire\":1768492051,\"width\":480,\"height\":854,\"file_hash\":\"84fb2895409b6d13d34e369da3459ab2\",\"format\":\"\",\"size\":1340890,\"bitrate\":273881,\"video_quality\":\"lowest\"}]},\"name\":\"Leggins con mucho estilo cómodas y casuales súper hermosas @O QQ #highwaistedleggins #oqqpants #casualstyle #tiktokshopcreatorpicks #TikTokShopBlackFriday \",\"release_date\":\"1761975975\",\"item_id\":\"7567628973694356750\",\"like_cnt\":6250,\"play_cnt\":1116799,\"comment_cnt\":105,\"video_products\":[{\"name\":\"OQQ Women's Casual Pants - High-waisted Loose-Fitting Casual Pants - Comfortable and Elastic Loose Pants with Stretchy Material - Straight Leg Hem\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/e28ee17ff9c545dd89cb3b23f184d05c~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731227895274115130\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"45.72\",\"formatted_price\":\"$45.72\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"91.44\",\"formatted_price\":\"$91.44\"},\"promoted_product_num\":\"106403\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d3um3f7og65lmt5kdll0\",\"duration\":42.608,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oYgthqP91tAdBIUGtaPBaYRHEi4z0iCImU1v1~tplv-noop.image?dr=12525&refresh_token=23bdb688&x-expires=1768492054&x-signature=9KjytCu0QWKzhOil8ahoSxmKRcw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/58e2a7141dd1195817db42e17b269ef6/69690c16/video/tos/useast5/tos-useast5-ve-0068c003-tx/og6pAfDgVIRDFvNGwkfCjb8jbrrfxWIaAEHUcQ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=640&bt=320&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aDg5PDdoNTxpMzVnNTtpPEBpM29ud285cmlwNjMzZzczNEAwYTJeXzEvXjMxYF41Xl8wYSNpYTJqMmQ0MHJhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/58e2a7141dd1195817db42e17b269ef6/69690c16/video/tos/useast5/tos-useast5-ve-0068c003-tx/og6pAfDgVIRDFvNGwkfCjb8jbrrfxWIaAEHUcQ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=640&bt=320&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aDg5PDdoNTxpMzVnNTtpPEBpM29ud285cmlwNjMzZzczNEAwYTJeXzEvXjMxYF41Xl8wYSNpYTJqMmQ0MHJhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"url_expire\":1768492054,\"width\":480,\"height\":854,\"file_hash\":\"492c3c0d84a9c4e23097afbea6475db5\",\"format\":\"\",\"size\":1750204,\"bitrate\":328615,\"video_quality\":\"lowest\"}]},\"name\":\"Leggings de cuero con interior térmico | cómodos, elásticos y con estilo🔥 #leatherleggins #leggins #LeggingsDeCuero #tiktokshopcreatorpicks #TikTokShopBlackFriday \",\"release_date\":\"1761436373\",\"item_id\":\"7565311486898359565\",\"like_cnt\":9995,\"play_cnt\":1056055,\"comment_cnt\":187,\"video_products\":[{\"name\":\"Women's Fleece Stretch Artificial Leather PU Leather Leggings, Skinny leggings, High Waist Fleece Warm Tights Elastic Sports Leather Pants Skinny Pants, Bell-Bottom Trousers, Daily Running Fitness Pants\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/6b22e1e3a3044e51b4c5b0458130360e~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731649145238753576\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"22\",\"formatted_price\":\"$22\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"68\",\"formatted_price\":\"$68\"},\"promoted_product_num\":\"8690\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d48ldqvog65kk990ghg0\",\"duration\":55.1,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oQIRt0loiQEKAiDYIFpIXwBW51QiAgB0CIFfIR~tplv-noop.image?dr=12525&refresh_token=cc950c4f&x-expires=1768492067&x-signature=8bGiPb3Ho4QKLgKDHn1NS6KyM6A%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/b46989d4d1c5ee3a3d27a57a7f156a58/69690c23/video/tos/useast5/tos-useast5-pve-0068-tx/okqSCF0FIXaLhBYAeAfgIAiYj3UgGHBSIeHRGk/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=5156&bt=2578&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Z2k3ODU0aTdkZDZkPGk2OEBpM2szPG45cnRvNzMzZzczNEAuMTReMTJfXjAxYjZjNDEyYSNkZDZoMmRzYTVhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/b46989d4d1c5ee3a3d27a57a7f156a58/69690c23/video/tos/useast5/tos-useast5-pve-0068-tx/okqSCF0FIXaLhBYAeAfgIAiYj3UgGHBSIeHRGk/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=5156&bt=2578&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Z2k3ODU0aTdkZDZkPGk2OEBpM2szPG45cnRvNzMzZzczNEAuMTReMTJfXjAxYjZjNDEyYSNkZDZoMmRzYTVhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"url_expire\":1768492067,\"width\":576,\"height\":1024,\"file_hash\":\"9a23c731ba5d6eee3affca6ff5467d80\",\"format\":\"\",\"size\":18186871,\"bitrate\":2640562,\"video_quality\":\"normal\"}]},\"name\":\"Leggings que estilizan, levantan y abrigan 🖤 ¡Perfectos para este invierno!❄️@ChicMe_official #WinterLeggings #TummyControl #TikTokShopCyberMonday #TikTokShopBlackFriday #SuperBrandDayBFCM \",\"release_date\":\"1762744402\",\"item_id\":\"7570929448967523597\",\"like_cnt\":2867,\"play_cnt\":824628,\"comment_cnt\":101,\"video_products\":[{\"name\":\"ChicMe Winter Warm High Waisted Workout Athletic Leggings Tummy Control Butt Lifting Ultra Soft Thermal Lined Yoga Pants Women's Sportswear with Stacked Slit Pockets On One Side\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/bd3b93211a55465c8d42bb3ab93adc9f~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731882790561485302\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"30.99\",\"formatted_price\":\"$30.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"99.99\",\"formatted_price\":\"$99.99\"},\"promoted_product_num\":\"6530\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"6139\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"205853.25\",\"symbol\":\"$\",\"format\":\"$205.9K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":127,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"191681.26\",\"symbol\":\"$\",\"format\":\"$191.7K\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"14060.07\",\"symbol\":\"$\",\"format\":\"$14.1K\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":105,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"28352\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"3212\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"3319\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$150K+\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"1K+\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7304\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"173809\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"3212\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"3319\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.7\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"value\":[{\"starling_key\":\"vertical_creator_pro_tag_option_fashion_and_style\"}],\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495308776415857562\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"funrain407\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"funrain407\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/dd8b1d383aa3801a8bf20f37a8da3394~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=db33f234&x-expires=1768640400&x-signature=B18jgcLnePv0xM1awYsU1HJZvrQ%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/dd8b1d383aa3801a8bf20f37a8da3394~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=28f8eda9&x-expires=1768640400&x-signature=vcyNlZyJQJ9i4f53kwKoM%2BdWZZI%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"1153\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"is_authorized\":false,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"207\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"is_authorized\":false,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d3s54nfog65mfajp4d90\",\"duration\":15.967,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oIzIICWSEFA9peGAIjJDkdeSFNUnJsR4HHUfC3~tplv-noop.image?dr=12525&refresh_token=c6755cd2&x-expires=1768492027&x-signature=miojkTOEhoAXa%2BSnjmKBwnxCDGk%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/ae3e9a4e0362adb8e8a26a0f14826760/69690bfb/video/tos/useast5/tos-useast5-pve-0068-tx/o0CZFIkdwsRAkhvpUaEeCFeIjHvD9AJk8Qfvka/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=818&bt=409&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzhlZzU0PDszZGVmaDU3NkBpM2dzZHA5cnE4NjMzZzczNEBjMmA1NGAuNmExNDRgMi4yYSM2MWdjMmRjMXBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/ae3e9a4e0362adb8e8a26a0f14826760/69690bfb/video/tos/useast5/tos-useast5-pve-0068-tx/o0CZFIkdwsRAkhvpUaEeCFeIjHvD9AJk8Qfvka/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=818&bt=409&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzhlZzU0PDszZGVmaDU3NkBpM2dzZHA5cnE4NjMzZzczNEBjMmA1NGAuNmExNDRgMi4yYSM2MWdjMmRjMXBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"url_expire\":1768492027,\"width\":480,\"height\":854,\"file_hash\":\"96375f73f6fdb6172881dfe5c4e83e3a\",\"format\":\"\",\"size\":837653,\"bitrate\":419692,\"video_quality\":\"lowest\"}]},\"name\":\"#foryou #tiktokshop #fyp #spotlightfinds \",\"release_date\":\"1761104760\",\"item_id\":\"7563887287398829326\",\"like_cnt\":405,\"play_cnt\":76904,\"comment_cnt\":8,\"video_products\":[{\"name\":\"Women's Knit Shirt Soft Puff Long Sleeve Blouse Tops Lightweight V Neck Tunic XS-XXL Casual Winter Fitted Plain Black Thin\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/1e48bfec84ec4c1fb746d8ad99b5ab88~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731827798976336806\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"28.78\",\"formatted_price\":\"$28.78\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"28.78\",\"formatted_price\":\"$28.78\"},\"promoted_product_num\":\"3910\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d3obb2vog65pktouf75g\",\"duration\":18.018,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/okAFwinFrepiBtVYRf3BFJE5gSicDThInoYHIL~tplv-noop.image?dr=12525&refresh_token=6cbf7de6&x-expires=1768492030&x-signature=jv44z3vhZrODXY147m4cOjR%2Bv5M%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/0ee63b002f7898f730e56b267fa47d01/69690bfe/video/tos/useast5/tos-useast5-pve-0068-tx/osLR5einHCpRYwSiE3rFtOgIBfAbiDQnnBxoFE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2522&bt=1261&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZTk1NDtlMzxkOGQ4ZmQ5NUBpajp4d3M5cjVlNjMzZzczNEAzNTIyMmMuNmMxNl8xMS4uYSMyY2xoMmRzX2xhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/0ee63b002f7898f730e56b267fa47d01/69690bfe/video/tos/useast5/tos-useast5-pve-0068-tx/osLR5einHCpRYwSiE3rFtOgIBfAbiDQnnBxoFE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2522&bt=1261&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZTk1NDtlMzxkOGQ4ZmQ5NUBpajp4d3M5cjVlNjMzZzczNEAzNTIyMmMuNmMxNl8xMS4uYSMyY2xoMmRzX2xhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"url_expire\":1768492030,\"width\":576,\"height\":1024,\"file_hash\":\"ca06ffb99660713b78908daa42b91c83\",\"format\":\"\",\"size\":2909449,\"bitrate\":1291796,\"video_quality\":\"normal\"}]},\"name\":\"#foryou #tiktokshop #fyp #spotlightfinds \",\"release_date\":\"1760605728\",\"item_id\":\"7561743962621365517\",\"like_cnt\":1283,\"play_cnt\":255179,\"comment_cnt\":2,\"video_products\":[{\"name\":\"High Waist Tummy Control Side-Ribbed Butt-Lifting Seamless Shorts\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/d696c1c6882146b09f9efbc283bb08b7~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731551508208718120\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"13.99\",\"formatted_price\":\"$13.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"139.98\",\"formatted_price\":\"$139.98\"},\"promoted_product_num\":\"14853\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d3strlvog65u2acp3cpg\",\"duration\":17.903,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oQEtIzkj0IhdEbDRHEAFsezPIf3mRXECpC3e5A~tplv-noop.image?dr=12525&refresh_token=731de48f&x-expires=1768492029&x-signature=k0nm6k28%2FTH2QRnDWetweun9hfg%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/56eda4476c327da8063153e7d6d0a589/69690bfd/video/tos/useast5/tos-useast5-ve-0068c003-tx/oAf23dXkeCHFMwmQbIje8VAzZJ3AzRUTDIj5EX/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=780&bt=390&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OjQzNmk4Nmg0NTs7Njc6NUBpamZzZHg5cm93NjMzZzczNEBjNS0wXl5jNjIxX180My0wYSNtMGAvMmRzb3BhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/56eda4476c327da8063153e7d6d0a589/69690bfd/video/tos/useast5/tos-useast5-ve-0068c003-tx/oAf23dXkeCHFMwmQbIje8VAzZJ3AzRUTDIj5EX/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=780&bt=390&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OjQzNmk4Nmg0NTs7Njc6NUBpamZzZHg5cm93NjMzZzczNEBjNS0wXl5jNjIxX180My0wYSNtMGAvMmRzb3BhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"url_expire\":1768492029,\"width\":480,\"height\":854,\"file_hash\":\"04ab608979efa93ee5b75b879d235463\",\"format\":\"\",\"size\":895973,\"bitrate\":400367,\"video_quality\":\"lowest\"}]},\"name\":\"#foryou #tiktokshop #fyp #spotlightfinds \",\"release_date\":\"1761206070\",\"item_id\":\"7564321936440839479\",\"like_cnt\":336,\"play_cnt\":39972,\"comment_cnt\":2,\"video_products\":[{\"name\":\"Women's Casual Hooded Sweatshirt Set, Long Sleeve Letter Print Top + Pants, Fall & Winter Fitted Sportswear with Pockets\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/b6e987d4ef6a4838ab1f95eadd6971be~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731781942357758801\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"42.89\",\"formatted_price\":\"$42.89\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"42.89\",\"formatted_price\":\"$42.89\"},\"promoted_product_num\":\"400\",\"status\":2}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"is_authorized\":false,\"status\":0},\"med_gmv_revenue\":{\"is_authorized\":false,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":88,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"is_authorized\":false,\"status\":0},\"live_gmv\":{\"is_authorized\":false,\"status\":0},\"ec_video_engagement\":{\"value\":88,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"1733\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"200\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"207\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7679\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"200\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"207\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.7\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494011926374352038\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"delaneyynicholsonn\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"del\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/a4dddf958aaf3accbb4815429b2148be~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=b81b54fb&x-expires=1768640400&x-signature=V6YKrQz8YatxoRHhXPITSVOp9qM%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/a4dddf958aaf3accbb4815429b2148be~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=77de703a&x-expires=1768640400&x-signature=O0EP0%2BLfGpdrnsBafK%2FRtlgMZfg%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"12877\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d39atovog65pqa9mv300\",\"duration\":12.282,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/owipZ0VA0vdiCYiIkjIB1TAqNsAfAx5SvraEMB~tplv-noop.image?dr=12525&refresh_token=d84d4f5f&x-expires=1768492024&x-signature=mvyhpskhQPcKcbnwx%2BD7IiR5gw8%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/050561bdce39db8af208b24b03aa236e/69690bf8/video/tos/useast8/tos-useast8-pve-0068-tx2/oYGLAICfQQjqG3DHaenSlIV2RZdYkGYfpgIAAI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2302&bt=1151&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OTo5NjM6aWc4NWQ7M2g4PEBpMzZwZHM5cnJkNjMzaTczNEAtLmFgYDEzNTMxMmM1L2JjYSMtczZuMmRzcTZhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/050561bdce39db8af208b24b03aa236e/69690bf8/video/tos/useast8/tos-useast8-pve-0068-tx2/oYGLAICfQQjqG3DHaenSlIV2RZdYkGYfpgIAAI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2302&bt=1151&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OTo5NjM6aWc4NWQ7M2g4PEBpMzZwZHM5cnJkNjMzaTczNEAtLmFgYDEzNTMxMmM1L2JjYSMtczZuMmRzcTZhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492024,\"width\":576,\"height\":1024,\"file_hash\":\"e38beab586a2e5db9631f9a5cf4a2c91\",\"format\":\"\",\"size\":1811034,\"bitrate\":1179634,\"video_quality\":\"normal\"}]},\"name\":\"🤭🤭🤭 #workoutset #vitalapparel \",\"release_date\":\"1758638277\",\"item_id\":\"7553293745005825311\",\"like_cnt\":6525,\"play_cnt\":207050,\"comment_cnt\":24,\"video_products\":[{\"name\":\"Virtue Adjustable Bra - Woodland Camo for Women, Breathable Fabric, Lightweight Design, Ideal for Everyday Wear Yoga Workout Activewear Yoga Gym Activewear Seamless Brassiere\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/5e1ef1cc27c3451b99ef18cfa22a0ec4~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730424914262660079\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"promoted_product_num\":\"591\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3hceb7og65jc2171300\",\"duration\":21.64,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oINEMJABEiazBjiwHABIiIzLxRLSVYPkXAiXO~tplv-noop.image?dr=12525&refresh_token=2ef4de73&x-expires=1768492033&x-signature=33oFk9ibVWkKLcLqHatEfdjBRtg%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/1dd8dd29d68d592ffdbeecb945b4d4d7/69690c01/video/tos/useast8/tos-useast8-ve-0068c001-tx2/ossszhAgTE66wFQoAAgmIxQifcEfGBEVGDmR4F/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2240&bt=1120&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NThmZWgzZWQ1ZWZoOjlkZkBpMzY6NW05cmVmNjMzaTczNEBfLTVgL14vXi4xNF9hMDEyYSMtLi5gMmQ0YmVhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/1dd8dd29d68d592ffdbeecb945b4d4d7/69690c01/video/tos/useast8/tos-useast8-ve-0068c001-tx2/ossszhAgTE66wFQoAAgmIxQifcEfGBEVGDmR4F/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2240&bt=1120&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NThmZWgzZWQ1ZWZoOjlkZkBpMzY6NW05cmVmNjMzaTczNEBfLTVgL14vXi4xNF9hMDEyYSMtLi5gMmQ0YmVhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"url_expire\":1768492033,\"width\":576,\"height\":1024,\"file_hash\":\"7362373a5ce75f998a5527b12c9e7158\",\"format\":\"\",\"size\":3104026,\"bitrate\":1147514,\"video_quality\":\"normal\"}]},\"name\":\"#ootd #outfitinspo #buyit \",\"release_date\":\"1759692596\",\"item_id\":\"7557822077022096670\",\"like_cnt\":127,\"play_cnt\":6841,\"comment_cnt\":4,\"video_products\":[{\"name\":\"Cider Chiffon Round Neckline Solid Ruffle Hem See-through Long Bell Sleeve Blouse\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/179ee44a40464555978627790306bf19~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730458909559590999\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"40.79\",\"formatted_price\":\"$40.79\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"40.79\",\"formatted_price\":\"$40.79\"},\"promoted_product_num\":\"79\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d2b445nog65np77v0jrg\",\"duration\":14.6,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oUJRLfQfvAYfCjQPAIWuLhqMt8zngYIQIICEsQ~tplv-noop.image?dr=12525&refresh_token=799ff628&x-expires=1768492026&x-signature=z8Ck2%2Bg63i56rj%2BWdXgR3F1Zais%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/ca5d851a41fda6382dc553260691cd58/69690bfa/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oAW5AlDQ7EoBF2wIQVfBRkWssvTvQkEfAEE3kI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2170&bt=1085&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Ozc5NTZkOmQ8aTc0OTxlOEBpam15OnE5cjg3NTMzaTczNEA0YWFhYDNiNjUxNmEtYjYyYSNvLTRtMmRrMV9hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/ca5d851a41fda6382dc553260691cd58/69690bfa/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oAW5AlDQ7EoBF2wIQVfBRkWssvTvQkEfAEE3kI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2170&bt=1085&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Ozc5NTZkOmQ8aTc0OTxlOEBpam15OnE5cjg3NTMzaTczNEA0YWFhYDNiNjUxNmEtYjYyYSNvLTRtMmRrMV9hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"url_expire\":1768492026,\"width\":576,\"height\":1024,\"file_hash\":\"528737f2ccbd579010bbafe0cc61078a\",\"format\":\"\",\"size\":2028781,\"bitrate\":1111660,\"video_quality\":\"normal\"}]},\"name\":\"my absolute favorite workout set… cleaning mirror asap 💅 \",\"release_date\":\"1754677953\",\"item_id\":\"7536284383829855518\",\"like_cnt\":85,\"play_cnt\":2454,\"comment_cnt\":2,\"video_products\":[{\"name\":\"Virtue Adjustable Bra - Woodland Camo for Women, Breathable Fabric, Lightweight Design, Ideal for Everyday Wear Yoga Workout Activewear Yoga Gym Activewear Seamless Brassiere\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/5e1ef1cc27c3451b99ef18cfa22a0ec4~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730424914262660079\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"promoted_product_num\":\"591\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"10\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"347.84\",\"symbol\":\"$\",\"format\":\"$347.84\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_700437\",\"name\":\"Food & Beverages\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":806,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"347.84\",\"symbol\":\"$\",\"format\":\"$347.84\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":273,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"1629\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"1151\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"0-10\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"18-24\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Male\",\"value\":\"5756\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"1151\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"18-24\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"3.4\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495203700430965304\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"shanafavoritefindsndeals\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"SHANA/ Favorite Finds💓\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/39fb13d8d7213ac678a41efeef3227c9~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=190b4794&x-expires=1768640400&x-signature=rwT94bF6HLHsRdFJXYdRWMdJLBA%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/39fb13d8d7213ac678a41efeef3227c9~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=08278f5e&x-expires=1768640400&x-signature=5wJyfPIE%2FteU8o5ODw%2FkA01E9BM%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"13834\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"407\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d46e73fog65in4esbh70\",\"duration\":65.034,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o8luJMOEONIiDeJpAcBQR5jF7f4r9kESDDcBgL~tplv-noop.image?dr=12525&refresh_token=559dfae7&x-expires=1768492077&x-signature=Il0AsoJAQczTwUqn6sHyqlYHjkw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/e12c69d7e62e1d52537955b0d7e524d1/69690c2d/video/tos/useast5/tos-useast5-ve-0068c002-tx/oI4EuyLUQclESsDBiZ9DfDcRONAFgPOgNTfpIj/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1668&bt=834&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=N2RmOTRlOmc7OzszN2U2N0BpM2t2N2w5cjZoNzMzZzczNEA2LzQzMTI0XmAxNF9eXmBiYSM0X2JrMmRjNDNhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00090000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/e12c69d7e62e1d52537955b0d7e524d1/69690c2d/video/tos/useast5/tos-useast5-ve-0068c002-tx/oI4EuyLUQclESsDBiZ9DfDcRONAFgPOgNTfpIj/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1668&bt=834&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=N2RmOTRlOmc7OzszN2U2N0BpM2t2N2w5cjZoNzMzZzczNEA2LzQzMTI0XmAxNF9eXmBiYSM0X2JrMmRjNDNhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00090000\",\"url_expire\":1768492077,\"width\":576,\"height\":1024,\"file_hash\":\"237f71f53a8e00cf97e845de8f6a5ea9\",\"format\":\"\",\"size\":6946542,\"bitrate\":854512,\"video_quality\":\"normal\"}]},\"name\":\"My favorite pullover on Halara jeans ! #halaraworkleisure  #halara  #tiktokfalldealsforyou  #halarajeans  #momjeans  @Halara_US \",\"release_date\":\"1762452634\",\"item_id\":\"7569676354627669262\",\"like_cnt\":13,\"play_cnt\":1438,\"comment_cnt\":5,\"video_products\":[{\"name\":\"Halara Flex High Waisted Pockets Baggy Wide Leg Washed Casual Jeans\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/c28053d8577148f4985a662bb0ec8c30~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729488309417120036\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"64.95\",\"formatted_price\":\"$64.95\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"64.95\",\"formatted_price\":\"$64.95\"},\"promoted_product_num\":\"52541\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4og4fnog65jukmhk5k0\",\"duration\":33.767,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oUvxaCaFOPgzE4UBlEg9SmAB1igATBwiIEoT0~tplv-noop.image?dr=12525&refresh_token=15a033d1&x-expires=1768492045&x-signature=FWMMMPhElKUaGIbrb%2BjJHnzhGaU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/48a1f8f6fea671af277391b1ac6d5b3b/69690c0d/video/tos/useast5/tos-useast5-ve-0068c002-tx/oMA0TSEpi4kTBoFDvaYCiQ9KUxxEAEPIgaBCz/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=996&bt=498&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NDk5ODgzOjozMzg3PDVlOEBpMzhrbm05cmlqNzMzZzczNEBhY2EvYi4xNmMxNTAzM2EvYSNoaGpyMmRrMWxhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/48a1f8f6fea671af277391b1ac6d5b3b/69690c0d/video/tos/useast5/tos-useast5-ve-0068c002-tx/oMA0TSEpi4kTBoFDvaYCiQ9KUxxEAEPIgaBCz/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=996&bt=498&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NDk5ODgzOjozMzg3PDVlOEBpMzhrbm05cmlqNzMzZzczNEBhY2EvYi4xNmMxNTAzM2EvYSNoaGpyMmRrMWxhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"url_expire\":1768492045,\"width\":576,\"height\":1024,\"file_hash\":\"1bb40ca02a2075cb452a0c73c1b99f66\",\"format\":\"\",\"size\":2152456,\"bitrate\":509954,\"video_quality\":\"lowest\"}]},\"name\":\"Love this everyday sweater! #colorblock  #sweaterweather  #womansfashion  #blackfridaydeals  #fashion \",\"release_date\":\"1764819727\",\"item_id\":\"7579842904424713485\",\"like_cnt\":12,\"play_cnt\":2799,\"comment_cnt\":4,\"video_products\":[{\"name\":\"Women's Colorblock Drop Shoulder Sweater, Casual Long Sleeve Round Neck Jumper, Ladies' Knitwear for Daily Wear, Sweaters for Women, Tops, Womenswear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/1b8f8f76304b4358937c4e29939c52ee~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729495153140273318\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"28.19\",\"formatted_price\":\"$28.19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"28.19\",\"formatted_price\":\"$28.19\"},\"promoted_product_num\":\"18688\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4s31o7og65iqulkjnng\",\"duration\":34.3,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oQi1tEUPpgwi4B4B3Mv0AB14Da6IsgTJEYybt~tplv-noop.image?dr=12525&refresh_token=bc6c9003&x-expires=1768492046&x-signature=1gUazhMV9Il%2B8eNgVfw2IGzB7yM%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/0002979ef1a822b9c7aae44d896d9b6e/69690c0e/video/tos/useast5/tos-useast5-pve-0068-tx/oQgiUZv4I6BITBy1iQMj3a4i4wE4tqEPCAgUJ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1020&bt=510&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGU3NWdkZjo5OzRnNjRmNUBpanFueGw5cnI2NzMzZzczNEAyXi5eM19fX2ExXmMwM2NgYSNrZ2luMmQ0LnBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/0002979ef1a822b9c7aae44d896d9b6e/69690c0e/video/tos/useast5/tos-useast5-pve-0068-tx/oQgiUZv4I6BITBy1iQMj3a4i4wE4tqEPCAgUJ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1020&bt=510&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGU3NWdkZjo5OzRnNjRmNUBpanFueGw5cnI2NzMzZzczNEAyXi5eM19fX2ExXmMwM2NgYSNrZ2luMmQ0LnBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"url_expire\":1768492046,\"width\":576,\"height\":1024,\"file_hash\":\"eab5d6b6d3fcbdade3289ee305e78336\",\"format\":\"\",\"size\":2243403,\"bitrate\":523242,\"video_quality\":\"lowest\"}]},\"name\":\"My favorite go-to sweater.  .#holidayhaul  #sweater  #christmas  #dropshoulder  #fyp \",\"release_date\":\"1765290654\",\"item_id\":\"7581865440012438798\",\"like_cnt\":12,\"play_cnt\":803,\"comment_cnt\":3,\"video_products\":[{\"name\":\"Women's Colorblock Drop Shoulder Sweater, Casual Long Sleeve Round Neck Jumper, Ladies' Knitwear for Daily Wear, Sweaters for Women, Tops, Womenswear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/1b8f8f76304b4358937c4e29939c52ee~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729495153140273318\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"28.19\",\"formatted_price\":\"$28.19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"28.19\",\"formatted_price\":\"$28.19\"},\"promoted_product_num\":\"18688\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"15\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"536.47\",\"symbol\":\"$\",\"format\":\"$536.47\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":385,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"165.07\",\"symbol\":\"$\",\"format\":\"$165.07\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":170,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"997\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"440\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"407\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"5448\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"440\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"407\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.3\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495298059707779153\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"luckygirl_us\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"luckygirl_us\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/7682ef735fb61e7ed258abe2123402d4~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=e4f3c9fd&x-expires=1768640400&x-signature=6c27g6pXji0WEKWgUVkgZ0zRn9g%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/7682ef735fb61e7ed258abe2123402d4~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=f63aaf35&x-expires=1768640400&x-signature=uSRlueiBe9IJ0iCmNyfx9uo3n%2Fo%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"657\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"323\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d445rvfog65vullkpc5g\",\"duration\":6.934,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oQHtfSLC6ZvIImLjYYQDp4AkaXAeW7fIuoEQ1G~tplv-noop.image?dr=12525&refresh_token=3092fa59&x-expires=1768492018&x-signature=h0DxxYgrPG%2Bwi3mXYSSl6D3tMnw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/dd3bd68921c4e11f29011b621af315ec/69690bf2/video/tos/useast5/tos-useast5-ve-0068c001-tx/okDW7pFB9M3EEGFRosEFPCAStXgfL9fIY4CI2D/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=778&bt=389&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NGc6OjU6Ojg6OTU2aGRoaUBpamZub3k5cnk4NzMzZzczNEAzLTRjNF40XzQxNDRjLjI2YSMybWlyMmRjbzFhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/dd3bd68921c4e11f29011b621af315ec/69690bf2/video/tos/useast5/tos-useast5-ve-0068c001-tx/okDW7pFB9M3EEGFRosEFPCAStXgfL9fIY4CI2D/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=778&bt=389&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NGc6OjU6Ojg6OTU2aGRoaUBpamZub3k5cnk4NzMzZzczNEAzLTRjNF40XzQxNDRjLjI2YSMybWlyMmRjbzFhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492018,\"width\":480,\"height\":854,\"file_hash\":\"96b024f7f8219c24bcab3e80e5a3208c\",\"format\":\"\",\"size\":345282,\"bitrate\":398364,\"video_quality\":\"lowest\"}]},\"name\":\"#fyp #tchic #tiktokshopblackfriday #tiktokshopcybermonday #spotlightfinds #tiktokshoprestock #dealsforyoudays #jacket #hoodie #longcoat #windproofjacket #womenswear #winterjacket #plussizefashion #loosefit #oversize \",\"release_date\":\"1762156380\",\"item_id\":\"7568403510119730445\",\"like_cnt\":1277,\"play_cnt\":200448,\"comment_cnt\":14,\"video_products\":[{\"name\":\"FINJANI Plus Size Women's Long-Sleeve Hooded Casual Jacket Windproof Polyester Thin Fall Fleece-Lined Peacoat for Everyday Wear Autumn Coat Perfect for Gifts\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ac16798f366e4412a24482d0f3eda915~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731796333458657583\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"67\",\"formatted_price\":\"$67\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"67\",\"formatted_price\":\"$67\"},\"promoted_product_num\":\"1217\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3qup0vog65jc21vlm9g\",\"duration\":6.234,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/okBIBizBZI7eBiIE2VlfHPAkC6XTBRAY1oEvAE~tplv-noop.image?dr=12525&refresh_token=4975fafc&x-expires=1768492018&x-signature=4izSbpuNErVUN7ZrY%2BlispXHdzs%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/e16e2d003936ef755c37bff7c49cb280/69690bf2/video/tos/useast8/tos-useast8-ve-0068c002-tx2/ogEPlBIAV5AiTiv7LKR2zefI8ZBKEBnE6JloY1/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1472&bt=736&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NGk5Ojw5OTloaWc1NjQ7OUBpanB5NW05cjN4NjMzaTczNEAwL2EyXjYvXjUxNjAuXi9jYSM2aS5gMmRzbW5hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/e16e2d003936ef755c37bff7c49cb280/69690bf2/video/tos/useast8/tos-useast8-ve-0068c002-tx2/ogEPlBIAV5AiTiv7LKR2zefI8ZBKEBnE6JloY1/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1472&bt=736&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NGk5Ojw5OTloaWc1NjQ7OUBpanB5NW05cjN4NjMzaTczNEAwL2EyXjYvXjUxNjAuXi9jYSM2aS5gMmRzbW5hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492018,\"width\":480,\"height\":854,\"file_hash\":\"a28efd994fb8fdd0ef8d9b757ff5db5b\",\"format\":\"\",\"size\":587510,\"bitrate\":753942,\"video_quality\":\"lowest\"}]},\"name\":\"#fyp #tiktokshop #tchic #spotlightfinds #tiktokshoprestock #2025 #OOTD #girlswear #tiktokshopblackfriday #fallsale #dealsforyoudays #dealsforyou #pajamaset #sleepwear #longsleeveshirt #pants #christmas #pyjamaparty #casualstyle #fallfit #winterfit #homewear #loungewear #loosefit \",\"release_date\":\"1760947787\",\"item_id\":\"7563212853029719327\",\"like_cnt\":283,\"play_cnt\":43588,\"comment_cnt\":3,\"video_products\":[{\"name\":\"【Christmas】Women's Christmas Pajama Set, Soft Long Sleeve Shirt & Elastic Pants, Holiday Party Sleepwear, Casual Fall Winter Home Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/c65416c6be63495cb35c23faa8459cf3~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731789169137586400\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"22.99\",\"formatted_price\":\"$22.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"22.99\",\"formatted_price\":\"$22.99\"},\"promoted_product_num\":\"3725\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d3sakj7og65h35fvr12g\",\"duration\":7.934,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/ocejQISZKEZrPoXxC3CfQOfVADLLHRAV87GkdI~tplv-noop.image?dr=12525&refresh_token=c29df77b&x-expires=1768492019&x-signature=c6frgR2n6xSYTDbDSdMpwr1jHCA%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/055b384a45e90116ed4a74b8067e522a/69690bf3/video/tos/useast5/tos-useast5-ve-0068c003-tx/oMm4jRGMeXrEIqOkHAEBhipfMfGAWFIDG9kCFK/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=700&bt=350&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NGhpN2g3Zzs7PDVkaDZoPEBpajR5OGs5cm1kNjMzZzczNEBhXjBeXzUxNjIxXjE1Yl4vYSMvb2MwMmQ0aHBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/055b384a45e90116ed4a74b8067e522a/69690bf3/video/tos/useast5/tos-useast5-ve-0068c003-tx/oMm4jRGMeXrEIqOkHAEBhipfMfGAWFIDG9kCFK/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=700&bt=350&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NGhpN2g3Zzs7PDVkaDZoPEBpajR5OGs5cm1kNjMzZzczNEBhXjBeXzUxNjIxXjE1Yl4vYSMvb2MwMmQ0aHBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492019,\"width\":480,\"height\":854,\"file_hash\":\"1bedc804dcb66987972a15ac4d4ce344\",\"format\":\"\",\"size\":356169,\"bitrate\":359131,\"video_quality\":\"lowest\"}]},\"name\":\"#fyp #tiktokshop #tchic #spotlightfinds #tiktokshoprestock #2025 #OOTD #girlswear #tiktokshopblackfriday #fallsale #dealsforyoudays #dealsforyou #twopieceset #womenwear #casualoutfits #fallfit #winterfit #hoodie #leggings #sportswear #gymwear #sweatsuit #hoodieset \",\"release_date\":\"1761127005\",\"item_id\":\"7563982814765436215\",\"like_cnt\":121,\"play_cnt\":29044,\"comment_cnt\":3,\"video_products\":[{\"name\":\"New Style Autumn and Winter Women'S New Casual Hoodie Coat Sports Suit\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/0d8e451fede844e9bd3cd37e168bddd7~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730148434180936457\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"6.25\",\"formatted_price\":\"$6.25\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"6.25\",\"formatted_price\":\"$6.25\"},\"promoted_product_num\":\"759\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"181\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"2667.30\",\"symbol\":\"$\",\"format\":\"$2,667.30\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":53,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"2667.30\",\"symbol\":\"$\",\"format\":\"$2,667.30\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":52,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"950\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"323\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"323\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"6945\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"323\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"323\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"3.1\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494003520016910717\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"luvv.nadia1\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"نادية\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/a9d5a92c154f1b4e1a3e6a6ea4b1793e~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=4560b11c&x-expires=1768640400&x-signature=n2bwx0YVdwd1udSwS1zW2e7yBOM%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/a9d5a92c154f1b4e1a3e6a6ea4b1793e~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=4646fee2&x-expires=1768640400&x-signature=1eSLx7wo%2Bu7xVVIJsHahBhZhjtU%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"1300\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"54708\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d5atfq7og65jgd8h4cn0\",\"duration\":8.567,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/okrqAqDB7QSYFqkfykfCjBoytnZYs6IIAEHceI~tplv-noop.image?dr=12525&refresh_token=4a1c7005&x-expires=1768492020&x-signature=WFez8ZX2CRtzX%2BZQrw5TR2B7Ydk%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/751ddbbaed3c3eb9708e91641d2bb957/69690bf4/video/tos/useast5/tos-useast5-ve-0068c003-tx/oAIIioQAkDAFcE62lHjZnqfqefDLHCIIkQXSBV/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=964&bt=482&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGkzM2dnZ2c2NWVkOGhlPEBpM2ZrZ205cnR3ODMzZzczNEBiMDFeYl8zNjQxMzZiMDMvYSNrMTVkMmQ0Y15hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/751ddbbaed3c3eb9708e91641d2bb957/69690bf4/video/tos/useast5/tos-useast5-ve-0068c003-tx/oAIIioQAkDAFcE62lHjZnqfqefDLHCIIkQXSBV/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=964&bt=482&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGkzM2dnZ2c2NWVkOGhlPEBpM2ZrZ205cnR3ODMzZzczNEBiMDFeYl8zNjQxMzZiMDMvYSNrMTVkMmQ0Y15hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492020,\"width\":576,\"height\":1024,\"file_hash\":\"9948d714ebd7f401dde337cd93ded7eb\",\"format\":\"\",\"size\":528873,\"bitrate\":493869,\"video_quality\":\"lowest\"}]},\"name\":\"#mascara #fyp  #labubudubaichocolate #skyhigh #kpopdemonhunter \",\"release_date\":\"1767233900\",\"item_id\":\"7590211712737873207\",\"like_cnt\":5215,\"play_cnt\":97747,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Maybelline Lash Sensational Sky High Washable Mascara Makeup, Volumizing, Lengthening, Defining, Curling, Multiplying, Buildable Formula\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/d29321b95ca645fbaac7ca7b41ca7044~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729447573078577810\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"12.99\",\"formatted_price\":\"$12.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"12.99\",\"formatted_price\":\"$12.99\"},\"promoted_product_num\":\"1717\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4h7crvog65v92occge0\",\"duration\":14.667,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oQDLxpnBSGZEESFRnQICctASDdgfcvfib8II6D~tplv-noop.image?dr=12525&refresh_token=565a0025&x-expires=1768492026&x-signature=2fLRXZXr3GoalVh4gQk0az9DHbw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/3b80ad45f736c4739fe1a31ddb9472dc/69690bfa/video/tos/useast5/tos-useast5-ve-0068c004-tx/o8ARDEgDISpMG6E7EBi4QSFpLIcNdDfnfgALZv/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=882&bt=441&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGQ8ZDNpaWk5Nzc3NmczM0BpM2pmNXk5cnU6NzMzZzczNEAvNi5eNmEtNWIxNDIwMTIzYSNiYGw2MmRzYGVhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/3b80ad45f736c4739fe1a31ddb9472dc/69690bfa/video/tos/useast5/tos-useast5-ve-0068c004-tx/o8ARDEgDISpMG6E7EBi4QSFpLIcNdDfnfgALZv/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=882&bt=441&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGQ8ZDNpaWk5Nzc3NmczM0BpM2pmNXk5cnU6NzMzZzczNEAvNi5eNmEtNWIxNDIwMTIzYSNiYGw2MmRzYGVhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"url_expire\":1768492026,\"width\":480,\"height\":854,\"file_hash\":\"eca00744b469f212274fbd45a940f0eb\",\"format\":\"\",\"size\":829312,\"bitrate\":452341,\"video_quality\":\"lowest\"}]},\"name\":\"Cold girl chic🤍 #hollisterpartner @hollister #fyp \",\"release_date\":\"1763866537\",\"item_id\":\"7575748951618489613\",\"like_cnt\":6935,\"play_cnt\":68203,\"comment_cnt\":0}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"},{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":962,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":947,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"3168\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"27629\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"54708\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"0-10\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"18-24\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"8486\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"27629\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"54708\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"18-24\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495110957317589521\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"dean_jon\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"dean_jon\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/51f2c647486d23d70cb80c7d5c336e2c~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=b55fc1de&x-expires=1768640400&x-signature=8Vk0L4%2F4I4Z2bPwz4ug1tit%2F3tI%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/51f2c647486d23d70cb80c7d5c336e2c~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=c878ec97&x-expires=1768640400&x-signature=9Px8y41g%2BEyGUnbqeVwSu2xCoj8%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"1201\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"440\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d47etevog65r1lbfm220\",\"duration\":8.834,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o0CiECA7EGIpodUdUf7DOI3b0ua7VBTMhBiwAB~tplv-noop.image?dr=12525&refresh_token=f594d844&x-expires=1768492020&x-signature=rMFa%2BjWCC5uXqHBare1U0%2BKjazw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/11379248166968f6f772a6e41c889f6e/69690bf4/video/tos/useast5/tos-useast5-ve-0068c003-tx/oouCBhdpuEA3C8nV7H7dOfGtEwi7DABM0IbIHi/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=804&bt=402&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODtlOWk4ZTVoOzg8OjVpOEBpMzVpb3U5cmhoNzMzZzczNEBgLzBiNDU1NTQxM2NeNF5hYSMval8uMmRzcTRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/11379248166968f6f772a6e41c889f6e/69690bf4/video/tos/useast5/tos-useast5-ve-0068c003-tx/oouCBhdpuEA3C8nV7H7dOfGtEwi7DABM0IbIHi/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=804&bt=402&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODtlOWk4ZTVoOzg8OjVpOEBpMzVpb3U5cmhoNzMzZzczNEBgLzBiNDU1NTQxM2NeNF5hYSMval8uMmRzcTRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492020,\"width\":480,\"height\":854,\"file_hash\":\"e7119b5725393946242dfb34f9456f47\",\"format\":\"\",\"size\":454771,\"bitrate\":411836,\"video_quality\":\"lowest\"}]},\"name\":\"perfect for every Hamilton fan 🎭💫 #tiktokshopblackfriday  #tiktokshopcybermonday  #spotlightfinds #musicalmerch #hamiltonsweatshirt \",\"release_date\":\"1762586342\",\"item_id\":\"7570250399756602679\",\"like_cnt\":764,\"play_cnt\":43006,\"comment_cnt\":3,\"video_products\":[{\"name\":\"Theatre Inspirational Vintage Loose-Fit Pullover - Musical \\\"Hamilton\\\" Quote & Logo Oversized Sweatshirt\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/710ead8b3cca40a081388d508e0789f0~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731950381713297944\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"19.79\",\"formatted_price\":\"$19.79\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"19.79\",\"formatted_price\":\"$19.79\"},\"promoted_product_num\":\"1035\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4c2an7og65n6dpcdatg\",\"duration\":9.7,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/osCiL3VBiYg3a7wEXEPpqlBAk4EIgRGJMU0YL~tplv-noop.image?dr=12525&refresh_token=c7de6333&x-expires=1768492021&x-signature=ETQjbgK94hUvoAF5HiLCJd%2FK5uo%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/fccf40bcd0af19b1e6a020662b5e15a9/69690bf5/video/tos/useast5/tos-useast5-ve-0068c002-tx/o42VWgSDpBSuVdNFEEUC1AQZEDWwfGfguRIwAc/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3642&bt=1821&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=PDRoNGk4Ozo5Njk5PDU5M0BpamRmZ3E5cnE1NzMzZzczNEAuLS1iM2EyNTExLmJfMF5eYSNxYW0zMmQ0XmBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/fccf40bcd0af19b1e6a020662b5e15a9/69690bf5/video/tos/useast5/tos-useast5-ve-0068c002-tx/o42VWgSDpBSuVdNFEEUC1AQZEDWwfGfguRIwAc/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3642&bt=1821&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=PDRoNGk4Ozo5Njk5PDU5M0BpamRmZ3E5cnE1NzMzZzczNEAuLS1iM2EyNTExLmJfMF5eYSNxYW0zMmQ0XmBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492021,\"width\":720,\"height\":1280,\"file_hash\":\"ae9227abb294552816d6d47ddc560a2a\",\"format\":\"\",\"size\":2261072,\"bitrate\":1864801,\"video_quality\":\"normal\"}]},\"name\":\"Warm & Stylish Women's Bear Two-Piece Set🐻 #tiktokshopblackfriday  #tiktokshopcybermonday  #spotlightfinds #sweaterset #longsleeve \",\"release_date\":\"1763190146\",\"item_id\":\"7572843791367884087\",\"like_cnt\":80,\"play_cnt\":15962,\"comment_cnt\":4,\"video_products\":[{\"name\":\"Women's Fall Winter Sweater Set, Thick Knit Long Sleeve Top & High Waist Straight Leg Pants, Casual Fashion Two-Piece\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/6e6160ca6fd64cbeaf24e79ff2692c45~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731976013711970928\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.19\",\"formatted_price\":\"$39.19\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.19\",\"formatted_price\":\"$39.19\"},\"promoted_product_num\":\"1472\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4i1bjfog65ril7cfk3g\",\"duration\":8.967,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o4oHEHiNSUpmI00kBBBAIrk7Il0wFAwCLgi7fS~tplv-noop.image?dr=12525&refresh_token=d5b08530&x-expires=1768492020&x-signature=66R8cEhmDN0WaQuEdvoOpO6BGXE%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/726fcf53ab37ce1cb728a737e98a0467/69690bf4/video/tos/useast5/tos-useast5-pve-0068-tx/oQ07F0Q0fAAqFUBmConkrlEw7iIsgkNlHpiIBH/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=636&bt=318&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aDxmNjloNTNoN2hkNDhmNEBpam5mb3U5cm00NzMzZzczNEBgYGNfLzMvXy0xYWE1YWJeYSMwYzRmMmRjX2ZhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/726fcf53ab37ce1cb728a737e98a0467/69690bf4/video/tos/useast5/tos-useast5-pve-0068-tx/oQ07F0Q0fAAqFUBmConkrlEw7iIsgkNlHpiIBH/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=636&bt=318&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aDxmNjloNTNoN2hkNDhmNEBpam5mb3U5cm00NzMzZzczNEBgYGNfLzMvXy0xYWE1YWJeYSMwYzRmMmRjX2ZhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492020,\"width\":480,\"height\":854,\"file_hash\":\"43ee31543841597f6352d43d34bef95c\",\"format\":\"\",\"size\":365837,\"bitrate\":326385,\"video_quality\":\"lowest\"}]},\"name\":\"For anyone who can’t stop singing Hamilton lyrics.💕 #tiktokshopblackfriday  #tiktokshopcybermonday  #spotlightfinds #tiktokshopholidayhaul #hamilton \",\"release_date\":\"1763972741\",\"item_id\":\"7576204862166142222\",\"like_cnt\":1995,\"play_cnt\":71852,\"comment_cnt\":25,\"video_products\":[{\"name\":\"Theatre Inspirational Vintage Loose-Fit Pullover - Musical \\\"Hamilton\\\" Quote & Logo Oversized Sweatshirt\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/710ead8b3cca40a081388d508e0789f0~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731950381713297944\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"19.79\",\"formatted_price\":\"$19.79\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"19.79\",\"formatted_price\":\"$19.79\"},\"promoted_product_num\":\"1035\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"409\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"5642.09\",\"symbol\":\"$\",\"format\":\"$5,642.09\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_604206\",\"name\":\"Toys & Hobbies\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":154,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"5642.09\",\"symbol\":\"$\",\"format\":\"$5,642.09\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":162,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"2074\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"444\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"440\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"4565\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"444\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"440\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.5\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495284989944629584\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"lunaterra_us\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Luna Terra\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/322154704b474a47206227b666a39969~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=b6bd1aa1&x-expires=1768640400&x-signature=2krTLzd4RdDFtACov0WJyYXnGX0%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/322154704b474a47206227b666a39969~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=10cff7b0&x-expires=1768640400&x-signature=wfkx6gF8l7Air6nljUTZgG7pnY4%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"1819\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"is_authorized\":false,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"1601\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"is_authorized\":false,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d47d0d7og65p41r8r9pg\",\"duration\":11.034,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oEEaOQ0YiPQi7OBIA5azREBYQApIBNcH8VNkV~tplv-noop.image?dr=12525&refresh_token=e00fa9f5&x-expires=1768492023&x-signature=Rc8VC7lBpay1ecXkl84IGOUdYgs%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/d4451e4130b64b32afd577e02045a349/69690bf7/video/tos/useast8/tos-useast8-pve-0068-tx2/oYUHN7D5EIE5pPazIAaiBOBVVpiHRqQsNa0AQ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=710&bt=355&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OmY3Nmk3MzVpMzg1ODdoZEBpajw7NHM5cmdnNzMzaTczNEBiNDNjLTAxXjAxXi9fMjVgYSNtb28xMmQ0LTRhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/d4451e4130b64b32afd577e02045a349/69690bf7/video/tos/useast8/tos-useast8-pve-0068-tx2/oYUHN7D5EIE5pPazIAaiBOBVVpiHRqQsNa0AQ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=710&bt=355&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OmY3Nmk3MzVpMzg1ODdoZEBpajw7NHM5cmdnNzMzaTczNEBiNDNjLTAxXjAxXi9fMjVgYSNtb28xMmQ0LTRhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492023,\"width\":480,\"height\":854,\"file_hash\":\"8b3b92878f4ec4a73a776cf0c24c97dd\",\"format\":\"\",\"size\":502181,\"bitrate\":364097,\"video_quality\":\"lowest\"}]},\"name\":\"The wave hem detail is everything ✨🫶🏼adds that soft, feminine touch I love. #bodycondress #dress #spotlightfinds  #tiktokshopcreatorpicks #tiktokshopblackfriday \",\"release_date\":\"1762578772\",\"item_id\":\"7570218104798678303\",\"like_cnt\":33286,\"play_cnt\":1755171,\"comment_cnt\":66,\"video_products\":[{\"name\":\"Women's Elegant Colorblock Wave Hem A-Line Long Sleeve Knit Dress, Fall & Winter Plain Pattern Tight-Fitting Casual\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/aa324acdb81e4379b88b446520c545f5~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729636298390933984\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"24.89\",\"formatted_price\":\"$24.89\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"67.19\",\"formatted_price\":\"$67.19\"},\"promoted_product_num\":\"39420\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4atq8fog65vmcobi4cg\",\"duration\":9.767,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o8ZSXppFAAhfDjfbAILyKwqGDemIyM7IIICorQ~tplv-noop.image?dr=12525&refresh_token=d58bcd8b&x-expires=1768492021&x-signature=3M7B64N%2F90R0YcLZRpYLIzIuVns%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/89914490c1c017477dd5e3e4577bb6f1/69690bf5/video/tos/useast8/tos-useast8-pve-0068-tx2/oAV5FZmREIsCE4zEEpdAm0DfFhfGABGFwEOVAJ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=636&bt=318&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTNpZWg6NDM4PDg2NzU4aUBpajdlZnk5cjt3NzMzaTczNEAzMWI2Nl8yX14xXi4vMTZiYSNgZmxqMmRjbl5hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/89914490c1c017477dd5e3e4577bb6f1/69690bf5/video/tos/useast8/tos-useast8-pve-0068-tx2/oAV5FZmREIsCE4zEEpdAm0DfFhfGABGFwEOVAJ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=636&bt=318&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTNpZWg6NDM4PDg2NzU4aUBpajdlZnk5cjt3NzMzaTczNEAzMWI2Nl8yX14xXi4vMTZiYSNgZmxqMmRjbl5hLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492021,\"width\":480,\"height\":854,\"file_hash\":\"17ab96c923eeb543405fb7d1ae16598a\",\"format\":\"\",\"size\":398348,\"bitrate\":326280,\"video_quality\":\"lowest\"}]},\"name\":\"So stretchy and comfy but still cute <3 #dress #longsleevedress #spotlightfinds  #TikTokShopCreatorPicks #tiktokshopblackfriday \",\"release_date\":\"1763041379\",\"item_id\":\"7572205012839894302\",\"like_cnt\":26546,\"play_cnt\":801130,\"comment_cnt\":55,\"video_products\":[{\"name\":\"Y2K Style Women's Long Sleeve Mini Dress, Square Neck Flare Sleeves, Casual for Spring & Fall Seasons\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/27944d07843f421dadd1ed91a2d759c1~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731476217120265147\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"16.89\",\"formatted_price\":\"$16.89\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"16.89\",\"formatted_price\":\"$16.89\"},\"promoted_product_num\":\"8470\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d5720p7og65o5426p3f0\",\"duration\":14.034,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o4IftRBpFTcQBFZ2w8SDPACEVGEfAkU7jQ5gEi~tplv-noop.image?dr=12525&refresh_token=08fd2fbb&x-expires=1768492026&x-signature=D0VXulxlu0eTw6ohIoE8M4xGXoU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/1c95ab717909ee97cc2804102fadb0e2/69690bfa/video/tos/useast8/tos-useast8-ve-0068c002-tx2/ogIwGFUEEEBIA2TZiOfBe1kARggapDVjEK8IBb/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=790&bt=395&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZWk3NDxmMzpkNzw8PDo6Z0BpMzY5N3I5cnM1ODMzaTczNEAuMS1hNWEuXzUxMGItYl4yYSNjbS8yMmQ0LTRhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/1c95ab717909ee97cc2804102fadb0e2/69690bfa/video/tos/useast8/tos-useast8-ve-0068c002-tx2/ogIwGFUEEEBIA2TZiOfBe1kARggapDVjEK8IBb/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=790&bt=395&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZWk3NDxmMzpkNzw8PDo6Z0BpMzY5N3I5cnM1ODMzaTczNEAuMS1hNWEuXzUxMGItYl4yYSNjbS8yMmQ0LTRhLS1kMTJzcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492026,\"width\":576,\"height\":1024,\"file_hash\":\"2182e04b037db7c107b768d145e40339\",\"format\":\"\",\"size\":710144,\"bitrate\":404813,\"video_quality\":\"lowest\"}]},\"name\":\"I didn’t expect to wear this as much as I do. Every piece works on its own too. 🎀🧸☁️✨ #sportwear #gymwear #spotlightfinds  #tiktokshopholidayhaul #TikTokShopCreatorPicks \",\"release_date\":\"1766727807\",\"item_id\":\"7588038031290928415\",\"like_cnt\":27438,\"play_cnt\":949304,\"comment_cnt\":75,\"video_products\":[{\"name\":\"Women's Sporty Casual Three-piece Outfits for Yoga Gym Workout, Gym Clothes Set, Ladies Spring & Fall Clothes\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/7d645e392b84409ebedca41a802da161~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729709432733012737\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"30.29\",\"formatted_price\":\"$30.29\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"34.69\",\"formatted_price\":\"$34.69\"},\"promoted_product_num\":\"3711\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"is_authorized\":false,\"status\":0},\"med_gmv_revenue\":{\"is_authorized\":false,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_824328\",\"name\":\"Menswear & Underwear\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":247,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"is_authorized\":false,\"status\":0},\"live_gmv\":{\"is_authorized\":false,\"status\":0},\"ec_video_engagement\":{\"value\":181,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"28927\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"1613\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"1601\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$60K-$150K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"1K+\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7635\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"1613\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"1601\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.2\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495106654117858185\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"olivia_grant_\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"olivia_grant_\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/b32b9eabb3245806a54900d471cde93c~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=7e255fbf&x-expires=1768640400&x-signature=q94gFVbZJNk4etfkMLDIZ8PqIic%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/b32b9eabb3245806a54900d471cde93c~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=5b2ca67b&x-expires=1768640400&x-signature=TG3USFQ3FRglBe4Iw0tG8XiSaiQ%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"743\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"308\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d3st25vog65ke5770mdg\",\"duration\":11.834,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/okBUni0CiI0fLilEWSDfn53jdw7bBRgc5oEOAD~tplv-noop.image?dr=12525&refresh_token=8e89d1f8&x-expires=1768492023&x-signature=kT%2BIsrjfU4cAEVITw3KQJPuOn60%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/3d5bd9f875c35f0fa1e4ef48b8d2aae5/69690bf7/video/tos/useast5/tos-useast5-ve-0068c002-tx/oYwEgqfIc5K0DKobUiOLEEiB5B0jfdAWRQBivS/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1616&bt=808&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZGdpMzo8ZmdnNzw5ODg3OUBpanA6OG45cjh3NjMzZzczNEBiXy82MzY0Xi0xMDUzLzAzYSNhLTRiMmRzL3BhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/3d5bd9f875c35f0fa1e4ef48b8d2aae5/69690bf7/video/tos/useast5/tos-useast5-ve-0068c002-tx/oYwEgqfIc5K0DKobUiOLEEiB5B0jfdAWRQBivS/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1616&bt=808&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZGdpMzo8ZmdnNzw5ODg3OUBpanA6OG45cjh3NjMzZzczNEBiXy82MzY0Xi0xMDUzLzAzYSNhLTRiMmRzL3BhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492023,\"width\":480,\"height\":854,\"file_hash\":\"472947b121556e64f71d78cc5e27618c\",\"format\":\"\",\"size\":1224448,\"bitrate\":827749,\"video_quality\":\"lowest\"}]},\"name\":\"Girls! Christmas about to turn into a total 'light disaster'? We've got your back! Enter these National Lampoon's Christmas Vacation women's PJs – the ultimate cozy chaos! 😍  #nationallampoonschristmasvacation  #clarkgriswold  #christmas #christmasvacation  #TikTokShopLaborDaySale #spotlightfinds #TikTokShopFallDealsForYou #TikTokShopBlackFriday  #TikTokShopCyberMonday  \",\"release_date\":\"1761202738\",\"item_id\":\"7564307693872123150\",\"like_cnt\":103,\"play_cnt\":38073,\"comment_cnt\":1,\"video_products\":[{\"name\":\"【Christmas Pajamas】It's A Beaut Clark Christmas Women's Set, Long Sleeve Button Front Top & Elastic Pants, Soft Comfortable Holiday Sleepwear & Loungewear for Women\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/4b784c3b77044df6ae8ba5af1332b531~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731826469264003458\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"28.09\",\"formatted_price\":\"$28.09\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"31.59\",\"formatted_price\":\"$31.59\"},\"promoted_product_num\":\"1483\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d44ucv7og65kjf7g2tv0\",\"duration\":6.667,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oYTC7kvIjQNAnkpfpYIC54DSSe8FEH8eCA8Z0E~tplv-noop.image?dr=12525&refresh_token=1623c39a&x-expires=1768492018&x-signature=mozLHecyeFXnm%2BycxFkw5qjJGiM%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/cc31c5c0f11427c31c623f75e4d65773/69690bf2/video/tos/useast5/tos-useast5-ve-0068c002-tx/oQ6eSHEpZFDCA4A8ILAIC55JekFUjE7EFD1Nf8/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=776&bt=388&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NjU7Zmg7ZTRkaWg5OjhmNkBpM3dqaW45cnl4NzMzZzczNEBhNC5eMzRiX2MxYl5eMC8zYSNzLzRnMmQ0YDFhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/cc31c5c0f11427c31c623f75e4d65773/69690bf2/video/tos/useast5/tos-useast5-ve-0068c002-tx/oQ6eSHEpZFDCA4A8ILAIC55JekFUjE7EFD1Nf8/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=776&bt=388&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NjU7Zmg7ZTRkaWg5OjhmNkBpM3dqaW45cnl4NzMzZzczNEBhNC5eMzRiX2MxYl5eMC8zYSNzLzRnMmQ0YDFhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492018,\"width\":480,\"height\":854,\"file_hash\":\"0ffd2b8ae5e8000fbc4c262a73cf0df9\",\"format\":\"\",\"size\":331712,\"bitrate\":398034,\"video_quality\":\"lowest\"}]},\"name\":\"“Layer a cami. Or rock it solo. Your call.” 🔁😎 #TikTokShopBlackFriday #TikTokShopCyberMonday #spotlightfinds                   #MeshJumpsuit #TieNeckJumpsuit \",\"release_date\":\"1762257215\",\"item_id\":\"7568836685086215438\",\"like_cnt\":746,\"play_cnt\":50343,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Women's Fashion Mesh Jumpsuit with Trendy Collar and Tie Design, Versatile Single Wear & Layering, All-Season Comfortable\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/909c3e1a32414cd1ac2a94d65afc1c04~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731845836540908110\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"28.29\",\"formatted_price\":\"$28.29\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"28.29\",\"formatted_price\":\"$28.29\"},\"promoted_product_num\":\"1321\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4amn5fog65ggulfr0s0\",\"duration\":10.034,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/ooHC4frV9wmIBrcICrwiAKApbBiiEiu60gXhTg~tplv-noop.image?dr=12525&refresh_token=f8bef586&x-expires=1768492022&x-signature=6bWTOdRc8mA33NxNuYitpRpkAtI%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/0ea79e0bd9bd55c9741afa5e28d76c13/69690bf6/video/tos/useast5/tos-useast5-ve-0068c001-tx/oUCr9KIwpRAi4irbs8Igwif6JXB3BA6E9LH0hV/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1214&bt=607&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZzkzZ2Q4NjY1NTk0NjY1PEBpMzNpeGo5cjhwNzMzZzczNEAzLzMvXmBhNV4xLjYuMi1eYSNwb2lkMmRja15hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/0ea79e0bd9bd55c9741afa5e28d76c13/69690bf6/video/tos/useast5/tos-useast5-ve-0068c001-tx/oUCr9KIwpRAi4irbs8Igwif6JXB3BA6E9LH0hV/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1214&bt=607&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZzkzZ2Q4NjY1NTk0NjY1PEBpMzNpeGo5cjhwNzMzZzczNEAzLzMvXmBhNV4xLjYuMi1eYSNwb2lkMmRja15hLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492022,\"width\":480,\"height\":854,\"file_hash\":\"cb48c3af34dc52fb7da753d7722ef39b\",\"format\":\"\",\"size\":780443,\"bitrate\":622238,\"video_quality\":\"lowest\"}]},\"name\":\"Wicked fans!! This matching Wicked pajamas for you!!🥰 #wicked   #wickedthemusical #wickedmusical   #wickedwitchofthewest #pajamaset     #spotlightfinds #TikTokShopFallDealsForYou #TikTokShopBlackFriday  #TikTokShopCyberMonday  #BlackFridavStyleSteals \",\"release_date\":\"1763011707\",\"item_id\":\"7572077390482984205\",\"like_cnt\":14,\"play_cnt\":3271,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Wicked Movie Autumn Winter Cute Bow  Long Sleeve Pajama Set, Comfortable Sleepwear, Wicked Movie,cozy sleepwear,Green Velvet,Cosplay Movie Night,elphaba,glinda\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/0484d51efaac4dd8aeead955de3f975c~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731988396084662456\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"25.79\",\"formatted_price\":\"$25.79\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"25.79\",\"formatted_price\":\"$25.79\"},\"promoted_product_num\":\"765\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"195\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"3437.22\",\"symbol\":\"$\",\"format\":\"$3,437.22\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_602284\",\"name\":\"Baby & Maternity\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":249,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"3437.22\",\"symbol\":\"$\",\"format\":\"$3,437.22\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":142,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"671\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"312\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"308\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"6877\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"312\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"308\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.5\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494016847100218282\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"staceydenton8\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"STACEYRD ❌❌\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/92ea2b77a3ec67441475425b1427ddac~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=7d759da6&x-expires=1768640400&x-signature=iJ5iNpAF9rOh442Wb5wW6uGT7%2Bs%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/92ea2b77a3ec67441475425b1427ddac~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=04173273&x-expires=1768640400&x-signature=nlYdl82jvVMtAs8UHYzl07mhKnU%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"9968\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"148\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d4ft5ovog65iqug3a7hg\",\"duration\":21.9,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oApHIlP1Qk9GBqrEQjvfRDApERFDoSf0DgBDLE~tplv-noop.image?dr=12525&refresh_token=a0a349f9&x-expires=1768492033&x-signature=8xbKGXB4oALDeWycXQu0G6RP8W4%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/9d8ef128744c251d89792265e84451e6/69690c01/video/tos/useast5/tos-useast5-ve-0068c003-tx/ocFLEt8pHACqDPjSEl094R1BSkffIJBNErGgQD/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=436&bt=218&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGY8Nmg6ZjhpZTtmZGQ7M0Bpajo2eGw5cnJ3NzMzZzczNEBiNi1iNWIzXy4xNC02MmFgYSNlXmRuMmRzMmNhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/9d8ef128744c251d89792265e84451e6/69690c01/video/tos/useast5/tos-useast5-ve-0068c003-tx/ocFLEt8pHACqDPjSEl094R1BSkffIJBNErGgQD/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=436&bt=218&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGY8Nmg6ZjhpZTtmZGQ7M0Bpajo2eGw5cnJ3NzMzZzczNEBiNi1iNWIzXy4xNC02MmFgYSNlXmRuMmRzMmNhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"url_expire\":1768492033,\"width\":480,\"height\":854,\"file_hash\":\"0889a2337382803095ee3179ae675b58\",\"format\":\"\",\"size\":612975,\"bitrate\":223917,\"video_quality\":\"lowest\"}]},\"name\":\"#tiktokshopblackfriday \",\"release_date\":\"1763693624\",\"item_id\":\"7575006282009120055\",\"like_cnt\":68,\"play_cnt\":12344,\"comment_cnt\":36,\"video_products\":[{\"name\":\"Holafish Tie-dye Oversized Hoodies Sweatshirt - Women's Long Sleeve Cotton Blend Vintage Effect Loose Fit Pullover Top for Casual & Trendy Looks\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/dd2b756280e4416dba16c113791fc20d~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732026452128665919\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"promoted_product_num\":\"657\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4414r7og65mjvs1kscg\",\"duration\":51.034,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oM4WyIC0Qtjk4T7Z180fQQCASP4JfMgeEDQAAH~tplv-noop.image?dr=12525&refresh_token=b76f3c4e&x-expires=1768492063&x-signature=YdW40FFcLfDqz2MkLlFfl3hKJVA%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/82c5b1f64769e87ea1b2f0f207de4e36/69690c1f/video/tos/useast5/tos-useast5-ve-0068c003-tx/oYZRtCEMgIPVTISqEfJsErgIDfAQFDQcaBQpBE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2648&bt=1324&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=MzpnPGg8ZzozMztmZjloNUBpanY0eXA5cnU0NzMzZzczNEAyXzJfYmBeNi8xNC0zYy8zYSNgaHBnMmQ0MTFhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/82c5b1f64769e87ea1b2f0f207de4e36/69690c1f/video/tos/useast5/tos-useast5-ve-0068c003-tx/oYZRtCEMgIPVTISqEfJsErgIDfAQFDQcaBQpBE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2648&bt=1324&cs=0&ds=6&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=MzpnPGg8ZzozMztmZjloNUBpanY0eXA5cnU0NzMzZzczNEAyXzJfYmBeNi8xNC0zYy8zYSNgaHBnMmQ0MTFhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e00088000\",\"url_expire\":1768492063,\"width\":576,\"height\":1024,\"file_hash\":\"abd1ca066b9335497d477a8892f72b81\",\"format\":\"\",\"size\":8654265,\"bitrate\":1356627,\"video_quality\":\"normal\"}]},\"name\":\"Watch for coupons and flash sales on these!!  These are so good!!#christmas #crewneck #fyp #tiktokshop #christmasvacation \",\"release_date\":\"1762136698\",\"item_id\":\"7568319354304073015\",\"like_cnt\":69,\"play_cnt\":7702,\"comment_cnt\":25,\"video_products\":[{\"name\":\"Coquette Merry Christmas Floral Sweatshirt, Preppy Christmas Bow Sweatshirt, Checkered Red Plaid Letters Sweater, Trendy Christmas Tree, Faux Glitter, Flower\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/efad732c1a9440f884959e179537c944~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731887707511296570\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"29.99\",\"formatted_price\":\"$29.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"34.99\",\"formatted_price\":\"$34.99\"},\"promoted_product_num\":\"225\",\"status\":2}]},{\"video\":{\"id\":\"v12044gd0000d4gblcvog65ines25qe0\",\"duration\":20.4,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o87LEaGngLAVgfCQwLIkedINHKX7ejCBSuXpAp~tplv-noop.image?dr=12525&refresh_token=57a126a9&x-expires=1768492032&x-signature=BPePCyttUgVAOOQCg4DV55tJx0w%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/ef5ee140666a6681d8de739ced835539/69690c00/video/tos/useast5/tos-useast5-ve-0068c003-tx/owu0lW1gCAOyQIg7wIickupBZf76isFiBCAIgE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1784&bt=892&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OzlpNGY3Ojw3NDs6OmVpNkBpM3Q1aGw5cmZlNzMzZzczNEBgL2JjYjRfXzYxYzNhXjEwYSNiMnBrMmRzaWRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/ef5ee140666a6681d8de739ced835539/69690c00/video/tos/useast5/tos-useast5-ve-0068c003-tx/owu0lW1gCAOyQIg7wIickupBZf76isFiBCAIgE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1784&bt=892&cs=0&ds=3&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OzlpNGY3Ojw3NDs6OmVpNkBpM3Q1aGw5cmZlNzMzZzczNEBgL2JjYjRfXzYxYzNhXjEwYSNiMnBrMmRzaWRhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"url_expire\":1768492032,\"width\":720,\"height\":1280,\"file_hash\":\"c79040572490d44313e0d9f7acde61b2\",\"format\":\"\",\"size\":2329395,\"bitrate\":913488,\"video_quality\":\"normal\"}]},\"name\":\"Don’t miss out on these super soft hoodies!  #tiktokshopblackfriday #fyp #christmas \",\"release_date\":\"1763752630\",\"item_id\":\"7575259731292327182\",\"like_cnt\":36,\"play_cnt\":3558,\"comment_cnt\":20,\"video_products\":[{\"name\":\"Holafish Tie-dye Oversized Hoodies Sweatshirt - Women's Long Sleeve Cotton Blend Vintage Effect Loose Fit Pullover Top for Casual & Trendy Looks\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/dd2b756280e4416dba16c113791fc20d~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732026452128665919\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"promoted_product_num\":\"657\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"117\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"2154.18\",\"symbol\":\"$\",\"format\":\"$2,154.18\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_601739\",\"name\":\"Phones & Electronics\"},{\"starling_key\":\"magellan_600001\",\"name\":\"Home Supplies\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":904,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"2113.20\",\"symbol\":\"$\",\"format\":\"$2,113.20\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"6.85\",\"symbol\":\"$\",\"format\":\"$6.85\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":295,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"280\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"216\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"148\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"45-54\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7859\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"216\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"148\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"45-54\",\"55+\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.7\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495785950510615255\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"cathrynakers\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"cathrynakers\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/7087c4d9655b7503a397e54285d8600f~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=fedb1335&x-expires=1768640400&x-signature=S%2FhUpluIuE1oOvWGN4zVKnDVkiE%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/7087c4d9655b7503a397e54285d8600f~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=8ed9117e&x-expires=1768640400&x-signature=BvzZKz1gGVaeliO%2F5GMriRkFu40%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"140925\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"6931\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d4d6v9nog65h9687i9j0\",\"duration\":15.069,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o4pJp50mBRAivxbDvEc5Ba0ZBaISEm4g6CniU~tplv-noop.image?dr=12525&refresh_token=faaaead1&x-expires=1768492027&x-signature=hedQ1HiGRXpqK4T0a3oPe0VkjeQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/6673d16217987b61b85abe99feb81a33/69690bfb/video/tos/useast5/tos-useast5-ve-0068c001-tx/oAgBZAI4URSia6pBv4b8Bxm5EvKEaL5xJZBpi/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=758&bt=379&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODVnaDQ8NGg7ZzVoOzY0ZkBpMzw6OWs5cjw5NzMzZzczNEAwLl4tMTNfNTExNDUtYWExYSNnZjU2MmRrc2FhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/6673d16217987b61b85abe99feb81a33/69690bfb/video/tos/useast5/tos-useast5-ve-0068c001-tx/oAgBZAI4URSia6pBv4b8Bxm5EvKEaL5xJZBpi/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=758&bt=379&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODVnaDQ8NGg7ZzVoOzY0ZkBpMzw6OWs5cjw5NzMzZzczNEAwLl4tMTNfNTExNDUtYWExYSNnZjU2MmRrc2FhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"url_expire\":1768492027,\"width\":480,\"height\":854,\"file_hash\":\"b469d0e9cacba602335b0a966b003a00\",\"format\":\"\",\"size\":731167,\"bitrate\":388170,\"video_quality\":\"lowest\"}]},\"name\":\"\",\"release_date\":\"1763340201\",\"item_id\":\"7573488373562723639\",\"like_cnt\":4453,\"play_cnt\":184819,\"comment_cnt\":10,\"video_products\":[{\"name\":\"Ora Metallic Fringed Bra Top\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/eb59f07d72f844bd9ed42a3dac8f230b~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731996250857312418\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"25.6\",\"formatted_price\":\"$25.6\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"25.6\",\"formatted_price\":\"$25.6\"},\"promoted_product_num\":\"17\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4lptrfog65j9g2m6hd0\",\"duration\":11.145,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/osT05y9VdAxzBI07wEialnpB2fARjxciBCAMrI~tplv-noop.image?dr=12525&refresh_token=f62f3c88&x-expires=1768492023&x-signature=7XHRWw%2FBVrUpJeLYwGSoKVOj%2Blw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/807b83bc224356048f41a278bcb5ca9a/69690bf7/video/tos/useast5/tos-useast5-ve-0068c001-tx/ocfhnc2plABiVraIGEjGzXASRT9wy0aABCIrio/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=584&bt=292&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZzM7NDwzZTpoaGVnZWRoNEBpM2twam05cnVzNzMzZzczNEA1M2NiYC8tXi0xNGNhYzU2YSNhMy82MmRjcWlhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/807b83bc224356048f41a278bcb5ca9a/69690bf7/video/tos/useast5/tos-useast5-ve-0068c001-tx/ocfhnc2plABiVraIGEjGzXASRT9wy0aABCIrio/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=584&bt=292&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZzM7NDwzZTpoaGVnZWRoNEBpM2twam05cnVzNzMzZzczNEA1M2NiYC8tXi0xNGNhYzU2YSNhMy82MmRjcWlhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b0000\",\"url_expire\":1768492023,\"width\":480,\"height\":854,\"file_hash\":\"9b2d361d1912b3190868c243c35dc506\",\"format\":\"\",\"size\":416874,\"bitrate\":299236,\"video_quality\":\"lowest\"}]},\"name\":\"\",\"release_date\":\"1764466462\",\"item_id\":\"7578325606467767565\",\"like_cnt\":318,\"play_cnt\":20570,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Tanming Womens Cropped Sherpa Fleece Pullover Zip Up Jacket with Pockets Soft Fuzzy Lightweight Warm Coat Outerwear Womenswear Baggy Long Sleeve\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/5c50ac2bf0924cb78d2e0e33582b2de6~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729638295469723795\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"70.32\",\"formatted_price\":\"$70.32\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"70.32\",\"formatted_price\":\"$70.32\"},\"promoted_product_num\":\"4838\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4ck5gnog65kk994kfv0\",\"duration\":15.069,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oEAroIokSHZ9hfFSAGCOwHfMLDWIkQejdIUiy8~tplv-noop.image?dr=12525&refresh_token=c517c98f&x-expires=1768492027&x-signature=aldQPVpiCpYncSXayKF%2FXXpsMpU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/365331857c643d09039914b1bfb37152/69690bfb/video/tos/useast5/tos-useast5-ve-0068c002-tx/owvIeeoZoAbjGz3EOkSIAFCkQHMLIvJUSfWizA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1010&bt=505&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NjdoN2Y3MzlnODxlZTw3Z0BpM2k3PG45cmpuNzMzZzczNEAuMmEuMC8xNWExYF9gM2AvYSNzaDZoMmRrMmBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/365331857c643d09039914b1bfb37152/69690bfb/video/tos/useast5/tos-useast5-ve-0068c002-tx/owvIeeoZoAbjGz3EOkSIAFCkQHMLIvJUSfWizA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1010&bt=505&cs=0&ds=2&ft=GS-jnInz7ThcQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NjdoN2Y3MzlnODxlZTw3Z0BpM2k3PG45cmpuNzMzZzczNEAuMmEuMC8xNWExYF9gM2AvYSNzaDZoMmRrMmBhLS1kMS9zcw%3D%3D&vvpl=1&l=202601150946519B3DEFA7B7B3BA0482BD&btag=e000b8000\",\"url_expire\":1768492027,\"width\":480,\"height\":854,\"file_hash\":\"8cb843eebf39bf9ac26783da5929ee1c\",\"format\":\"\",\"size\":974640,\"bitrate\":517427,\"video_quality\":\"lowest\"}]},\"name\":\"@CMONEY \",\"release_date\":\"1763263216\",\"item_id\":\"7573157759907089677\",\"like_cnt\":33557,\"play_cnt\":792506,\"comment_cnt\":144,\"video_products\":[{\"name\":\"Ora Metallic Fringed Bra Top\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/eb59f07d72f844bd9ed42a3dac8f230b~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731996250857312418\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"25.6\",\"formatted_price\":\"$25.6\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"25.6\",\"formatted_price\":\"$25.6\"},\"promoted_product_num\":\"17\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"60\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"1707.22\",\"symbol\":\"$\",\"format\":\"$1,707.22\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"},{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":1155,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"1556.16\",\"symbol\":\"$\",\"format\":\"$1,556.16\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":374,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"70167\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"7683\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"6931\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"6908\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"7683\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"6931\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"18-24\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.3\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7496203586843281720\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"momma.stacy_\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Stacy💙\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/776b91dbd396b7d4f9f1073aed0a22f7~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=8e349195&x-expires=1768640400&x-signature=mV9wzYl9MjrlWQsGx6lvljMWOzc%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/776b91dbd396b7d4f9f1073aed0a22f7~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=edece248&x-expires=1768640400&x-signature=4QGv4KjgQM8wL0pPtHuQyGsSzkQ%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"1629\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"3256\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"780\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d58vc3fog65v7j69ka1g\",\"duration\":125.167,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oQPMEsCSIAFICZjDREI1fBKARNgDoFfYfqa9yI~tplv-noop.image?dr=12525&refresh_token=e03edae5&x-expires=1768492175&x-signature=rUDOxhe75Ml%2BXXCr1bYlK5lMl%2B8%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/fe1350fb2c067b3cdf271b85f9b5a7f1/69690c8f/video/tos/useast8/tos-useast8-ve-0068c001-tx2/o8SIAI8gGwkQlA7ejTGRSev6ZUrGRFLbUe6Qe0/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1196&bt=598&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OmczNGU3NzQ7Nmk2PDQ8OUBpamQ8bXk5cjZ5ODMzaTczNEBeNGJfLjItXjYxNjU2MzAtYSMuaDM0MmRjYDVhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00090000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/fe1350fb2c067b3cdf271b85f9b5a7f1/69690c8f/video/tos/useast8/tos-useast8-ve-0068c001-tx2/o8SIAI8gGwkQlA7ejTGRSev6ZUrGRFLbUe6Qe0/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1196&bt=598&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OmczNGU3NzQ7Nmk2PDQ8OUBpamQ8bXk5cjZ5ODMzaTczNEBeNGJfLjItXjYxNjU2MzAtYSMuaDM0MmRjYDVhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00090000\",\"url_expire\":1768492175,\"width\":576,\"height\":1024,\"file_hash\":\"74d193c4f3b44aea0c01d886131b43eb\",\"format\":\"\",\"size\":9595859,\"bitrate\":613315,\"video_quality\":\"lowest\"}]},\"name\":\"#tiktokshop #housedress #womensfashion #springfashion #trending \",\"release_date\":\"1766979417\",\"item_id\":\"7589118737035316511\",\"like_cnt\":2072,\"play_cnt\":334906,\"comment_cnt\":118,\"video_products\":[{\"name\":\"Women's Solid Color Cami Dress, Elegant Long Slip for Summer Heat, Dress for Summer\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/97d30f869bad44b9b90738f333d0c21b~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1732155655575801989\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"59.9\",\"formatted_price\":\"$59.9\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"59.9\",\"formatted_price\":\"$59.9\"},\"promoted_product_num\":\"1045\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4bkigvog65lcs96g39g\",\"duration\":30.9,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ocf0FoIsCrBiJXRiCSiShE3ZiTzxIAA16DAqZA~tplv-noop.image?dr=12525&refresh_token=15b9e0f5&x-expires=1768492080&x-signature=GgAB9ZMS%2FgAzArzfKAktVyI%2FGFY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/fe6f8db505df46def7053463bcd00d20/69690c30/video/tos/useast8/tos-useast8-ve-0068c004-tx2/oYpxiJfBqI1AIo0CZSLTgiD6XAZAniSdiQBhEA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=774&bt=387&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Z2Y0Nzc5Njw3OGZmZjU0aUBpajY5dm85cmpuNzMzaTczNEAxXy8wYWItNjAxYjRiXzIuYSM2ZDZgMmRzZl9hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/fe6f8db505df46def7053463bcd00d20/69690c30/video/tos/useast8/tos-useast8-ve-0068c004-tx2/oYpxiJfBqI1AIo0CZSLTgiD6XAZAniSdiQBhEA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=774&bt=387&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Z2Y0Nzc5Njw3OGZmZjU0aUBpajY5dm85cmpuNzMzaTczNEAxXy8wYWItNjAxYjRiXzIuYSM2ZDZgMmRzZl9hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"url_expire\":1768492080,\"width\":480,\"height\":854,\"file_hash\":\"a3eefd1aed0aaed6601a10e59638da22\",\"format\":\"\",\"size\":1532300,\"bitrate\":396711,\"video_quality\":\"lowest\"}]},\"name\":\"5’2  140 pounds  Wearing a small  #tiktokshopblackfriday #tiktokshop #womenfashion #fallfashion #tiktokblackfriday \",\"release_date\":\"1763133841\",\"item_id\":\"7572602122471001375\",\"like_cnt\":5867,\"play_cnt\":554885,\"comment_cnt\":97,\"video_products\":[{\"name\":\"Women's Solid Color Cami Lounge Dress, Elegant Sleeveless Long Dress for Summer, Ladies Sleepwear for Indoor Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/df15f866a9de408aa64e9fd3ed5c8840~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730913734356799641\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"20.79\",\"formatted_price\":\"$20.79\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"20.79\",\"formatted_price\":\"$20.79\"},\"promoted_product_num\":\"50481\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d59ifknog65j6b1gegf0\",\"duration\":119.791,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-maliva-p-0068c799-us/owmYtTfEkSEgpn7SAZEIjKYFvfFyZTIqIDeCAO~tplv-noop.image?dr=12525&refresh_token=35dd37b4&x-expires=1768492169&x-signature=Zpmnda7m7uxJH3FyUgjBujIdEGc%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/ffc2e2a1be2a86c0eb0a1fb94269c558/69690c89/video/tos/useast8/tos-useast8-pve-0068-tx2/owfZmAfYqpIg8VjyISAYQOFEaFhgQSmeDxIkCw/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2274&bt=1137&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=N2RkOjRlNWY4OjhpNmY8N0BpM2pqZW05cm5sODMzaTczNEA1L2EtNDNiNjQxLWFgLy8uYSNjYi4zMmRrYzZhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00090000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/ffc2e2a1be2a86c0eb0a1fb94269c558/69690c89/video/tos/useast8/tos-useast8-pve-0068-tx2/owfZmAfYqpIg8VjyISAYQOFEaFhgQSmeDxIkCw/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2274&bt=1137&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=N2RkOjRlNWY4OjhpNmY8N0BpM2pqZW05cm5sODMzaTczNEA1L2EtNDNiNjQxLWFgLy8uYSNjYi4zMmRrYzZhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00090000\",\"url_expire\":1768492169,\"width\":576,\"height\":1024,\"file_hash\":\"cbe10d9550f41f6faba20154aa3b06ac\",\"format\":\"\",\"size\":17439741,\"bitrate\":1164677,\"video_quality\":\"lowest\"}]},\"name\":\"#tiktokshop #motherofthebride #babyshowerdress #womensfashion \",\"release_date\":\"1767058355\",\"item_id\":\"7589457743132642590\",\"like_cnt\":38,\"play_cnt\":5150,\"comment_cnt\":6,\"video_products\":[{\"name\":\"Betina Bow Front Maxi Dress - Multi Floral\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/f8edab0bd2a64fe8ac1c978ecf67d111~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731168745198096765\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"139\",\"formatted_price\":\"$139\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"139\",\"formatted_price\":\"$139\"},\"promoted_product_num\":\"68\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"963\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"18360.99\",\"symbol\":\"$\",\"format\":\"$18.4K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_700437\",\"name\":\"Food & Beverages\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":137,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"18337.10\",\"symbol\":\"$\",\"format\":\"$18.3K\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"23.89\",\"symbol\":\"$\",\"format\":\"$23.89\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":112,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"5137\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"550\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"780\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7554\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"1629\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"550\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"780\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.6\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7496250823663454681\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"lbgsdvdwq5\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"lbgsdvdwq5\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/711596b904f14fa639e6039a76753b14~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=cc9707fa&x-expires=1768640400&x-signature=A6r6lnQmHjTebwoZCJbLoH1vF5Y%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/711596b904f14fa639e6039a76753b14~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=b2f5b6c8&x-expires=1768640400&x-signature=t%2Bt2DMAphuqhplEID3HqJ0ANuIM%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"3687\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"352\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d4u0vavog65vnoaonavg\",\"duration\":12.422,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oAAC8XXX9ef7MDEpG8CFBaReAIQVO83IVkQsIf~tplv-noop.image?dr=12525&refresh_token=c0def563&x-expires=1768492062&x-signature=cvO3dPIBCJuYeAXRGkOEYq5BcLk%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/0f9d66bd356ff1ead02b24a3b26fe6ee/69690c1e/video/tos/useast5/tos-useast5-pve-0068-tx/o0459XFGIMkJexR9HAQKA93dA8XX8LOQ6ehfBf/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1302&bt=651&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzM6aTVkM2RlZzo5OjY2M0BpamRycnk5cmQzNzMzZzczNEBhXjUvYTYzX2ExXi1fMmBhYSNza15rMmRzc3JhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/0f9d66bd356ff1ead02b24a3b26fe6ee/69690c1e/video/tos/useast5/tos-useast5-pve-0068-tx/o0459XFGIMkJexR9HAQKA93dA8XX8LOQ6ehfBf/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1302&bt=651&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NzM6aTVkM2RlZzo5OjY2M0BpamRycnk5cmQzNzMzZzczNEBhXjUvYTYzX2ExXi1fMmBhYSNza15rMmRzc3JhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492062,\"width\":576,\"height\":1032,\"file_hash\":\"1ca75062a2c427370b74e8307fadc1c8\",\"format\":\"\",\"size\":1036537,\"bitrate\":667549,\"video_quality\":\"lowest\"}]},\"name\":\"Pajama set#Pajamaset#BlackFridayOutfits#Fashion101#ootd#TikTokShopBlackFriday\",\"release_date\":\"1765545645\",\"item_id\":\"7582952864771804471\",\"like_cnt\":234,\"play_cnt\":56962,\"comment_cnt\":4,\"video_products\":[{\"name\":\"Women's Spring & Fall Ice Silk Pajama Set, Sweet Bow Trim V Neck Long Sleeve Top, Elastic Waist Pants, Casual Home Wear, Fashion Sleepwear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/17a4f734cec442b5a81b345d460de2d1~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731725116326187127\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"21.39\",\"formatted_price\":\"$21.39\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"21.39\",\"formatted_price\":\"$21.39\"},\"promoted_product_num\":\"3227\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d5al9lfog65qleprkiig\",\"duration\":10.564,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oUCObqIwp5AiliqV5OIS6qf7KpBdBA7I6CO0qV~tplv-noop.image?dr=12525&refresh_token=d8fb8fc8&x-expires=1768492060&x-signature=zryaZENpRd8vU6zj5yRlTOYDLfI%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/714a75868e353a71fa01d42582cf30f3/69690c1c/video/tos/useast5/tos-useast5-ve-0068c004-tx/oQAOVi6qpqqOBVG4If7AqbC6wpiBB9ZES0OOIl/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1442&bt=721&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZDpoZjU0Zmc1PDVpaWk6PEBpamx1aHQ5cm9vODMzZzczNEBfMTFgYV80NjUxMmA0NGI1YSNmaG1pMmRjNl5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/714a75868e353a71fa01d42582cf30f3/69690c1c/video/tos/useast5/tos-useast5-ve-0068c004-tx/oQAOVi6qpqqOBVG4If7AqbC6wpiBB9ZES0OOIl/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1442&bt=721&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZDpoZjU0Zmc1PDVpaWk6PEBpamx1aHQ5cm9vODMzZzczNEBfMTFgYV80NjUxMmA0NGI1YSNmaG1pMmRjNl5hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492060,\"width\":576,\"height\":1032,\"file_hash\":\"244e88c234d429924187bf510c0facc4\",\"format\":\"\",\"size\":975263,\"bitrate\":738555,\"video_quality\":\"lowest\"}]},\"name\":\"Burgundy strapless printed maxi dress#Burgundystraplessprintedmaxidress#ootd#tiktokshopcreatorpicks#holidayhaul#spotlightfinds\",\"release_date\":\"1767199969\",\"item_id\":\"7590065884287339831\",\"like_cnt\":98,\"play_cnt\":17380,\"comment_cnt\":4,\"video_products\":[{\"name\":\"Women's All Over Print Shirred Split Thigh Tube Jumpsuits, Boho Strapless Sleeveless Wide Leg Jumpsuit for Beach Holiday Vacation, Ladies Summer Clothes\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/5b4b45c335354bba9690e3a8347a4872~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730811266766246782\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"32.59\",\"formatted_price\":\"$32.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"32.59\",\"formatted_price\":\"$32.59\"},\"promoted_product_num\":\"2204\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d5c4c3nog65madcfg1lg\",\"duration\":8.219,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o0EihBaGt5BQ4Ur15jEYg4vVBAYYiDBpR2UhI~tplv-noop.image?dr=12525&refresh_token=a723a549&x-expires=1768492058&x-signature=WkYFQl5Qa7ovZKpl2k1r2s8yavQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/417886306c032863ed6507c94dfc325d/69690c1a/video/tos/useast5/tos-useast5-ve-0068c001-tx/o0SDWCPfEJZgIhFgpyDAHREfpYsRBOEWYQDlrw/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2964&bt=1482&cs=0&ds=3&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=PDtkNzY0NTM8aDk8Z2g1ZEBpajRpZ3A5cjY3ODMzZzczNEAyXzJjX181XjIxLjQyLjMxYSNpZGBeMmRrYGBhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/417886306c032863ed6507c94dfc325d/69690c1a/video/tos/useast5/tos-useast5-ve-0068c001-tx/o0SDWCPfEJZgIhFgpyDAHREfpYsRBOEWYQDlrw/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2964&bt=1482&cs=0&ds=3&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=PDtkNzY0NTM8aDk8Z2g1ZEBpajRpZ3A5cjY3ODMzZzczNEAyXzJjX181XjIxLjQyLjMxYSNpZGBeMmRrYGBhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492058,\"width\":720,\"height\":1290,\"file_hash\":\"3d75ff3089a984b079ee355deeb545a5\",\"format\":\"\",\"size\":1559485,\"bitrate\":1517931,\"video_quality\":\"normal\"}]},\"name\":\"Navy blue pullover sweatshirt#Navybluepulloversweatshirt#ootd#tiktokshopcreatorpicks#holidayhaul#spotlightfinds\",\"release_date\":\"1767399240\",\"item_id\":\"7590894099759222071\",\"like_cnt\":21,\"play_cnt\":27226,\"comment_cnt\":0,\"video_products\":[{\"name\":\"AUSELILY Women's Crewneck Hoodless Sweatshirt With Kangaroo Pocket  Fleece Longsleeve Oversized Casual Style Shirt  Lightweight Pullover 2026\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/d5b92ac8a0764f71a1a5fbcedeafe67c~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729586190582256337\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"28.49\",\"formatted_price\":\"$28.49\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"30.99\",\"formatted_price\":\"$30.99\"},\"promoted_product_num\":\"30725\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"203\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"3855.85\",\"symbol\":\"$\",\"format\":\"$3,855.85\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_824328\",\"name\":\"Menswear & Underwear\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":33,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"3855.85\",\"symbol\":\"$\",\"format\":\"$3,855.85\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":40,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"1597\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"352\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"352\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"5584\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"352\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"352\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"3.7\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7493998572997020299\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"elsanty._\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"El Santy\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/3ee464b147827ef7a9f8ea245d401666~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=c171c7d8&x-expires=1768640400&x-signature=Hr1PYV9Z9%2BgqEPGPbK35hdcgiEg%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/3ee464b147827ef7a9f8ea245d401666~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=96a70591&x-expires=1768640400&x-signature=ICaoEcerHnjizoKN0s%2B%2FlAtZ9fU%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"16160\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"202\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d4qjmg7og65r961f7ssg\",\"duration\":30.234,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oY1EIABTQwLRS78iYPza5VATBSKEBUi7PhEGi~tplv-noop.image?dr=12525&refresh_token=4194d6bb&x-expires=1768492080&x-signature=h9fdVNh4Fr5DVFGsfK82XL5WKwA%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/229b0f92883028000a365b2211f3df25/69690c30/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oUsBUEPYK7Vs8EATlAIDi15zLQSSaQUPRBT7i/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1944&bt=972&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OGlmZWc2M2ZmOzo6OWU6O0BpanZpOXU5cmptNzMzaTczNEAuLjM0LTQ2NTAxMl4xY2FjYSNwNC42MmQ0am5hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/229b0f92883028000a365b2211f3df25/69690c30/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oUsBUEPYK7Vs8EATlAIDi15zLQSSaQUPRBT7i/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1944&bt=972&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OGlmZWc2M2ZmOzo6OWU6O0BpanZpOXU5cmptNzMzaTczNEAuLjM0LTQ2NTAxMl4xY2FjYSNwNC42MmQ0am5hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"url_expire\":1768492080,\"width\":576,\"height\":1024,\"file_hash\":\"6901a465ef6e865e5d9367c4460b8b38\",\"format\":\"\",\"size\":3763942,\"bitrate\":995949,\"video_quality\":\"lowest\"}]},\"name\":\"Estos son los pantalones más cómodos que he probado para dormir y estar en casa 😮‍🔥 Vienen 4 en un solo paquete, son calientitos, suaves y quedan perfectos. Están en oferta ahora mismo 🔥 🛒 Link directo en el carrito naranja #TikTokShop #CarritoNaranja #OfertasTikTok #Invierno2025 #HombresConEstilo\",\"release_date\":\"1765096738\",\"item_id\":\"7581032581697637662\",\"like_cnt\":26,\"play_cnt\":3140,\"comment_cnt\":10,\"video_products\":[{\"name\":\"(4-Pack) Men's Micro Fleece Lounge Pajama Pants\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/b18f1f76a24f454e87a548d1e7367991~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729641472691638919\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"29.99\",\"formatted_price\":\"$29.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"29.99\",\"formatted_price\":\"$29.99\"},\"promoted_product_num\":\"24653\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4t5pffog65g67l3iah0\",\"duration\":15.049,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ooYpshyo9ACgAR9ZAEFiOXVD9feK5QlEEEB46I~tplv-noop.image?dr=12525&refresh_token=cd4d29b9&x-expires=1768492065&x-signature=L4HVK%2BZSgv9XzzgPcFrBVfxPQ7k%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/8870d1dd18b2881fbc2457e1953f4e12/69690c21/video/tos/useast8/tos-useast8-ve-0068c001-tx2/owYeIaBpEA3EIERilENRfMKA69lDOFgylV5XoE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=856&bt=428&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=O2ZpZWVnaGZnZjw4NGk3NEBpM2Q2Omo5cmk4NzMzaTczNEA2MS4zY2NhNjMxMDBhYzUwYSNlZmkzMmRjbXFhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/8870d1dd18b2881fbc2457e1953f4e12/69690c21/video/tos/useast8/tos-useast8-ve-0068c001-tx2/owYeIaBpEA3EIERilENRfMKA69lDOFgylV5XoE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=856&bt=428&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=O2ZpZWVnaGZnZjw4NGk3NEBpM2Q2Omo5cmk4NzMzaTczNEA2MS4zY2NhNjMxMDBhYzUwYSNlZmkzMmRjbXFhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492065,\"width\":576,\"height\":1024,\"file_hash\":\"ac7891215783b70c25f6b4174d391e11\",\"format\":\"\",\"size\":825201,\"bitrate\":438674,\"video_quality\":\"lowest\"}]},\"name\":\"Este protector de EcoFlow está brutal 🔥 Más puertos, más seguridad y carga rápida para todos tus dispositivos. Imprescindible para tu escritorio, para gaming o para la casa completa. En el carrito naranja está en oferta ahora mismo 👇⚡ #HolidayHustle #EcoFlow #TechFinds #MustHave2025 #HomeEssentials\",\"release_date\":\"1765432588\",\"item_id\":\"7582475072720489759\",\"like_cnt\":24,\"play_cnt\":720,\"comment_cnt\":0,\"video_products\":[{\"name\":\"EcoFlow Surge Protector, Power Strip Surge Protector with USB\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/e4e6fbc7ad55460aa585f34ff0499701~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729584052419268868\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"28.99\",\"formatted_price\":\"$28.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"28.99\",\"formatted_price\":\"$28.99\"},\"promoted_product_num\":\"3614\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d49phjvog65tkclj2l0g\",\"duration\":42.767,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oQCVynBfI0iEQqilAsBTxxicSNJiAA9EogmDIC~tplv-noop.image?dr=12525&refresh_token=07de19d3&x-expires=1768492092&x-signature=7lqY%2FmPQvcIdbpW66Tt2QSF6gQo%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/8f447d9e747f0dd286f714a54f59aaf8/69690c3c/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oMAzAmVixiAIoCcQI0iB9OfBEa2YAxsyiqTnxI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3220&bt=1610&cs=0&ds=3&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OmQ6ZWg5Z2c6ZjUzZjQ3ZUBpam9tZnc5cm1zNzMzaTczNEBfLzQzMDE1X2ExNjBfYTYxYSMtL2loMmRzZTZhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/8f447d9e747f0dd286f714a54f59aaf8/69690c3c/video/tos/useast8/tos-useast8-ve-0068c003-tx2/oMAzAmVixiAIoCcQI0iB9OfBEa2YAxsyiqTnxI/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3220&bt=1610&cs=0&ds=3&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=OmQ6ZWg5Z2c6ZjUzZjQ3ZUBpam9tZnc5cm1zNzMzaTczNEBfLzQzMDE1X2ExNjBfYTYxYSMtL2loMmRzZTZhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"url_expire\":1768492092,\"width\":720,\"height\":1280,\"file_hash\":\"77b0abd9cb13be5cfaa0fbca4a8eaa60\",\"format\":\"\",\"size\":8815548,\"bitrate\":1649037,\"video_quality\":\"normal\"}]},\"name\":\"“Este aroma conquista al instante ✨ #BymoliaAquaLiberté#HueleRico #PerfumeDeLujo #CarritoNaranja#fraganciaperfecta\",\"release_date\":\"1762891993\",\"item_id\":\"7571563354980912415\",\"like_cnt\":45,\"play_cnt\":318,\"comment_cnt\":10,\"video_products\":[{\"name\":\"BYMOLIA Aqua Liberte Perfume Spray - Long Lasting Addictive Eau de Parfum for Unisex - Vanilla & Musk, 1.7 Ounce / 50ml - Aromatic Woody Scent Vetiver\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/412ab8c418454c79a7ab4be2b9084dff~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731284764199981377\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"47\",\"formatted_price\":\"$47\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"75\",\"formatted_price\":\"$75\"},\"promoted_product_num\":\"16517\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"16\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"444.54\",\"symbol\":\"$\",\"format\":\"$444.54\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_602118\",\"name\":\"Pet Supplies\"},{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_604968\",\"name\":\"Home Improvement\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":659,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"187.67\",\"symbol\":\"$\",\"format\":\"$187.67\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":427,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"379\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"250\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"202\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"4855\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"250\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"202\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.6\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494015609231870716\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"jessicajw7\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Jessica 🎀 🛍️\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/0ef56f2a09f16ec88c653f606b0ca4eb~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=ac7afd9d&x-expires=1768640400&x-signature=I2nPQYKFPSZoPJJAx4FmwWCvUAY%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/0ef56f2a09f16ec88c653f606b0ca4eb~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=2aa862fc&x-expires=1768640400&x-signature=M0y27tzu%2BMXYrcg3rVGBx00jURo%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"75288\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"29465\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"436\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d57f2q7og65loqg0sac0\",\"duration\":15.022,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o0jcfMDoQFAFQ4BTwKEV64EHErvpfRAdpU1yAU~tplv-noop.image?dr=12525&refresh_token=444e48c1&x-expires=1768492065&x-signature=s9p56e%2B9%2Fu39rMI8S7DEtDbjWiM%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/790ad594fa633b5b460f262d296fc340/69690c21/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oo8UOAJMaYKq7OVbBBAARlGOEaxxiPBIBQ1iE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1118&bt=559&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OGRoPDg5O2loaWg8NmVoZkBpM2QzdG85cnRpODMzaTczNEBfLV5jYjFiXi0xNl4wMDE0YSNgcGRsMmQ0LzRhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/790ad594fa633b5b460f262d296fc340/69690c21/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oo8UOAJMaYKq7OVbBBAARlGOEaxxiPBIBQ1iE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1118&bt=559&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OGRoPDg5O2loaWg8NmVoZkBpM2QzdG85cnRpODMzaTczNEBfLV5jYjFiXi0xNl4wMDE0YSNgcGRsMmQ0LzRhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492065,\"width\":576,\"height\":1024,\"file_hash\":\"815f60773833f12ed8f202c6788662a6\",\"format\":\"\",\"size\":1075075,\"bitrate\":572533,\"video_quality\":\"lowest\"}]},\"name\":\"Do you want sassy with a little spice? If so click that link NOW\",\"release_date\":\"1766781357\",\"item_id\":\"7588268071836503326\",\"like_cnt\":38,\"play_cnt\":17251,\"comment_cnt\":1,\"video_products\":[{\"name\":\"CVG Black Leopard Leggings Women's High Waist with Pockets Squat Proof All Over Print True to Size Basic Fit Traditional Style\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/be368956adcd48f6aab4c5a6decbcb71~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729394270853960061\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"25\",\"formatted_price\":\"$25\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"25\",\"formatted_price\":\"$25\"},\"promoted_product_num\":\"2955\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d45qebvog65q1ahfojq0\",\"duration\":45.255,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oc0hM6TpI8d0A8CCEXbLyiAYCIizSqfqdALBOi~tplv-noop.image?dr=12525&refresh_token=f53945a6&x-expires=1768492095&x-signature=BsvzwRb8MFOUB6UIuFKwA8c%2F5pU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/846f233f7e6ee765c81421403b220090/69690c3f/video/tos/useast8/tos-useast8-ve-0068c002-tx2/os0OEQqB0Ap6TX8iiCUdxAICCiLLfhFAqIE0QX/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=838&bt=419&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OGlpZzk7Ojo3PGQ0NzhpO0BpM21pZHQ5cmV0NzMzaTczNEAzM2MzXy5gNjExMzEtNmBjYSNubGUuMmRzYjJhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/846f233f7e6ee765c81421403b220090/69690c3f/video/tos/useast8/tos-useast8-ve-0068c002-tx2/os0OEQqB0Ap6TX8iiCUdxAICCiLLfhFAqIE0QX/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=838&bt=419&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OGlpZzk7Ojo3PGQ0NzhpO0BpM21pZHQ5cmV0NzMzaTczNEAzM2MzXy5gNjExMzEtNmBjYSNubGUuMmRzYjJhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"url_expire\":1768492095,\"width\":480,\"height\":854,\"file_hash\":\"3c082e042bd4cdee228c728b2822c138\",\"format\":\"\",\"size\":2429767,\"bitrate\":429524,\"video_quality\":\"lowest\"}]},\"name\":\"THIS IS THE 2025 CHRISTMAS SHIRT #sequins #santa #fashion #fypシ゚ #sephoraalışverişim \",\"release_date\":\"1762371380\",\"item_id\":\"7569327322835340574\",\"like_cnt\":45,\"play_cnt\":5099,\"comment_cnt\":4,\"video_products\":[{\"name\":\"Women Christmas Sparkly Sequin Print Shirt Christmas Sparkly Sequin Print Shirt  Women Cute Sweatshirt Crewneck Long Sleeve Pullover Sweatshirts Tops Christmas Decorations Santa Claus Christmas Sweatshirt Casual Baggy\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/abd9e21517bf4c178338cc73f80e76bb~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729774801488482443\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"66.59\",\"formatted_price\":\"$66.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"66.59\",\"formatted_price\":\"$66.59\"},\"promoted_product_num\":\"1847\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4lfkpvog65q3g8g6qi0\",\"duration\":15.022,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oAmOFf1CDERpFFIEnVEev6I9KBVQOIGA07RLpA~tplv-noop.image?dr=12525&refresh_token=d691a22c&x-expires=1768492065&x-signature=8iKLrCBA52dK6dde3aSMTnIE%2FTo%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/683713a016bf90264b576f2f5bb520a6/69690c21/video/tos/useast8/tos-useast8-ve-0068c004-tx2/ogAKEEepVEngCRnIpIVfBF9KhDxTOvQ01kGICA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1180&bt=590&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZjU4NzM1O2g4Nzo6ZWc0aEBpM3RqanQ5cnNpNzMzaTczNEA0NTFgNDU0NjYxMDUvMl4xYSNmMzUwMmRzaGlhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/683713a016bf90264b576f2f5bb520a6/69690c21/video/tos/useast8/tos-useast8-ve-0068c004-tx2/ogAKEEepVEngCRnIpIVfBF9KhDxTOvQ01kGICA/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1180&bt=590&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZjU4NzM1O2g4Nzo6ZWc0aEBpM3RqanQ5cnNpNzMzaTczNEA0NTFgNDU0NjYxMDUvMl4xYSNmMzUwMmRzaGlhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492065,\"width\":480,\"height\":854,\"file_hash\":\"b9d6d30bfdd236af399407941a496e9d\",\"format\":\"\",\"size\":1135245,\"bitrate\":604577,\"video_quality\":\"lowest\"}]},\"name\":\"Ready for all of the Holiday CHEER #BFCM #tiktokshopblackfriday #tiktokcybermonday #fyppppppppppppppppppppppp\",\"release_date\":\"1764424671\",\"item_id\":\"7578146095625162014\",\"like_cnt\":21,\"play_cnt\":1109,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Cherrybetty Christmas Santa Print Ruffle V-neck Long Sleeve Blouse Women's Top with Festive Design and Comfortable Fit Pink Color Elegance Fall Outfits Women Going outfits\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/fa7917eac7514cdc9767a98be8351481~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731723364264612629\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"39.99\",\"formatted_price\":\"$39.99\"},\"promoted_product_num\":\"1741\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"2752\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"46436.86\",\"symbol\":\"$\",\"format\":\"$46.4K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_600154\",\"name\":\"Textiles & Soft Furnishings\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":210,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"914.35\",\"symbol\":\"$\",\"format\":\"$914.35\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"44510.88\",\"symbol\":\"$\",\"format\":\"$44.5K\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":137,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"1942\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"536\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"436\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$25K-$60K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"1K+\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7548\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"75288\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"536\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"436\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\",\"55+\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.4\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7496128016615246050\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"simplylalamama\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"L A U R E N • SAHM • NJ\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/14148290a255a0cdcd266af8e8010633~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=fbd9bc5b&x-expires=1768640400&x-signature=DLbVvc2M5hyxu6KtxpzLnM0SS2U%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/14148290a255a0cdcd266af8e8010633~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=b3196b92&x-expires=1768640400&x-signature=9lM3gg0SQjvnVksBcLrGeuOBQyI%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"109\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"1851\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"349\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d5gj45nog65mb5egt4b0\",\"duration\":10.334,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oMg0yWWhkWAqBIZOsovBaMCyEi4BViGIUUEF2~tplv-noop.image?dr=12525&refresh_token=49faf4e7&x-expires=1768492060&x-signature=I15M0g7a9VdFueYoY8hfZkQ5Xus%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/7e6826a5bda2309703140e35a3517eb7/69690c1c/video/tos/useast5/tos-useast5-ve-0068c004-tx/oYW04dUiav7ERBVOEFysrAEkh2WQIgENBMiWk/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=6774&bt=3387&cs=0&ds=3&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Omk6PGQ1aDY6N2g5OGRmZ0BpMzdqOHA5cjhtODMzZzczNEAxNTFeYDJhX2MxXjI0YTRgYSNfcWJfMmRrMWRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/7e6826a5bda2309703140e35a3517eb7/69690c1c/video/tos/useast5/tos-useast5-ve-0068c004-tx/oYW04dUiav7ERBVOEFysrAEkh2WQIgENBMiWk/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=6774&bt=3387&cs=0&ds=3&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Omk6PGQ1aDY6N2g5OGRmZ0BpMzdqOHA5cjhtODMzZzczNEAxNTFeYDJhX2MxXjI0YTRgYSNfcWJfMmRrMWRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492060,\"width\":720,\"height\":1280,\"file_hash\":\"b053f299c2b93e86abfbb5f38108d931\",\"format\":\"\",\"size\":4480880,\"bitrate\":3468844,\"video_quality\":\"normal\"}]},\"name\":\"#mabe #babycarrier #newborn #babyregistrymusthaves #newmom \",\"release_date\":\"1767977672\",\"item_id\":\"7593406057238596877\",\"like_cnt\":9,\"play_cnt\":1112,\"comment_cnt\":0,\"video_products\":[{\"name\":\"The Monarch Carrier - Houndstooth\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/c235298c59a3494d826131d94d21aff7~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729882526880797131\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"129\",\"formatted_price\":\"$129\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"129\",\"formatted_price\":\"$129\"},\"promoted_product_num\":\"2324\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4ve73vog65jsbsec9c0\",\"duration\":15.255,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oEd4IQwifGA54f8It4LPcNJCZiMASK0eQHeIeI~tplv-noop.image?dr=12525&refresh_token=f3cd687e&x-expires=1768492065&x-signature=Cb0yxvkVT50pMlaydoYDlJVyhLU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/e80f265390e3a9b39e58061aa0367e7c/69690c21/video/tos/useast5/tos-useast5-ve-0068c002-tx/osQoeJMikK4RiANfPHIApLIc44GkSedmiewf5Q/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=982&bt=491&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGY4MzM5ZDs3OTY4Zjw0aUBpMzxoZW05cjZoNzMzZzczNEBeXl5hNC4zXy8xYzE2M19iYSNgYHBwMmRzNHNhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/e80f265390e3a9b39e58061aa0367e7c/69690c21/video/tos/useast5/tos-useast5-ve-0068c002-tx/osQoeJMikK4RiANfPHIApLIc44GkSedmiewf5Q/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=982&bt=491&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGY4MzM5ZDs3OTY4Zjw0aUBpMzxoZW05cjZoNzMzZzczNEBeXl5hNC4zXy8xYzE2M19iYSNgYHBwMmRzNHNhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492065,\"width\":576,\"height\":1024,\"file_hash\":\"cdcb7800cdfc0ca4149a69f1a7bf1188\",\"format\":\"\",\"size\":959301,\"bitrate\":503074,\"video_quality\":\"lowest\"}]},\"name\":\"#christmasgiftideas #christmas #kidschristmas #tts #ttsaffiliate \",\"release_date\":\"1765729171\",\"item_id\":\"7583748880739683597\",\"like_cnt\":10,\"play_cnt\":638,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Woodure Stuffed Animal Storage & Organizer, Wooden Cute Zoo Toy Holder for Toddler Rooms, Playrooms & Bedrooms\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/d3efb4b384a443d0a9eb8b066d688909~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730878636578476813\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"64.99\",\"formatted_price\":\"$64.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"74.99\",\"formatted_price\":\"$74.99\"},\"promoted_product_num\":\"6404\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d564e5nog65kupqt8llg\",\"duration\":8.334,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oc9BUBADrXiTvI0nEdgcFBaVaMIvU4H7xRiU9~tplv-noop.image?dr=12525&refresh_token=7cd62e44&x-expires=1768492058&x-signature=5d%2B94JYHZHwEe9UQXTq4PHbBKts%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/941d4dbe60355c5b5dbd7b3329518d00/69690c1a/video/tos/useast5/tos-useast5-ve-0068c002-tx/oIUEFB8U0vIErREaHBx9rBgniiXUV4GA7I1MV/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=852&bt=426&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZWVnZTM0ZzpoOGdnM2RmZkBpam93c245cjg3ODMzZzczNEAvNjZjM15iXl8xMDMwMGBeYSNpNW5yMmRrYjNhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/941d4dbe60355c5b5dbd7b3329518d00/69690c1a/video/tos/useast5/tos-useast5-ve-0068c002-tx/oIUEFB8U0vIErREaHBx9rBgniiXUV4GA7I1MV/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=852&bt=426&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZWVnZTM0ZzpoOGdnM2RmZkBpam93c245cjg3ODMzZzczNEAvNjZjM15iXl8xMDMwMGBeYSNpNW5yMmRrYjNhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492058,\"width\":576,\"height\":1024,\"file_hash\":\"9e8ce5bccd03233b6f664dd3ffb903d8\",\"format\":\"\",\"size\":454685,\"bitrate\":436462,\"video_quality\":\"lowest\"}]},\"name\":\"#babytoy #toddlersoftiktok #tonie #tts #toddlermomlife \",\"release_date\":\"1766606773\",\"item_id\":\"7587518144596512014\",\"like_cnt\":9,\"play_cnt\":1239,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Tonies Blue Toniebox Starter Set with Playtime Puppy Tonie and Charging Station\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/36a36f93aa0e4ed0a207d190117ff9f5~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729626582423343128\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"99.99\",\"formatted_price\":\"$99.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"99.99\",\"formatted_price\":\"$99.99\"},\"promoted_product_num\":\"3106\",\"status\":2}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"2\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"191.12\",\"symbol\":\"$\",\"format\":\"$191.12\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_602284\",\"name\":\"Baby & Maternity\"},{\"starling_key\":\"magellan_604206\",\"name\":\"Toys & Hobbies\"},{\"starling_key\":\"magellan_600001\",\"name\":\"Home Supplies\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":206,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"191.12\",\"symbol\":\"$\",\"format\":\"$191.12\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":180,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"664\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"354\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"349\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"0-10\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"8468\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"109\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"354\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"349\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"3.9\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495369338156189995\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"highland.daily.life\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Highland Daily Life\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/8c82f0a477d4675f845e39c8d513aa82~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=1dcf82d9&x-expires=1768640400&x-signature=sNPYUg35A5RCACFAxfCMY7%2FyivI%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/8c82f0a477d4675f845e39c8d513aa82~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=a5850808&x-expires=1768640400&x-signature=yCQDpz9JSXdzJOQZGA8MqyKe0tQ%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"2935\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"is_authorized\":false,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"324\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"is_authorized\":false,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d4pe82fog65ntbkjj15g\",\"duration\":10.3,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/owu0mBB5EBAixQ30fCAwIQ3ikXyENLhIGC6Ip5~tplv-noop.image?dr=12525&refresh_token=07630f82&x-expires=1768492060&x-signature=PDEf84gx9387%2BJvtciia7XoHCsA%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/c05d7ecb5ce546605d1ecdee06149ef4/69690c1c/video/tos/useast5/tos-useast5-ve-0068c002-tx/oY0ms3h5EhXLA56CIEAyqBANNIiGspfuLwkBIi/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1292&bt=646&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OWU8NmdnOjc8ODQ6Mzw3ZUBpajRtZXE5cjVoNzMzZzczNEAuNmM0YTEyNjMxL2AvMTVgYSMyZ2hxMmRjNW1hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/c05d7ecb5ce546605d1ecdee06149ef4/69690c1c/video/tos/useast5/tos-useast5-ve-0068c002-tx/oY0ms3h5EhXLA56CIEAyqBANNIiGspfuLwkBIi/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1292&bt=646&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OWU8NmdnOjc8ODQ6Mzw3ZUBpajRtZXE5cjVoNzMzZzczNEAuNmM0YTEyNjMxL2AvMTVgYSMyZ2hxMmRjNW1hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492060,\"width\":576,\"height\":1024,\"file_hash\":\"5c0eaad92a9f2f672e9bca236d5a38db\",\"format\":\"\",\"size\":852507,\"bitrate\":662141,\"video_quality\":\"lowest\"}]},\"name\":\"Two-piece Set Women's Shirt & #tiktokmademebuyit #pamjames #nightwear #comfortable #womenswear \",\"release_date\":\"1764942950\",\"item_id\":\"7580372078755319053\",\"like_cnt\":28,\"play_cnt\":7574,\"comment_cnt\":0,\"video_products\":[{\"name\":\"【Valentine's Day】Two-piece Set Women's Shirt & Shorts Satin Pajama, Ladies Summer Sleepwear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/9935d6f034ca46c78244d24cd797a0ab~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730118482600301546\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"19.09\",\"formatted_price\":\"$19.09\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"23.59\",\"formatted_price\":\"$23.59\"},\"promoted_product_num\":\"6202\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4q368vog65lo6fgcd50\",\"duration\":8.834,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/ok9Rm1CKEiN848OBhM0C0ByAmIqZpG2fwAwiwI~tplv-noop.image?dr=12525&refresh_token=a288162d&x-expires=1768492058&x-signature=uwx8FS40xTJhXtvd6XgZoDpAARU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/49c6e3b8c82dcd421da21949c5b39627/69690c1a/video/tos/useast5/tos-useast5-ve-0068c002-tx/oQIDpNWrD4jDEBUgSVMDTMeAEUSz0aMQzgfFRM/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1286&bt=643&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Z2k0PGc8OTs3NWhoaDk7NEBpM2dqOW85cjs2NzMzZzczNEBgLzFeNmJeXjIxMDYwYzMyYSMyYGNsMmRzM25hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/49c6e3b8c82dcd421da21949c5b39627/69690c1a/video/tos/useast5/tos-useast5-ve-0068c002-tx/oQIDpNWrD4jDEBUgSVMDTMeAEUSz0aMQzgfFRM/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1286&bt=643&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Z2k0PGc8OTs3NWhoaDk7NEBpM2dqOW85cjs2NzMzZzczNEBgLzFeNmJeXjIxMDYwYzMyYSMyYGNsMmRzM25hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492058,\"width\":576,\"height\":1024,\"file_hash\":\"6b65c2ab56bc1a4b7c50b00d8795f905\",\"format\":\"\",\"size\":727525,\"bitrate\":658840,\"video_quality\":\"lowest\"}]},\"name\":\"6-Pack Women's Multi-Color Sex#tiktokmademebuyit #comfortable #womenswear #underwater #lace\",\"release_date\":\"1765028656\",\"item_id\":\"7580740103975226637\",\"like_cnt\":8,\"play_cnt\":4699,\"comment_cnt\":0,\"video_products\":[{\"name\":\"6-Pack Women's Multi-Color Sexy Low Waist Lace Trim Thong Panties, Sheer Lace Panty, Comfortable and Stylish Underwear for Ladies\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/edacad8c3f2e4a0f8e1d6ed23bcbacf1~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731619895292760185\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"10.79\",\"formatted_price\":\"$10.79\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"10.79\",\"formatted_price\":\"$10.79\"},\"promoted_product_num\":\"1293\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4q2677og65jvgl3k6og\",\"duration\":8.767,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/osoEoI65IfnESUNBG0NDfDxRMcAFG1CgFBypIC~tplv-noop.image?dr=12525&refresh_token=ef2145f8&x-expires=1768492058&x-signature=DKx5StPb5JlbxdNr7sIcsx7tquw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/e8b7dfb323d36e129630e8a18fd9f75e/69690c1a/video/tos/useast5/tos-useast5-ve-0068c003-tx/os4NSIcEDogMCBIGgEf5AZLS6FfCxpDEHnxRF0/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1374&bt=687&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDs0aGc3ZjM3ZmU2NDw5NkBpajk2am05cjo1NzMzZzczNEAyYjY0Y14uXzUxYzAyNTRhYSNsaGlzMmQ0M25hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/e8b7dfb323d36e129630e8a18fd9f75e/69690c1a/video/tos/useast5/tos-useast5-ve-0068c003-tx/os4NSIcEDogMCBIGgEf5AZLS6FfCxpDEHnxRF0/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1374&bt=687&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PDs0aGc3ZjM3ZmU2NDw5NkBpajk2am05cjo1NzMzZzczNEAyYjY0Y14uXzUxYzAyNTRhYSNsaGlzMmQ0M25hLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492058,\"width\":576,\"height\":1024,\"file_hash\":\"0b3b0c006d86d96d5b2583379f314d62\",\"format\":\"\",\"size\":771374,\"bitrate\":703888,\"video_quality\":\"lowest\"}]},\"name\":\"Mean Girls Satin Cami#sleepdress #comfortable #pamjames #underwater #womenswear\",\"release_date\":\"1765024657\",\"item_id\":\"7580722762692463885\",\"like_cnt\":20,\"play_cnt\":5029,\"comment_cnt\":0,\"video_products\":[{\"name\":\"Women's Mean Girls Plain Criss Cross Backless Satin Cami Nightdress, Elegant Soft Comfortable Sleeveless Nightgown, Women's Summer Sleepwear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/2a5a726a65ac4b64bf597071d6670446~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729408979452006449\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"7.89\",\"formatted_price\":\"$7.89\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"11.59\",\"formatted_price\":\"$11.59\"},\"promoted_product_num\":\"14540\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"is_authorized\":false,\"status\":0},\"med_gmv_revenue\":{\"is_authorized\":false,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"},{\"starling_key\":\"magellan_824328\",\"name\":\"Menswear & Underwear\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":62,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"is_authorized\":false,\"status\":0},\"live_gmv\":{\"is_authorized\":false,\"status\":0},\"ec_video_engagement\":{\"value\":156,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"1194\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"317\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"324\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"4556\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"317\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"324\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"3.8\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494192269915555363\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"brewmaster70\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"brewmaster\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/816776e83ebcc8567e68341e82528a0d~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=80fda814&x-expires=1768640400&x-signature=5umWPa4%2F8kT60D4rH2M2cD%2FPSqA%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/816776e83ebcc8567e68341e82528a0d~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=dbc4ae9d&x-expires=1768640400&x-signature=62NwzAtSovq4oSQGwQcjY8VSmLI%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"321\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"661\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d41janfog65r1a65vf0g\",\"duration\":15.2,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o8QjLeQGYwqGX4MeCA8CXVAqFqIe5uh7ImBSaI~tplv-noop.image?dr=12525&refresh_token=79307e17&x-expires=1768492065&x-signature=f2lBZosa6P6i%2FA42QeA5MspsJLw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/8670242448f1889154e535f4d905cd79/69690c21/video/tos/useast8/tos-useast8-ve-0068c003-tx2/osEDEVVfzdvIi7ERdNApFQFVB3qDRUAEAf23DB/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=4164&bt=2082&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Zzc2NGQ2aGZkZzc6Z2Q4OUBpamk4ZHU5cnFtNzMzaTczNEA0MTAvYy80XjAxLi0uMl5hYSMtczMuMmRjXi5hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/8670242448f1889154e535f4d905cd79/69690c21/video/tos/useast8/tos-useast8-ve-0068c003-tx2/osEDEVVfzdvIi7ERdNApFQFVB3qDRUAEAf23DB/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=4164&bt=2082&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=Zzc2NGQ2aGZkZzc6Z2Q4OUBpamk4ZHU5cnFtNzMzaTczNEA0MTAvYy80XjAxLi0uMl5hYSMtczMuMmRjXi5hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492065,\"width\":576,\"height\":1024,\"file_hash\":\"ef3d8e6bb95bc251fdca09cef08798ea\",\"format\":\"\",\"size\":4052095,\"bitrate\":2132681,\"video_quality\":\"normal\"}]},\"name\":\"Dr pepper Pajamas set✨🥤🎀#drpepper #pajamas #sleepwear #blackfridaydeals #tiktokshopblackfriday \",\"release_date\":\"1761818070\",\"item_id\":\"7566950938460572959\",\"like_cnt\":7922,\"play_cnt\":1225033,\"comment_cnt\":84,\"video_products\":[{\"name\":\"Women's Fall Winter Long Sleeve Sleepwear Set, Casual Soda Print Soft Fabric PJ Set, Comfortable Lapel Top & Wide Leg Pants\",\"image\":\"https://p19-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/6745c35fa1b94305bfe79b7409d40d48~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731947242169405627\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"23.39\",\"formatted_price\":\"$23.39\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"23.49\",\"formatted_price\":\"$23.49\"},\"promoted_product_num\":\"10886\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d40u4p7og65l263no1rg\",\"duration\":10.434,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oIkAqIkQD7HJeC4DAEfzApDx4FIwfSIIKqujIB~tplv-noop.image?dr=12525&refresh_token=03f5180a&x-expires=1768492060&x-signature=ytc4chF86JLtF1HE2pUUfncFbHQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/6c2f35c9c3f4bf65b590ffce20bb7dae/69690c1c/video/tos/useast8/tos-useast8-ve-0068c004-tx2/oU1ZQRYAEIB8iBEBBUN3QEdBVAP8aWi03Qi4H/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3050&bt=1525&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NjlkNDNlNTQ4NWdlNjM1NkBpajRxOW85cnN4NzMzaTczNEAyMTNgMzZiNTUxXzYuXzAzYSNvbDAvMmQ0MS1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/6c2f35c9c3f4bf65b590ffce20bb7dae/69690c1c/video/tos/useast8/tos-useast8-ve-0068c004-tx2/oU1ZQRYAEIB8iBEBBUN3QEdBVAP8aWi03Qi4H/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=3050&bt=1525&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=NjlkNDNlNTQ4NWdlNjM1NkBpajRxOW85cnN4NzMzaTczNEAyMTNgMzZiNTUxXzYuXzAzYSNvbDAvMmQ0MS1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492060,\"width\":576,\"height\":1024,\"file_hash\":\"3890c8320a9950fc1023d344e4533206\",\"format\":\"\",\"size\":2037005,\"bitrate\":1561820,\"video_quality\":\"normal\"}]},\"name\":\"For your fall🍂🍂🍂 #dresses #outfit #tiktokshopblackfriday #fyp #spotlightfinds  \",\"release_date\":\"1761731391\",\"item_id\":\"7566578633012301086\",\"like_cnt\":3479,\"play_cnt\":412687,\"comment_cnt\":6,\"video_products\":[{\"name\":\"patchwork knot side TWIST FRONT  MINI dress\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/5d193798fbb34ae9a1f821cb55344983~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731531647484335098\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"28.89\",\"formatted_price\":\"$28.89\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"28.89\",\"formatted_price\":\"$28.89\"},\"promoted_product_num\":\"14045\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3uccf7og65s06cbi6vg\",\"duration\":14.267,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o8exuDUGjFjwb7kLIyCYfAIBRQL5eeNAmGQZP5~tplv-noop.image?dr=12525&refresh_token=dc85bcc7&x-expires=1768492064&x-signature=HB2zp4KPnSaYd2VRl3M6cBTw8Io%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/9007be58b35a6b47ee3ff1fadc814213/69690c20/video/tos/useast8/tos-useast8-pve-0068-tx2/oAAIQtN8BAREfCBB4PDMyI8rqfxjEYFAOAFIfz/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1402&bt=701&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Ojc2ZGVoZjplNDs4ZzszaEBpajllOXY5cmlmNjMzaTczNEAvYjQ2MC4tXmMxYGA1NF4xYSNzZmAtMmQ0YHJhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/9007be58b35a6b47ee3ff1fadc814213/69690c20/video/tos/useast8/tos-useast8-pve-0068-tx2/oAAIQtN8BAREfCBB4PDMyI8rqfxjEYFAOAFIfz/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1402&bt=701&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Ojc2ZGVoZjplNDs4ZzszaEBpajllOXY5cmlmNjMzaTczNEAvYjQ2MC4tXmMxYGA1NF4xYSNzZmAtMmQ0YHJhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492064,\"width\":480,\"height\":854,\"file_hash\":\"8896b95257b8af33dc3788e41ceb09c2\",\"format\":\"\",\"size\":1281699,\"bitrate\":718692,\"video_quality\":\"lowest\"}]},\"name\":\"Omg!!! Sooooo cute! I’m wearing food🍿🥤🥫🥪 all over me!!! #pajamajam #sleepwear #homewear #tiktokshopblackfriday #fyp \",\"release_date\":\"1761396428\",\"item_id\":\"7565139899087719711\",\"like_cnt\":336,\"play_cnt\":107215,\"comment_cnt\":4,\"video_products\":[{\"name\":\"2-piece snack set, potato chips, hot dogs, bell shaped drinks, printed long sleeved shirt, long pants, soft, comfortable, skin friendly, smooth top, small pocket, button closure, elastic waistband, suitable for four households, casual wear, pajamas\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/84d5ae9090ed444c86ab342f5add4a4c~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731809923382547138\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"20.59\",\"formatted_price\":\"$20.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"20.59\",\"formatted_price\":\"$20.59\"},\"promoted_product_num\":\"2404\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"604\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"10274.10\",\"symbol\":\"$\",\"format\":\"$10.3K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":164,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"10274.10\",\"symbol\":\"$\",\"format\":\"$10.3K\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":171,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"3270\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"662\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"661\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7569\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"662\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"661\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.9\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495969405758966263\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"parisacapehart\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"p a r i s\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/34b100bed07855e8ddf284ad58c1505c~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=ecad64be&x-expires=1768640400&x-signature=D5qZnEUQT85nabSF0Sdd0gwzJIU%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/34b100bed07855e8ddf284ad58c1505c~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=90ff97e6&x-expires=1768640400&x-signature=ZZDQlfxWLdmFOMDFNboBj4ovI8Q%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"6132\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"458\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d47s2tvog65i95c6358g\",\"duration\":7.476,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oEiGhUREIDAfcIAPDpPgVRShSBiClwDBeO37Dy~tplv-noop.image?dr=12525&refresh_token=6c43db3e&x-expires=1768492057&x-signature=PtHlxvXQJqi6EqndxkpMaMiF42U%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/12c85eb562c4f19d4e04cc7a161420b2/69690c19/video/tos/useast5/tos-useast5-ve-0068c002-tx/oYDPFprkEPn8AFXkDJSQfgDwK3XDBiDkEIcfRK/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=642&bt=321&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGk7MzQ4OzY1ZTRlNDUzM0Bpajg5OGw5cnd2NzMzZzczNEBiYy4xNS8tX18xMDQxMDIwYSM1MGA2MmRzLzRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/12c85eb562c4f19d4e04cc7a161420b2/69690c19/video/tos/useast5/tos-useast5-ve-0068c002-tx/oYDPFprkEPn8AFXkDJSQfgDwK3XDBiDkEIcfRK/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=642&bt=321&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGk7MzQ4OzY1ZTRlNDUzM0Bpajg5OGw5cnd2NzMzZzczNEBiYy4xNS8tX18xMDQxMDIwYSM1MGA2MmRzLzRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492057,\"width\":480,\"height\":854,\"file_hash\":\"3acff824c402c2b11009c9de482d0a1e\",\"format\":\"\",\"size\":307193,\"bitrate\":328724,\"video_quality\":\"lowest\"}]},\"name\":\"#algorithm #DMV #tiktokshop #blackfriday \",\"release_date\":\"1762640319\",\"item_id\":\"7570482388594134327\",\"like_cnt\":393,\"play_cnt\":42384,\"comment_cnt\":10,\"video_products\":[{\"name\":\"Women's Underbust Corset - Tummy Tightening Waist Trainer, Non Posture Correcting Shapewear with Slimming Effect for the Gym, Everyday and Special Events - Slimming Belt for Hourglass Figure, Tummy Tightening Shapewear, Sausage Shape Effect, Snap Closure\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ec3033e3fea64dc5940ccdd9171c15b7~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731470982346805926\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"14.99\",\"formatted_price\":\"$14.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"16.99\",\"formatted_price\":\"$16.99\"},\"promoted_product_num\":\"1346\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d56196vog65uft5db1f0\",\"duration\":9.2,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oYCLeICrELjkVkN3Ge5fMICWSJqFpG33mBIAAH~tplv-noop.image?dr=12525&refresh_token=069cf64c&x-expires=1768492059&x-signature=vSkJuZKLvBh8p3%2Fk81s0PNc6HHo%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/8427012cc8e5f98d012fbb1f5774c466/69690c1b/video/tos/useast5/tos-useast5-ve-0068c001-tx/ogKMjSGfmxpIIFdDHAEnC5ke3WIAyLIGHrkCeC/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=790&bt=395&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGhmOWc0aDw4NTNkZ2dlNUBpMzRnd3g5cjk0ODMzZzczNEAtLy9eMTM1NmIxYmFeM2I1YSNjXzJjMmRzNjNhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/8427012cc8e5f98d012fbb1f5774c466/69690c1b/video/tos/useast5/tos-useast5-ve-0068c001-tx/ogKMjSGfmxpIIFdDHAEnC5ke3WIAyLIGHrkCeC/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=790&bt=395&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=PGhmOWc0aDw4NTNkZ2dlNUBpMzRnd3g5cjk0ODMzZzczNEAtLy9eMTM1NmIxYmFeM2I1YSNjXzJjMmRzNjNhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492059,\"width\":576,\"height\":1024,\"file_hash\":\"ee8cbabe9e0b014e6b72e2dad42926b5\",\"format\":\"\",\"size\":465532,\"bitrate\":404810,\"video_quality\":\"lowest\"}]},\"name\":\"\",\"release_date\":\"1766593694\",\"item_id\":\"7587461957767286030\",\"like_cnt\":5,\"play_cnt\":1022,\"comment_cnt\":0,\"video_products\":[{\"name\":\"FeelinGirl Belt Waist Cincher Ab Belt Tummy Control Body Shaper with Triple Wrap WomenB Comfortable Fabrics Nylon Adjustable Multicolor Lady Festival Womenswear Lady  Comfort Fabrics Womenswear Fits Sexy Waist Trainer TikTokShopBlackFriday\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/71eac69ccb3f44a39dbdc17c2bf9eb2b~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730076199814861297\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"45\",\"formatted_price\":\"$45\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"45\",\"formatted_price\":\"$45\"},\"promoted_product_num\":\"124376\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4obc6vog65r85rnudhg\",\"duration\":57.25,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oczDNDfEmgMrpbjSgIBYRfAhyuINF7EWD2YLtw~tplv-noop.image?dr=12525&refresh_token=76c9188e&x-expires=1768492107&x-signature=VXpm%2FWl%2FgsY89dO3w%2F2No9KC4bw%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/481d63ad026b16f3a437be72af62c37c/69690c4b/video/tos/useast5/tos-useast5-ve-0068c001-tx/o4BLAtNMVFQDgELQIpED2rfjEd9agY7uDSwbfR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=988&bt=494&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODRoN2k3ZDY5aTg2OGY5OUBpamdxOHU5cjllNzMzZzczNEA0YzEtNi4vXmIxXi5jNl8tYSNlcm81MmRzYGxhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/481d63ad026b16f3a437be72af62c37c/69690c4b/video/tos/useast5/tos-useast5-ve-0068c001-tx/o4BLAtNMVFQDgELQIpED2rfjEd9agY7uDSwbfR/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=988&bt=494&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ODRoN2k3ZDY5aTg2OGY5OUBpamdxOHU5cjllNzMzZzczNEA0YzEtNi4vXmIxXi5jNl8tYSNlcm81MmRzYGxhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"url_expire\":1768492107,\"width\":576,\"height\":1024,\"file_hash\":\"7d1f98cae842a42c2371ce006ad47b96\",\"format\":\"\",\"size\":3625202,\"bitrate\":506578,\"video_quality\":\"lowest\"}]},\"name\":\"favorite hoodie!! #tiktokmademebuyit \",\"release_date\":\"1764800178\",\"item_id\":\"7579758887683869966\",\"like_cnt\":30,\"play_cnt\":1555,\"comment_cnt\":2,\"video_products\":[{\"name\":\"AUTOMET Fade Craft Unisex Casual Oversized Acid Wash Tops Hoodie Pullover-Athletic&Warm, Long Sleeve Relaxed Fit Sweatshirt In Soft Material,Pair with leggings-No Bleach or Detergent Needed\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/998070c7ef8947989826932f104a0776~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730540119477686743\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"70.99\",\"formatted_price\":\"$70.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"70.99\",\"formatted_price\":\"$70.99\"},\"promoted_product_num\":\"12450\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"28\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"674.28\",\"symbol\":\"$\",\"format\":\"$674.28\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601450\",\"name\":\"Beauty & Personal Care\"},{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_605248\",\"name\":\"Fashion Accessories\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":514,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"674.28\",\"symbol\":\"$\",\"format\":\"$674.28\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":371,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"1763\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"469\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"458\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7663\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"469\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"458\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"18-24\",\"25-34\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"3.6\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495894110410410496\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"haleyjoy\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"haleyjoy\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/9817f97b99caa344d422856a141ab9ca~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=581669c6&x-expires=1768640400&x-signature=qTO9QoU%2FpQ8nzEcvqcXKJbDHGpU%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/9817f97b99caa344d422856a141ab9ca~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=a6fbc183&x-expires=1768640400&x-signature=N8SIvyyqu8PxwwOBC1tK4jh6qRM%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"24726\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"1718\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d3uq73vog65osjudmaqg\",\"duration\":30.767,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/okuCBfKPBDroiHzEH9ipt3EMfBSI51bg42RVHA~tplv-noop.image?dr=12525&refresh_token=4546e42b&x-expires=1768492080&x-signature=sws%2BeQ6rTRYIo0NylDxxyZQDHF4%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/89f48e5f61b18b5f1f87605382a4ad52/69690c30/video/tos/useast5/tos-useast5-ve-0068c004-tx/oAPizpbNI54EShfBK9WBfD1RHHAiQntgCnBoEP/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1390&bt=695&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTY2OWk7ZmZlZTppNDc4ZEBpamRnbXI5cjZ0NjMzZzczNEA1MzYtLzBiNTQxLS5iNDEvYSNuanJwMmRzNHJhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/89f48e5f61b18b5f1f87605382a4ad52/69690c30/video/tos/useast5/tos-useast5-ve-0068c004-tx/oAPizpbNI54EShfBK9WBfD1RHHAiQntgCnBoEP/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1390&bt=695&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=aTY2OWk7ZmZlZTppNDc4ZEBpamRnbXI5cjZ0NjMzZzczNEA1MzYtLzBiNTQxLS5iNDEvYSNuanJwMmRzNHJhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"url_expire\":1768492080,\"width\":480,\"height\":854,\"file_hash\":\"f3ab8747df138a5208bbc873e31aa509\",\"format\":\"\",\"size\":2739893,\"bitrate\":712423,\"video_quality\":\"lowest\"}]},\"name\":\"Looove this comfy plus size dress! And it’s on SALE. #plussize #plussizefashion #fallfashion \",\"release_date\":\"1761453261\",\"item_id\":\"7565384023787228471\",\"like_cnt\":39,\"play_cnt\":4896,\"comment_cnt\":5,\"video_products\":[{\"name\":\"【Plus Size】floral Print Short Sleeve A-line Dress with Pockets, Dresses for Women, Summer Clothes Women, Summer Dress, Casual Summer Maxi Dress, Boho Vintage Dresses for Holiday, Floral Pattern Dress, Shortsleeve Womenswear, Classy Modest Dresses\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/d2850b35f3c347f399395b423a752ba3~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729399393116590776\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"30.89\",\"formatted_price\":\"$30.89\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"45.19\",\"formatted_price\":\"$45.19\"},\"promoted_product_num\":\"3251\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4klc1vog65mc46tacqg\",\"duration\":16.1,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/okzheGwgUeLqHFPeIAZpDkS5V0jUUABKIgdCXc~tplv-noop.image?dr=12525&refresh_token=23c770fa&x-expires=1768492066&x-signature=zg8Ckd5ozO%2FBjp1Ua8%2BY4RIKjBk%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/838cc0573097d35b239995d6a07892aa/69690c22/video/tos/useast5/tos-useast5-ve-0068c001-tx/ookUUUujzghdIXDHISqAewGZLPe8ACmoSQelVJ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=964&bt=482&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Mzg2Zzc2NDppNWg6ZDY8aUBpamZ3N3A5cjRvNzMzZzczNEBfNjYyYDY2XmAxMl9iY2JjYSNuXjNgMmRzYGhhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/838cc0573097d35b239995d6a07892aa/69690c22/video/tos/useast5/tos-useast5-ve-0068c001-tx/ookUUUujzghdIXDHISqAewGZLPe8ACmoSQelVJ/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=964&bt=482&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=Mzg2Zzc2NDppNWg6ZDY8aUBpamZ3N3A5cjRvNzMzZzczNEBfNjYyYDY2XmAxMl9iY2JjYSNuXjNgMmRzYGhhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492066,\"width\":480,\"height\":854,\"file_hash\":\"8c2eafe11ded7d9320915755a190f4b9\",\"format\":\"\",\"size\":993365,\"bitrate\":493597,\"video_quality\":\"lowest\"}]},\"name\":\"Give me ALL the hoodies this winter! #fallfashion #plussizefashion #plussizehoodie #tiktokshopblackfriday \",\"release_date\":\"1764317078\",\"item_id\":\"7577683763325422903\",\"like_cnt\":18,\"play_cnt\":1763,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Women's Plus Size Hoodies Quarter Zip-Up Sweatshirts Long Sleeve Pullover Lightweight Tops with Pocket 1X-4X Casual Comfy Fashion Women's Wear Clothes Loose Kangaroo Drawstring Soft Style Basic Be\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/c72a90f35ef646969083dbf0305a3226~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731556780320264364\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"49.98\",\"formatted_price\":\"$49.98\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"49.98\",\"formatted_price\":\"$49.98\"},\"promoted_product_num\":\"4190\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4ni6j7og65iqunp7pog\",\"duration\":19.467,\"post_url\":\"https://p19-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oUgjakSAkfyXZZE8GHgPnXLCfMOC5AeLIkIUrv~tplv-noop.image?dr=12525&refresh_token=676369d7&x-expires=1768492069&x-signature=Eff8UdUq%2B7Oay8FPDzZNLYb11Ko%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/90d6ae862841cecb0cd2e016732e7cec/69690c25/video/tos/useast5/tos-useast5-pve-0068-tx/okfRIENrxlMDwb1v5GBPE1eJgPFMDpAyLTDSXE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=810&bt=405&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NWYzMzxlPGY6NztmaDszaUBpanNzeGw5cm1sNzMzZzczNEA1XmE2Ml5jNjAxMTFgL2IwYSNsNGtuMmQ0M2thLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/90d6ae862841cecb0cd2e016732e7cec/69690c25/video/tos/useast5/tos-useast5-pve-0068-tx/okfRIENrxlMDwb1v5GBPE1eJgPFMDpAyLTDSXE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=810&bt=405&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NWYzMzxlPGY6NztmaDszaUBpanNzeGw5cm1sNzMzZzczNEA1XmE2Ml5jNjAxMTFgL2IwYSNsNGtuMmQ0M2thLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492069,\"width\":576,\"height\":1024,\"file_hash\":\"6b68738da39a1005fa16029002857ed2\",\"format\":\"\",\"size\":1011068,\"bitrate\":415500,\"video_quality\":\"lowest\"}]},\"name\":\"If you’re all about comfort, these are the jeans you need! Plus size friendly! The 2xl will fit up to a size 22. #plussize #plussizefashion #plussizejeans #tiktokshopcybermonday \",\"release_date\":\"1764697275\",\"item_id\":\"7579316885703986446\",\"like_cnt\":17,\"play_cnt\":1183,\"comment_cnt\":3,\"video_products\":[{\"name\":\"FireSwan Women's Wide Leg Jeans High Waisted Stretchy Denim Pants Elastic Waist Pull On Sweatpant Jeans Trendy Baggy Loose All Seasons Minimalist Basic Trouser Pocket Streetwear Womenswear Bottoms Basic\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/fc55a664836f409abe996689c28bb15c~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731708434750280571\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"59.99\",\"formatted_price\":\"$59.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"59.99\",\"formatted_price\":\"$59.99\"},\"promoted_product_num\":\"2008\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"226\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"7507.17\",\"symbol\":\"$\",\"format\":\"$7,507.17\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_604453\",\"name\":\"Furniture\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":63,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"7292.77\",\"symbol\":\"$\",\"format\":\"$7,292.77\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":22,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"3593\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"1721\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"1718\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7358\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"1721\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"1718\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\",\"45-54\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.7\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495357684189662049\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"naominaomia\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Naomi\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/4276879b30c0ebaa657d9d6d3638ab12~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=f754c8ea&x-expires=1768640400&x-signature=pV%2BJx4Bjk3w4yhQCtauotiv8VoY%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/4276879b30c0ebaa657d9d6d3638ab12~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=a0d2a990&x-expires=1768640400&x-signature=zTcEvNeyq%2B4RRYBuEMDvLq5PCb0%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"9230\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"1671\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v12044gd0000d4g6m97og65v92qjobj0\",\"duration\":15.267,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o0pFSFgSkBLEGAFRfD8IL5jB6IEUg8fgCsaDEm~tplv-noop.image?dr=12525&refresh_token=5e21ff60&x-expires=1768492065&x-signature=v2BUkcNY80YKpLUUS5bsjEjf%2FWU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/789f3731a7c7eaa60ea76a3dda33d4e2/69690c21/video/tos/useast5/tos-useast5-ve-0068c004-tx/okIgEQDKRaUIA9DpSFYCfLALmsfEkECgS8G5Bz/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2320&bt=1160&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=PDVkZjU0MzxnZzppODs6OkBpM2VtNXk5cjw5NzMzZzczNEBiLTBfNC8zNWExNmItL2EtYSNnbG42MmQ0amRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/789f3731a7c7eaa60ea76a3dda33d4e2/69690c21/video/tos/useast5/tos-useast5-ve-0068c004-tx/okIgEQDKRaUIA9DpSFYCfLALmsfEkECgS8G5Bz/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2320&bt=1160&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=PDVkZjU0MzxnZzppODs6OkBpM2VtNXk5cjw5NzMzZzczNEBiLTBfNC8zNWExNmItL2EtYSNnbG42MmQ0amRhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492065,\"width\":576,\"height\":1024,\"file_hash\":\"1c2691b25c40248ce3a89e59804dbef9\",\"format\":\"\",\"size\":2267373,\"bitrate\":1188117,\"video_quality\":\"normal\"}]},\"name\":\"Every breath seems to be provoking.🫦🎀#TikTokShopCyberMonday #TikTokShopBlackFriday #sexy #lace #2PCS \",\"release_date\":\"1763732378\",\"item_id\":\"7575172648225738039\",\"like_cnt\":10109,\"play_cnt\":823400,\"comment_cnt\":32,\"video_products\":[{\"name\":\"Women's Bow Decor Contrast Lace Cami Nightdress & Thong Set, Comfy Pj Set for All Seasons, Fashion Ladies Sleepwear & Homewear, Sexy Lingerie\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ffc07cea693840b0a223824c557d0af6~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729461251918893442\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"15.59\",\"formatted_price\":\"$15.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"15.59\",\"formatted_price\":\"$15.59\"},\"promoted_product_num\":\"53256\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d3vmn07og65os55c2n4g\",\"duration\":9.967,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/oAwpIzCRHAdQvXjSjEZ5fCuAfAxDfFxu2kCaWI~tplv-noop.image?dr=12525&refresh_token=054c5dde&x-expires=1768492059&x-signature=2Ohy2TqJNa1PTJiQ6trwdhjlfNY%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/dda91a4584d8015f9a69568c5dac7828/69690c1b/video/tos/useast5/tos-useast5-ve-0068c002-tx/osaxuFwIEIPQAzfC2ffuS0AAjkpCRDkWHKH6CP/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=554&bt=277&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OjY8NWQ5OmVpaTg5ZjZlZEBpanFmOHI5cjNwNjMzZzczNEBiMzZhLjRfNmExY2ExLjRhYSMxLzJwMmQ0a3NhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/dda91a4584d8015f9a69568c5dac7828/69690c1b/video/tos/useast5/tos-useast5-ve-0068c002-tx/osaxuFwIEIPQAzfC2ffuS0AAjkpCRDkWHKH6CP/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=554&bt=277&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OjY8NWQ5OmVpaTg5ZjZlZEBpanFmOHI5cjNwNjMzZzczNEBiMzZhLjRfNmExY2ExLjRhYSMxLzJwMmQ0a3NhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492059,\"width\":480,\"height\":854,\"file_hash\":\"62cc1444399d7287ef4c20fc8a419dda\",\"format\":\"\",\"size\":354593,\"bitrate\":284613,\"video_quality\":\"lowest\"}]},\"name\":\"Casual and cute fall hoodie dress, every color wants to have!🍂#skirt #hoodie #TikTokShopFallDealsForYou #TikTokShopBlackFriday #TikTokShopCyberMonday\",\"release_date\":\"1761569693\",\"item_id\":\"7565883884206918926\",\"like_cnt\":9531,\"play_cnt\":438381,\"comment_cnt\":93,\"video_products\":[{\"name\":\"Women's Hooded Drawstring Slim Fit Long Sleeve Knit Dress, Casual Fall Winter Fashion, Ladies' Clothing for Daily Wear\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/018857f65d0f491fada5d09f4fd8cc49~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731630439823216666\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"22.59\",\"formatted_price\":\"$22.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"26.19\",\"formatted_price\":\"$26.19\"},\"promoted_product_num\":\"5119\",\"status\":1}]},{\"video\":{\"id\":\"v12044gd0000d4iqc5fog65g42caqong\",\"duration\":15.334,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/osIKJrIAkxALeI0psojiASemLwGWHCfQ1FjSgl~tplv-noop.image?dr=12525&refresh_token=5f3143f5&x-expires=1768492065&x-signature=pTnAiypn8l5%2Fqr83JS%2F%2BhtKBUmg%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/ec6f4ea8628bd932a2c27090e4d6e5bb/69690c21/video/tos/useast5/tos-useast5-ve-0068c002-tx/ogYwp0jQfAA4PJBKCk3lMIEwiiIFtk05tpiIBv/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1060&bt=530&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OTdoMzc6OztlOjw7NzQ2OUBpanJkNWo5cjh0NzMzZzczNEBjMl81Mi82NTMxYzMuXzFfYSNrbmAxMmRjYGZhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/ec6f4ea8628bd932a2c27090e4d6e5bb/69690c21/video/tos/useast5/tos-useast5-ve-0068c002-tx/ogYwp0jQfAA4PJBKCk3lMIEwiiIFtk05tpiIBv/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1060&bt=530&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OTdoMzc6OztlOjw7NzQ2OUBpanJkNWo5cjh0NzMzZzczNEBjMl81Mi82NTMxYzMuXzFfYSNrbmAxMmRjYGZhLS1kMS9zcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492065,\"width\":480,\"height\":854,\"file_hash\":\"9fe872f7c7f62e401dd1b2b47a33fb19\",\"format\":\"\",\"size\":1041972,\"bitrate\":543613,\"video_quality\":\"lowest\"}]},\"name\":\"So cute!!!Want to have a warm winter, choose it!!!🧸✨☁️#TikTokShopCyberMonday #TikTokShopBlackFriday #spotlightfinds #jumpsuit #sleepwear \",\"release_date\":\"1764075069\",\"item_id\":\"7576644396435721486\",\"like_cnt\":11013,\"play_cnt\":494174,\"comment_cnt\":40,\"video_products\":[{\"name\":\"Women's Solid Zipper Hooded Plush Pajama Jumpsuit, Casual Long Sleeve Teddy Bear Ear Design Jumpsuit for Fall & Winter, Women's Sleepwear for Indoor Wear, Fluffy Lady Pajamas\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/16abb102d22c453a82dc5c144497ebe5~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729569660667072981\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"30.59\",\"formatted_price\":\"$30.59\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"30.59\",\"formatted_price\":\"$30.59\"},\"promoted_product_num\":\"24763\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"is_authorized\":true,\"status\":2},\"units_sold\":{\"value\":\"3735\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"55887.80\",\"symbol\":\"$\",\"format\":\"$55.9K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_802184\",\"name\":\"Kids' Fashion\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":152,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"55872.84\",\"symbol\":\"$\",\"format\":\"$55.9K\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":173,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"13780\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"1672\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"1671\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$25K-$60K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"1K+\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7301\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"1672\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"1671\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"5.0\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7495840673515539293\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"ashley.nicolleee\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"Ashley Nicole🤍\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/732f33f4bce9a45284050cbf4a5d6e2b~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=b57dcd46&x-expires=1768640400&x-signature=w5GgKRbVtl21QeYaiShG5Xpm0v8%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/732f33f4bce9a45284050cbf4a5d6e2b~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=408493aa&x-expires=1768640400&x-signature=FB%2F5P61S8WbqHpuP4bwIIQv1C1M%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"33849\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"1737\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d4cvn17og65hjdtgfilg\",\"duration\":9.473,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oofNqFDFjIIP0QjE8zEIvuCAeDPA7jBYMSfWl4~tplv-noop.image?dr=12525&refresh_token=21d4a48f&x-expires=1768492059&x-signature=XJQwBa%2BsfdAeEiaSxdpHE5kK1cg%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/7bf56fc45256b502719b117ccedee388/69690c1b/video/tos/useast8/tos-useast8-ve-0068c001-tx2/o4AQI3ZWEFANmMIAIjADqEYPfleMujSzrIvfC7/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=442&bt=221&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NGloNmk8NTVkaGc4OztlOUBpamxqZ2s5cjR5NzMzaTczNEAuMTAxYS81XjUxNGIyNDJiYSNpY3FnMmQ0a2BhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/7bf56fc45256b502719b117ccedee388/69690c1b/video/tos/useast8/tos-useast8-ve-0068c001-tx2/o4AQI3ZWEFANmMIAIjADqEYPfleMujSzrIvfC7/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=442&bt=221&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NGloNmk8NTVkaGc4OztlOUBpamxqZ2s5cjR5NzMzaTczNEAuMTAxYS81XjUxNGIyNDJiYSNpY3FnMmQ0a2BhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492059,\"width\":480,\"height\":854,\"file_hash\":\"eac7c910078431b94a522876b00e574c\",\"format\":\"\",\"size\":268728,\"bitrate\":226942,\"video_quality\":\"lowest\"}]},\"name\":\"\",\"release_date\":\"1763310516\",\"item_id\":\"7573360900623715615\",\"like_cnt\":78330,\"play_cnt\":1309826,\"comment_cnt\":77,\"video_products\":[{\"name\":\"Fleece Lined Tights One-lined Seam,Fleece Lined Leggings Women,Sheer Fake Translucent Winter Thermal Pantyhose Opaque Warm Thick High Waist Leggings,Warmer,Womenswear,Minimalist,Underwear,Comfort,Basic\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/88a5ca9d0bbd4d30890f418a189a33ba~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729784881943777958\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"24.99\",\"formatted_price\":\"$24.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"24.99\",\"formatted_price\":\"$24.99\"},\"promoted_product_num\":\"17044\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d3r7hmnog65jkgpn0dv0\",\"duration\":16.634,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oAbsRn89oIVnEPEneB9F8njEQbDCS7AgaAfZNG~tplv-noop.image?dr=12525&refresh_token=850dc757&x-expires=1768492066&x-signature=SEXMCHVk04J0UVgSKPabIF03hEU%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/f78ad7fcb5ad7797dc4607ffbe286c87/69690c22/video/tos/useast8/tos-useast8-pve-0068-tx2/ogcE8fnsgAeRD8EIgbnEAaBV8E9FQ2cGobjSV3/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2138&bt=1069&cs=0&ds=3&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=PGg6ZGU2Nmg2ODZmM2dpZEBpM2dxam05cnA6NjMzaTczNEAzX2AvYTYyNmMxYDA1XzY0YSNzLW1oMmRrZW9hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/f78ad7fcb5ad7797dc4607ffbe286c87/69690c22/video/tos/useast8/tos-useast8-pve-0068-tx2/ogcE8fnsgAeRD8EIgbnEAaBV8E9FQ2cGobjSV3/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=2138&bt=1069&cs=0&ds=3&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=PGg6ZGU2Nmg2ODZmM2dpZEBpM2dxam05cnA6NjMzaTczNEAzX2AvYTYyNmMxYDA1XzY0YSNzLW1oMmRrZW9hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492066,\"width\":720,\"height\":1280,\"file_hash\":\"99d10dc0dfca2ac46f4197171e68f02b\",\"format\":\"\",\"size\":2276202,\"bitrate\":1094722,\"video_quality\":\"normal\"}]},\"name\":\"\",\"release_date\":\"1760983264\",\"item_id\":\"7563365417842953503\",\"like_cnt\":29332,\"play_cnt\":479939,\"comment_cnt\":54,\"video_products\":[{\"name\":\"Women's Plain Contrast Lace Off Shoulder Dress, Elegant Long Sleeve Dress for Party Holiday Wedding Guest, Ladies Clothes for All Seasons\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/397f50b3a0864df0b54c672620bc74a8~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1730834353272426887\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"53.69\",\"formatted_price\":\"$53.69\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"53.69\",\"formatted_price\":\"$53.69\"},\"promoted_product_num\":\"4694\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d4ponmfog65gf4t36290\",\"duration\":13.072,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o8vMDfgZEEOVI9iCeBpAFBTzEDR4ALzSAE9RoY~tplv-noop.image?dr=12525&refresh_token=aa03658e&x-expires=1768492063&x-signature=uy%2BSY8FJeGmKPoYWZnWn6nBpsQ8%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/0534cc1dcae5363713d72e4c36620242/69690c1f/video/tos/useast8/tos-useast8-pve-0068-tx2/oY01EWEIQEApZuMfnFFVn4pmkevRHEA8DB4RMg/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=502&bt=251&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTc2aDo2aDhmaDQ5MzRnOEBpMzU2N2o5cnByNzMzaTczNEBgNGBhLV9jNjExLy01Xi8zYSM2M3FjMmRja21hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/0534cc1dcae5363713d72e4c36620242/69690c1f/video/tos/useast8/tos-useast8-pve-0068-tx2/oY01EWEIQEApZuMfnFFVn4pmkevRHEA8DB4RMg/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=502&bt=251&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=ZTc2aDo2aDhmaDQ5MzRnOEBpMzU2N2o5cnByNzMzaTczNEBgNGBhLV9jNjExLy01Xi8zYSM2M3FjMmRja21hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b0000\",\"url_expire\":1768492063,\"width\":576,\"height\":1024,\"file_hash\":\"6bdc889c7212127c34d6ede157ce069d\",\"format\":\"\",\"size\":420269,\"bitrate\":257202,\"video_quality\":\"lowest\"}]},\"name\":\"\",\"release_date\":\"1764985824\",\"item_id\":\"7580556321687080223\",\"like_cnt\":62226,\"play_cnt\":678766,\"comment_cnt\":50,\"video_products\":[{\"name\":\"Fleece Lined Tights One-lined Seam,Fleece Lined Leggings Women,Sheer Fake Translucent Winter Thermal Pantyhose Opaque Warm Thick High Waist Leggings,Warmer,Womenswear,Minimalist,Underwear,Comfort,Basic\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/88a5ca9d0bbd4d30890f418a189a33ba~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1729784881943777958\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"24.99\",\"formatted_price\":\"$24.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"24.99\",\"formatted_price\":\"$24.99\"},\"promoted_product_num\":\"17044\",\"status\":1}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"770\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"17979.40\",\"symbol\":\"$\",\"format\":\"$18.0K\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"},{\"starling_key\":\"magellan_601352\",\"name\":\"Shoes\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":772,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"16820.46\",\"symbol\":\"$\",\"format\":\"$16.8K\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":756,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"9949\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"1659\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"1737\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$5k-$25K\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"100-1K\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"25-34\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Male\",\"value\":\"4720\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"1659\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"1737\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"25-34\",\"18-24\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.5\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":true,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}},{\"creator_oecuid\":{\"value\":\"7494047691929192843\",\"is_authorized\":true,\"status\":0},\"handle\":{\"value\":\"_jewlie_\",\"is_authorized\":true,\"status\":0},\"nickname\":{\"value\":\"_Jewlie_\",\"is_authorized\":true,\"status\":0},\"avatar\":{\"value\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/6c8de2163b13cc1e5ed602cd0e64ee4b~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=d9e41fc2&x-expires=1768640400&x-signature=Fbl7sPIedonEAtzDPEpUJz64%2F30%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"],\"url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/6c8de2163b13cc1e5ed602cd0e64ee4b~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=0d350a5f&x-expires=1768640400&x-signature=dS7eZrka9g%2BdJetOvvY31SN4ToY%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"is_authorized\":true,\"status\":0},\"selection_region\":{\"value\":\"US\",\"is_authorized\":true,\"status\":0},\"is_official_recommend\":{\"is_authorized\":true,\"status\":0},\"is_show_recom_icon\":{\"is_authorized\":true,\"status\":0},\"is_open_account\":{\"is_authorized\":true,\"status\":0},\"main_industry\":{\"is_authorized\":true,\"status\":0},\"ec_live_avg_uv\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"is_quickly_response\":{\"is_authorized\":true,\"status\":0},\"is_active_creator\":{\"is_authorized\":true,\"status\":0},\"is_high_sample_dispatch_rate\":{\"is_authorized\":true,\"status\":0},\"follower_cnt\":{\"value\":\"16679\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm_reference\":{\"is_authorized\":true,\"status\":0},\"creator_bind_mcn_name\":{\"is_authorized\":true,\"status\":0},\"ec_live_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_avg_view_cnt\":{\"value\":\"441\",\"is_authorized\":true,\"status\":0},\"ec_video_gpm\":{\"value\":{\"minimal\":\"0\",\"maximum\":\"0\",\"symbol\":\"$\",\"minimal_format\":\"$0\",\"maximum_format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"top_video_data\":{\"value\":[{\"video\":{\"id\":\"v15044gf0000d3pdu27og65kqe53qvs0\",\"duration\":27.067,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ogR9eAG5w3LI5LjjRTfR4BqIAIYyCiWQfSTbI1~tplv-noop.image?dr=12525&refresh_token=aae3708b&x-expires=1768492077&x-signature=sR0HqhfuLXN91Oh5tJFCSpvKC6g%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/669779134dfbe7ac076f4f96b8d051ff/69690c2d/video/tos/useast8/tos-useast8-pve-0068-tx2/oAM8IV4pIDA63xCK3tFpERoQzE6AfBF8ERfCyE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1738&bt=869&cs=0&ds=3&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=aWU3PDw8MzMzaWg1NDo4PEBpM3k2aG45cjVnNjMzaTczNEA1NF5hXjFiXzAxLzMxLjFgYSNwbjJuMmQ0cm1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/669779134dfbe7ac076f4f96b8d051ff/69690c2d/video/tos/useast8/tos-useast8-pve-0068-tx2/oAM8IV4pIDA63xCK3tFpERoQzE6AfBF8ERfCyE/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=1738&bt=869&cs=0&ds=3&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=0&rc=aWU3PDw8MzMzaWg1NDo4PEBpM3k2aG45cjVnNjMzaTczNEA1NF5hXjFiXzAxLzMxLjFgYSNwbjJuMmQ0cm1hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492077,\"width\":720,\"height\":1280,\"file_hash\":\"a516f247df9e5b8b344868f3a5069a8c\",\"format\":\"\",\"size\":3011107,\"bitrate\":889971,\"video_quality\":\"normal\"}]},\"name\":\"\",\"release_date\":\"1760747413\",\"item_id\":\"7562352497495379230\",\"like_cnt\":55,\"play_cnt\":5704,\"comment_cnt\":3,\"video_products\":[{\"name\":\"Classic Sheer Rip-Resist Tights – 2” Waistband\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/0a900614876f434bb7d974d970e03ef1~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731612434567435156\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"49\",\"formatted_price\":\"$49\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"49\",\"formatted_price\":\"$49\"},\"promoted_product_num\":\"22\",\"status\":2}]},{\"video\":{\"id\":\"v15044gf0000d3rsfh7og65s0681g2s0\",\"duration\":54.267,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ogfA3kEAIBCE9wAA40DFqRQ87I6ftxj04FwIfy~tplv-noop.image?dr=12525&refresh_token=e8d250a5&x-expires=1768492104&x-signature=NglPYHowtDT6Ga34RvRAAGY7zSQ%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/5442657b9e45229c0f2aacddebaff9ee/69690c48/video/tos/useast8/tos-useast8-pve-0068-tx2/o8EDIq6f49FQA8IjEx7RAgFfweADyvAIAw4o3C/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=596&bt=298&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NWk4PDU2ZWg6ZGY0NDU5O0BpMzU0OXY5cmt2NjMzaTczNEAzLzQ0MDJfXy0xXzEzYV81YSNwZDUtMmQ0Y29hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/5442657b9e45229c0f2aacddebaff9ee/69690c48/video/tos/useast8/tos-useast8-pve-0068-tx2/o8EDIq6f49FQA8IjEx7RAgFfweADyvAIAw4o3C/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=596&bt=298&cs=0&ds=2&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=NWk4PDU2ZWg6ZGY0NDU5O0BpMzU0OXY5cmt2NjMzaTczNEAzLzQ0MDJfXy0xXzEzYV81YSNwZDUtMmQ0Y29hLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e00088000\",\"url_expire\":1768492104,\"width\":480,\"height\":854,\"file_hash\":\"919dda94851d485788ddef366b875d46\",\"format\":\"\",\"size\":2076441,\"bitrate\":306107,\"video_quality\":\"lowest\"}]},\"name\":\"\",\"release_date\":\"1761069001\",\"item_id\":\"7563733668338879775\",\"like_cnt\":17,\"play_cnt\":1808,\"comment_cnt\":2,\"video_products\":[{\"name\":\"INLYRIC Women's Inbarely Triangle Bralette Plunge Unlined Seamless Bra No Underwire Sexy Comfortable Everyday\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/c2a007e745b448b9bb733bbf7d3de6fc~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731711189670924528\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"26\",\"formatted_price\":\"$26\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"26\",\"formatted_price\":\"$26\"},\"promoted_product_num\":\"3262\",\"status\":1}]},{\"video\":{\"id\":\"v15044gf0000d53qhn7og65vv8v942ug\",\"duration\":25.4,\"post_url\":\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/o4cGIq695GA0qHoof1LfIjSB1IkAFCPjQ0eLHI~tplv-noop.image?dr=12525&refresh_token=65c696a7&x-expires=1768492075&x-signature=d5KQiaGwY0aZv77QBYg1tr%2FT9jM%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=b5bd6545&idc=useast5\",\"media_type\":\"video\",\"video_infos\":[{\"main_url\":\"https://v16m-default.tiktokcdn-us.com/e11345b83fb5598281d79416a3077df6/69690c2b/video/tos/useast8/tos-useast8-ve-0068c004-tx2/o0IXTjCSljHqGLSwf9xG1AOIqCIeA5ea6E5jI1/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=600&bt=300&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OzQ7aTQ6Nzw3MzU7PGllNEBpajU8O3k5cnF0ODMzaTczNEBfMS4wNDU2NS0xMzBhYV4yYSNyMXNzMmQ0ZTBhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"backup_url\":\"https://v16m-default.tiktokcdn-us.com/e11345b83fb5598281d79416a3077df6/69690c2b/video/tos/useast8/tos-useast8-ve-0068c004-tx2/o0IXTjCSljHqGLSwf9xG1AOIqCIeA5ea6E5jI1/?a=0&bti=ODc5NWYtLjE6&ch=0&cr=0&dr=0&er=0&lr=default&cd=0%7C0%7C0%7C0&cv=1&br=600&bt=300&cs=0&ds=6&ft=GS-jnInz7ThAQNuPXq8Zmo&mime_type=video_mp4&qs=5&rc=OzQ7aTQ6Nzw3MzU7PGllNEBpajU8O3k5cnF0ODMzaTczNEBfMS4wNDU2NS0xMzBhYV4yYSNyMXNzMmQ0ZTBhLS1kMTJzcw%3D%3D&vvpl=1&l=20260115094729F77612256A6D8C048F14&btag=e000b8000\",\"url_expire\":1768492075,\"width\":576,\"height\":1024,\"file_hash\":\"91c6719ad1a805c4d44aa9eb292c8333\",\"format\":\"\",\"size\":976300,\"bitrate\":307496,\"video_quality\":\"lowest\"}]},\"name\":\"\",\"release_date\":\"1766304587\",\"item_id\":\"7586220245187054878\",\"like_cnt\":38,\"play_cnt\":628,\"comment_cnt\":1,\"video_products\":[{\"name\":\"Warm By The Fireplace PJ Pant Set - Red/Black\",\"image\":\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/cfb4bc0fbab54a22b88924b6291def76~tplv-fhlh96nyum-origin-webp.webp?dr=12180&from=3049088325&idc=useast5&ps=933b5bde&shcp=1e1776da&shp=b5bd6545&t=555f072d\",\"product_id\":\"1731996945140323176\",\"min_sale_price\":{\"currency\":\"USD\",\"price\":\"24.99\",\"formatted_price\":\"$24.99\"},\"max_sale_price\":{\"currency\":\"USD\",\"price\":\"24.99\",\"formatted_price\":\"$24.99\"},\"promoted_product_num\":\"17\",\"status\":2}]}],\"is_authorized\":true,\"status\":0},\"shop_collect_status\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_creator_blocked_by_shop\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_fast_growing\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"units_sold\":{\"value\":\"50\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue\":{\"value\":{\"value\":\"1052.73\",\"symbol\":\"$\",\"format\":\"$1,052.73\"},\"is_authorized\":true,\"status\":0},\"has_collaborated\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"category\":{\"value\":[{\"starling_key\":\"magellan_601152\",\"name\":\"Womenswear & Underwear\"},{\"starling_key\":\"magellan_600024\",\"name\":\"Kitchenware\"},{\"starling_key\":\"magellan_603014\",\"name\":\"Sports & Outdoor\"}],\"is_authorized\":true,\"status\":0},\"video_engagement\":{\"value\":223,\"is_authorized\":true,\"status\":0},\"video_gmv\":{\"value\":{\"value\":\"1025.78\",\"symbol\":\"$\",\"format\":\"$1,025.78\"},\"is_authorized\":true,\"status\":0},\"live_gmv\":{\"value\":{\"value\":\"0\",\"symbol\":\"$\",\"format\":\"$0\"},\"is_authorized\":true,\"status\":0},\"ec_video_engagement\":{\"value\":193,\"is_authorized\":true,\"status\":0},\"video_avg_view_cnt\":{\"value\":\"3129\",\"is_authorized\":true,\"status\":0},\"video_play_cnt_med\":{\"value\":\"419\",\"is_authorized\":true,\"status\":0},\"ec_video_play_cnt_med\":{\"value\":\"441\",\"is_authorized\":true,\"status\":0},\"med_gmv_revenue_range\":{\"value\":\"$0-$5k\",\"is_authorized\":true,\"status\":0},\"units_sold_range\":{\"value\":\"10-100\",\"is_authorized\":true,\"status\":0},\"top_follower_age\":{\"value\":[{\"key\":\"35-44\",\"value\":null}],\"is_authorized\":true,\"status\":0},\"top_follower_gender\":{\"value\":[{\"key\":\"Female\",\"value\":\"7879\"}],\"is_authorized\":true,\"status\":0},\"ec_live_med_view_cnt\":{\"value\":\"0\",\"is_authorized\":true,\"status\":0},\"video_med_view_cnt\":{\"value\":\"419\",\"is_authorized\":true,\"status\":0},\"ec_video_med_view_cnt\":{\"value\":\"441\",\"is_authorized\":true,\"status\":0},\"video_med_share_cnt\":{\"is_authorized\":true,\"status\":0},\"top_follower_ages\":{\"value\":[\"35-44\"],\"is_authorized\":true,\"status\":0},\"creator_permission_tag\":{\"value\":2,\"is_authorized\":true,\"status\":0},\"recommend_reason\":{\"is_authorized\":true,\"status\":0},\"sample_fulfillment_rate\":{\"is_authorized\":true,\"status\":0},\"has_invited_before_90d\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"creator_fulfillment_reviews\":{\"is_authorized\":true,\"status\":0},\"creator_fulfillment_score_90d\":{\"is_authorized\":true,\"status\":0},\"pps_score\":{\"value\":\"4.5\",\"is_authorized\":true,\"status\":0},\"is_in_flat_fee_whitelist\":{\"value\":false,\"is_authorized\":true,\"status\":0},\"is_rising_star\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_total_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_fulfillment_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_diligence_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_sales_ability_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_score\":{\"is_authorized\":true,\"status\":0},\"sample_credit_content_quality_rank\":{\"is_authorized\":true,\"status\":0},\"sample_credit_evaluate_duration\":{\"is_authorized\":true,\"status\":0},\"vertical_pro_category\":{\"is_authorized\":true,\"status\":0},\"vat\":{\"is_authorized\":true,\"status\":0}}],\"recommendation_req_id\":\"20260115094435475B2CFA5F5812049440\",\"creator_connect_info_list\":[{\"creator_id\":\"7494163661972932491\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495471822630062339\",\"is_connect\":false,\"is_pair_connect\":true},{\"creator_id\":\"7493997394525063896\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495024979869927933\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494165782447949882\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495352890626705475\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495988653477300472\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494179292385216047\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494022295611475126\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494192152340498160\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7493991674729236167\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494014246304909519\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7496258862278084928\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495209386857302870\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495261793589561739\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7496268845403114069\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495350182967281874\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494011448716724103\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7496070247266879813\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7493992057617025737\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495875409523411505\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494176942263929854\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494980432537225651\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494197229820216327\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494903417591532262\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494010558164862549\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495865443031550514\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7496186149528374150\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494213467448641426\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7496117449514060046\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494131457828881702\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494030178360002342\",\"is_connect\":false,\"is_pair_connect\":true},{\"creator_id\":\"7494887032686087063\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494015114846963196\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495178454161918417\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494177151106123173\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7496267851039214247\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494003841207339172\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495308776415857562\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494011926374352038\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495203700430965304\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495298059707779153\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494003520016910717\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495110957317589521\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495284989944629584\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495106654117858185\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494016847100218282\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495785950510615255\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7496203586843281720\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7496250823663454681\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7493998572997020299\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494015609231870716\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7496128016615246050\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495369338156189995\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494192269915555363\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495969405758966263\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495894110410410496\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495357684189662049\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7495840673515539293\",\"is_connect\":false,\"is_pair_connect\":false},{\"creator_id\":\"7494047691929192843\",\"is_connect\":false,\"is_pair_connect\":false}]}");

/***/ }),

/***/ "467f":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var createError = __webpack_require__("2d83");

/**
 * Resolve or reject a Promise based on response status.
 *
 * @param {Function} resolve A function that resolves the promise.
 * @param {Function} reject A function that rejects the promise.
 * @param {object} response The response.
 */
module.exports = function settle(resolve, reject, response) {
  var validateStatus = response.config.validateStatus;
  if (!validateStatus || validateStatus(response.status)) {
    resolve(response);
  } else {
    reject(createError(
      'Request failed with status code ' + response.status,
      response.config,
      null,
      response.request,
      response
    ));
  }
};


/***/ }),

/***/ "4681":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


/*<replacement>*/

var pna = __webpack_require__("966d");
/*</replacement>*/

// undocumented cb() API, needed for core, not for public API
function destroy(err, cb) {
  var _this = this;

  var readableDestroyed = this._readableState && this._readableState.destroyed;
  var writableDestroyed = this._writableState && this._writableState.destroyed;

  if (readableDestroyed || writableDestroyed) {
    if (cb) {
      cb(err);
    } else if (err && (!this._writableState || !this._writableState.errorEmitted)) {
      pna.nextTick(emitErrorNT, this, err);
    }
    return this;
  }

  // we set destroyed to true before firing error callbacks in order
  // to make it re-entrance safe in case destroy() is called within callbacks

  if (this._readableState) {
    this._readableState.destroyed = true;
  }

  // if this is a duplex stream mark the writable part as destroyed as well
  if (this._writableState) {
    this._writableState.destroyed = true;
  }

  this._destroy(err || null, function (err) {
    if (!cb && err) {
      pna.nextTick(emitErrorNT, _this, err);
      if (_this._writableState) {
        _this._writableState.errorEmitted = true;
      }
    } else if (cb) {
      cb(err);
    }
  });

  return this;
}

function undestroy() {
  if (this._readableState) {
    this._readableState.destroyed = false;
    this._readableState.reading = false;
    this._readableState.ended = false;
    this._readableState.endEmitted = false;
  }

  if (this._writableState) {
    this._writableState.destroyed = false;
    this._writableState.ended = false;
    this._writableState.ending = false;
    this._writableState.finished = false;
    this._writableState.errorEmitted = false;
  }
}

function emitErrorNT(self, err) {
  self.emit('error', err);
}

module.exports = {
  destroy: destroy,
  undestroy: undestroy
};

/***/ }),

/***/ "46b4":
/***/ (function(module, exports) {

/**
 * The function whose prototype chain sequence wrappers inherit from.
 *
 * @private
 */
function baseLodash() {
  // No operation performed.
}

module.exports = baseLodash;


/***/ }),

/***/ "470f":
/***/ (function(module, exports, __webpack_require__) {

var apply = __webpack_require__("85e3"),
    createCtor = __webpack_require__("1257"),
    createHybrid = __webpack_require__("6b5c"),
    createRecurry = __webpack_require__("e6c3"),
    getHolder = __webpack_require__("57d6"),
    replaceHolders = __webpack_require__("e8a9"),
    root = __webpack_require__("2b3e");

/**
 * Creates a function that wraps `func` to enable currying.
 *
 * @private
 * @param {Function} func The function to wrap.
 * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
 * @param {number} arity The arity of `func`.
 * @returns {Function} Returns the new wrapped function.
 */
function createCurry(func, bitmask, arity) {
  var Ctor = createCtor(func);

  function wrapper() {
    var length = arguments.length,
        args = Array(length),
        index = length,
        placeholder = getHolder(wrapper);

    while (index--) {
      args[index] = arguments[index];
    }
    var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder)
      ? []
      : replaceHolders(args, placeholder);

    length -= holders.length;
    if (length < arity) {
      return createRecurry(
        func, bitmask, createHybrid, wrapper.placeholder, undefined,
        args, holders, undefined, undefined, arity - length);
    }
    var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;
    return apply(fn, this, args);
  }
  return wrapper;
}

module.exports = createCurry;


/***/ }),

/***/ "47f5":
/***/ (function(module, exports, __webpack_require__) {

var baseFindIndex = __webpack_require__("2b03"),
    baseIsNaN = __webpack_require__("d9a8"),
    strictIndexOf = __webpack_require__("099a");

/**
 * The base implementation of `_.indexOf` without `fromIndex` bounds checks.
 *
 * @private
 * @param {Array} array The array to inspect.
 * @param {*} value The value to search for.
 * @param {number} fromIndex The index to search from.
 * @returns {number} Returns the index of the matched value, else `-1`.
 */
function baseIndexOf(array, value, fromIndex) {
  return value === value
    ? strictIndexOf(array, value, fromIndex)
    : baseFindIndex(array, baseIsNaN, fromIndex);
}

module.exports = baseIndexOf;


/***/ }),

/***/ "48a0":
/***/ (function(module, exports, __webpack_require__) {

var baseForOwn = __webpack_require__("242e"),
    createBaseEach = __webpack_require__("950a");

/**
 * The base implementation of `_.forEach` without support for iteratee shorthands.
 *
 * @private
 * @param {Array|Object} collection The collection to iterate over.
 * @param {Function} iteratee The function invoked per iteration.
 * @returns {Array|Object} Returns `collection`.
 */
var baseEach = createBaseEach(baseForOwn);

module.exports = baseEach;


/***/ }),

/***/ "48f7":
/***/ (function(module) {

module.exports = JSON.parse("{\"success\":true,\"errorCode\":1000000,\"errorMsg\":null,\"result\":{\"total\":20,\"list\":[{\"id\":2045265787987005400,\"accountingMonth\":\"202604\",\"billTime\":1776464337000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"73703704261603\",\"amount\":3.06,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-13 16:17:29\"},{\"type\":\"签收时间\",\"value\":\"2026-04-14 19:56:21\"}],\"pickupTime\":1776068249000,\"signTime\":1776167781000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":null},{\"id\":2045265788070891500,\"accountingMonth\":\"202604\",\"billTime\":1776464337000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"73703704302235\",\"amount\":3.99,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-13 16:18:07\"},{\"type\":\"签收时间\",\"value\":\"2026-04-14 20:58:33\"}],\"pickupTime\":1776068287000,\"signTime\":1776171513000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":null},{\"id\":2045634733323948000,\"accountingMonth\":\"202604\",\"billTime\":1776552301000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"772059861807148\",\"amount\":1.35,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-13 16:54:48\"},{\"type\":\"签收时间\",\"value\":\"2026-04-14 10:09:40\"}],\"pickupTime\":1776070488000,\"signTime\":1776132580000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":null},{\"id\":2045991780804563000,\"accountingMonth\":\"202604\",\"billTime\":1776637427000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"JT0022960529965\",\"amount\":1.57,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-15 19:52:37\"},{\"type\":\"签收时间\",\"value\":\"2026-04-16 20:01:47\"}],\"pickupTime\":1776253957000,\"signTime\":1776340907000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":null},{\"id\":2045991780884254700,\"accountingMonth\":\"202604\",\"billTime\":1776637427000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"73704041167296\",\"amount\":3.91,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-15 16:51:56\"},{\"type\":\"签收时间\",\"value\":\"2026-04-16 16:02:05\"}],\"pickupTime\":1776243116000,\"signTime\":1776326525000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":null},{\"id\":2045991780963946500,\"accountingMonth\":\"202604\",\"billTime\":1776637427000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"JT0022962106160\",\"amount\":1.52,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-15 19:52:59\"},{\"type\":\"签收时间\",\"value\":\"2026-04-16 18:53:58\"}],\"pickupTime\":1776253979000,\"signTime\":1776336838000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":null},{\"id\":2047078515774079000,\"accountingMonth\":\"202604\",\"billTime\":1776896525000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"800192626117\",\"amount\":4.92,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-17 20:17:15\"},{\"type\":\"签收时间\",\"value\":\"2026-04-18 12:10:58\"}],\"pickupTime\":1776428235000,\"signTime\":1776485458000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":null},{\"id\":2047450737453842400,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"JT0022732866790\",\"amount\":2.33,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-03 20:22:47\"},{\"type\":\"签收时间\",\"value\":\"2026-04-04 13:25:38\"}],\"pickupTime\":1775218967000,\"signTime\":1775280338000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450737529340000,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"73703099489982\",\"amount\":6.66,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-10 13:21:22\"},{\"type\":\"签收时间\",\"value\":\"2026-04-11 12:02:47\"}],\"pickupTime\":1775798482000,\"signTime\":1775880167000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450737613226000,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"DPK202719316955\",\"amount\":11.71,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-02 18:33:48\"},{\"type\":\"签收时间\",\"value\":\"2026-04-04 23:12:12\"}],\"pickupTime\":1775126028000,\"signTime\":1775315532000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450737701306400,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"JT0022853644476\",\"amount\":4.23,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-10 19:53:56\"},{\"type\":\"签收时间\",\"value\":\"2026-04-11 18:32:42\"}],\"pickupTime\":1775822036000,\"signTime\":1775903562000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450737780998100,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"772059092850070\",\"amount\":9.59,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-03 16:45:48\"},{\"type\":\"签收时间\",\"value\":\"2026-04-04 21:23:11\"}],\"pickupTime\":1775205948000,\"signTime\":1775308991000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450737869078500,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"JT0022866594438\",\"amount\":2.3,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-10 19:49:22\"},{\"type\":\"签收时间\",\"value\":\"2026-04-11 18:41:00\"}],\"pickupTime\":1775821762000,\"signTime\":1775904060000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450737952964600,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"710079345524\",\"amount\":35.47,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-03 19:45:09\"},{\"type\":\"签收时间\",\"value\":\"2026-04-05 05:47:14\"}],\"pickupTime\":1775216709000,\"signTime\":1775339234000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450738032656400,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"73703099157502\",\"amount\":6.06,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-10 13:21:22\"},{\"type\":\"签收时间\",\"value\":\"2026-04-11 22:07:16\"}],\"pickupTime\":1775798482000,\"signTime\":1775916436000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450738120736800,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"772059090872867\",\"amount\":3.83,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-03 16:45:36\"},{\"type\":\"签收时间\",\"value\":\"2026-04-04 19:30:30\"}],\"pickupTime\":1775205936000,\"signTime\":1775302230000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450738204622800,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"800191038099\",\"amount\":12.8,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-09 18:52:38\"},{\"type\":\"签收时间\",\"value\":\"2026-04-11 12:01:23\"}],\"pickupTime\":1775731958000,\"signTime\":1775880083000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450738284314600,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"710078953982\",\"amount\":8.97,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-03-31 17:09:03\"},{\"type\":\"签收时间\",\"value\":\"2026-04-01 15:17:08\"}],\"pickupTime\":1774948143000,\"signTime\":1775027828000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450738368200700,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"DPK202723153917\",\"amount\":11.83,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-04-09 18:42:33\"},{\"type\":\"签收时间\",\"value\":\"2026-04-11 23:11:05\"}],\"pickupTime\":1775731353000,\"signTime\":1775920265000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]},{\"id\":2047450738452086800,\"accountingMonth\":\"202604\",\"billTime\":1776985270000,\"billType\":1,\"billTypeStr\":\"揽收服务费\",\"bizSnList\":null,\"billSnType\":\"运单号\",\"mainWayBillSn\":\"772058948465804\",\"amount\":2.21,\"currency\":\"CNY\",\"businessTimes\":[{\"type\":\"揽收时间\",\"value\":\"2026-03-31 17:34:06\"},{\"type\":\"签收时间\",\"value\":\"2026-04-01 12:15:42\"}],\"pickupTime\":1774949646000,\"signTime\":1775016942000,\"outboundTime\":null,\"chargeFinishTime\":1777539784769,\"chargeCreateTime\":1777451704768,\"tags\":[{\"name\":\"已取消减免\",\"hoverText\":\"因关联备货单发货超时，且运单所属周期内整体发货及时率不达标，已取消该笔运单的揽收服务费减免。请按平台要求及时发货，避免影响您的揽收服务费减免权益。\",\"style\":\"default\"}]}]}}");

/***/ }),

/***/ "49e9":
/***/ (function(module) {

module.exports = JSON.parse("{\"shipmentResults\":[{\"arn\":\"38755394391\",\"asnId\":\"46119227732\",\"arnCreationDate\":1758586241095,\"asnCreationDate\":1758592009043,\"cartonCount\":3,\"stackedPalletCount\":0,\"unstackedPalletCount\":0,\"carrierScac\":\"UPSN\",\"carrierName\":null,\"shipMode\":\"SMALL_PARCEL\",\"shipFromAddressId\":1009287150,\"shipFromLine1\":\"C/O 4705 Walker Ave\",\"shipFromName\":\"USWE\",\"shipFromCity\":\"Ontario\",\"shipFromZip\":\"91762\",\"shipFromState\":\"CA\",\"shipFromLocalTimeZone\":\"America/Los_Angeles\",\"shipFromCountryCode\":\"US\",\"tenderPickupDate\":1758835800000,\"scheduledPickupTimeStartMilli\":1758835800000,\"scheduledPickupTimeEndMilli\":1758837641000,\"estimatedDeliveryDate\":1759431600000,\"deliveryDate\":null,\"shipToName\":\"QXY8\",\"shipToLine1\":\"3611 S NORTHPOINTE DR\",\"shipToFC\":\"QXY8\",\"shipToCity\":\"FRESNO\",\"shipToState\":\"CA\",\"shipToCountryCode\":\"US\",\"shipToZip\":\"93725-1962\",\"shipToLocalTimeZone\":null,\"shipmentStatus\":\"IN_TRANSIT\",\"poIds\":[\"8RADOEUP\"],\"invoiceList\":[],\"invoiceDetailsVOList\":[],\"isAsnDraft\":false,\"isExcelDraft\":null,\"frdDMStatus\":null,\"frdDMOrigin\":null,\"loadDMStatus\":null,\"loadDMOrigin\":null,\"canPrintLabels\":true,\"canPrintPalletLabels\":false,\"isArnEditable\":false,\"isAsnEditable\":true,\"referenceId\":\"ref123abc\",\"bolNumber\":null,\"canPrintCI\":null,\"canCreateCI\":null,\"vehicleRunId\":\"113QZ16B2\",\"isEdiAsn\":false,\"ruleViolationCount\":null,\"asnRefdocStatus\":\"SENT\",\"asnMediaFormatId\":\"VendorCentral\",\"temperature\":null,\"treShipmentStatusWithSummaryList\":null,\"pickupLoadingType\":\"LIVE_LOADED\",\"trailerId\":null,\"is3PCarrierShipment\":true,\"isSmallParcelShipment\":true,\"consolidatedArns\":[]},{\"arn\":\"38755377551\",\"asnId\":\"46118494772\",\"arnCreationDate\":1758586000757,\"asnCreationDate\":1758592259945,\"cartonCount\":1,\"stackedPalletCount\":0,\"unstackedPalletCount\":0,\"carrierScac\":\"UPSN\",\"carrierName\":null,\"shipMode\":\"SMALL_PARCEL\",\"shipFromAddressId\":1009287150,\"shipFromLine1\":\"C/O 4705 Walker Ave\",\"shipFromName\":\"USWE\",\"shipFromCity\":\"Ontario\",\"shipFromZip\":\"91762\",\"shipFromState\":\"CA\",\"shipFromLocalTimeZone\":\"America/Los_Angeles\",\"shipFromCountryCode\":\"US\",\"tenderPickupDate\":1758835800000,\"scheduledPickupTimeStartMilli\":1758835800000,\"scheduledPickupTimeEndMilli\":1758837641000,\"estimatedDeliveryDate\":1759431600000,\"deliveryDate\":null,\"shipToName\":\"QXY8\",\"shipToLine1\":\"3611 S NORTHPOINTE DR\",\"shipToFC\":\"QXY8\",\"shipToCity\":\"FRESNO\",\"shipToState\":\"CA\",\"shipToCountryCode\":\"US\",\"shipToZip\":\"93725-1962\",\"shipToLocalTimeZone\":null,\"shipmentStatus\":\"IN_TRANSIT\",\"poIds\":[\"8RADOEUP\"],\"invoiceList\":[],\"invoiceDetailsVOList\":[],\"isAsnDraft\":false,\"isExcelDraft\":null,\"frdDMStatus\":null,\"frdDMOrigin\":null,\"loadDMStatus\":null,\"loadDMOrigin\":null,\"canPrintLabels\":true,\"canPrintPalletLabels\":false,\"isArnEditable\":false,\"isAsnEditable\":true,\"referenceId\":null,\"bolNumber\":null,\"canPrintCI\":null,\"canCreateCI\":null,\"vehicleRunId\":\"113QZ16B2\",\"isEdiAsn\":false,\"ruleViolationCount\":null,\"asnRefdocStatus\":\"SENT\",\"asnMediaFormatId\":\"VendorCentral\",\"temperature\":null,\"treShipmentStatusWithSummaryList\":null,\"pickupLoadingType\":\"LIVE_LOADED\",\"trailerId\":null,\"is3PCarrierShipment\":true,\"isSmallParcelShipment\":true,\"consolidatedArns\":[]},{\"arn\":\"38755361881\",\"asnId\":\"46122739672\",\"arnCreationDate\":1758586083006,\"asnCreationDate\":1758592509552,\"cartonCount\":1,\"stackedPalletCount\":0,\"unstackedPalletCount\":0,\"carrierScac\":\"UPSN\",\"carrierName\":null,\"shipMode\":\"SMALL_PARCEL\",\"shipFromAddressId\":1009287150,\"shipFromLine1\":\"C/O 4705 Walker Ave\",\"shipFromName\":\"USWE\",\"shipFromCity\":\"Ontario\",\"shipFromZip\":\"91762\",\"shipFromState\":\"CA\",\"shipFromLocalTimeZone\":\"America/Los_Angeles\",\"shipFromCountryCode\":\"US\",\"tenderPickupDate\":1758835800000,\"scheduledPickupTimeStartMilli\":1758835800000,\"scheduledPickupTimeEndMilli\":1758837641000,\"estimatedDeliveryDate\":1759431600000,\"deliveryDate\":null,\"shipToName\":\"QXY8\",\"shipToLine1\":\"3611 S NORTHPOINTE DR\",\"shipToFC\":\"QXY8\",\"shipToCity\":\"FRESNO\",\"shipToState\":\"CA\",\"shipToCountryCode\":\"US\",\"shipToZip\":\"93725-1962\",\"shipToLocalTimeZone\":null,\"shipmentStatus\":\"IN_TRANSIT\",\"poIds\":[\"8RADOEUP\"],\"invoiceList\":[],\"invoiceDetailsVOList\":[],\"isAsnDraft\":false,\"isExcelDraft\":null,\"frdDMStatus\":null,\"frdDMOrigin\":null,\"loadDMStatus\":null,\"loadDMOrigin\":null,\"canPrintLabels\":true,\"canPrintPalletLabels\":false,\"isArnEditable\":false,\"isAsnEditable\":true,\"referenceId\":null,\"bolNumber\":null,\"canPrintCI\":null,\"canCreateCI\":null,\"vehicleRunId\":\"113QZ16B2\",\"isEdiAsn\":false,\"ruleViolationCount\":null,\"asnRefdocStatus\":\"SENT\",\"asnMediaFormatId\":\"VendorCentral\",\"temperature\":null,\"treShipmentStatusWithSummaryList\":null,\"pickupLoadingType\":\"LIVE_LOADED\",\"trailerId\":null,\"is3PCarrierShipment\":true,\"isSmallParcelShipment\":true,\"consolidatedArns\":[]},{\"arn\":\"38755342901\",\"asnId\":\"46118492862\",\"arnCreationDate\":1758585916546,\"asnCreationDate\":1758592131004,\"cartonCount\":50,\"stackedPalletCount\":0,\"unstackedPalletCount\":0,\"carrierScac\":\"AACT\",\"carrierName\":null,\"shipMode\":\"LESS_THAN_TRUCKLOAD\",\"shipFromAddressId\":1009287150,\"shipFromLine1\":\"C/O 4705 Walker Ave\",\"shipFromName\":\"USWE\",\"shipFromCity\":\"Ontario\",\"shipFromZip\":\"91762\",\"shipFromState\":\"CA\",\"shipFromLocalTimeZone\":\"America/Los_Angeles\",\"shipFromCountryCode\":\"US\",\"tenderPickupDate\":1758783600000,\"scheduledPickupTimeStartMilli\":1758783600000,\"scheduledPickupTimeEndMilli\":1758787200000,\"estimatedDeliveryDate\":null,\"deliveryDate\":null,\"shipToName\":\"QXY8\",\"shipToLine1\":\"3611 S NORTHPOINTE DR\",\"shipToFC\":\"QXY8\",\"shipToCity\":\"FRESNO\",\"shipToState\":\"CA\",\"shipToCountryCode\":\"US\",\"shipToZip\":\"93725-1962\",\"shipToLocalTimeZone\":null,\"shipmentStatus\":\"PENDING_PICK_UP\",\"poIds\":[\"8RADOEUP\"],\"invoiceList\":[],\"invoiceDetailsVOList\":[],\"isAsnDraft\":true,\"isExcelDraft\":null,\"frdDMStatus\":null,\"frdDMOrigin\":null,\"loadDMStatus\":null,\"loadDMOrigin\":null,\"canPrintLabels\":true,\"canPrintPalletLabels\":false,\"isArnEditable\":false,\"isAsnEditable\":true,\"referenceId\":\"ref321def\",\"bolNumber\":null,\"canPrintCI\":null,\"canCreateCI\":null,\"vehicleRunId\":\"112Q63GHG\",\"isEdiAsn\":false,\"ruleViolationCount\":null,\"asnRefdocStatus\":\"DRAFT\",\"asnMediaFormatId\":\"FreightLoad\",\"temperature\":null,\"treShipmentStatusWithSummaryList\":{\"edi214StatusRecordId\":\"a25a357e-315a-4aa9-ad9c-1a69f7f7ab9e\",\"estimatedDeliveryDate\":null,\"estimatedDeliveryDateLastUpdatedOn\":null,\"estimatedPickUpDate\":null,\"estimatedPickUpDateLastUpdatedOn\":null,\"dockArrivalDate\":null,\"dockCheckedinDate\":null,\"dockUnloadDate\":null,\"dockClosedDate\":null,\"statusSummaryList\":[],\"allStatusList\":[]},\"pickupLoadingType\":\"LIVE_LOADED\",\"trailerId\":null,\"is3PCarrierShipment\":true,\"isSmallParcelShipment\":false,\"consolidatedArns\":[]},{\"arn\":\"38772367781\",\"asnId\":\"46156252512\",\"arnCreationDate\":1758615142613,\"asnCreationDate\":1758781848540,\"cartonCount\":5,\"stackedPalletCount\":0,\"unstackedPalletCount\":0,\"carrierScac\":\"UPSN\",\"carrierName\":null,\"shipMode\":\"SMALL_PARCEL\",\"shipFromAddressId\":1009373864,\"shipFromLine1\":\"10985 Oleander Ave Ste.100\",\"shipFromName\":\"EFCA\",\"shipFromCity\":\"Fontana\",\"shipFromZip\":\"92337\",\"shipFromState\":\"CA\",\"shipFromLocalTimeZone\":\"America/Los_Angeles\",\"shipFromCountryCode\":\"US\",\"tenderPickupDate\":1758834000000,\"scheduledPickupTimeStartMilli\":1758834000000,\"scheduledPickupTimeEndMilli\":1758835841000,\"estimatedDeliveryDate\":null,\"deliveryDate\":null,\"shipToName\":\"QXY8\",\"shipToLine1\":\"3611 S NORTHPOINTE DR\",\"shipToFC\":\"QXY8\",\"shipToCity\":\"FRESNO\",\"shipToState\":\"CA\",\"shipToCountryCode\":\"US\",\"shipToZip\":\"93725-1962\",\"shipToLocalTimeZone\":null,\"shipmentStatus\":\"PENDING_PICK_UP\",\"poIds\":[\"8RADOEUP\"],\"invoiceList\":[],\"invoiceDetailsVOList\":[],\"isAsnDraft\":true,\"isExcelDraft\":null,\"frdDMStatus\":null,\"frdDMOrigin\":null,\"loadDMStatus\":null,\"loadDMOrigin\":null,\"canPrintLabels\":true,\"canPrintPalletLabels\":false,\"isArnEditable\":false,\"isAsnEditable\":true,\"referenceId\":\"ref123abc\",\"bolNumber\":null,\"canPrintCI\":null,\"canCreateCI\":null,\"vehicleRunId\":\"113WM5P4C\",\"isEdiAsn\":false,\"ruleViolationCount\":null,\"asnRefdocStatus\":\"DRAFT\",\"asnMediaFormatId\":\"FreightLoad\",\"temperature\":null,\"treShipmentStatusWithSummaryList\":null,\"pickupLoadingType\":\"LIVE_LOADED\",\"trailerId\":null,\"is3PCarrierShipment\":true,\"isSmallParcelShipment\":false,\"consolidatedArns\":[]},{\"arn\":\"38772114611\",\"asnId\":\"46149635042\",\"arnCreationDate\":1758614948633,\"asnCreationDate\":1758767968517,\"cartonCount\":2,\"stackedPalletCount\":0,\"unstackedPalletCount\":0,\"carrierScac\":\"UPSN\",\"carrierName\":null,\"shipMode\":\"SMALL_PARCEL\",\"shipFromAddressId\":1009373864,\"shipFromLine1\":\"10985 Oleander Ave Ste.100\",\"shipFromName\":\"EFCA\",\"shipFromCity\":\"Fontana\",\"shipFromZip\":\"92337\",\"shipFromState\":\"CA\",\"shipFromLocalTimeZone\":\"America/Los_Angeles\",\"shipFromCountryCode\":\"US\",\"tenderPickupDate\":1758834000000,\"scheduledPickupTimeStartMilli\":1758834000000,\"scheduledPickupTimeEndMilli\":1758835841000,\"estimatedDeliveryDate\":null,\"deliveryDate\":null,\"shipToName\":\"QXY8\",\"shipToLine1\":\"3611 S NORTHPOINTE DR\",\"shipToFC\":\"QXY8\",\"shipToCity\":\"FRESNO\",\"shipToState\":\"CA\",\"shipToCountryCode\":\"US\",\"shipToZip\":\"93725-1962\",\"shipToLocalTimeZone\":null,\"shipmentStatus\":\"PENDING_PICK_UP\",\"poIds\":[\"8RADOEUP\"],\"invoiceList\":[],\"invoiceDetailsVOList\":[],\"isAsnDraft\":true,\"isExcelDraft\":null,\"frdDMStatus\":null,\"frdDMOrigin\":null,\"loadDMStatus\":null,\"loadDMOrigin\":null,\"canPrintLabels\":true,\"canPrintPalletLabels\":false,\"isArnEditable\":false,\"isAsnEditable\":true,\"referenceId\":null,\"bolNumber\":null,\"canPrintCI\":null,\"canCreateCI\":null,\"vehicleRunId\":\"113WM5P4C\",\"isEdiAsn\":false,\"ruleViolationCount\":null,\"asnRefdocStatus\":\"DRAFT\",\"asnMediaFormatId\":\"FreightLoad\",\"temperature\":null,\"treShipmentStatusWithSummaryList\":null,\"pickupLoadingType\":\"LIVE_LOADED\",\"trailerId\":null,\"is3PCarrierShipment\":true,\"isSmallParcelShipment\":false,\"consolidatedArns\":[]},{\"arn\":\"38755393401\",\"asnId\":\"46118496372\",\"arnCreationDate\":1758586166259,\"asnCreationDate\":1758592381180,\"cartonCount\":2,\"stackedPalletCount\":0,\"unstackedPalletCount\":0,\"carrierScac\":\"UPSN\",\"carrierName\":null,\"shipMode\":\"SMALL_PARCEL\",\"shipFromAddressId\":1009287150,\"shipFromLine1\":\"C/O 4705 Walker Ave\",\"shipFromName\":\"USWE\",\"shipFromCity\":\"Ontario\",\"shipFromZip\":\"91762\",\"shipFromState\":\"CA\",\"shipFromLocalTimeZone\":\"America/Los_Angeles\",\"shipFromCountryCode\":\"US\",\"tenderPickupDate\":1758835800000,\"scheduledPickupTimeStartMilli\":1758835800000,\"scheduledPickupTimeEndMilli\":1758837641000,\"estimatedDeliveryDate\":1759431600000,\"deliveryDate\":null,\"shipToName\":\"QXY8\",\"shipToLine1\":\"3611 S NORTHPOINTE DR\",\"shipToFC\":\"QXY8\",\"shipToCity\":\"FRESNO\",\"shipToState\":\"CA\",\"shipToCountryCode\":\"US\",\"shipToZip\":\"93725-1962\",\"shipToLocalTimeZone\":null,\"shipmentStatus\":\"IN_TRANSIT\",\"poIds\":[\"8RADOEUP\"],\"invoiceList\":[],\"invoiceDetailsVOList\":[],\"isAsnDraft\":false,\"isExcelDraft\":null,\"frdDMStatus\":null,\"frdDMOrigin\":null,\"loadDMStatus\":null,\"loadDMOrigin\":null,\"canPrintLabels\":true,\"canPrintPalletLabels\":false,\"isArnEditable\":false,\"isAsnEditable\":true,\"referenceId\":null,\"bolNumber\":null,\"canPrintCI\":null,\"canCreateCI\":null,\"vehicleRunId\":\"113QZ16B2\",\"isEdiAsn\":false,\"ruleViolationCount\":null,\"asnRefdocStatus\":\"SENT\",\"asnMediaFormatId\":\"VendorCentral\",\"temperature\":null,\"treShipmentStatusWithSummaryList\":null,\"pickupLoadingType\":\"LIVE_LOADED\",\"trailerId\":null,\"is3PCarrierShipment\":true,\"isSmallParcelShipment\":true,\"consolidatedArns\":[]}],\"nextPageNum\":-1}");

/***/ }),

/***/ "49f4":
/***/ (function(module, exports, __webpack_require__) {

var nativeCreate = __webpack_require__("6044");

/**
 * Removes all key-value entries from the hash.
 *
 * @private
 * @name clear
 * @memberOf Hash
 */
function hashClear() {
  this.__data__ = nativeCreate ? nativeCreate(null) : {};
  this.size = 0;
}

module.exports = hashClear;


/***/ }),

/***/ "4a1c":
/***/ (function(module, exports, __webpack_require__) {

var parse = __webpack_require__("72ce"),
    render = __webpack_require__("1735"),
    assign = __webpack_require__("dce5");

/**
 * HTML Tags
 */

var tags = { tag: true, script: true, style: true };

/**
 * Check if the DOM element is a tag
 *
 * isTag(type) includes <script> and <style> tags
 */

exports.isTag = function(type) {
  if (type.type) type = type.type;
  return tags[type] || false;
};

/**
 * Convert a string to camel case notation.
 * @param  {String} str String to be converted.
 * @return {String}     String in camel case notation.
 */

exports.camelCase = function(str) {
  return str.replace(/[_.-](\w|$)/g, function(_, x) {
    return x.toUpperCase();
  });
};

/**
 * Convert a string from camel case to "CSS case", where word boundaries are
 * described by hyphens ("-") and all characters are lower-case.
 * @param  {String} str String to be converted.
 * @return {string}     String in "CSS case".
 */
exports.cssCase = function(str) {
  return str.replace(/[A-Z]/g, '-$&').toLowerCase();
};

/**
 * Iterate over each DOM element without creating intermediary Cheerio instances.
 *
 * This is indented for use internally to avoid otherwise unnecessary memory pressure introduced
 * by _make.
 */

exports.domEach = function(cheerio, fn) {
  var i = 0, len = cheerio.length;
  while (i < len && fn.call(cheerio, i, cheerio[i]) !== false) ++i;
  return cheerio;
};

/**
 * Create a deep copy of the given DOM structure by first rendering it to a
 * string and then parsing the resultant markup.
 *
 * @argument {Object} dom - The htmlparser2-compliant DOM structure
 * @argument {Object} options - The parsing/rendering options
 */
exports.cloneDom = function(dom, options) {
  options = assign({}, options, { _useHtmlParser2: true });

  return parse(render(dom, options), options, false).children;
};

/*
 * A simple way to check for HTML strings or ID strings
 */

var quickExpr = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/;

/*
 * Check if string is HTML
 */
exports.isHtml = function(str) {
  // Faster than running regex, if str starts with `<` and ends with `>`, assume it's HTML
  if (str.charAt(0) === '<' && str.charAt(str.length - 1) === '>' && str.length >= 3) return true;

  // Run the regex
  var match = quickExpr.exec(str);
  return !!(match && match[1]);
};


/***/ }),

/***/ "4a7b":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");

/**
 * Config-specific merge-function which creates a new config-object
 * by merging two configuration objects together.
 *
 * @param {Object} config1
 * @param {Object} config2
 * @returns {Object} New object resulting from merging config2 to config1
 */
module.exports = function mergeConfig(config1, config2) {
  // eslint-disable-next-line no-param-reassign
  config2 = config2 || {};
  var config = {};

  var valueFromConfig2Keys = ['url', 'method', 'params', 'data'];
  var mergeDeepPropertiesKeys = ['headers', 'auth', 'proxy'];
  var defaultToConfig2Keys = [
    'baseURL', 'url', 'transformRequest', 'transformResponse', 'paramsSerializer',
    'timeout', 'withCredentials', 'adapter', 'responseType', 'xsrfCookieName',
    'xsrfHeaderName', 'onUploadProgress', 'onDownloadProgress',
    'maxContentLength', 'validateStatus', 'maxRedirects', 'httpAgent',
    'httpsAgent', 'cancelToken', 'socketPath'
  ];

  utils.forEach(valueFromConfig2Keys, function valueFromConfig2(prop) {
    if (typeof config2[prop] !== 'undefined') {
      config[prop] = config2[prop];
    }
  });

  utils.forEach(mergeDeepPropertiesKeys, function mergeDeepProperties(prop) {
    if (utils.isObject(config2[prop])) {
      config[prop] = utils.deepMerge(config1[prop], config2[prop]);
    } else if (typeof config2[prop] !== 'undefined') {
      config[prop] = config2[prop];
    } else if (utils.isObject(config1[prop])) {
      config[prop] = utils.deepMerge(config1[prop]);
    } else if (typeof config1[prop] !== 'undefined') {
      config[prop] = config1[prop];
    }
  });

  utils.forEach(defaultToConfig2Keys, function defaultToConfig2(prop) {
    if (typeof config2[prop] !== 'undefined') {
      config[prop] = config2[prop];
    } else if (typeof config1[prop] !== 'undefined') {
      config[prop] = config1[prop];
    }
  });

  var axiosKeys = valueFromConfig2Keys
    .concat(mergeDeepPropertiesKeys)
    .concat(defaultToConfig2Keys);

  var otherKeys = Object
    .keys(config2)
    .filter(function filterAxiosKeys(key) {
      return axiosKeys.indexOf(key) === -1;
    });

  utils.forEach(otherKeys, function otherKeysDefaultToConfig2(prop) {
    if (typeof config2[prop] !== 'undefined') {
      config[prop] = config2[prop];
    } else if (typeof config1[prop] !== 'undefined') {
      config[prop] = config1[prop];
    }
  });

  return config;
};


/***/ }),

/***/ "4b17":
/***/ (function(module, exports, __webpack_require__) {

var toFinite = __webpack_require__("6428");

/**
 * Converts `value` to an integer.
 *
 * **Note:** This method is loosely based on
 * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to convert.
 * @returns {number} Returns the converted integer.
 * @example
 *
 * _.toInteger(3.2);
 * // => 3
 *
 * _.toInteger(Number.MIN_VALUE);
 * // => 0
 *
 * _.toInteger(Infinity);
 * // => 1.7976931348623157e+308
 *
 * _.toInteger('3.2');
 * // => 3
 */
function toInteger(value) {
  var result = toFinite(value),
      remainder = result % 1;

  return result === result ? (remainder ? result - remainder : result) : 0;
}

module.exports = toInteger;


/***/ }),

/***/ "4cef":
/***/ (function(module, exports) {

/** Used to match a single whitespace character. */
var reWhitespace = /\s/;

/**
 * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace
 * character of `string`.
 *
 * @private
 * @param {string} string The string to inspect.
 * @returns {number} Returns the index of the last non-whitespace character.
 */
function trimmedEndIndex(string) {
  var index = string.length;

  while (index-- && reWhitespace.test(string.charAt(index))) {}
  return index;
}

module.exports = trimmedEndIndex;


/***/ }),

/***/ "4d8c":
/***/ (function(module, exports, __webpack_require__) {

var baseFlatten = __webpack_require__("5c69");

/**
 * Flattens `array` a single level deep.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Array
 * @param {Array} array The array to flatten.
 * @returns {Array} Returns the new flattened array.
 * @example
 *
 * _.flatten([1, [2, [3, [4]], 5]]);
 * // => [1, 2, [3, [4]], 5]
 */
function flatten(array) {
  var length = array == null ? 0 : array.length;
  return length ? baseFlatten(array, 1) : [];
}

module.exports = flatten;


/***/ }),

/***/ "4f50":
/***/ (function(module, exports, __webpack_require__) {

var assignMergeValue = __webpack_require__("b760"),
    cloneBuffer = __webpack_require__("e538"),
    cloneTypedArray = __webpack_require__("c8fe"),
    copyArray = __webpack_require__("4359"),
    initCloneObject = __webpack_require__("fa21"),
    isArguments = __webpack_require__("d370"),
    isArray = __webpack_require__("6747"),
    isArrayLikeObject = __webpack_require__("dcbe"),
    isBuffer = __webpack_require__("0d24"),
    isFunction = __webpack_require__("9520"),
    isObject = __webpack_require__("1a8c"),
    isPlainObject = __webpack_require__("60ed"),
    isTypedArray = __webpack_require__("73ac"),
    safeGet = __webpack_require__("8adb"),
    toPlainObject = __webpack_require__("8de2");

/**
 * A specialized version of `baseMerge` for arrays and objects which performs
 * deep merges and tracks traversed objects enabling objects with circular
 * references to be merged.
 *
 * @private
 * @param {Object} object The destination object.
 * @param {Object} source The source object.
 * @param {string} key The key of the value to merge.
 * @param {number} srcIndex The index of `source`.
 * @param {Function} mergeFunc The function to merge values.
 * @param {Function} [customizer] The function to customize assigned values.
 * @param {Object} [stack] Tracks traversed source values and their merged
 *  counterparts.
 */
function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {
  var objValue = safeGet(object, key),
      srcValue = safeGet(source, key),
      stacked = stack.get(srcValue);

  if (stacked) {
    assignMergeValue(object, key, stacked);
    return;
  }
  var newValue = customizer
    ? customizer(objValue, srcValue, (key + ''), object, source, stack)
    : undefined;

  var isCommon = newValue === undefined;

  if (isCommon) {
    var isArr = isArray(srcValue),
        isBuff = !isArr && isBuffer(srcValue),
        isTyped = !isArr && !isBuff && isTypedArray(srcValue);

    newValue = srcValue;
    if (isArr || isBuff || isTyped) {
      if (isArray(objValue)) {
        newValue = objValue;
      }
      else if (isArrayLikeObject(objValue)) {
        newValue = copyArray(objValue);
      }
      else if (isBuff) {
        isCommon = false;
        newValue = cloneBuffer(srcValue, true);
      }
      else if (isTyped) {
        isCommon = false;
        newValue = cloneTypedArray(srcValue, true);
      }
      else {
        newValue = [];
      }
    }
    else if (isPlainObject(srcValue) || isArguments(srcValue)) {
      newValue = objValue;
      if (isArguments(objValue)) {
        newValue = toPlainObject(objValue);
      }
      else if (!isObject(objValue) || isFunction(objValue)) {
        newValue = initCloneObject(srcValue);
      }
    }
    else {
      isCommon = false;
    }
  }
  if (isCommon) {
    // Recursively merge objects and arrays (susceptible to call stack limits).
    stack.set(srcValue, newValue);
    mergeFunc(newValue, srcValue, srcIndex, customizer, stack);
    stack['delete'](srcValue);
  }
  assignMergeValue(object, key, newValue);
}

module.exports = baseMergeDeep;


/***/ }),

/***/ "4fcb":
/***/ (function(module, exports, __webpack_require__) {

var getWrapDetails = __webpack_require__("ba51"),
    insertWrapDetails = __webpack_require__("da53"),
    setToString = __webpack_require__("c1c9"),
    updateWrapDetails = __webpack_require__("fe50");

/**
 * Sets the `toString` method of `wrapper` to mimic the source of `reference`
 * with wrapper details in a comment at the top of the source body.
 *
 * @private
 * @param {Function} wrapper The function to modify.
 * @param {Function} reference The reference function.
 * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
 * @returns {Function} Returns `wrapper`.
 */
function setWrapToString(wrapper, reference, bitmask) {
  var source = (reference + '');
  return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask)));
}

module.exports = setWrapToString;


/***/ }),

/***/ "50d8":
/***/ (function(module, exports) {

/**
 * The base implementation of `_.times` without support for iteratee shorthands
 * or max array length checks.
 *
 * @private
 * @param {number} n The number of times to invoke `iteratee`.
 * @param {Function} iteratee The function invoked per iteration.
 * @returns {Array} Returns the array of results.
 */
function baseTimes(n, iteratee) {
  var index = -1,
      result = Array(n);

  while (++index < n) {
    result[index] = iteratee(index);
  }
  return result;
}

module.exports = baseTimes;


/***/ }),

/***/ "5182":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


exports.REPLACEMENT_CHARACTER = '\uFFFD';

exports.CODE_POINTS = {
    EOF: -1,
    NULL: 0x00,
    TABULATION: 0x09,
    CARRIAGE_RETURN: 0x0D,
    LINE_FEED: 0x0A,
    FORM_FEED: 0x0C,
    SPACE: 0x20,
    EXCLAMATION_MARK: 0x21,
    QUOTATION_MARK: 0x22,
    NUMBER_SIGN: 0x23,
    AMPERSAND: 0x26,
    APOSTROPHE: 0x27,
    HYPHEN_MINUS: 0x2D,
    SOLIDUS: 0x2F,
    DIGIT_0: 0x30,
    DIGIT_9: 0x39,
    SEMICOLON: 0x3B,
    LESS_THAN_SIGN: 0x3C,
    EQUALS_SIGN: 0x3D,
    GREATER_THAN_SIGN: 0x3E,
    QUESTION_MARK: 0x3F,
    LATIN_CAPITAL_A: 0x41,
    LATIN_CAPITAL_F: 0x46,
    LATIN_CAPITAL_X: 0x58,
    LATIN_CAPITAL_Z: 0x5A,
    GRAVE_ACCENT: 0x60,
    LATIN_SMALL_A: 0x61,
    LATIN_SMALL_F: 0x66,
    LATIN_SMALL_X: 0x78,
    LATIN_SMALL_Z: 0x7A,
    REPLACEMENT_CHARACTER: 0xFFFD
};

exports.CODE_POINT_SEQUENCES = {
    DASH_DASH_STRING: [0x2D, 0x2D], //--
    DOCTYPE_STRING: [0x44, 0x4F, 0x43, 0x54, 0x59, 0x50, 0x45], //DOCTYPE
    CDATA_START_STRING: [0x5B, 0x43, 0x44, 0x41, 0x54, 0x41, 0x5B], //[CDATA[
    CDATA_END_STRING: [0x5D, 0x5D, 0x3E], //]]>
    SCRIPT_STRING: [0x73, 0x63, 0x72, 0x69, 0x70, 0x74], //script
    PUBLIC_STRING: [0x50, 0x55, 0x42, 0x4C, 0x49, 0x43], //PUBLIC
    SYSTEM_STRING: [0x53, 0x59, 0x53, 0x54, 0x45, 0x4D] //SYSTEM
};


/***/ }),

/***/ "5270":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");
var transformData = __webpack_require__("c401");
var isCancel = __webpack_require__("2e67");
var defaults = __webpack_require__("2444");

/**
 * Throws a `Cancel` if cancellation has been requested.
 */
function throwIfCancellationRequested(config) {
  if (config.cancelToken) {
    config.cancelToken.throwIfRequested();
  }
}

/**
 * Dispatch a request to the server using the configured adapter.
 *
 * @param {object} config The config that is to be used for the request
 * @returns {Promise} The Promise to be fulfilled
 */
module.exports = function dispatchRequest(config) {
  throwIfCancellationRequested(config);

  // Ensure headers exist
  config.headers = config.headers || {};

  // Transform request data
  config.data = transformData(
    config.data,
    config.headers,
    config.transformRequest
  );

  // Flatten headers
  config.headers = utils.merge(
    config.headers.common || {},
    config.headers[config.method] || {},
    config.headers
  );

  utils.forEach(
    ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],
    function cleanHeaderConfig(method) {
      delete config.headers[method];
    }
  );

  var adapter = config.adapter || defaults.adapter;

  return adapter(config).then(function onAdapterResolution(response) {
    throwIfCancellationRequested(config);

    // Transform response data
    response.data = transformData(
      response.data,
      response.headers,
      config.transformResponse
    );

    return response;
  }, function onAdapterRejection(reason) {
    if (!isCancel(reason)) {
      throwIfCancellationRequested(config);

      // Transform response data
      if (reason && reason.response) {
        reason.response.data = transformData(
          reason.response.data,
          reason.response.headers,
          config.transformResponse
        );
      }
    }

    return Promise.reject(reason);
  });
};


/***/ }),

/***/ "53a3":
/***/ (function(module, exports, __webpack_require__) {

/*
  Module dependencies
*/

var parse = __webpack_require__("72ce"),
    defaultOptions = __webpack_require__("c84e").default,
    flattenOptions = __webpack_require__("c84e").flatten,
    isHtml = __webpack_require__("4a1c").isHtml,
    _ = {
      extend: __webpack_require__("a9b9"),
      bind: __webpack_require__("2696"),
      forEach: __webpack_require__("6cd4"),
      defaults: __webpack_require__("95ae")
    };

/*
 * The API
 */

var api = [
  __webpack_require__("7703"),
  __webpack_require__("f84c"),
  __webpack_require__("9db9"),
  __webpack_require__("65cd"),
  __webpack_require__("9459")
];

/*
 * Instance of cheerio
 */

var Cheerio = module.exports = function(selector, context, root, options) {
  if (!(this instanceof Cheerio)) return new Cheerio(selector, context, root, options);

  this.options = _.defaults(flattenOptions(options), this.options, defaultOptions);

  // $(), $(null), $(undefined), $(false)
  if (!selector) return this;

  if (root) {
    if (typeof root === 'string') root = parse(root, this.options, false);
    this._root = Cheerio.call(this, root);
  }

  // $($)
  if (selector.cheerio) return selector;

  // $(dom)
  if (isNode(selector))
    selector = [selector];

  // $([dom])
  if (Array.isArray(selector)) {
    _.forEach(selector, _.bind(function(elem, idx) {
      this[idx] = elem;
    }, this));
    this.length = selector.length;
    return this;
  }

  // $(<html>)
  if (typeof selector === 'string' && isHtml(selector)) {
    return Cheerio.call(this, parse(selector, this.options, false).children);
  }

  // If we don't have a context, maybe we have a root, from loading
  if (!context) {
    context = this._root;
  } else if (typeof context === 'string') {
    if (isHtml(context)) {
      // $('li', '<ul>...</ul>')
      context = parse(context, this.options, false);
      context = Cheerio.call(this, context);
    } else {
      // $('li', 'ul')
      selector = [context, selector].join(' ');
      context = this._root;
    }
  // $('li', node), $('li', [nodes])
  } else if (!context.cheerio) {
    context = Cheerio.call(this, context);
  }

  // If we still don't have a context, return
  if (!context) return this;

  // #id, .class, tag
  return context.find(selector);
};

/**
 * Mix in `static`
 */

_.extend(Cheerio, __webpack_require__("d116"));

/*
 * Set a signature of the object
 */

Cheerio.prototype.cheerio = '[cheerio object]';

/*
 * Make cheerio an array-like object
 */

Cheerio.prototype.length = 0;
Cheerio.prototype.splice = Array.prototype.splice;

/*
 * Make a cheerio object
 *
 * @api private
 */

Cheerio.prototype._make = function(dom, context) {
  var cheerio = new this.constructor(dom, context, this._root, this.options);
  cheerio.prevObject = this;
  return cheerio;
};

/**
 * Turn a cheerio object into an array
 */

Cheerio.prototype.toArray = function() {
  return this.get();
};

/**
 * Plug in the API
 */
api.forEach(function(mod) {
  _.extend(Cheerio.prototype, mod);
});

var isNode = function(obj) {
  return obj.name || obj.type === 'text' || obj.type === 'comment';
};


/***/ }),

/***/ "54d4":
/***/ (function(module, exports) {

// This object will be used as the prototype for Nodes when creating a
// DOM-Level-1-compliant structure.
var NodePrototype = module.exports = {
	get firstChild() {
		var children = this.children;
		return children && children[0] || null;
	},
	get lastChild() {
		var children = this.children;
		return children && children[children.length - 1] || null;
	},
	get nodeType() {
		return nodeTypes[this.type] || nodeTypes.element;
	}
};

var domLvl1 = {
	tagName: "name",
	childNodes: "children",
	parentNode: "parent",
	previousSibling: "prev",
	nextSibling: "next",
	nodeValue: "data"
};

var nodeTypes = {
	element: 1,
	text: 3,
	cdata: 4,
	comment: 8
};

Object.keys(domLvl1).forEach(function(key) {
	var shorthand = domLvl1[key];
	Object.defineProperty(NodePrototype, key, {
		get: function() {
			return this[shorthand] || null;
		},
		set: function(val) {
			this[shorthand] = val;
			return val;
		}
	});
});


/***/ }),

/***/ "55a3":
/***/ (function(module, exports) {

/**
 * Checks if a stack value for `key` exists.
 *
 * @private
 * @name has
 * @memberOf Stack
 * @param {string} key The key of the entry to check.
 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
 */
function stackHas(key) {
  return this.__data__.has(key);
}

module.exports = stackHas;


/***/ }),

/***/ "57a5":
/***/ (function(module, exports, __webpack_require__) {

var overArg = __webpack_require__("91e9");

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeKeys = overArg(Object.keys, Object);

module.exports = nativeKeys;


/***/ }),

/***/ "57d6":
/***/ (function(module, exports) {

/**
 * Gets the argument placeholder value for `func`.
 *
 * @private
 * @param {Function} func The function to inspect.
 * @returns {*} Returns the placeholder value.
 */
function getHolder(func) {
  var object = func;
  return object.placeholder;
}

module.exports = getHolder;


/***/ }),

/***/ "585a":
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */
var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;

module.exports = freeGlobal;

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("c8ba")))

/***/ }),

/***/ "58f7":
/***/ (function(module, exports) {

/**
 * The base implementation of `_.reduce` and `_.reduceRight`, without support
 * for iteratee shorthands, which iterates over `collection` using `eachFunc`.
 *
 * @private
 * @param {Array|Object} collection The collection to iterate over.
 * @param {Function} iteratee The function invoked per iteration.
 * @param {*} accumulator The initial value.
 * @param {boolean} initAccum Specify using the first or last element of
 *  `collection` as the initial value.
 * @param {Function} eachFunc The function to iterate over `collection`.
 * @returns {*} Returns the accumulated value.
 */
function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) {
  eachFunc(collection, function(value, index, collection) {
    accumulator = initAccum
      ? (initAccum = false, value)
      : iteratee(accumulator, value, index, collection);
  });
  return accumulator;
}

module.exports = baseReduce;


/***/ }),

/***/ "5c69":
/***/ (function(module, exports, __webpack_require__) {

var arrayPush = __webpack_require__("087d"),
    isFlattenable = __webpack_require__("0621");

/**
 * The base implementation of `_.flatten` with support for restricting flattening.
 *
 * @private
 * @param {Array} array The array to flatten.
 * @param {number} depth The maximum recursion depth.
 * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.
 * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.
 * @param {Array} [result=[]] The initial result value.
 * @returns {Array} Returns the new flattened array.
 */
function baseFlatten(array, depth, predicate, isStrict, result) {
  var index = -1,
      length = array.length;

  predicate || (predicate = isFlattenable);
  result || (result = []);

  while (++index < length) {
    var value = array[index];
    if (depth > 0 && predicate(value)) {
      if (depth > 1) {
        // Recursively flatten arrays (susceptible to call stack limits).
        baseFlatten(value, depth - 1, predicate, isStrict, result);
      } else {
        arrayPush(result, value);
      }
    } else if (!isStrict) {
      result[result.length] = value;
    }
  }
  return result;
}

module.exports = baseFlatten;


/***/ }),

/***/ "5e1a":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

var Buffer = __webpack_require__("8707").Buffer;
var util = __webpack_require__(2);

function copyBuffer(src, target, offset) {
  src.copy(target, offset);
}

module.exports = function () {
  function BufferList() {
    _classCallCheck(this, BufferList);

    this.head = null;
    this.tail = null;
    this.length = 0;
  }

  BufferList.prototype.push = function push(v) {
    var entry = { data: v, next: null };
    if (this.length > 0) this.tail.next = entry;else this.head = entry;
    this.tail = entry;
    ++this.length;
  };

  BufferList.prototype.unshift = function unshift(v) {
    var entry = { data: v, next: this.head };
    if (this.length === 0) this.tail = entry;
    this.head = entry;
    ++this.length;
  };

  BufferList.prototype.shift = function shift() {
    if (this.length === 0) return;
    var ret = this.head.data;
    if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next;
    --this.length;
    return ret;
  };

  BufferList.prototype.clear = function clear() {
    this.head = this.tail = null;
    this.length = 0;
  };

  BufferList.prototype.join = function join(s) {
    if (this.length === 0) return '';
    var p = this.head;
    var ret = '' + p.data;
    while (p = p.next) {
      ret += s + p.data;
    }return ret;
  };

  BufferList.prototype.concat = function concat(n) {
    if (this.length === 0) return Buffer.alloc(0);
    if (this.length === 1) return this.head.data;
    var ret = Buffer.allocUnsafe(n >>> 0);
    var p = this.head;
    var i = 0;
    while (p) {
      copyBuffer(p.data, ret, i);
      i += p.data.length;
      p = p.next;
    }
    return ret;
  };

  return BufferList;
}();

if (util && util.inspect && util.inspect.custom) {
  module.exports.prototype[util.inspect.custom] = function () {
    var obj = util.inspect({ length: this.length });
    return this.constructor.name + ' ' + obj;
  };
}

/***/ }),

/***/ "5e2e":
/***/ (function(module, exports, __webpack_require__) {

var listCacheClear = __webpack_require__("28c9"),
    listCacheDelete = __webpack_require__("69d5"),
    listCacheGet = __webpack_require__("b4c0"),
    listCacheHas = __webpack_require__("fba5"),
    listCacheSet = __webpack_require__("67ca");

/**
 * Creates an list cache object.
 *
 * @private
 * @constructor
 * @param {Array} [entries] The key-value pairs to cache.
 */
function ListCache(entries) {
  var index = -1,
      length = entries == null ? 0 : entries.length;

  this.clear();
  while (++index < length) {
    var entry = entries[index];
    this.set(entry[0], entry[1]);
  }
}

// Add methods to `ListCache`.
ListCache.prototype.clear = listCacheClear;
ListCache.prototype['delete'] = listCacheDelete;
ListCache.prototype.get = listCacheGet;
ListCache.prototype.has = listCacheHas;
ListCache.prototype.set = listCacheSet;

module.exports = ListCache;


/***/ }),

/***/ "5e61":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("c1df");
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("ca00");
/* harmony import */ var _data_log__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("6b23");
/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("db49");
/* harmony import */ var _index__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("a1d0");
/* harmony import */ var _taskType__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("2f79");
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }

function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }

function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }

function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }







/**
 * 重构后的多平台任务管理类
 * 采用扁平化数据结构，以 platform_store_id+report_date_month 作为分组key
 */

var MultiPlatformTaskV2 = /*#__PURE__*/function () {
  function MultiPlatformTaskV2() {
    var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
        sleepTime = _ref.sleepTime;

    _classCallCheck(this, MultiPlatformTaskV2);

    // 任务类型相关
    this.taskTypeTotal = 0; // 扁平化任务分组 - 核心数据结构

    this.taskGroups = {}; // 执行顺序管理

    this.orderedKeys = []; // 指针式调度核心

    this.currentGroupPointer = null; // 当前执行的分组key

    this.currentTaskPointer = 0; // 当前分组内的任务索引

    this.isExecuting = false; // 是否正在执行任务

    this.currentRunningTaskId = null; // 当前正在执行的任务ID
    // 任务状态

    this.taskStatus = 'idle'; // repeat任务缓存（不受月份分组影响）

    this.repeatMap = {}; // 轮次执行跟踪器

    this.executionRound = 1;
    this.roundExecutionRecord = {}; // 记录每个分组在当前轮次的执行状态
    // 重试定时器

    this.retryTimerName = null;
    this.nextRetryAt = null; // 重试配置

    this.retryConfig = {
      noRetryTypes: [30005],
      // 不需要重试的任务类型（如重复任务）,30005即时性要求高，失败就不要重试了
      maxRetryCount: _config__WEBPACK_IMPORTED_MODULE_3__[/* TEMU_MAX_RETRY_COUNT */ "d"],
      // 最大延迟时间是2的12次方秒，即4096秒，约1小时15分钟
      retryInterval: function retryInterval(errorTime) {
        return Math.min(Math.pow(2, errorTime) * 1000, Math.pow(2, 12) * 1000);
      }
    }; // 配置参数

    this.notCoverTypes = [22002, 22001, 22010, 22011, 22008, 22016, 30003, 30004, 30005, 30007]; // 不需要覆盖的任务类型

    this.runningNotCoverTypes = [22017]; // 正在执行的不需要覆盖的任务类型

    this.sleepTime = sleepTime || 3000; // 1-3s

    this.taskTimeout = 20 * 60 * 1000;
    this.force = false; // 初始化

    this.getTaskList();
  }
  /**
   * @description 获取任务列表
   * @param {boolean} force 是否强制获取
   */


  _createClass(MultiPlatformTaskV2, [{
    key: "getTaskList",
    value: function () {
      var _getTaskList = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(force) {
        var storeIdsSet, storeIdMap, res;
        return _regeneratorRuntime().wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                // 兼容 mallId/uniqueId：以 storeInfo 为基准，追加映射值后去重
                storeIdsSet = new Set(_index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].storeInfo || []);
                storeIdMap = _index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].storeIdMap || {};
                (_index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].storeInfo || []).forEach(function (id) {
                  var mapped = storeIdMap[id];
                  if (mapped) storeIdsSet.add(mapped);
                });
                _context.next = 5;
                return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* gatePost */ "m"])('api/mp/getTask', {
                  platform_code: _index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].platformCode,
                  platform_store_ids: _toConsumableArray(storeIdsSet),
                  force: force
                }, 'task').catch(function (e) {
                  _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog('获取任务列表失败----', Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(e));
                });

              case 5:
                res = _context.sent;

                if (res && res.code === 0) {
                  this.initTaskList(res.data, force);
                }

              case 7:
              case "end":
                return _context.stop();
            }
          }
        }, _callee, this);
      }));

      function getTaskList(_x) {
        return _getTaskList.apply(this, arguments);
      }

      return getTaskList;
    }()
    /**
     * @description 任务数据初始化
     * @param {Object} item 任务项
     * @returns {Object} 初始化后的任务
     */

  }, {
    key: "initTask",
    value: function initTask(item) {
      var data = _typeof(item.data) === 'object' ? item.data : JSON.parse(item.data);
      return _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, item), item.store_info || {}), data || {}), {}, {
        status: 0,
        error_time: 0,
        hide: false,
        isDelete: false,
        isInit: true,
        endTime: null,
        isRetryable: !this.retryConfig.noRetryTypes.includes(+item.type_id)
      });
    }
    /**
     * @description 检查任务是否可执行（基础条件检查）
     * @param {Object} task 任务对象
     * @returns {boolean} 是否可执行
     */

  }, {
    key: "isTaskExecutable",
    value: function isTaskExecutable(task) {
      if (!task) return false;
      if (task.isDelete) return false;
      if (task.status === 1) return false;
      if (task.error_time >= this.retryConfig.maxRetryCount) return false;
      if (!this.shouldRetryNow(task)) return false;
      return true;
    }
    /**
     * @description 弹窗重新获取触发回调，将错误次数大于等于9的任务重置为0
     */

  }, {
    key: "handleReGet",
    value: function handleReGet() {
      var _loop = function _loop() {
        var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),
            groupKey = _Object$entries$_i[0],
            group = _Object$entries$_i[1];

        if (group.tasks && group.tasks.length) {
          group.tasks.forEach(function (task) {
            if (task.error_time >= 10) {
              task.error_time = 0;
              _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u91CD\u7F6E\u4EFB\u52A1\u9519\u8BEF\u6B21\u6570\uFF1AtaskId-".concat(task.task_id, "\uFF0C\u6240\u5728\u5206\u7EC4\uFF1A").concat(groupKey));
            }
          });
        }
      };

      for (var _i = 0, _Object$entries = Object.entries(this.taskGroups); _i < _Object$entries.length; _i++) {
        _loop();
      }

      this.taskSchedule();
    }
    /**
     * @description 检查是否应该重试
     * @param {Object} task 任务对象
     * @returns {boolean} 是否应该重试
     */

  }, {
    key: "shouldRetryNow",
    value: function shouldRetryNow(task) {
      if (!task.isRetryable && task.error_time > 0) return false;
      if (!task.endTime || task.error_time === 0) return true;
      var nextRetryTime = task.endTime + this.retryConfig.retryInterval(task.error_time);
      return Date.now() >= nextRetryTime;
    }
    /**
     * @description 判断任务是否属于重试候选
     */

  }, {
    key: "isRetryCandidate",
    value: function isRetryCandidate(task) {
      if (!task) return false;
      if (task.repeat > 0) return false; // 重复任务不走重试定时器

      if (!task.isRetryable && task.error_time > 0) return false;
      if (task.isDelete || task.status === 1) return false;
      if (typeof task.endTime !== 'number') return false;
      if (task.error_time <= 0 || task.error_time >= this.retryConfig.maxRetryCount) return false; // 仅考虑未来时间点的重试

      var next = this.getTaskNextRetryTime(task);
      return typeof next === 'number' && next > Date.now();
    }
    /**
     * @description 计算任务下一次重试时间戳
     */

  }, {
    key: "getTaskNextRetryTime",
    value: function getTaskNextRetryTime(task) {
      var interval = this.retryConfig.retryInterval(task.error_time);
      return task.endTime + interval;
    }
    /**
     * @description 汇总所有任务，返回最近的下一次重试时间戳
     */

  }, {
    key: "computeNextRetryAt",
    value: function computeNextRetryAt() {
      var minTs = null;

      for (var _i2 = 0, _Object$values = Object.values(this.taskGroups); _i2 < _Object$values.length; _i2++) {
        var group = _Object$values[_i2];
        if (!group || !group.tasks || group.tasks.length === 0) continue;

        var _iterator = _createForOfIteratorHelper(group.tasks),
            _step;

        try {
          for (_iterator.s(); !(_step = _iterator.n()).done;) {
            var task = _step.value;
            if (!this.isRetryCandidate(task)) continue;
            var ts = this.getTaskNextRetryTime(task);

            if (minTs === null || ts < minTs) {
              minTs = ts;
            }
          }
        } catch (err) {
          _iterator.e(err);
        } finally {
          _iterator.f();
        }
      }

      return minTs;
    }
    /**
     * @description 清除重试定时器
     */

  }, {
    key: "clearRetryTimer",
    value: function clearRetryTimer() {
      if (this.retryTimerName) {
        chrome.alarms.clear(this.retryTimerName);
        this.retryTimerName = null;
        this.nextRetryAt = null;
        _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog('已清除重试定时器');
      }
    }
    /**
     * @description 设置重试定时器（当当前无可执行任务时）
     */

  }, {
    key: "scheduleRetryTimer",
    value: function () {
      var _scheduleRetryTimer = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
        var _this = this;

        var ts, delay, timerName;
        return _regeneratorRuntime().wrap(function _callee3$(_context3) {
          while (1) {
            switch (_context3.prev = _context3.next) {
              case 0:
                _context3.next = 2;
                return this.discontinue();

              case 2:
                if (!_context3.sent) {
                  _context3.next = 5;
                  break;
                }

                this.clearRetryTimer();
                return _context3.abrupt("return");

              case 5:
                ts = this.computeNextRetryAt();

                if (ts) {
                  _context3.next = 9;
                  break;
                }

                this.clearRetryTimer();
                return _context3.abrupt("return");

              case 9:
                if (!(this.retryTimerName && this.nextRetryAt === ts)) {
                  _context3.next = 11;
                  break;
                }

                return _context3.abrupt("return");

              case 11:
                this.clearRetryTimer();
                delay = Math.max(0, ts - Date.now());
                this.nextRetryAt = ts;
                timerName = "retryTimer";
                this.retryTimerName = timerName;
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u8BBE\u7F6E\u91CD\u8BD5\u5B9A\u65F6\u5668\uFF0C".concat(Math.ceil(delay / 1000), "s \u540E\u89E6\u53D1")); // 设置定时器回调

                _utils_util__WEBPACK_IMPORTED_MODULE_1__[/* alarms */ "b"].setTimeout( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
                  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
                    while (1) {
                      switch (_context2.prev = _context2.next) {
                        case 0:
                          _this.retryTimerName = null;
                          _this.nextRetryAt = null; // 回调时再次校验状态

                          _context2.next = 4;
                          return _this.discontinue();

                        case 4:
                          if (!_context2.sent) {
                            _context2.next = 6;
                            break;
                          }

                          return _context2.abrupt("return");

                        case 6:
                          // 执行一次调度（此时应有任务达到重试时间）
                          _this.taskSchedule();

                        case 7:
                        case "end":
                          return _context2.stop();
                      }
                    }
                  }, _callee2);
                })), timerName, delay);

              case 18:
              case "end":
                return _context3.stop();
            }
          }
        }, _callee3, this);
      }));

      function scheduleRetryTimer() {
        return _scheduleRetryTimer.apply(this, arguments);
      }

      return scheduleRetryTimer;
    }()
    /**
     * @description 初始化分组的轮次执行记录
     * @param {string} groupKey 分组key
     */

  }, {
    key: "initGroupRoundRecord",
    value: function initGroupRoundRecord(groupKey) {
      if (!this.roundExecutionRecord[groupKey]) {
        this.roundExecutionRecord[groupKey] = {
          currentRound: this.executionRound,
          executedTaskIds: new Set(),
          // 本轮已执行过的任务ID
          allTasksTriedInRound: false // 本轮是否所有任务都已尝试

        };
      }
    }
    /**
     * @description 标记任务在当前轮次已执行
     * @param {string} groupKey 分组key
     * @param {string} taskId 任务ID
     */

  }, {
    key: "markTaskExecutedInRound",
    value: function markTaskExecutedInRound(groupKey, taskId) {
      this.initGroupRoundRecord(groupKey);
      this.roundExecutionRecord[groupKey].executedTaskIds.add(taskId);
    }
    /**
     * @description 检查任务在当前轮次是否已执行过
     * @param {string} groupKey 分组key
     * @param {string} taskId 任务ID
     * @returns {boolean} 是否已执行过
     */

  }, {
    key: "isTaskExecutedInCurrentRound",
    value: function isTaskExecutedInCurrentRound(groupKey, taskId) {
      var record = this.roundExecutionRecord[groupKey];
      return record && record.executedTaskIds.has(taskId);
    }
    /**
     * @description 检查分组在当前轮次是否已完成
     * @param {string} groupKey 分组key
     * @returns {boolean} 是否已完成当前轮次
     */

  }, {
    key: "isGroupRoundComplete",
    value: function isGroupRoundComplete(groupKey) {
      var _this2 = this;

      var group = this.taskGroups[groupKey];
      if (!group || !group.tasks) return true;
      this.initGroupRoundRecord(groupKey);
      var record = this.roundExecutionRecord[groupKey]; // 检查所有可执行任务是否都已在本轮尝试过

      return group.tasks.every(function (task) {
        if (!_this2.isTaskExecutable(task)) {
          return true; // 已删除、已完成或超过最大错误次数的任务不影响轮次完成
        }

        return record.executedTaskIds.has(task.task_id);
      });
    }
    /**
     * @description 重置轮次执行记录，开始新的轮次
     */

  }, {
    key: "startNewExecutionRound",
    value: function startNewExecutionRound() {
      this.executionRound++; // 清除所有分组的轮次记录，但保留分组结构

      for (var _i3 = 0, _Object$keys = Object.keys(this.roundExecutionRecord); _i3 < _Object$keys.length; _i3++) {
        var groupKey = _Object$keys[_i3];
        this.roundExecutionRecord[groupKey] = {
          currentRound: this.executionRound,
          executedTaskIds: new Set(),
          allTasksTriedInRound: false
        };
      }

      _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u5F00\u59CB\u65B0\u7684\u6267\u884C\u8F6E\u6B21: ".concat(this.executionRound));
    }
    /**
     * @description 过滤相同任务（扁平化key内按type_id去重）
     * @param {Array} taskList 新任务列表
     * @param {boolean} force 是否强制获取
     */

  }, {
    key: "filterTaskList",
    value: function filterTaskList(taskList) {
      var _this3 = this;

      var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
      var clearRepeatMap = {};
      taskList.forEach(function (item, index) {
        // 任务初始化
        taskList[index] = _this3.initTask(item);
        var task = taskList[index]; // 生成分组key

        var groupKey = MultiPlatformTaskV2.generateStoreMonthKey(task.platform_store_id, task.report_date_month); // 特殊处理repeat任务

        if (task.repeat > 0) {
          _this3.initRepeatTask(task, force);

          return;
        }

        if (task.isDelete) return; // 过滤新进任务中相同的任务
        // 在对应分组中查找相同任务（需要覆盖任务根据type_id去重，不需要覆盖任务根据task_id去重）

        var group = _this3.taskGroups[groupKey];

        if (group && group.tasks) {
          var sameTaskIndex = group.tasks.findIndex(function (existingTask) {
            if (_this3.runningNotCoverTypes.includes(+task.type_id)) {
              // 运行中不覆盖类型（如 22017）：同 store_id + 同 type_id 视为同一个任务
              return existingTask.store_id === task.store_id && existingTask.type_id === task.type_id && !existingTask.isDelete;
            }

            return (_this3.notCoverTypes.includes(+task.type_id) ? existingTask.task_id === task.task_id : existingTask.type_id === task.type_id) && !existingTask.isDelete;
          });

          if (sameTaskIndex !== -1) {
            var sameTask = group.tasks[sameTaskIndex]; // 如果是正在执行的任务，则不删除，但重置任务状态

            if (_this3.currentRunningTaskId === sameTask.task_id) {
              task.isDelete = true;
              sameTask.error_time = 0;
              sameTask.hide = false;
              sameTask.isDelete = false;
              sameTask.status = 0;
              return;
            }

            sameTask.isDelete = true;
          }
        }
      });
    }
    /**
     * @description 初始化repeat任务（不受月份分组影响）
     * @param {Object} task 任务对象
     * @param {boolean} force 是否强制获取
     */

  }, {
    key: "initRepeatTask",
    value: function initRepeatTask(task) {
      var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
      if (task.repeat <= 0) return;
      var copy = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* deepClone */ "g"])(task);
      copy.count = 0;
      copy.isRepeatMap = true; // 新的数据结构：{typeId: [task1, task2]}

      if (!this.repeatMap[task.type_id]) {
        this.repeatMap[task.type_id] = [];
      }

      var repeatList = this.repeatMap[task.type_id];
      var existingIndex = repeatList.findIndex(function (item) {
        return item.platform_store_id === task.platform_store_id;
      });

      if (existingIndex !== -1) {
        // 相同站点&不是点击的立即获取&不是repeatMap派遣的任务，则继续走repeat任务管理流程，删掉新进来的任务
        // 防止循环请求拉任务导致repeat任务重复执行
        if (!force && !task.isRepeatMap) {
          task.isDelete = true;
          copy.count = repeatList[existingIndex].count;
        } // 替换现有任务


        repeatList[existingIndex] = copy;
      } else {
        // 添加新任务
        repeatList.push(copy);
      }
    }
    /**
     * @description 任务队列初始化（扁平化分组、优先级排序、去重）
     * @param {Array} taskList 新任务列表
     * @param {boolean} force 是否强制获取
     */

  }, {
    key: "initTaskList",
    value: function () {
      var _initTaskList = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(taskList) {
        var _this4 = this;

        var force,
            newStoreIds,
            newGroups,
            _loop2,
            _i4,
            _Object$entries2,
            _ret,
            _args4 = arguments;

        return _regeneratorRuntime().wrap(function _callee4$(_context4) {
          while (1) {
            switch (_context4.prev = _context4.next) {
              case 0:
                force = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : false;

                if (!(taskList.length === 0)) {
                  _context4.next = 3;
                  break;
                }

                return _context4.abrupt("return");

              case 3:
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog('任务初始化（扁平化分组、去重、优先级排序、店铺优先级排序）'); // 过滤相同任务

                this.filterTaskList(taskList, force); // 收集新店铺ID，用于优先级排序

                newStoreIds = new Set(); // 按扁平化key分组新任务

                newGroups = {};
                taskList.forEach(function (task) {
                  // 丢弃被删除任务和repeat任务
                  if (task.isDelete) return;
                  var groupKey = MultiPlatformTaskV2.generateStoreMonthKey(task.platform_store_id, task.report_date_month); // 记录新店铺ID

                  newStoreIds.add(task.platform_store_id);

                  if (newGroups[groupKey]) {
                    newGroups[groupKey].tasks.push(task);
                  } else if (_this4.taskGroups[groupKey]) {
                    _this4.taskGroups[groupKey].tasks.push(task);

                    newGroups[groupKey] = _this4.taskGroups[groupKey];
                  } else {
                    newGroups[groupKey] = {
                      storeInfo: _index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].storeInfoOfExhibition.find(function (item) {
                        return item.mallId == task.platform_store_id || _index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].storeIdMap[item.mallId] == task.platform_store_id;
                      }) || task.store_info || {},
                      tasks: [task],
                      storeId: task.platform_store_id,
                      monthId: task.report_date_month
                    };
                  }
                }); // 合并旧任务

                Object.keys(this.taskGroups).forEach(function (key) {
                  var group = _this4.taskGroups[key];

                  if (!newGroups[key]) {
                    newGroups[key] = group;
                  }
                }); // 处理分组中待删除任务&任务排序

                _loop2 = function _loop2() {
                  var _Object$entries2$_i = _slicedToArray(_Object$entries2[_i4], 2),
                      key = _Object$entries2$_i[0],
                      group = _Object$entries2$_i[1];

                  group.tasks = group.tasks.filter(function (task) {
                    return !task.isDelete;
                  }); // 删除没有任务的分组

                  if (group.tasks.length === 0) {
                    delete newGroups[key];
                    newStoreIds.delete(group.storeId);
                    _this4.orderedKeys = _this4.orderedKeys.filter(function (k) {
                      return k !== key;
                    });
                    return "continue";
                  } // 根据任务类型优先级排序后再根据任务优先级排序


                  group.tasks.forEach(function (item) {
                    var obj = _index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].taskTypesMap[item.type_id];

                    if (obj) {
                      obj.list.push(item);
                    }
                  });
                  var arr = [];
                  _index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].taskTypes.forEach(function (item) {
                    if (item.list && item.list.length) {
                      item.list.sort(function (a, b) {
                        return b.priority - a.priority;
                      });
                      arr.push.apply(arr, _toConsumableArray(item.list));
                      item.list = [];
                    }
                  });
                  group.tasks = arr;
                };

                _i4 = 0, _Object$entries2 = Object.entries(newGroups);

              case 11:
                if (!(_i4 < _Object$entries2.length)) {
                  _context4.next = 18;
                  break;
                }

                _ret = _loop2();

                if (!(_ret === "continue")) {
                  _context4.next = 15;
                  break;
                }

                return _context4.abrupt("continue", 15);

              case 15:
                _i4++;
                _context4.next = 11;
                break;

              case 18:
                // 更新分组
                this.taskGroups = newGroups; // 更新执行顺序（新店铺优先）

                this.updateExecutionOrderWithPriority(Array.from(newStoreIds)); // 如果没有正在执行任务，开始任务调度

                if (!this.isExecuting) {
                  this.taskSchedule();
                }

              case 21:
              case "end":
                return _context4.stop();
            }
          }
        }, _callee4, this);
      }));

      function initTaskList(_x2) {
        return _initTaskList.apply(this, arguments);
      }

      return initTaskList;
    }()
    /**
     * @description 更新执行顺序（新店铺优先）
     * @param {Array} newStoreIds 新店铺ID列表
     */

  }, {
    key: "updateExecutionOrderWithPriority",
    value: function updateExecutionOrderWithPriority(newStoreIds) {
      var _this5 = this;

      // 获取现有店铺顺序（排除新店铺）
      var existingStoreIds = this.orderedKeys.map(function (key) {
        return MultiPlatformTaskV2.parseStoreMonthKey(key).storeId;
      }).filter(function (storeId, index, arr) {
        return arr.indexOf(storeId) === index;
      }) // 去重
      .filter(function (storeId) {
        return !newStoreIds.includes(storeId);
      }); // 新的店铺顺序：新店铺优先，然后是现有店铺顺序

      var finalStoreOrder = [].concat(_toConsumableArray(newStoreIds), _toConsumableArray(existingStoreIds)); // 生成新的执行顺序

      var newOrderedKeys = [];
      finalStoreOrder.forEach(function (storeId) {
        var storeKeys = Object.keys(_this5.taskGroups).filter(function (key) {
          return key.startsWith("".concat(storeId, "_"));
        }).sort(function (a, b) {
          // 按月份倒序
          var monthA = MultiPlatformTaskV2.parseStoreMonthKey(a).monthId;
          var monthB = MultiPlatformTaskV2.parseStoreMonthKey(b).monthId;
          return (monthB || '').localeCompare(monthA || '');
        });
        newOrderedKeys.push.apply(newOrderedKeys, _toConsumableArray(storeKeys));
      }); // 调整当前指针位置

      var oldCurrentKey = this.currentGroupPointer;
      this.orderedKeys = newOrderedKeys; // 如果当前指针指向的分组仍存在，保持指针位置

      if (oldCurrentKey && this.taskGroups[oldCurrentKey]) {
        this.currentGroupPointer = oldCurrentKey;
      } else {
        // 否则重置到第一个分组
        this.currentGroupPointer = newOrderedKeys.length > 0 ? newOrderedKeys[0] : null;
      } // 重置组内任务索引
      // this.currentTaskPointer = 0


      _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u6267\u884C\u987A\u5E8F\u5DF2\u66F4\u65B0\uFF0C\u65B0\u5E97\u94FA\u4F18\u5148\uFF1A".concat(newStoreIds.join(','), "\uFF0C\u603B\u6267\u884C\u987A\u5E8F\uFF1A").concat(newOrderedKeys.join(',')));
    }
    /**
     * @description 判断任务能否执行
     * @param {Object} task 任务对象
     * @returns {boolean} 能否执行
     */

  }, {
    key: "canRunTask",
    value: function () {
      var _canRunTask = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(task) {
        var task_id, res, msg;
        return _regeneratorRuntime().wrap(function _callee5$(_context5) {
          while (1) {
            switch (_context5.prev = _context5.next) {
              case 0:
                task_id = task.task_id; // if (repeat >= 0) return true

                _context5.next = 3;
                return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* gatePost */ "m"])('api/mp/handleReportInfoByType', {
                  // type: 4,
                  // data: { task_id }
                  task_id: task_id
                }, 'task').catch(function () {});

              case 3:
                res = _context5.sent;

                if (!(res && res.data)) {
                  _context5.next = 28;
                  break;
                }

                _context5.t0 = res.data.status;
                _context5.next = _context5.t0 === 0 ? 8 : _context5.t0 === 1 ? 9 : _context5.t0 === 2 ? 12 : _context5.t0 === 3 ? 20 : 28;
                break;

              case 8:
                return _context5.abrupt("return", true);

              case 9:
                task.isDelete = true;
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u4EFB\u52A1\u88AB\u5220\u9664\u6216\u5DF2\u8FC7\u671F,task_id:".concat(task.task_id, " \u5E97\u94FA\uFF1A").concat(task.platform_store_id));
                return _context5.abrupt("return", false);

              case 12:
                task.error_time = this.retryConfig.maxRetryCount;
                task.run_status = 4;
                task.status = 17;
                msg = '任务已失效';
                _context5.next = 18;
                return MultiPlatformTaskV2.uploadTask({
                  code: 1,
                  msg: msg
                }, task);

              case 18:
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u4EFB\u52A1\u5DF2\u5931\u6548,task_id:".concat(task.task_id, " \u5E97\u94FA\uFF1A").concat(task.platform_store_id));
                return _context5.abrupt("return", false);

              case 20:
                if (!(task.error_time > 0)) {
                  _context5.next = 24;
                  break;
                }

                return _context5.abrupt("return", true);

              case 24:
                task.error_time = this.retryConfig.maxRetryCount;
                task.msg = '任务已被其他插件执行';
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u4EFB\u52A1\u5DF2\u88AB\u5176\u4ED6\u63D2\u4EF6\u6267\u884C,task_id:".concat(task.task_id, " \u5E97\u94FA\uFF1A").concat(task.platform_store_id));
                return _context5.abrupt("return", false);

              case 28:
                task.error_time++;
                return _context5.abrupt("return", false);

              case 30:
              case "end":
                return _context5.stop();
            }
          }
        }, _callee5, this);
      }));

      function canRunTask(_x3) {
        return _canRunTask.apply(this, arguments);
      }

      return canRunTask;
    }()
    /**
     * @description 检查分组是否有可执行任务
     * @param {string} groupKey 分组key
     * @returns {boolean} 是否有可执行任务
     */

  }, {
    key: "hasExecutableInGroup",
    value: function hasExecutableInGroup(groupKey) {
      var _this6 = this;

      var group = this.taskGroups[groupKey];
      if (!group || !group.tasks) return false;
      return group.tasks.some(function (task) {
        return _this6.isTaskExecutable(task);
      });
    }
    /**
     * @description 检查是否还有可执行任务
     * @returns {boolean} 是否有可执行任务
     */

  }, {
    key: "hasExecutable",
    value: function () {
      var _hasExecutable = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
        var _iterator2, _step2, key;

        return _regeneratorRuntime().wrap(function _callee6$(_context6) {
          while (1) {
            switch (_context6.prev = _context6.next) {
              case 0:
                _context6.next = 2;
                return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* executable */ "i"])();

              case 2:
                if (_context6.sent) {
                  _context6.next = 4;
                  break;
                }

                return _context6.abrupt("return", false);

              case 4:
                _iterator2 = _createForOfIteratorHelper(this.orderedKeys);
                _context6.prev = 5;

                _iterator2.s();

              case 7:
                if ((_step2 = _iterator2.n()).done) {
                  _context6.next = 18;
                  break;
                }

                key = _step2.value;
                _context6.t0 = this.hasExecutableInGroup(key);

                if (!_context6.t0) {
                  _context6.next = 14;
                  break;
                }

                _context6.next = 13;
                return this.discontinue();

              case 13:
                _context6.t0 = !_context6.sent;

              case 14:
                if (!_context6.t0) {
                  _context6.next = 16;
                  break;
                }

                return _context6.abrupt("return", true);

              case 16:
                _context6.next = 7;
                break;

              case 18:
                _context6.next = 23;
                break;

              case 20:
                _context6.prev = 20;
                _context6.t1 = _context6["catch"](5);

                _iterator2.e(_context6.t1);

              case 23:
                _context6.prev = 23;

                _iterator2.f();

                return _context6.finish(23);

              case 26:
                return _context6.abrupt("return", false);

              case 27:
              case "end":
                return _context6.stop();
            }
          }
        }, _callee6, this, [[5, 20, 23, 26]]);
      }));

      function hasExecutable() {
        return _hasExecutable.apply(this, arguments);
      }

      return hasExecutable;
    }() // 初始化指针位置

  }, {
    key: "initPointer",
    value: function initPointer() {
      if (!this.currentGroupPointer && this.orderedKeys.length > 0) {
        this.currentGroupPointer = this.orderedKeys[0];
        this.currentTaskPointer = 0;
      }
    }
    /**
     * @description 任务调度核心方法（指针式调度）
     */

  }, {
    key: "taskSchedule",
    value: function () {
      var _taskSchedule = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
        var curStatus, executed, nextTask, foundNext;
        return _regeneratorRuntime().wrap(function _callee7$(_context7) {
          while (1) {
            switch (_context7.prev = _context7.next) {
              case 0:
                _context7.prev = 0;
                curStatus = this.multiPlatformTaskStatus();

                if (!curStatus) {
                  _context7.next = 5;
                  break;
                }

                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u5F53\u524D\u6B63\u5728\u6267\u884C".concat(curStatus));
                return _context7.abrupt("return");

              case 5:
                // 设置执行状态
                this.multiPlatformTaskStatus(999);
                this.isExecuting = true; // 初始化指针位置

                this.initPointer(); // 指针式执行任务

              case 8:
                _context7.next = 10;
                return this.hasExecutable();

              case 10:
                if (!_context7.sent) {
                  _context7.next = 34;
                  break;
                }

                _context7.next = 13;
                return this.executeCurrentTask();

              case 13:
                executed = _context7.sent;

                if (!executed) {
                  _context7.next = 20;
                  break;
                }

                // 任务执行成功，移动到下一个任务
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u4EFB\u52A1\u6267\u884C\u5B8C\u6BD5\uFF0C\u79FB\u52A8\u5230\u4E0B\u4E00\u4E2A\u4EFB\u52A1");
                nextTask = this.moveToNextTask();

                if (!nextTask) {
                  _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u672A\u627E\u5230\u5F53\u524D\u7EC4\uFF1A".concat(this.currentGroupPointer, "\u7684\u4E0B\u4E00\u4E2A\u53EF\u6267\u884C\u4EFB\u52A1"));
                }

                _context7.next = 26;
                break;

              case 20:
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u5F53\u524D\u4F4D\u7F6E\u6CA1\u6709\u53EF\u6267\u884C\u4EFB\u52A1\uFF0C\u5C1D\u8BD5\u627E\u5230\u4E0B\u4E00\u4E2A\u53EF\u6267\u884C\u4EFB\u52A1"); // 当前位置没有可执行任务，尝试找到下一个可执行任务

                foundNext = this.findNextExecutableTask();

                if (foundNext) {
                  _context7.next = 26;
                  break;
                }

                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog('本轮已没有更多可执行任务，进行下一轮');
                this.checkAndStartNewRound();
                return _context7.abrupt("break", 34);

              case 26:
                _context7.next = 28;
                return this.discontinue();

              case 28:
                if (!_context7.sent) {
                  _context7.next = 32;
                  break;
                }

                this.isExecuting = false;
                this.multiPlatformTaskStatus('idle');
                return _context7.abrupt("return");

              case 32:
                _context7.next = 8;
                break;

              case 34:
                // 切换空闲状态
                this.isExecuting = false;
                this.multiPlatformTaskStatus('idle');
                Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* setBadge */ "G"])(10);
                this.clearTaskList(); // 检查是否还有可执行任务

                _context7.next = 40;
                return this.hasExecutable();

              case 40:
                if (!_context7.sent) {
                  _context7.next = 44;
                  break;
                }

                this.taskSchedule();
                _context7.next = 45;
                break;

              case 44:
                // 无可执行任务时评估重试定时器
                this.scheduleRetryTimer();

              case 45:
                _context7.next = 53;
                break;

              case 47:
                _context7.prev = 47;
                _context7.t0 = _context7["catch"](0);
                this.isExecuting = false;
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].report("taskSchedule\u6267\u884C\u51FA\u9519".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context7.t0)), 'error');
                this.multiPlatformTaskStatus('idle'); // 异常情况下也要设置重试定时器，确保任务调度能够恢复

                this.scheduleRetryTimer();

              case 53:
              case "end":
                return _context7.stop();
            }
          }
        }, _callee7, this, [[0, 47]]);
      }));

      function taskSchedule() {
        return _taskSchedule.apply(this, arguments);
      }

      return taskSchedule;
    }()
    /**
     * @description 执行当前指针指向的任务
     * @returns {boolean} 是否执行了任务
     */

  }, {
    key: "executeCurrentTask",
    value: function () {
      var _executeCurrentTask = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {
        var group, task;
        return _regeneratorRuntime().wrap(function _callee8$(_context8) {
          while (1) {
            switch (_context8.prev = _context8.next) {
              case 0:
                if (this.currentGroupPointer) {
                  _context8.next = 2;
                  break;
                }

                return _context8.abrupt("return", false);

              case 2:
                group = this.taskGroups[this.currentGroupPointer];

                if (!(!group || !group.tasks || this.currentTaskPointer >= group.tasks.length)) {
                  _context8.next = 5;
                  break;
                }

                return _context8.abrupt("return", false);

              case 5:
                task = group.tasks[this.currentTaskPointer]; // 检查任务是否可执行

                _context8.t1 = !this.isTaskExecutable(task);

                if (_context8.t1) {
                  _context8.next = 11;
                  break;
                }

                _context8.next = 10;
                return this.discontinue();

              case 10:
                _context8.t1 = _context8.sent;

              case 11:
                _context8.t0 = _context8.t1;

                if (_context8.t0) {
                  _context8.next = 16;
                  break;
                }

                _context8.next = 15;
                return this.canRunTask(task);

              case 15:
                _context8.t0 = !_context8.sent;

              case 16:
                if (!_context8.t0) {
                  _context8.next = 18;
                  break;
                }

                return _context8.abrupt("return", false);

              case 18:
                if (!this.isTaskExecutedInCurrentRound(this.currentGroupPointer, task.task_id)) {
                  _context8.next = 20;
                  break;
                }

                return _context8.abrupt("return", false);

              case 20:
                // 标记任务在当前轮次已执行
                this.markTaskExecutedInRound(this.currentGroupPointer, task.task_id); // 执行任务

                this.currentRunningTaskId = task.task_id;
                _context8.next = 24;
                return this.executeTask(task);

              case 24:
                return _context8.abrupt("return", true);

              case 25:
              case "end":
                return _context8.stop();
            }
          }
        }, _callee8, this);
      }));

      function executeCurrentTask() {
        return _executeCurrentTask.apply(this, arguments);
      }

      return executeCurrentTask;
    }()
    /**
     * @description 查找当前分组优先级最高的一条未在本轮执行过的任务指针（优先级已按顺序排列）
     */

  }, {
    key: "findHighestPriorityTaskInGroup",
    value: function findHighestPriorityTaskInGroup(curGroup) {
      var _this7 = this;

      var group = this.taskGroups[curGroup];
      if (!group || !group.tasks) return -1;
      return group.tasks.findIndex(function (task) {
        return _this7.isTaskExecutable(task) && !_this7.isTaskExecutedInCurrentRound(curGroup, task.task_id);
      });
    }
    /**
     * @description 移动指针到下一个任务
     */

  }, {
    key: "moveToNextTask",
    value: function moveToNextTask() {
      if (!this.currentGroupPointer) {
        this.initPointer();
        return false;
      }

      var group = this.taskGroups[this.currentGroupPointer];

      if (!group || !group.tasks) {
        _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("[\u5F53\u524D\u7EC4]\u6CA1\u6709\u4EFB\u52A1\uFF0C\u79FB\u52A8\u5230\u4E0B\u4E00\u4E2A\u5206\u7EC4\uFF1A".concat(this.currentGroupPointer));
        this.moveToNextGroup();
        return true;
      } // 查找当前组还未在本轮次执行的任务


      var taskIndex = this.findHighestPriorityTaskInGroup(this.currentGroupPointer);

      if (taskIndex === -1) {
        _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("[\u5F53\u524D\u7EC4]\u6CA1\u6709\u53EF\u6267\u884C\u4EFB\u52A1\uFF0C\u51C6\u5907\u79FB\u52A8\u5230\u4E0B\u4E00\u4E2A\u5206\u7EC4");
        this.moveToNextGroup();
        return true;
      }

      this.currentTaskPointer = taskIndex;
      _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u79FB\u52A8\u5230\u4E0B\u4E00\u4E2A\u4EFB\u52A1\uFF1A".concat(group.tasks[taskIndex].task_id, " \u5E97\u94FA\uFF1A").concat(this.currentGroupPointer));
      return true;
    }
    /**
     * @description 移动指针到下一个分组
     */

  }, {
    key: "moveToNextGroup",
    value: function moveToNextGroup() {
      var currentIndex = this.orderedKeys.indexOf(this.currentGroupPointer);

      if (currentIndex === -1 || currentIndex >= this.orderedKeys.length - 1) {
        // 已经是最后一个分组，检查是否需要开始新轮次
        this.checkAndStartNewRound();
      } else {
        // 移动到下一个分组
        this.currentGroupPointer = this.orderedKeys[currentIndex + 1];
        this.currentTaskPointer = 0;
      }
    }
    /**
     * @description 检查并开始新轮次
     */

  }, {
    key: "checkAndStartNewRound",
    value: function checkAndStartNewRound() {
      var _this8 = this;

      // 检查是否所有分组都完成了当前轮次
      var allGroupsComplete = this.orderedKeys.every(function (key) {
        return _this8.isGroupRoundComplete(key);
      });

      if (allGroupsComplete) {
        // 开始新轮次
        _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog('所有分组都完成了当前轮次，开始新轮次');
        this.startNewExecutionRound();
      } // 重置到第一个分组


      this.currentGroupPointer = this.orderedKeys.length > 0 ? this.orderedKeys[0] : null;
      this.currentTaskPointer = 0;
    }
    /**
     * @description 查找下一个可执行任务
     * @returns {boolean} 是否找到可执行任务
     */

  }, {
    key: "findNextExecutableTask",
    value: function findNextExecutableTask() {
      console.log("\n      \u5F00\u59CB\u67E5\u627E\u4E0B\u4E00\u4E2A\u53EF\u6267\u884C\u4EFB\u52A1\n      \u5F53\u524D\u6240\u5728\u7EC4\uFF1A".concat(this.currentGroupPointer, "\n      \u6267\u884C\u987A\u5E8F\uFF1A\n      "), this.orderedKeys, '当前任务组列表：', this.taskGroups);

      if (!this.currentGroupPointer || this.orderedKeys.length === 0) {
        return false;
      } // 查找当前组还未在本轮次执行的任务


      var taskIndex = this.findHighestPriorityTaskInGroup(this.currentGroupPointer);

      if (taskIndex > -1) {
        this.currentTaskPointer = taskIndex;
        var task = this.taskGroups[this.currentGroupPointer].tasks[this.currentTaskPointer];
        _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("[\u5F53\u524D\u7EC4]\u627E\u5230\u53EF\u6267\u884C\u4EFB\u52A1\uFF1A".concat(task.task_id, " \u5E97\u94FA\uFF1A").concat(this.currentGroupPointer));
        return true;
      } // 从开头查找，直到找到可执行任务


      for (var groupIndex = 0; groupIndex < this.orderedKeys.length; groupIndex++) {
        var groupKey = this.orderedKeys[groupIndex]; // 跳过当前组

        if (this.currentGroupPointer === groupKey) {
          continue;
        }

        var group = this.taskGroups[groupKey];
        if (!group || !group.tasks) continue;

        for (var _taskIndex = 0; _taskIndex < group.tasks.length; _taskIndex++) {
          var _task = group.tasks[_taskIndex];

          if (this.isTaskExecutable(_task) && !this.isTaskExecutedInCurrentRound(groupKey, _task.task_id)) {
            // 找到可执行任务，更新指针
            this.currentGroupPointer = groupKey;
            this.currentTaskPointer = _taskIndex;
            _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("[\u5F53\u524D\u8F6E\u6B21]\u627E\u5230\u53EF\u6267\u884C\u4EFB\u52A1\uFF1A".concat(_task.task_id, " \u5E97\u94FA\uFF1A").concat(groupKey));
            return true;
          }
        }
      }

      return false; // 没有找到可执行任务
    }
    /**
     * @description 执行单个任务
     * @param {Object} task 任务对象
     * @param {string} groupKey 分组key
     * @param {number} taskIndex 任务索引
     */

  }, {
    key: "executeTask",
    value: function () {
      var _executeTask = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9(task) {
        var _multiPlatform$taskTy, taskName, res, taskHandler, errorCode, _yield$multiPlatformO, onlineSiteStatus, mall, msg, changeSiteRes;

        return _regeneratorRuntime().wrap(function _callee9$(_context9) {
          while (1) {
            switch (_context9.prev = _context9.next) {
              case 0:
                _context9.prev = 0;
                taskName = ((_multiPlatform$taskTy = _index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].taskTypesMap[task.type_id]) === null || _multiPlatform$taskTy === void 0 ? void 0 : _multiPlatform$taskTy.taskName) || task.type_id;
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u5F00\u59CB\u6267\u884C\u4EFB\u52A1\uFF0C\u5F53\u524D\u6240\u5728\u7EC4\uFF1A".concat(this.currentGroupPointer));
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("\u5F53\u524D\u6267\u884C\u4EFB\u52A1".concat(taskName, "\n        --task_id:").concat(task.task_id, "\n        --type_id:").concat(task.type_id, "\n        --platform_store_id:").concat(task.platform_store_id, "\n        --report_date_month:").concat(task.report_date_month, "\n        ")); // 设置任务状态

                this.multiPlatformTaskStatus(task.type_id);
                task.isRun = true;

                if (task.status !== 6) {
                  task.status = 0;
                }

                !task.startTime && (task.startTime = Date.now());
                console.time("".concat(taskName, "\u8017\u65F6")); // 延时执行

                _context9.next = 11;
                return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* delayed */ "h"])(Math.ceil(Math.random() * this.sleepTime));

              case 11:
                taskHandler = _taskType__WEBPACK_IMPORTED_MODULE_5__[/* multiTskHandleMap */ "b"][task.type_id];

                if (!(!taskHandler || !taskHandler.handle)) {
                  _context9.next = 17;
                  break;
                }

                task.msg = '未找到任务处理器';
                task.isDelete = true;
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].report(task.msg, 'error', task);
                return _context9.abrupt("return");

              case 17:
                errorCode = task.repeat > 0 ? 4 : 1; // 检查站点状态并执行任务

                _context9.next = 20;
                return Object(_index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatformOnlineSite */ "g"])(task);

              case 20:
                _yield$multiPlatformO = _context9.sent;
                onlineSiteStatus = _yield$multiPlatformO.onlineSiteStatus;
                mall = _yield$multiPlatformO.mall;
                msg = _yield$multiPlatformO.msg;

                if (!(onlineSiteStatus === 1)) {
                  _context9.next = 38;
                  break;
                }

                _context9.next = 27;
                return Object(_index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatformChangeSite */ "b"])(task);

              case 27:
                changeSiteRes = _context9.sent;

                if (!changeSiteRes) {
                  _context9.next = 32;
                  break;
                }

                _context9.next = 31;
                return _taskType__WEBPACK_IMPORTED_MODULE_5__[/* cores */ "a"][taskHandler.handle](task);

              case 31:
                res = _context9.sent;

              case 32:
                if (!(typeof changeSiteRes === 'number')) {
                  _context9.next = 35;
                  break;
                }

                _context9.next = 35;
                return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* removeDeclarativeNetRequestRules */ "D"])([changeSiteRes]);

              case 35:
                res ? res.code !== 0 && ++task.error_time : task.isDelete = true;
                _context9.next = 39;
                break;

              case 38:
                if (onlineSiteStatus === 2) {
                  // 站点离线
                  task.error_time = this.retryConfig.maxRetryCount;
                  task.status = 11;
                  task.msg = "\u5E97\u94FA\u79BB\u7EBF\uFF0C\u8BF7\u767B\u5F55".concat(_index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].platformCode, "\u5356\u5BB6\u4E2D\u5FC3");
                  res = {
                    code: errorCode,
                    msg: task.msg,
                    result: null
                  };
                } else if (onlineSiteStatus === 3) {
                  // 店铺被切换
                  task.error_time = this.retryConfig.maxRetryCount;
                  task.status = 11;
                  task.msg = "\u5E97\u94FA\u5DF2\u88AB\u5207\u6362,\u5F53\u524D\u5E97\u94FA:".concat(mall);
                  res = {
                    code: errorCode,
                    msg: task.msg,
                    result: null
                  };
                } else {
                  // 其他异常
                  task.error_time = this.retryConfig.maxRetryCount;
                  task.status = 16;
                  task.msg = msg;
                  res = {
                    code: errorCode,
                    msg: msg,
                    result: null
                  };
                }

              case 39:
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog('获取结果', JSON.stringify(res)); // 上传结果

                _context9.t0 = res;

                if (!_context9.t0) {
                  _context9.next = 45;
                  break;
                }

                _context9.next = 44;
                return this.discontinue();

              case 44:
                _context9.t0 = !_context9.sent;

              case 45:
                if (!_context9.t0) {
                  _context9.next = 48;
                  break;
                }

                _context9.next = 48;
                return MultiPlatformTaskV2.uploadTask(res, task);

              case 48:
                // 记录结束时间
                task.endTime = Date.now();
                console.timeEnd("".concat(taskName, "\u8017\u65F6"));
                _context9.next = 57;
                break;

              case 52:
                _context9.prev = 52;
                _context9.t1 = _context9["catch"](0);
                task.error_time++;
                task.endTime = Date.now();
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].report("\n        \u4EFB\u52A1\u6267\u884C\u51FA\u9519: ".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context9.t1), "\n        --type_id:").concat(task.type_id, "\n        --task_id:").concat(task.task_id, "\n        "), 'error');

              case 57:
              case "end":
                return _context9.stop();
            }
          }
        }, _callee9, this, [[0, 52]]);
      }));

      function executeTask(_x4) {
        return _executeTask.apply(this, arguments);
      }

      return executeTask;
    }()
    /**
     * @description 执行repeat任务
     */

  }, {
    key: "runRepeat",
    value: function () {
      var _runRepeat = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {
        var repeatTaskList, typeId, taskList, _iterator3, _step3, task;

        return _regeneratorRuntime().wrap(function _callee10$(_context10) {
          while (1) {
            switch (_context10.prev = _context10.next) {
              case 0:
                try {
                  repeatTaskList = [];

                  for (typeId in this.repeatMap) {
                    taskList = this.repeatMap[typeId] || [];
                    _iterator3 = _createForOfIteratorHelper(taskList);

                    try {
                      for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
                        task = _step3.value;
                        task.count++;

                        if (task.repeat <= _config__WEBPACK_IMPORTED_MODULE_3__[/* POLLING_TIME */ "c"] * task.count) {
                          _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("[".concat(moment__WEBPACK_IMPORTED_MODULE_0___default()().format('YYYY-MM-DD HH:mm:ss'), "]\u5F00\u59CB\u6267\u884C\u91CD\u590D\u4EFB\u52A1\uFF0Ctype_id\uFF1A").concat(task.type_id, "\uFF0Ctask_id\uFF1A").concat(task.task_id));
                          task.count = 0;
                          repeatTaskList.push(task);
                        }
                      }
                    } catch (err) {
                      _iterator3.e(err);
                    } finally {
                      _iterator3.f();
                    }
                  }

                  this.initTaskList(repeatTaskList);
                } catch (e) {
                  _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].report("\u6267\u884Crepeat\u4EFB\u52A1\u9519\u8BEF----".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(e)), 'error');
                }

              case 1:
              case "end":
                return _context10.stop();
            }
          }
        }, _callee10, this);
      }));

      function runRepeat() {
        return _runRepeat.apply(this, arguments);
      }

      return runRepeat;
    }()
    /**
     * @description 清理已完成的任务
     */

  }, {
    key: "clearTaskList",
    value: function clearTaskList() {
      var _this9 = this;

      _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog('开始清理任务、恢复指针'); // 清理每个分组中的已完成任务

      var _loop3 = function _loop3() {
        var _Object$entries3$_i = _slicedToArray(_Object$entries3[_i5], 2),
            key = _Object$entries3$_i[0],
            group = _Object$entries3$_i[1];

        var isExistMap = {};
        group.tasks = group.tasks.filter(function (task) {
          // 只留一条已执行过的覆盖任务
          if (!_this9.notCoverTypes.includes(+task.type_id) && isExistMap[task.type_id]) return false;
          isExistMap[task.type_id] = true;
          return !task.isDelete;
        });

        if (group.tasks.length === 0) {
          delete _this9.taskGroups[key];
          _this9.orderedKeys = _this9.orderedKeys.filter(function (k) {
            return k !== key;
          });
        }
      };

      for (var _i5 = 0, _Object$entries3 = Object.entries(this.taskGroups); _i5 < _Object$entries3.length; _i5++) {
        _loop3();
      } // 恢复指针


      this.fixPointersAfterCleanup();
    }
  }, {
    key: "fixPointersAfterCleanup",
    value: function fixPointersAfterCleanup() {
      this.currentGroupPointer = this.orderedKeys.length > 0 ? this.orderedKeys[0] : null;
      this.currentTaskPointer = 0;
      this.currentRunningTaskId = null;
    }
    /**
     * @description 获取/设置任务执行状态
     * @param {*} type 任务类型
     * @returns {string|boolean} 状态名称或设置结果
     */

  }, {
    key: "multiPlatformTaskStatus",
    value: function multiPlatformTaskStatus(type) {
      if (type) {
        this.taskStatus = type;
      } else {
        var _multiPlatform$taskTy2;

        return this.taskStatus === 'idle' ? false : ((_multiPlatform$taskTy2 = _index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].taskTypesMap[this.taskStatus]) === null || _multiPlatform$taskTy2 === void 0 ? void 0 : _multiPlatform$taskTy2.taskName) || this.taskStatus;
      }
    }
    /**
     * @description 检查是否应该暂停
     * @returns {boolean} 是否暂停
     */

  }, {
    key: "discontinue",
    value: function () {
      var _discontinue = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {
        return _regeneratorRuntime().wrap(function _callee11$(_context11) {
          while (1) {
            switch (_context11.prev = _context11.next) {
              case 0:
                _context11.next = 2;
                return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* suspend */ "J"])();

              case 2:
                if (!_context11.sent) {
                  _context11.next = 5;
                  break;
                }

                this.multiPlatformTaskStatus('idle');
                return _context11.abrupt("return", true);

              case 5:
                return _context11.abrupt("return", false);

              case 6:
              case "end":
                return _context11.stop();
            }
          }
        }, _callee11, this);
      }));

      function discontinue() {
        return _discontinue.apply(this, arguments);
      }

      return discontinue;
    }()
    /**
     * @description 销毁实例
     */

  }, {
    key: "destroyed",
    value: function destroyed() {
      this.taskGroups = {};
      this.orderedKeys = [];
      this.repeatMap = {};
      this.roundExecutionRecord = {};
      this.multiPlatformTaskStatus('idle');
      this.clearRetryTimer();
    }
  }], [{
    key: "generateStoreMonthKey",
    value:
    /**
     * @description 生成店铺+月份组合key
     * @param {string} storeId 店铺ID
     * @param {string} monthId 月份
     * @returns {string} 组合key
     */
    function generateStoreMonthKey(storeId, monthId) {
      return "".concat(storeId, "_").concat(monthId || 'default');
    }
    /**
     * @description 解析店铺+月份组合key
     * @param {string} key 组合key
     * @returns {object} {storeId, monthId}
     */

  }, {
    key: "parseStoreMonthKey",
    value: function parseStoreMonthKey(key) {
      var _key$split = key.split('_'),
          _key$split2 = _slicedToArray(_key$split, 2),
          storeId = _key$split2[0],
          monthId = _key$split2[1];

      return {
        storeId: storeId,
        monthId: monthId === 'default' ? null : monthId
      };
    }
    /**
     * @description 上传任务执行结果到服务器
     * @param {Object} params 上传参数
     * @param {Object} task 任务对象
     * @param {number} count 重试次数
     */

  }, {
    key: "uploadTask",
    value: function () {
      var _uploadTask = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee12(params, task) {
        var count,
            res,
            _args12 = arguments;
        return _regeneratorRuntime().wrap(function _callee12$(_context12) {
          while (1) {
            switch (_context12.prev = _context12.next) {
              case 0:
                count = _args12.length > 2 && _args12[2] !== undefined ? _args12[2] : 0;
                _context12.next = 3;
                return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* gatePost */ "m"])("api/mp/reportTask", _objectSpread({
                  task_id: task.task_id,
                  type_id: task.type_id,
                  platform_store_id: task.platform_store_id,
                  taskIdList: task.taskIdList,
                  platform: _index__WEBPACK_IMPORTED_MODULE_4__[/* multiPlatform */ "a"].platformCode
                }, params), 'task').catch(function (e) {
                  _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog('上传错误：', Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(e));
                });

              case 3:
                res = _context12.sent;
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog('上传结果：', JSON.stringify(res));

                if (!(res && res.code === 0)) {
                  _context12.next = 10;
                  break;
                }

                if (params.code === 0) {
                  // 上传成功，修改状态
                  task.status = 1;
                  task.uploadTime = moment__WEBPACK_IMPORTED_MODULE_0___default()().format('YYYY-MM-DD HH:mm:ss');
                }

                return _context12.abrupt("return", true);

              case 10:
                if (!(res && res.code === 3002)) {
                  _context12.next = 16;
                  break;
                }

                // 任务不存在或已删除，直接删掉任务
                _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("task_id:".concat(task.task_id, " - ").concat(res.msg));
                task.isDelete = true;
                task.msg = res.msg;
                _context12.next = 25;
                break;

              case 16:
                if (!(count < 2)) {
                  _context12.next = 24;
                  break;
                }

                _context12.next = 19;
                return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* delayed */ "h"])(5 * 1000);

              case 19:
                _context12.next = 21;
                return MultiPlatformTaskV2.uploadTask(params, task, ++count);

              case 21:
                return _context12.abrupt("return", _context12.sent);

              case 24:
                if (params.code === 0) {
                  // 上传失败，修改状态
                  task.status = 7;
                  task.error_time++;
                  task.msg = '上传失败';
                  task.resCache = params;
                }

              case 25:
              case "end":
                return _context12.stop();
            }
          }
        }, _callee12);
      }));

      function uploadTask(_x5, _x6) {
        return _uploadTask.apply(this, arguments);
      }

      return uploadTask;
    }()
  }]);

  return MultiPlatformTaskV2;
}();

/* harmony default export */ __webpack_exports__["a"] = (MultiPlatformTaskV2);

/***/ }),

/***/ "6044":
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__("0b07");

/* Built-in method references that are verified to be native. */
var nativeCreate = getNative(Object, 'create');

module.exports = nativeCreate;


/***/ }),

/***/ "60ed":
/***/ (function(module, exports, __webpack_require__) {

var baseGetTag = __webpack_require__("3729"),
    getPrototype = __webpack_require__("2dcb"),
    isObjectLike = __webpack_require__("1310");

/** `Object#toString` result references. */
var objectTag = '[object Object]';

/** Used for built-in method references. */
var funcProto = Function.prototype,
    objectProto = Object.prototype;

/** Used to resolve the decompiled source of functions. */
var funcToString = funcProto.toString;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/** Used to infer the `Object` constructor. */
var objectCtorString = funcToString.call(Object);

/**
 * Checks if `value` is a plain object, that is, an object created by the
 * `Object` constructor or one with a `[[Prototype]]` of `null`.
 *
 * @static
 * @memberOf _
 * @since 0.8.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
 * @example
 *
 * function Foo() {
 *   this.a = 1;
 * }
 *
 * _.isPlainObject(new Foo);
 * // => false
 *
 * _.isPlainObject([1, 2, 3]);
 * // => false
 *
 * _.isPlainObject({ 'x': 0, 'y': 0 });
 * // => true
 *
 * _.isPlainObject(Object.create(null));
 * // => true
 */
function isPlainObject(value) {
  if (!isObjectLike(value) || baseGetTag(value) != objectTag) {
    return false;
  }
  var proto = getPrototype(value);
  if (proto === null) {
    return true;
  }
  var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;
  return typeof Ctor == 'function' && Ctor instanceof Ctor &&
    funcToString.call(Ctor) == objectCtorString;
}

module.exports = isPlainObject;


/***/ }),

/***/ "6286":
/***/ (function(module, exports, __webpack_require__) {

var baseCreate = __webpack_require__("7530"),
    baseLodash = __webpack_require__("46b4");

/** Used as references for the maximum length and index of an array. */
var MAX_ARRAY_LENGTH = 4294967295;

/**
 * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation.
 *
 * @private
 * @constructor
 * @param {*} value The value to wrap.
 */
function LazyWrapper(value) {
  this.__wrapped__ = value;
  this.__actions__ = [];
  this.__dir__ = 1;
  this.__filtered__ = false;
  this.__iteratees__ = [];
  this.__takeCount__ = MAX_ARRAY_LENGTH;
  this.__views__ = [];
}

// Ensure `LazyWrapper` is an instance of `baseLodash`.
LazyWrapper.prototype = baseCreate(baseLodash.prototype);
LazyWrapper.prototype.constructor = LazyWrapper;

module.exports = LazyWrapper;


/***/ }),

/***/ "62e4":
/***/ (function(module, exports) {

module.exports = function(module) {
	if (!module.webpackPolyfill) {
		module.deprecate = function() {};
		module.paths = [];
		// module.parent = undefined by default
		if (!module.children) module.children = [];
		Object.defineProperty(module, "loaded", {
			enumerable: true,
			get: function() {
				return module.l;
			}
		});
		Object.defineProperty(module, "id", {
			enumerable: true,
			get: function() {
				return module.i;
			}
		});
		module.webpackPolyfill = 1;
	}
	return module;
};


/***/ }),

/***/ "6428":
/***/ (function(module, exports, __webpack_require__) {

var toNumber = __webpack_require__("b4b0");

/** Used as references for various `Number` constants. */
var INFINITY = 1 / 0,
    MAX_INTEGER = 1.7976931348623157e+308;

/**
 * Converts `value` to a finite number.
 *
 * @static
 * @memberOf _
 * @since 4.12.0
 * @category Lang
 * @param {*} value The value to convert.
 * @returns {number} Returns the converted number.
 * @example
 *
 * _.toFinite(3.2);
 * // => 3.2
 *
 * _.toFinite(Number.MIN_VALUE);
 * // => 5e-324
 *
 * _.toFinite(Infinity);
 * // => 1.7976931348623157e+308
 *
 * _.toFinite('3.2');
 * // => 3.2
 */
function toFinite(value) {
  if (!value) {
    return value === 0 ? value : 0;
  }
  value = toNumber(value);
  if (value === INFINITY || value === -INFINITY) {
    var sign = (value < 0 ? -1 : 1);
    return sign * MAX_INTEGER;
  }
  return value === value ? value : 0;
}

module.exports = toFinite;


/***/ }),

/***/ "642a":
/***/ (function(module, exports, __webpack_require__) {

var baseIsMatch = __webpack_require__("966f"),
    getMatchData = __webpack_require__("3bb4"),
    matchesStrictComparable = __webpack_require__("20ec");

/**
 * The base implementation of `_.matches` which doesn't clone `source`.
 *
 * @private
 * @param {Object} source The object of property values to match.
 * @returns {Function} Returns the new spec function.
 */
function baseMatches(source) {
  var matchData = getMatchData(source);
  if (matchData.length == 1 && matchData[0][2]) {
    return matchesStrictComparable(matchData[0][0], matchData[0][1]);
  }
  return function(object) {
    return object === source || baseIsMatch(object, source, matchData);
  };
}

module.exports = baseMatches;


/***/ }),

/***/ "656b":
/***/ (function(module, exports, __webpack_require__) {

var castPath = __webpack_require__("e2e4"),
    toKey = __webpack_require__("f4d6");

/**
 * The base implementation of `_.get` without support for default values.
 *
 * @private
 * @param {Object} object The object to query.
 * @param {Array|string} path The path of the property to get.
 * @returns {*} Returns the resolved value.
 */
function baseGet(object, path) {
  path = castPath(path, object);

  var index = 0,
      length = path.length;

  while (object != null && index < length) {
    object = object[toKey(path[index++])];
  }
  return (index && index == length) ? object : undefined;
}

module.exports = baseGet;


/***/ }),

/***/ "65cd":
/***/ (function(module, exports, __webpack_require__) {

var domEach = __webpack_require__("4a1c").domEach,
    _ = {
      pick: __webpack_require__("2593"),
    };

var toString = Object.prototype.toString;

/**
 * Set / Get css.
 *
 * @param {String|Object} prop
 * @param {String} val
 * @return {self}
 * @api public
 */

exports.css = function(prop, val) {
  if (arguments.length === 2 ||
    // When `prop` is a "plain" object
    (toString.call(prop) === '[object Object]')) {
    return domEach(this, function(idx, el) {
      setCss(el, prop, val, idx);
    });
  } else {
    return getCss(this[0], prop);
  }
};

/**
 * Set styles of all elements.
 *
 * @param {String|Object} prop
 * @param {String} val
 * @param {Number} idx - optional index within the selection
 * @return {self}
 * @api private
 */

function setCss(el, prop, val, idx) {
  if ('string' == typeof prop) {
    var styles = getCss(el);
    if (typeof val === 'function') {
      val = val.call(el, idx, styles[prop]);
    }

    if (val === '') {
      delete styles[prop];
    } else if (val != null) {
      styles[prop] = val;
    }

    el.attribs.style = stringify(styles);
  } else if ('object' == typeof prop) {
    Object.keys(prop).forEach(function(k){
      setCss(el, k, prop[k]);
    });
  }
}

/**
 * Get parsed styles of the first element.
 *
 * @param {String} prop
 * @return {Object}
 * @api private
 */

function getCss(el, prop) {
  var styles = parse(el.attribs.style);
  if (typeof prop === 'string') {
    return styles[prop];
  } else if (Array.isArray(prop)) {
    return _.pick(styles, prop);
  } else {
    return styles;
  }
}

/**
 * Stringify `obj` to styles.
 *
 * @param {Object} obj
 * @return {Object}
 * @api private
 */

function stringify(obj) {
  return Object.keys(obj || {})
    .reduce(function(str, prop){
      return str += ''
        + (str ? ' ' : '')
        + prop
        + ': '
        + obj[prop]
        + ';';
    }, '');
}

/**
 * Parse `styles`.
 *
 * @param {String} styles
 * @return {Object}
 * @api private
 */

function parse(styles) {
  styles = (styles || '').trim();

  if (!styles) return {};

  return styles
    .split(';')
    .reduce(function(obj, str){
      var n = str.indexOf(':');
      // skip if there is no :, or if it is the first/last character
      if (n < 1 || n === str.length-1) return obj;
      obj[str.slice(0,n).trim()] = str.slice(n+1).trim();
      return obj;
    }, {});
}


/***/ }),

/***/ "6747":
/***/ (function(module, exports) {

/**
 * Checks if `value` is classified as an `Array` object.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is an array, else `false`.
 * @example
 *
 * _.isArray([1, 2, 3]);
 * // => true
 *
 * _.isArray(document.body.children);
 * // => false
 *
 * _.isArray('abc');
 * // => false
 *
 * _.isArray(_.noop);
 * // => false
 */
var isArray = Array.isArray;

module.exports = isArray;


/***/ }),

/***/ "67ca":
/***/ (function(module, exports, __webpack_require__) {

var assocIndexOf = __webpack_require__("cb5a");

/**
 * Sets the list cache `key` to `value`.
 *
 * @private
 * @name set
 * @memberOf ListCache
 * @param {string} key The key of the value to set.
 * @param {*} value The value to set.
 * @returns {Object} Returns the list cache instance.
 */
function listCacheSet(key, value) {
  var data = this.__data__,
      index = assocIndexOf(data, key);

  if (index < 0) {
    ++this.size;
    data.push([key, value]);
  } else {
    data[index][1] = value;
  }
  return this;
}

module.exports = listCacheSet;


/***/ }),

/***/ "69d5":
/***/ (function(module, exports, __webpack_require__) {

var assocIndexOf = __webpack_require__("cb5a");

/** Used for built-in method references. */
var arrayProto = Array.prototype;

/** Built-in value references. */
var splice = arrayProto.splice;

/**
 * Removes `key` and its value from the list cache.
 *
 * @private
 * @name delete
 * @memberOf ListCache
 * @param {string} key The key of the value to remove.
 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
 */
function listCacheDelete(key) {
  var data = this.__data__,
      index = assocIndexOf(data, key);

  if (index < 0) {
    return false;
  }
  var lastIndex = data.length - 1;
  if (index == lastIndex) {
    data.pop();
  } else {
    splice.call(data, index, 1);
  }
  --this.size;
  return true;
}

module.exports = listCacheDelete;


/***/ }),

/***/ "6a0a":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ generateXBogus; });
__webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ generateXGnarly; });
__webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ getSigner; });

// UNUSED EXPORTS: signParams, signUrl

// EXTERNAL MODULE: ./src/utils/util.js
var util = __webpack_require__("ca00");

// CONCATENATED MODULE: ./src/platform/tiktok/xGnarly/signer.js
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }

function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }

function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }

function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }

/* eslint-disable */

/**
 * TikTok 签名服务（浏览器扩展版本）
 * 通过与 TikTok 页面通信来生成签名
 * 优先复用用户已打开的同源 Tab；否则在单一共享最小化窗口内按 origin 常驻多 Tab。
 */

/** 无签名活动超过此时长后关闭共享签名窗口（分钟） */

var SIGNER_IDLE_MINUTES = 10;
var SIGNER_IDLE_ALARM = 'AK_TikTok_Signer_Idle';
var SIGNER_SHARED_WINDOW_ID_KEY = 'tiktokSignerSharedWindowId';

function promisifyTabsGet(tabId) {
  return new Promise(function (resolve, reject) {
    chrome.tabs.get(tabId, function (tab) {
      if (chrome.runtime.lastError) {
        reject(new Error(chrome.runtime.lastError.message));
        return;
      }

      resolve(tab);
    });
  });
}

function promisifyWindowsGet(windowId) {
  return new Promise(function (resolve, reject) {
    chrome.windows.get(windowId, {}, function (win) {
      if (chrome.runtime.lastError) {
        reject(new Error(chrome.runtime.lastError.message));
        return;
      }

      resolve(win);
    });
  });
}

function promisifyTabsQuery(queryInfo) {
  return new Promise(function (resolve) {
    chrome.tabs.query(queryInfo, function (tabs) {
      return resolve(tabs || []);
    });
  });
}

function promisifyTabsCreate(createProperties) {
  return new Promise(function (resolve, reject) {
    chrome.tabs.create(createProperties, function (tab) {
      if (chrome.runtime.lastError) {
        reject(new Error(chrome.runtime.lastError.message));
        return;
      }

      resolve(tab);
    });
  });
}

function promisifyTabsRemove(tabIds) {
  return new Promise(function (resolve, reject) {
    chrome.tabs.remove(tabIds, function () {
      if (chrome.runtime.lastError) {
        reject(new Error(chrome.runtime.lastError.message));
        return;
      }

      resolve();
    });
  });
}

function promisifyWindowsCreate(createData) {
  return new Promise(function (resolve, reject) {
    chrome.windows.create(createData, function (win) {
      if (chrome.runtime.lastError) {
        reject(new Error(chrome.runtime.lastError.message));
        return;
      }

      resolve(win);
    });
  });
}

function promisifyWindowsUpdate(windowId, updateInfo) {
  return new Promise(function (resolve, reject) {
    chrome.windows.update(windowId, updateInfo, function (win) {
      if (chrome.runtime.lastError) {
        reject(new Error(chrome.runtime.lastError.message));
        return;
      }

      resolve(win);
    });
  });
}

function waitMs(ms) {
  return new Promise(function (resolve) {
    var name = "signerWait_".concat(Date.now(), "_").concat(Math.random().toString(36).slice(2, 8));
    util["b" /* alarms */].setTimeout(function () {
      return resolve();
    }, name, ms);
  });
}

var signer_Signer = /*#__PURE__*/function () {
  function Signer() {
    _classCallCheck(this, Signer);

    this.sharedWindowId = null;
    this.originHosts = new Map();
    this.originWarmPromises = new Map();
    this.tabChains = new Map();
    this.skipTabIds = new Set();
    this.currentOrigin = null;
    this.tiktokTabId = null;
    this._reqSeq = 0;
    this._boundOnTabRemoved = this._onTabRemoved.bind(this);
    this._boundOnWindowRemoved = this._onWindowRemoved.bind(this);
    chrome.tabs.onRemoved.addListener(this._boundOnTabRemoved);
    chrome.windows.onRemoved.addListener(this._boundOnWindowRemoved);
  }
  /**
   * 重置空闲计时：任意签名相关活动后调用，SIGNER_IDLE_MINUTES 后关闭共享窗口
   */


  _createClass(Signer, [{
    key: "scheduleIdleCloseSharedWindow",
    value: function scheduleIdleCloseSharedWindow() {
      var _this = this;

      var delayMs = SIGNER_IDLE_MINUTES * 60 * 1000;
      chrome.alarms.clear(SIGNER_IDLE_ALARM, function () {
        util["b" /* alarms */].setTimeout(function () {
          _this.closeSharedWindowOnly().catch(function () {});
        }, SIGNER_IDLE_ALARM, delayMs);
      });
    }
  }, {
    key: "getPersistedSharedWindowId",
    value: function () {
      var _getPersistedSharedWindowId = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
        var _yield$localStorage$g, windowId;

        return _regeneratorRuntime().wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                _context.next = 2;
                return util["y" /* localStorage */].getItem([SIGNER_SHARED_WINDOW_ID_KEY]);

              case 2:
                _yield$localStorage$g = _context.sent;
                windowId = _yield$localStorage$g[SIGNER_SHARED_WINDOW_ID_KEY];
                return _context.abrupt("return", typeof windowId === 'number' ? windowId : null);

              case 5:
              case "end":
                return _context.stop();
            }
          }
        }, _callee);
      }));

      function getPersistedSharedWindowId() {
        return _getPersistedSharedWindowId.apply(this, arguments);
      }

      return getPersistedSharedWindowId;
    }()
  }, {
    key: "persistSharedWindowId",
    value: function () {
      var _persistSharedWindowId = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(windowId) {
        return _regeneratorRuntime().wrap(function _callee2$(_context2) {
          while (1) {
            switch (_context2.prev = _context2.next) {
              case 0:
                if (!(typeof windowId !== 'number')) {
                  _context2.next = 2;
                  break;
                }

                return _context2.abrupt("return");

              case 2:
                _context2.next = 4;
                return util["y" /* localStorage */].setItem(_defineProperty({}, SIGNER_SHARED_WINDOW_ID_KEY, windowId));

              case 4:
              case "end":
                return _context2.stop();
            }
          }
        }, _callee2);
      }));

      function persistSharedWindowId(_x) {
        return _persistSharedWindowId.apply(this, arguments);
      }

      return persistSharedWindowId;
    }()
  }, {
    key: "clearPersistedSharedWindowId",
    value: function () {
      var _clearPersistedSharedWindowId = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
        return _regeneratorRuntime().wrap(function _callee3$(_context3) {
          while (1) {
            switch (_context3.prev = _context3.next) {
              case 0:
                _context3.next = 2;
                return util["y" /* localStorage */].removeItem([SIGNER_SHARED_WINDOW_ID_KEY]);

              case 2:
              case "end":
                return _context3.stop();
            }
          }
        }, _callee3);
      }));

      function clearPersistedSharedWindowId() {
        return _clearPersistedSharedWindowId.apply(this, arguments);
      }

      return clearPersistedSharedWindowId;
    }()
    /**
     * 仅关闭扩展创建的共享签名窗口，并清理其中 origin 缓存；不影响用户自有 Tab 的复用记录
     */

  }, {
    key: "closeSharedWindowOnly",
    value: function () {
      var _closeSharedWindowOnly = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
        var wid, _i, _arr, _arr$_i, origin, h;

        return _regeneratorRuntime().wrap(function _callee4$(_context4) {
          while (1) {
            switch (_context4.prev = _context4.next) {
              case 0:
                try {
                  chrome.alarms.clear(SIGNER_IDLE_ALARM, function () {});
                } catch (e) {
                  /* ignore */
                }

                if (!(this.sharedWindowId != null)) {
                  _context4.next = 5;
                  break;
                }

                _context4.t0 = this.sharedWindowId;
                _context4.next = 8;
                break;

              case 5:
                _context4.next = 7;
                return this.getPersistedSharedWindowId();

              case 7:
                _context4.t0 = _context4.sent;

              case 8:
                wid = _context4.t0;

                if (!(wid == null)) {
                  _context4.next = 11;
                  break;
                }

                return _context4.abrupt("return");

              case 11:
                this.sharedWindowId = null;
                _context4.next = 14;
                return this.clearPersistedSharedWindowId();

              case 14:
                for (_i = 0, _arr = _toConsumableArray(this.originHosts.entries()); _i < _arr.length; _i++) {
                  _arr$_i = _slicedToArray(_arr[_i], 2), origin = _arr$_i[0], h = _arr$_i[1];

                  if (h.source === 'shared-window-tab') {
                    this.originHosts.delete(origin);
                    this.tabChains.delete(h.tabId);
                  }
                }

                _context4.prev = 15;
                _context4.next = 18;
                return new Promise(function (resolve) {
                  chrome.windows.remove(wid, function () {
                    return resolve();
                  });
                });

              case 18:
                _context4.next = 22;
                break;

              case 20:
                _context4.prev = 20;
                _context4.t1 = _context4["catch"](15);

              case 22:
                console.log('[AK-Signer] Shared signer window closed (idle or lifecycle)');

              case 23:
              case "end":
                return _context4.stop();
            }
          }
        }, _callee4, this, [[15, 20]]);
      }));

      function closeSharedWindowOnly() {
        return _closeSharedWindowOnly.apply(this, arguments);
      }

      return closeSharedWindowOnly;
    }()
  }, {
    key: "_onTabRemoved",
    value: function _onTabRemoved(tabId) {
      for (var _i2 = 0, _arr2 = _toConsumableArray(this.originHosts.entries()); _i2 < _arr2.length; _i2++) {
        var _arr2$_i = _slicedToArray(_arr2[_i2], 2),
            origin = _arr2$_i[0],
            h = _arr2$_i[1];

        if (h.tabId === tabId) {
          this.originHosts.delete(origin);
        }
      }

      this.tabChains.delete(tabId);
    }
  }, {
    key: "_onWindowRemoved",
    value: function _onWindowRemoved(windowId) {
      if (windowId !== this.sharedWindowId) return;
      this.sharedWindowId = null;

      for (var _i3 = 0, _arr3 = _toConsumableArray(this.originHosts.entries()); _i3 < _arr3.length; _i3++) {
        var _arr3$_i = _slicedToArray(_arr3[_i3], 2),
            origin = _arr3$_i[0],
            h = _arr3$_i[1];

        if (h.source === 'shared-window-tab') {
          this.originHosts.delete(origin);
        }
      }
    }
    /**
     * 解析目标 URL 的 origin；无 URL 或非法时默认 TikTok 主站
     * @param {string|null|undefined} targetUrl
     * @returns {string}
     */

  }, {
    key: "getOrigin",
    value: function getOrigin(targetUrl) {
      if (!targetUrl) {
        return 'https://www.tiktok.com';
      }

      try {
        var origin = new URL(targetUrl).origin;

        if (!this.isAllowedSigningOrigin(origin)) {
          console.warn('[AK-Signer] Origin not allowed, fallback www.tiktok.com:', origin);
          return 'https://www.tiktok.com';
        }

        return origin;
      } catch (e) {
        console.warn('[AK-Signer] Invalid URL, fallback www.tiktok.com:', targetUrl);
        return 'https://www.tiktok.com';
      }
    }
  }, {
    key: "isAllowedSigningOrigin",
    value: function isAllowedSigningOrigin(origin) {
      try {
        var _URL = new URL(origin),
            hostname = _URL.hostname;

        return hostname.includes('tiktok.com') || hostname.includes('tiktokshopglobalselling.com');
      } catch (_unused) {
        return false;
      }
    }
    /**
     * 查找用户已打开的同源 Tab（不含扩展专用共享窗口内的 Tab）
     * @param {string} origin
     */

  }, {
    key: "findReusableUserTab",
    value: function () {
      var _findReusableUserTab = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(origin) {
        var _this2 = this;

        var tabs, matches, _iterator, _step, t;

        return _regeneratorRuntime().wrap(function _callee5$(_context5) {
          while (1) {
            switch (_context5.prev = _context5.next) {
              case 0:
                _context5.next = 2;
                return promisifyTabsQuery({});

              case 2:
                tabs = _context5.sent;
                matches = tabs.filter(function (t) {
                  if (!t.url || t.url.startsWith('chrome-extension:')) return false;

                  if (_this2.sharedWindowId != null && t.windowId === _this2.sharedWindowId) {
                    return false;
                  }

                  try {
                    return new URL(t.url).origin === origin;
                  } catch (_unused2) {
                    return false;
                  }
                });

                if (!(matches.length === 0)) {
                  _context5.next = 6;
                  break;
                }

                return _context5.abrupt("return", null);

              case 6:
                matches.sort(function (a, b) {
                  if (a.active && !b.active) return -1;
                  if (!a.active && b.active) return 1;
                  return (b.lastAccessed || 0) - (a.lastAccessed || 0);
                });
                _iterator = _createForOfIteratorHelper(matches);
                _context5.prev = 8;

                _iterator.s();

              case 10:
                if ((_step = _iterator.n()).done) {
                  _context5.next = 16;
                  break;
                }

                t = _step.value;

                if (this.skipTabIds.has(t.id)) {
                  _context5.next = 14;
                  break;
                }

                return _context5.abrupt("return", t);

              case 14:
                _context5.next = 10;
                break;

              case 16:
                _context5.next = 21;
                break;

              case 18:
                _context5.prev = 18;
                _context5.t0 = _context5["catch"](8);

                _iterator.e(_context5.t0);

              case 21:
                _context5.prev = 21;

                _iterator.f();

                return _context5.finish(21);

              case 24:
                return _context5.abrupt("return", null);

              case 25:
              case "end":
                return _context5.stop();
            }
          }
        }, _callee5, this, [[8, 18, 21, 24]]);
      }));

      function findReusableUserTab(_x2) {
        return _findReusableUserTab.apply(this, arguments);
      }

      return findReusableUserTab;
    }()
  }, {
    key: "ensureSharedWindow",
    value: function () {
      var _ensureSharedWindow = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(originForFirstTab) {
        var _i4, _arr4, _arr4$_i, origin, h, persistedWindowId, seedOrigin, win;

        return _regeneratorRuntime().wrap(function _callee6$(_context6) {
          while (1) {
            switch (_context6.prev = _context6.next) {
              case 0:
                if (!(this.sharedWindowId != null)) {
                  _context6.next = 11;
                  break;
                }

                _context6.prev = 1;
                _context6.next = 4;
                return promisifyWindowsGet(this.sharedWindowId);

              case 4:
                return _context6.abrupt("return", this.sharedWindowId);

              case 7:
                _context6.prev = 7;
                _context6.t0 = _context6["catch"](1);
                this.sharedWindowId = null;

                for (_i4 = 0, _arr4 = _toConsumableArray(this.originHosts.entries()); _i4 < _arr4.length; _i4++) {
                  _arr4$_i = _slicedToArray(_arr4[_i4], 2), origin = _arr4$_i[0], h = _arr4$_i[1];

                  if (h.source === 'shared-window-tab') {
                    this.originHosts.delete(origin);
                  }
                }

              case 11:
                _context6.next = 13;
                return this.getPersistedSharedWindowId();

              case 13:
                persistedWindowId = _context6.sent;

                if (!(persistedWindowId != null)) {
                  _context6.next = 26;
                  break;
                }

                _context6.prev = 15;
                _context6.next = 18;
                return promisifyWindowsGet(persistedWindowId);

              case 18:
                this.sharedWindowId = persistedWindowId;
                return _context6.abrupt("return", this.sharedWindowId);

              case 22:
                _context6.prev = 22;
                _context6.t1 = _context6["catch"](15);
                _context6.next = 26;
                return this.clearPersistedSharedWindowId();

              case 26:
                seedOrigin = originForFirstTab || 'https://www.tiktok.com'; // create 时不要传离屏 bounds。
                // Chrome 要求新窗口至少有一半区域位于可视屏幕内，否则会报
                // "Invalid value for bounds. Bounds must be at least 50% within visible screen space."

                _context6.next = 29;
                return promisifyWindowsCreate({
                  url: "".concat(seedOrigin, "/"),
                  focused: false,
                  type: 'normal'
                });

              case 29:
                win = _context6.sent;
                this.sharedWindowId = win.id;
                _context6.next = 33;
                return this.persistSharedWindowId(win.id);

              case 33:
                _context6.next = 35;
                return this.tryMinimizeWindow(win.id);

              case 35:
                _context6.next = 37;
                return this.cleanupSharedWindowSeedTabs(win.id, seedOrigin);

              case 37:
                return _context6.abrupt("return", this.sharedWindowId);

              case 38:
              case "end":
                return _context6.stop();
            }
          }
        }, _callee6, this, [[1, 7], [15, 22]]);
      }));

      function ensureSharedWindow(_x3) {
        return _ensureSharedWindow.apply(this, arguments);
      }

      return ensureSharedWindow;
    }()
  }, {
    key: "tryMinimizeWindow",
    value: function () {
      var _tryMinimizeWindow = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(windowId) {
        var retryDelays, _i5, _retryDelays, delay, win, current;

        return _regeneratorRuntime().wrap(function _callee7$(_context7) {
          while (1) {
            switch (_context7.prev = _context7.next) {
              case 0:
                retryDelays = [300, 800];
                _i5 = 0, _retryDelays = retryDelays;

              case 2:
                if (!(_i5 < _retryDelays.length)) {
                  _context7.next = 29;
                  break;
                }

                delay = _retryDelays[_i5];
                _context7.next = 6;
                return waitMs(delay);

              case 6:
                _context7.prev = 6;
                _context7.next = 9;
                return promisifyWindowsUpdate(windowId, {
                  state: 'minimized'
                });

              case 9:
                win = _context7.sent;

                if (!((win === null || win === void 0 ? void 0 : win.state) === 'minimized')) {
                  _context7.next = 12;
                  break;
                }

                return _context7.abrupt("return", true);

              case 12:
                _context7.next = 16;
                break;

              case 14:
                _context7.prev = 14;
                _context7.t0 = _context7["catch"](6);

              case 16:
                _context7.prev = 16;
                _context7.next = 19;
                return promisifyWindowsGet(windowId);

              case 19:
                current = _context7.sent;

                if (!((current === null || current === void 0 ? void 0 : current.state) === 'minimized')) {
                  _context7.next = 22;
                  break;
                }

                return _context7.abrupt("return", true);

              case 22:
                _context7.next = 26;
                break;

              case 24:
                _context7.prev = 24;
                _context7.t1 = _context7["catch"](16);

              case 26:
                _i5++;
                _context7.next = 2;
                break;

              case 29:
                return _context7.abrupt("return", false);

              case 30:
              case "end":
                return _context7.stop();
            }
          }
        }, _callee7, null, [[6, 14], [16, 24]]);
      }));

      function tryMinimizeWindow(_x4) {
        return _tryMinimizeWindow.apply(this, arguments);
      }

      return tryMinimizeWindow;
    }()
  }, {
    key: "findSharedWindowTab",
    value: function () {
      var _findSharedWindowTab = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(origin, windowId) {
        var tabs, _iterator2, _step2, t, rawUrl;

        return _regeneratorRuntime().wrap(function _callee8$(_context8) {
          while (1) {
            switch (_context8.prev = _context8.next) {
              case 0:
                _context8.next = 2;
                return promisifyTabsQuery({
                  windowId: windowId
                });

              case 2:
                tabs = _context8.sent;
                _iterator2 = _createForOfIteratorHelper(tabs);
                _context8.prev = 4;

                _iterator2.s();

              case 6:
                if ((_step2 = _iterator2.n()).done) {
                  _context8.next = 20;
                  break;
                }

                t = _step2.value;
                rawUrl = t.pendingUrl || t.url;

                if (!(!rawUrl || !rawUrl.startsWith('http'))) {
                  _context8.next = 11;
                  break;
                }

                return _context8.abrupt("continue", 18);

              case 11:
                _context8.prev = 11;

                if (!(new URL(rawUrl).origin === origin)) {
                  _context8.next = 14;
                  break;
                }

                return _context8.abrupt("return", t);

              case 14:
                _context8.next = 18;
                break;

              case 16:
                _context8.prev = 16;
                _context8.t0 = _context8["catch"](11);

              case 18:
                _context8.next = 6;
                break;

              case 20:
                _context8.next = 25;
                break;

              case 22:
                _context8.prev = 22;
                _context8.t1 = _context8["catch"](4);

                _iterator2.e(_context8.t1);

              case 25:
                _context8.prev = 25;

                _iterator2.f();

                return _context8.finish(25);

              case 28:
                return _context8.abrupt("return", null);

              case 29:
              case "end":
                return _context8.stop();
            }
          }
        }, _callee8, null, [[4, 22, 25, 28], [11, 16]]);
      }));

      function findSharedWindowTab(_x5, _x6) {
        return _findSharedWindowTab.apply(this, arguments);
      }

      return findSharedWindowTab;
    }()
  }, {
    key: "cleanupSharedWindowSeedTabs",
    value: function () {
      var _cleanupSharedWindowSeedTabs = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9(windowId, origin) {
        var tabs, matchedTabs, keepTab, removableTabIds;
        return _regeneratorRuntime().wrap(function _callee9$(_context9) {
          while (1) {
            switch (_context9.prev = _context9.next) {
              case 0:
                _context9.next = 2;
                return waitMs(300);

              case 2:
                _context9.next = 4;
                return promisifyTabsQuery({
                  windowId: windowId
                });

              case 4:
                tabs = _context9.sent;

                if (!(!tabs || tabs.length <= 1)) {
                  _context9.next = 7;
                  break;
                }

                return _context9.abrupt("return");

              case 7:
                matchedTabs = tabs.filter(function (t) {
                  var rawUrl = t.pendingUrl || t.url;
                  if (!rawUrl || !rawUrl.startsWith('http')) return false;

                  try {
                    return new URL(rawUrl).origin === origin;
                  } catch (_unused6) {
                    return false;
                  }
                });

                if (!(matchedTabs.length === 0)) {
                  _context9.next = 10;
                  break;
                }

                return _context9.abrupt("return");

              case 10:
                keepTab = matchedTabs[0];
                removableTabIds = tabs.filter(function (t) {
                  return t.id !== keepTab.id;
                }).map(function (t) {
                  return t.id;
                }).filter(Boolean);

                if (!(removableTabIds.length === 0)) {
                  _context9.next = 14;
                  break;
                }

                return _context9.abrupt("return");

              case 14:
                _context9.prev = 14;
                _context9.next = 17;
                return promisifyTabsRemove(removableTabIds);

              case 17:
                _context9.next = 21;
                break;

              case 19:
                _context9.prev = 19;
                _context9.t0 = _context9["catch"](14);

              case 21:
              case "end":
                return _context9.stop();
            }
          }
        }, _callee9, null, [[14, 19]]);
      }));

      function cleanupSharedWindowSeedTabs(_x7, _x8) {
        return _cleanupSharedWindowSeedTabs.apply(this, arguments);
      }

      return cleanupSharedWindowSeedTabs;
    }()
  }, {
    key: "createSharedWindowTab",
    value: function () {
      var _createSharedWindowTab = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10(origin, windowId) {
        return _regeneratorRuntime().wrap(function _callee10$(_context10) {
          while (1) {
            switch (_context10.prev = _context10.next) {
              case 0:
                return _context10.abrupt("return", promisifyTabsCreate({
                  windowId: windowId,
                  url: "".concat(origin, "/"),
                  active: false
                }));

              case 1:
              case "end":
                return _context10.stop();
            }
          }
        }, _callee10);
      }));

      function createSharedWindowTab(_x9, _x10) {
        return _createSharedWindowTab.apply(this, arguments);
      }

      return createSharedWindowTab;
    }()
    /**
     * 单次 PING Content Script / 签名桥是否就绪
     */

  }, {
    key: "pingOnce",
    value: function pingOnce(tabId) {
      var _this3 = this;

      return new Promise(function (resolve) {
        var name = "signPing_".concat(++_this3._reqSeq);
        util["b" /* alarms */].setTimeout(function () {
          try {
            chrome.alarms.clear(name);
          } catch (e) {
            /* ignore */
          }

          resolve(false);
        }, name, 12000);
        chrome.tabs.sendMessage(tabId, {
          type: 'TIKTOK_SIGN_PING'
        }, function (response) {
          try {
            chrome.alarms.clear(name);
          } catch (e) {
            /* ignore */
          }

          if (chrome.runtime.lastError) {
            resolve(false);
            return;
          }

          resolve(Boolean(response && response.success));
        });
      });
    }
  }, {
    key: "probeTabReady",
    value: function () {
      var _probeTabReady = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11(tabId) {
        var _this4 = this;

        var attempts,
            _loop,
            i,
            _ret,
            _args12 = arguments;

        return _regeneratorRuntime().wrap(function _callee11$(_context12) {
          while (1) {
            switch (_context12.prev = _context12.next) {
              case 0:
                attempts = _args12.length > 1 && _args12[1] !== undefined ? _args12[1] : 6;
                _loop = /*#__PURE__*/_regeneratorRuntime().mark(function _loop(i) {
                  return _regeneratorRuntime().wrap(function _loop$(_context11) {
                    while (1) {
                      switch (_context11.prev = _context11.next) {
                        case 0:
                          _context11.next = 2;
                          return _this4.pingOnce(tabId);

                        case 2:
                          if (!_context11.sent) {
                            _context11.next = 4;
                            break;
                          }

                          return _context11.abrupt("return", {
                            v: true
                          });

                        case 4:
                          if (!(i < attempts - 1)) {
                            _context11.next = 7;
                            break;
                          }

                          _context11.next = 7;
                          return new Promise(function (resolve) {
                            var delayName = "signProbe_".concat(tabId, "_").concat(i, "_").concat(++_this4._reqSeq);
                            util["b" /* alarms */].setTimeout(function () {
                              return resolve();
                            }, delayName, 1000);
                          });

                        case 7:
                        case "end":
                          return _context11.stop();
                      }
                    }
                  }, _loop);
                });
                i = 0;

              case 3:
                if (!(i < attempts)) {
                  _context12.next = 11;
                  break;
                }

                return _context12.delegateYield(_loop(i), "t0", 5);

              case 5:
                _ret = _context12.t0;

                if (!(_typeof(_ret) === "object")) {
                  _context12.next = 8;
                  break;
                }

                return _context12.abrupt("return", _ret.v);

              case 8:
                i++;
                _context12.next = 3;
                break;

              case 11:
                return _context12.abrupt("return", false);

              case 12:
              case "end":
                return _context12.stop();
            }
          }
        }, _callee11);
      }));

      function probeTabReady(_x11) {
        return _probeTabReady.apply(this, arguments);
      }

      return probeTabReady;
    }()
  }, {
    key: "verifyAndProbeHost",
    value: function () {
      var _verifyAndProbeHost = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee12(tabId) {
        var tab;
        return _regeneratorRuntime().wrap(function _callee12$(_context13) {
          while (1) {
            switch (_context13.prev = _context13.next) {
              case 0:
                _context13.prev = 0;
                _context13.next = 3;
                return promisifyTabsGet(tabId);

              case 3:
                tab = _context13.sent;

                if (!(!tab || this.skipTabIds.has(tabId))) {
                  _context13.next = 6;
                  break;
                }

                return _context13.abrupt("return", false);

              case 6:
                if (!(tab.status === 'complete')) {
                  _context13.next = 8;
                  break;
                }

                return _context13.abrupt("return", this.probeTabReady(tabId));

              case 8:
                _context13.next = 10;
                return this.waitForTabLoad(tabId);

              case 10:
                return _context13.abrupt("return", this.probeTabReady(tabId));

              case 13:
                _context13.prev = 13;
                _context13.t0 = _context13["catch"](0);
                return _context13.abrupt("return", false);

              case 16:
              case "end":
                return _context13.stop();
            }
          }
        }, _callee12, this, [[0, 13]]);
      }));

      function verifyAndProbeHost(_x12) {
        return _verifyAndProbeHost.apply(this, arguments);
      }

      return verifyAndProbeHost;
    }()
  }, {
    key: "markHostBroken",
    value: function markHostBroken(origin, tabId) {
      var _this5 = this;

      var h = this.originHosts.get(origin);
      var wasShared = Boolean(h && h.tabId === tabId && h.source === 'shared-window-tab');

      if (h && h.tabId === tabId) {
        this.originHosts.delete(origin);
      }

      this.skipTabIds.add(tabId);
      setTimeout(function () {
        _this5.skipTabIds.delete(tabId);
      }, 120000);

      if (wasShared) {
        chrome.tabs.remove(tabId).catch(function () {});
      }
    }
  }, {
    key: "_warmOriginHost",
    value: function () {
      var _warmOriginHost2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee13(origin) {
        var existing, ok, userTab, windowId, tab;
        return _regeneratorRuntime().wrap(function _callee13$(_context14) {
          while (1) {
            switch (_context14.prev = _context14.next) {
              case 0:
                existing = this.originHosts.get(origin);

                if (!(existing !== null && existing !== void 0 && existing.tabId)) {
                  _context14.next = 9;
                  break;
                }

                _context14.next = 4;
                return this.verifyAndProbeHost(existing.tabId);

              case 4:
                ok = _context14.sent;

                if (!ok) {
                  _context14.next = 7;
                  break;
                }

                return _context14.abrupt("return");

              case 7:
                this.originHosts.delete(origin);

                if (existing.source === 'shared-window-tab') {
                  chrome.tabs.remove(existing.tabId).catch(function () {});
                }

              case 9:
                _context14.next = 11;
                return this.findReusableUserTab(origin);

              case 11:
                userTab = _context14.sent;

                if (!userTab) {
                  _context14.next = 21;
                  break;
                }

                _context14.next = 15;
                return this.waitForTabLoad(userTab.id);

              case 15:
                _context14.next = 17;
                return this.probeTabReady(userTab.id);

              case 17:
                if (!_context14.sent) {
                  _context14.next = 20;
                  break;
                }

                this.originHosts.set(origin, {
                  tabId: userTab.id,
                  windowId: userTab.windowId,
                  source: 'user-tab'
                });
                return _context14.abrupt("return");

              case 20:
                this.skipTabIds.add(userTab.id);

              case 21:
                _context14.next = 23;
                return this.ensureSharedWindow(origin);

              case 23:
                windowId = _context14.sent;
                _context14.next = 26;
                return this.findSharedWindowTab(origin, windowId);

              case 26:
                tab = _context14.sent;

                if (tab) {
                  _context14.next = 31;
                  break;
                }

                _context14.next = 30;
                return this.createSharedWindowTab(origin, windowId);

              case 30:
                tab = _context14.sent;

              case 31:
                _context14.next = 33;
                return this.waitForTabLoad(tab.id);

              case 33:
                _context14.next = 35;
                return this.probeTabReady(tab.id);

              case 35:
                if (_context14.sent) {
                  _context14.next = 37;
                  break;
                }

                throw new Error('TikTok signer bridge not ready');

              case 37:
                this.originHosts.set(origin, {
                  tabId: tab.id,
                  windowId: windowId,
                  source: 'shared-window-tab'
                });

              case 38:
              case "end":
                return _context14.stop();
            }
          }
        }, _callee13, this);
      }));

      function _warmOriginHost(_x13) {
        return _warmOriginHost2.apply(this, arguments);
      }

      return _warmOriginHost;
    }()
    /**
     * 确保指定 origin 的宿主页可用
     * @param {string} origin
     */

  }, {
    key: "ensureHostReady",
    value: function () {
      var _ensureHostReady = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee14(origin) {
        var cached, ok, _h, p, h;

        return _regeneratorRuntime().wrap(function _callee14$(_context15) {
          while (1) {
            switch (_context15.prev = _context15.next) {
              case 0:
                cached = this.originHosts.get(origin);

                if (!(cached !== null && cached !== void 0 && cached.tabId)) {
                  _context15.next = 8;
                  break;
                }

                _context15.next = 4;
                return this.verifyAndProbeHost(cached.tabId);

              case 4:
                ok = _context15.sent;

                if (!ok) {
                  _context15.next = 7;
                  break;
                }

                return _context15.abrupt("return", cached);

              case 7:
                this.originHosts.delete(origin);

              case 8:
                if (!this.originWarmPromises.has(origin)) {
                  _context15.next = 15;
                  break;
                }

                _context15.next = 11;
                return this.originWarmPromises.get(origin);

              case 11:
                _h = this.originHosts.get(origin);

                if (_h) {
                  _context15.next = 14;
                  break;
                }

                throw new Error('Signer host unavailable after warm');

              case 14:
                return _context15.abrupt("return", _h);

              case 15:
                p = this._warmOriginHost(origin);
                this.originWarmPromises.set(origin, p);
                _context15.prev = 17;
                _context15.next = 20;
                return p;

              case 20:
                _context15.prev = 20;
                this.originWarmPromises.delete(origin);
                return _context15.finish(20);

              case 23:
                h = this.originHosts.get(origin);

                if (h) {
                  _context15.next = 26;
                  break;
                }

                throw new Error('Signer host unavailable');

              case 26:
                return _context15.abrupt("return", h);

              case 27:
              case "end":
                return _context15.stop();
            }
          }
        }, _callee14, this, [[17,, 20, 23]]);
      }));

      function ensureHostReady(_x14) {
        return _ensureHostReady.apply(this, arguments);
      }

      return ensureHostReady;
    }()
    /**
     * 初始化：解析 origin 并确保宿主页就绪（可重复调用，按 origin 复用）
     * @param {string} targetUrl - 目标 URL
     */

  }, {
    key: "init",
    value: function () {
      var _init = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee15() {
        var targetUrl,
            origin,
            host,
            _args16 = arguments;
        return _regeneratorRuntime().wrap(function _callee15$(_context16) {
          while (1) {
            switch (_context16.prev = _context16.next) {
              case 0:
                targetUrl = _args16.length > 0 && _args16[0] !== undefined ? _args16[0] : null;
                _context16.prev = 1;
                origin = this.getOrigin(targetUrl);
                _context16.next = 5;
                return this.ensureHostReady(origin);

              case 5:
                host = _context16.sent;
                this.currentOrigin = origin;
                this.tiktokTabId = host.tabId;
                this.scheduleIdleCloseSharedWindow();
                return _context16.abrupt("return", this);

              case 12:
                _context16.prev = 12;
                _context16.t0 = _context16["catch"](1);
                console.error('[AK-Signer] Init failed:', _context16.t0);
                throw _context16.t0;

              case 16:
              case "end":
                return _context16.stop();
            }
          }
        }, _callee15, this, [[1, 12]]);
      }));

      function init() {
        return _init.apply(this, arguments);
      }

      return init;
    }()
    /**
     * 等待标签页加载完成
     */

  }, {
    key: "waitForTabLoad",
    value: function () {
      var _waitForTabLoad = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee17(tabId) {
        var _this6 = this;

        var count,
            maxCount,
            _args18 = arguments;
        return _regeneratorRuntime().wrap(function _callee17$(_context18) {
          while (1) {
            switch (_context18.prev = _context18.next) {
              case 0:
                count = _args18.length > 1 && _args18[1] !== undefined ? _args18[1] : 0;
                maxCount = _args18.length > 2 && _args18[2] !== undefined ? _args18[2] : 60;

                if (!(count > maxCount)) {
                  _context18.next = 5;
                  break;
                }

                console.error('[AK-Signer] Tab load timeout after', maxCount, 'seconds');
                throw new Error('Tab load timeout');

              case 5:
                return _context18.abrupt("return", new Promise(function (resolve, reject) {
                  util["b" /* alarms */].setTimeout(function () {
                    chrome.tabs.get(tabId, /*#__PURE__*/function () {
                      var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee16(tab) {
                        var result, settleName;
                        return _regeneratorRuntime().wrap(function _callee16$(_context17) {
                          while (1) {
                            switch (_context17.prev = _context17.next) {
                              case 0:
                                _context17.prev = 0;

                                if (tab) {
                                  _context17.next = 5;
                                  break;
                                }

                                console.error('[AK-Signer] Tab was closed during loading');
                                reject(new Error('Tab was closed'));
                                return _context17.abrupt("return");

                              case 5:
                                if (!(tab.status === 'loading')) {
                                  _context17.next = 12;
                                  break;
                                }

                                _context17.next = 8;
                                return _this6.waitForTabLoad(tabId, count + 1, maxCount);

                              case 8:
                                result = _context17.sent;
                                resolve(result);
                                _context17.next = 13;
                                break;

                              case 12:
                                if (tab.status === 'complete') {
                                  settleName = "waitForTabLoadSettle_".concat(tabId, "_").concat(++_this6._reqSeq);
                                  util["b" /* alarms */].setTimeout(function () {
                                    resolve(tab);
                                  }, settleName, 2000);
                                }

                              case 13:
                                _context17.next = 19;
                                break;

                              case 15:
                                _context17.prev = 15;
                                _context17.t0 = _context17["catch"](0);
                                console.error('[AK-Signer] Error checking tab status:', _context17.t0);
                                reject(_context17.t0);

                              case 19:
                              case "end":
                                return _context17.stop();
                            }
                          }
                        }, _callee16, null, [[0, 15]]);
                      }));

                      return function (_x16) {
                        return _ref.apply(this, arguments);
                      };
                    }());
                  }, "waitForTabLoadPoll_".concat(tabId, "_").concat(count, "_").concat(++_this6._reqSeq), 1000);
                }));

              case 6:
              case "end":
                return _context18.stop();
            }
          }
        }, _callee17);
      }));

      function waitForTabLoad(_x15) {
        return _waitForTabLoad.apply(this, arguments);
      }

      return waitForTabLoad;
    }()
  }, {
    key: "getCookies",
    value: function () {
      var _getCookies = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee18() {
        var cookies;
        return _regeneratorRuntime().wrap(function _callee18$(_context19) {
          while (1) {
            switch (_context19.prev = _context19.next) {
              case 0:
                _context19.prev = 0;
                _context19.next = 3;
                return chrome.cookies.getAll({
                  domain: '.tiktok.com'
                });

              case 3:
                cookies = _context19.sent;
                return _context19.abrupt("return", cookies);

              case 7:
                _context19.prev = 7;
                _context19.t0 = _context19["catch"](0);
                console.error('[AK-Signer] Get cookies failed:', _context19.t0);
                return _context19.abrupt("return", []);

              case 11:
              case "end":
                return _context19.stop();
            }
          }
        }, _callee18, null, [[0, 7]]);
      }));

      function getCookies() {
        return _getCookies.apply(this, arguments);
      }

      return getCookies;
    }()
  }, {
    key: "_enqueueTabRequest",
    value: function _enqueueTabRequest(tabId, fn) {
      var prev = this.tabChains.get(tabId) || Promise.resolve();
      var next = prev.then(function () {
        return fn();
      }, function () {
        return fn();
      });
      this.tabChains.set(tabId, next.catch(function () {}));
      return next;
    }
  }, {
    key: "_sendRequestToTabImpl",
    value: function () {
      var _sendRequestToTabImpl2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee21(tabId, _ref2, origin, retried) {
        var _this7 = this;

        var action, _ref2$url, url, _ref2$body, body, _ref2$splited, splited, alarmName;

        return _regeneratorRuntime().wrap(function _callee21$(_context22) {
          while (1) {
            switch (_context22.prev = _context22.next) {
              case 0:
                action = _ref2.action, _ref2$url = _ref2.url, url = _ref2$url === void 0 ? '' : _ref2$url, _ref2$body = _ref2.body, body = _ref2$body === void 0 ? '' : _ref2$body, _ref2$splited = _ref2.splited, splited = _ref2$splited === void 0 ? false : _ref2$splited;
                alarmName = "sendRequest_".concat(++this._reqSeq);
                return _context22.abrupt("return", new Promise(function (resolve, reject) {
                  util["b" /* alarms */].setTimeout( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee19() {
                    return _regeneratorRuntime().wrap(function _callee19$(_context20) {
                      while (1) {
                        switch (_context20.prev = _context20.next) {
                          case 0:
                            try {
                              chrome.alarms.clear(alarmName);
                            } catch (e) {
                              /* ignore */
                            }

                            if (origin != null) {
                              _this7.markHostBroken(origin, tabId);
                            }

                            reject(new Error('Request timeout after 30 seconds'));

                          case 3:
                          case "end":
                            return _context20.stop();
                        }
                      }
                    }, _callee19);
                  })), alarmName, 30000);
                  chrome.tabs.sendMessage(tabId, {
                    type: 'TIKTOK_SIGN_REQUEST',
                    action: action,
                    url: url,
                    body: body,
                    splited: splited
                  }, /*#__PURE__*/function () {
                    var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee20(response) {
                      var _chrome$runtime$lastE, msg, host, data, errMsg, _host, _data;

                      return _regeneratorRuntime().wrap(function _callee20$(_context21) {
                        while (1) {
                          switch (_context21.prev = _context21.next) {
                            case 0:
                              try {
                                chrome.alarms.clear(alarmName);
                              } catch (e) {
                                /* ignore */
                              }

                              if (!chrome.runtime.lastError) {
                                _context21.next = 21;
                                break;
                              }

                              msg = ((_chrome$runtime$lastE = chrome.runtime.lastError) === null || _chrome$runtime$lastE === void 0 ? void 0 : _chrome$runtime$lastE.message) || 'sendMessage failed';

                              if (!(origin != null && !retried)) {
                                _context21.next = 19;
                                break;
                              }

                              _this7.markHostBroken(origin, tabId);

                              _context21.prev = 5;
                              _context21.next = 8;
                              return _this7.ensureHostReady(origin);

                            case 8:
                              host = _context21.sent;
                              _context21.next = 11;
                              return _this7._sendRequestToTabImpl(host.tabId, {
                                action: action,
                                url: url,
                                body: body,
                                splited: splited
                              }, origin, true);

                            case 11:
                              data = _context21.sent;
                              resolve(data);
                              _context21.next = 18;
                              break;

                            case 15:
                              _context21.prev = 15;
                              _context21.t0 = _context21["catch"](5);
                              reject(new Error(msg));

                            case 18:
                              return _context21.abrupt("return");

                            case 19:
                              reject(new Error(msg));
                              return _context21.abrupt("return");

                            case 21:
                              if (!(response && response.success)) {
                                _context21.next = 25;
                                break;
                              }

                              resolve(response.data);
                              _context21.next = 43;
                              break;

                            case 25:
                              errMsg = (response === null || response === void 0 ? void 0 : response.error) || "".concat(action, " failed");

                              if (!(origin != null && !retried)) {
                                _context21.next = 42;
                                break;
                              }

                              _this7.markHostBroken(origin, tabId);

                              _context21.prev = 28;
                              _context21.next = 31;
                              return _this7.ensureHostReady(origin);

                            case 31:
                              _host = _context21.sent;
                              _context21.next = 34;
                              return _this7._sendRequestToTabImpl(_host.tabId, {
                                action: action,
                                url: url,
                                body: body,
                                splited: splited
                              }, origin, true);

                            case 34:
                              _data = _context21.sent;
                              resolve(_data);
                              _context21.next = 41;
                              break;

                            case 38:
                              _context21.prev = 38;
                              _context21.t1 = _context21["catch"](28);
                              reject(new Error(errMsg));

                            case 41:
                              return _context21.abrupt("return");

                            case 42:
                              reject(new Error(errMsg));

                            case 43:
                            case "end":
                              return _context21.stop();
                          }
                        }
                      }, _callee20, null, [[5, 15], [28, 38]]);
                    }));

                    return function (_x21) {
                      return _ref4.apply(this, arguments);
                    };
                  }());
                }));

              case 3:
              case "end":
                return _context22.stop();
            }
          }
        }, _callee21, this);
      }));

      function _sendRequestToTabImpl(_x17, _x18, _x19, _x20) {
        return _sendRequestToTabImpl2.apply(this, arguments);
      }

      return _sendRequestToTabImpl;
    }()
  }, {
    key: "sendRequest",
    value: function sendRequest(_ref5) {
      var _this8 = this;

      var action = _ref5.action,
          _ref5$url = _ref5.url,
          url = _ref5$url === void 0 ? '' : _ref5$url,
          _ref5$body = _ref5.body,
          body = _ref5$body === void 0 ? '' : _ref5$body,
          _ref5$splited = _ref5.splited,
          splited = _ref5$splited === void 0 ? false : _ref5$splited,
          originOpt = _ref5.origin;
      var origin = originOpt != null ? originOpt : url ? this.getOrigin(url) : this.currentOrigin;

      if (!origin) {
        return Promise.reject(new Error('Signer origin unknown'));
      }

      return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee22() {
        var _yield$_this8$ensureH, tabId, result;

        return _regeneratorRuntime().wrap(function _callee22$(_context23) {
          while (1) {
            switch (_context23.prev = _context23.next) {
              case 0:
                _context23.prev = 0;
                _context23.next = 3;
                return _this8.ensureHostReady(origin);

              case 3:
                _yield$_this8$ensureH = _context23.sent;
                tabId = _yield$_this8$ensureH.tabId;
                _context23.next = 7;
                return _this8._enqueueTabRequest(tabId, function () {
                  return _this8._sendRequestToTabImpl(tabId, {
                    action: action,
                    url: url,
                    body: body,
                    splited: splited
                  }, origin, false);
                });

              case 7:
                result = _context23.sent;

                _this8.scheduleIdleCloseSharedWindow();

                return _context23.abrupt("return", result);

              case 12:
                _context23.prev = 12;
                _context23.t0 = _context23["catch"](0);

                _this8.scheduleIdleCloseSharedWindow();

                throw _context23.t0;

              case 16:
              case "end":
                return _context23.stop();
            }
          }
        }, _callee22, null, [[0, 12]]);
      }))();
    }
  }, {
    key: "closeTab",
    value: function () {
      var _closeTab = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee23() {
        return _regeneratorRuntime().wrap(function _callee23$(_context24) {
          while (1) {
            switch (_context24.prev = _context24.next) {
              case 0:
                if (!this.tiktokTabId) {
                  _context24.next = 11;
                  break;
                }

                _context24.prev = 1;
                _context24.next = 4;
                return chrome.tabs.remove(this.tiktokTabId);

              case 4:
                _context24.next = 8;
                break;

              case 6:
                _context24.prev = 6;
                _context24.t0 = _context24["catch"](1);

              case 8:
                _context24.prev = 8;
                this.tiktokTabId = null;
                return _context24.finish(8);

              case 11:
              case "end":
                return _context24.stop();
            }
          }
        }, _callee23, this, [[1, 6, 8, 11]]);
      }));

      function closeTab() {
        return _closeTab.apply(this, arguments);
      }

      return closeTab;
    }()
  }, {
    key: "navigator",
    value: function () {
      var _navigator = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee24() {
        var origin;
        return _regeneratorRuntime().wrap(function _callee24$(_context25) {
          while (1) {
            switch (_context25.prev = _context25.next) {
              case 0:
                _context25.prev = 0;
                origin = this.currentOrigin || 'https://www.tiktok.com';
                _context25.next = 4;
                return this.sendRequest({
                  action: 'navigator',
                  url: '',
                  body: '',
                  splited: false,
                  origin: origin
                });

              case 4:
                return _context25.abrupt("return", _context25.sent);

              case 7:
                _context25.prev = 7;
                _context25.t0 = _context25["catch"](0);
                console.error('[AK-Signer] Get navigator failed:', _context25.t0);
                return _context25.abrupt("return", {
                  deviceScaleFactor: 1,
                  userAgent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36',
                  browser_language: 'en-US',
                  browser_platform: 'Win32',
                  browser_name: 'Mozilla',
                  browser_version: '5.0'
                });

              case 11:
              case "end":
                return _context25.stop();
            }
          }
        }, _callee24, this, [[0, 7]]);
      }));

      function navigator() {
        return _navigator.apply(this, arguments);
      }

      return navigator;
    }()
  }, {
    key: "ensureTabReady",
    value: function () {
      var _ensureTabReady = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee25() {
        var targetUrl,
            _args26 = arguments;
        return _regeneratorRuntime().wrap(function _callee25$(_context26) {
          while (1) {
            switch (_context26.prev = _context26.next) {
              case 0:
                targetUrl = _args26.length > 0 && _args26[0] !== undefined ? _args26[0] : null;
                _context26.next = 3;
                return this.init(targetUrl);

              case 3:
              case "end":
                return _context26.stop();
            }
          }
        }, _callee25, this);
      }));

      function ensureTabReady() {
        return _ensureTabReady.apply(this, arguments);
      }

      return ensureTabReady;
    }()
  }, {
    key: "Sign",
    value: function () {
      var _Sign = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee26(url) {
        var body,
            splited,
            origin,
            _args27 = arguments;
        return _regeneratorRuntime().wrap(function _callee26$(_context27) {
          while (1) {
            switch (_context27.prev = _context27.next) {
              case 0:
                body = _args27.length > 1 && _args27[1] !== undefined ? _args27[1] : '';
                splited = _args27.length > 2 && _args27[2] !== undefined ? _args27[2] : false;
                _context27.prev = 2;
                origin = this.getOrigin(url);
                _context27.next = 6;
                return this.sendRequest({
                  action: 'sign',
                  url: url,
                  body: body,
                  splited: splited,
                  origin: origin
                });

              case 6:
                return _context27.abrupt("return", _context27.sent);

              case 9:
                _context27.prev = 9;
                _context27.t0 = _context27["catch"](2);
                console.error('[AK-Signer] Sign failed:', _context27.t0);
                throw _context27.t0;

              case 13:
              case "end":
                return _context27.stop();
            }
          }
        }, _callee26, this, [[2, 9]]);
      }));

      function Sign(_x22) {
        return _Sign.apply(this, arguments);
      }

      return Sign;
    }()
  }, {
    key: "generateXBogus",
    value: function () {
      var _generateXBogus = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee27(url) {
        var origin;
        return _regeneratorRuntime().wrap(function _callee27$(_context28) {
          while (1) {
            switch (_context28.prev = _context28.next) {
              case 0:
                _context28.prev = 0;
                origin = this.getOrigin(url);
                _context28.next = 4;
                return this.sendRequest({
                  action: 'xbogus',
                  url: url,
                  body: '',
                  splited: false,
                  origin: origin
                });

              case 4:
                return _context28.abrupt("return", _context28.sent);

              case 7:
                _context28.prev = 7;
                _context28.t0 = _context28["catch"](0);
                console.error('[AK-Signer] Generate X-Bogus failed:', _context28.t0);
                throw _context28.t0;

              case 11:
              case "end":
                return _context28.stop();
            }
          }
        }, _callee27, this, [[0, 7]]);
      }));

      function generateXBogus(_x23) {
        return _generateXBogus.apply(this, arguments);
      }

      return generateXBogus;
    }()
  }, {
    key: "generateXGnarly",
    value: function () {
      var _generateXGnarly = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee28(url) {
        var body,
            origin,
            bodyStr,
            _args29 = arguments;
        return _regeneratorRuntime().wrap(function _callee28$(_context29) {
          while (1) {
            switch (_context29.prev = _context29.next) {
              case 0:
                body = _args29.length > 1 && _args29[1] !== undefined ? _args29[1] : '';
                _context29.prev = 1;
                origin = this.getOrigin(url);
                bodyStr = body && _typeof(body) === 'object' ? JSON.stringify(body) : String(body || '');
                _context29.next = 6;
                return this.sendRequest({
                  action: 'xgnarly',
                  url: url,
                  body: bodyStr,
                  splited: false,
                  origin: origin
                });

              case 6:
                return _context29.abrupt("return", _context29.sent);

              case 9:
                _context29.prev = 9;
                _context29.t0 = _context29["catch"](1);
                console.error('[AK-Signer] Generate X-Gnarly failed:', _context29.t0);
                throw _context29.t0;

              case 13:
              case "end":
                return _context29.stop();
            }
          }
        }, _callee28, this, [[1, 9]]);
      }));

      function generateXGnarly(_x24) {
        return _generateXGnarly.apply(this, arguments);
      }

      return generateXGnarly;
    }()
  }, {
    key: "close",
    value: function () {
      var _close = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee29() {
        return _regeneratorRuntime().wrap(function _callee29$(_context30) {
          while (1) {
            switch (_context30.prev = _context30.next) {
              case 0:
                if (this.port) {
                  this.port.disconnect();
                  this.port = null;
                }

                try {
                  chrome.alarms.clear(SIGNER_IDLE_ALARM, function () {});
                } catch (e) {
                  /* ignore */
                }

                _context30.next = 4;
                return this.closeSharedWindowOnly();

              case 4:
                this.originHosts.clear();
                this.tabChains.clear();
                this.tiktokTabId = null;
                this.currentOrigin = null;
                console.log('[AK-Signer] Cleaned up');

              case 9:
              case "end":
                return _context30.stop();
            }
          }
        }, _callee29, this);
      }));

      function close() {
        return _close.apply(this, arguments);
      }

      return close;
    }()
  }]);

  return Signer;
}();

/* harmony default export */ var signer = (signer_Signer);
// CONCATENATED MODULE: ./src/platform/tiktok/xGnarly/inedx.js
function inedx_typeof(obj) { "@babel/helpers - typeof"; return inedx_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, inedx_typeof(obj); }

function inedx_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ inedx_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == inedx_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { inedx_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function inedx_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function inedx_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function inedx_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { inedx_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { inedx_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }


var enableMock = false;

if (['test', 'development'].includes("production")) {
  var mockModule = __webpack_require__("245a");

  enableMock = mockModule.enableMock || false;
} // 创建全局单例


var inedx_signer = new signer();
/**
 * 签名参数
 * @param {object} data - 签名数据
 * @param {string} data.url - API URL
 * @param {object} data.params - URL 参数
 * @param {object} data.body - 请求体（可选）
 * @param {boolean} data.splited - 是否返回分离的签名值（可选）
 * @returns {Promise<object>} 签名结果
 */

function signParams(_x) {
  return _signParams.apply(this, arguments);
}
/**
 * 直接签名 URL（快捷方法）
 * @param {string} url - 完整 URL
 * @param {string|object} body - 请求体（可选）
 * @param {boolean} splited - 是否返回分离的值
 * @returns {Promise<string|object>} 签名结果
 */

function _signParams() {
  _signParams = inedx_asyncToGenerator( /*#__PURE__*/inedx_regeneratorRuntime().mark(function _callee(data) {
    var queryString, unsignedUrl, navigator, userAgent, body, signResult;
    return inedx_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            // 构建查询字符串
            queryString = new URLSearchParams(_objectSpread({}, data.params)).toString(); // 构建完整 URL

            unsignedUrl = data.url.includes('?') ? "".concat(data.url, "&").concat(queryString) : "".concat(data.url, "?").concat(queryString); // 初始化签名器（传入目标 URL 以确定打开哪个域名的标签页）

            _context.next = 5;
            return inedx_signer.init(unsignedUrl);

          case 5:
            _context.next = 7;
            return inedx_signer.navigator();

          case 7:
            navigator = _context.sent;
            userAgent = navigator.userAgent; // 处理请求体

            body = '';

            if (data.body) {
              body = typeof data.body === 'string' ? data.body : JSON.stringify(data.body);
            } // 执行签名


            _context.next = 13;
            return inedx_signer.Sign(unsignedUrl, body, data.splited || false);

          case 13:
            signResult = _context.sent;

            if (!data.splited) {
              _context.next = 16;
              break;
            }

            return _context.abrupt("return", {
              signature: signResult,
              userAgent: userAgent,
              navigator: navigator
            });

          case 16:
            return _context.abrupt("return", {
              signature: {
                signedUrl: signResult
              },
              userAgent: userAgent,
              navigator: navigator
            });

          case 19:
            _context.prev = 19;
            _context.t0 = _context["catch"](0);
            console.error('[signParams] Error:', _context.t0);
            throw _context.t0;

          case 23:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 19]]);
  }));
  return _signParams.apply(this, arguments);
}

function signUrl(_x2) {
  return _signUrl.apply(this, arguments);
}
/**
 * 生成 X-Bogus
 * @param {string} url - 完整 URL
 * @returns {Promise<string>} X-Bogus 值
 */

function _signUrl() {
  _signUrl = inedx_asyncToGenerator( /*#__PURE__*/inedx_regeneratorRuntime().mark(function _callee2(url) {
    var body,
        splited,
        _args2 = arguments;
    return inedx_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            body = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : '';
            splited = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : false;
            return _context2.abrupt("return", inedx_signer.Sign(url, body, splited));

          case 3:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return _signUrl.apply(this, arguments);
}

function generateXBogus(_x3) {
  return _generateXBogus.apply(this, arguments);
}
/**
 * 生成 X-Gnarly
 * @param {string} url - 完整 URL
 * @param {string|object} body - 请求体
 * @returns {Promise<string>} X-Gnarly 值
 */

function _generateXBogus() {
  _generateXBogus = inedx_asyncToGenerator( /*#__PURE__*/inedx_regeneratorRuntime().mark(function _callee3(url) {
    return inedx_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            return _context3.abrupt("return", inedx_signer.generateXBogus(url));

          case 1:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));
  return _generateXBogus.apply(this, arguments);
}

function generateXGnarly(_x4) {
  return _generateXGnarly.apply(this, arguments);
}
/**
 * 获取签名器实例
 */

function _generateXGnarly() {
  _generateXGnarly = inedx_asyncToGenerator( /*#__PURE__*/inedx_regeneratorRuntime().mark(function _callee4(url) {
    var body,
        _args4 = arguments;
    return inedx_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            body = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : '';

            if (!enableMock) {
              _context4.next = 5;
              break;
            }

            return _context4.abrupt("return", 111);

          case 5:
            return _context4.abrupt("return", inedx_signer.generateXGnarly(url, body));

          case 6:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));
  return _generateXGnarly.apply(this, arguments);
}

function getSigner() {
  return inedx_signer;
}
/* harmony default export */ var inedx = ({
  signParams: signParams,
  signUrl: signUrl,
  generateXBogus: generateXBogus,
  generateXGnarly: generateXGnarly,
  getSigner: getSigner
});

/***/ }),

/***/ "6a53":
/***/ (function(module, exports, __webpack_require__) {

module.exports = sortByProcedure;

/*
	sort the parts of the passed selector,
	as there is potential for optimization
	(some types of selectors are faster than others)
*/

var procedure = __webpack_require__("0b13");

var attributes = {
	__proto__: null,
	exists: 10,
	equals: 8,
	not: 7,
	start: 6,
	end: 6,
	any: 5,
	hyphen: 4,
	element: 4
};

function sortByProcedure(arr){
	var procs = arr.map(getProcedure);
	for(var i = 1; i < arr.length; i++){
		var procNew = procs[i];

		if(procNew < 0) continue;

		for(var j = i - 1; j >= 0 && procNew < procs[j]; j--){
			var token = arr[j + 1];
			arr[j + 1] = arr[j];
			arr[j] = token;
			procs[j + 1] = procs[j];
			procs[j] = procNew;
		}
	}
}

function getProcedure(token){
	var proc = procedure[token.type];

	if(proc === procedure.attribute){
		proc = attributes[token.action];

		if(proc === attributes.equals && token.name === "id"){
			//prefer ID selectors (eg. #ID)
			proc = 9;
		}

		if(token.ignoreCase){
			//ignoreCase adds some overhead, prefer "normal" token
			//this is a binary operation, to ensure it's still an int
			proc >>= 1;
		}
	} else if(proc === procedure.pseudo){
		if(!token.data){
			proc = 3;
		} else if(token.name === "has" || token.name === "contains"){
			proc = 0; //expensive in any case
		} else if(token.name === "matches" || token.name === "not"){
			proc = 0;
			for(var i = 0; i < token.data.length; i++){
				//TODO better handling of complex selectors
				if(token.data[i].length !== 1) continue;
				var cur = getProcedure(token.data[i][0]);
				//avoid executing :has or :contains
				if(cur === 0){
					proc = 0;
					break;
				}
				if(cur > proc) proc = cur;
			}
			if(token.data.length > 1 && proc > 0) proc -= 1;
		} else {
			proc = 1;
		}
	}
	return proc;
}


/***/ }),

/***/ "6ac0":
/***/ (function(module, exports) {

/**
 * A specialized version of `_.reduce` for arrays without support for
 * iteratee shorthands.
 *
 * @private
 * @param {Array} [array] The array to iterate over.
 * @param {Function} iteratee The function invoked per iteration.
 * @param {*} [accumulator] The initial value.
 * @param {boolean} [initAccum] Specify using the first element of `array` as
 *  the initial value.
 * @returns {*} Returns the accumulated value.
 */
function arrayReduce(array, iteratee, accumulator, initAccum) {
  var index = -1,
      length = array == null ? 0 : array.length;

  if (initAccum && length) {
    accumulator = array[++index];
  }
  while (++index < length) {
    accumulator = iteratee(accumulator, array[index], index, array);
  }
  return accumulator;
}

module.exports = arrayReduce;


/***/ }),

/***/ "6b23":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("db49");
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("ca00");


var log = {
  logArray: [],
  id: 0,
  getLog: function getLog() {
    return this.logArray;
  },
  setLog: function setLog() {
    this.id += 1;
    var args = Array.prototype.slice.call(arguments); // 保证log列表长度在logLength

    if (this.logArray.length >= _config_js__WEBPACK_IMPORTED_MODULE_0__[/* logLength */ "h"]) {
      this.logArray.pop();
    }

    console.log(args.join(' '));
    this.logArray.unshift({
      id: this.id,
      value: args.join(','),
      date: new Date(),
      type: 'normal'
    });
  },
  // setLog并上传日志
  report: function report(msg, type, data) {
    // 上传
    Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* recordLog */ "B"])(msg, type, data); // 打log

    this.setLog(msg);
  }
};
/* harmony default export */ __webpack_exports__["a"] = (log);

/***/ }),

/***/ "6b5c":
/***/ (function(module, exports, __webpack_require__) {

var composeArgs = __webpack_require__("cb84"),
    composeArgsRight = __webpack_require__("30c8"),
    countHolders = __webpack_require__("b767"),
    createCtor = __webpack_require__("1257"),
    createRecurry = __webpack_require__("e6c3"),
    getHolder = __webpack_require__("57d6"),
    reorder = __webpack_require__("a738"),
    replaceHolders = __webpack_require__("e8a9"),
    root = __webpack_require__("2b3e");

/** Used to compose bitmasks for function metadata. */
var WRAP_BIND_FLAG = 1,
    WRAP_BIND_KEY_FLAG = 2,
    WRAP_CURRY_FLAG = 8,
    WRAP_CURRY_RIGHT_FLAG = 16,
    WRAP_ARY_FLAG = 128,
    WRAP_FLIP_FLAG = 512;

/**
 * Creates a function that wraps `func` to invoke it with optional `this`
 * binding of `thisArg`, partial application, and currying.
 *
 * @private
 * @param {Function|string} func The function or method name to wrap.
 * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
 * @param {*} [thisArg] The `this` binding of `func`.
 * @param {Array} [partials] The arguments to prepend to those provided to
 *  the new function.
 * @param {Array} [holders] The `partials` placeholder indexes.
 * @param {Array} [partialsRight] The arguments to append to those provided
 *  to the new function.
 * @param {Array} [holdersRight] The `partialsRight` placeholder indexes.
 * @param {Array} [argPos] The argument positions of the new function.
 * @param {number} [ary] The arity cap of `func`.
 * @param {number} [arity] The arity of `func`.
 * @returns {Function} Returns the new wrapped function.
 */
function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {
  var isAry = bitmask & WRAP_ARY_FLAG,
      isBind = bitmask & WRAP_BIND_FLAG,
      isBindKey = bitmask & WRAP_BIND_KEY_FLAG,
      isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG),
      isFlip = bitmask & WRAP_FLIP_FLAG,
      Ctor = isBindKey ? undefined : createCtor(func);

  function wrapper() {
    var length = arguments.length,
        args = Array(length),
        index = length;

    while (index--) {
      args[index] = arguments[index];
    }
    if (isCurried) {
      var placeholder = getHolder(wrapper),
          holdersCount = countHolders(args, placeholder);
    }
    if (partials) {
      args = composeArgs(args, partials, holders, isCurried);
    }
    if (partialsRight) {
      args = composeArgsRight(args, partialsRight, holdersRight, isCurried);
    }
    length -= holdersCount;
    if (isCurried && length < arity) {
      var newHolders = replaceHolders(args, placeholder);
      return createRecurry(
        func, bitmask, createHybrid, wrapper.placeholder, thisArg,
        args, newHolders, argPos, ary, arity - length
      );
    }
    var thisBinding = isBind ? thisArg : this,
        fn = isBindKey ? thisBinding[func] : func;

    length = args.length;
    if (argPos) {
      args = reorder(args, argPos);
    } else if (isFlip && length > 1) {
      args.reverse();
    }
    if (isAry && ary < length) {
      args.length = ary;
    }
    if (this && this !== root && this instanceof wrapper) {
      fn = Ctor || createCtor(fn);
    }
    return fn.apply(thisBinding, args);
  }
  return wrapper;
}

module.exports = createHybrid;


/***/ }),

/***/ "6b9a":
/***/ (function(module, exports, __webpack_require__) {

var WeakMap = __webpack_require__("39ff");

/** Used to store function metadata. */
var metaMap = WeakMap && new WeakMap;

module.exports = metaMap;


/***/ }),

/***/ "6ba3":
/***/ (function(module, exports, __webpack_require__) {

var v35 = __webpack_require__("0801");
var sha1 = __webpack_require__("3e68");
module.exports = v35('v5', 0x50, sha1);


/***/ }),

/***/ "6cd2":
/***/ (function(module) {

module.exports = JSON.parse("{\"version\":\"2025b\",\"zones\":[\"Africa/Abidjan|LMT GMT|g.8 0|01|-2ldXH.Q|48e5\",\"Africa/Nairobi|LMT +0230 EAT +0245|-2r.g -2u -30 -2J|012132|-2ua2r.g N6nV.g 3Fbu h1cu dzbJ|47e5\",\"Africa/Algiers|LMT PMT WET WEST CET CEST|-c.c -9.l 0 -10 -10 -20|01232323232323232454542423234542324|-3bQ0c.c MDA2.P cNb9.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 DA0 Imo0 rd0 De0 9Xz0 1fb0 1ap0 16K0 2yo0 mEp0 hwL0 jxA0 11A0 dDd0 17b0 11B0 1cN0 2Dy0 1cN0 1fB0 1cL0|26e5\",\"Africa/Lagos|LMT GMT +0030 WAT|-d.z 0 -u -10|01023|-2B40d.z 7iod.z dnXK.p dLzH.z|17e6\",\"Africa/Bissau|LMT -01 GMT|12.k 10 0|012|-2ldX0 2xoo0|39e4\",\"Africa/Maputo|LMT CAT|-2a.i -20|01|-2sw2a.i|26e5\",\"Africa/Cairo|LMT EET EEST|-25.9 -20 -30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2MBC5.9 1AQM5.9 vb0 1ip0 11z0 1iN0 1nz0 12p0 1pz0 10N0 1pz0 16p0 1jz0 s3d0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1WL0 rd0 1Rz0 wp0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1qL0 Xd0 1oL0 11d0 1oL0 11d0 1pb0 11d0 1oL0 11d0 1oL0 11d0 1ny0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 WL0 1qN0 Rb0 1wp0 On0 1zd0 Lz0 1EN0 Fb0 c10 8n0 8Nd0 gL0 e10 mn0 kSp0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1a10 1fz0|15e6\",\"Africa/Casablanca|LMT +00 +01|u.k 0 -10|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-2gMnt.E 130Lt.E rb0 Dd0 dVb0 b6p0 TX0 EoB0 LL0 gnd0 rz0 43d0 AL0 1Nd0 XX0 1Cp0 pz0 dEp0 4mn0 SyN0 AL0 1Nd0 wn0 1FB0 Db0 1zd0 Lz0 1Nf0 wM0 co0 go0 1o00 s00 dA0 vc0 11A0 A00 e00 y00 11A0 uM0 e00 Dc0 11A0 s00 e00 IM0 WM0 mo0 gM0 LA0 WM0 jA0 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0|32e5\",\"Africa/Ceuta|LMT WET WEST CET CEST|l.g 0 -10 -10 -20|0121212121212121212121343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-2M0M0 GdX0 11z0 drd0 18p0 3HX0 17d0 1fz0 1a10 1io0 1a00 1y7o0 LL0 gnd0 rz0 43d0 AL0 1Nd0 XX0 1Cp0 pz0 dEp0 4VB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|85e3\",\"Africa/El_Aaiun|LMT -01 +00 +01|Q.M 10 0 -10|012323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-1rDz7.c 1GVA7.c 6L0 AL0 1Nd0 XX0 1Cp0 pz0 1cBB0 AL0 1Nd0 wn0 1FB0 Db0 1zd0 Lz0 1Nf0 wM0 co0 go0 1o00 s00 dA0 vc0 11A0 A00 e00 y00 11A0 uM0 e00 Dc0 11A0 s00 e00 IM0 WM0 mo0 gM0 LA0 WM0 jA0 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0 2600 e00 28M0 e00 2600 gM0|20e4\",\"Africa/Johannesburg|LMT SAST SAST SAST|-1Q -1u -20 -30|0123232|-39EpQ qTcm 1Ajdu 1cL0 1cN0 1cL0|84e5\",\"Africa/Juba|LMT CAT CAST EAT|-26.s -20 -30 -30|012121212121212121212121212121212131|-1yW26.s 1zK06.s 16L0 1iN0 17b0 1jd0 17b0 1ip0 17z0 1i10 17X0 1hB0 18n0 1hd0 19b0 1gp0 19z0 1iN0 17b0 1ip0 17z0 1i10 18n0 1hd0 18L0 1gN0 19b0 1gp0 19z0 1iN0 17z0 1i10 17X0 yGd0 PeX0|\",\"Africa/Khartoum|LMT CAT CAST EAT|-2a.8 -20 -30 -30|012121212121212121212121212121212131|-1yW2a.8 1zK0a.8 16L0 1iN0 17b0 1jd0 17b0 1ip0 17z0 1i10 17X0 1hB0 18n0 1hd0 19b0 1gp0 19z0 1iN0 17b0 1ip0 17z0 1i10 18n0 1hd0 18L0 1gN0 19b0 1gp0 19z0 1iN0 17z0 1i10 17X0 yGd0 HjL0|51e5\",\"Africa/Monrovia|LMT MMT MMT GMT|H.8 H.8 I.u 0|0123|-3ygng.Q 1usM0 28G01.m|11e5\",\"Africa/Ndjamena|LMT WAT WAST|-10.c -10 -20|0121|-2le10.c 2J3c0.c Wn0|13e5\",\"Africa/Sao_Tome|LMT LMT GMT WAT|-q.U A.J 0 -10|01232|-3tooq.U 18aoq.U 4i6N0 2q00|\",\"Africa/Tripoli|LMT CET CEST EET|-Q.I -10 -20 -20|012121213121212121212121213123123|-21JcQ.I 1hnBQ.I vx0 4iP0 xx0 4eN0 Bb0 7ip0 U0n0 A10 1db0 1cN0 1db0 1dd0 1db0 1eN0 1bb0 1e10 1cL0 1c10 1db0 1dd0 1db0 1cN0 1db0 1q10 fAn0 1ep0 1db0 AKq0 TA0 1o00|11e5\",\"Africa/Tunis|LMT PMT CET CEST|-E.I -9.l -10 -20|01232323232323232323232323232323232|-3zO0E.I 1cBAv.n 18pa9.l 1qM0 DA0 3Tc0 11B0 1ze0 WM0 7z0 3d0 14L0 1cN0 1f90 1ar0 16J0 1gXB0 WM0 1rA0 11c0 nwo0 Ko0 1cM0 1cM0 1rA0 10M0 zuM0 10N0 1aN0 1qM0 WM0 1qM0 11A0 1o00|20e5\",\"Africa/Windhoek|LMT +0130 SAST SAST CAT WAT|-18.o -1u -20 -30 -20 -10|012324545454545454545454545454545454545454545454545454|-39Ep8.o qTbC.o 1Ajdu 1cL0 1SqL0 9Io0 16P0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0|32e4\",\"America/Adak|LMT LMT NST NWT NPT BST BDT AHST HST HDT|-cd.m bK.C b0 a0 a0 b0 a0 a0 a0 90|01234256565656565656565656565656565678989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898|-48Pzs.L 1jVzf.p 1EX1d.m 8wW0 iB0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cm0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|326\",\"America/Anchorage|LMT LMT AST AWT APT AHST AHDT YST AKST AKDT|-e0.o 9X.A a0 90 90 a0 90 90 90 80|01234256565656565656565656565656565678989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898|-48Pzs.L 1jVxs.n 1EX20.o 8wX0 iA0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cm0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|30e4\",\"America/Puerto_Rico|LMT AST AWT APT|4o.p 40 30 30|01231|-2Qi7z.z 1IUbz.z 7XT0 iu0|24e5\",\"America/Araguaina|LMT -03 -02|3c.M 30 20|0121212121212121212121212121212121212121212121212121|-2glwL.c HdKL.c 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 dMN0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 ny10 Lz0|14e4\",\"America/Argentina/Buenos_Aires|LMT CMT -04 -03 -02|3R.M 4g.M 40 30 20|012323232323232323232323232323232323232323234343434343434343|-331U6.c 125cn pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 A4p0 uL0 1qN0 WL0|\",\"America/Argentina/Catamarca|LMT CMT -04 -03 -02|4n.8 4g.M 40 30 20|012323232323232323232323232323232323232323234343434243432343|-331TA.Q 125bR.E pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 rlB0 7B0 8zb0 uL0|\",\"America/Argentina/Cordoba|LMT CMT -04 -03 -02|4g.M 4g.M 40 30 20|012323232323232323232323232323232323232323234343434243434343|-331TH.c 125c0 pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 A4p0 uL0 1qN0 WL0|\",\"America/Argentina/Jujuy|LMT CMT -04 -03 -02|4l.c 4g.M 40 30 20|0123232323232323232323232323232323232323232343434232434343|-331TC.M 125bT.A pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1ze0 TX0 1ld0 WK0 1wp0 TX0 A4p0 uL0|\",\"America/Argentina/La_Rioja|LMT CMT -04 -03 -02|4r.o 4g.M 40 30 20|0123232323232323232323232323232323232323232343434342343432343|-331Tw.A 125bN.o pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Qn0 qO0 16n0 Rb0 1wp0 TX0 rlB0 7B0 8zb0 uL0|\",\"America/Argentina/Mendoza|LMT CMT -04 -03 -02|4z.g 4g.M 40 30 20|012323232323232323232323232323232323232323234343423232432343|-331To.I 125bF.w pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1u20 SL0 1vd0 Tb0 1wp0 TW0 ri10 Op0 7TX0 uL0|\",\"America/Argentina/Rio_Gallegos|LMT CMT -04 -03 -02|4A.Q 4g.M 40 30 20|012323232323232323232323232323232323232323234343434343432343|-331Tn.8 125bD.U pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 rlB0 7B0 8zb0 uL0|\",\"America/Argentina/Salta|LMT CMT -04 -03 -02|4l.E 4g.M 40 30 20|0123232323232323232323232323232323232323232343434342434343|-331TC.k 125bT.8 pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 A4p0 uL0|\",\"America/Argentina/San_Juan|LMT CMT -04 -03 -02|4y.4 4g.M 40 30 20|0123232323232323232323232323232323232323232343434342343432343|-331Tp.U 125bG.I pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Qn0 qO0 16n0 Rb0 1wp0 TX0 rld0 m10 8lb0 uL0|\",\"America/Argentina/San_Luis|LMT CMT -04 -03 -02|4p.o 4g.M 40 30 20|0123232323232323232323232323232323232323232343434232323432323|-331Ty.A 125bP.o pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 XX0 1q20 SL0 AN0 vDb0 m10 8lb0 8L0 jd0 1qN0 WL0 1qN0|\",\"America/Argentina/Tucuman|LMT CMT -04 -03 -02|4k.Q 4g.M 40 30 20|01232323232323232323232323232323232323232323434343424343234343|-331TD.8 125bT.U pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wq0 Ra0 1wp0 TX0 rlB0 4N0 8BX0 uL0 1qN0 WL0|\",\"America/Argentina/Ushuaia|LMT CMT -04 -03 -02|4x.c 4g.M 40 30 20|012323232323232323232323232323232323232323234343434343432343|-331Tq.M 125bH.A pKnH.c Mn0 1iN0 Tb0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 1C10 LX0 1C10 LX0 1C10 LX0 1C10 Mn0 MN0 2jz0 MN0 4lX0 u10 5Lb0 1pB0 Fnz0 u10 uL0 1vd0 SL0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 zvd0 Bz0 1tB0 TX0 1wp0 Rb0 1wp0 Rb0 1wp0 TX0 rkN0 8p0 8zb0 uL0|\",\"America/Asuncion|LMT AMT -04 -03|3O.E 3O.E 40 30|01232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-3eLw9.k 1FGo0 1DKM9.k 3CL0 3Dd0 10L0 1pB0 10n0 1pB0 10n0 1pB0 1cL0 1dd0 1db0 1dd0 1cL0 1dd0 1cL0 1dd0 1cL0 1dd0 1db0 1dd0 1cL0 1dd0 1cL0 1dd0 1cL0 1dd0 1db0 1dd0 1cL0 1lB0 14n0 1dd0 1cL0 1fd0 WL0 1rd0 1aL0 1dB0 Xz0 1qp0 Xb0 1qN0 10L0 1rB0 TX0 1tB0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 WN0 1qL0 11B0 1nX0 1ip0 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 TX0 1tB0 19X0 1a10 1fz0 1a10 1fz0 1cN0 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1ip0|28e5\",\"America/Panama|LMT CMT EST|5i.8 5j.A 50|012|-3eLuF.Q Iy01.s|15e5\",\"America/Bahia_Banderas|LMT MST CST MDT CDT|71 70 60 60 50|01213121313131313131313131313131313142424242424242424242424242|-1UQF0 deo0 8lz0 16p0 11z0 1dd0 otX0 2bmP0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nW0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0|84e3\",\"America/Bahia|LMT -03 -02|2y.4 30 20|01212121212121212121212121212121212121212121212121212121212121|-2glxp.U HdLp.U 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 l5B0 Rb0|27e5\",\"America/Barbados|LMT AST ADT -0330|3W.t 40 30 3u|0121213121212121|-2m4k1.v 1eAN1.v RB0 1Bz0 Op0 1rb0 11d0 1jJc0 IL0 1ip0 17b0 1ip0 17b0 1ld0 13b0|28e4\",\"America/Belem|LMT -03 -02|3d.U 30 20|012121212121212121212121212121|-2glwK.4 HdKK.4 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0|20e5\",\"America/Belize|LMT CST -0530 CWT CPT CDT|5Q.M 60 5u 50 50 50|012121212121212121212121212121212121212121212121213412121212121212121212121212121212121212121215151|-2kBu7.c fPA7.c Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu Rcu 7Bt0 Ni0 4nd0 Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1wou Rbu 1wou Rbu 1zcu Onu e9Au qn0 lxB0 mn0|57e3\",\"America/Boa_Vista|LMT -04 -03|42.E 40 30|0121212121212121212121212121212121|-2glvV.k HdKV.k 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 smp0 WL0 1tB0 2L0|62e2\",\"America/Bogota|LMT BMT -05 -04|4U.g 4U.g 50 40|01232|-3sTv3.I 1eIo0 38yo3.I 1PX0|90e5\",\"America/Boise|LMT PST PDT MST MWT MPT MDT|7I.N 80 70 70 60 60 60|01212134536363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363|-3tFE0 1nEe0 1nX0 11B0 1nX0 8C10 JCL0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 Dd0 1Kn0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|21e4\",\"America/Cambridge_Bay|-00 MST MWT MPT MDT CST CDT EST|0 70 60 60 60 60 50 50|012314141414141414141414141414141414141414141414141414141414567541414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141|-21Jc0 RO90 8x20 ix0 14HB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11A0 1nX0 2K0 WQ0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|15e2\",\"America/Campo_Grande|LMT -04 -03|3C.s 40 30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwl.w HdLl.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 1C10 Lz0 1Ip0 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|77e4\",\"America/Cancun|LMT CST EST CDT EDT|5L.4 60 50 50 40|01213132431313131313131313131313131313131312|-1UQG0 2q3C0 2tx0 wgP0 1lb0 14p0 1lb0 14o0 Lz0 xB0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 Dd0|63e4\",\"America/Caracas|LMT CMT -0430 -04|4r.I 4r.E 4u 40|012323|-3eLvw.g ROnX.U 28KM2.k 1IwOu kqo0|29e5\",\"America/Cayenne|LMT -04 -03|3t.k 40 30|012|-2mrwu.E 2gWou.E|58e3\",\"America/Chicago|LMT CST CDT EST CWT CPT|5O.A 60 50 50 50 50|012121212121212121212121212121212121213121212121214512121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3tFG0 1nEe0 1nX0 11B0 1nX0 1wp0 TX0 WN0 1qL0 1cN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 11B0 1Hz0 14p0 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 RB0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|92e5\",\"America/Chihuahua|LMT MST CST MDT CDT|74.k 70 60 60 50|0121312424231313131313131313131313131313131313131313131313132|-1UQF0 deo0 8lz0 16p0 11z0 1dd0 2zQN0 1lb0 14p0 1lb0 14q0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0|81e4\",\"America/Ciudad_Juarez|LMT MST CST MDT CDT|75.U 70 60 60 50|01213124242313131313131313131313131313131313131313131313131321313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131|-1UQF0 deo0 8lz0 16p0 11z0 1dd0 2zQN0 1lb0 14p0 1lb0 14q0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1wn0 cm0 EP0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/Costa_Rica|LMT SJMT CST CDT|5A.d 5A.d 60 50|01232323232|-3eLun.L 1fyo0 2lu0n.L Db0 1Kp0 Db0 pRB0 15b0 1kp0 mL0|12e5\",\"America/Coyhaique|LMT SMT -05 -04 -03|4M.g 4G.J 50 40 30|012131323232323232323434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434|-3eLvb.I MJbS.t fJAh.f 5knG.J 1Vzh.f jRAG.J 1pbh.f 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 nHX0 op0 blz0 ko0 Qeo0 WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1zb0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 11B0 1qL0 11B0|\",\"America/Phoenix|LMT MST MDT MWT|7s.i 70 60 60|012121313121|-3tFF0 1nEe0 1nX0 11B0 1nX0 SgN0 4Al1 Ap0 1db0 SWqX 1cL0|42e5\",\"America/Cuiaba|LMT -04 -03|3I.k 40 30|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwf.E HdLf.E 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 4a10 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|54e4\",\"America/Danmarkshavn|LMT -03 -02 GMT|1e.E 30 20 0|01212121212121212121212121212121213|-2a5WJ.k 2z5fJ.k 19U0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 DC0|8\",\"America/Dawson_Creek|LMT PST PDT PWT PPT MST|80.U 80 70 70 70 70|01213412121212121212121212121212121212121212121212121212125|-3tofX.4 1nspX.4 1in0 UGp0 8x10 iy0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 ML0|12e3\",\"America/Dawson|LMT YST YDT YWT YPT YDDT PST PDT MST|9h.E 90 80 80 80 70 80 70 70|0121213415167676767676767676767676767676767676767676767676767676767676767676767676767676767678|-2MSeG.k GWpG.k 1in0 1o10 13V0 Ser0 8x00 iz0 LCL0 1fA0 jrA0 fNd0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1z90|13e2\",\"America/Denver|LMT MST MDT MWT MPT|6X.U 70 60 60 60|012121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3tFF0 1nEe0 1nX0 11B0 1nX0 11B0 1qL0 WN0 mn0 Ord0 8x20 ix0 LCN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|26e5\",\"America/Detroit|LMT CST EST EWT EPT EDT|5w.b 60 50 40 40 40|0123425252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-2Cgir.N peqr.N 156L0 8x40 iv0 6fd0 11z0 JxX1 SMX 1cN0 1cL0 aW10 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|37e5\",\"America/Edmonton|LMT MST MDT MWT MPT|7x.Q 70 60 60 60|0121212121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2yd4q.8 shdq.8 1in0 17d0 hz0 2dB0 1fz0 1a10 11z0 1qN0 WL0 1qN0 11z0 IGN0 8x20 ix0 3NB0 11z0 XQp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|10e5\",\"America/Eirunepe|LMT -05 -04|4D.s 50 40|0121212121212121212121212121212121|-2glvk.w HdLk.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 dPB0 On0 yTd0 d5X0|31e3\",\"America/El_Salvador|LMT CST CDT|5U.M 60 50|012121|-1XiG3.c 2Fvc3.c WL0 1qN0 WL0|11e5\",\"America/Tijuana|LMT MST PST PDT PWT PPT|7M.4 70 80 70 70 70|012123245232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-1UQF0 4Q00 8mp0 8lz0 SN0 1cL0 pHB0 83r0 AU0 5MN0 1Rz0 38N0 Wn0 1qP0 11z0 1o10 11z0 3NA0 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 BUp0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|20e5\",\"America/Fort_Nelson|LMT PST PDT PWT PPT MST|8a.L 80 70 70 70 70|012134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121215|-3tofN.d 1nspN.d 1in0 UGp0 8x10 iy0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0|39e2\",\"America/Fort_Wayne|LMT CST CDT CWT CPT EST EDT|5I.C 60 50 50 50 50 40|0121212134121212121212121212151565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tFG0 1nEe0 1nX0 11B0 1nX0 QI10 Db0 RB0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 5Tz0 1o10 qLb0 1cL0 1cN0 1cL0 1qhd0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/Fortaleza|LMT -03 -02|2y 30 20|0121212121212121212121212121212121212121|-2glxq HdLq 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 5z0 2mN0 On0|34e5\",\"America/Glace_Bay|LMT AST ADT AWT APT|3X.M 40 30 30 30|012134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2IsI0.c CwO0.c 1in0 UGp0 8x50 iu0 iq10 11z0 Jg10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|19e3\",\"America/Godthab|LMT -03 -02 -01|3q.U 30 20 10|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212123232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2a5Ux.4 2z5dx.4 19U0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 2so0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|17e3\",\"America/Goose_Bay|LMT NST NDT NST NDT NWT NPT AST ADT ADDT|41.E 3u.Q 2u.Q 3u 2u 2u 2u 40 30 20|0121343434343434356343434343434343434343434343434343434343437878787878787878787878787878787878787878787879787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787|-3tojW.k 1nspt.c 1in0 DXb0 2HbX.8 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 WL0 1qN0 WL0 1qN0 7UHu itu 1tB0 WL0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1tB0 WL0 1ld0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 S10 g0u 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14n1 1lb0 14p0 1nW0 11C0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|76e2\",\"America/Grand_Turk|LMT KMT EST EDT AST|4I.w 57.a 50 40 40|01232323232323232323232323232323232323232323232323232323232323232323232323243232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-3eLvf.s RK0m.C 2HHBQ.O 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 7jA0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|37e2\",\"America/Guatemala|LMT CST CDT|62.4 60 50|0121212121|-24KhV.U 2efXV.U An0 mtd0 Nz0 ifB0 17b0 zDB0 11z0|13e5\",\"America/Guayaquil|LMT QMT -05 -04|5j.k 5e 50 40|01232|-3eLuE.E 1DNzS.E 2uILK rz0|27e5\",\"America/Guyana|LMT -04 -0345 -03|3Q.D 40 3J 30|01231|-2mf87.l 8Hc7.l 2r7bJ Ey0f|80e4\",\"America/Halifax|LMT AST ADT AWT APT|4e.o 40 30 30 30|0121212121212121212121212121212121212121212121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2IsHJ.A xzzJ.A 1db0 3I30 1in0 3HX0 IL0 1E10 ML0 1yN0 Pb0 1Bd0 Mn0 1Bd0 Rz0 1w10 Xb0 1w10 LX0 1w10 Xb0 1w10 Lz0 1C10 Jz0 1E10 OL0 1yN0 Un0 1qp0 Xb0 1qp0 11X0 1w10 Lz0 1HB0 LX0 1C10 FX0 1w10 Xb0 1qp0 Xb0 1BB0 LX0 1td0 Xb0 1qp0 Xb0 Rf0 8x50 iu0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 3Qp0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 3Qp0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 6i10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|39e4\",\"America/Havana|LMT HMT CST CDT|5t.s 5t.A 50 40|0123232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-3eLuu.w 1qx00.8 72zu.o ML0 sld0 An0 1Nd0 Db0 1Nd0 An0 6Ep0 An0 1Nd0 An0 JDd0 Mn0 1Ap0 On0 1fd0 11X0 1qN0 WL0 1wp0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 14n0 1ld0 14L0 1kN0 15b0 1kp0 1cL0 1cN0 1fz0 1a10 1fz0 1fB0 11z0 14p0 1nX0 11B0 1nX0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 14n0 1ld0 14n0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 1a10 1in0 1a10 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 17c0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 11A0 6i00 Rc0 1wo0 U00 1tA0 Rc0 1wo0 U00 1wo0 U00 1zc0 U00 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0|21e5\",\"America/Hermosillo|LMT MST CST MDT|7n.Q 70 60 60|01213121313131|-1UQF0 deo0 8lz0 16p0 11z0 1dd0 otX0 2bmP0 1lb0 14p0 1lb0 14p0 1lb0|64e4\",\"America/Indiana/Knox|LMT CST CDT CWT CPT EST|5K.u 60 50 50 50 50|01212134121212121212121212121212121212151212121212121212121212121212121212121212121212121252121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3tFG0 1nEe0 1nX0 11B0 1nX0 SgN0 8x30 iw0 3NB0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 11z0 1o10 11z0 1o10 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 3Cn0 8wp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 z8o0 1o00 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/Indiana/Marengo|LMT CST CDT CWT CPT EST EDT|5J.n 60 50 50 50 50 40|01212134121212121212121215656565656525656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tFG0 1nEe0 1nX0 11B0 1nX0 SgN0 8x30 iw0 dyN0 11z0 6fd0 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 jrz0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1VA0 LA0 1BX0 1e6p0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/Indiana/Petersburg|LMT CST CDT CWT CPT EST EDT|5N.7 60 50 50 50 50 40|012121341212121212121212121215121212121212121212121252125656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tFG0 1nEe0 1nX0 11B0 1nX0 SgN0 8x30 iw0 njX0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 3Fb0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 19co0 1o00 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/Indiana/Tell_City|LMT CST CDT CWT CPT EST EDT|5L.3 60 50 50 50 50 40|012121341212121212121212121512165652121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3tFG0 1nEe0 1nX0 11B0 1nX0 SgN0 8x30 iw0 njX0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 8wn0 1cN0 1cL0 1cN0 1cK0 1cN0 1cL0 1qhd0 1o00 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/Indiana/Vevay|LMT CST CDT CWT CPT EST EDT|5E.g 60 50 50 50 50 40|0121213415656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tFG0 1nEe0 1nX0 11B0 1nX0 SgN0 8x30 iw0 kPB0 Awn0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1lnd0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/Indiana/Vincennes|LMT CST CDT CWT CPT EST EDT|5O.7 60 50 50 50 50 40|012121341212121212121212121212121565652125656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tFG0 1nEe0 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 g0p0 11z0 1o10 11z0 1qL0 WN0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 caL0 1cL0 1cN0 1cL0 1qhd0 1o00 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/Indiana/Winamac|LMT CST CDT CWT CPT EST EDT|5K.p 60 50 50 50 50 40|012121341212121212121212121212121212121565652165656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tFG0 1nEe0 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 jrz0 1cL0 1cN0 1cL0 1qhd0 1o00 Rd0 1za0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/Inuvik|-00 PST PDT MDT MST|0 80 70 60 70|01212121212121213434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434|-FnA0 L3K0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cK0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|35e2\",\"America/Iqaluit|-00 EWT EPT EST EDT CST CDT|0 40 40 50 40 60 50|0123434343434343434343434343434343434343434343434343434343456343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-16K00 7nX0 iv0 14HB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11C0 1nX0 11A0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|67e2\",\"America/Jamaica|LMT KMT EST EDT|57.a 57.a 50 40|01232323232323232323232|-3eLuQ.O RK00 2uM1Q.O 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0|94e4\",\"America/Juneau|LMT LMT PST PWT PPT PDT YDT YST AKST AKDT|-f2.j 8V.F 80 70 70 70 80 90 90 80|0123425252525252525252525252625252578989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898|-48Pzs.L 1jVwq.s 1EX12.j 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cM0 1cM0 1cL0 1cN0 1fz0 1a10 1fz0 co0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|33e3\",\"America/Kentucky/Louisville|LMT CST CDT CWT CPT EST EDT|5H.2 60 50 50 50 50 40|01212121213412121212121212121212121212565656565656525656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tFG0 1nEe0 1nX0 11B0 1nX0 3Fd0 Nb0 LPd0 11z0 RB0 8x30 iw0 1nX1 e0X 9vd0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 xz0 gso0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1VA0 LA0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/Kentucky/Monticello|LMT CST CDT CWT CPT EST EDT|5D.o 60 50 50 50 50 40|01212134121212121212121212121212121212121212121212121212121212121212121212565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tFG0 1nEe0 1nX0 11B0 1nX0 SgN0 8x30 iw0 SWp0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11A0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/La_Paz|LMT CMT BST -04|4w.A 4w.A 3w.A 40|0123|-3eLvr.o 1FIo0 13b0|19e5\",\"America/Lima|LMT LMT -05 -04|58.c 58.A 50 40|01232323232323232|-3eLuP.M JcM0.o 1bDzP.o zX0 1aN0 1cL0 1cN0 1cL0 1PrB0 zX0 1O10 zX0 6Gp0 zX0 98p0 zX0|11e6\",\"America/Los_Angeles|LMT PST PDT PWT PPT|7Q.W 80 70 70 70|0121213412121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3tFE0 1nEe0 1nX0 11B0 1nX0 SgN0 8x10 iy0 5Wp1 1VaX 3dA0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|15e6\",\"America/Maceio|LMT -03 -02|2m.Q 30 20|012121212121212121212121212121212121212121|-2glxB.8 HdLB.8 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 dMN0 Lz0 8Q10 WL0 1tB0 5z0 2mN0 On0|93e4\",\"America/Managua|LMT MMT CST EST CDT|5J.8 5J.c 60 50 50|01232424232324242|-3eLue.Q 1Mhc0.4 1yAMe.M 4mn0 9Up0 Dz0 1K10 Dz0 s3F0 1KH0 DB0 9In0 k8p0 19X0 1o30 11y0|22e5\",\"America/Manaus|LMT -04 -03|40.4 40 30|01212121212121212121212121212121|-2glvX.U HdKX.U 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 dPB0 On0|19e5\",\"America/Martinique|LMT FFMT AST ADT|44.k 44.k 40 30|01232|-3eLvT.E PTA0 2LPbT.E 19X0|39e4\",\"America/Matamoros|LMT CST CDT|6u 60 50|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1UQG0 2FjC0 1nX0 i6p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|45e4\",\"America/Mazatlan|LMT MST CST MDT|75.E 70 60 60|01213121313131313131313131313131313131313131313131313131313131|-1UQF0 deo0 8lz0 16p0 11z0 1dd0 otX0 2bmP0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0|44e4\",\"America/Menominee|LMT CST CDT CWT CPT EST|5O.r 60 50 50 50 50|012121341212152121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3pdG9.x 1jce9.x 1nX0 11B0 1nX0 SgN0 8x30 iw0 1o10 11z0 LCN0 1fz0 6410 9Jb0 1cM0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|85e2\",\"America/Merida|LMT CST EST CDT|5W.s 60 50 50|0121313131313131313131313131313131313131313131313131313131|-1UQG0 2q3C0 24n0 wG10 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0|11e5\",\"America/Metlakatla|LMT LMT PST PWT PPT PDT AKST AKDT|-fd.G 8K.i 80 70 70 70 90 80|0123425252525252525252525252525252526767672676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-48Pzs.L 1jVwf.5 1EX1d.G 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1hU10 Rd0 1zb0 Op0 1zb0 Op0 1zb0 uM0 jB0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|14e2\",\"America/Mexico_City|LMT MST CST MDT CDT CWT|6A.A 70 60 60 50 50|012131242425242424242424242424242424242424242424242424242424242424242|-1UQF0 deo0 8lz0 16p0 11z0 1dd0 gEn0 TX0 3xd0 Jb0 6zB0 SL0 e5d0 17b0 1Pff0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0|20e6\",\"America/Miquelon|LMT AST -03 -02|3I.E 40 30 20|012323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2mxUf.k 2LHcf.k gQ10 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|61e2\",\"America/Moncton|LMT EST AST ADT AWT APT|4j.8 50 40 30 30 30|0123232323232323232323245232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-3txvE.Q J4ME.Q CwN0 1in0 zAo0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1Nd0 An0 1K10 Lz0 1zB0 NX0 1u10 Wn0 S20 8x50 iu0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 3Cp0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14n1 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 ReX 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|64e3\",\"America/Monterrey|LMT MST CST MDT CDT|6F.g 70 60 60 50|012131242424242424242424242424242424242424242424242424242424242|-1UQG0 dep0 8lz0 16p0 11z0 1dd0 2gmp0 1nX0 i6p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0|41e5\",\"America/Montevideo|LMT MMT -04 -03 -0330 -0230 -02 -0130|3I.P 3I.P 40 30 3u 2u 20 1u|012343434343434343434343435353636353636375363636363636363636363636363636363636363636363|-2tRUf.9 sVc0 8jcf.9 1db0 1dcu 1cLu 1dcu 1cLu ircu 11zu 1o0u 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 1qMu WLu 1fAu 1cLu 1o0u 11zu NAu 3jXu zXu Dq0u 19Xu pcu jz0 cm10 19X0 6tB0 1fbu 3o0u jX0 4vB0 xz0 3Cp0 mmu 1a10 IMu Db0 4c10 uL0 1Nd0 An0 1SN0 uL0 mp0 28L0 iPB0 un0 1SN0 xz0 1zd0 Lz0 1zd0 Rb0 1zd0 On0 1wp0 Rb0 s8p0 1fB0 1ip0 11z0 1ld0 14n0 1o10 11z0 1o10 11z0 1o10 14n0 1ld0 14n0 1ld0 14n0 1o10 11z0 1o10 11z0 1o10 11z0|17e5\",\"America/Toronto|LMT EST EDT EWT EPT|5h.w 50 40 40 40|012121212121212121212121212121212121212121212123412121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-32B6G.s UFdG.s 1in0 11Wu 1nzu 1fD0 WJ0 1wr0 Nb0 1Ap0 On0 1zd0 On0 1wp0 TX0 1tB0 TX0 1tB0 TX0 1tB0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 4kM0 8x40 iv0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1qL0 11B0 1nX0 11B0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|65e5\",\"America/New_York|LMT EST EDT EWT EPT|4U.2 50 40 40 40|012121212121212121212121212121212121212121212121213412121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3tFH0 1nEe0 1nX0 11B0 1nX0 11B0 1qL0 1a10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 RB0 8x40 iv0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|21e6\",\"America/Nome|LMT LMT NST NWT NPT BST BDT YST AKST AKDT|-cW.m b1.C b0 a0 a0 b0 a0 90 90 80|01234256565656565656565656565656565678989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898|-48Pzs.L 1jVyu.p 1EX1W.m 8wW0 iB0 Qlb0 52O0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cl0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|38e2\",\"America/Noronha|LMT -02 -01|29.E 20 10|0121212121212121212121212121212121212121|-2glxO.k HdKO.k 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 2L0 2pB0 On0|30e2\",\"America/North_Dakota/Beulah|LMT MST MDT MWT MPT CST CDT|6L.7 70 60 60 60 60 50|0121213412121212121212121212121212121212121212121212121212121212121212121212121212121212121212125656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tFF0 1nEe0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Oo0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/North_Dakota/Center|LMT MST MDT MWT MPT CST CDT|6J.c 70 60 60 60 60 50|0121213412121212121212121212121212121212121212121212121212125656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tFF0 1nEe0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14o0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/North_Dakota/New_Salem|LMT MST MDT MWT MPT CST CDT|6J.D 70 60 60 60 60 50|0121213412121212121212121212121212121212121212121212121212121212121212121212121212565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tFF0 1nEe0 1nX0 11B0 1nX0 SgN0 8x20 ix0 QwN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14o0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|\",\"America/Ojinaga|LMT MST CST MDT CDT|6V.E 70 60 60 50|0121312424231313131313131313131313131313131313131313131313132424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242|-1UQF0 deo0 8lz0 16p0 11z0 1dd0 2zQN0 1lb0 14p0 1lb0 14q0 1lb0 14p0 1nX0 11B0 1nX0 1fB0 WL0 1fB0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 U10 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1wn0 Rc0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e3\",\"America/Paramaribo|LMT PMT PMT -0330 -03|3E.E 3E.Q 3E.A 3u 30|01234|-2nDUj.k Wqo0.c qanX.I 1yVXN.o|24e4\",\"America/Port-au-Prince|LMT PPMT EST EDT|4N.k 4N 50 40|012323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-3eLva.E 15RLX.E 2FnMb 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14q0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 i6n0 1nX0 11B0 1nX0 d430 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 3iN0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e5\",\"America/Rio_Branco|LMT -05 -04|4v.c 50 40|01212121212121212121212121212121|-2glvs.M HdLs.M 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 NBd0 d5X0|31e4\",\"America/Porto_Velho|LMT -04 -03|4f.A 40 30|012121212121212121212121212121|-2glvI.o HdKI.o 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0|37e4\",\"America/Punta_Arenas|LMT SMT -05 -04 -03|4H.E 4G.J 50 40 30|01213132323232323232343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434|-3eLvg.k MJbX.5 fJAh.f 5knG.J 1Vzh.f jRAG.J 1pbh.f 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 nHX0 op0 blz0 ko0 Qeo0 WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0|\",\"America/Winnipeg|LMT CST CDT CWT CPT|6s.A 60 50 50 50|0121212134121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3kLtv.o 1a3bv.o WL0 3ND0 1in0 Jap0 Rb0 aCN0 8x30 iw0 1tB0 11z0 1ip0 11z0 1o10 11z0 1o10 11z0 1rd0 10L0 1op0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 1cL0 1cN0 11z0 6i10 WL0 6i10 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1a00 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1o00 14o0 1lc0 14o0 1lc0 14o0 1o00 11A0 1o00 11A0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|66e4\",\"America/Rankin_Inlet|-00 CST CDT EST|0 60 50 50|01212121212121212121212121212121212121212121212121212121212321212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-vDc0 Bjk0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|26e2\",\"America/Recife|LMT -03 -02|2j.A 30 20|0121212121212121212121212121212121212121|-2glxE.o HdLE.o 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 nsp0 WL0 1tB0 2L0 2pB0 On0|33e5\",\"America/Regina|LMT MST MDT MWT MPT CST|6W.A 70 60 60 60 60|012121212121212121212121341212121212121212121212121215|-2AD51.o uHe1.o 1in0 s2L0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 66N0 1cL0 1cN0 19X0 1fB0 1cL0 1fB0 1cL0 1cN0 1cL0 M30 8x20 ix0 1ip0 1cL0 1ip0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 3NB0 1cL0 1cN0|19e4\",\"America/Resolute|-00 CST CDT EST|0 60 50 50|01212121212121212121212121212121212121212121212121212121212321212121212321212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-SnA0 103I0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|229\",\"America/Santarem|LMT -04 -03|3C.M 40 30|0121212121212121212121212121212|-2glwl.c HdLl.c 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 qe10 xb0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 NBd0|21e4\",\"America/Santiago|LMT SMT -05 -04 -03|4G.J 4G.J 50 40 30|0121313232323232323432343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434|-3eLvh.f MJc0 fJAh.f 5knG.J 1Vzh.f jRAG.J 1pbh.f 11d0 1oL0 11d0 1oL0 11d0 1oL0 11d0 1pb0 11d0 nHX0 op0 9Bz0 hX0 1q10 ko0 Qeo0 WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1zb0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0|62e5\",\"America/Santo_Domingo|LMT SDMT EST EDT -0430 AST|4D.A 4E 50 40 4u 40|012324242424242525|-3eLvk.o 1Jic0.o 1lJMk Mn0 6sp0 Lbu 1Cou yLu 1RAu wLu 1QMu xzu 1Q0u xXu 1PAu 13jB0 e00|29e5\",\"America/Sao_Paulo|LMT -03 -02|36.s 30 20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glwR.w HdKR.w 1cc0 1e10 1bX0 Ezd0 So0 1vA0 Mn0 1BB0 ML0 1BB0 zX0 pTd0 PX0 2ep0 nz0 1C10 zX0 1C10 LX0 1C10 Mn0 H210 Rb0 1tB0 IL0 1Fd0 FX0 1EN0 FX0 1HB0 Lz0 1EN0 Lz0 1C10 IL0 1HB0 Db0 1HB0 On0 1zd0 On0 1zd0 Lz0 1zd0 Rb0 1wN0 Wn0 1tB0 Rb0 1tB0 WL0 1tB0 Rb0 1zd0 On0 1HB0 FX0 1C10 Lz0 1Ip0 HX0 1zd0 On0 1HB0 IL0 1wp0 On0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 Rb0 1zd0 Lz0 1C10 Lz0 1C10 On0 1zd0 On0 1zd0 On0 1zd0 On0 1HB0 FX0|20e6\",\"America/Scoresbysund|LMT -02 -01 +00|1r.Q 20 10 0|012132323232323232323232323232323232323232323232323232323232323232323232323232323232323232121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2a5Ww.8 2z5ew.8 1a00 1cK0 1cL0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 2pA0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|452\",\"America/Sitka|LMT LMT PST PWT PPT PDT YST AKST AKDT|-eW.L 91.d 80 70 70 70 90 90 80|0123425252525252525252525252525252567878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787|-48Pzs.L 1jVwu 1EX0W.L 8x10 iy0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 co0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|90e2\",\"America/St_Johns|LMT NST NDT NST NDT NWT NPT NDDT|3u.Q 3u.Q 2u.Q 3u 2u 2u 2u 1u|012121212121212121212121212121212121213434343434343435634343434343434343434343434343434343434343434343434343434343434343434343434343434343437343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-3tokt.8 1l020 14L0 1nB0 1in0 1gm0 Dz0 1JB0 1cL0 1cN0 1cL0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 1cL0 1cN0 1cL0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 19X0 1fB0 1cL0 1fB0 19X0 1fB0 19X0 10O0 eKX.8 19X0 1iq0 WL0 1qN0 WL0 1qN0 WL0 1tB0 TX0 1tB0 WL0 1qN0 WL0 1qN0 7UHu itu 1tB0 WL0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1tB0 WL0 1ld0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14n1 1lb0 14p0 1nW0 11C0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zcX Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|11e4\",\"America/Swift_Current|LMT MST MDT MWT MPT CST|7b.k 70 60 60 60 60|012134121212121212121215|-2AD4M.E uHdM.E 1in0 UGp0 8x20 ix0 1o10 17b0 1ip0 11z0 1o10 11z0 1o10 11z0 isN0 1cL0 3Cp0 1cL0 1cN0 11z0 1qN0 WL0 pMp0|16e3\",\"America/Tegucigalpa|LMT CST CDT|5M.Q 60 50|01212121|-1WGGb.8 2ETcb.8 WL0 1qN0 WL0 GRd0 AL0|11e5\",\"America/Thule|LMT AST ADT|4z.8 40 30|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2a5To.Q 31NBo.Q 1cL0 1cN0 1cL0 1fB0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|656\",\"America/Vancouver|LMT PST PDT PWT PPT|8c.s 80 70 70 70|01213412121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3tofL.w 1nspL.w 1in0 UGp0 8x10 iy0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|23e5\",\"America/Whitehorse|LMT YST YDT YWT YPT YDDT PST PDT MST|90.c 90 80 80 80 70 80 70 70|0121213415167676767676767676767676767676767676767676767676767676767676767676767676767676767678|-2MSeX.M GWpX.M 1in0 1o10 13V0 Ser0 8x00 iz0 LCL0 1fA0 LA0 ytd0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1z90|23e3\",\"America/Yakutat|LMT LMT YST YWT YPT YDT AKST AKDT|-eF.5 9i.T 90 80 80 80 90 80|0123425252525252525252525252525252526767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676|-48Pzs.L 1jVwL.G 1EX1F.5 8x00 iz0 Vo10 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 s10 1Vz0 LB0 1BX0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 cn0 10q0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|642\",\"Antarctica/Casey|-00 +08 +11|0 -80 -b0|012121212121212121|-2q00 1DjS0 T90 40P0 KL0 blz0 3m10 1o30 14k0 1kr0 12l0 1o01 14kX 1lf1 14kX 1lf1 13bX|10\",\"Antarctica/Davis|-00 +07 +05|0 -70 -50|01012121|-vyo0 iXt0 alj0 1D7v0 VB0 3Wn0 KN0|70\",\"Pacific/Port_Moresby|LMT PMMT +10|-9M.E -9M.w -a0|012|-3D8VM.E AvA0.8|25e4\",\"Antarctica/Macquarie|-00 AEST AEDT|0 -a0 -b0|0121012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-2OPc0 Fb40 1a00 4SK0 1ayy0 Lvs0 1cM0 1o00 Rc0 1wo0 Rc0 1wo0 U00 1wo0 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1qM0 WM0 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1wo0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 11A0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 11A0 1o00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1cM0 1cM0 3Co0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0|1\",\"Antarctica/Mawson|-00 +06 +05|0 -60 -50|012|-CEo0 2fyk0|60\",\"Pacific/Auckland|LMT NZMT NZST NZST NZDT|-bD.4 -bu -cu -c0 -d0|012131313131313131313131313134343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434|-46jLD.4 2nEO9.4 Lz0 1tB0 11zu 1o0u 11zu 1o0u 11zu 1o0u 14nu 1lcu 14nu 1lcu 1lbu 11Au 1nXu 11Au 1nXu 11Au 1nXu 11Au 1nXu 11Au 1qLu WMu 1qLu 11Au 1n1bu IM0 1C00 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1qM0 14o0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1io0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00|14e5\",\"Antarctica/Palmer|-00 -03 -04 -02|0 30 40 20|0121212121213121212121212121212121212121212121212121212121212121212121212121212121|-cao0 nD0 1vd0 SL0 1vd0 17z0 1cN0 1fz0 1cN0 1cL0 1cN0 asn0 Db0 jsN0 14N0 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0|40\",\"Antarctica/Rothera|-00 -03|0 30|01|gOo0|130\",\"Asia/Riyadh|LMT +03|-36.Q -30|01|-TvD6.Q|57e5\",\"Antarctica/Troll|-00 +00 +02|0 0 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|1puo0 hd0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|40\",\"Antarctica/Vostok|-00 +07 +05|0 -70 -50|01012|-tjA0 1rWh0 1Nj0 1aTv0|25\",\"Europe/Berlin|LMT CET CEST CEMT|-R.s -10 -20 -30|012121212121212321212321212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-36RcR.s UbWR.s 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 kL0 Nc0 m10 WM0 1ao0 1cp0 dX0 jz0 Dd0 1io0 17c0 1fA0 1a00 1ehA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|41e5\",\"Asia/Almaty|LMT +05 +06 +07|-57.M -50 -60 -70|0123232323232323232323212323232323232323232323232321|-1Pc57.M eUo7.M 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 L4m0|15e5\",\"Asia/Amman|LMT EET EEST +03|-2n.I -20 -30 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212123|-1yW2n.I 1HiMn.I KL0 1oN0 11b0 1oN0 11b0 1pd0 1dz0 1cp0 11b0 1op0 11b0 fO10 1db0 1e10 1cL0 1cN0 1cL0 1cN0 1fz0 1pd0 10n0 1ld0 14n0 1hB0 15b0 1ip0 19X0 1cN0 1cL0 1cN0 17b0 1ld0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1So0 y00 1fc0 1dc0 1co0 1dc0 1cM0 1cM0 1cM0 1o00 11A0 1lc0 17c0 1cM0 1cM0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 4bX0 Dd0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 LA0 1C00|25e5\",\"Asia/Anadyr|LMT +12 +13 +14 +11|-bN.U -c0 -d0 -e0 -b0|01232121212121212121214121212121212121212121212121212121212141|-1PcbN.U eUnN.U 23CL0 1db0 2q10 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|13e3\",\"Asia/Aqtau|LMT +04 +05 +06|-3l.4 -40 -50 -60|012323232323232323232123232312121212121212121212|-1Pc3l.4 eUnl.4 24PX0 2pX0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|15e4\",\"Asia/Aqtobe|LMT +04 +05 +06|-3M.E -40 -50 -60|0123232323232323232321232323232323232323232323232|-1Pc3M.E eUnM.E 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0|27e4\",\"Asia/Ashgabat|LMT +04 +05 +06|-3R.w -40 -50 -60|0123232323232323232323212|-1Pc3R.w eUnR.w 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0|41e4\",\"Asia/Atyrau|LMT +03 +05 +06 +04|-3r.I -30 -50 -60 -40|01232323232323232323242323232323232324242424242|-1Pc3r.I eUor.I 24PW0 2pX0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 2sp0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|\",\"Asia/Baghdad|LMT BMT +03 +04|-2V.E -2V.A -30 -40|0123232323232323232323232323232323232323232323232323232|-3eLCV.E 18ao0.4 2ACnV.A 11b0 1cp0 1dz0 1dd0 1db0 1cN0 1cp0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1de0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0 1dc0 1dc0 1cM0 1dc0 1cM0 1dc0 1cM0 1dc0|66e5\",\"Asia/Qatar|LMT +04 +03|-3q.8 -40 -30|012|-21Jfq.8 27BXq.8|96e4\",\"Asia/Baku|LMT +03 +04 +05|-3j.o -30 -40 -50|01232323232323232323232123232323232323232323232323232323232323232|-1Pc3j.o 1jUoj.o WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cM0 9Je0 1o00 11z0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|27e5\",\"Asia/Bangkok|LMT BMT +07|-6G.4 -6G.4 -70|012|-3D8SG.4 1C000|15e6\",\"Asia/Barnaul|LMT +06 +07 +08|-5z -60 -70 -80|0123232323232323232323212323232321212121212121212121212121212121212|-21S5z pCnz 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 p90 LE0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|\",\"Asia/Beirut|LMT EET EEST|-2m -20 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3D8Om 1BWom 1on0 1410 1db0 19B0 1in0 1ip0 WL0 1lQp0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 q6N0 En0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1op0 11b0 dA10 17b0 1iN0 17b0 1iN0 17b0 1iN0 17b0 1vB0 SL0 1mp0 13z0 1iN0 17b0 1iN0 17b0 1jd0 12n0 1a10 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0|22e5\",\"Asia/Bishkek|LMT +05 +06 +07|-4W.o -50 -60 -70|012323232323232323232321212121212121212121212121212|-1Pc4W.o eUnW.o 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2e00 1tX0 17b0 1ip0 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1cPu 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0|87e4\",\"Asia/Brunei|LMT +0730 +08 +0820 +09|-7l.k -7u -80 -8k -90|0123232323232323242|-1KITl.k gDbP.k 6ynu AnE 1O0k AnE 1NAk AnE 1NAk AnE 1NAk AnE 1O0k AnE 1NAk AnE pAk 8Fz0|42e4\",\"Asia/Kolkata|LMT HMT MMT IST +0630|-5R.s -5R.k -5l.a -5u -6u|01234343|-4Fg5R.s BKo0.8 1rDcw.a 1r2LP.a 1un0 HB0 7zX0|15e6\",\"Asia/Chita|LMT +08 +09 +10|-7x.Q -80 -90 -a0|012323232323232323232321232323232323232323232323232323232323232312|-21Q7x.Q pAnx.Q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3re0|33e4\",\"Asia/Ulaanbaatar|LMT +07 +08 +09|-77.w -70 -80 -90|012323232323232323232323232323232323232323232323232|-2APH7.w 2Uko7.w cKn0 1db0 1dd0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 6hD0 11z0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 kEp0 1cJ0 1cP0 1cJ0|12e5\",\"Asia/Shanghai|LMT CST CDT|-85.H -80 -90|012121212121212121212121212121|-2M0U5.H Iuo5.H 18n0 OjB0 Rz0 11d0 1wL0 A10 8HX0 1G10 Tz0 1ip0 1jX0 1cN0 11b0 1oN0 aL0 1tU30 Rb0 1o10 11z0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0|23e6\",\"Asia/Colombo|LMT MMT +0530 +06 +0630|-5j.o -5j.w -5u -60 -6u|012342432|-3D8Rj.o 13inX.Q 1rFbN.w 1zzu 7Apu 23dz0 11zu n3cu|22e5\",\"Asia/Dhaka|LMT HMT +0630 +0530 +06 +07|-61.E -5R.k -6u -5u -60 -70|01232454|-3eLG1.E 26008.k 1unn.k HB0 m6n0 2kxbu 1i00|16e6\",\"Asia/Damascus|LMT EET EEST +03|-2p.c -20 -30 -30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212123|-21Jep.c Hep.c 17b0 1ip0 17b0 1ip0 17b0 1ip0 19X0 1xRB0 11X0 1oN0 10L0 1pB0 11b0 1oN0 10L0 1mp0 13X0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 1pd0 11b0 1oN0 Nb0 1AN0 Nb0 bcp0 19X0 1gp0 19X0 3ld0 1xX0 Vd0 1Bz0 Sp0 1vX0 10p0 1dz0 1cN0 1cL0 1db0 1db0 1g10 1an0 1ap0 1db0 1fd0 1db0 1cN0 1db0 1dd0 1db0 1cp0 1dz0 1c10 1dX0 1cN0 1db0 1dd0 1db0 1cN0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1db0 1cN0 1db0 1cN0 19z0 1fB0 1qL0 11B0 1on0 Wp0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0|26e5\",\"Asia/Dili|LMT +08 +09|-8m.k -80 -90|01212|-2le80 1dnX0 1nfA0 Xld0|19e4\",\"Asia/Dubai|LMT +04|-3F.c -40|01|-21JfF.c|39e5\",\"Asia/Dushanbe|LMT +05 +06 +07|-4z.c -50 -60 -70|012323232323232323232321|-1Pc4z.c eUnz.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2hB0|76e4\",\"Asia/Famagusta|LMT EET EEST +03|-2f.M -20 -30 -30|0121212121212121212121212121212121212121212121212121212121212121212121212121212121212312121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1Vc2f.M 2a3cf.M 1cL0 1qp0 Xz0 19B0 19X0 1fB0 1db0 1cp0 1cL0 1fB0 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1o30 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 15U0 2Ks0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|\",\"Asia/Gaza|LMT EET EEST IST IDT|-2h.Q -20 -30 -20 -30|0121212121212121212121212121212121234343434343434343434343434343431212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2MBCh.Q 1Azeh.Q MM0 iM0 4JA0 10o0 1pA0 10M0 1pA0 16o0 1jA0 16o0 1jA0 pBa0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 dW0 hfB0 Db0 1fB0 Rb0 bXB0 gM0 8Q00 IM0 1wo0 TX0 1HB0 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 M10 C00 17c0 1io0 17c0 1io0 17c0 1o00 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 17c0 1io0 18N0 1bz0 19z0 1gp0 1610 1iL0 11z0 1o10 14o0 1lA1 SKX 1xd1 MKX 1AN0 1a00 1fA0 1cL0 1cN0 1nX0 1210 1nA0 1210 1qL0 WN0 1qL0 WN0 1qL0 11c0 1on0 11B0 1o00 11A0 1qo0 XA0 1qp0 1cN0 1cL0 1a10 1fz0 17d0 1in0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1lb0 14p0 1in0 17d0 1cL0 1cN0 19X0 1fB0 14n0 jB0 2L0 11B0 WL0 gN0 8n0 11B0 TX0 gN0 bb0 11B0 On0 jB0 dX0 11B0 Lz0 gN0 mn0 WN0 IL0 gN0 pb0 WN0 Db0 jB0 rX0 11B0 xz0 gN0 xz0 11B0 rX0 jB0 An0 11B0 pb0 gN0 IL0 WN0 mn0 gN0 Lz0 WN0 gL0 jB0 On0 11B0 bb0 gN0 TX0 11B0 5z0 jB0 WL0 11B0 2L0 jB0 11z0 1ip0 19X0 1cN0 1cL0 17d0 1in0 14p0 1lb0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1nX0 14p0 1in0 17d0 1fz0 1a10 19X0 1fB0 17b0 gN0 2L0 WN0 14n0 gN0 5z0 WN0 WL0 jB0 8n0 11B0 Rb0 gN0 dX0 11B0 Lz0 jB0 gL0 11B0 IL0 jB0 mn0 WN0 FX0 gN0 rX0 WN0 An0 jB0 uL0 11B0 uL0 gN0 An0 11B0 rX0 gN0 Db0 11B0 mn0 jB0 FX0 11B0 jz0 gN0 On0 WN0 dX0 jB0 Rb0 WN0 bb0 jB0 TX0 11B0 5z0 gN0 11z0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0|18e5\",\"Asia/Hebron|LMT EET EEST IST IDT|-2k.n -20 -30 -20 -30|012121212121212121212121212121212123434343434343434343434343434343121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2MBCk.n 1Azek.n MM0 iM0 4JA0 10o0 1pA0 10M0 1pA0 16o0 1jA0 16o0 1jA0 pBa0 Vz0 1oN0 11b0 1oO0 10N0 1pz0 10N0 1pb0 10N0 1pb0 10N0 1pb0 10N0 1pz0 10N0 1pb0 10N0 1pb0 11d0 1oL0 dW0 hfB0 Db0 1fB0 Rb0 bXB0 gM0 8Q00 IM0 1wo0 TX0 1HB0 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 M10 C00 17c0 1io0 17c0 1io0 17c0 1o00 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 17c0 1io0 18N0 1bz0 19z0 1gp0 1610 1iL0 12L0 1mN0 14o0 1lc0 Tb0 1xd1 MKX bB0 cn0 1cN0 1a00 1fA0 1cL0 1cN0 1nX0 1210 1nA0 1210 1qL0 WN0 1qL0 WN0 1qL0 11c0 1on0 11B0 1o00 11A0 1qo0 XA0 1qp0 1cN0 1cL0 1a10 1fz0 17d0 1in0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1lb0 14p0 1in0 17d0 1cL0 1cN0 19X0 1fB0 14n0 jB0 2L0 11B0 WL0 gN0 8n0 11B0 TX0 gN0 bb0 11B0 On0 jB0 dX0 11B0 Lz0 gN0 mn0 WN0 IL0 gN0 pb0 WN0 Db0 jB0 rX0 11B0 xz0 gN0 xz0 11B0 rX0 jB0 An0 11B0 pb0 gN0 IL0 WN0 mn0 gN0 Lz0 WN0 gL0 jB0 On0 11B0 bb0 gN0 TX0 11B0 5z0 jB0 WL0 11B0 2L0 jB0 11z0 1ip0 19X0 1cN0 1cL0 17d0 1in0 14p0 1lb0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1nX0 14p0 1in0 17d0 1fz0 1a10 19X0 1fB0 17b0 gN0 2L0 WN0 14n0 gN0 5z0 WN0 WL0 jB0 8n0 11B0 Rb0 gN0 dX0 11B0 Lz0 jB0 gL0 11B0 IL0 jB0 mn0 WN0 FX0 gN0 rX0 WN0 An0 jB0 uL0 11B0 uL0 gN0 An0 11B0 rX0 gN0 Db0 11B0 mn0 jB0 FX0 11B0 jz0 gN0 On0 WN0 dX0 jB0 Rb0 WN0 bb0 jB0 TX0 11B0 5z0 gN0 11z0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0|25e4\",\"Asia/Ho_Chi_Minh|LMT PLMT +07 +08 +09|-76.u -76.u -70 -80 -90|0123423232|-2yC76.u bK00 1h7b6.u 5lz0 18o0 3Oq0 k5c0 aVX0 BAM0|90e5\",\"Asia/Hong_Kong|LMT HKT HKST HKWT JST|-7A.G -80 -90 -8u -90|0123412121212121212121212121212121212121212121212121212121212121212121|-2CFH0 1taO0 Hc0 xUu 9tBu 11z0 1tDu Rc0 1wo0 11A0 1cM0 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1nX0 U10 1tz0 U10 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 Rd0 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 17d0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1cL0 6fd0 14n0|73e5\",\"Asia/Hovd|LMT +06 +07 +08|-66.A -60 -70 -80|012323232323232323232323232323232323232323232323232|-2APG6.A 2Uko6.A cKn0 1db0 1dd0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 6hD0 11z0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 kEp0 1cJ0 1cP0 1cJ0|81e3\",\"Asia/Irkutsk|LMT IMT +07 +08 +09|-6V.5 -6V.5 -70 -80 -90|012343434343434343434343234343434343434343434343434343434343434343|-3D8SV.5 1Bxc0 pjXV.5 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|60e4\",\"Europe/Istanbul|LMT IMT EET EEST +03 +04|-1T.Q -1U.U -20 -30 -30 -40|01232323232323232323232323232323232323232323232345423232323232323232323232323232323232323232323232323232323232323234|-3D8NT.Q 1ePXW.U dzzU.U 11b0 8tB0 1on0 1410 1db0 19B0 1in0 3Rd0 Un0 1oN0 11b0 zSN0 CL0 mp0 1Vz0 1gN0 8yn0 1yp0 ML0 1kp0 17b0 1ip0 17b0 1fB0 19X0 1ip0 19X0 1ip0 17b0 qdB0 38L0 1jd0 Tz0 l6O0 11A0 WN0 1qL0 TB0 1tX0 U10 1tz0 11B0 1in0 17d0 z90 cne0 pb0 2Cp0 1800 14o0 1dc0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1a00 1fA0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WO0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 Xc0 1qo0 WM0 1qM0 11A0 1o00 1200 1nA0 11A0 1tA0 U00 15w0|13e6\",\"Asia/Jakarta|LMT BMT +0720 +0730 +09 +08 WIB|-77.c -77.c -7k -7u -90 -80 -70|012343536|-49jH7.c 2hiLL.c luM0 mPzO 8vWu 6kpu 4PXu xhcu|31e6\",\"Asia/Jayapura|LMT +09 +0930 WIT|-9m.M -90 -9u -90|0123|-1uu9m.M sMMm.M L4nu|26e4\",\"Asia/Jerusalem|LMT JMT IST IDT IDDT|-2k.S -2k.E -20 -30 -40|012323232323232432323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-3D8Ok.S 1wvA0.e SyOk.E MM0 iM0 4JA0 10o0 1pA0 10M0 1pA0 16o0 1jA0 16o0 1jA0 3LA0 Eo0 oo0 1co0 1dA0 16o0 10M0 1jc0 1tA0 14o0 1cM0 1a00 11A0 1Nc0 Ao0 1Nc0 Ao0 1Ko0 LA0 1o00 WM0 EQK0 Db0 1fB0 Rb0 bXB0 gM0 8Q00 IM0 1wo0 TX0 1HB0 IL0 1s10 10n0 1o10 WL0 1zd0 On0 1ld0 11z0 1o10 14n0 1o10 14n0 1nd0 12n0 1nd0 Xz0 1q10 12n0 1hB0 1dX0 1ep0 1aL0 1eN0 17X0 1nf0 11z0 1tB0 19W0 1e10 17b0 1ep0 1gL0 18N0 1fz0 1eN0 17b0 1gq0 1gn0 19d0 1dz0 1c10 17X0 1hB0 1gn0 19d0 1dz0 1c10 17X0 1kp0 1dz0 1c10 1aL0 1eN0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1rz0 W10 1rz0 W10 1rz0 10N0 1oL0 10N0 1oL0 10N0 1oL0|81e4\",\"Asia/Kabul|LMT +04 +0430|-4A.M -40 -4u|012|-3eLEA.M 2dTcA.M|46e5\",\"Asia/Kamchatka|LMT +11 +12 +13|-ay.A -b0 -c0 -d0|012323232323232323232321232323232323232323232323232323232323212|-1SLKy.A ivXy.A 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|18e4\",\"Asia/Karachi|LMT +0530 +0630 +05 PKT PKST|-4s.c -5u -6u -50 -50 -60|012134545454|-2xoss.c 1qOKW.c 7zX0 eup0 LqMu 1fy00 1cL0 dK10 11b0 1610 1jX0|24e6\",\"Asia/Urumqi|LMT +06|-5O.k -60|01|-1GgtO.k|32e5\",\"Asia/Kathmandu|LMT +0530 +0545|-5F.g -5u -5J|012|-21JhF.g 2EGMb.g|12e5\",\"Asia/Khandyga|LMT +08 +09 +10 +11|-92.d -80 -90 -a0 -b0|0123232323232323232323212323232323232323232323232343434343434343432|-21Q92.d pAp2.d 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 qK0 yN0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 17V0 7zD0|66e2\",\"Asia/Krasnoyarsk|LMT +06 +07 +08|-6b.q -60 -70 -80|01232323232323232323232123232323232323232323232323232323232323232|-21Hib.q prAb.q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|10e5\",\"Asia/Kuala_Lumpur|LMT SMT +07 +0720 +0730 +09 +08|-6T.p -6T.p -70 -7k -7u -90 -80|01234546|-2M0ST.p aIM0 17anT.p l5XE 17bO 8Fyu 1so10|71e5\",\"Asia/Macau|LMT CST +09 +10 CDT|-7y.a -80 -90 -a0 -90|012323214141414141414141414141414141414141414141414141414141414141414141|-2CFHy.a 1uqKy.a PX0 1kn0 15B0 11b0 4Qq0 1oM0 11c0 1ko0 1u00 11A0 1cM0 11c0 1o00 11A0 1o00 11A0 1oo0 1400 1o00 11A0 1o00 U00 1tA0 U00 1wo0 Rc0 1wru U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 Rd0 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 17d0 1cK0 1cO0 1cK0 1cO0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 s10 1Vz0 1cN0 1cL0 1cN0 1cL0 6fd0 14n0|57e4\",\"Asia/Magadan|LMT +10 +11 +12|-a3.c -a0 -b0 -c0|012323232323232323232321232323232323232323232323232323232323232312|-1Pca3.c eUo3.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3Cq0|95e3\",\"Asia/Makassar|LMT MMT +08 +09 WITA|-7V.A -7V.A -80 -90 -80|01234|-21JjV.A vfc0 myLV.A 8ML0|15e5\",\"Asia/Manila|LMT LMT PST PDT JST|fU.8 -83.Q -80 -90 -90|012323432323232|-54m83.Q 2d8A3.Q 1urM0 un0 bW10 nb0 7qo0 1MM0 klB0 lz0 TwN0 1bb0 uNB0 rz0|24e6\",\"Asia/Nicosia|LMT EET EEST|-2d.s -20 -30|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-1Vc2d.s 2a3cd.s 1cL0 1qp0 Xz0 19B0 19X0 1fB0 1db0 1cp0 1cL0 1fB0 19X0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1cL0 1cN0 1cL0 1cN0 1o30 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|32e4\",\"Asia/Novokuznetsk|LMT +06 +07 +08|-5M.M -60 -70 -80|012323232323232323232321232323232323232323232323232323232323212|-1PctM.M eULM.M 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|55e4\",\"Asia/Novosibirsk|LMT +06 +07 +08|-5v.E -60 -70 -80|0123232323232323232323212323212121212121212121212121212121212121212|-21Qnv.E pAFv.E 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 ml0 Os0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 4eN0|15e5\",\"Asia/Omsk|LMT +05 +06 +07|-4R.u -50 -60 -70|01232323232323232323232123232323232323232323232323232323232323232|-224sR.u pMLR.u 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|12e5\",\"Asia/Oral|LMT +03 +05 +06 +04|-3p.o -30 -50 -60 -40|01232323232323232424242424242424242424242424242|-1Pc3p.o eUop.o 23CK0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 1cM0 IM0 1EM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0|27e4\",\"Asia/Pontianak|LMT PMT +0730 +09 +08 WITA WIB|-7h.k -7h.k -7u -90 -80 -80 -70|012324256|-2ua7h.k XE00 munL.k 8Rau 6kpu 4PXu xhcu Wqnu|23e4\",\"Asia/Pyongyang|LMT KST JST KST|-8n -8u -90 -90|012313|-2um8n 97XR 1lTzu 2Onc0 6BA0|29e5\",\"Asia/Qostanay|LMT +04 +05 +06|-4e.s -40 -50 -60|0123232323232323232321232323232323232323232323232|-1Pc4e.s eUoe.s 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 Mv90|\",\"Asia/Qyzylorda|LMT +04 +05 +06|-4l.Q -40 -50 -60|01232323232323232323232323232323232323232323232|-1Pc4l.Q eUol.Q 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 3ao0 1EM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 zQl0|73e4\",\"Asia/Rangoon|LMT RMT +0630 +09|-6o.L -6o.L -6u -90|01232|-3D8So.L 1BnA0 SmnS.L 7j9u|48e5\",\"Asia/Sakhalin|LMT +09 +11 +12 +10|-9u.M -90 -b0 -c0 -a0|01232323232323232323232423232323232424242424242424242424242424242|-2AGVu.M 1BoMu.M 1qFa0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 2pB0 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|58e4\",\"Asia/Samarkand|LMT +04 +05 +06|-4r.R -40 -50 -60|01232323232323232323232|-1Pc4r.R eUor.R 23CL0 3Db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0|36e4\",\"Asia/Seoul|LMT KST JST KST KDT KDT|-8r.Q -8u -90 -90 -a0 -9u|012343434343151515151515134343|-2um8r.Q 97XV.Q 1m1zu 6CM0 Fz0 1kN0 14n0 1kN0 14L0 1zd0 On0 69B0 2I0u OL0 1FB0 Rb0 1qN0 TX0 1tB0 TX0 1tB0 TX0 1tB0 TX0 2ap0 12FBu 11A0 1o00 11A0|23e6\",\"Asia/Srednekolymsk|LMT +10 +11 +12|-ae.Q -a0 -b0 -c0|01232323232323232323232123232323232323232323232323232323232323232|-1Pcae.Q eUoe.Q 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|35e2\",\"Asia/Taipei|LMT CST JST CDT|-86 -80 -90 -90|012131313131313131313131313131313131313131|-30bk6 1FDc6 joM0 1yo0 Tz0 1ip0 1jX0 1cN0 11b0 1oN0 11b0 1oN0 11b0 1oN0 11b0 10N0 1BX0 10p0 1pz0 10p0 1pz0 10p0 1db0 1dd0 1db0 1cN0 1db0 1cN0 1db0 1cN0 1db0 1BB0 ML0 1Bd0 ML0 uq10 1db0 1cN0 1db0 97B0 AL0|74e5\",\"Asia/Tashkent|LMT +05 +06 +07|-4B.b -50 -60 -70|012323232323232323232321|-1Pc4B.b eUnB.b 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0|23e5\",\"Asia/Tbilisi|LMT TBMT +03 +04 +05|-2X.b -2X.b -30 -40 -50|01234343434343434343434323232343434343434343434323|-3D8OX.b 1LUM0 1jUnX.b WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cK0 1cL0 1cN0 1cL0 1cN0 2pz0 1cL0 1fB0 3Nz0 11B0 1nX0 11B0 1qL0 WN0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 An0 Os0 WM0|11e5\",\"Asia/Tehran|LMT TMT +0330 +0430 +04 +05|-3p.I -3p.I -3u -4u -40 -50|012345423232323232323232323232323232323232323232323232323232323232323232|-2btDp.I Llc0 1FHaT.I 1pc0 120u Rc0 Dc0 1iMu JX0 1dB0 1en0 pNB0 UL0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 64p0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0 1cp0 1dz0 1cp0 1dz0 1cN0 1dz0 1cp0 1dz0|14e6\",\"Asia/Thimphu|LMT +0530 +06|-5W.A -5u -60|012|-Su5W.A 1BGMs.A|79e3\",\"Asia/Tokyo|LMT JST JDT|-9i.X -90 -a0|0121212121|-3jE90 2qSo0 Rc0 1lc0 14o0 1zc0 Oo0 1zc0 Oo0|38e6\",\"Asia/Tomsk|LMT +06 +07 +08|-5D.P -60 -70 -80|0123232323232323232323212323232323232323232323212121212121212121212|-21NhD.P pxzD.P 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 co0 1bB0 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3Qp0|10e5\",\"Asia/Ust-Nera|LMT +08 +09 +12 +11 +10|-9w.S -80 -90 -c0 -b0 -a0|012343434343434343434345434343434343434343434343434343434343434345|-21Q9w.S pApw.S 23CL0 1d90 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 17V0 7zD0|65e2\",\"Asia/Vladivostok|LMT +09 +10 +11|-8L.v -90 -a0 -b0|01232323232323232323232123232323232323232323232323232323232323232|-1SJIL.v itXL.v 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|60e4\",\"Asia/Yakutsk|LMT +08 +09 +10|-8C.W -80 -90 -a0|01232323232323232323232123232323232323232323232323232323232323232|-21Q8C.W pAoC.W 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|28e4\",\"Asia/Yekaterinburg|LMT PMT +04 +05 +06|-42.x -3J.5 -40 -50 -60|012343434343434343434343234343434343434343434343434343434343434343|-2ag42.x 7mQh.s qBvJ.5 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|14e5\",\"Asia/Yerevan|LMT +03 +04 +05|-2W -30 -40 -50|0123232323232323232323212121212323232323232323232323232323232|-1Pc2W 1jUnW WCL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 2pB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 4RX0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0|13e5\",\"Atlantic/Azores|LMT HMT -02 -01 +00 WET WEST|1G.E 1S.w 20 10 0 0 -10|012323232323232323232323232323232323232323232343234323432343232323232323232323232323232323232323232323434343434343434343434356434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-3tomh.k 18aoh.k aPX0 Sp0 M00 1vb0 SN0 1vb0 SN0 1vb0 Td0 1vb0 SN0 1vb0 6600 18o0 3I00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1uo0 1c00 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 CT90 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 Ap0 An0 wo0 Eo0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|25e4\",\"Atlantic/Bermuda|LMT BMT BST AST ADT|4j.i 4j.i 3j.i 40 30|0121213434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-3eLvE.G 16mo0 1bb0 1i10 11X0 ru30 thbE.G 1PX0 11B0 1tz0 Rd0 1zb0 Op0 1zb0 3I10 Lz0 1EN0 FX0 1HB0 FX0 1Kp0 Db0 1Kp0 Db0 1Kp0 FX0 93d0 11z0 GAp0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1fz0 1a10 1fz0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 14p0 1lb0 14p0 1nX0 11B0 1nX0 11B0 1nX0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0 Op0 1zb0|65e3\",\"Atlantic/Canary|LMT -01 WET WEST|11.A 10 0 -10|01232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-1UtaW.o XPAW.o 1lAK0 1a10 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|54e4\",\"Atlantic/Cape_Verde|LMT -02 -01|1y.4 20 10|01212|-2ldW0 1eEo0 7zX0 1djf0|50e4\",\"Atlantic/Faroe|LMT WET WEST|r.4 0 -10|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2uSnw.U 2Wgow.U 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|49e3\",\"Atlantic/Madeira|LMT FMT -01 +00 +01 WET WEST|17.A 17.A 10 0 -10 0 -10|01232323232323232323232323232323232323232323234323432343234323232323232323232323232323232323232323232356565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565|-3tomQ.o 18anQ.o aPX0 Sp0 M00 1vb0 SN0 1vb0 SN0 1vb0 Td0 1vb0 SN0 1vb0 6600 18o0 3I00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1uo0 1c00 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 BJ90 1a00 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|27e4\",\"Atlantic/South_Georgia|LMT -02|2q.8 20|01|-3eLxx.Q|30\",\"Atlantic/Stanley|LMT SMT -04 -03 -02|3P.o 3P.o 40 30 20|0123232323232323434323232323232323232323232323232323232323232323232323|-3eLw8.A S200 12bA8.A 19X0 1fB0 19X0 1ip0 19X0 1fB0 19X0 1fB0 19X0 1fB0 Cn0 1Cc10 WL0 1qL0 U10 1tz0 2mN0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1tz0 U10 1tz0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1tz0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qL0 WN0 1qN0 U10 1wn0 Rd0 1wn0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1tz0 U10 1wn0 U10 1tz0 U10 1tz0 U10|21e2\",\"Australia/Sydney|LMT AEST AEDT|-a4.Q -a0 -b0|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-32oW4.Q RlC4.Q xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 14o0 1o00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 11A0 1o00 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0|40e5\",\"Australia/Adelaide|LMT ACST ACST ACDT|-9e.k -90 -9u -au|012323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-32oVe.k ak0e.k H1Bu xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 Oo0 1zc0 WM0 1qM0 Rc0 1zc0 U00 1tA0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0|11e5\",\"Australia/Brisbane|LMT AEST AEDT|-ac.8 -a0 -b0|012121212121212121|-32Bmc.8 Ry2c.8 xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 H1A0 Oo0 1zc0 Oo0 1zc0 Oo0|20e5\",\"Australia/Broken_Hill|LMT AEST ACST ACST ACDT|-9p.M -a0 -90 -9u -au|0123434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434|-32oVp.M 3Lzp.M 6wp0 H1Bu xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 14o0 1o00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1tA0 WM0 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0|18e3\",\"Australia/Hobart|LMT AEST AEDT|-9N.g -a0 -b0|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-3109N.g Pk1N.g 1a00 1qM0 Oo0 1zc0 Oo0 TAo0 yM0 1cM0 1cM0 1fA0 1a00 VfA0 1cM0 1o00 Rc0 1wo0 Rc0 1wo0 U00 1wo0 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 11A0 1qM0 WM0 1qM0 Oo0 1zc0 Oo0 1zc0 Oo0 1wo0 WM0 1tA0 WM0 1tA0 U00 1tA0 U00 1tA0 11A0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 11A0 1o00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0|21e4\",\"Australia/Darwin|LMT ACST ACST ACDT|-8H.k -90 -9u -au|01232323232|-32oUH.k ajXH.k H1Bu xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00|12e4\",\"Australia/Eucla|LMT +0845 +0945|-8z.s -8J -9J|01212121212121212121|-30nIz.s PkpO.s xc0 10jc0 yM0 1cM0 1cM0 1gSo0 Oo0 l5A0 Oo0 iJA0 G00 zU00 IM0 1qM0 11A0 1o00 11A0|368\",\"Australia/Lord_Howe|LMT AEST +1030 +1130 +11|-aA.k -a0 -au -bu -b0|01232323232424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424|-32oWA.k 3tzAA.k 1zdu Rb0 1zd0 On0 1zd0 On0 1zd0 On0 1zd0 TXu 1qMu WLu 1tAu WLu 1tAu TXu 1tAu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu 11zu 1o0u 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 11Au 1nXu 1qMu 11zu 1o0u 11zu 1o0u 11zu 1qMu WLu 1qMu 11zu 1o0u WLu 1qMu 14nu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1fzu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu 1cLu 1fAu 1cLu 1cMu 1cLu 1cMu 1cLu 1cMu|347\",\"Australia/Lindeman|LMT AEST AEDT|-9T.U -a0 -b0|0121212121212121212121|-32BlT.U Ry1T.U xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 H1A0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0|10\",\"Australia/Melbourne|LMT AEST AEDT|-9D.Q -a0 -b0|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212|-32oVD.Q RlBD.Q xc0 10jc0 yM0 1cM0 1cM0 1fA0 1a00 17c00 LA0 1C00 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 U00 1qM0 WM0 1qM0 11A0 1tA0 U00 1tA0 U00 1tA0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 11A0 1o00 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 14o0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0|39e5\",\"Australia/Perth|LMT AWST AWDT|-7H.o -80 -90|01212121212121212121|-30nHH.o PkpH.o xc0 10jc0 yM0 1cM0 1cM0 1gSo0 Oo0 l5A0 Oo0 iJA0 G00 zU00 IM0 1qM0 11A0 1o00 11A0|18e5\",\"Europe/Brussels|LMT BMT WET CET CEST WEST|-h.u -h.u 0 -10 -20 -10|012343434325252525252525252525252525252525252525252525434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-3D8Mh.u u1Ah.u SO00 3zX0 11c0 1iO0 11A0 1o00 11A0 my0 Ic0 1qM0 Rc0 1EM0 UM0 1u00 10o0 1io0 1io0 17c0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a30 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 y00 5Wn0 WM0 1fA0 1cM0 16M0 1iM0 16M0 1C00 Uo0 1eeo0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|21e5\",\"Pacific/Easter|LMT EMT -07 -06 -05|7h.s 7h.s 70 60 50|0123232323232323232323232323234343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434|-3eLsG.w 1HRc0 1s4IG.w WL0 1zd0 On0 1ip0 11z0 1o10 11z0 1qN0 WL0 1ld0 14n0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 2pA0 11z0 1o10 11z0 1qN0 WL0 1qN0 WL0 1qN0 1cL0 1cN0 11z0 1o10 11z0 1qN0 WL0 1fB0 19X0 1qN0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1ip0 1fz0 1fB0 11z0 1qN0 WL0 1qN0 WL0 1qN0 WL0 1qN0 11z0 1o10 11z0 1o10 11z0 1qN0 WL0 1qN0 17b0 1ip0 11z0 1o10 19X0 1fB0 1nX0 G10 1EL0 Op0 1zb0 Rd0 1wn0 Rd0 46n0 Ap0 1Nb0 Ap0 1Nb0 Ap0 1zb0 11B0 1nX0 11B0 1nX0 11B0 1nX0 14p0 1lb0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0 1nX0 11B0 1qL0 WN0 1qL0 11B0 1nX0 11B0 1nX0 11B0|30e2\",\"Europe/Athens|LMT AMT EET EEST CEST CET|-1y.Q -1y.Q -20 -30 -20 -10|0123234545232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-30SNy.Q OMM1 CNbx.Q mn0 kU10 9b0 3Es0 Xa0 1fb0 1dd0 k3X0 Nz0 SCp0 1vc0 SO0 1cM0 1a00 1ao0 1fc0 1a10 1fG0 1cg0 1dX0 1bX0 1cQ0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|35e5\",\"Europe/Dublin|LMT DMT IST GMT BST IST|p.l p.l -y.D 0 -10 -10|012343434343435353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353|-3BHby.D 1ra20 Rc0 1fzy.D 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 g600 14o0 1wo0 17c0 1io0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1a00 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1tA0 IM0 90o0 U00 1tA0 U00 1tA0 U00 1tA0 U00 1tA0 WM0 1qM0 WM0 1qM0 WM0 1tA0 U00 1tA0 U00 1tA0 11z0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|12e5\",\"Etc/GMT-0|GMT|0|0||\",\"Etc/GMT-1|+01|-10|0||\",\"Etc/GMT-10|+10|-a0|0||\",\"Etc/GMT-11|+11|-b0|0||\",\"Etc/GMT-12|+12|-c0|0||\",\"Etc/GMT-13|+13|-d0|0||\",\"Etc/GMT-14|+14|-e0|0||\",\"Etc/GMT-2|+02|-20|0||\",\"Etc/GMT-3|+03|-30|0||\",\"Etc/GMT-4|+04|-40|0||\",\"Etc/GMT-5|+05|-50|0||\",\"Etc/GMT-6|+06|-60|0||\",\"Etc/GMT-7|+07|-70|0||\",\"Etc/GMT-8|+08|-80|0||\",\"Etc/GMT-9|+09|-90|0||\",\"Etc/GMT+1|-01|10|0||\",\"Etc/GMT+10|-10|a0|0||\",\"Etc/GMT+11|-11|b0|0||\",\"Etc/GMT+12|-12|c0|0||\",\"Etc/GMT+2|-02|20|0||\",\"Etc/GMT+3|-03|30|0||\",\"Etc/GMT+4|-04|40|0||\",\"Etc/GMT+5|-05|50|0||\",\"Etc/GMT+6|-06|60|0||\",\"Etc/GMT+7|-07|70|0||\",\"Etc/GMT+8|-08|80|0||\",\"Etc/GMT+9|-09|90|0||\",\"Etc/UTC|UTC|0|0||\",\"Europe/Andorra|LMT WET CET CEST|-6.4 0 -10 -20|0123232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-2M0M6.4 1Pnc6.4 1xIN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|79e3\",\"Europe/Astrakhan|LMT +03 +04 +05|-3c.c -30 -40 -50|012323232323232323212121212121212121212121212121212121212121212|-1Pcrc.c eUMc.c 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|10e5\",\"Europe/London|LMT GMT BST BDST|1.f 0 -10 -20|01212121212121212121212121212121212121212121212121232323232321212321212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-4VgnW.J 2KHdW.J Rc0 1fA0 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 2Rz0 Dc0 1zc0 Oo0 1zc0 Rc0 1wo0 17c0 1iM0 FA0 xB0 1fA0 1a00 14o0 bb0 LA0 xB0 Rc0 1wo0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1a00 1qM0 WM0 1qM0 11A0 1o00 WM0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1tA0 IM0 90o0 U00 1tA0 U00 1tA0 U00 1tA0 U00 1tA0 WM0 1qM0 WM0 1qM0 WM0 1tA0 U00 1tA0 U00 1tA0 11z0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1o00 14o0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|10e6\",\"Europe/Belgrade|LMT CET CEST|-1m -10 -20|012121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3topm 2juLm 3IP0 WM0 1fA0 1cM0 1cM0 1rc0 Qo0 1vmo0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|12e5\",\"Europe/Prague|LMT PMT CET CEST GMT|-V.I -V.I -10 -20 0|0123232323232323232423232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-4QbAV.I 1FDc0 XPaV.I 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 1cM0 1qM0 11c0 mp0 xA0 mn0 17c0 1io0 17c0 1fc0 1ao0 1bNc0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|13e5\",\"Europe/Bucharest|LMT BMT EET EEST|-1I.o -1I.o -20 -30|01232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-3awpI.o 1AU00 20LI.o RA0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Axc0 On0 1fA0 1a10 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cK0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cL0 1cN0 1cL0 1fB0 1nX0 11E0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|19e5\",\"Europe/Budapest|LMT CET CEST|-1g.k -10 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-3cK1g.k 124Lg.k 11d0 1iO0 11A0 1o00 11A0 1oo0 11c0 1lc0 17c0 O1V0 3Nf0 WM0 1fA0 1cM0 1cM0 1oJ0 1dd0 1020 1fX0 1cp0 1cM0 1cM0 1cM0 1fA0 1a00 bhy0 Rb0 1wr0 Rc0 1C00 LA0 1C00 LA0 SNW0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cO0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|17e5\",\"Europe/Zurich|LMT BMT CET CEST|-y.8 -t.K -10 -20|0123232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-4HyMy.8 1Dw04.m 1SfAt.K 11A0 1o00 11A0 1xG10 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|38e4\",\"Europe/Chisinau|LMT CMT BMT EET EEST CEST CET MSK MSD|-1T.k -1T -1I.o -20 -30 -20 -10 -30 -40|0123434343434343434345656578787878787878787878434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343|-3D8NT.k 1wNA0.k wGMa.A 20LI.o RA0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 27A0 2en0 39g0 WM0 1fA0 1cM0 V90 1t7z0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 gL0 WO0 1cM0 1cM0 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1nX0 11D0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|67e4\",\"Europe/Gibraltar|LMT GMT BST BDST CET CEST|l.o 0 -10 -20 -10 -20|0121212121212121212121212121212121212121212121212123232323232121232121212121212121212145454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-3BHbC.A 1ra1C.A Rc0 1fA0 14M0 1fc0 1g00 1co0 1dc0 1co0 1oo0 1400 1dc0 19A0 1io0 1io0 WM0 1o00 14o0 1o00 17c0 1io0 17c0 1fA0 1a00 1lc0 17c0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1cM0 1io0 17c0 1fA0 1a00 1io0 17c0 1io0 17c0 1fA0 1a00 1io0 1qM0 Dc0 2Rz0 Dc0 1zc0 Oo0 1zc0 Rc0 1wo0 17c0 1iM0 FA0 xB0 1fA0 1a00 14o0 bb0 LA0 xB0 Rc0 1wo0 11A0 1o00 17c0 1fA0 1a00 1fA0 1cM0 1fA0 1a00 17c0 1fA0 1a00 1io0 17c0 1lc0 17c0 1fA0 10Jz0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|30e3\",\"Europe/Helsinki|LMT HMT EET EEST|-1D.N -1D.N -20 -30|01232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-3H0ND.N 1Iu00 OULD.N 1dA0 1xGq0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|12e5\",\"Europe/Kaliningrad|LMT CET CEST EET EEST MSK MSD +03|-1m -10 -20 -20 -30 -30 -40 -30|012121212121212343565656565656565654343434343434343434343434343434343434343434373|-36Rdm UbXm 11d0 1iO0 11A0 1o00 11A0 Qrc0 6i00 WM0 1fA0 1cM0 1cM0 1cM0 390 7A0 1en0 12N0 1pbb0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|44e4\",\"Europe/Kiev|LMT KMT EET MSK CEST CET MSD EEST|-22.4 -22.4 -20 -30 -20 -10 -40 -30|01234545363636363636363636367272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272|-3D8O2.4 1LUM0 eUo2.4 rnz0 2Hg0 WM0 1fA0 da0 1v4m0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 Db0 3220 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o10 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|34e5\",\"Europe/Kirov|LMT +03 +04 +05 MSD MSK MSK|-3i.M -30 -40 -50 -40 -30 -40|0123232323232323232454524545454545454545454545454545454545454565|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 2pz0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|48e4\",\"Europe/Lisbon|LMT WET WEST WEMT CET CEST|A.J 0 -10 -20 -10 -20|012121212121212121212121212121212121212121212321232123212321212121212121212121212121212121212121212124121212121212121212121212121212124545454212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2le00 aPX0 Sp0 M00 1vb0 SN0 1vb0 SN0 1vb0 Td0 1vb0 SN0 1vb0 6600 18o0 3I00 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 3I00 17c0 1cM0 1cM0 3Fc0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Dc0 1uo0 1c00 1dc0 1400 gL0 IM0 s10 U00 dX0 Rc0 pd0 Rc0 gL0 Oo0 pd0 Rc0 gL0 Oo0 pd0 14o0 1cM0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 oiK0 1cM0 1cM0 1fB0 1cM0 1cM0 1cM0 1fA0 1a00 1cL0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|27e5\",\"Europe/Madrid|LMT WET WEST WEMT CET CEST|e.I 0 -10 -20 -10 -20|0121212121212121212321454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454|-2M0M0 G5z0 19B0 1cL0 1dd0 b1z0 18p0 3HX0 17d0 1fz0 1a10 1io0 1a00 1in0 17d0 iIn0 Hd0 1cL0 bb0 1200 2s20 14n0 5aL0 Mp0 1vz0 17d0 1in0 17d0 1in0 17d0 1in0 17d0 6hX0 11B0 XHX0 1a10 1fz0 1a10 19X0 1cN0 1fz0 1a10 1fC0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|62e5\",\"Europe/Malta|LMT CET CEST|-W.4 -10 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-35rcW.4 SXzW.4 Lz0 1cN0 1db0 1410 1on0 Wp0 1qL0 17d0 1cL0 M3B0 5M20 WM0 1fA0 1co0 17c0 1iM0 16m0 1de0 1lc0 14m0 1lc0 WO0 1qM0 GTW0 On0 1C10 LA0 1C00 LA0 1EM0 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1co0 1cM0 1lA0 Xc0 1qq0 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1o10 11z0 1iN0 19z0 1fB0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|42e4\",\"Europe/Minsk|LMT MMT EET MSK CEST CET MSD EEST +03|-1O.g -1O -20 -30 -20 -10 -40 -30 -30|012345454363636363636363636372727272727272727272727272727272727272728|-3D8NO.g 1LUM0.g eUnO qNX0 3gQ0 WM0 1fA0 1cM0 Al0 1tsn0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 3Fc0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0|19e5\",\"Europe/Paris|LMT PMT WET WEST CEST CET WEMT|-9.l -9.l 0 -10 -20 -10 -20|01232323232323232323232323232323232323232323232323234545463654545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545|-3bQ09.l MDA0 cNb9.l HA0 19A0 1iM0 11c0 1oo0 Wo0 1rc0 QM0 1EM0 UM0 1u00 10o0 1io0 1wo0 Rc0 1a00 1fA0 1cM0 1cM0 1io0 17c0 1fA0 1a00 1io0 1a00 1io0 17c0 1fA0 1a00 1io0 17c0 1cM0 1cM0 1a00 1io0 1cM0 1cM0 1a00 1fA0 1io0 17c0 1cM0 1cM0 1a00 1fA0 1io0 1qM0 Df0 Ik0 5M30 WM0 1fA0 1cM0 Vx0 hB0 1aq0 16M0 1ekn0 1cL0 1fC0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|11e6\",\"Europe/Moscow|LMT MMT MMT MST MDST MSD MSK +05 EET EEST MSK|-2u.h -2u.h -2v.j -3v.j -4v.j -40 -30 -50 -20 -30 -40|01232434565756865656565656565656565698656565656565656565656565656565656565656a6|-3D8Ou.h 1sQM0 2pyW.W 1bA0 11X0 GN0 1Hb0 c4v.j ik0 3DA0 dz0 15A0 c10 2q10 iM10 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cN0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0|16e6\",\"Europe/Riga|LMT RMT LST EET MSK CEST CET MSD EEST|-1A.y -1A.y -2A.y -20 -30 -20 -10 -40 -30|0121213456565647474747474747474838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383|-3D8NA.y 1xde0 11A0 1iM0 ko0 gWm0 yDXA.y 2bX0 3fE0 WM0 1fA0 1cM0 1cM0 4m0 1sLy0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cN0 1o00 11A0 1o00 11A0 1qM0 3oo0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|64e4\",\"Europe/Rome|LMT RMT CET CEST|-N.U -N.U -10 -20|012323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-4aU0N.U 15snN.U T000 Lz0 1cN0 1db0 1410 1on0 Wp0 1qL0 17d0 1cL0 M3B0 5M20 WM0 1fA0 1cM0 16M0 1iM0 16m0 1de0 1lc0 14m0 1lc0 WO0 1qM0 GTW0 On0 1C10 LA0 1C00 LA0 1EM0 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1C00 LA0 1zc0 Oo0 1C00 LA0 1C00 LA0 1zc0 Oo0 1C00 Oo0 1zc0 Oo0 1fC0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|39e5\",\"Europe/Samara|LMT +03 +04 +05|-3k.k -30 -40 -50|0123232323232323232121232323232323232323232323232323232323212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 2y10 14m0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 2sp0 WM0|12e5\",\"Europe/Saratov|LMT +03 +04 +05|-34.i -30 -40 -50|012323232323232321212121212121212121212121212121212121212121212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1cM0 1cM0 1fA0 1cM0 3Co0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 5810|\",\"Europe/Simferopol|LMT SMT EET MSK CEST CET MSD EEST MSK|-2g.o -2g -20 -30 -20 -10 -40 -30 -40|0123454543636363636363636363272727636363727272727272727272727272727272727283|-3D8Og.o 1LUM0.o eUog rEn0 2qs0 WM0 1fA0 1cM0 3V0 1u0L0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1Q00 4eN0 1cM0 1cM0 1cM0 1cM0 dV0 WO0 1cM0 1cM0 1fy0 1o30 11B0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11z0 1nW0|33e4\",\"Europe/Sofia|LMT IMT EET CET CEST EEST|-1x.g -1U.U -20 -10 -20 -30|0123434325252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252|-3D8Nx.g AiLA.k 1UFeU.U WM0 1fA0 1cM0 1cM0 1cN0 1mKH0 1dd0 1fb0 1ap0 1fb0 1a20 1fy0 1a30 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cK0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 1nX0 11E0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|12e5\",\"Europe/Tallinn|LMT TMT CET CEST EET MSK MSD EEST|-1D -1D -10 -20 -20 -30 -40 -30|0123214532323565656565656565657474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474|-3D8ND 1wI00 teD 11A0 1Ta0 4rXl KSLD 2FX0 2Jg0 WM0 1fA0 1cM0 18J0 1sTX0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o10 11A0 1qM0 5QM0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|41e4\",\"Europe/Tirane|LMT CET CEST|-1j.k -10 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-2glBj.k 14pcj.k 5LC0 WM0 4M0 1fCK0 10n0 1op0 11z0 1pd0 11z0 1qN0 WL0 1qp0 Xb0 1qp0 Xb0 1qp0 11z0 1lB0 11z0 1qN0 11z0 1iN0 16n0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|42e4\",\"Europe/Ulyanovsk|LMT +03 +04 +05 +02|-3d.A -30 -40 -50 -20|01232323232323232321214121212121212121212121212121212121212121212|-22WM0 qH90 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 2pB0 1cM0 1fA0 2pB0 IM0 rX0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 3rd0|13e5\",\"Europe/Vienna|LMT CET CEST|-15.l -10 -20|01212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121|-36Rd5.l UbX5.l 11d0 1iO0 11A0 1o00 11A0 3KM0 14o0 LA00 6i00 WM0 1fA0 1cM0 1cM0 1cM0 400 2qM0 1ao0 1co0 1cM0 1io0 17c0 1gHa0 19X0 1cP0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|18e5\",\"Europe/Vilnius|LMT WMT KMT CET EET MSK CEST MSD EEST|-1F.g -1o -1z.A -10 -20 -30 -20 -40 -30|0123435636365757575757575757584848484848484848463648484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484|-3D8NF.g 1u5Ah.g 6ILM.o 1Ooz.A zz0 Mfd0 29W0 3is0 WM0 1fA0 1cM0 LV0 1tgL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11B0 1o00 11A0 1qM0 8io0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|54e4\",\"Europe/Volgograd|LMT +03 +04 +05 MSD MSK MSK|-2V.E -30 -40 -50 -40 -30 -40|012323232323232324545452454545454545454545454545454545454545456525|-21IqV.E psLV.E 23CL0 1db0 1cN0 1db0 1cN0 1db0 1dd0 1cO0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1cM0 1fA0 1cM0 2pz0 1cN0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 8Hz0 9Jd0 5gn0|10e5\",\"Europe/Warsaw|LMT WMT CET CEST EET EEST|-1o -1o -10 -20 -20 -30|0123232345423232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232|-3D8No 1qDA0 1LXo 11d0 1iO0 11A0 1o00 11A0 1on0 11A0 6zy0 HWP0 5IM0 WM0 1fA0 1cM0 1dz0 1mL0 1en0 15B0 1aq0 1nA0 11A0 1io0 17c0 1fA0 1a00 iDX0 LA0 1cM0 1cM0 1C00 Oo0 1cM0 1cM0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1C00 LA0 uso0 1a00 1fA0 1cM0 1cM0 1cM0 1fA0 1a00 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cN0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1qM0 WM0 1qM0 WM0 1qM0 11A0 1o00 11A0 1o00 11A0 1o00|17e5\",\"Pacific/Honolulu|LMT HST HDT HWT HPT HST|av.q au 9u 9u 9u a0|01213415|-3061s.y 1uMdW.y 8x0 lef0 8wWu iAu 46p0|37e4\",\"Indian/Chagos|LMT +05 +06|-4N.E -50 -60|012|-2xosN.E 3AGLN.E|30e2\",\"Indian/Maldives|LMT MMT +05|-4S -4S -50|012|-3D8QS 3eLA0|35e4\",\"Indian/Mauritius|LMT +04 +05|-3O -40 -50|012121|-2xorO 34unO 14L0 12kr0 11z0|15e4\",\"Pacific/Kwajalein|LMT +11 +10 +09 -12 +12|-b9.k -b0 -a0 -90 c0 -c0|0123145|-2M0X9.k 1rDA9.k akp0 6Up0 12ry0 Wan0|14e3\",\"Pacific/Chatham|LMT +1215 +1245 +1345|-cd.M -cf -cJ -dJ|0123232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323|-46jMd.M 37RbW.M 1adef IM0 1C00 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Oo0 1zc0 Rc0 1zc0 Oo0 1qM0 14o0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1lc0 14o0 1lc0 14o0 1lc0 17c0 1io0 17c0 1io0 17c0 1io0 17c0 1io0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1io0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00|600\",\"Pacific/Apia|LMT LMT -1130 -11 -10 +14 +13|-cx.4 bq.U bu b0 a0 -e0 -d0|012343456565656565656565656|-38Fox.4 J1A0 1yW03.4 2rRbu 1ff0 1a00 CI0 AQ0 1cM0 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1a00 1fA0 1cM0 1fA0 1a00 1fA0 1a00 1fA0|37e3\",\"Pacific/Bougainville|LMT PMMT +10 +09 +11|-am.g -9M.w -a0 -90 -b0|012324|-3D8Wm.g AvAx.I 1TCLM.w 7CN0 2MQp0|18e4\",\"Pacific/Efate|LMT +11 +12|-bd.g -b0 -c0|012121212121212121212121|-2l9nd.g 2uNXd.g Dc0 n610 1cL0 1cN0 1cL0 1fB0 19X0 1fB0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1cN0 1cL0 1fB0 Lz0 1Nd0 An0|66e3\",\"Pacific/Enderbury|-00 -12 -11 +13|0 c0 b0 -d0|0123|-1iIo0 1GsA0 B7X0|1\",\"Pacific/Fakaofo|LMT -11 +13|bo.U b0 -d0|012|-2M0Az.4 4ufXz.4|483\",\"Pacific/Fiji|LMT +12 +13|-bT.I -c0 -d0|012121212121212121212121212121|-2bUzT.I 3m8NT.I LA0 1EM0 IM0 nJc0 LA0 1o00 Rc0 1wo0 Ao0 1Nc0 Ao0 1Q00 xz0 1SN0 uM0 1SM0 uM0 1VA0 s00 1VA0 s00 1VA0 s00 20o0 pc0 2hc0 bc0|88e4\",\"Pacific/Tarawa|LMT +12|-bw.4 -c0|01|-2M0Xw.4|29e3\",\"Pacific/Galapagos|LMT -05 -06|5W.o 50 60|01212|-1yVS1.A 2dTz1.A gNd0 rz0|25e3\",\"Pacific/Gambier|LMT -09|8X.M 90|01|-2jof0.c|125\",\"Pacific/Guadalcanal|LMT +11|-aD.M -b0|01|-2joyD.M|11e4\",\"Pacific/Guam|LMT LMT GST +09 GDT ChST|el -9D -a0 -90 -b0 -a0|0123242424242424242425|-54m9D 2glc0 1DFbD 6pB0 AhB0 3QL0 g2p0 3p91 WOX rX0 1zd0 Rb0 1wp0 Rb0 5xd0 rX0 5sN0 zb1 1C0X On0 ULb0|17e4\",\"Pacific/Kiritimati|LMT -1040 -10 +14|at.k aE a0 -e0|0123|-2M0Bu.E 3bIMa.E B7Xk|51e2\",\"Pacific/Kosrae|LMT LMT +11 +09 +10 +12|d8.4 -aP.U -b0 -90 -a0 -c0|0123243252|-54maP.U 2glc0 xsnP.U axC0 HBy0 akp0 axd0 WOK0 1bdz0|66e2\",\"Pacific/Marquesas|LMT -0930|9i 9u|01|-2joeG|86e2\",\"Pacific/Pago_Pago|LMT LMT SST|-cB.c bm.M b0|012|-38FoB.c J1A0|37e2\",\"Pacific/Nauru|LMT +1130 +09 +12|-b7.E -bu -90 -c0|01213|-1Xdn7.E QCnB.E 7mqu 1lnbu|10e3\",\"Pacific/Niue|LMT -1120 -11|bj.E bk b0|012|-FScE.k suo0.k|12e2\",\"Pacific/Norfolk|LMT +1112 +1130 +1230 +11 +12|-bb.Q -bc -bu -cu -b0 -c0|0123245454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545|-2M0Xb.Q 21ILX.Q W01G Oo0 1COo0 9Jcu 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0 1fA0 1cM0 1cM0 1cM0 1cM0 1cM0 1cM0|25e4\",\"Pacific/Noumea|LMT +11 +12|-b5.M -b0 -c0|01212121|-2l9n5.M 2EqM5.M xX0 1PB0 yn0 HeP0 Ao0|98e3\",\"Pacific/Palau|LMT LMT +09|f2.4 -8V.U -90|012|-54m8V.U 2glc0|21e3\",\"Pacific/Pitcairn|LMT -0830 -08|8E.k 8u 80|012|-2M0Dj.E 3UVXN.E|56\",\"Pacific/Rarotonga|LMT LMT -1030 -0930 -10|-dk.U aD.4 au 9u a0|01234343434343434343434343434|-2Otpk.U 28zc0 13tbO.U IL0 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Onu 1zcu Rbu 1zcu Onu 1zcu Onu 1zcu Onu|13e3\",\"Pacific/Tahiti|LMT -10|9W.g a0|01|-2joe1.I|18e4\",\"Pacific/Tongatapu|LMT +1220 +13 +14|-cj.c -ck -d0 -e0|01232323232|-XbMj.c BgLX.c 1yndk 15A0 1wo0 xz0 1Q10 xz0 zWN0 s00|75e3\"],\"links\":[\"Africa/Abidjan|Africa/Accra\",\"Africa/Abidjan|Africa/Bamako\",\"Africa/Abidjan|Africa/Banjul\",\"Africa/Abidjan|Africa/Conakry\",\"Africa/Abidjan|Africa/Dakar\",\"Africa/Abidjan|Africa/Freetown\",\"Africa/Abidjan|Africa/Lome\",\"Africa/Abidjan|Africa/Nouakchott\",\"Africa/Abidjan|Africa/Ouagadougou\",\"Africa/Abidjan|Africa/Timbuktu\",\"Africa/Abidjan|Atlantic/Reykjavik\",\"Africa/Abidjan|Atlantic/St_Helena\",\"Africa/Abidjan|Iceland\",\"Africa/Cairo|Egypt\",\"Africa/Johannesburg|Africa/Maseru\",\"Africa/Johannesburg|Africa/Mbabane\",\"Africa/Lagos|Africa/Bangui\",\"Africa/Lagos|Africa/Brazzaville\",\"Africa/Lagos|Africa/Douala\",\"Africa/Lagos|Africa/Kinshasa\",\"Africa/Lagos|Africa/Libreville\",\"Africa/Lagos|Africa/Luanda\",\"Africa/Lagos|Africa/Malabo\",\"Africa/Lagos|Africa/Niamey\",\"Africa/Lagos|Africa/Porto-Novo\",\"Africa/Maputo|Africa/Blantyre\",\"Africa/Maputo|Africa/Bujumbura\",\"Africa/Maputo|Africa/Gaborone\",\"Africa/Maputo|Africa/Harare\",\"Africa/Maputo|Africa/Kigali\",\"Africa/Maputo|Africa/Lubumbashi\",\"Africa/Maputo|Africa/Lusaka\",\"Africa/Nairobi|Africa/Addis_Ababa\",\"Africa/Nairobi|Africa/Asmara\",\"Africa/Nairobi|Africa/Asmera\",\"Africa/Nairobi|Africa/Dar_es_Salaam\",\"Africa/Nairobi|Africa/Djibouti\",\"Africa/Nairobi|Africa/Kampala\",\"Africa/Nairobi|Africa/Mogadishu\",\"Africa/Nairobi|Indian/Antananarivo\",\"Africa/Nairobi|Indian/Comoro\",\"Africa/Nairobi|Indian/Mayotte\",\"Africa/Tripoli|Libya\",\"America/Adak|America/Atka\",\"America/Adak|US/Aleutian\",\"America/Anchorage|US/Alaska\",\"America/Argentina/Buenos_Aires|America/Buenos_Aires\",\"America/Argentina/Catamarca|America/Argentina/ComodRivadavia\",\"America/Argentina/Catamarca|America/Catamarca\",\"America/Argentina/Cordoba|America/Cordoba\",\"America/Argentina/Cordoba|America/Rosario\",\"America/Argentina/Jujuy|America/Jujuy\",\"America/Argentina/Mendoza|America/Mendoza\",\"America/Chicago|CST6CDT\",\"America/Chicago|US/Central\",\"America/Denver|America/Shiprock\",\"America/Denver|MST7MDT\",\"America/Denver|Navajo\",\"America/Denver|US/Mountain\",\"America/Detroit|US/Michigan\",\"America/Edmonton|America/Yellowknife\",\"America/Edmonton|Canada/Mountain\",\"America/Fort_Wayne|America/Indiana/Indianapolis\",\"America/Fort_Wayne|America/Indianapolis\",\"America/Fort_Wayne|US/East-Indiana\",\"America/Godthab|America/Nuuk\",\"America/Halifax|Canada/Atlantic\",\"America/Havana|Cuba\",\"America/Indiana/Knox|America/Knox_IN\",\"America/Indiana/Knox|US/Indiana-Starke\",\"America/Iqaluit|America/Pangnirtung\",\"America/Jamaica|Jamaica\",\"America/Kentucky/Louisville|America/Louisville\",\"America/Los_Angeles|PST8PDT\",\"America/Los_Angeles|US/Pacific\",\"America/Manaus|Brazil/West\",\"America/Mazatlan|Mexico/BajaSur\",\"America/Mexico_City|Mexico/General\",\"America/New_York|EST5EDT\",\"America/New_York|US/Eastern\",\"America/Noronha|Brazil/DeNoronha\",\"America/Panama|America/Atikokan\",\"America/Panama|America/Cayman\",\"America/Panama|America/Coral_Harbour\",\"America/Panama|EST\",\"America/Phoenix|America/Creston\",\"America/Phoenix|MST\",\"America/Phoenix|US/Arizona\",\"America/Puerto_Rico|America/Anguilla\",\"America/Puerto_Rico|America/Antigua\",\"America/Puerto_Rico|America/Aruba\",\"America/Puerto_Rico|America/Blanc-Sablon\",\"America/Puerto_Rico|America/Curacao\",\"America/Puerto_Rico|America/Dominica\",\"America/Puerto_Rico|America/Grenada\",\"America/Puerto_Rico|America/Guadeloupe\",\"America/Puerto_Rico|America/Kralendijk\",\"America/Puerto_Rico|America/Lower_Princes\",\"America/Puerto_Rico|America/Marigot\",\"America/Puerto_Rico|America/Montserrat\",\"America/Puerto_Rico|America/Port_of_Spain\",\"America/Puerto_Rico|America/St_Barthelemy\",\"America/Puerto_Rico|America/St_Kitts\",\"America/Puerto_Rico|America/St_Lucia\",\"America/Puerto_Rico|America/St_Thomas\",\"America/Puerto_Rico|America/St_Vincent\",\"America/Puerto_Rico|America/Tortola\",\"America/Puerto_Rico|America/Virgin\",\"America/Regina|Canada/Saskatchewan\",\"America/Rio_Branco|America/Porto_Acre\",\"America/Rio_Branco|Brazil/Acre\",\"America/Santiago|Chile/Continental\",\"America/Sao_Paulo|Brazil/East\",\"America/St_Johns|Canada/Newfoundland\",\"America/Tijuana|America/Ensenada\",\"America/Tijuana|America/Santa_Isabel\",\"America/Tijuana|Mexico/BajaNorte\",\"America/Toronto|America/Montreal\",\"America/Toronto|America/Nassau\",\"America/Toronto|America/Nipigon\",\"America/Toronto|America/Thunder_Bay\",\"America/Toronto|Canada/Eastern\",\"America/Vancouver|Canada/Pacific\",\"America/Whitehorse|Canada/Yukon\",\"America/Winnipeg|America/Rainy_River\",\"America/Winnipeg|Canada/Central\",\"Asia/Ashgabat|Asia/Ashkhabad\",\"Asia/Bangkok|Asia/Phnom_Penh\",\"Asia/Bangkok|Asia/Vientiane\",\"Asia/Bangkok|Indian/Christmas\",\"Asia/Brunei|Asia/Kuching\",\"Asia/Dhaka|Asia/Dacca\",\"Asia/Dubai|Asia/Muscat\",\"Asia/Dubai|Indian/Mahe\",\"Asia/Dubai|Indian/Reunion\",\"Asia/Ho_Chi_Minh|Asia/Saigon\",\"Asia/Hong_Kong|Hongkong\",\"Asia/Jerusalem|Asia/Tel_Aviv\",\"Asia/Jerusalem|Israel\",\"Asia/Kathmandu|Asia/Katmandu\",\"Asia/Kolkata|Asia/Calcutta\",\"Asia/Kuala_Lumpur|Asia/Singapore\",\"Asia/Kuala_Lumpur|Singapore\",\"Asia/Macau|Asia/Macao\",\"Asia/Makassar|Asia/Ujung_Pandang\",\"Asia/Nicosia|Europe/Nicosia\",\"Asia/Qatar|Asia/Bahrain\",\"Asia/Rangoon|Asia/Yangon\",\"Asia/Rangoon|Indian/Cocos\",\"Asia/Riyadh|Antarctica/Syowa\",\"Asia/Riyadh|Asia/Aden\",\"Asia/Riyadh|Asia/Kuwait\",\"Asia/Seoul|ROK\",\"Asia/Shanghai|Asia/Chongqing\",\"Asia/Shanghai|Asia/Chungking\",\"Asia/Shanghai|Asia/Harbin\",\"Asia/Shanghai|PRC\",\"Asia/Taipei|ROC\",\"Asia/Tehran|Iran\",\"Asia/Thimphu|Asia/Thimbu\",\"Asia/Tokyo|Japan\",\"Asia/Ulaanbaatar|Asia/Choibalsan\",\"Asia/Ulaanbaatar|Asia/Ulan_Bator\",\"Asia/Urumqi|Asia/Kashgar\",\"Atlantic/Faroe|Atlantic/Faeroe\",\"Australia/Adelaide|Australia/South\",\"Australia/Brisbane|Australia/Queensland\",\"Australia/Broken_Hill|Australia/Yancowinna\",\"Australia/Darwin|Australia/North\",\"Australia/Hobart|Australia/Currie\",\"Australia/Hobart|Australia/Tasmania\",\"Australia/Lord_Howe|Australia/LHI\",\"Australia/Melbourne|Australia/Victoria\",\"Australia/Perth|Australia/West\",\"Australia/Sydney|Australia/ACT\",\"Australia/Sydney|Australia/Canberra\",\"Australia/Sydney|Australia/NSW\",\"Etc/GMT-0|Etc/GMT\",\"Etc/GMT-0|Etc/GMT+0\",\"Etc/GMT-0|Etc/GMT0\",\"Etc/GMT-0|Etc/Greenwich\",\"Etc/GMT-0|GMT\",\"Etc/GMT-0|GMT+0\",\"Etc/GMT-0|GMT-0\",\"Etc/GMT-0|GMT0\",\"Etc/GMT-0|Greenwich\",\"Etc/UTC|Etc/UCT\",\"Etc/UTC|Etc/Universal\",\"Etc/UTC|Etc/Zulu\",\"Etc/UTC|UCT\",\"Etc/UTC|UTC\",\"Etc/UTC|Universal\",\"Etc/UTC|Zulu\",\"Europe/Athens|EET\",\"Europe/Belgrade|Europe/Ljubljana\",\"Europe/Belgrade|Europe/Podgorica\",\"Europe/Belgrade|Europe/Sarajevo\",\"Europe/Belgrade|Europe/Skopje\",\"Europe/Belgrade|Europe/Zagreb\",\"Europe/Berlin|Arctic/Longyearbyen\",\"Europe/Berlin|Atlantic/Jan_Mayen\",\"Europe/Berlin|Europe/Copenhagen\",\"Europe/Berlin|Europe/Oslo\",\"Europe/Berlin|Europe/Stockholm\",\"Europe/Brussels|CET\",\"Europe/Brussels|Europe/Amsterdam\",\"Europe/Brussels|Europe/Luxembourg\",\"Europe/Brussels|MET\",\"Europe/Chisinau|Europe/Tiraspol\",\"Europe/Dublin|Eire\",\"Europe/Helsinki|Europe/Mariehamn\",\"Europe/Istanbul|Asia/Istanbul\",\"Europe/Istanbul|Turkey\",\"Europe/Kiev|Europe/Kyiv\",\"Europe/Kiev|Europe/Uzhgorod\",\"Europe/Kiev|Europe/Zaporozhye\",\"Europe/Lisbon|Portugal\",\"Europe/Lisbon|WET\",\"Europe/London|Europe/Belfast\",\"Europe/London|Europe/Guernsey\",\"Europe/London|Europe/Isle_of_Man\",\"Europe/London|Europe/Jersey\",\"Europe/London|GB\",\"Europe/London|GB-Eire\",\"Europe/Moscow|W-SU\",\"Europe/Paris|Europe/Monaco\",\"Europe/Prague|Europe/Bratislava\",\"Europe/Rome|Europe/San_Marino\",\"Europe/Rome|Europe/Vatican\",\"Europe/Warsaw|Poland\",\"Europe/Zurich|Europe/Busingen\",\"Europe/Zurich|Europe/Vaduz\",\"Indian/Maldives|Indian/Kerguelen\",\"Pacific/Auckland|Antarctica/McMurdo\",\"Pacific/Auckland|Antarctica/South_Pole\",\"Pacific/Auckland|NZ\",\"Pacific/Chatham|NZ-CHAT\",\"Pacific/Easter|Chile/EasterIsland\",\"Pacific/Enderbury|Pacific/Kanton\",\"Pacific/Guadalcanal|Pacific/Pohnpei\",\"Pacific/Guadalcanal|Pacific/Ponape\",\"Pacific/Guam|Pacific/Saipan\",\"Pacific/Honolulu|HST\",\"Pacific/Honolulu|Pacific/Johnston\",\"Pacific/Honolulu|US/Hawaii\",\"Pacific/Kwajalein|Kwajalein\",\"Pacific/Pago_Pago|Pacific/Midway\",\"Pacific/Pago_Pago|Pacific/Samoa\",\"Pacific/Pago_Pago|US/Samoa\",\"Pacific/Port_Moresby|Antarctica/DumontDUrville\",\"Pacific/Port_Moresby|Pacific/Chuuk\",\"Pacific/Port_Moresby|Pacific/Truk\",\"Pacific/Port_Moresby|Pacific/Yap\",\"Pacific/Tarawa|Pacific/Funafuti\",\"Pacific/Tarawa|Pacific/Majuro\",\"Pacific/Tarawa|Pacific/Wake\",\"Pacific/Tarawa|Pacific/Wallis\"],\"countries\":[\"AD|Europe/Andorra\",\"AE|Asia/Dubai\",\"AF|Asia/Kabul\",\"AG|America/Puerto_Rico America/Antigua\",\"AI|America/Puerto_Rico America/Anguilla\",\"AL|Europe/Tirane\",\"AM|Asia/Yerevan\",\"AO|Africa/Lagos Africa/Luanda\",\"AQ|Antarctica/Casey Antarctica/Davis Antarctica/Mawson Antarctica/Palmer Antarctica/Rothera Antarctica/Troll Antarctica/Vostok Pacific/Auckland Pacific/Port_Moresby Asia/Riyadh Asia/Singapore Antarctica/McMurdo Antarctica/DumontDUrville Antarctica/Syowa\",\"AR|America/Argentina/Buenos_Aires America/Argentina/Cordoba America/Argentina/Salta America/Argentina/Jujuy America/Argentina/Tucuman America/Argentina/Catamarca America/Argentina/La_Rioja America/Argentina/San_Juan America/Argentina/Mendoza America/Argentina/San_Luis America/Argentina/Rio_Gallegos America/Argentina/Ushuaia\",\"AS|Pacific/Pago_Pago\",\"AT|Europe/Vienna\",\"AU|Australia/Lord_Howe Antarctica/Macquarie Australia/Hobart Australia/Melbourne Australia/Sydney Australia/Broken_Hill Australia/Brisbane Australia/Lindeman Australia/Adelaide Australia/Darwin Australia/Perth Australia/Eucla Asia/Tokyo\",\"AW|America/Puerto_Rico America/Aruba\",\"AX|Europe/Helsinki Europe/Mariehamn\",\"AZ|Asia/Baku\",\"BA|Europe/Belgrade Europe/Sarajevo\",\"BB|America/Barbados\",\"BD|Asia/Dhaka\",\"BE|Europe/Brussels\",\"BF|Africa/Abidjan Africa/Ouagadougou\",\"BG|Europe/Sofia\",\"BH|Asia/Qatar Asia/Bahrain\",\"BI|Africa/Maputo Africa/Bujumbura\",\"BJ|Africa/Lagos Africa/Porto-Novo\",\"BL|America/Puerto_Rico America/St_Barthelemy\",\"BM|Atlantic/Bermuda\",\"BN|Asia/Kuching Asia/Brunei\",\"BO|America/La_Paz\",\"BQ|America/Puerto_Rico America/Kralendijk\",\"BR|America/Noronha America/Belem America/Fortaleza America/Recife America/Araguaina America/Maceio America/Bahia America/Sao_Paulo America/Campo_Grande America/Cuiaba America/Santarem America/Porto_Velho America/Boa_Vista America/Manaus America/Eirunepe America/Rio_Branco\",\"BS|America/Toronto America/Nassau\",\"BT|Asia/Thimphu\",\"BW|Africa/Maputo Africa/Gaborone\",\"BY|Europe/Minsk\",\"BZ|America/Belize\",\"CA|America/St_Johns America/Halifax America/Glace_Bay America/Moncton America/Goose_Bay America/Toronto America/Iqaluit America/Winnipeg America/Resolute America/Rankin_Inlet America/Regina America/Swift_Current America/Edmonton America/Cambridge_Bay America/Inuvik America/Dawson_Creek America/Fort_Nelson America/Whitehorse America/Dawson America/Vancouver America/Panama America/Puerto_Rico America/Phoenix America/Blanc-Sablon America/Atikokan America/Creston\",\"CC|Asia/Yangon Indian/Cocos\",\"CD|Africa/Maputo Africa/Lagos Africa/Kinshasa Africa/Lubumbashi\",\"CF|Africa/Lagos Africa/Bangui\",\"CG|Africa/Lagos Africa/Brazzaville\",\"CH|Europe/Zurich\",\"CI|Africa/Abidjan\",\"CK|Pacific/Rarotonga\",\"CL|America/Santiago America/Coyhaique America/Punta_Arenas Pacific/Easter\",\"CM|Africa/Lagos Africa/Douala\",\"CN|Asia/Shanghai Asia/Urumqi\",\"CO|America/Bogota\",\"CR|America/Costa_Rica\",\"CU|America/Havana\",\"CV|Atlantic/Cape_Verde\",\"CW|America/Puerto_Rico America/Curacao\",\"CX|Asia/Bangkok Indian/Christmas\",\"CY|Asia/Nicosia Asia/Famagusta\",\"CZ|Europe/Prague\",\"DE|Europe/Zurich Europe/Berlin Europe/Busingen\",\"DJ|Africa/Nairobi Africa/Djibouti\",\"DK|Europe/Berlin Europe/Copenhagen\",\"DM|America/Puerto_Rico America/Dominica\",\"DO|America/Santo_Domingo\",\"DZ|Africa/Algiers\",\"EC|America/Guayaquil Pacific/Galapagos\",\"EE|Europe/Tallinn\",\"EG|Africa/Cairo\",\"EH|Africa/El_Aaiun\",\"ER|Africa/Nairobi Africa/Asmara\",\"ES|Europe/Madrid Africa/Ceuta Atlantic/Canary\",\"ET|Africa/Nairobi Africa/Addis_Ababa\",\"FI|Europe/Helsinki\",\"FJ|Pacific/Fiji\",\"FK|Atlantic/Stanley\",\"FM|Pacific/Kosrae Pacific/Port_Moresby Pacific/Guadalcanal Pacific/Chuuk Pacific/Pohnpei\",\"FO|Atlantic/Faroe\",\"FR|Europe/Paris\",\"GA|Africa/Lagos Africa/Libreville\",\"GB|Europe/London\",\"GD|America/Puerto_Rico America/Grenada\",\"GE|Asia/Tbilisi\",\"GF|America/Cayenne\",\"GG|Europe/London Europe/Guernsey\",\"GH|Africa/Abidjan Africa/Accra\",\"GI|Europe/Gibraltar\",\"GL|America/Nuuk America/Danmarkshavn America/Scoresbysund America/Thule\",\"GM|Africa/Abidjan Africa/Banjul\",\"GN|Africa/Abidjan Africa/Conakry\",\"GP|America/Puerto_Rico America/Guadeloupe\",\"GQ|Africa/Lagos Africa/Malabo\",\"GR|Europe/Athens\",\"GS|Atlantic/South_Georgia\",\"GT|America/Guatemala\",\"GU|Pacific/Guam\",\"GW|Africa/Bissau\",\"GY|America/Guyana\",\"HK|Asia/Hong_Kong\",\"HN|America/Tegucigalpa\",\"HR|Europe/Belgrade Europe/Zagreb\",\"HT|America/Port-au-Prince\",\"HU|Europe/Budapest\",\"ID|Asia/Jakarta Asia/Pontianak Asia/Makassar Asia/Jayapura\",\"IE|Europe/Dublin\",\"IL|Asia/Jerusalem\",\"IM|Europe/London Europe/Isle_of_Man\",\"IN|Asia/Kolkata\",\"IO|Indian/Chagos\",\"IQ|Asia/Baghdad\",\"IR|Asia/Tehran\",\"IS|Africa/Abidjan Atlantic/Reykjavik\",\"IT|Europe/Rome\",\"JE|Europe/London Europe/Jersey\",\"JM|America/Jamaica\",\"JO|Asia/Amman\",\"JP|Asia/Tokyo\",\"KE|Africa/Nairobi\",\"KG|Asia/Bishkek\",\"KH|Asia/Bangkok Asia/Phnom_Penh\",\"KI|Pacific/Tarawa Pacific/Kanton Pacific/Kiritimati\",\"KM|Africa/Nairobi Indian/Comoro\",\"KN|America/Puerto_Rico America/St_Kitts\",\"KP|Asia/Pyongyang\",\"KR|Asia/Seoul\",\"KW|Asia/Riyadh Asia/Kuwait\",\"KY|America/Panama America/Cayman\",\"KZ|Asia/Almaty Asia/Qyzylorda Asia/Qostanay Asia/Aqtobe Asia/Aqtau Asia/Atyrau Asia/Oral\",\"LA|Asia/Bangkok Asia/Vientiane\",\"LB|Asia/Beirut\",\"LC|America/Puerto_Rico America/St_Lucia\",\"LI|Europe/Zurich Europe/Vaduz\",\"LK|Asia/Colombo\",\"LR|Africa/Monrovia\",\"LS|Africa/Johannesburg Africa/Maseru\",\"LT|Europe/Vilnius\",\"LU|Europe/Brussels Europe/Luxembourg\",\"LV|Europe/Riga\",\"LY|Africa/Tripoli\",\"MA|Africa/Casablanca\",\"MC|Europe/Paris Europe/Monaco\",\"MD|Europe/Chisinau\",\"ME|Europe/Belgrade Europe/Podgorica\",\"MF|America/Puerto_Rico America/Marigot\",\"MG|Africa/Nairobi Indian/Antananarivo\",\"MH|Pacific/Tarawa Pacific/Kwajalein Pacific/Majuro\",\"MK|Europe/Belgrade Europe/Skopje\",\"ML|Africa/Abidjan Africa/Bamako\",\"MM|Asia/Yangon\",\"MN|Asia/Ulaanbaatar Asia/Hovd\",\"MO|Asia/Macau\",\"MP|Pacific/Guam Pacific/Saipan\",\"MQ|America/Martinique\",\"MR|Africa/Abidjan Africa/Nouakchott\",\"MS|America/Puerto_Rico America/Montserrat\",\"MT|Europe/Malta\",\"MU|Indian/Mauritius\",\"MV|Indian/Maldives\",\"MW|Africa/Maputo Africa/Blantyre\",\"MX|America/Mexico_City America/Cancun America/Merida America/Monterrey America/Matamoros America/Chihuahua America/Ciudad_Juarez America/Ojinaga America/Mazatlan America/Bahia_Banderas America/Hermosillo America/Tijuana\",\"MY|Asia/Kuching Asia/Singapore Asia/Kuala_Lumpur\",\"MZ|Africa/Maputo\",\"NA|Africa/Windhoek\",\"NC|Pacific/Noumea\",\"NE|Africa/Lagos Africa/Niamey\",\"NF|Pacific/Norfolk\",\"NG|Africa/Lagos\",\"NI|America/Managua\",\"NL|Europe/Brussels Europe/Amsterdam\",\"NO|Europe/Berlin Europe/Oslo\",\"NP|Asia/Kathmandu\",\"NR|Pacific/Nauru\",\"NU|Pacific/Niue\",\"NZ|Pacific/Auckland Pacific/Chatham\",\"OM|Asia/Dubai Asia/Muscat\",\"PA|America/Panama\",\"PE|America/Lima\",\"PF|Pacific/Tahiti Pacific/Marquesas Pacific/Gambier\",\"PG|Pacific/Port_Moresby Pacific/Bougainville\",\"PH|Asia/Manila\",\"PK|Asia/Karachi\",\"PL|Europe/Warsaw\",\"PM|America/Miquelon\",\"PN|Pacific/Pitcairn\",\"PR|America/Puerto_Rico\",\"PS|Asia/Gaza Asia/Hebron\",\"PT|Europe/Lisbon Atlantic/Madeira Atlantic/Azores\",\"PW|Pacific/Palau\",\"PY|America/Asuncion\",\"QA|Asia/Qatar\",\"RE|Asia/Dubai Indian/Reunion\",\"RO|Europe/Bucharest\",\"RS|Europe/Belgrade\",\"RU|Europe/Kaliningrad Europe/Moscow Europe/Simferopol Europe/Kirov Europe/Volgograd Europe/Astrakhan Europe/Saratov Europe/Ulyanovsk Europe/Samara Asia/Yekaterinburg Asia/Omsk Asia/Novosibirsk Asia/Barnaul Asia/Tomsk Asia/Novokuznetsk Asia/Krasnoyarsk Asia/Irkutsk Asia/Chita Asia/Yakutsk Asia/Khandyga Asia/Vladivostok Asia/Ust-Nera Asia/Magadan Asia/Sakhalin Asia/Srednekolymsk Asia/Kamchatka Asia/Anadyr\",\"RW|Africa/Maputo Africa/Kigali\",\"SA|Asia/Riyadh\",\"SB|Pacific/Guadalcanal\",\"SC|Asia/Dubai Indian/Mahe\",\"SD|Africa/Khartoum\",\"SE|Europe/Berlin Europe/Stockholm\",\"SG|Asia/Singapore\",\"SH|Africa/Abidjan Atlantic/St_Helena\",\"SI|Europe/Belgrade Europe/Ljubljana\",\"SJ|Europe/Berlin Arctic/Longyearbyen\",\"SK|Europe/Prague Europe/Bratislava\",\"SL|Africa/Abidjan Africa/Freetown\",\"SM|Europe/Rome Europe/San_Marino\",\"SN|Africa/Abidjan Africa/Dakar\",\"SO|Africa/Nairobi Africa/Mogadishu\",\"SR|America/Paramaribo\",\"SS|Africa/Juba\",\"ST|Africa/Sao_Tome\",\"SV|America/El_Salvador\",\"SX|America/Puerto_Rico America/Lower_Princes\",\"SY|Asia/Damascus\",\"SZ|Africa/Johannesburg Africa/Mbabane\",\"TC|America/Grand_Turk\",\"TD|Africa/Ndjamena\",\"TF|Asia/Dubai Indian/Maldives Indian/Kerguelen\",\"TG|Africa/Abidjan Africa/Lome\",\"TH|Asia/Bangkok\",\"TJ|Asia/Dushanbe\",\"TK|Pacific/Fakaofo\",\"TL|Asia/Dili\",\"TM|Asia/Ashgabat\",\"TN|Africa/Tunis\",\"TO|Pacific/Tongatapu\",\"TR|Europe/Istanbul\",\"TT|America/Puerto_Rico America/Port_of_Spain\",\"TV|Pacific/Tarawa Pacific/Funafuti\",\"TW|Asia/Taipei\",\"TZ|Africa/Nairobi Africa/Dar_es_Salaam\",\"UA|Europe/Simferopol Europe/Kyiv\",\"UG|Africa/Nairobi Africa/Kampala\",\"UM|Pacific/Pago_Pago Pacific/Tarawa Pacific/Midway Pacific/Wake\",\"US|America/New_York America/Detroit America/Kentucky/Louisville America/Kentucky/Monticello America/Indiana/Indianapolis America/Indiana/Vincennes America/Indiana/Winamac America/Indiana/Marengo America/Indiana/Petersburg America/Indiana/Vevay America/Chicago America/Indiana/Tell_City America/Indiana/Knox America/Menominee America/North_Dakota/Center America/North_Dakota/New_Salem America/North_Dakota/Beulah America/Denver America/Boise America/Phoenix America/Los_Angeles America/Anchorage America/Juneau America/Sitka America/Metlakatla America/Yakutat America/Nome America/Adak Pacific/Honolulu\",\"UY|America/Montevideo\",\"UZ|Asia/Samarkand Asia/Tashkent\",\"VA|Europe/Rome Europe/Vatican\",\"VC|America/Puerto_Rico America/St_Vincent\",\"VE|America/Caracas\",\"VG|America/Puerto_Rico America/Tortola\",\"VI|America/Puerto_Rico America/St_Thomas\",\"VN|Asia/Bangkok Asia/Ho_Chi_Minh\",\"VU|Pacific/Efate\",\"WF|Pacific/Tarawa Pacific/Wallis\",\"WS|Pacific/Apia\",\"YE|Asia/Riyadh Asia/Aden\",\"YT|Africa/Nairobi Indian/Mayotte\",\"ZA|Africa/Johannesburg\",\"ZM|Africa/Maputo Africa/Lusaka\",\"ZW|Africa/Maputo Africa/Harare\"]}");

/***/ }),

/***/ "6cd4":
/***/ (function(module, exports, __webpack_require__) {

var arrayEach = __webpack_require__("8057"),
    baseEach = __webpack_require__("48a0"),
    castFunction = __webpack_require__("1304"),
    isArray = __webpack_require__("6747");

/**
 * Iterates over elements of `collection` and invokes `iteratee` for each element.
 * The iteratee is invoked with three arguments: (value, index|key, collection).
 * Iteratee functions may exit iteration early by explicitly returning `false`.
 *
 * **Note:** As with other "Collections" methods, objects with a "length"
 * property are iterated like arrays. To avoid this behavior use `_.forIn`
 * or `_.forOwn` for object iteration.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @alias each
 * @category Collection
 * @param {Array|Object} collection The collection to iterate over.
 * @param {Function} [iteratee=_.identity] The function invoked per iteration.
 * @returns {Array|Object} Returns `collection`.
 * @see _.forEachRight
 * @example
 *
 * _.forEach([1, 2], function(value) {
 *   console.log(value);
 * });
 * // => Logs `1` then `2`.
 *
 * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) {
 *   console.log(key);
 * });
 * // => Logs 'a' then 'b' (iteration order is not guaranteed).
 */
function forEach(collection, iteratee) {
  var func = isArray(collection) ? arrayEach : baseEach;
  return func(collection, castFunction(iteratee));
}

module.exports = forEach;


/***/ }),

/***/ "6dfb":
/***/ (function(module) {

module.exports = JSON.parse("{\"userVendorGroups\":[{\"displayName\":\"Snailax Corporation\",\"vendorGroupId\":\"801222\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"features\":[\"basis-point-comparison\",\"landing-page-dashboard\"]},{\"displayName\":\"Snailax Corporation\",\"vendorGroupId\":\"799123\",\"marketplaceId\":\"A2EUQ1WTGCTBG2\",\"features\":[\"basis-point-comparison\",\"landing-page-dashboard\"]}],\"defaultVendorGroupId\":\"TEST12345\",\"customerId\":\"A25IBR4LY4S34W\",\"monsSessionId\":\"131-2782233-6728959\"}");

/***/ }),

/***/ "6e1d":
/***/ (function(module) {

module.exports = JSON.parse("{\"success\":true}");

/***/ }),

/***/ "6fb2":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Tokenizer = __webpack_require__("b1dc"),
    foreignContent = __webpack_require__("00db"),
    UNICODE = __webpack_require__("5182"),
    HTML = __webpack_require__("f30b");


//Aliases
var $ = HTML.TAG_NAMES,
    NS = HTML.NAMESPACES;


//ParserFeedbackSimulator
//Simulates adjustment of the Tokenizer which performed by standard parser during tree construction.
var ParserFeedbackSimulator = module.exports = function (tokenizer) {
    this.tokenizer = tokenizer;

    this.namespaceStack = [];
    this.namespaceStackTop = -1;
    this._enterNamespace(NS.HTML);
};

ParserFeedbackSimulator.prototype.getNextToken = function () {
    var token = this.tokenizer.getNextToken();

    if (token.type === Tokenizer.START_TAG_TOKEN)
        this._handleStartTagToken(token);

    else if (token.type === Tokenizer.END_TAG_TOKEN)
        this._handleEndTagToken(token);

    else if (token.type === Tokenizer.NULL_CHARACTER_TOKEN && this.inForeignContent) {
        token.type = Tokenizer.CHARACTER_TOKEN;
        token.chars = UNICODE.REPLACEMENT_CHARACTER;
    }

    else if (this.skipNextNewLine) {
        if (token.type !== Tokenizer.HIBERNATION_TOKEN)
            this.skipNextNewLine = false;

        if (token.type === Tokenizer.WHITESPACE_CHARACTER_TOKEN && token.chars[0] === '\n') {
            if (token.chars.length === 1)
                return this.getNextToken();

            token.chars = token.chars.substr(1);
        }
    }

    return token;
};

//Namespace stack mutations
ParserFeedbackSimulator.prototype._enterNamespace = function (namespace) {
    this.namespaceStackTop++;
    this.namespaceStack.push(namespace);

    this.inForeignContent = namespace !== NS.HTML;
    this.currentNamespace = namespace;
    this.tokenizer.allowCDATA = this.inForeignContent;
};

ParserFeedbackSimulator.prototype._leaveCurrentNamespace = function () {
    this.namespaceStackTop--;
    this.namespaceStack.pop();

    this.currentNamespace = this.namespaceStack[this.namespaceStackTop];
    this.inForeignContent = this.currentNamespace !== NS.HTML;
    this.tokenizer.allowCDATA = this.inForeignContent;
};

//Token handlers
ParserFeedbackSimulator.prototype._ensureTokenizerMode = function (tn) {
    if (tn === $.TEXTAREA || tn === $.TITLE)
        this.tokenizer.state = Tokenizer.MODE.RCDATA;

    else if (tn === $.PLAINTEXT)
        this.tokenizer.state = Tokenizer.MODE.PLAINTEXT;

    else if (tn === $.SCRIPT)
        this.tokenizer.state = Tokenizer.MODE.SCRIPT_DATA;

    else if (tn === $.STYLE || tn === $.IFRAME || tn === $.XMP ||
             tn === $.NOEMBED || tn === $.NOFRAMES || tn === $.NOSCRIPT)
        this.tokenizer.state = Tokenizer.MODE.RAWTEXT;
};

ParserFeedbackSimulator.prototype._handleStartTagToken = function (token) {
    var tn = token.tagName;

    if (tn === $.SVG)
        this._enterNamespace(NS.SVG);

    else if (tn === $.MATH)
        this._enterNamespace(NS.MATHML);

    if (this.inForeignContent) {
        if (foreignContent.causesExit(token)) {
            this._leaveCurrentNamespace();
            return;
        }

        var currentNs = this.currentNamespace;

        if (currentNs === NS.MATHML)
            foreignContent.adjustTokenMathMLAttrs(token);

        else if (currentNs === NS.SVG) {
            foreignContent.adjustTokenSVGTagName(token);
            foreignContent.adjustTokenSVGAttrs(token);
        }

        foreignContent.adjustTokenXMLAttrs(token);

        tn = token.tagName;

        if (!token.selfClosing && foreignContent.isIntegrationPoint(tn, currentNs, token.attrs))
            this._enterNamespace(NS.HTML);
    }

    else {
        if (tn === $.PRE || tn === $.TEXTAREA || tn === $.LISTING)
            this.skipNextNewLine = true;

        else if (tn === $.IMAGE)
            token.tagName = $.IMG;

        this._ensureTokenizerMode(tn);
    }
};

ParserFeedbackSimulator.prototype._handleEndTagToken = function (token) {
    var tn = token.tagName;

    if (!this.inForeignContent) {
        var previousNs = this.namespaceStack[this.namespaceStackTop - 1];

        if (previousNs === NS.SVG && foreignContent.SVG_TAG_NAMES_ADJUSTMENT_MAP[tn])
            tn = foreignContent.SVG_TAG_NAMES_ADJUSTMENT_MAP[tn];

        //NOTE: check for exit from integration point
        if (foreignContent.isIntegrationPoint(tn, previousNs, token.attrs))
            this._leaveCurrentNamespace();
    }

    else if (tn === $.SVG && this.currentNamespace === NS.SVG ||
             tn === $.MATH && this.currentNamespace === NS.MATHML)
        this._leaveCurrentNamespace();

    // NOTE: adjust end tag name as well for consistency
    if (this.currentNamespace === NS.SVG)
        foreignContent.adjustTokenSVGTagName(token);
};


/***/ }),

/***/ "6fcd":
/***/ (function(module, exports, __webpack_require__) {

var baseTimes = __webpack_require__("50d8"),
    isArguments = __webpack_require__("d370"),
    isArray = __webpack_require__("6747"),
    isBuffer = __webpack_require__("0d24"),
    isIndex = __webpack_require__("c098"),
    isTypedArray = __webpack_require__("73ac");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Creates an array of the enumerable property names of the array-like `value`.
 *
 * @private
 * @param {*} value The value to query.
 * @param {boolean} inherited Specify returning inherited property names.
 * @returns {Array} Returns the array of property names.
 */
function arrayLikeKeys(value, inherited) {
  var isArr = isArray(value),
      isArg = !isArr && isArguments(value),
      isBuff = !isArr && !isArg && isBuffer(value),
      isType = !isArr && !isArg && !isBuff && isTypedArray(value),
      skipIndexes = isArr || isArg || isBuff || isType,
      result = skipIndexes ? baseTimes(value.length, String) : [],
      length = result.length;

  for (var key in value) {
    if ((inherited || hasOwnProperty.call(value, key)) &&
        !(skipIndexes && (
           // Safari 9 has enumerable `arguments.length` in strict mode.
           key == 'length' ||
           // Node.js 0.10 has enumerable non-index properties on buffers.
           (isBuff && (key == 'offset' || key == 'parent')) ||
           // PhantomJS 2 has enumerable non-index properties on typed arrays.
           (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||
           // Skip index properties.
           isIndex(key, length)
        ))) {
      result.push(key);
    }
  }
  return result;
}

module.exports = arrayLikeKeys;


/***/ }),

/***/ "7008":
/***/ (function(module) {

module.exports = JSON.parse("{\"status\":{\"statusMessage\":\"OK\",\"responseCode\":\"OK\",\"httpReturnCode\":200,\"httpReturnCodeMessage\":\"OK\"},\"headers\":[],\"responses\":[{\"nextToken\":null,\"adReportingDownloadsList\":[{\"reportId\":\"amzn1.report.VGAZJEL0MF50\",\"creatorId\":\"NULL\",\"requesterId\":\"421994#ENTITY2IBR6CSTIWC5E\",\"requesterType\":\"BRAND\",\"reportType\":\"CREATOR_CONTENT\",\"downloadStatus\":\"DOWNLOAD_READY\",\"s3Url\":\"https://download.distributetop.com/client/创作者计划报表.csv\"}]}]}");

/***/ }),

/***/ "7025":
/***/ (function(module) {

module.exports = JSON.parse("{\"data\":{\"app_id\":6556,\"app_user_info\":{},\"avatar_url\":\"\",\"bg_img_url\":\"https://p3.pstatp.com/origin/60e0000116e1e21ff9a\",\"can_be_found_by_phone\":1,\"connects\":[],\"country_code\":0,\"description\":\"\",\"device_id\":0,\"email\":\"c***o@gyspajamas.com\",\"email_collected\":true,\"email_source\":\"email_register\",\"gender\":0,\"has_password\":1,\"is_blocked\":0,\"is_blocking\":0,\"is_email_filtered\":false,\"is_employee\":false,\"is_passkey_signup_account\":false,\"is_recommend_allowed\":1,\"is_visitor_account\":false,\"mobile\":\"\",\"name\":\"user6857071109867\",\"need_check_bind_status\":true,\"odin_user_type\":12,\"phone_collected\":false,\"screen_name\":\"user6857071109867\",\"sec_user_id\":\"MS4wLjABAAAAutVlUc1Uwo4mOD-9aIGPnBPQs6uHfM1csc6iL0w8gIOGdiZiL2WFFUGxzIDKhBNm\",\"session_key\":\"\",\"store_country\":\"us\",\"store_geo\":\"VGeo-US\",\"store_vdc\":\"useast5\",\"user_create_time\":1749029851,\"user_id\":7512025637214864000,\"user_id_str\":\"7512025637214864401\",\"user_verified\":false,\"username\":\"\",\"verified_content\":\"\"},\"message\":\"success\"}");

/***/ }),

/***/ "70e1":
/***/ (function(module, exports, __webpack_require__) {

var encode = __webpack_require__("e440"),
    decode = __webpack_require__("d54b");

exports.decode = function(data, level) {
    return (!level || level <= 0 ? decode.XML : decode.HTML)(data);
};

exports.decodeStrict = function(data, level) {
    return (!level || level <= 0 ? decode.XML : decode.HTMLStrict)(data);
};

exports.encode = function(data, level) {
    return (!level || level <= 0 ? encode.XML : encode.HTML)(data);
};

exports.encodeXML = encode.XML;

exports.encodeHTML4 = exports.encodeHTML5 = exports.encodeHTML = encode.HTML;

exports.decodeXML = exports.decodeXMLStrict = decode.XML;

exports.decodeHTML4 = exports.decodeHTML5 = exports.decodeHTML = decode.HTML;

exports.decodeHTML4Strict = exports.decodeHTML5Strict = exports.decodeHTMLStrict = decode.HTMLStrict;

exports.escape = encode.escape;


/***/ }),

/***/ "7180":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Mixin = __webpack_require__("362e"),
    Tokenizer = __webpack_require__("b1dc"),
    PositionTrackingPreprocessorMixin = __webpack_require__("3e8b"),
    inherits = __webpack_require__("3022").inherits;

var LocationInfoTokenizerMixin = module.exports = function (tokenizer) {
    Mixin.call(this, tokenizer);

    this.tokenizer = tokenizer;
    this.posTracker = new PositionTrackingPreprocessorMixin(tokenizer.preprocessor);
    this.currentAttrLocation = null;
    this.currentTokenLocation = null;
};

inherits(LocationInfoTokenizerMixin, Mixin);

LocationInfoTokenizerMixin.prototype._getCurrentLocation = function () {
    return {
        line: this.posTracker.line,
        col: this.posTracker.col,
        startOffset: this.posTracker.offset,
        endOffset: -1
    };
};

LocationInfoTokenizerMixin.prototype._attachCurrentAttrLocationInfo = function () {
    this.currentAttrLocation.endOffset = this.posTracker.offset;

    var currentToken = this.tokenizer.currentToken,
        currentAttr = this.tokenizer.currentAttr;

    if (!currentToken.location.attrs)
        currentToken.location.attrs = Object.create(null);

    currentToken.location.attrs[currentAttr.name] = this.currentAttrLocation;
};

LocationInfoTokenizerMixin.prototype._getOverriddenMethods = function (mxn, orig) {
    var methods = {
        _createStartTagToken: function () {
            orig._createStartTagToken.call(this);
            this.currentToken.location = mxn.currentTokenLocation;
        },

        _createEndTagToken: function () {
            orig._createEndTagToken.call(this);
            this.currentToken.location = mxn.currentTokenLocation;
        },

        _createCommentToken: function () {
            orig._createCommentToken.call(this);
            this.currentToken.location = mxn.currentTokenLocation;
        },

        _createDoctypeToken: function (initialName) {
            orig._createDoctypeToken.call(this, initialName);
            this.currentToken.location = mxn.currentTokenLocation;
        },

        _createCharacterToken: function (type, ch) {
            orig._createCharacterToken.call(this, type, ch);
            this.currentCharacterToken.location = mxn.currentTokenLocation;
        },

        _createAttr: function (attrNameFirstCh) {
            orig._createAttr.call(this, attrNameFirstCh);
            mxn.currentAttrLocation = mxn._getCurrentLocation();
        },

        _leaveAttrName: function (toState) {
            orig._leaveAttrName.call(this, toState);
            mxn._attachCurrentAttrLocationInfo();
        },

        _leaveAttrValue: function (toState) {
            orig._leaveAttrValue.call(this, toState);
            mxn._attachCurrentAttrLocationInfo();
        },

        _emitCurrentToken: function () {
            //NOTE: if we have pending character token make it's end location equal to the
            //current token's start location.
            if (this.currentCharacterToken)
                this.currentCharacterToken.location.endOffset = this.currentToken.location.startOffset;

            this.currentToken.location.endOffset = mxn.posTracker.offset + 1;
            orig._emitCurrentToken.call(this);
        },

        _emitCurrentCharacterToken: function () {
            //NOTE: if we have character token and it's location wasn't set in the _emitCurrentToken(),
            //then set it's location at the current preprocessor position.
            //We don't need to increment preprocessor position, since character token
            //emission is always forced by the start of the next character token here.
            //So, we already have advanced position.
            if (this.currentCharacterToken && this.currentCharacterToken.location.endOffset === -1)
                this.currentCharacterToken.location.endOffset = mxn.posTracker.offset;

            orig._emitCurrentCharacterToken.call(this);
        }
    };

    //NOTE: patch initial states for each mode to obtain token start position
    Object.keys(Tokenizer.MODE).forEach(function (modeName) {
        var state = Tokenizer.MODE[modeName];

        methods[state] = function (cp) {
            mxn.currentTokenLocation = mxn._getCurrentLocation();
            orig[state].call(this, cp);
        };
    });

    return methods;
};



/***/ }),

/***/ "718f":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony default export */ __webpack_exports__["default"] = ("\n<!doctype html>\n<html lang=\"en\">\n<header\n  role=\"banner\"\n  data-siteid=\"MLM\"\n  class=\"nav-header nav-header-lite-supply ui-navigation-v2\"\n>\n  <div class=\"nav-bounds\">\n    <div class=\"nav-header-logo\">\n      <a\n        id=\"nav-skip-to-main-content\"\n        href=\"#root-app\"\n        class=\"nav-skip-to-main-content\"\n        ><span class=\"nav-skip-to-main-content__content\"\n          >Saltar el contenido</span\n        ></a><a\n        id=\"nav-a11y-feedback-link\"\n        href=\"https://www.mercadolibre.com.mx/accesibilidad/feedback\"\n        class=\"nav-a11y-feedback-link\"\n        ><span class=\"nav-a11y-feedback-link__content\"\n          >Comentar sobre accesibilidad</span\n        ></a\n      ><a class=\"nav-logo\" href=\"//www.mercadolibre.com.mx\"\n        >Mercado Libre M\xE9xico - Donde comprar y vender de todo</a\n      >\n    </div>\n    <div class=\"nav-header-menu-wrapper\">\n      <nav id=\"nav-header-menu\" aria-label=\"Men\xFA de usuario\">\n        <ul class=\"nav-header-menu-list\">\n          <li class=\"nav-header-menu-list__item\">\n            <div class=\"nav-header-user\">\n              <label for=\"nav-header-user-switch\"\n                ><span class=\"nav-header-usermenu-wrapper\"\n                  ><span\n                    aria-hidden=\"true\"\n                    class=\"nav-header-avatar-user\"\n                    data-js=\"user-menu:nav-header-avatar-user\"\n                    ><div class=\"nav-header-profile-evolution__container\">\n                      <div class=\"nav-header-profile-evolution__user-initials\">\n                        M\n                      </div>\n                    </div></span\n                  ><span class=\"nav-header-username\">MMMAYSANTO</span\n                  ><span\n                    class=\"nav-header-username-chevron\"\n                  ></span></span></label\n              ><input type=\"checkbox\" id=\"nav-header-user-switch\" />\n              <nav class=\"nav-header-user-layer\">\n                <a\n                  href=\"https://myaccount.mercadolibre.com.mx#nav-header\"\n                  rel=\"nofollow\"\n                  >Mi cuenta</a\n                ><a\n                  href=\"https://www.mercadolibre.com/jms/mlm/lgz/logout?platform_id=ML#nav-header\"\n                  rel=\"nofollow\"\n                  >Salir</a\n                >\n              </nav>\n            </div>\n          </li>\n          <li class=\"nav-header-menu-list__item\"></li>\n        </ul>\n      </nav>\n    </div>\n  </div>\n</header>\n</html>\n");

/***/ }),

/***/ "72af":
/***/ (function(module, exports, __webpack_require__) {

var createBaseFor = __webpack_require__("99cd");

/**
 * The base implementation of `baseForOwn` which iterates over `object`
 * properties returned by `keysFunc` and invokes `iteratee` for each property.
 * Iteratee functions may exit iteration early by explicitly returning `false`.
 *
 * @private
 * @param {Object} object The object to iterate over.
 * @param {Function} iteratee The function invoked per iteration.
 * @param {Function} keysFunc The function to get the keys of `object`.
 * @returns {Object} Returns `object`.
 */
var baseFor = createBaseFor();

module.exports = baseFor;


/***/ }),

/***/ "72ce":
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(Buffer) {/*
  Module Dependencies
*/
var htmlparser = __webpack_require__("d2de"),
    parse5 = __webpack_require__("e64a");

/*
  Parser
*/
exports = module.exports = function(content, options, isDocument) {
  var dom = exports.evaluate(content, options, isDocument),
      // Generic root element
      root = exports.evaluate('<root></root>', options, false)[0];

  root.type = 'root';
  root.parent = null;

  // Update the dom using the root
  exports.update(dom, root);

  return root;
};

function parseWithParse5 (content, isDocument) {
  var parse = isDocument ? parse5.parse : parse5.parseFragment,
      root = parse(content, { treeAdapter: parse5.treeAdapters.htmlparser2 });

  return root.children;
}

exports.evaluate = function(content, options, isDocument) {
  // options = options || $.fn.options;

  var dom;

  if (Buffer.isBuffer(content))
    content = content.toString();

  if (typeof content === 'string') {
    var useHtmlParser2 = options.xmlMode || options._useHtmlParser2;

    dom = useHtmlParser2 ? htmlparser.parseDOM(content, options) : parseWithParse5(content, isDocument);
  } else {
    dom = content;
  }

  return dom;
};

/*
  Update the dom structure, for one changed layer
*/
exports.update = function(arr, parent) {
  // normalize
  if (!Array.isArray(arr)) arr = [arr];

  // Update parent
  if (parent) {
    parent.children = arr;
  } else {
    parent = null;
  }

  // Update neighbors
  for (var i = 0; i < arr.length; i++) {
    var node = arr[i];

    // Cleanly remove existing nodes from their previous structures.
    var oldParent = node.parent || node.root,
        oldSiblings = oldParent && oldParent.children;
    if (oldSiblings && oldSiblings !== arr) {
      oldSiblings.splice(oldSiblings.indexOf(node), 1);
      if (node.prev) {
        node.prev.next = node.next;
      }
      if (node.next) {
        node.next.prev = node.prev;
      }
    }

    if (parent) {
      node.prev = arr[i - 1] || null;
      node.next = arr[i + 1] || null;
    } else {
      node.prev = node.next = null;
    }

    if (parent && parent.type === 'root') {
      node.root = parent;
      node.parent = null;
    } else {
      node.root = null;
      node.parent = parent;
    }
  }

  return parent;
};

// module.exports = $.extend(exports);

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("b639").Buffer))

/***/ }),

/***/ "72f0":
/***/ (function(module, exports) {

/**
 * Creates a function that returns `value`.
 *
 * @static
 * @memberOf _
 * @since 2.4.0
 * @category Util
 * @param {*} value The value to return from the new function.
 * @returns {Function} Returns the new constant function.
 * @example
 *
 * var objects = _.times(2, _.constant({ 'a': 1 }));
 *
 * console.log(objects);
 * // => [{ 'a': 1 }, { 'a': 1 }]
 *
 * console.log(objects[0] === objects[1]);
 * // => true
 */
function constant(value) {
  return function() {
    return value;
  };
}

module.exports = constant;


/***/ }),

/***/ "733b":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony default export */ __webpack_exports__["default"] = ("<!doctype html>\n<html lang=\"en-GB\" data-19ax5a9jf=\"dingo\" class=\"a-no-js\">\n    <head>\n        <script>\n            var aPageStart = (new Date()).getTime();\n        </script>\n        <meta charset=\"utf-8\"/>\n        <script type='text/javascript'>\n            window.ue_mkt = \"vceu\";\n        </script>\n        <script type='text/javascript'>\n            var ue_t0 = ue_t0 || +new Date();\n        </script>\n        <script type='text/javascript'>\n            window.ue_ihb = (window.ue_ihb || window.ueinit || 0) + 1;\n            if (window.ue_ihb === 1) {\n\n                var ue_csm = window\n                  , ue_hob = +new Date();\n                (function(d) {\n                    var e = d.ue = d.ue || {}\n                      , f = Date.now || function() {\n                        return +new Date\n                    }\n                    ;\n                    e.d = function(b) {\n                        return f() - (b ? 0 : d.ue_t0)\n                    }\n                    ;\n                    e.stub = function(b, a) {\n                        if (!b[a]) {\n                            var c = [];\n                            b[a] = function() {\n                                c.push([c.slice.call(arguments), e.d(), d.ue_id])\n                            }\n                            ;\n                            b[a].replay = function(b) {\n                                for (var a; a = c.shift(); )\n                                    b(a[0], a[1], a[2])\n                            }\n                            ;\n                            b[a].isStub = 1\n                        }\n                    }\n                    ;\n                    e.exec = function(b, a) {\n                        return function() {\n                            try {\n                                return b.apply(this, arguments)\n                            } catch (c) {\n                                ueLogError(c, {\n                                    attribution: a || \"undefined\",\n                                    logLevel: \"WARN\"\n                                })\n                            }\n                        }\n                    }\n                }\n                )(ue_csm);\n\n                var ue_err_chan = 'jserr';\n                (function(d, e) {\n                    function h(f, b) {\n                        if (!(a.ec > a.mxe) && f) {\n                            a.ter.push(f);\n                            b = b || {};\n                            var c = f.logLevel || b.logLevel;\n                            c && c !== k && c !== m && c !== n && c !== p || a.ec++;\n                            c && c != k || a.ecf++;\n                            b.pageURL = \"\" + (e.location ? e.location.href : \"\");\n                            b.logLevel = c;\n                            b.attribution = f.attribution || b.attribution;\n                            a.erl.push({\n                                ex: f,\n                                info: b\n                            })\n                        }\n                    }\n                    function l(a, b, c, e, g) {\n                        d.ueLogError({\n                            m: a,\n                            f: b,\n                            l: c,\n                            c: \"\" + e,\n                            err: g,\n                            fromOnError: 1,\n                            args: arguments\n                        }, g ? {\n                            attribution: g.attribution,\n                            logLevel: g.logLevel\n                        } : void 0);\n                        return !1\n                    }\n                    var k = \"FATAL\"\n                      , m = \"ERROR\"\n                      , n = \"WARN\"\n                      , p = \"DOWNGRADED\"\n                      , a = {\n                        ec: 0,\n                        ecf: 0,\n                        pec: 0,\n                        ts: 0,\n                        erl: [],\n                        ter: [],\n                        buffer: [],\n                        mxe: 50,\n                        startTimer: function() {\n                            a.ts++;\n                            setInterval(function() {\n                                d.ue && a.pec < a.ec && d.uex(\"at\");\n                                a.pec = a.ec\n                            }, 1E4)\n                        }\n                    };\n                    l.skipTrace = 1;\n                    h.skipTrace = 1;\n                    h.isStub = 1;\n                    d.ueLogError = h;\n                    d.ue_err = a;\n                    e.onerror = l\n                }\n                )(ue_csm, window);\n\n                var ue_id = 'B6B42Z8ZPKKYKC8XWKD7', ue_url, ue_navtiming = 1, ue_mid = 'A1PA6795UKMFR9', ue_sid = '262-7807958-1059108', ue_sn = 'vendorcentral.amazon.de', ue_furl = 'fls-eu.amazon.de', ue_surl = 'https://unagi-eu.amazon.com/1/events/com.amazon.csm.nexusclient.prod', ue_int = 0, ue_fcsn = 1, ue_urt = 3, ue_rpl_ns = 'cel-rpl', ue_ddq = 1, ue_fpf = '//fls-eu.amazon.de/1/batch/1/OP/A1PA6795UKMFR9:262-7807958-1059108:B6B42Z8ZPKKYKC8XWKD7:vendorcentral.amazon.de$uedata=s:', ue_sbuimp = 1, ue_ibft = 0, ue_sswmts = 0, ue_jsmtf = 0, ue_fnt = 0, ue_lpsi = 6000, ue_no_counters = 0, ue_stop_all_counters = 0, ue_lob = '1', ue_sjslob = 0, ue_dsbl_cel = 1,\n                ue_swi = 1;\n                var ue_viz = function() {\n                    (function(b, f, d) {\n                        function g() {\n                            return (!(p in d) || 0 < d[p]) && (!(q in d) || 0 < d[q])\n                        }\n                        function h(c) {\n                            if (b.ue.viz.length < w && !r) {\n                                var a = c.type;\n                                c = c.originalEvent;\n                                /^focus./.test(a) && c && (c.toElement || c.fromElement || c.relatedTarget) || (a = g() ? f[s] || (\"blur\" == a || \"focusout\" == a ? t : u) : t,\n                                b.ue.viz.push(a + \":\" + (+new Date - b.ue.t0)),\n                                a == u && (b.ue.isl && x(\"at\"),\n                                r = 1))\n                            }\n                        }\n                        for (var r = 0, x = b.uex, a, k, l, s, v = [\"\", \"webkit\", \"o\", \"ms\", \"moz\"], e = 0, m = 1, u = \"visible\", t = \"hidden\", p = \"innerWidth\", q = \"innerHeight\", w = 20, n = 0; n < v.length && !e; n++)\n                            if (a = v[n],\n                            k = (a ? a + \"H\" : \"h\") + \"idden\",\n                            e = \"boolean\" == typeof f[k])\n                                l = a + \"visibilitychange\",\n                                s = (a ? a + \"V\" : \"v\") + \"isibilityState\";\n                        h({});\n                        e && f.addEventListener(l, h, 0);\n                        m = g() ? 1 : 0;\n                        d.addEventListener(\"resize\", function() {\n                            var a = g() ? 1 : 0;\n                            m !== a && (m = a,\n                            h({}))\n                        }, {\n                            passive: !0\n                        });\n                        b.ue && e && (b.ue.pageViz = {\n                            event: l,\n                            propHid: k\n                        })\n                    }\n                    )(ue_csm, ue_csm.document, ue_csm.window)\n                };\n                window.ue_viz = ue_viz;\n\n                (function(d, h, N) {\n                    function H(a) {\n                        return a && a.replace && a.replace(/^s+|s+$/g, \"\")\n                    }\n                    function u(a) {\n                        return \"undefined\" === typeof a\n                    }\n                    function B(a, b) {\n                        for (var c in b)\n                            b[v](c) && (a[c] = b[c])\n                    }\n                    function I(a) {\n                        try {\n                            var b = N.cookie.match(RegExp(\"(^| )\" + a + \"=([^;]+)\"));\n                            if (b)\n                                return b[2].trim()\n                        } catch (c) {}\n                    }\n                    function O(k, b, c) {\n                        var q = (x || {}).type;\n                        if (\"device\" !== c || 2 !== q && 1 !== q)\n                            k && (d.ue_id = a.id = a.rid = k,\n                            w && (w = w.replace(/((.*?:){2})(w+)/, function(a, b) {\n                                return b + k\n                            })),\n                            D && (e(\"id\", D, k),\n                            D = 0)),\n                            b && (w && (w = w.replace(/(.*?:)(w|-)+/, function(a, c) {\n                                return c + b\n                            })),\n                            d.ue_sid = b),\n                            c && a.tag(\"page-source:\" + c),\n                            d.ue_fpf = w\n                    }\n                    function P() {\n                        var a = {};\n                        return function(b) {\n                            b && (a[b] = 1);\n                            b = [];\n                            for (var c in a)\n                                a[v](c) && b.push(c);\n                            return b\n                        }\n                    }\n                    function y(d, b, c, q) {\n                        q = q || +new E;\n                        var g, m;\n                        if (b || u(c)) {\n                            if (d)\n                                for (m in g = b ? e(\"t\", b) || e(\"t\", b, {}) : a.t,\n                                g[d] = q,\n                                c)\n                                    c[v](m) && e(m, b, c[m]);\n                            return q\n                        }\n                    }\n                    function e(d, b, c) {\n                        var e = b && b != a.id ? a.sc[b] : a;\n                        e || (e = a.sc[b] = {});\n                        \"id\" === d && c && (Q = 1);\n                        return e[d] = c || e[d]\n                    }\n                    function R(d, b, c, e, g) {\n                        c = \"on\" + c;\n                        var m = b[c];\n                        \"function\" === typeof m ? d && (a.h[d] = m) : m = function() {}\n                        ;\n                        b[c] = function(a) {\n                            g ? (e(a),\n                            m(a)) : (m(a),\n                            e(a))\n                        }\n                        ;\n                        b[c] && (b[c].isUeh = 1)\n                    }\n                    function S(k, b, c, q) {\n                        function p(b, c) {\n                            var d = [b], f = 0, g = {}, m, h;\n                            c ? (d.push(\"m=1\"),\n                            g[c] = 1) : g = a.sc;\n                            for (h in g)\n                                if (g[v](h)) {\n                                    var q = e(\"wb\", h), p = e(\"t\", h) || {}, n = e(\"t0\", h) || a.t0, l;\n                                    if (c || 2 == q) {\n                                        q = q ? f++ : \"\";\n                                        d.push(\"sc\" + q + \"=\" + h);\n                                        for (l in p)\n                                            u(p[l]) || null === p[l] || d.push(l + q + \"=\" + (p[l] - n));\n                                        d.push(\"t\" + q + \"=\" + p[k]);\n                                        if (e(\"ctb\", h) || e(\"wb\", h))\n                                            m = 1\n                                    }\n                                }\n                            !J && m && d.push(\"ctb=1\");\n                            return d.join(\"&\")\n                        }\n                        function m(b, c, f, e, g) {\n                            if (b) {\n                                var k = d.ue_err;\n                                d.ue_url && !e && !g && b && 0 < b.length && (e = new Image,\n                                a.iel.push(e),\n                                e.src = b,\n                                a.count && a.count(\"postbackImageSize\", b.length));\n                                w ? (g = h.encodeURIComponent) && b && (e = new Image,\n                                b = \"\" + d.ue_fpf + g(b) + \":\" + (+new E - d.ue_t0),\n                                a.iel.push(e),\n                                e.src = b) : a.log && (a.log(b, \"uedata\", {\n                                    n: 1\n                                }),\n                                a.ielf.push(b));\n                                k && !k.ts && k.startTimer();\n                                a.b && (k = a.b,\n                                a.b = \"\",\n                                m(k, c, f, 1))\n                            }\n                        }\n                        function A(b) {\n                            var c = x ? x.type : F\n                              , d = 2 == c || a.isBFonMshop\n                              , c = c && !d\n                              , f = a.bfini;\n                            if (!Q || a.isBFCache)\n                                f && 1 < f && (b += \"&bfform=1\",\n                                c || (a.isBFT = f - 1)),\n                                d && (b += \"&bfnt=1\",\n                                a.isBFT = a.isBFT || 1),\n                                a.ssw && a.isBFT && (a.isBFonMshop && (a.isNRBF = 0),\n                                u(a.isNRBF) && (d = a.ssw(a.oid),\n                                d.e || u(d.val) || (a.isNRBF = 1 < d.val ? 0 : 1)),\n                                u(a.isNRBF) || (b += \"&nrbf=\" + a.isNRBF)),\n                                a.isBFT && !a.isNRBF && (b += \"&bft=\" + a.isBFT);\n                            return b\n                        }\n                        if (!a.paused && (b || u(c))) {\n                            for (var l in c)\n                                c[v](l) && e(l, b, c[l]);\n                            a.isBFonMshop || y(\"pc\", b, c);\n                            l = \"ld\" === k && b && e(\"wb\", b);\n                            var s = e(\"id\", b) || a.id;\n                            l || s === a.oid || (D = b,\n                            ba(s, (e(\"t\", b) || {}).tc || +e(\"t0\", b), +e(\"t0\", b)));\n                            var s = e(\"id\", b) || a.id, t = e(\"id2\", b), f = a.url + \"?\" + k + \"&v=\" + a.v + \"&id=\" + s, J = e(\"ctb\", b) || e(\"wb\", b), z;\n                            J && (f += \"&ctb=\" + J);\n                            t && (f += \"&id2=\" + t);\n                            1 < d.ueinit && (f += \"&ic=\" + d.ueinit);\n                            if (!(\"ld\" != k && \"ul\" != k || b && b != s)) {\n                                if (\"ld\" == k) {\n                                    try {\n                                        h[K] && h[K].isUeh && (h[K] = null)\n                                    } catch (I) {}\n                                    if (h.chrome)\n                                        for (t = 0; t < L.length; t++)\n                                            T(G, L[t]);\n                                    (t = N.ue_backdetect) && t.ue_back && t.ue_back.value++;\n                                    d._uess && (z = d._uess());\n                                    a.isl = 1\n                                }\n                                a._bf && (f += \"&bf=\" + a._bf());\n                                d.ue_navtiming && g && (e(\"ctb\", s, \"1\"),\n                                a.isBFonMshop || y(\"tc\", F, F, M));\n                                !C || a.isBFonMshop || U || (g && B(a.t, {\n                                    na_: g.navigationStart,\n                                    ul_: g.unloadEventStart,\n                                    _ul: g.unloadEventEnd,\n                                    rd_: g.redirectStart,\n                                    _rd: g.redirectEnd,\n                                    fe_: g.fetchStart,\n                                    lk_: g.domainLookupStart,\n                                    _lk: g.domainLookupEnd,\n                                    co_: g.connectStart,\n                                    _co: g.connectEnd,\n                                    sc_: g.secureConnectionStart,\n                                    rq_: g.requestStart,\n                                    rs_: g.responseStart,\n                                    _rs: g.responseEnd,\n                                    dl_: g.domLoading,\n                                    di_: g.domInteractive,\n                                    de_: g.domContentLoadedEventStart,\n                                    _de: g.domContentLoadedEventEnd,\n                                    _dc: g.domComplete,\n                                    ld_: g.loadEventStart,\n                                    _ld: g.loadEventEnd,\n                                    ntd: (\"function\" !== typeof C.now || u(M) ? 0 : new E(M + C.now()) - new E) + a.t0\n                                }),\n                                x && B(a.t, {\n                                    ty: x.type + a.t0,\n                                    rc: x.redirectCount + a.t0\n                                }),\n                                U = 1);\n                                a.isBFonMshop || B(a.t, {\n                                    hob: d.ue_hob,\n                                    hoe: d.ue_hoe\n                                });\n                                a.ifr && (f += \"&ifr=1\")\n                            }\n                            y(k, b, c, q);\n                            var r, n;\n                            l || b && b !== s || ca(b);\n                            (c = d.ue_mbl) && c.cnt && !l && (f += c.cnt());\n                            l ? e(\"wb\", b, 2) : \"ld\" == k && (a.lid = H(s));\n                            for (r in a.sc)\n                                if (1 == e(\"wb\", r))\n                                    break;\n                            if (l) {\n                                if (a.s)\n                                    return;\n                                f = p(f, null)\n                            } else\n                                c = p(f, null),\n                                c != f && (c = A(c),\n                                a.b = c),\n                                z && (f += z),\n                                f = p(f, b || a.id);\n                            f = A(f);\n                            if (a.b || l)\n                                for (r in a.sc)\n                                    2 == e(\"wb\", r) && delete a.sc[r];\n                            z = 0;\n                            a._rt && (f += \"&rt=\" + a._rt());\n                            c = h.csa;\n                            if (!l && c)\n                                for (n in r = e(\"t\", b) || {},\n                                c = c(\"PageTiming\"),\n                                r)\n                                    r[v](n) && c(\"mark\", da[n] || n, r[n]);\n                            l || (a.s = 0,\n                            (n = d.ue_err) && 0 < n.ec && n.pec < n.ec && (n.pec = n.ec,\n                            f += \"&ec=\" + n.ec + \"&ecf=\" + n.ecf),\n                            z = e(\"ctb\", b),\n                            \"ld\" !== k || b || a.markers ? a.markers && a.isl && !l && b && B(a.markers, e(\"t\", b)) : (a.markers = {},\n                            B(a.markers, e(\"t\", b))),\n                            e(\"t\", b, {}));\n                            a.tag && a.tag().length && (f += \"&csmtags=\" + a.tag().join(\"|\"),\n                            a.tag = P());\n                            n = a.viz || [];\n                            (r = n.length) && (f += \"&viz=\" + n.splice(0, r).join(\"|\"));\n                            u(d.ue_pty) || (f += \"&pty=\" + d.ue_pty + \"&spty=\" + d.ue_spty + \"&pti=\" + d.ue_pti);\n                            a.tabid && (f += \"&tid=\" + a.tabid);\n                            a.aftb && (f += \"&aftb=1\");\n                            !a._ui || b && b != s || (f += a._ui());\n                            f += \"&lob=\" + (d.ue_lob || \"0\");\n                            a.a = f;\n                            m(f, k, z, l, b && \"string\" === typeof b && -1 !== b.indexOf(\"csa:\"))\n                        }\n                    }\n                    function ca(a) {\n                        var b = h.ue_csm_markers || {}, c;\n                        for (c in b)\n                            b[v](c) && y(c, a, F, b[c])\n                    }\n                    function A(a, b, c) {\n                        c = c || h;\n                        if (c[V])\n                            c[V](a, b, !1);\n                        else if (c[W])\n                            c[W](\"on\" + a, b)\n                    }\n                    function T(a, b, c) {\n                        c = c || h;\n                        if (c[X])\n                            c[X](a, b, !1);\n                        else if (c[Y])\n                            c[Y](\"on\" + a, b)\n                    }\n                    function Z() {\n                        function a() {\n                            d.onUl()\n                        }\n                        function b(a) {\n                            return function() {\n                                c[a] || (c[a] = 1,\n                                S(a))\n                            }\n                        }\n                        var c = {}, e, g;\n                        d.onLd = b(\"ld\");\n                        d.onLdEnd = b(\"ld\");\n                        d.onUl = b(\"ul\");\n                        e = {\n                            stop: b(\"os\")\n                        };\n                        h.chrome ? (A(G, a),\n                        L.push(a)) : e[G] = d.onUl;\n                        for (g in e)\n                            e[v](g) && R(0, h, g, e[g]);\n                        d.ue_viz && ue_viz();\n                        A(\"load\", d.onLd);\n                        y(\"ue\")\n                    }\n                    function ba(e, b, c) {\n                        var g = d.ue_mbl\n                          , p = h.csa\n                          , m = p && p(\"SPA\")\n                          , p = p && p(\"PageTiming\");\n                        g && g.ajax && g.ajax(b, c);\n                        m && p && (m(\"newPage\", {\n                            requestId: e,\n                            transitionType: \"soft\"\n                        }),\n                        p(\"mark\", \"transitionStart\", b));\n                        a.tag(\"ajax-transition\")\n                    }\n                    d.ueinit = (d.ueinit || 0) + 1;\n                    var a = d.ue = d.ue || {};\n                    a.t0 = h.aPageStart || d.ue_t0;\n                    a.id = d.ue_id;\n                    a.url = d.ue_url;\n                    a.rid = d.ue_id;\n                    a.a = \"\";\n                    a.b = \"\";\n                    a.h = {};\n                    a.s = 1;\n                    a.t = {};\n                    a.sc = {};\n                    a.iel = [];\n                    a.ielf = [];\n                    a.viz = [];\n                    a.v = \"0.310795.0\";\n                    a.paused = !1;\n                    var v = \"hasOwnProperty\", G = \"beforeunload\", K = \"on\" + G, V = \"addEventListener\", X = \"removeEventListener\", W = \"attachEvent\", Y = \"detachEvent\", da = {\n                        cf: \"criticalFeature\",\n                        af: \"aboveTheFold\",\n                        fn: \"functional\",\n                        fp: \"firstPaint\",\n                        fcp: \"firstContentfulPaint\",\n                        bb: \"bodyBegin\",\n                        be: \"bodyEnd\",\n                        ld: \"loaded\"\n                    }, E = h.Date, C = h.performance || h.webkitPerformance, g = (C || {}).timing, x = (C || {}).navigation, M = (g || {}).navigationStart, w = d.ue_fpf, Q = 0, U = 0, L = [], D = 0, F;\n                    a.oid = H(a.id);\n                    a.lid = H(a.id);\n                    a._t0 = a.t0;\n                    a.tag = P();\n                    a.ifr = h.top !== h.self || h.frameElement ? 1 : 0;\n                    a.markers = null;\n                    a.attach = A;\n                    a.detach = T;\n                    if (\"000-0000000-8675309\" === d.ue_sid) {\n                        var $ = I(\"cdn-rid\")\n                          , aa = I(\"session-id\");\n                        $ && aa && O($, aa, \"cdn\")\n                    }\n                    d.uei = Z;\n                    d.ueh = R;\n                    d.ues = e;\n                    d.uet = y;\n                    d.uex = S;\n                    a.reset = O;\n                    a.pause = function(d) {\n                        a.paused = d\n                    }\n                    ;\n                    Z()\n                }\n                )(ue_csm, ue_csm.window, ue_csm.document);\n\n                ue.stub(ue, \"event\");\n                ue.stub(ue, \"onSushiUnload\");\n                ue.stub(ue, \"onSushiFlush\");\n\n                ue.stub(ue, \"log\");\n                ue.stub(ue, \"onunload\");\n                ue.stub(ue, \"onflush\");\n                (function(b) {\n                    function g() {\n                        var a = {\n                            requestId: b.ue_id || \"rid\",\n                            server: b.ue_sn || \"sn\",\n                            obfuscatedMarketplaceId: b.ue_mid || \"mid\"\n                        };\n                        b.ue_sjslob && (a.lob = b.ue_lob || \"0\");\n                        return a\n                    }\n                    var a = b.ue\n                      , h = 1 === b.ue_no_counters\n                      , k = 1 === b.ue_stop_all_counters;\n                    a.cv = {};\n                    a.cv.scopes = {};\n                    a.cv.buffer = [];\n                    a.count = function(b, f, c) {\n                        var e = {}\n                          , d = a.cv\n                          , g = c && 0 === c.c;\n                        e.counter = b;\n                        e.value = f;\n                        e.t = a.d();\n                        c && c.scope && (d = a.cv.scopes[c.scope] = a.cv.scopes[c.scope] || {},\n                        e.scope = c.scope);\n                        if (void 0 === f)\n                            return d[b];\n                        d[b] = f;\n                        d = 0;\n                        c && c.bf && (d = 1);\n                        k || h || (ue_csm.ue_sclog || !a.clog || 0 !== d || g ? a.log && a.log(e, \"csmcount\", {\n                            c: 1,\n                            bf: d\n                        }) : a.clog(e, \"csmcount\", {\n                            bf: d\n                        }));\n                        a.cv.buffer.push({\n                            c: b,\n                            v: f\n                        })\n                    }\n                    ;\n                    a.count(\"baselineCounter2\", 1);\n                    a && a.event && (a.event(g(), \"csm\", \"csm.CSMBaselineEvent.4\"),\n                    a.count(\"nexusBaselineCounter\", 1, {\n                        bf: 1\n                    }))\n                }\n                )(ue_csm);\n\n                var ue_hoe = +new Date();\n            }\n            window.ueinit = window.ue_ihb;\n        </script>\n        <!-- hm9g9 -->\n        <script>\n            window.ue && ue.count && ue.count('CSMLibrarySize', 10340)\n        </script>\n        <meta name=\"a2z:request_id\" content=\"B6B42Z8ZPKKYKC8XWKD7\">\n        <meta name=\"a2z:mons_app_name\" content=\"VendorRemittanceLibertyApp\">\n        <meta name=\"a2z:mons_config_name\" content=\"RemittanceRegionalVendorView\">\n        <meta name=\"a2z:mons_site_name\" content=\"vendorCentral\">\n        <script>\n            !function() {\n                if (window.BOOMR && (window.BOOMR.version || window.BOOMR.snippetExecuted))\n                    return;\n                window.BOOMR = window.BOOMR || {},\n                window.BOOMR.snippetExecuted = !0;\n                var e, t, n, o = document.createElement(\"iframe\"), d = window;\n                function i(e) {\n                    d.BOOMR_onload = e && e.timeStamp || (new Date).getTime()\n                }\n                d.addEventListener ? d.addEventListener(\"load\", i, !1) : d.attachEvent && d.attachEvent(\"onload\", i),\n                o.src = \"javascript:void(0)\",\n                o.title = \"\",\n                o.role = \"presentation\",\n                (o.frameElement || o).style.cssText = \"width:0;height:0;border:0;display:none;\",\n                (n = document.getElementsByTagName(\"script\")[0]) ? n.parentNode.insertBefore(o, n) : document.getElementsByTagName(\"head\")[0].appendChild(o);\n                try {\n                    t = o.contentWindow.document\n                } catch (n) {\n                    e = document.domain,\n                    o.src = \"javascript:var d=document.open();d.domain='\" + e + \"';void(0);\",\n                    t = o.contentWindow.document\n                }\n                t.open()._l = function() {\n                    var t = this.createElement(\"script\");\n                    e && (this.domain = e),\n                    t.id = \"boomr-if-as\",\n                    t.src = \"https://d1t40axu4ik42k.cloudfront.net/boomerang.8c6c93a3f6c6106b3e97.min.js\",\n                    window.BOOMR_lstart = (new Date).getTime(),\n                    this.body.appendChild(t)\n                }\n                ,\n                t.write('<body onload=\"document._l();\">'),\n                t.close()\n            }();\n        </script>\n        <script type=\"text/javascript\" id=\"cathode-loader\" async=\"\" data-mons=\"true\" data-browser-performance=\"true\" data-http_request_id=\"B6B42Z8ZPKKYKC8XWKD7\" data-sn=\"vendorCentral\" data-domain=\"prod\" data-realm=\"EUAmazon\" data-application-name=\"VendorRemittanceLibertyApp\" src=\"https://d1t40axu4ik42k.cloudfront.net/cathodeBoomerang.a9ac4d996f11e99f327a.min.js\"></script>\n        <link rel=\"stylesheet\" href=\"https://d1xay4df2pqje6.cloudfront.net/main.8f661968.css\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/11NWoo7bTLL.css?AUIClients/VftVitalWidgetAssets\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/018RghOTPKL.css?AUIClients/VftHarmonicFormAssets\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/01xIdkN54wL.css?AUIClients/VftMelodicTableAssets\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/31kV0uUlSjL.css?AUIClients/MrTableUI\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/11+BsbU2mSL._RC|21IJD91Su3L.css_.css?AUIClients/AmazonUICalendar#not-trident\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/01h5MPddwAL.css?AUIClients/VendorRemittanceLibertyAppAssets\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/11EIQ5IGqaL._RC|01ZTHTZObnL.css,51FIeTurRAL.css,31fFxDf00KL.css,012SlIQp3XL.css,11D3BPoiHRL.css,01qDClimA1L.css,01pOTCa2wPL.css,413Vvv3GONL.css,11TIuySqr6L.css,01Rw4F+QU6L.css,11JJsNcqOIL.css,01J3raiFJrL.css,01IdKcBuAdL.css,014QJx7nWqL.css,21Otytu1xYL.css,01Sv7-fQIGL.css,51mfNuT7JUL.css,01XPHJk60-L.css,11ChJlzZQoL.css,01UgxIH-BSL.css,01fxuupJToL.css,21+W7u4fDzL.css,01oATFSeEjL.css,21RWaJb6t+L.css,11I+YZzE7kL.css,211Xmr7zN2L.css,01CFUgsA-YL.css,31UaWAYAYPL.css,11PDZ29p-PL.css,111bsezNMhL.css,11tNhCU--0L.css,11msBd9oOTL.css,11BO1RWH3kL.css,011ylpySXkL.css,21aIYZpUYPL.css,01petkFB4FL.css,11Wb9slw7JL.css,01uDrkI-EcL.css,21BqeAVSM4L.css,113EFChyAjL.css,11hvENnYNUL.css,11Qek6G6pNL.css,01890+Vwk8L.css,014VAMpg+ZL.css,01qiwJ7qDfL.css,21TAMzcrOKL.css,016mfgi+D2L.css,01gU3ljx0fL.css,21l8QuSB5IL.css,013-xYw+SRL.css_.css?AUIClients/AmazonUI#gb.not-trident.991784-T1.1092656-T2.1073045-T2.1074116-T2.1074121-T2.1074849-T2\"/>\n        <script>\n            (function(b, a, c, d) {\n                if ((b = b.AmazonUIPageJS || b.P) && b.when && b.register) {\n                    c = [];\n                    for (a = a.currentScript; a; a = a.parentElement)\n                        a.id && c.push(a.id);\n                    return b.log(\"A copy of P has already been loaded on this page.\", \"FATAL\", c.join(\" \"))\n                }\n            }\n            )(window, document, Date);\n            (function(a, b, c, d) {\n                \"use strict\";\n                a._pSetI = function() {\n                    return null\n                }\n            }\n            )(window, document, Date);\n            (function(d, G, I, J) {\n                \"use strict\";\n                d._sw = function() {\n                    var p;\n                    return function(w, e, u, z, h, A, q, k, x, B) {\n                        p || (p = !0,\n                        B.execute(\"RetailPageServiceWorker\", function() {\n                            function y(a, b) {\n                                g.controller && a ? (a = {\n                                    feature: \"retail_service_worker_messaging\",\n                                    command: a\n                                },\n                                b && (a.data = b),\n                                g.controller.postMessage(a)) : a && h(\"sw:sw_message_no_ctrl\", 1)\n                            }\n                            function p(a) {\n                                var b = a.data;\n                                if (b && \"retail_service_worker_messaging\" === b.feature && b.command && b.data) {\n                                    var c = b.data;\n                                    a = d.ue;\n                                    var f = d.ueLogError;\n                                    switch (b.command) {\n                                    case \"log_counter\":\n                                        a && k(a.count) && c.name && a.count(c.name, 0 === c.value ? 0 : c.value || 1);\n                                        break;\n                                    case \"log_tag\":\n                                        a && k(a.tag) && c.tag && (a.tag(c.tag),\n                                        b = d.uex,\n                                        a.isl && k(b) && b(\"at\"));\n                                        break;\n                                    case \"log_error\":\n                                        f && k(f) && c.message && f({\n                                            message: c.message,\n                                            logLevel: c.level || \"ERROR\",\n                                            attribution: c.attribution || \"RetailServiceWorker\"\n                                        });\n                                        break;\n                                    case \"log_weblab_trigger\":\n                                        if (!c.weblab || !c.treatment)\n                                            break;\n                                        a && k(a.trigger) ? a.trigger(c.weblab, c.treatment) : (h(\"sw:wt:miss\"),\n                                        h(\"sw:wt:miss:\" + c.weblab + \":\" + c.treatment));\n                                        break;\n                                    default:\n                                        h(\"sw:unsupported_message_command\", 1)\n                                    }\n                                }\n                            }\n                            function v(a, b) {\n                                return \"sw:\" + (b || \"\") + \":\" + a + \":\"\n                            }\n                            function C() {\n                                l.forEach(function(a) {\n                                    q(a)\n                                })\n                            }\n                            function n(a) {\n                                return a.capabilities.isAmazonApp && a.capabilities.android\n                            }\n                            function D(a, b, c) {\n                                if (b)\n                                    if (b.mshop && n(a))\n                                        a = v(c, \"mshop_and\"),\n                                        b = b.mshop.action,\n                                        l.push(a + \"supported\"),\n                                        b(a, c);\n                                    else if (b.browser) {\n                                        a = u(/Chrome/i) && !u(/Edge/i) && !u(/OPR/i) && !a.capabilities.isAmazonApp && !u(new RegExp(z + \"bwv\" + z + \"b\"));\n                                        var f = b.browser;\n                                        b = v(c, \"browser\");\n                                        a ? (a = f.action,\n                                        l.push(b + \"supported\"),\n                                        a(b, c)) : l.push(b + \"unsupported\")\n                                    }\n                            }\n                            function E(a, b, c) {\n                                a && l.push(v(\"register\", c) + \"unsupported\");\n                                b && l.push(v(\"unregister\", c) + \"unsupported\");\n                                C()\n                            }\n                            try {\n                                var g = navigator.serviceWorker\n                            } catch (a) {\n                                q(\"sw:nav_err\")\n                            }\n                            (function() {\n                                if (g) {\n                                    var a = function() {\n                                        y(\"page_loaded\", {\n                                            rid: d.ue_id,\n                                            mid: d.ue_mid,\n                                            pty: d.ue_pty,\n                                            sid: d.ue_sid,\n                                            spty: d.ue_spty,\n                                            furl: d.ue_furl\n                                        })\n                                    };\n                                    x(g, \"message\", p);\n                                    y(\"client_messaging_ready\");\n                                    B.when(\"load\").execute(a);\n                                    x(g, \"controllerchange\", function() {\n                                        y(\"client_messaging_ready\");\n                                        \"complete\" === G.readyState && a()\n                                    })\n                                }\n                            }\n                            )();\n                            var l = []\n                              , m = function(a, b) {\n                                var c = d.uex\n                                  , f = d.uet;\n                                a = e(\":\", \"aui\", \"sw\", a);\n                                \"ld\" === b && k(c) ? c(\"ld\", a, {\n                                    wb: 1\n                                }) : k(f) && f(b, a, {\n                                    wb: 1\n                                })\n                            }\n                              , H = function(a, b, c) {\n                                function f(a) {\n                                    b && k(b.failure) && b.failure(a)\n                                }\n                                function F() {\n                                    l = setTimeout(function() {\n                                        q(e(\":\", \"sw:\" + r, t.TIMED_OUT));\n                                        f({\n                                            ok: !1,\n                                            statusCode: t.TIMED_OUT,\n                                            done: !1\n                                        });\n                                        m(r, \"ld\")\n                                    }, c || 4E3)\n                                }\n                                var t = {\n                                    NO_CONTROLLER: \"no_ctrl\",\n                                    TIMED_OUT: \"timed_out\",\n                                    UNSUPPORTED_BROWSER: \"unsupported_browser\",\n                                    UNEXPECTED_RESPONSE: \"unexpected_response\"\n                                }, r = e(\":\", a.feature, a.command), l, n = !0;\n                                if (\"MessageChannel\"in d && g && \"controller\"in g)\n                                    if (g.controller) {\n                                        var p = new MessageChannel;\n                                        p.port1.onmessage = function(c) {\n                                            (c = c.data) && c.feature === a.feature && c.command === a.command ? (n && (m(r, \"cf\"),\n                                            n = !1),\n                                            m(r, \"af\"),\n                                            clearTimeout(l),\n                                            c.done || F(),\n                                            c.ok ? b && k(b.success) && b.success(c) : f(c),\n                                            c.done && m(r, \"ld\")) : h(e(\":\", \"sw:\" + r, t.UNEXPECTED_RESPONSE), 1)\n                                        }\n                                        ;\n                                        F();\n                                        m(r, \"bb\");\n                                        g.controller.postMessage(a, [p.port2])\n                                    } else\n                                        q(e(\":\", \"sw:\" + a.feature, t.NO_CONTROLLER)),\n                                        f({\n                                            ok: !1,\n                                            statusCode: t.NO_CONTROLLER,\n                                            done: !0\n                                        });\n                                else\n                                    q(e(\":\", \"sw:\" + a.feature, t.UNSUPPORTED_BROWSER)),\n                                    f({\n                                        ok: !1,\n                                        statusCode: t.UNSUPPORTED_BROWSER,\n                                        done: !0\n                                    })\n                            };\n                            (function() {\n                                g ? (m(\"ctrl_changed\", \"bb\"),\n                                g.addEventListener(\"controllerchange\", function() {\n                                    q(\"sw:ctrl_changed\");\n                                    m(\"ctrl_changed\", \"ld\")\n                                })) : h(e(\":\", \"sw:ctrl_changed\", \"sw_unsupp\"), 1)\n                            }\n                            )();\n                            (function() {\n                                var a = function() {\n                                    m(b, \"ld\");\n                                    var a = d.uex;\n                                    H({\n                                        feature: \"page_proxy\",\n                                        command: \"request_feature_tags\"\n                                    }, {\n                                        success: function(b) {\n                                            b = b.data;\n                                            Array.isArray(b) && b.forEach(function(a) {\n                                                \"string\" === typeof a ? q(e(\":\", \"sw:ppft\", a)) : h(e(\":\", \"sw:ppft\", \"invalid_tag\"), 1)\n                                            });\n                                            h(e(\":\", \"sw:ppft\", \"success\"), 1);\n                                            A && A.isl && k(a) && a(\"at\")\n                                        },\n                                        failure: function(a) {\n                                            h(e(\":\", \"sw:ppft\", \"error:\" + (a.statusCode || \"ppft_error\")), 1)\n                                        }\n                                    })\n                                };\n                                if (\"requestIdleCallback\"in d) {\n                                    var b = e(\":\", \"ppft\", \"callback_ricb\");\n                                    d.requestIdleCallback(a, {\n                                        timeout: 1E3\n                                    })\n                                } else\n                                    b = e(\":\", \"ppft\", \"callback_timeout\"),\n                                    setTimeout(a, 0);\n                                m(b, \"bb\")\n                            }\n                            )();\n                            (function(a) {\n                                var b = a.reg\n                                  , c = a.unreg;\n                                g && g.getRegistrations ? (w.when(\"A\").execute(function(b) {\n                                    if ((a.reg.mshop || a.unreg.mshop) && \"function\" === typeof n && n(b)) {\n                                        var f = a.reg.mshop ? \"T1\" : \"C\"\n                                          , e = d.ue;\n                                        e && e.trigger ? e.trigger(\"MSHOP_SW_CLIENT_446196\", f) : h(\"sw:mshop:wt:failed\")\n                                    }\n                                    D(b, c, \"unregister\")\n                                }),\n                                x(d, \"load\", function() {\n                                    w.when(\"A\").execute(function(a) {\n                                        D(a, b, \"register\");\n                                        C()\n                                    })\n                                })) : (E(b && b.browser, c && c.browser, \"browser\"),\n                                w.when(\"A\").execute(function(a) {\n                                    \"function\" === typeof n && n(a) && E(b && b.mshop, c && c.mshop, \"mshop_and\")\n                                }))\n                            }\n                            )({\n                                reg: {},\n                                unreg: {}\n                            })\n                        }))\n                    }\n                }()\n            }\n            )(window, document, Date);\n            (function(c, e, I, B) {\n                \"use strict\";\n                c._pd = function() {\n                    var a, u;\n                    return function(C, f, h, k, b, D, v, E, F) {\n                        function w(d) {\n                            try {\n                                return d()\n                            } catch (J) {\n                                return !1\n                            }\n                        }\n                        function l() {\n                            if (m) {\n                                var d = {\n                                    w: c.innerWidth || b.clientWidth,\n                                    h: c.innerHeight || b.clientHeight\n                                };\n                                5 < Math.abs(d.w - q.w) || 50 < d.h - q.h ? (q = d,\n                                n = 4,\n                                (d = a.mobile || a.tablet ? 450 < d.w && d.w > d.h : 1250 <= d.w) ? k(b, \"a-ws\") : b.className = v(b, \"a-ws\")) : 0 < n && (n--,\n                                x = setTimeout(l, 16))\n                            }\n                        }\n                        function G(d) {\n                            (m = d === B ? !m : !!d) && l()\n                        }\n                        function H() {\n                            return m\n                        }\n                        if (!u) {\n                            u = !0;\n                            var r = function() {\n                                var d = [\"O\", \"ms\", \"Moz\", \"Webkit\"]\n                                  , c = e.createElement(\"div\");\n                                return {\n                                    testGradients: function() {\n                                        return !0\n                                    },\n                                    test: function(a) {\n                                        var b = a.charAt(0).toUpperCase() + a.substr(1);\n                                        a = (d.join(b + \" \") + b + \" \" + a).split(\" \");\n                                        for (b = a.length; b--; )\n                                            if (\"\" === c.style[a[b]])\n                                                return !0;\n                                        return !1\n                                    },\n                                    testTransform3d: function() {\n                                        return !0\n                                    }\n                                }\n                            }()\n                              , y = b.className\n                              , z = /(^| )a-mobile( |$)/.test(y)\n                              , A = /(^| )a-tablet( |$)/.test(y);\n                            a = {\n                                audio: function() {\n                                    return !!e.createElement(\"audio\").canPlayType\n                                },\n                                video: function() {\n                                    return !!e.createElement(\"video\").canPlayType\n                                },\n                                canvas: function() {\n                                    return !!e.createElement(\"canvas\").getContext\n                                },\n                                svg: function() {\n                                    return !!e.createElementNS && !!e.createElementNS(\"http://www.w3.org/2000/svg\", \"svg\").createSVGRect\n                                },\n                                offline: function() {\n                                    return navigator.hasOwnProperty && navigator.hasOwnProperty(\"onLine\") && navigator.onLine\n                                },\n                                dragDrop: function() {\n                                    return \"draggable\"in e.createElement(\"span\")\n                                },\n                                geolocation: function() {\n                                    return !!navigator.geolocation\n                                },\n                                history: function() {\n                                    return !(!c.history || !c.history.pushState)\n                                },\n                                webworker: function() {\n                                    return !!c.Worker\n                                },\n                                autofocus: function() {\n                                    return \"autofocus\"in e.createElement(\"input\")\n                                },\n                                inputPlaceholder: function() {\n                                    return \"placeholder\"in e.createElement(\"input\")\n                                },\n                                textareaPlaceholder: function() {\n                                    return \"placeholder\"in e.createElement(\"textarea\")\n                                },\n                                localStorage: function() {\n                                    return \"localStorage\"in c && null !== c.localStorage\n                                },\n                                orientation: function() {\n                                    return \"orientation\"in c\n                                },\n                                touch: function() {\n                                    return \"ontouchend\"in e\n                                },\n                                gradients: function() {\n                                    return r.testGradients()\n                                },\n                                hires: function() {\n                                    var a = c.devicePixelRatio && 1.5 <= c.devicePixelRatio || c.matchMedia && c.matchMedia(\"(min-resolution:144dpi)\").matches;\n                                    E(\"hiRes\" + (z ? \"Mobile\" : A ? \"Tablet\" : \"Desktop\"), a ? 1 : 0);\n                                    return a\n                                },\n                                transform3d: function() {\n                                    return r.testTransform3d()\n                                },\n                                touchScrolling: function() {\n                                    return f(/Windowshop|android|OS ([5-9]|[1-9][0-9]+)(_[0-9]{1,2})+ like Mac OS X|SOFTWARE=([5-9]|[1-9][0-9]+)(.[0-9]{1,2})+.*DEVICE=iPhone|Chrome|Silk|Firefox|Trident.+?; Touch/i)\n                                },\n                                ios: function() {\n                                    return f(/OS [1-9][0-9]*(_[0-9]*)+ like Mac OS X/i) && !f(/trident|Edge/i)\n                                },\n                                android: function() {\n                                    return f(/android.([1-9]|[L-Z])/i) && !f(/trident|Edge/i)\n                                },\n                                mobile: function() {\n                                    return z\n                                },\n                                tablet: function() {\n                                    return A\n                                },\n                                rtl: function() {\n                                    return \"rtl\" === b.dir\n                                }\n                            };\n                            for (var g in a)\n                                a.hasOwnProperty(g) && (a[g] = w(a[g]));\n                            for (var t = \"textShadow textStroke boxShadow borderRadius borderImage opacity transform transition\".split(\" \"), p = 0; p < t.length; p++)\n                                a[t[p]] = w(function() {\n                                    return r.test(t[p])\n                                });\n                            var m = !0\n                              , x = 0\n                              , q = {\n                                w: 0,\n                                h: 0\n                            }\n                              , n = 4;\n                            l();\n                            h(c, \"resize\", function() {\n                                clearTimeout(x);\n                                n = 4;\n                                l()\n                            });\n                            b.className = v(b, \"a-no-js\");\n                            k(b, \"a-js\");\n                            !f(/OS [1-8](_[0-9]*)+ like Mac OS X/i) || c.navigator.standalone || f(/safari/i) || k(b, \"a-ember\");\n                            h = [];\n                            for (g in a)\n                                a.hasOwnProperty(g) && a[g] && h.push(\"a-\" + g.replace(/([A-Z])/g, function(a) {\n                                    return \"-\" + a.toLowerCase()\n                                }));\n                            k(b, h.join(\" \"));\n                            b.setAttribute(\"data-aui-build-date\", F);\n                            C.register(\"p-detect\", function() {\n                                return {\n                                    capabilities: a,\n                                    localStorage: a.localStorage && D,\n                                    toggleResponsiveGrid: G,\n                                    responsiveGridEnabled: H\n                                }\n                            });\n                            return a || {}\n                        }\n                    }\n                }()\n            }\n            )(window, document, Date);\n            (function(g, l, C, D) {\n                function E(a) {\n                    n && n.tag && n.tag(p(\":\", \"aui\", a))\n                }\n                function m(a, b) {\n                    n && n.count && n.count(\"aui:\" + a, 0 === b ? 0 : b || (n.count(\"aui:\" + a) || 0) + 1)\n                }\n                function F(a) {\n                    try {\n                        return a.test(navigator.userAgent)\n                    } catch (b) {\n                        return !1\n                    }\n                }\n                function G(a) {\n                    return \"function\" === typeof a\n                }\n                function u(a, b, c) {\n                    a.addEventListener ? a.addEventListener(b, c, !1) : a.attachEvent && a.attachEvent(\"on\" + b, c)\n                }\n                function p(a, b, c, f) {\n                    b = b && c ? b + a + c : b || c;\n                    return f ? p(a, b, f) : b\n                }\n                function y(a, b, c) {\n                    try {\n                        Object.defineProperty(a, b, {\n                            value: c,\n                            writable: !1\n                        })\n                    } catch (f) {\n                        a[b] = c\n                    }\n                    return c\n                }\n                function O(a, b) {\n                    a.className = P(a, b) + \" \" + b\n                }\n                function P(a, b) {\n                    return (\" \" + a.className + \" \").split(\" \" + b + \" \").join(\" \").replace(/^ | $/g, \"\")\n                }\n                function ca(a, b, c) {\n                    var f = c = a.length\n                      , e = function() {\n                        f-- || (H.push(b),\n                        I || (q ? q.set(z) : setTimeout(z, 0),\n                        I = !0))\n                    };\n                    for (e(); c--; )\n                        Q[a[c]] ? e() : (v[a[c]] = v[a[c]] || []).push(e)\n                }\n                function da(a, b, c, f, e) {\n                    var d = l.createElement(a ? \"script\" : \"link\");\n                    u(d, \"error\", f);\n                    e && u(d, \"load\", e);\n                    a ? (d.type = \"text/javascript\",\n                    d.async = !0,\n                    c && /AUIClients|images[/]I/.test(b) && d.setAttribute(\"crossorigin\", \"anonymous\"),\n                    d.src = b) : (d.rel = \"stylesheet\",\n                    d.href = b);\n                    l.getElementsByTagName(\"head\")[0].appendChild(d)\n                }\n                function R(a, b) {\n                    return function(c, f) {\n                        function e() {\n                            da(b, c, d, function(b) {\n                                J ? m(\"resource_unload\") : d ? (d = !1,\n                                m(\"resource_retry\"),\n                                e()) : (m(\"resource_error\"),\n                                a.log(\"Asset failed to load: \" + c));\n                                b && b.stopPropagation ? b.stopPropagation() : g.event && (g.event.cancelBubble = !0)\n                            }, f)\n                        }\n                        if (S[c])\n                            return !1;\n                        S[c] = !0;\n                        m(\"resource_count\");\n                        var d = !0;\n                        return !e()\n                    }\n                }\n                function ea(a, b, c) {\n                    for (var f = {\n                        name: a,\n                        guard: function(c) {\n                            return b.guardFatal(a, c)\n                        },\n                        guardTime: function(a) {\n                            return b.guardTime(a)\n                        },\n                        logError: function(c, d, e) {\n                            b.logError(c, d, e, a)\n                        }\n                    }, e = [], d = 0; d < c.length; d++)\n                        A.hasOwnProperty(c[d]) && (e[d] = K.hasOwnProperty(c[d]) ? K[c[d]](A[c[d]], f) : A[c[d]]);\n                    return e\n                }\n                function w(a, b, c, f, e) {\n                    return function(d, k) {\n                        function n() {\n                            var a = null;\n                            f ? a = k : G(k) && (q.start = r(),\n                            a = k.apply(g, ea(d, h, l)),\n                            q.end = r());\n                            if (b) {\n                                A[d] = a;\n                                a = d;\n                                for (Q[a] = !0; (v[a] || []).length; )\n                                    v[a].shift()();\n                                delete v[a]\n                            }\n                            q.done = !0\n                        }\n                        var h = e || this;\n                        G(d) && (k = d,\n                        d = D);\n                        b && (d = d ? d.replace(T, \"\") : \"__NONAME__\",\n                        L.hasOwnProperty(d) && h.error(p(\", reregistered by \", p(\" by \", d + \" already registered\", L[d]), h.attribution), d),\n                        L[d] = h.attribution);\n                        for (var l = [], m = 0; m < a.length; m++)\n                            l[m] = a[m].replace(T, \"\");\n                        var q = x[d || \"anon\" + ++fa] = {\n                            depend: l,\n                            registered: r(),\n                            namespace: h.namespace\n                        };\n                        d && ha.hasOwnProperty(d);\n                        c ? n() : ca(l, h.guardFatal(d, n), d);\n                        return {\n                            decorate: function(a) {\n                                K[d] = h.guardFatal(d, a)\n                            }\n                        }\n                    }\n                }\n                function U(a) {\n                    return function() {\n                        var b = Array.prototype.slice.call(arguments);\n                        return {\n                            execute: w(b, !1, a, !1, this),\n                            register: w(b, !0, a, !1, this)\n                        }\n                    }\n                }\n                function M(a, b) {\n                    return function(c, f) {\n                        f || (f = c,\n                        c = D);\n                        var e = this.attribution;\n                        return function() {\n                            h.push(b || {\n                                attribution: e,\n                                name: c,\n                                logLevel: a\n                            });\n                            var d = f.apply(this, arguments);\n                            h.pop();\n                            return d\n                        }\n                    }\n                }\n                function B(a, b) {\n                    this.load = {\n                        js: R(this, !0),\n                        css: R(this)\n                    };\n                    y(this, \"namespace\", b);\n                    y(this, \"attribution\", a)\n                }\n                function V() {\n                    l.body ? k.trigger(\"a-bodyBegin\") : setTimeout(V, 20)\n                }\n                \"use strict\";\n                var t = C.now = C.now || function() {\n                    return +new C\n                }\n                  , r = function(a) {\n                    return a && a.now ? a.now.bind(a) : t\n                }(g.performance)\n                  , ia = r()\n                  , ha = {}\n                  , n = g.ue;\n                E();\n                E(\"aui_build_date:3.25.2-2025-04-21\");\n                var W = {\n                    getItem: function(a) {\n                        try {\n                            return g.localStorage.getItem(a)\n                        } catch (b) {}\n                    },\n                    setItem: function(a, b) {\n                        try {\n                            return g.localStorage.setItem(a, b)\n                        } catch (c) {}\n                    }\n                }\n                  , q = g._pSetI()\n                  , H = []\n                  , ja = []\n                  , I = !1\n                  , ka = navigator.scheduling && \"function\" === typeof navigator.scheduling.isInputPending;\n                var z = function() {\n                    for (var a = q ? q.set(z) : setTimeout(z, 0), b = t(); ja.length || H.length; )\n                        if (H.shift()(),\n                        q && ka) {\n                            if (150 < t() - b && !navigator.scheduling.isInputPending() || 50 < t() - b && navigator.scheduling.isInputPending())\n                                return\n                        } else if (50 < t() - b)\n                            return;\n                    q ? q.clear(a) : clearTimeout(a);\n                    I = !1\n                };\n                var Q = {}\n                  , v = {}\n                  , S = {}\n                  , J = !1;\n                u(g, \"beforeunload\", function() {\n                    J = !0;\n                    setTimeout(function() {\n                        J = !1\n                    }, 1E4)\n                });\n                var T = /^prv:/\n                  , L = {}\n                  , A = {}\n                  , K = {}\n                  , x = {}\n                  , fa = 0\n                  , X = String.fromCharCode(92)\n                  , h = []\n                  , Y = !0\n                  , Z = g.onerror;\n                g.onerror = function(a, b, c, f, e) {\n                    e && \"object\" === typeof e || (e = Error(a, b, c),\n                    e.columnNumber = f,\n                    e.stack = b || c || f ? p(X, e.message, \"at \" + p(\":\", b, c, f)) : D);\n                    var d = h.pop() || {};\n                    e.attribution = p(\":\", e.attribution || d.attribution, d.name);\n                    e.logLevel = d.logLevel;\n                    e.attribution && console && console.log && console.log([e.logLevel || \"ERROR\", a, \"thrown by\", e.attribution].join(\" \"));\n                    h = [];\n                    Z && (d = [].slice.call(arguments),\n                    d[4] = e,\n                    Z.apply(g, d))\n                }\n                ;\n                B.prototype = {\n                    logError: function(a, b, c, f) {\n                        b = {\n                            message: b,\n                            logLevel: c || \"ERROR\",\n                            attribution: p(\":\", this.attribution, f)\n                        };\n                        if (g.ueLogError)\n                            return g.ueLogError(a || b, a ? b : null),\n                            !0;\n                        console && console.error && (console.log(b),\n                        console.error(a));\n                        return !1\n                    },\n                    error: function(a, b, c, f) {\n                        a = Error(p(\":\", f, a, c));\n                        a.attribution = p(\":\", this.attribution, b);\n                        throw a;\n                    },\n                    guardError: M(),\n                    guardFatal: M(\"FATAL\"),\n                    guardCurrent: function(a) {\n                        var b = h[h.length - 1];\n                        return b ? M(b.logLevel, b).call(this, a) : a\n                    },\n                    guardTime: function(a) {\n                        var b = h[h.length - 1]\n                          , c = b && b.name;\n                        return c && c in x ? function() {\n                            var b = r()\n                              , e = a.apply(this, arguments);\n                            x[c].async = (x[c].async || 0) + r() - b;\n                            return e\n                        }\n                        : a\n                    },\n                    log: function(a, b, c) {\n                        return this.logError(null, a, b, c)\n                    },\n                    declare: w([], !0, !0, !0),\n                    register: w([], !0),\n                    execute: w([]),\n                    AUI_BUILD_DATE: \"3.25.2-2025-04-21\",\n                    when: U(),\n                    now: U(!0),\n                    trigger: function(a, b, c) {\n                        var f = t();\n                        this.declare(a, {\n                            data: b,\n                            pageElapsedTime: f - (g.aPageStart || NaN),\n                            triggerTime: f\n                        });\n                        c && c.instrument && N.when(\"prv:a-logTrigger\").execute(function(b) {\n                            b(a)\n                        })\n                    },\n                    handleTriggers: function() {\n                        this.log(\"handleTriggers deprecated\")\n                    },\n                    attributeErrors: function(a) {\n                        return new B(a)\n                    },\n                    _namespace: function(a, b) {\n                        return new B(a,b)\n                    },\n                    setPriority: function(a) {\n                        Y ? Y = !1 : this.log(\"setPriority only accept the first call.\")\n                    }\n                };\n                var k = y(g, \"AmazonUIPageJS\", new B);\n                var N = k._namespace(\"PageJS\", \"AmazonUI\");\n                N.declare(\"prv:p-debug\", x);\n                k.declare(\"p-recorder-events\", []);\n                k.declare(\"p-recorder-stop\", function() {});\n                y(g, \"P\", k);\n                V();\n                if (l.addEventListener) {\n                    var aa;\n                    l.addEventListener(\"DOMContentLoaded\", aa = function() {\n                        k.trigger(\"a-domready\");\n                        l.removeEventListener(\"DOMContentLoaded\", aa, !1)\n                    }\n                    , !1)\n                }\n                var ba = l.documentElement\n                  , la = g._pd(k, F, u, O, ba, W, P, m, \"3.25.2-2025-04-21\");\n                F(/UCBrowser/i) || la.localStorage && O(ba, W.getItem(\"a-font-class\"));\n                k.declare(\"a-event-revised-handling\", !1);\n                g._sw(N, p, F, X, m, n, E, G, u, k);\n                k.declare(\"a-fix-event-off\", !1);\n                m(\"pagejs:pkgExecTime\", r() - ia)\n            }\n            )(window, document, Date);\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/21TTgFboxZL.js?AUIClients/VftVitalWidgetAssets');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/61uLwfmbtbL.js?AUIClients/VftHarmonicFormAssets');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/214C-V9fmiL.js?AUIClients/VendorCentralLocalizedAUICalendar');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/41EJMFJJO-L.js?AUIClients/VftMelodicTableAssets');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/01ZGBYvP+3L._RC|516Zv5asIKL.js_.js?AUIClients/MrTableUI');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/31vB5DAPhsL.js?AUIClients/AmazonUICalendar');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/31eN1U3NunL.js?AUIClients/VendorRemittanceLibertyAppAssets');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/11S8+gqVNUL.js?AUIClients/MYPHMDUtilsBuzzAssets');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/11zuylp74DL._RC|61xJcNKKLXL.js,11Y+5x+kkTL.js,51F3LXOLEtL.js,11EeeaacI2L.js,11GgN1+C7hL.js,01+z+uIeJ-L.js,01VRMV3FBdL.js,21u+kGQyRqL.js,012FVc3131L.js,11aD5q6kNBL.js,11rRjDLdAVL.js,51zH7YD-TsL.js,11nAhXzgUmL.js,11dIAzUNpxL.js,1110g-SvlBL.js,116PwN2VXHL.js,21+WA5wfjfL.js,0190vxtlzcL.js,51xvEQZx5oL.js,01JYHc2oIlL.js,31nfKXylf6L.js,01ktRCtOqKL.js,01VIlNGiFCL.js,11bEz2VIYrL.js,31o2NGTXThL.js,01rpauTep4L.js,31N+6dLod0L.js,01tvglXfQOL.js,11+FwJUUPNL.js,014gnDeJDsL.js,11vb6P5C5AL.js,015+pUPweLL.js_.js?AUIClients/AmazonUI#372963-T1.1072613-T2');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://d1uznvntk80v7s.cloudfront.net/katal.assetloader.27d53ecb2cbc.min.js');\n        </script>\n        <script src=\"https://d1xay4df2pqje6.cloudfront.net/main.89520936.js\"></script>\n        <title>Amazon</title>\n        <script type='text/javascript'>\n            window.ue_ihe = (window.ue_ihe || 0) + 1;\n            if (window.ue_ihe === 1) {\n                (function(c) {\n                    c && 1 === c.ue_jsmtf && \"object\" === typeof c.P && \"function\" === typeof c.P.when && c.P.when(\"mshop-interactions\").execute(function(e) {\n                        \"object\" === typeof e && \"function\" === typeof e.addListener && e.addListener(function(b) {\n                            \"object\" === typeof b && \"ORIGIN\" === b.dataSource && \"number\" === typeof b.clickTime && \"object\" === typeof b.events && \"number\" === typeof b.events.pageVisible && (c.ue_jsmtf_interaction = {\n                                pv: b.events.pageVisible,\n                                ct: b.clickTime\n                            })\n                        })\n                    })\n                }\n                )(ue_csm);\n                (function(c, e, b) {\n                    function m(a) {\n                        f || (f = d[a.type].id,\n                        \"undefined\" === typeof a.clientX ? (h = a.pageX,\n                        k = a.pageY) : (h = a.clientX,\n                        k = a.clientY),\n                        2 != f || l && (l != h || n != k) ? (r(),\n                        g.isl && e.setTimeout(function() {\n                            p(\"at\", g.id)\n                        }, 0)) : (l = h,\n                        n = k,\n                        f = 0))\n                    }\n                    function r() {\n                        for (var a in d)\n                            d.hasOwnProperty(a) && g.detach(a, m, d[a].parent)\n                    }\n                    function s() {\n                        for (var a in d)\n                            d.hasOwnProperty(a) && g.attach(a, m, d[a].parent)\n                    }\n                    function t() {\n                        var a = \"\";\n                        !q && f && (q = 1,\n                        a += \"&ui=\" + f);\n                        return a\n                    }\n                    var g = c.ue, p = c.uex, q = 0, f = 0, l, n, h, k, d = {\n                        click: {\n                            id: 1,\n                            parent: b\n                        },\n                        mousemove: {\n                            id: 2,\n                            parent: b\n                        },\n                        scroll: {\n                            id: 3,\n                            parent: e\n                        },\n                        keydown: {\n                            id: 4,\n                            parent: b\n                        }\n                    };\n                    g && p && (s(),\n                    g._ui = t)\n                }\n                )(ue_csm, window, document);\n\n                ue_csm.ue.stub(ue, \"impression\");\n\n                ue.stub(ue, \"trigger\");\n\n                if (window.ue && uet) {\n                    uet('bb');\n                }\n\n            }\n        </script>\n        <script>\n            window.ue && ue.count && ue.count('CSMLibrarySize', 1263)\n        </script>\n    </head>\n    <body class=\"a-aui_72554-c a-aui_template_weblab_cache_333406-c a-aui_a11y_6_837773-c a-aui_killswitch_csa_logger_372963-t1 a-bw_aui_cxc_alert_measurement_1074111-c\">\n        <div id=\"a-page\">\n            <script type=\"a-state\" data-a-state=\"{&quot;key&quot;:&quot;a-wlab-states&quot;}\">\n                \n    {\"AUI_A11Y_6_837773\":\"C\",\"AUI_TEMPLATE_WEBLAB_CACHE_333406\":\"C\",\"BW_AUI_CXC_ALERT_MEASUREMENT_1074111\":\"C\",\"AUI_72554\":\"C\",\"AUI_KILLSWITCH_CSA_LOGGER_372963\":\"T1\"}\n\n            </script>\n            <script>\n                !function() {\n                    function n(n, t) {\n                        var r = i(n);\n                        return t && (r = r(\"instance\", t)),\n                        r\n                    }\n                    var r = []\n                      , c = 0\n                      , i = function(t) {\n                        return function() {\n                            var n = c++;\n                            return r.push([t, [].slice.call(arguments, 0), n, {\n                                time: Date.now()\n                            }]),\n                            i(n)\n                        }\n                    };\n                    n._s = r,\n                    this.csa = n\n                }();\n                ;csa('Config', {});\n                if (window.csa) {\n                    csa(\"Config\", {\n\n                        'Events.Namespace': 'csa',\n                        'ObfuscatedMarketplaceId': 'A1PA6795UKMFR9',\n                        'Events.SushiEndpoint': 'https://unagi.amazon.de/1/events/com.amazon.csm.csa.prod',\n                        'CacheDetection.RequestID': \"B6B42Z8ZPKKYKC8XWKD7\",\n                        'CacheDetection.Callback': window.ue && ue.reset,\n                        'LCP.elementDedup': 1,\n                        'lob': '1'\n                    });\n\n                    csa(\"Events\")(\"setEntity\", {\n                        page: {\n                            requestId: \"B6B42Z8ZPKKYKC8XWKD7\",\n                            meaningful: \"interactive\"\n                        },\n                        session: {\n                            id: \"262-7807958-1059108\"\n                        }\n                    });\n                }\n                !function(r) {\n                    var e, i, o = \"splice\", u = r.csa, f = {}, c = {}, a = r.csa._s, s = 0, l = 0, g = -1, h = {}, v = {}, d = {}, n = Object.keys, p = function() {};\n                    function t(n, t) {\n                        return u(n, t)\n                    }\n                    function m(n, t) {\n                        var r = c[n] || {};\n                        k(r, t),\n                        c[n] = r,\n                        l++,\n                        S(U, 0)\n                    }\n                    function w(n, t, r) {\n                        var i = !0;\n                        return t = D(t),\n                        r && r.buffered && (i = (d[n] || []).every(function(n) {\n                            return !1 !== t(n)\n                        })),\n                        i ? (h[n] || (h[n] = []),\n                        h[n].push(t),\n                        function() {\n                            !function(n, t) {\n                                var r = h[n];\n                                r && r[o](r.indexOf(t), 1)\n                            }(n, t)\n                        }\n                        ) : p\n                    }\n                    function b(n, t) {\n                        if (t = D(t),\n                        n in v)\n                            return t(v[n]),\n                            p;\n                        return w(n, function(n) {\n                            return t(n),\n                            !1\n                        })\n                    }\n                    function y(n, t) {\n                        if (u(\"Errors\")(\"logError\", n),\n                        f.DEBUG)\n                            throw t || n\n                    }\n                    function E() {\n                        return Math.abs(4294967295 * Math.random() | 0).toString(36)\n                    }\n                    function D(n, t) {\n                        return function() {\n                            try {\n                                return n.apply(this, arguments)\n                            } catch (n) {\n                                y(n.message || n, n)\n                            }\n                        }\n                    }\n                    function S(n, t) {\n                        return r.setTimeout(D(n), t)\n                    }\n                    function U() {\n                        for (var n = 0; n < a.length; ) {\n                            var t = a[n]\n                              , r = t[0]in c;\n                            if (!r && !i)\n                                return void (s = a.length);\n                            r ? (a[o](s = n, 1),\n                            I(t)) : n++\n                        }\n                        g = l\n                    }\n                    function I(n) {\n                        var t = c[n[0]]\n                          , r = n[1]\n                          , i = r[0];\n                        if (!t || !t[i])\n                            return y(\"Undefined function: \" + t + \"/\" + i);\n                        e = n[3],\n                        c[n[2]] = t[i].apply(t, r.slice(1)) || {},\n                        e = 0\n                    }\n                    function O() {\n                        i = 1,\n                        U()\n                    }\n                    function k(t, r) {\n                        n(r).forEach(function(n) {\n                            t[n] = r[n]\n                        })\n                    }\n                    b(\"$beforeunload\", O),\n                    m(\"Config\", {\n                        instance: function(n) {\n                            k(f, n)\n                        }\n                    }),\n                    u.plugin = D(function(n) {\n                        n(t)\n                    }),\n                    t.config = f,\n                    t.register = m,\n                    t.on = w,\n                    t.once = b,\n                    t.blank = p,\n                    t.emit = function(n, t, r) {\n                        for (var i = h[n] || [], e = 0; e < i.length; )\n                            !1 === i[e](t) ? i[o](e, 1) : e++;\n                        v[n] = t || {},\n                        r && r.buffered && (d[n] || (d[n] = []),\n                        100 <= d[n].length && d[n].shift(),\n                        d[n].push(t || {}))\n                    }\n                    ,\n                    t.UUID = function() {\n                        return [E(), E(), E(), E()].join(\"-\")\n                    }\n                    ,\n                    t.time = function(n) {\n                        var t = e ? new Date(e.time) : new Date;\n                        return \"ISO\" === n ? t.toISOString() : t.getTime()\n                    }\n                    ,\n                    t.error = y,\n                    t.warn = function(n, t) {\n                        if (u(\"Errors\")(\"logWarn\", n),\n                        f.DEBUG)\n                            throw t || n\n                    }\n                    ,\n                    t.exec = D,\n                    t.timeout = S,\n                    t.interval = function(n, t) {\n                        return r.setInterval(D(n), t)\n                    }\n                    ,\n                    (t.global = r).csa._s.push = function(n) {\n                        n[0]in c && (!a.length || i) ? (I(n),\n                        a.length && g !== l && U()) : a[o](s++, 0, n)\n                    }\n                    ,\n                    U(),\n                    S(function() {\n                        S(O, f.SkipMissingPluginsTimeout || 5e3)\n                    }, 1)\n                }(\"undefined\" != typeof window ? window : global);\n                csa.plugin(function(o) {\n                    var f = \"addEventListener\"\n                      , e = \"requestAnimationFrame\"\n                      , t = o.exec\n                      , r = o.global\n                      , u = o.on;\n                    o.raf = function(n) {\n                        if (r[e])\n                            return r[e](t(n))\n                    }\n                    ,\n                    o.on = function(n, e, t, r) {\n                        if (n && \"function\" == typeof n[f]) {\n                            var i = o.exec(t);\n                            return n[f](e, i, r),\n                            function() {\n                                n.removeEventListener(e, i, r)\n                            }\n                        }\n                        return \"string\" == typeof n ? u(n, e, t, r) : o.blank\n                    }\n                });\n                csa.plugin(function(o) {\n                    var t, n, r = {}, e = \"localStorage\", c = \"sessionStorage\", a = \"local\", i = \"session\", u = o.exec;\n                    function s(e, t) {\n                        var n;\n                        try {\n                            r[t] = !!(n = o.global[e]),\n                            n = n || {}\n                        } catch (e) {\n                            r[t] = !(n = {})\n                        }\n                        return n\n                    }\n                    function f() {\n                        t = t || s(e, a),\n                        n = n || s(c, i)\n                    }\n                    function l(e) {\n                        return e && e[i] ? n : t\n                    }\n                    o.store = u(function(e, t, n) {\n                        f();\n                        var o = l(n);\n                        return e ? t ? void (o[e] = t) : o[e] : Object.keys(o)\n                    }),\n                    o.storageSupport = u(function() {\n                        return f(),\n                        r\n                    }),\n                    o.deleteStored = u(function(e, t) {\n                        f();\n                        var n = l(t);\n                        if (\"function\" == typeof e)\n                            for (var o in n)\n                                n.hasOwnProperty(o) && e(o, n[o]) && delete n[o];\n                        else\n                            delete n[e]\n                    })\n                });\n                csa.plugin(function(n) {\n                    n.types = {\n                        ovl: function(n) {\n                            var r = [];\n                            if (n)\n                                for (var i in n)\n                                    n.hasOwnProperty(i) && r.push(n[i]);\n                            return r\n                        }\n                    }\n                });\n                csa.plugin(function(a) {\n                    var e = a.config\n                      , n = \"Errors\"\n                      , c = \"fcsmln\"\n                      , s = e[\"KillSwitch.\" + n];\n                    function r(n) {\n                        return function(e) {\n                            a(\"Metrics\", {\n                                producerId: \"csa\",\n                                dimensions: {\n                                    message: e\n                                }\n                            })(\"recordMetric\", n, 1)\n                        }\n                    }\n                    function t(r) {\n                        var t, o, l = a(\"Events\", {\n                            producerId: r.producerId,\n                            lob: e.lob || \"0\"\n                        }), i = [\"name\", \"type\", \"csm\", \"adb\"], u = {\n                            url: \"pageURL\",\n                            file: \"f\",\n                            line: \"l\",\n                            column: \"c\"\n                        };\n                        this.log = function(e) {\n                            if (!s && !function(e) {\n                                if (!e)\n                                    return !0;\n                                for (var n in e)\n                                    return !1;\n                                return !0\n                            }(e)) {\n                                var n = r.logOptions || {\n                                    ent: {\n                                        page: [\"pageType\", \"subPageType\", \"requestId\"]\n                                    }\n                                };\n                                l(\"log\", function(n) {\n                                    return t = a.UUID(),\n                                    o = {\n                                        messageId: t,\n                                        schemaId: r.schemaId || \"<ns>.Error.6\",\n                                        errorMessage: n.m || null,\n                                        attribution: n.attribution || null,\n                                        logLevel: \"FATAL\",\n                                        url: null,\n                                        file: null,\n                                        line: null,\n                                        column: null,\n                                        stack: n.s || [],\n                                        context: n.cinfo || {},\n                                        metadata: {}\n                                    },\n                                    n.logLevel && (o.logLevel = \"\" + n.logLevel),\n                                    i.forEach(function(e) {\n                                        n[e] && (o.metadata[e] = n[e])\n                                    }),\n                                    c in n && (o.metadata[c] = n[c] + \"\"),\n                                    \"INFO\" === n.logLevel || Object.keys(u).forEach(function(e) {\n                                        \"number\" != typeof n[u[e]] && \"string\" != typeof n[u[e]] || (o[e] = \"\" + n[u[e]])\n                                    }),\n                                    o\n                                }(e), n)\n                            }\n                        }\n                    }\n                    a.register(n, {\n                        instance: function(e) {\n                            return new t(e || {})\n                        },\n                        logError: r(\"jsError\"),\n                        logWarn: r(\"jsWarn\")\n                    })\n                });\n                csa.plugin(function(o) {\n                    var r, e, n, t, a, i = \"function\", u = \"willDisappear\", f = \"$app.\", p = \"$document.\", c = \"focus\", s = \"blur\", d = \"active\", l = \"resign\", $ = o.global, b = o.exec, m = o.config[\"Transport.AnonymizeRequests\"] || !1, g = o(\"Events\"), h = $.location, v = $.document || {}, y = $.P || {}, P = (($.performance || {}).navigation || {}).type, w = o.on, k = o.emit, E = v.hidden, T = {};\n                    h && v && (w($, \"beforeunload\", D),\n                    w($, \"pagehide\", D),\n                    w(v, \"visibilitychange\", R(p, function() {\n                        return v.visibilityState || \"unknown\"\n                    })),\n                    w(v, c, R(p + c)),\n                    w(v, s, R(p + s)),\n                    y.when && y.when(\"mash\").execute(function(e) {\n                        e && (w(e, \"appPause\", R(f + \"pause\")),\n                        w(e, \"appResume\", R(f + \"resume\")),\n                        R(f + \"deviceready\")(),\n                        $.cordova && $.cordova.platformId && R(f + cordova.platformId)(),\n                        w(v, d, R(f + d)),\n                        w(v, l, R(f + l)))\n                    }),\n                    e = $.app || {},\n                    n = b(function() {\n                        k(f + \"willDisappear\"),\n                        D()\n                    }),\n                    a = typeof (t = e[u]) == i,\n                    e[u] = b(function() {\n                        n(),\n                        a && t()\n                    }),\n                    $.app || ($.app = e),\n                    \"complete\" === v.readyState ? A() : w($, \"load\", A),\n                    E ? S() : x(),\n                    o.on(\"$app.blur\", S),\n                    o.on(\"$app.focus\", x),\n                    o.on(\"$document.blur\", S),\n                    o.on(\"$document.focus\", x),\n                    o.on(\"$document.hidden\", S),\n                    o.on(\"$document.visible\", x),\n                    o.register(\"SPA\", {\n                        newPage: I\n                    }),\n                    I({\n                        transitionType: {\n                            0: \"hard\",\n                            1: \"refresh\",\n                            2: \"back-button\"\n                        }[P] || \"unknown\"\n                    }));\n                    function I(n, e) {\n                        var t = !!r\n                          , a = (e = e || {}).keepPageAttributes;\n                        t && (k(\"$beforePageTransition\"),\n                        k(\"$pageTransition\")),\n                        t && !a && g(\"removeEntity\", \"page\"),\n                        r = o.UUID(),\n                        a ? T.id = r : T = {\n                            schemaId: \"<ns>.PageEntity.2\",\n                            id: r,\n                            url: m ? h.href.split(\"?\")[0] : h.href,\n                            server: h.hostname,\n                            path: h.pathname,\n                            referrer: m ? v.referrer.split(\"?\")[0] : v.referrer,\n                            title: v.title\n                        },\n                        Object.keys(n || {}).forEach(function(e) {\n                            T[e] = n[e]\n                        }),\n                        g(\"setEntity\", {\n                            page: T\n                        }),\n                        k(\"$pageChange\", T, {\n                            buffered: 1\n                        }),\n                        t && k(\"$afterPageTransition\")\n                    }\n                    function A() {\n                        k(\"$load\"),\n                        k(\"$ready\"),\n                        k(\"$afterload\")\n                    }\n                    function D() {\n                        k(\"$ready\"),\n                        k(\"$beforeunload\"),\n                        k(\"$unload\"),\n                        k(\"$afterunload\")\n                    }\n                    function S() {\n                        E || (k(\"$visible\", !1, {\n                            buffered: 1\n                        }),\n                        E = !0)\n                    }\n                    function x() {\n                        E && (k(\"$visible\", !0, {\n                            buffered: 1\n                        }),\n                        E = !1)\n                    }\n                    function R(n, t) {\n                        return b(function() {\n                            var e = typeof t == i ? n + t() : n;\n                            k(e)\n                        })\n                    }\n                });\n                csa.plugin(function(c) {\n                    var e = \"Events\"\n                      , n = \"UNKNOWN\"\n                      , s = \"id\"\n                      , a = \"all\"\n                      , i = \"messageId\"\n                      , o = \"timestamp\"\n                      , u = \"producerId\"\n                      , r = \"application\"\n                      , f = \"obfuscatedMarketplaceId\"\n                      , d = \"entities\"\n                      , l = \"schemaId\"\n                      , p = \"version\"\n                      , v = \"attributes\"\n                      , g = \"<ns>\"\n                      , b = \"lob\"\n                      , t = \"session\"\n                      , h = c.config\n                      , m = (c.global.location || {}).host\n                      , I = h[e + \".Namespace\"] || \"csa_other\"\n                      , y = h.Application || \"Other\" + (m ? \":\" + m : \"\")\n                      , O = h[\"Transport.AnonymizeRequests\"] || !1\n                      , E = c(\"Transport\")\n                      , U = {}\n                      , A = function(e, t) {\n                        Object.keys(e).forEach(t)\n                    };\n                    function N(n, i, o) {\n                        A(i, function(e) {\n                            var t = o === a || (o || {})[e];\n                            e in n || (n[e] = {\n                                version: 1,\n                                id: i[e][s] || c.UUID()\n                            }),\n                            S(n[e], i[e], t)\n                        })\n                    }\n                    function S(t, n, i) {\n                        A(n, function(e) {\n                            !function(e, t, n) {\n                                return \"string\" != typeof t && e !== p ? c.error(\"Attribute is not of type string: \" + e) : !0 === n || 1 === n || (e === s || !!~(n || []).indexOf(e))\n                            }(e, n[e], i) || (t[e] = n[e])\n                        })\n                    }\n                    function k(o, e, r) {\n                        A(e, function(e) {\n                            var t = o[e];\n                            if (t[l]) {\n                                var n = {}\n                                  , i = {};\n                                n[s] = t[s],\n                                n[u] = t[u] || r[u],\n                                n[l] = t[l],\n                                n[p] = t[p]++,\n                                n[v] = i,\n                                w(n, r),\n                                S(i, t, 1),\n                                D(i),\n                                E(\"log\", n)\n                            }\n                        })\n                    }\n                    function w(e, t) {\n                        e[o] = function(e) {\n                            return \"number\" == typeof e && (e = new Date(e).toISOString()),\n                            e || c.time(\"ISO\")\n                        }(e[o]),\n                        e[i] = e[i] || c.UUID(),\n                        e[r] = y,\n                        e[f] = h.ObfuscatedMarketplaceId || n,\n                        e[l] = e[l].replace(g, I),\n                        t && t[b] && (e[b] = t[b])\n                    }\n                    function D(e) {\n                        delete e[p],\n                        delete e[l],\n                        delete e[u]\n                    }\n                    function T(o) {\n                        var r = {};\n                        this.log = function(e, t) {\n                            var n = {}\n                              , i = (t || {}).ent;\n                            return e ? \"string\" != typeof e[l] ? c.error(\"A valid schema id is required for the event\") : (w(e, o),\n                            N(n, U, i),\n                            N(n, r, i),\n                            N(n, e[d] || {}, i),\n                            A(n, function(e) {\n                                D(n[e])\n                            }),\n                            e[u] = o[u],\n                            e[d] = n,\n                            t && t[b] && (e[b] = t[b]),\n                            void E(\"log\", e, t)) : c.error(\"The event cannot be undefined\")\n                        }\n                        ,\n                        this.setEntity = function(e) {\n                            O && delete e[t],\n                            N(r, e, a),\n                            k(r, e, o)\n                        }\n                    }\n                    h[\"KillSwitch.\" + e] || c.register(e, {\n                        setEntity: function(e) {\n                            O && delete e[t],\n                            c.emit(\"$entities.set\", e, {\n                                buffered: 1\n                            }),\n                            N(U, e, a),\n                            k(U, e, {\n                                producerId: \"csa\",\n                                lob: h[b] || \"0\"\n                            })\n                        },\n                        removeEntity: function(e) {\n                            delete U[e]\n                        },\n                        instance: function(e) {\n                            return new T(e)\n                        }\n                    })\n                });\n                csa.plugin(function(s) {\n                    var c, g = \"Transport\", l = \"post\", f = \"preflight\", r = \"csa.cajun.\", i = \"store\", a = \"deleteStored\", u = \"sendBeacon\", t = \"__merge\", e = \"messageId\", n = \".FlushInterval\", o = 0, d = s.config[g + \".BufferSize\"] || 2e3, h = s.config[g + \".RetryDelay\"] || 1500, p = s.config[g + \".AnonymizeRequests\"] || !1, v = {}, y = 0, m = [], E = s.global, R = E.document, b = s.timeout, k = E.Object.keys, w = s.config[g + n] || 5e3, I = w, O = s.config[g + n + \".BackoffFactor\"] || 1, S = s.config[g + n + \".BackoffLimit\"] || 3e4, B = 0;\n                    function T(n) {\n                        if (864e5 < s.time() - +new Date(n.timestamp))\n                            return s.warn(\"Event is too old: \" + n);\n                        y < d && (n[e]in v || (v[n[e]] = n,\n                        y++),\n                        \"function\" == typeof n[t] && n[t](v[n[e]]),\n                        !B && o && (B = b(q, function() {\n                            var n = I;\n                            return I = Math.min(n * O, S),\n                            n\n                        }())))\n                    }\n                    function q() {\n                        m.forEach(function(e) {\n                            var o = [];\n                            k(v).forEach(function(n) {\n                                var t = v[n];\n                                e.accepts(t) && o.push(t)\n                            }),\n                            o.length && (e.chunks ? e.chunks(o).forEach(function(n) {\n                                D(e, n)\n                            }) : D(e, o))\n                        }),\n                        v = {},\n                        B = 0\n                    }\n                    function D(t, e) {\n                        function o() {\n                            s[a](r + n)\n                        }\n                        var n = s.UUID();\n                        s[i](r + n, JSON.stringify(e)),\n                        [function(n, t, e) {\n                            var o = E.navigator || {}\n                              , r = E.cordova || {};\n                            if (p)\n                                return 0;\n                            if (!o[u] || !n[l])\n                                return 0;\n                            n[f] && r && \"ios\" === r.platformId && !c && ((new Image).src = n[f]().url,\n                            c = 1);\n                            var i = n[l](t);\n                            if (!i.type && o[u](i.url, i.body))\n                                return e(),\n                                1\n                        }\n                        , function(n, t, e) {\n                            if (!n[l])\n                                return 0;\n                            var o = n[l](t)\n                              , r = o.url\n                              , i = o.body\n                              , c = o.type\n                              , f = new XMLHttpRequest\n                              , a = 0;\n                            function u(n, t, e) {\n                                f.open(\"POST\", n),\n                                f.withCredentials = !p,\n                                e && f.setRequestHeader(\"Content-Type\", e),\n                                f.send(t)\n                            }\n                            return f.onload = function() {\n                                f.status < 299 ? e() : s.config[g + \".XHRRetries\"] && a < 3 && b(function() {\n                                    u(r, i, c)\n                                }, ++a * h)\n                            }\n                            ,\n                            u(r, i, c),\n                            1\n                        }\n                        ].some(function(n) {\n                            try {\n                                return n(t, e, o)\n                            } catch (n) {}\n                        })\n                    }\n                    k && (s.once(\"$afterload\", function() {\n                        o = 1,\n                        function(e) {\n                            (s[i]() || []).forEach(function(n) {\n                                if (!n.indexOf(r))\n                                    try {\n                                        var t = s[i](n);\n                                        s[a](n),\n                                        JSON.parse(t).forEach(e)\n                                    } catch (n) {\n                                        s.error(n)\n                                    }\n                            })\n                        }(T),\n                        s.on(R, \"visibilitychange\", q, !1),\n                        q()\n                    }),\n                    s.once(\"$afterunload\", function() {\n                        o = 1,\n                        q()\n                    }),\n                    s.on(\"$afterPageTransition\", function() {\n                        y = 0,\n                        I = w\n                    }),\n                    s.register(g, {\n                        log: T,\n                        register: function(n) {\n                            m.push(n)\n                        }\n                    }))\n                });\n                csa.plugin(function(n) {\n                    var r = n.config[\"Events.SushiEndpoint\"];\n                    n(\"Transport\")(\"register\", {\n                        accepts: function(n) {\n                            return n.schemaId\n                        },\n                        post: function(n) {\n                            var t = n.map(function(n) {\n                                return {\n                                    data: n\n                                }\n                            });\n                            return {\n                                url: r,\n                                body: JSON.stringify({\n                                    events: t\n                                })\n                            }\n                        },\n                        preflight: function() {\n                            var n, t = ///(.*?)//.exec(r);\n                            return t && t[1] && (n = \"https://\" + t[1] + \"/ping\"),\n                            {\n                                url: n\n                            }\n                        },\n                        chunks: function(n) {\n                            for (var t = []; 500 < n.length; )\n                                t.push(n.splice(0, 500));\n                            return t.push(n),\n                            t\n                        }\n                    })\n                });\n                csa.plugin(function(n) {\n                    var t, a, o, r, e = n.config, i = \"PageViews\", d = e[i + \".ImpressionMinimumTime\"] || 1e3, s = \"hidden\", c = \"innerHeight\", l = \"innerWidth\", g = \"renderedTo\", f = g + \"Viewed\", m = g + \"Meaningful\", u = g + \"Impressed\", p = 1, h = 2, v = 3, w = 4, P = 5, y = \"loaded\", I = 7, b = 8, T = n.global, S = n.on, E = n(\"Events\", {\n                        producerId: \"csa\",\n                        lob: e.lob || \"0\"\n                    }), K = T.document, V = {}, $ = {}, M = P, R = e[\"KillSwitch.\" + i], H = e[\"KillSwitch.PageRender\"], W = e[\"KillSwitch.PageImpressed\"];\n                    function j(e) {\n                        if (!V[I]) {\n                            if (V[e] = n.time(),\n                            e !== v && e !== y || (t = t || V[e]),\n                            t && M === w) {\n                                if (a = a || V[e],\n                                !R)\n                                    (i = {})[m] = t - o,\n                                    i[f] = a - o,\n                                    k(\"PageView.5\", i);\n                                r = r || n.timeout(x, d)\n                            }\n                            var i;\n                            if (e !== P && e !== p && e !== h || (clearTimeout(r),\n                            r = 0),\n                            e !== p && e !== h || H || k(\"PageRender.4\", {\n                                transitionType: e === p ? \"hard\" : \"soft\"\n                            }),\n                            e === I && !W)\n                                (i = {})[m] = t - o,\n                                i[f] = a - o,\n                                i[u] = V[e] - o,\n                                k(\"PageImpressed.3\", i)\n                        }\n                    }\n                    function k(e, i) {\n                        $[e] || (i.schemaId = \"<ns>.\" + e,\n                        E(\"log\", i, {\n                            ent: \"all\"\n                        }),\n                        $[e] = 1)\n                    }\n                    function q() {\n                        0 === T[c] && 0 === T[l] ? (M = b,\n                        n(\"Events\")(\"setEntity\", {\n                            page: {\n                                viewport: \"hidden-iframe\"\n                            }\n                        })) : M = K[s] ? P : w,\n                        j(M)\n                    }\n                    function x() {\n                        j(I),\n                        r = 0\n                    }\n                    function z() {\n                        var e = o ? h : p;\n                        V = {},\n                        $ = {},\n                        a = t = 0,\n                        o = n.time(),\n                        j(e),\n                        q()\n                    }\n                    function A() {\n                        var e = K.readyState;\n                        \"interactive\" === e && j(v),\n                        \"complete\" === e && j(y)\n                    }\n                    K && void 0 !== K[s] ? (z(),\n                    S(K, \"visibilitychange\", q, !1),\n                    S(K, \"readystatechange\", A, !1),\n                    S(\"$afterPageTransition\", z),\n                    S(\"$timing:loaded\", A),\n                    n.once(\"$load\", A)) : n.warn(\"Page visibility not supported\")\n                });\n                csa.plugin(function(c) {\n                    var s = c.config[\"Interactions.ParentChainLength\"] || 35\n                      , e = \"click\"\n                      , r = \"touches\"\n                      , f = \"timeStamp\"\n                      , o = \"length\"\n                      , u = \"pageX\"\n                      , g = \"pageY\"\n                      , p = \"pageXOffset\"\n                      , h = \"pageYOffset\"\n                      , m = 250\n                      , v = 5\n                      , d = 200\n                      , l = .5\n                      , t = {\n                        capture: !0,\n                        passive: !0\n                    }\n                      , X = c.global\n                      , Y = c.emit\n                      , n = c.on\n                      , x = X.Math.abs\n                      , a = (X.document || {}).documentElement || {}\n                      , y = {\n                        x: 0,\n                        y: 0,\n                        t: 0,\n                        sX: 0,\n                        sY: 0\n                    }\n                      , N = {\n                        x: 0,\n                        y: 0,\n                        t: 0,\n                        sX: 0,\n                        sY: 0\n                    };\n                    function b(t) {\n                        if (t.id)\n                            return \"//*[@id='\" + t.id + \"']\";\n                        var e = function(t) {\n                            var e, n = 1;\n                            for (e = t.previousSibling; e; e = e.previousSibling)\n                                e.nodeName === t.nodeName && (n += 1);\n                            return n\n                        }(t)\n                          , n = t.nodeName;\n                        return 1 !== e && (n += \"[\" + e + \"]\"),\n                        t.parentNode && (n = b(t.parentNode) + \"/\" + n),\n                        n\n                    }\n                    function I(t, e, n) {\n                        var a = c(\"Content\", {\n                            target: n\n                        })\n                          , i = {\n                            schemaId: \"<ns>.ContentInteraction.2\",\n                            interaction: t,\n                            interactionData: e,\n                            messageId: c.UUID()\n                        };\n                        if (n) {\n                            var r = b(n);\n                            r && (i.attribution = r);\n                            var o = function(t) {\n                                for (var e = t, n = e.tagName, a = !1, i = t ? t.href : null, r = 0; r < s; r++) {\n                                    if (!e || !e.parentElement) {\n                                        a = !0;\n                                        break\n                                    }\n                                    n = (e = e.parentElement).tagName + \"/\" + n,\n                                    i = i || e.href\n                                }\n                                return a || (n = \".../\" + n),\n                                {\n                                    pc: n,\n                                    hr: i\n                                }\n                            }(n);\n                            o.pc && (i.interactionData.parentChain = o.pc),\n                            o.hr && (i.interactionData.href = o.hr)\n                        }\n                        a(\"log\", i),\n                        Y(\"$content.interaction\", {\n                            e: i,\n                            w: a\n                        })\n                    }\n                    function i(t) {\n                        I(e, {\n                            interactionX: \"\" + t.pageX,\n                            interactionY: \"\" + t.pageY\n                        }, t.target)\n                    }\n                    function C(t) {\n                        if (t && t[r] && 1 === t[r][o]) {\n                            var e = t[r][0];\n                            N = y = {\n                                e: t.target,\n                                x: e[u],\n                                y: e[g],\n                                t: t[f],\n                                sX: X[p],\n                                sY: X[h]\n                            }\n                        }\n                    }\n                    function D(t) {\n                        if (t && t[r] && 1 === t[r][o] && y && N) {\n                            var e = t[r][0]\n                              , n = t[f]\n                              , a = n - N.t\n                              , i = {\n                                e: t.target,\n                                x: e[u],\n                                y: e[g],\n                                t: n,\n                                sX: X[p],\n                                sY: X[h]\n                            };\n                            N = i,\n                            d <= a && (y = i)\n                        }\n                    }\n                    function E(t) {\n                        if (t) {\n                            var e = x(y.x - N.x)\n                              , n = x(y.y - N.y)\n                              , a = x(y.sX - N.sX)\n                              , i = x(y.sY - N.sY)\n                              , r = t[f] - y.t;\n                            if (m < 1e3 * e / r && v < e || m < 1e3 * n / r && v < n) {\n                                var o = n < e;\n                                o && a && e * l <= a || !o && i && n * l <= i || I((o ? \"horizontal\" : \"vertical\") + \"-swipe\", {\n                                    interactionX: \"\" + y.x,\n                                    interactionY: \"\" + y.y,\n                                    endX: \"\" + N.x,\n                                    endY: \"\" + N.y\n                                }, y.e)\n                            }\n                        }\n                    }\n                    n(a, e, i, t),\n                    n(a, \"touchstart\", C, t),\n                    n(a, \"touchmove\", D, t),\n                    n(a, \"touchend\", E, t)\n                });\n                csa.plugin(function(s) {\n                    var a, o, t, c, e, n = \"MutationObserver\", l = \"observe\", i = \"disconnect\", f = \"_csa_flt\", b = \"_csa_llt\", d = \"_csa_mr\", p = \"_csa_mi\", v = \"lastChild\", m = \"length\", h = {\n                        childList: !0,\n                        subtree: !0\n                    }, _ = 10, g = 25, r = 1e3, y = 4, u = s.global, k = u.document, w = k.body || k.documentElement, I = Date.now, L = [], O = [], B = [], M = 0, x = 0, C = 0, D = 1, E = [], F = [], S = 0, V = s.blank;\n                    I && u[n] && (M = 0,\n                    o = new u[n]($),\n                    (t = new u[n](Y))[l](w, {\n                        attributes: !0,\n                        subtree: !0,\n                        attributeFilter: [\"src\"],\n                        attributeOldValue: !0\n                    }),\n                    V = s.on(u, \"scroll\", j, {\n                        passive: !0\n                    }),\n                    s.once(\"$ready\", A),\n                    D && (z(),\n                    e = s.interval(q, r)),\n                    s.register(\"SpeedIndexBuffers\", {\n                        getBuffers: function(e) {\n                            e && (A(),\n                            j(),\n                            e(M, E, L, O, B),\n                            o && o[i](),\n                            t && t[i](),\n                            V())\n                        },\n                        registerListener: function(e) {\n                            a = e\n                        },\n                        replayModuleIsLive: function() {\n                            s.timeout(A, 0)\n                        }\n                    }));\n                    function Y(e) {\n                        L.push({\n                            t: I(),\n                            m: e\n                        })\n                    }\n                    function $(e) {\n                        O.push({\n                            t: I(),\n                            m: e\n                        }),\n                        C = 1,\n                        a && a()\n                    }\n                    function j() {\n                        C && (B.push({\n                            t: I(),\n                            y: x\n                        }),\n                        x = u.pageYOffset,\n                        C = 0)\n                    }\n                    function q() {\n                        var e = I();\n                        (!c || r < e - c) && z()\n                    }\n                    function z() {\n                        for (var e = w, t = I(), n = [], i = [], r = 0, u = 0; e; )\n                            e[f] ? ++r : (e[f] = t,\n                            n.push(e),\n                            u = 1),\n                            i[m] < y && i.push(e),\n                            e[p] = S,\n                            e[b] = t,\n                            e = e[v];\n                        u && (r < F[m] && function(e) {\n                            for (var t = e, n = F[m]; t < n; t++) {\n                                var i = F[t];\n                                if (i) {\n                                    if (i[d])\n                                        break;\n                                    if (i[p] < S) {\n                                        i[d] = 1,\n                                        o[l](i, h);\n                                        break\n                                    }\n                                }\n                            }\n                        }(r),\n                        F = i,\n                        E.push({\n                            t: t,\n                            m: n\n                        }),\n                        ++S,\n                        C = u,\n                        a && a()),\n                        D && s.timeout(z, u ? _ : g),\n                        c = t\n                    }\n                    function A() {\n                        D && (D = 0,\n                        e && u.clearInterval(e),\n                        e = null,\n                        z(),\n                        o[l](w, h))\n                    }\n                });\n                csa.plugin(function(b) {\n                    var a = b.global\n                      , c = a.uet\n                      , e = a.uex\n                      , f = a.ue\n                      , a = a.Object\n                      , g = 0\n                      , h = {\n                        largestContentfulPaint: \"lcp\",\n                        visuallyLoaded50: \"vl50\",\n                        visuallyLoaded90: \"vl90\",\n                        visuallyLoaded100: \"vl100\"\n                    };\n                    b && c && e && a.keys && f && (b.once(\"$ditched.beforemitigation\", function() {\n                        g = 1\n                    }),\n                    a.keys(h).forEach(function(a) {\n                        b.on(\"$timing:\" + a, function(b) {\n                            var d = h[a];\n                            if (f.isl || g) {\n                                var k = \"csa:\" + d;\n                                c(d, k, void 0, b);\n                                e(\"at\", k)\n                            } else\n                                c(d, void 0, void 0, b)\n                        })\n                    }))\n                });\n            </script>\n            <script>\n                window.ue && ue.count && ue.count('CSMLibrarySize', 15738)\n            </script>\n            <div id=\"sc-navbar-container\">\n                <script type=\"text/javascript\">\n                    if (typeof uet == \"function\") {\n                        uet('ns');\n                    }\n                </script>\n                <style>\n                    html, body {\n                        height: 100%;\n                        margin: 0;\n                    }\n\n                    #vc-header-placeholder {\n                        height: 78px;\n                        margin-bottom: 30px;\n                    }\n                </style>\n                <div id=\"vc-header-container\">\n                    <div id=\"vc-header-placeholder\"></div>\n                </div>\n                <script type=\"text/javascript\">\n                    if (typeof uet == \"function\") {\n                        uet('ne');\n                    }\n                </script>\n            </div>\n            <div id=\"sc-content-container\">\n                <script>\n                    var constants = {};\n                    constants.vendorCodes = 'QT71I, LZ7TO';\n                    constants.currentDay = '24';\n                    constants.currentMonth = '4';\n                    constants.currentYear = '2025';\n                    constants.dateFormat = 'd/M/yyyy';\n                    constants.dateRangeSearchOption = '[Lcom.amazon.vendorremittance.data.types.DateRangeSearchOption;@6cc56c77';\n                    constants.remittanceDownloadUrl = '/hz/vendor/members/remittance/resource/download';\n                    constants.calendarLocale = 'en_GB';\n                    constants.marketplaceId = 'A13V1IB3VIYZZH';\n                    constants.showPaymentFailureNotification = '';\n                    constants.paymentFailureVendorId = '';\n\n                    P.when('remittance-home-page', 'ready').execute(function(remittanceHomePage) {\n                        remittanceHomePage.init(constants);\n                    });\n\n                    P.when('vft-harmonic-calendar-localization-utils', 'ready').execute(function(calendarUtils) {\n                        calendarUtils.init(constants.dateFormat, constants.calendarLocale);\n                    });\n                </script>\n                <div class=\"a-container page-container\">\n                    <h1 class=\"a-spacing-small a-spacing-top-micro\">Remittance payments\n            </h1>\n                    <div class=\"a-box a-alert a-alert-info a-spacing-small\" aria-live=\"polite\" aria-atomic=\"true\">\n                        <div class=\"a-box-inner a-alert-container\">\n                            <i class=\"a-icon a-icon-alert\"></i>\n                            <div class=\"a-alert-content\">\n                                <div id=\"holdbacks-page-banner\" class=\"a-section\">\n                                    <span>New Feature. From the remittances page, you can now download details regarding provisions. \n                    </span>\n                                    <span>Click on \u2018Payments\u2019 -> \u2018Remittance\u2019 -> \u2018Remittance ID containing the provision\u2019 -> \u2018Specific Provision ID for which you want the details\u2019 to get the report.\n                    </span>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"a-box a-alert a-alert-info\" aria-live=\"polite\" aria-atomic=\"true\">\n                        <div class=\"a-box-inner a-alert-container\">\n                            <i class=\"a-icon a-icon-alert\"></i>\n                            <div class=\"a-alert-content\">\n                                <span id=\"vendor-codes-info\"></span>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"a-row a-spacing-top-medium\">\n                        <div class=\"a-column a-span3\">Marketplace\n        </div>\n                        <div class=\"a-column a-span3\">Vendor Codes\n        </div>\n                    </div>\n                    <div class=\"a-row\">\n                        <div class=\"a-column a-span3\">\n                            <kat-dropdown id=\"countriesDropDown\" class=\"dropdown-maxheight\" data-action=\"marketplaceDropDownChange\" rich-selection-label value=\"A13V1IB3VIYZZH\">\n                                <kat-option value=\"A1PA6795UKMFR9\">\n                                    <div class=\"dropdown-flexed\">\n                                        <kat-icon name=\"flag-de\" size=\"small\"></kat-icon>\n                                        <span class=\"dropdown-padded\">Germany\n                    (DE)</span>\n                                    </div>\n                                </kat-option>\n                                <kat-option value=\"APJ6JRA9NG5V4\">\n                                    <div class=\"dropdown-flexed\">\n                                        <kat-icon name=\"flag-it\" size=\"small\"></kat-icon>\n                                        <span class=\"dropdown-padded\">Italy\n                    (IT)</span>\n                                    </div>\n                                </kat-option>\n                                <kat-option value=\"A13V1IB3VIYZZH\">\n                                    <div class=\"dropdown-flexed\">\n                                        <kat-icon name=\"flag-fr\" size=\"small\"></kat-icon>\n                                        <span class=\"dropdown-padded\">France\n                    (FR)</span>\n                                    </div>\n                                </kat-option>\n                                <kat-option value=\"A1RKKUPIHCS9HS\">\n                                    <div class=\"dropdown-flexed\">\n                                        <kat-icon name=\"flag-es\" size=\"small\"></kat-icon>\n                                        <span class=\"dropdown-padded\">Spain\n                    (ES)</span>\n                                    </div>\n                                </kat-option>\n                            </kat-dropdown>\n                        </div>\n                        <div class=\"a-column a-span3\">\n                            <div id=\"vendorCodesDropDownDive\">\n                                <kat-dropdown id=\"vendorCodesDropdown\" class=\"dropdown-maxheight\">\n                                    <kat-checkbox class=\"vendorCodeCheckBox dropdown-flexed dropdown-padded\" label=\"QT71I\" checked></kat-checkbox>\n                                    <kat-checkbox class=\"vendorCodeCheckBox dropdown-flexed dropdown-padded\" label=\"LZ7TO\" checked></kat-checkbox>\n                                </kat-dropdown>\n                            </div>\n                        </div>\n                    </div>\n                    <!-- If layout is absent, use 'default' -->\n                    <!-- Generate a randon string and use as training widget's id -->\n                    <!-- because if there are more than 1 widget then they must have different ids -->\n                    <!-- so that we can manipulate them independently -->\n                    <div id=\"training-widget-939660b5-1190-4ddc-9298-42696a1211ce\" class=\"a-section a-spacing-none training-widget\">\n                        <span class=\"a-spinner a-spinner-small\"></span>\n                    </div>\n                    <script type=\"text/javascript\">\n                        P.when('A').execute(function(A) {\n                            var $ = A.$;\n                            var trainingWidget$ = $('#training-widget-939660b5-1190-4ddc-9298-42696a1211ce');\n                            // Identify site area by looking at the current url\n                            // By default assume 'members'. If 'setup' is present in the url, then assume 'setup'\n                            var siteArea = 'members';\n                            if (window.location.href.toLowerCase().indexOf('/setup/') !== -1) {\n                                siteArea = 'setup';\n                            }\n                            // Execute ajax request to retrieve training recommendation and show it on the widget\n                            A.ajax('/hz/vendor/' + siteArea + '/support/ajax/training/widget/content/layout/default/tags/remittance-page', {\n                                method: 'get',\n                                success: function(response) {\n                                    // Replace spinner with training recommendation html\n                                    trainingWidget$.html(response);\n                                },\n                                error: function() {\n                                    // Hide the widget if there is an error\n                                    trainingWidget$.addClass('aok-hidden');\n                                }\n                            });\n                        });\n                    </script>\n                    <div class=\"a-row a-spacing-top-medium\">\n                        <span id=\"page-indexing\"></span>\n                        <span id=\"remittance-home-link-group\">\n                            <a id=\"remittance-home-select-all\" class=\"a-link-normal\" href=\"javascript:;\">Select all\n                </a>\n                            <a id=\"remittance-home-deselect-all\" class=\"a-link-normal\" href=\"javascript:;\">Deselect all\n                </a>\n                            <a id=\"remittance-home-export-link\" class=\"a-link-normal\" href=\"javascript:;\">Export to a spreadsheet\n                </a>\n                        </span>\n                    </div>\n                    <hr aria-hidden=\"true\" class=\"a-spacing-top-micro a-divider-normal\"/>\n                    <div class=\"a-row\">\n                        <form id=\"remittanceSearchForm\" method=\"POST\" action=\"/hz/vendor/members/remittance/home\">\n                            <input type='hidden' name='anti-csrftoken-a2z' value='hBMB9M4iaO5VAhuJBMzk6b2XdNkAN/PD6p0wVxSUlc5HAAAAAGgJ9tkAAAAB'/>\n                            <input type=\"hidden\" id=\"marketplaceIdsInput\" name=\"marketplaceIds\" value=\"A13V1IB3VIYZZH\"/>\n                            <input type=\"hidden\" id=\"vendorCodesInput\" name=\"vendor-codes\" value=\"QT71I,LZ7TO\"/>\n                            <div class=\"a-column a-span3\">\n                                <div class=\"a-row\">\n                                    <span id=\"selected-remittance-count\"></span>\n                                </div>\n                                <h3 class=\"a-spacing-top-base\">Search by\n                    </h3>\n                                <div class=\"a-row a-spacing-top-small\">\n                                    <div id=\"remittance-search-key-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                                        <span class=\"a-dropdown-container\">\n                                            <select name=\"remittance-search-key\" autocomplete=\"off\" role=\"combobox\" id=\"remittance-search-key\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-button-span12 a-declarative\">\n                                                <option class=\"a-prompt\" value=\"\">Payment Date Range</option>\n                                                <option value=\"DATE_RANGE\" selected>Payment Date Range</option>\n                                                <option value=\"PAYMENT_NUMBER\">Payment Number</option>\n                                                <option value=\"INVOICE_NUMBER\">Invoice Number</option>\n                                                <option value=\"AMOUNT_RANGE\">Payment amount</option>\n                                            </select>\n                                            <span tabindex=\"-1\" id=\"remittance-search-key\" class=\"a-button a-button-dropdown a-button-span12\" aria-hidden=\"true\">\n                                                <span class=\"a-button-inner\">\n                                                    <span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\">\n                                                        <span class=\"a-dropdown-prompt\">DATE_RANGE</span>\n                                                    </span>\n                                                    <i class=\"a-icon a-icon-dropdown\"></i>\n                                                </span>\n                                            </span>\n                                        </span>\n                                        <div data-harmonic-error-for=\"remittance-search-key\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                            <div class=\"a-box-inner a-alert-container\">\n                                                <i class=\"a-icon a-icon-alert\"></i>\n                                                <div class=\"a-alert-content\"></div>\n                                            </div>\n                                        </div>\n                                    </div>\n                                    <div id=\"payment-number-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field a-hidden\">\n                                        <input type=\"text\" id=\"payment-number\" placeholder=\"Enter payment number\" name=\"payment-number\" class=\"a-input-text a-span12\"/>\n                                        <div data-harmonic-error-for=\"payment-number\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                            <div class=\"a-box-inner a-alert-container\">\n                                                <i class=\"a-icon a-icon-alert\"></i>\n                                                <div class=\"a-alert-content\"></div>\n                                            </div>\n                                        </div>\n                                    </div>\n                                    <div id=\"invoice-number-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field a-hidden\">\n                                        <input type=\"text\" id=\"invoice-number\" placeholder=\"Enter invoice number\" name=\"invoice-number\" class=\"a-input-text a-span12\"/>\n                                        <div data-harmonic-error-for=\"invoice-number\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                            <div class=\"a-box-inner a-alert-container\">\n                                                <i class=\"a-icon a-icon-alert\"></i>\n                                                <div class=\"a-alert-content\"></div>\n                                            </div>\n                                        </div>\n                                    </div>\n                                    <div class=\"a-row\">\n                                        <span class=\"harmonic-fieldset a-hidden\" id=\"amount-field-set-wrap\">\n                                            <div class=\"a-column a-span6\">\n                                                <div id=\"min-payment-amount-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                                                    <label for=\"min-payment-amount\" id=\"min-payment-amount-text\" class=\"a-form-label\">\n                                                        From<span class=\"a-color-tertiary a-text-normal\">&nbsp;(optional)</span>\n                                                    </label>\n                                                    <input type=\"text\" id=\"min-payment-amount\" name=\"min-payment-amount\" class=\"a-input-text a-span12\"/>\n                                                    <div data-harmonic-error-for=\"min-payment-amount\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                                        <div class=\"a-box-inner a-alert-container\">\n                                                            <i class=\"a-icon a-icon-alert\"></i>\n                                                            <div class=\"a-alert-content\"></div>\n                                                        </div>\n                                                    </div>\n                                                </div>\n                                            </div>\n                                            <div class=\"a-column a-span6 a-span-last\">\n                                                <div id=\"max-payment-amount-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                                                    <label for=\"max-payment-amount\" id=\"max-payment-amount-text\" class=\"a-form-label\">\n                                                        To<span class=\"a-color-tertiary a-text-normal\">&nbsp;(optional)</span>\n                                                    </label>\n                                                    <input type=\"text\" id=\"max-payment-amount\" name=\"max-payment-amount\" class=\"a-input-text a-span12\"/>\n                                                    <div data-harmonic-error-for=\"max-payment-amount\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                                        <div class=\"a-box-inner a-alert-container\">\n                                                            <i class=\"a-icon a-icon-alert\"></i>\n                                                            <div class=\"a-alert-content\"></div>\n                                                        </div>\n                                                    </div>\n                                                </div>\n                                            </div>\n                                        </span>\n                                    </div>\n                                    <span class=\"harmonic-fieldset\" id=\"date-field-set-wrap\">\n                                        <p>\n                                        <div id=\"date-range-option-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                                            <span class=\"a-dropdown-container\">\n                                                <select name=\"date-range-option\" autocomplete=\"off\" role=\"combobox\" id=\"date-range-option\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-button-span12 a-declarative\">\n                                                    <option class=\"a-prompt\" value=\"\">Custom payment date range</option>\n                                                    <option value=\"SEVEN_DAYS\">Last 07 days</option>\n                                                    <option value=\"FIFTEEN_DAYS\">Last 15 days</option>\n                                                    <option value=\"THIRTY_DAYS\">Last 30 days</option>\n                                                    <option value=\"SIXTY_DAYS\">Last 60 days</option>\n                                                    <option value=\"NINETY_DAYS\">Last 90 days</option>\n                                                    <option value=\"CUSTOM\" selected>Custom payment date range</option>\n                                                </select>\n                                                <span tabindex=\"-1\" id=\"date-range-option\" class=\"a-button a-button-dropdown a-button-span12\" aria-hidden=\"true\">\n                                                    <span class=\"a-button-inner\">\n                                                        <span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\">\n                                                            <span class=\"a-dropdown-prompt\">CUSTOM</span>\n                                                        </span>\n                                                        <i class=\"a-icon a-icon-dropdown\"></i>\n                                                    </span>\n                                                </span>\n                                            </span>\n                                            <div data-harmonic-error-for=\"date-range-option\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                                <div class=\"a-box-inner a-alert-container\">\n                                                    <i class=\"a-icon a-icon-alert\"></i>\n                                                    <div class=\"a-alert-content\"></div>\n                                                </div>\n                                            </div>\n                                        </div>\n</p></span>\n<div class=\"a-row\">\n    <span class=\"harmonic-fieldset\" id=\"date-field-set-wrap\">\n        <div class=\"a-column a-span6\">\n            <div id=\"from-date-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                <label for=\"from-date\" id=\"from-date-text\" class=\"a-form-label\">From</label>\n                <div id=\"from-date-calendar\" data-a-cal-attributes=\"{&quot;selectedDate&quot;:{&quot;month&quot;:2,&quot;year&quot;:2025,&quot;day&quot;:1},&quot;minDate&quot;:{&quot;month&quot;:1,&quot;year&quot;:1990,&quot;day&quot;:1},&quot;maxDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24}}\" data-a-cal-renderer-instance=\"harmonic-aui-calendar-renderer-d/m/yyyy\" data-a-cal-input=\"true\" class=\"a-cal-calendar-container a-cal-static\">\n                    <div class=\"a-cal-dropdown-container\">\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-month a-declarative\">\n                            <option value=\"\">Month</option>\n                            <option value=\"1\">1</option>\n                            <option value=\"2\">2</option>\n                            <option value=\"3\">3</option>\n                            <option value=\"4\">4</option>\n                            <option value=\"5\">5</option>\n                            <option value=\"6\">6</option>\n                            <option value=\"7\">7</option>\n                            <option value=\"8\">8</option>\n                            <option value=\"9\">9</option>\n                            <option value=\"10\">10</option>\n                            <option value=\"11\">11</option>\n                            <option value=\"12\">12</option>\n                        </select>\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-day a-declarative\">\n                            <option value=\"\">Day</option>\n                            <option value=\"1\">1</option>\n                            <option value=\"2\">2</option>\n                            <option value=\"3\">3</option>\n                            <option value=\"4\">4</option>\n                            <option value=\"5\">5</option>\n                            <option value=\"6\">6</option>\n                            <option value=\"7\">7</option>\n                            <option value=\"8\">8</option>\n                            <option value=\"9\">9</option>\n                            <option value=\"10\">10</option>\n                            <option value=\"11\">11</option>\n                            <option value=\"12\">12</option>\n                            <option value=\"13\">13</option>\n                            <option value=\"14\">14</option>\n                            <option value=\"15\">15</option>\n                            <option value=\"16\">16</option>\n                            <option value=\"17\">17</option>\n                            <option value=\"18\">18</option>\n                            <option value=\"19\">19</option>\n                            <option value=\"20\">20</option>\n                            <option value=\"21\">21</option>\n                            <option value=\"22\">22</option>\n                            <option value=\"23\">23</option>\n                            <option value=\"24\">24</option>\n                            <option value=\"25\">25</option>\n                            <option value=\"26\">26</option>\n                            <option value=\"27\">27</option>\n                            <option value=\"28\">28</option>\n                            <option value=\"29\">29</option>\n                            <option value=\"30\">30</option>\n                            <option value=\"31\">31</option>\n                        </select>\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-year a-declarative\">\n                            <option value=\"\">Year</option>\n                            <option value=\"1900\">1900</option>\n                            <option value=\"1901\">1901</option>\n                            <option value=\"1902\">1902</option>\n                            <option value=\"1903\">1903</option>\n                            <option value=\"1904\">1904</option>\n                            <option value=\"1905\">1905</option>\n                            <option value=\"1906\">1906</option>\n                            <option value=\"1907\">1907</option>\n                            <option value=\"1908\">1908</option>\n                            <option value=\"1909\">1909</option>\n                            <option value=\"1910\">1910</option>\n                            <option value=\"1911\">1911</option>\n                            <option value=\"1912\">1912</option>\n                            <option value=\"1913\">1913</option>\n                            <option value=\"1914\">1914</option>\n                            <option value=\"1915\">1915</option>\n                            <option value=\"1916\">1916</option>\n                            <option value=\"1917\">1917</option>\n                            <option value=\"1918\">1918</option>\n                            <option value=\"1919\">1919</option>\n                            <option value=\"1920\">1920</option>\n                            <option value=\"1921\">1921</option>\n                            <option value=\"1922\">1922</option>\n                            <option value=\"1923\">1923</option>\n                            <option value=\"1924\">1924</option>\n                            <option value=\"1925\">1925</option>\n                            <option value=\"1926\">1926</option>\n                            <option value=\"1927\">1927</option>\n                            <option value=\"1928\">1928</option>\n                            <option value=\"1929\">1929</option>\n                            <option value=\"1930\">1930</option>\n                            <option value=\"1931\">1931</option>\n                            <option value=\"1932\">1932</option>\n                            <option value=\"1933\">1933</option>\n                            <option value=\"1934\">1934</option>\n                            <option value=\"1935\">1935</option>\n                            <option value=\"1936\">1936</option>\n                            <option value=\"1937\">1937</option>\n                            <option value=\"1938\">1938</option>\n                            <option value=\"1939\">1939</option>\n                            <option value=\"1940\">1940</option>\n                            <option value=\"1941\">1941</option>\n                            <option value=\"1942\">1942</option>\n                            <option value=\"1943\">1943</option>\n                            <option value=\"1944\">1944</option>\n                            <option value=\"1945\">1945</option>\n                            <option value=\"1946\">1946</option>\n                            <option value=\"1947\">1947</option>\n                            <option value=\"1948\">1948</option>\n                            <option value=\"1949\">1949</option>\n                            <option value=\"1950\">1950</option>\n                            <option value=\"1951\">1951</option>\n                            <option value=\"1952\">1952</option>\n                            <option value=\"1953\">1953</option>\n                            <option value=\"1954\">1954</option>\n                            <option value=\"1955\">1955</option>\n                            <option value=\"1956\">1956</option>\n                            <option value=\"1957\">1957</option>\n                            <option value=\"1958\">1958</option>\n                            <option value=\"1959\">1959</option>\n                            <option value=\"1960\">1960</option>\n                            <option value=\"1961\">1961</option>\n                            <option value=\"1962\">1962</option>\n                            <option value=\"1963\">1963</option>\n                            <option value=\"1964\">1964</option>\n                            <option value=\"1965\">1965</option>\n                            <option value=\"1966\">1966</option>\n                            <option value=\"1967\">1967</option>\n                            <option value=\"1968\">1968</option>\n                            <option value=\"1969\">1969</option>\n                            <option value=\"1970\">1970</option>\n                            <option value=\"1971\">1971</option>\n                            <option value=\"1972\">1972</option>\n                            <option value=\"1973\">1973</option>\n                            <option value=\"1974\">1974</option>\n                            <option value=\"1975\">1975</option>\n                            <option value=\"1976\">1976</option>\n                            <option value=\"1977\">1977</option>\n                            <option value=\"1978\">1978</option>\n                            <option value=\"1979\">1979</option>\n                            <option value=\"1980\">1980</option>\n                            <option value=\"1981\">1981</option>\n                            <option value=\"1982\">1982</option>\n                            <option value=\"1983\">1983</option>\n                            <option value=\"1984\">1984</option>\n                            <option value=\"1985\">1985</option>\n                            <option value=\"1986\">1986</option>\n                            <option value=\"1987\">1987</option>\n                            <option value=\"1988\">1988</option>\n                            <option value=\"1989\">1989</option>\n                            <option value=\"1990\">1990</option>\n                            <option value=\"1991\">1991</option>\n                            <option value=\"1992\">1992</option>\n                            <option value=\"1993\">1993</option>\n                            <option value=\"1994\">1994</option>\n                            <option value=\"1995\">1995</option>\n                            <option value=\"1996\">1996</option>\n                            <option value=\"1997\">1997</option>\n                            <option value=\"1998\">1998</option>\n                            <option value=\"1999\">1999</option>\n                            <option value=\"2000\">2000</option>\n                            <option value=\"2001\">2001</option>\n                            <option value=\"2002\">2002</option>\n                            <option value=\"2003\">2003</option>\n                            <option value=\"2004\">2004</option>\n                            <option value=\"2005\">2005</option>\n                            <option value=\"2006\">2006</option>\n                            <option value=\"2007\">2007</option>\n                            <option value=\"2008\">2008</option>\n                            <option value=\"2009\">2009</option>\n                            <option value=\"2010\">2010</option>\n                            <option value=\"2011\">2011</option>\n                            <option value=\"2012\">2012</option>\n                            <option value=\"2013\">2013</option>\n                            <option value=\"2014\">2014</option>\n                            <option value=\"2015\">2015</option>\n                            <option value=\"2016\">2016</option>\n                            <option value=\"2017\">2017</option>\n                            <option value=\"2018\">2018</option>\n                            <option value=\"2019\">2019</option>\n                            <option value=\"2020\">2020</option>\n                            <option value=\"2021\">2021</option>\n                            <option value=\"2022\">2022</option>\n                            <option value=\"2023\">2023</option>\n                            <option value=\"2024\">2024</option>\n                            <option value=\"2025\">2025</option>\n                            <option value=\"2026\">2026</option>\n                            <option value=\"2027\">2027</option>\n                            <option value=\"2028\">2028</option>\n                            <option value=\"2029\">2029</option>\n                            <option value=\"2030\">2030</option>\n                            <option value=\"2031\">2031</option>\n                            <option value=\"2032\">2032</option>\n                            <option value=\"2033\">2033</option>\n                            <option value=\"2034\">2034</option>\n                            <option value=\"2035\">2035</option>\n                            <option value=\"2036\">2036</option>\n                            <option value=\"2037\">2037</option>\n                            <option value=\"2038\">2038</option>\n                            <option value=\"2039\">2039</option>\n                        </select>\n                    </div>\n                    <div class=\"a-cal-date-range-group a-cal-date-range-group-vertical\">\n                        <div class=\"a-cal-date-range-wrapper\">\n                            <div class=\"a-input-text-addon-group-wrapper\">\n                                <div class=\"a-input-text-addon-group a-width-base\" role=\"presentation\">\n                                    <span class=\"a-input-text-addon a-cal-icon a-declarative\" role=\"button\" tabindex=\"0\" data-action=\"a-cal-icon\">\n                                        <i class=\"a-icon a-icon-calendar\"></i>\n                                    </span>\n                                    <input type=\"text\" maxlength=\"10\" data-action=\"a-cal-input\" data-input=\"start\" class=\"a-input-text a-cal-input a-declarative\" id=\"from-date\"/>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n                <script>\n                    //FIXME: remove this horrible hack once AUI update is complete with Calendar improvements\n                    (function() {\n                        var calOuter = document.getElementById('from-date-wrap');\n                        var calInput = calOuter.getElementsByClassName('a-cal-input')[0]\n                        calInput.name = 'from-date';\n                        if (calInput.value === '') {\n                            calInput.value = '1/2/2025';\n                        }\n                    }());\n                </script>\n                <div data-harmonic-error-for=\"from-date\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                    <div class=\"a-box-inner a-alert-container\">\n                        <i class=\"a-icon a-icon-alert\"></i>\n                        <div class=\"a-alert-content\"></div>\n                    </div>\n                </div>\n            </div>\n        </div>\n        <div class=\"a-column a-span6 a-span-last\">\n            <div id=\"to-date-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                <label for=\"to-date\" id=\"to-date-text\" class=\"a-form-label\">To</label>\n                <div id=\"to-date-calendar\" data-a-cal-attributes=\"{&quot;selectedDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24},&quot;minDate&quot;:{&quot;month&quot;:1,&quot;year&quot;:1990,&quot;day&quot;:1},&quot;maxDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24}}\" data-a-cal-renderer-instance=\"harmonic-aui-calendar-renderer-d/m/yyyy\" data-a-cal-input=\"true\" class=\"a-cal-calendar-container a-cal-static\">\n                    <div class=\"a-cal-dropdown-container\">\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-month a-declarative\">\n                            <option value=\"\">Month</option>\n                            <option value=\"1\">1</option>\n                            <option value=\"2\">2</option>\n                            <option value=\"3\">3</option>\n                            <option value=\"4\">4</option>\n                            <option value=\"5\">5</option>\n                            <option value=\"6\">6</option>\n                            <option value=\"7\">7</option>\n                            <option value=\"8\">8</option>\n                            <option value=\"9\">9</option>\n                            <option value=\"10\">10</option>\n                            <option value=\"11\">11</option>\n                            <option value=\"12\">12</option>\n                        </select>\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-day a-declarative\">\n                            <option value=\"\">Day</option>\n                            <option value=\"1\">1</option>\n                            <option value=\"2\">2</option>\n                            <option value=\"3\">3</option>\n                            <option value=\"4\">4</option>\n                            <option value=\"5\">5</option>\n                            <option value=\"6\">6</option>\n                            <option value=\"7\">7</option>\n                            <option value=\"8\">8</option>\n                            <option value=\"9\">9</option>\n                            <option value=\"10\">10</option>\n                            <option value=\"11\">11</option>\n                            <option value=\"12\">12</option>\n                            <option value=\"13\">13</option>\n                            <option value=\"14\">14</option>\n                            <option value=\"15\">15</option>\n                            <option value=\"16\">16</option>\n                            <option value=\"17\">17</option>\n                            <option value=\"18\">18</option>\n                            <option value=\"19\">19</option>\n                            <option value=\"20\">20</option>\n                            <option value=\"21\">21</option>\n                            <option value=\"22\">22</option>\n                            <option value=\"23\">23</option>\n                            <option value=\"24\">24</option>\n                            <option value=\"25\">25</option>\n                            <option value=\"26\">26</option>\n                            <option value=\"27\">27</option>\n                            <option value=\"28\">28</option>\n                            <option value=\"29\">29</option>\n                            <option value=\"30\">30</option>\n                            <option value=\"31\">31</option>\n                        </select>\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-year a-declarative\">\n                            <option value=\"\">Year</option>\n                            <option value=\"1900\">1900</option>\n                            <option value=\"1901\">1901</option>\n                            <option value=\"1902\">1902</option>\n                            <option value=\"1903\">1903</option>\n                            <option value=\"1904\">1904</option>\n                            <option value=\"1905\">1905</option>\n                            <option value=\"1906\">1906</option>\n                            <option value=\"1907\">1907</option>\n                            <option value=\"1908\">1908</option>\n                            <option value=\"1909\">1909</option>\n                            <option value=\"1910\">1910</option>\n                            <option value=\"1911\">1911</option>\n                            <option value=\"1912\">1912</option>\n                            <option value=\"1913\">1913</option>\n                            <option value=\"1914\">1914</option>\n                            <option value=\"1915\">1915</option>\n                            <option value=\"1916\">1916</option>\n                            <option value=\"1917\">1917</option>\n                            <option value=\"1918\">1918</option>\n                            <option value=\"1919\">1919</option>\n                            <option value=\"1920\">1920</option>\n                            <option value=\"1921\">1921</option>\n                            <option value=\"1922\">1922</option>\n                            <option value=\"1923\">1923</option>\n                            <option value=\"1924\">1924</option>\n                            <option value=\"1925\">1925</option>\n                            <option value=\"1926\">1926</option>\n                            <option value=\"1927\">1927</option>\n                            <option value=\"1928\">1928</option>\n                            <option value=\"1929\">1929</option>\n                            <option value=\"1930\">1930</option>\n                            <option value=\"1931\">1931</option>\n                            <option value=\"1932\">1932</option>\n                            <option value=\"1933\">1933</option>\n                            <option value=\"1934\">1934</option>\n                            <option value=\"1935\">1935</option>\n                            <option value=\"1936\">1936</option>\n                            <option value=\"1937\">1937</option>\n                            <option value=\"1938\">1938</option>\n                            <option value=\"1939\">1939</option>\n                            <option value=\"1940\">1940</option>\n                            <option value=\"1941\">1941</option>\n                            <option value=\"1942\">1942</option>\n                            <option value=\"1943\">1943</option>\n                            <option value=\"1944\">1944</option>\n                            <option value=\"1945\">1945</option>\n                            <option value=\"1946\">1946</option>\n                            <option value=\"1947\">1947</option>\n                            <option value=\"1948\">1948</option>\n                            <option value=\"1949\">1949</option>\n                            <option value=\"1950\">1950</option>\n                            <option value=\"1951\">1951</option>\n                            <option value=\"1952\">1952</option>\n                            <option value=\"1953\">1953</option>\n                            <option value=\"1954\">1954</option>\n                            <option value=\"1955\">1955</option>\n                            <option value=\"1956\">1956</option>\n                            <option value=\"1957\">1957</option>\n                            <option value=\"1958\">1958</option>\n                            <option value=\"1959\">1959</option>\n                            <option value=\"1960\">1960</option>\n                            <option value=\"1961\">1961</option>\n                            <option value=\"1962\">1962</option>\n                            <option value=\"1963\">1963</option>\n                            <option value=\"1964\">1964</option>\n                            <option value=\"1965\">1965</option>\n                            <option value=\"1966\">1966</option>\n                            <option value=\"1967\">1967</option>\n                            <option value=\"1968\">1968</option>\n                            <option value=\"1969\">1969</option>\n                            <option value=\"1970\">1970</option>\n                            <option value=\"1971\">1971</option>\n                            <option value=\"1972\">1972</option>\n                            <option value=\"1973\">1973</option>\n                            <option value=\"1974\">1974</option>\n                            <option value=\"1975\">1975</option>\n                            <option value=\"1976\">1976</option>\n                            <option value=\"1977\">1977</option>\n                            <option value=\"1978\">1978</option>\n                            <option value=\"1979\">1979</option>\n                            <option value=\"1980\">1980</option>\n                            <option value=\"1981\">1981</option>\n                            <option value=\"1982\">1982</option>\n                            <option value=\"1983\">1983</option>\n                            <option value=\"1984\">1984</option>\n                            <option value=\"1985\">1985</option>\n                            <option value=\"1986\">1986</option>\n                            <option value=\"1987\">1987</option>\n                            <option value=\"1988\">1988</option>\n                            <option value=\"1989\">1989</option>\n                            <option value=\"1990\">1990</option>\n                            <option value=\"1991\">1991</option>\n                            <option value=\"1992\">1992</option>\n                            <option value=\"1993\">1993</option>\n                            <option value=\"1994\">1994</option>\n                            <option value=\"1995\">1995</option>\n                            <option value=\"1996\">1996</option>\n                            <option value=\"1997\">1997</option>\n                            <option value=\"1998\">1998</option>\n                            <option value=\"1999\">1999</option>\n                            <option value=\"2000\">2000</option>\n                            <option value=\"2001\">2001</option>\n                            <option value=\"2002\">2002</option>\n                            <option value=\"2003\">2003</option>\n                            <option value=\"2004\">2004</option>\n                            <option value=\"2005\">2005</option>\n                            <option value=\"2006\">2006</option>\n                            <option value=\"2007\">2007</option>\n                            <option value=\"2008\">2008</option>\n                            <option value=\"2009\">2009</option>\n                            <option value=\"2010\">2010</option>\n                            <option value=\"2011\">2011</option>\n                            <option value=\"2012\">2012</option>\n                            <option value=\"2013\">2013</option>\n                            <option value=\"2014\">2014</option>\n                            <option value=\"2015\">2015</option>\n                            <option value=\"2016\">2016</option>\n                            <option value=\"2017\">2017</option>\n                            <option value=\"2018\">2018</option>\n                            <option value=\"2019\">2019</option>\n                            <option value=\"2020\">2020</option>\n                            <option value=\"2021\">2021</option>\n                            <option value=\"2022\">2022</option>\n                            <option value=\"2023\">2023</option>\n                            <option value=\"2024\">2024</option>\n                            <option value=\"2025\">2025</option>\n                            <option value=\"2026\">2026</option>\n                            <option value=\"2027\">2027</option>\n                            <option value=\"2028\">2028</option>\n                            <option value=\"2029\">2029</option>\n                            <option value=\"2030\">2030</option>\n                            <option value=\"2031\">2031</option>\n                            <option value=\"2032\">2032</option>\n                            <option value=\"2033\">2033</option>\n                            <option value=\"2034\">2034</option>\n                            <option value=\"2035\">2035</option>\n                            <option value=\"2036\">2036</option>\n                            <option value=\"2037\">2037</option>\n                            <option value=\"2038\">2038</option>\n                            <option value=\"2039\">2039</option>\n                        </select>\n                    </div>\n                    <div class=\"a-cal-date-range-group a-cal-date-range-group-vertical\">\n                        <div class=\"a-cal-date-range-wrapper\">\n                            <div class=\"a-input-text-addon-group-wrapper\">\n                                <div class=\"a-input-text-addon-group a-width-base\" role=\"presentation\">\n                                    <span class=\"a-input-text-addon a-cal-icon a-declarative\" role=\"button\" tabindex=\"0\" data-action=\"a-cal-icon\">\n                                        <i class=\"a-icon a-icon-calendar\"></i>\n                                    </span>\n                                    <input type=\"text\" maxlength=\"10\" data-action=\"a-cal-input\" data-input=\"start\" class=\"a-input-text a-cal-input a-declarative\" id=\"to-date\"/>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n                <script>\n                    //FIXME: remove this horrible hack once AUI update is complete with Calendar improvements\n                    (function() {\n                        var calOuter = document.getElementById('to-date-wrap');\n                        var calInput = calOuter.getElementsByClassName('a-cal-input')[0]\n                        calInput.name = 'to-date';\n                        if (calInput.value === '') {\n                            calInput.value = '24/4/2025';\n                        }\n                    }());\n                </script>\n                <div data-harmonic-error-for=\"to-date\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                    <div class=\"a-box-inner a-alert-container\">\n                        <i class=\"a-icon a-icon-alert\"></i>\n                        <div class=\"a-alert-content\"></div>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </span>\n</div>\n<script id=\"remittanceSearchForm-harmonic-fields-data\" type=\"application/json\">\n    [\n        {\n            \"id\": \"remittance-search-key\",\n            \"labelText\": null,\n            \"labelTextIsLiteral\": false,\n            \"instruction\": null,\n            \"instructionIsLiteral\": false,\n            \"contextualHelp\": null,\n            \"contextualHelpIsLiteral\": false,\n            \"visibilityCondition\": null,\n            \"properties\": {\n            },\n            \"multiValued\": false,\n            \"nullText\": null,\n            \"type\": \"selection\",\n            \"placeholder\": null,\n            \"placeholderIsLiteral\": false,\n            \"formattedValue\": \"Payment Date Range\",\n            \"displayAsValid\": true,\n            \"settings\": {\n                \"requireEntry\": false,\n                \"options\": {\n                    \"DATE_RANGE\": \"Payment Date Range\",\n                    \"PAYMENT_NUMBER\": \"Payment Number\",\n                    \"INVOICE_NUMBER\": \"Invoice Number\",\n                    \"AMOUNT_RANGE\": \"Payment amount\"\n                }\n            },\n            \"itemType\": \"Field\",\n            \"fieldValid\": true,\n            \"errorMessageString\": null,\n            \"errorReplacements\": null,\n            \"fieldRequired\": false,\n            \"value\": \"DATE_RANGE\",\n            \"labelTextLiteral\": false\n        },\n        {\n            \"id\": \"payment-number\",\n            \"labelText\": null,\n            \"labelTextIsLiteral\": false,\n            \"instruction\": null,\n            \"instructionIsLiteral\": false,\n            \"contextualHelp\": null,\n            \"contextualHelpIsLiteral\": false,\n            \"visibilityCondition\": {\n                \"id\": \"214900\",\n                \"checkValues\": [\n                    \"PAYMENT_NUMBER\"\n                ],\n                \"fieldId\": \"remittance-search-key\",\n                \"true\": false,\n                \"type\": \"FieldValueCheckCondition\"\n            },\n            \"properties\": {\n            },\n            \"multiValued\": false,\n            \"nullText\": null,\n            \"type\": \"text\",\n            \"placeholder\": \"Enter payment number\",\n            \"placeholderIsLiteral\": true,\n            \"formattedValue\": \"\",\n            \"displayAsValid\": true,\n            \"desanitizedValue\": \"\",\n            \"itemType\": \"Field\",\n            \"fieldValid\": false,\n            \"errorMessageString\": {\n                \"string\": \"vft-harmonic-base-validation-require-entry-error\",\n                \"literal\": false\n            },\n            \"errorReplacements\": {\n        },\n        \"fieldRequired\": true,\n        \"value\": \"\",\n        \"labelTextLiteral\": false,\n        \"settings\": {\n            \"requireEntry\": true,\n            \"maxLength\": 20,\n            \"minLength\": null\n        }\n    },\n    {\n        \"id\": \"invoice-number\",\n        \"labelText\": null,\n        \"labelTextIsLiteral\": false,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": {\n            \"id\": \"214901\",\n            \"checkValues\": [\n                \"INVOICE_NUMBER\"\n            ],\n            \"fieldId\": \"remittance-search-key\",\n            \"true\": false,\n            \"type\": \"FieldValueCheckCondition\"\n        },\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"text\",\n        \"placeholder\": \"Enter invoice number\",\n        \"placeholderIsLiteral\": true,\n        \"formattedValue\": \"\",\n        \"displayAsValid\": true,\n        \"desanitizedValue\": \"\",\n        \"itemType\": \"Field\",\n        \"fieldValid\": false,\n        \"errorMessageString\": {\n            \"string\": \"vft-harmonic-base-validation-require-entry-error\",\n            \"literal\": false\n        },\n        \"errorReplacements\": {\n        },\n        \"fieldRequired\": true,\n        \"value\": \"\",\n        \"labelTextLiteral\": false,\n        \"settings\": {\n            \"requireEntry\": true,\n            \"maxLength\": 50,\n            \"minLength\": null\n        }\n    },\n    {\n        \"id\": \"min-payment-amount\",\n        \"labelText\": \"From\",\n        \"labelTextIsLiteral\": true,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": null,\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"number\",\n        \"placeholder\": null,\n        \"placeholderIsLiteral\": false,\n        \"formattedValue\": \"\",\n        \"displayAsValid\": true,\n        \"endpoint\": \"USER\",\n        \"value\": null,\n        \"itemType\": \"Field\",\n        \"fieldValid\": true,\n        \"errorMessageString\": null,\n        \"errorReplacements\": null,\n        \"fieldRequired\": false,\n        \"labelTextLiteral\": true,\n        \"locale\": {\n            \"country\": \"GB\",\n            \"language\": \"en\",\n            \"groupingSeparator\": \",\",\n            \"decimalSeparator\": \".\"\n        },\n        \"settings\": {\n            \"decimals\": 2,\n            \"percentage\": false,\n            \"requireEntry\": false,\n            \"requireInteger\": false,\n            \"requireNegative\": false,\n            \"requirePositive\": true,\n            \"maxValue\": 1.7976931348623157E308\n        }\n    },\n    {\n        \"id\": \"max-payment-amount\",\n        \"labelText\": \"To\",\n        \"labelTextIsLiteral\": true,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": null,\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"number\",\n        \"placeholder\": null,\n        \"placeholderIsLiteral\": false,\n        \"formattedValue\": \"\",\n        \"displayAsValid\": true,\n        \"endpoint\": \"USER\",\n        \"value\": null,\n        \"itemType\": \"Field\",\n        \"fieldValid\": true,\n        \"errorMessageString\": null,\n        \"errorReplacements\": null,\n        \"fieldRequired\": false,\n        \"labelTextLiteral\": true,\n        \"locale\": {\n            \"country\": \"GB\",\n            \"language\": \"en\",\n            \"groupingSeparator\": \",\",\n            \"decimalSeparator\": \".\"\n        },\n        \"settings\": {\n            \"decimals\": 2,\n            \"percentage\": false,\n            \"requireEntry\": false,\n            \"requireInteger\": false,\n            \"requireNegative\": false,\n            \"requirePositive\": true,\n            \"maxValue\": 1.7976931348623157E308\n        }\n    },\n    {\n        \"id\": \"date-range-option\",\n        \"labelText\": null,\n        \"labelTextIsLiteral\": false,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": null,\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"selection\",\n        \"placeholder\": null,\n        \"placeholderIsLiteral\": false,\n        \"formattedValue\": \"Custom payment date range\",\n        \"displayAsValid\": true,\n        \"settings\": {\n            \"requireEntry\": false,\n            \"options\": {\n                \"SEVEN_DAYS\": \"Last 07 days\",\n                \"FIFTEEN_DAYS\": \"Last 15 days\",\n                \"THIRTY_DAYS\": \"Last 30 days\",\n                \"SIXTY_DAYS\": \"Last 60 days\",\n                \"NINETY_DAYS\": \"Last 90 days\",\n                \"CUSTOM\": \"Custom payment date range\"\n            }\n        },\n        \"itemType\": \"Field\",\n        \"fieldValid\": true,\n        \"errorMessageString\": null,\n        \"errorReplacements\": null,\n        \"fieldRequired\": false,\n        \"value\": \"CUSTOM\",\n        \"labelTextLiteral\": false\n    },\n    {\n        \"id\": \"from-date\",\n        \"labelText\": \"From\",\n        \"labelTextIsLiteral\": true,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": null,\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"date\",\n        \"placeholder\": null,\n        \"placeholderIsLiteral\": false,\n        \"formattedValue\": \"1/2/2025\",\n        \"displayAsValid\": true,\n        \"endpoint\": \"USER\",\n        \"value\": [\n            2025,\n            2,\n            1\n        ],\n        \"itemType\": \"Field\",\n        \"fieldValid\": true,\n        \"errorMessageString\": null,\n        \"errorReplacements\": null,\n        \"fieldRequired\": true,\n        \"labelTextLiteral\": true,\n        \"settings\": {\n            \"requireEntry\": true,\n            \"requirePast\": false,\n            \"requireFuture\": false,\n            \"maxValue\": [\n                2025,\n                4,\n                24\n            ],\n            \"minValue\": [\n                1990,\n                1,\n                1\n            ]\n        },\n        \"formatPattern\": \"d/m/yyyy\"\n    },\n    {\n        \"id\": \"to-date\",\n        \"labelText\": \"To\",\n        \"labelTextIsLiteral\": true,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": null,\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"date\",\n        \"placeholder\": null,\n        \"placeholderIsLiteral\": false,\n        \"formattedValue\": \"24/4/2025\",\n        \"displayAsValid\": true,\n        \"endpoint\": \"USER\",\n        \"value\": [\n            2025,\n            4,\n            24\n        ],\n        \"itemType\": \"Field\",\n        \"fieldValid\": true,\n        \"errorMessageString\": null,\n        \"errorReplacements\": null,\n        \"fieldRequired\": true,\n        \"labelTextLiteral\": true,\n        \"settings\": {\n            \"requireEntry\": true,\n            \"requirePast\": false,\n            \"requireFuture\": false,\n            \"maxValue\": [\n                2025,\n                4,\n                24\n            ],\n            \"minValue\": [\n                1990,\n                1,\n                1\n            ]\n        },\n        \"formatPattern\": \"d/m/yyyy\"\n    }]</script>\n<script id=\"remittanceSearchForm-harmonic-init-script\">\n    P.when('A', 'harmonic').execute(function(A, harmonic) {\n        try {\n            var fieldDataJson = A.$('#remittanceSearchForm-harmonic-fields-data').html();\n            var fieldData = JSON.parse(fieldDataJson);\n\n            harmonic('#remittanceSearchForm', {\n                formValidatorModuleName: 'remittance-search-form-validator',\n                displayAsValid: true,\n                currencyFormats: [],\n                conditions: [{\n                    \"id\": \"214900\",\n                    \"checkValues\": [\"PAYMENT_NUMBER\"],\n                    \"fieldId\": \"remittance-search-key\",\n                    \"true\": false,\n                    \"type\": \"FieldValueCheckCondition\"\n                }, {\n                    \"id\": \"214901\",\n                    \"checkValues\": [\"INVOICE_NUMBER\"],\n                    \"fieldId\": \"remittance-search-key\",\n                    \"true\": false,\n                    \"type\": \"FieldValueCheckCondition\"\n                }, {\n                    \"id\": \"214902\",\n                    \"checkValues\": [\"AMOUNT_RANGE\"],\n                    \"fieldId\": \"remittance-search-key\",\n                    \"true\": false,\n                    \"type\": \"FieldValueCheckCondition\"\n                }, {\n                    \"id\": \"214903\",\n                    \"checkValues\": [\"DATE_RANGE\", \"AMOUNT_RANGE\"],\n                    \"fieldId\": \"remittance-search-key\",\n                    \"true\": true,\n                    \"type\": \"FieldValueCheckCondition\"\n                }],\n                structure: [{\n                    \"itemType\": \"Field\",\n                    \"id\": \"remittance-search-key\"\n                }, {\n                    \"itemType\": \"Field\",\n                    \"visibilityConditionId\": \"214900\",\n                    \"id\": \"payment-number\"\n                }, {\n                    \"itemType\": \"Field\",\n                    \"visibilityConditionId\": \"214901\",\n                    \"id\": \"invoice-number\"\n                }, {\n                    \"itemType\": \"FieldSet\",\n                    \"visibilityConditionId\": \"214902\",\n                    \"id\": \"amount-field-set\",\n                    \"items\": [{\n                        \"itemType\": \"Field\",\n                        \"id\": \"min-payment-amount\"\n                    }, {\n                        \"itemType\": \"Field\",\n                        \"id\": \"max-payment-amount\"\n                    }]\n                }, {\n                    \"itemType\": \"FieldSet\",\n                    \"visibilityConditionId\": \"214903\",\n                    \"id\": \"date-field-set\",\n                    \"items\": [{\n                        \"itemType\": \"Field\",\n                        \"id\": \"date-range-option\"\n                    }, {\n                        \"itemType\": \"Field\",\n                        \"id\": \"from-date\"\n                    }, {\n                        \"itemType\": \"Field\",\n                        \"id\": \"to-date\"\n                    }]\n                }]\n            }, fieldData);\n        } catch (e) {\n            P.when('vft-devlogger').execute(function(devLogger) {\n                devLogger.log('Error creating harmonic form #remittanceSearchForm');\n                devLogger.log(e);\n            });\n        }\n    });\n</script>\n<script>\n    P.when('vft-stringmaps').execute(function(StringMaps) {\n        var map = {};\n\n        map['vft-harmonic-base-formatting-error'] = 'The value could not be formatted.';\n        map['vft-harmonic-base-operation-error'] = 'The value entered caused an error. Please enter a different value.';\n        map['vft-harmonic-base-parsing-error'] = '\"\" is not a valid entry.';\n        map['vft-harmonic-base-validation-error'] = '\"\" is not a valid entry.';\n        map['vft-harmonic-base-validation-require-entry-error'] = 'This is required.';\n        map['vft-harmonic-date-parsing-error'] = '\"\" is not a valid date format.';\n        map['vft-harmonic-base-field-error'] = 'The field is invalid.';\n        map['vft-harmonic-date-validation-max-value-error'] = '\"\" comes after the maximum date . Please enter a valid date.';\n        map['vft-harmonic-date-validation-min-value-error'] = '\"\" comes before the minimum date . Please enter a valid date.\n';\n        map['vft-harmonic-date-validation-require-future-error'] = 'Enter a date in the future.';\n        map['vft-harmonic-date-validation-require-past-error'] = 'Enter a date in the past.';\n        map['vft-harmonic-date-validation-type-error'] = 'Enter a valid date.';\n        map['vft-harmonic-form-invalid-error'] = 'Some entries aren\u2019t valid. Please fix the errors and then submit the form.';\n        map['vft-harmonic-general-error'] = 'There was a problem processing the form. Please try again.';\n        map['vft-harmonic-money-parsing-error'] = '\"\" is not a valid monetary amount.';\n        map['vft-harmonic-money-validation-max-value-error'] = 'The amount must be less than . \n';\n        map['vft-harmonic-money-validation-min-value-error'] = 'The amount entered is too small. It must be at least . \n';\n        map['vft-harmonic-money-validation-require-negative-error'] = 'Enter a negative amount.';\n        map['vft-harmonic-money-validation-require-positive-error'] = 'Enter a positive amount.';\n        map['vft-harmonic-number-parsing-error'] = '\"\" is not a valid number.';\n        map['vft-harmonic-number-validation-max-value-error'] = 'The number entered is too large. It must be no more than .';\n        map['vft-harmonic-number-validation-min-value-error'] = 'This must be at least .';\n        map['vft-harmonic-number-validation-require-integer-error'] = 'Enter an integer.';\n        map['vft-harmonic-number-validation-require-negative-error'] = 'Enter a negative number.';\n        map['vft-harmonic-number-validation-require-positive-error'] = 'Enter a positive number.';\n        map['vft-harmonic-number-validation-type-error'] = 'Enter a number.';\n        map['vft-harmonic-selection-operation-no-multiples-error'] = 'Select one item.';\n        map['vft-harmonic-selection-validation-not-found-error'] = 'Please select a valid value.';\n        map['vft-harmonic-multiselect-validation-not-found-error'] = 'Please select a valid value.';\n        map['vft-harmonic-text-validation-max-length-error'] = 'The text entered is too long. It must be no more than  characters.';\n        map['vft-harmonic-text-validation-min-length-error'] = 'The text entered is not long enough. It needs to be at least  characters.';\n        map['vft-harmonic-text-validation-type-error'] = 'The value  is not a string.';\n        StringMaps.registerMap('harmonic-Strings', map);\n    });\n</script>\n<span id=\"remittanceSearchForm-submit-aui-button\" class=\"a-button a-button-primary\">\n    <span class=\"a-button-inner\">\n        <input id=\"remittanceSearchForm-submit\" class=\"a-button-input\" type=\"submit\" aria-labelledby=\"remittanceSearchForm-submit-aui-button-announce\"/>\n        <span id=\"remittanceSearchForm-submit-aui-button-announce\" class=\"a-button-text\" aria-hidden=\"true\">Search</span>\n    </span>\n</span>\n<div data-harmonic-form-error=\"true\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n    <div class=\"a-box-inner a-alert-container\">\n        <i class=\"a-icon a-icon-alert\"></i>\n        <div class=\"a-alert-content\"></div>\n    </div>\n</div>\n<div class=\"a-row a-spacing-top-small\">\n    <a id=\"clear-search-form\" class=\"a-link-normal\" href=\"javascript:;\">Clear search\n                            </a>\n</div>\n</div><hr aria-hidden=\"true\" class=\"a-spacing-top-base a-divider-normal\"/>\n<div class=\"a-row\">\n    <h3 class=\"a-spacing-small\">Refine by\n                        </h3>\n    <fieldset class=\"a-spacing-medium a-spacing-top-small\">\n        <legend>Payment status\n                            </legend>\n        <div data-a-input-name=\"paymentStatusCheckboxFilter\" class=\"a-checkbox a-checkbox-fancy checkbox-filter a-spacing-top-micro\">\n            <label for=\"payment-status-successful-check\">\n                <input id=\"payment-status-successful-check\" type=\"checkbox\" name=\"paymentStatusCheckboxFilter\" value=\"\"/>\n                <i class=\"a-icon a-icon-checkbox\"></i>\n                <span class=\"a-label a-checkbox-label\">Successful\n                            </span>\n            </label>\n        </div>\n        <div data-a-input-name=\"paymentStatusCheckboxFilter\" class=\"a-checkbox a-checkbox-fancy checkbox-filter a-spacing-top-micro\">\n            <label for=\"payment-status-failed-check\">\n                <input id=\"payment-status-failed-check\" type=\"checkbox\" name=\"paymentStatusCheckboxFilter\" value=\"\"/>\n                <i class=\"a-icon a-icon-checkbox\"></i>\n                <span class=\"a-label a-checkbox-label\">Failed\n                            </span>\n            </label>\n        </div>\n    </fieldset>\n</div>\n</div>\n<div class=\"a-column a-span8\">\n    <div id=\"remittanceHeaderTable-melodic-wrapper\" class=\"melodic-wrapper melodic-loading\">\n        <div class=\"melodic-loading-overlay\" style=\"display: block;\">\n            <div class=\"melodic-loading-overlay-inner\">\n                <div class=\"a-popover-loading \">&nbsp;</div>\n            </div>\n        </div>\n        <div id=\"remittanceheadertable\" class=\"mt-container clearfix\" data-scroll-on-refresh=\"body\" data-max-retries=\"10\">\n            <div class=\"mt-loading-overlay\">\n                <div class=\"mt-loading-image a-popover-loading\"></div>\n            </div>\n            <div class=\"mt-table-alerts\"></div>\n            <div class=\"mt-default-alert a-hidden\">\n                <div class=\"a-box a-alert a-alert-error a-spacing-medium\" role=\"alert\">\n                    <div class=\"a-box-inner a-alert-container\">\n                        <i class=\"a-icon a-icon-alert\"></i>\n                        <div class=\"a-alert-content\">\n                            <span id=\"mt-default-error-text\"></span>\n                        </div>\n                    </div>\n                </div>\n            </div>\n            <div class=\"mt-header clearfix\">\n                <div class=\"mt-header-search\"></div>\n                <div class=\"mt-header-count\">\n                    <span id=\"mt-header-count-value\">2</span>\n                    records\n                </div>\n            </div>\n            <div class=\"mt-content clearfix\">\n                <div class=\"mt-table-container clearfix\">\n                    <table class=\"a-bordered a-horizontal-stripes mt-table\">\n                        <tr id=\"head-row\" class=\"mt-head\">\n                            <th id=\"header-payment-checkbox\" class=\"mt-table-header-cell mt-header-left mt-head mt-cell\">\n                                <div class=\"mt-layout-block\"></div>\n                            </th>\n                            <th id=\"header-payment-number\" class=\"mt-table-header-cell mt-header-sort mt-header-left mt-head mt-cell\">\n                                <div class=\"mt-layout-block\">\n                                    <span class=\"a-declarative\" data-action=\"remittanceheadertable-sort-clicked\" data-remittanceheadertable-sort-clicked=\"{&quot;heading&quot;:&quot;header-payment-number&quot;}\">\n                                        <a href=\"javascript:void(0)\" class=\"mt-sort-link\">\n                                            Payment Number\n                            <span class=\" mt-header-sort-icon\" data-column=\"header-payment-number\" data-sorted=\"false\" data-direction=\"NOT_SORTED\"></span>\n                                        </a>\n                                    </span>\n                                </div>\n                            </th>\n                            <th id=\"header-payment-date\" class=\"mt-table-header-cell mt-header-sort mt-sort-up mt-header-left mt-head mt-cell\">\n                                <div class=\"mt-layout-block\">\n                                    <span class=\"a-declarative\" data-action=\"remittanceheadertable-sort-clicked\" data-remittanceheadertable-sort-clicked=\"{&quot;heading&quot;:&quot;header-payment-date&quot;}\">\n                                        <a href=\"javascript:void(0)\" class=\"mt-sort-link\">\n                                            Payment Date\n                            <span class=\"mt-sort-up mt-header-sort-icon\" data-column=\"header-payment-date\" data-sorted=\"true\" data-direction=\"ASCENDING\"></span>\n                                        </a>\n                                    </span>\n                                </div>\n                            </th>\n                            <th id=\"header-payment-amount\" class=\"mt-table-header-cell mt-header-sort mt-header-right mt-head mt-cell\">\n                                <div class=\"mt-layout-block\">\n                                    <span class=\"a-declarative\" data-action=\"remittanceheadertable-sort-clicked\" data-remittanceheadertable-sort-clicked=\"{&quot;heading&quot;:&quot;header-payment-amount&quot;}\">\n                                        <a href=\"javascript:void(0)\" class=\"mt-sort-link\">\n                                            Payment amount\n                            <span class=\" mt-header-sort-icon\" data-column=\"header-payment-amount\" data-sorted=\"false\" data-direction=\"NOT_SORTED\"></span>\n                                        </a>\n                                    </span>\n                                </div>\n                            </th>\n                            <th id=\"header-payment-status\" class=\"mt-table-header-cell mt-header-sort mt-header-left mt-head mt-cell\">\n                                <div class=\"mt-layout-block\">\n                                    <span class=\"a-declarative\" data-action=\"remittanceheadertable-sort-clicked\" data-remittanceheadertable-sort-clicked=\"{&quot;heading&quot;:&quot;header-payment-status&quot;}\">\n                                        <a href=\"javascript:void(0)\" class=\"mt-sort-link\">\n                                            Payment status\n                            <span class=\" mt-header-sort-icon\" data-column=\"header-payment-status\" data-sorted=\"false\" data-direction=\"NOT_SORTED\"></span>\n                                        </a>\n                                    </span>\n                                </div>\n                            </th>\n                        </tr>\n                        <tr id=\"r375664965\" data-delayed-row-data=\"\" data-row-data=\"\" class=\"mt-row\">\n                            <td id=\"r375664965-header-payment-checkbox\" data-column=\"header-payment-checkbox\" data-row=\"r375664965\" class=\"mt-cell mt-left\">\n                                <span id=\"r375664965-header-payment-checkbox-input-wrap\" class=\"harmonic-field\">\n                                    <span class=\"a-declarative\" data-action=\"r375664965-header-payment-checkbox-input-harmonic-checkbox\" data-r375664965-header-payment-checkbox-input-harmonic-checkbox=\"{}\">\n                                        <div class=\"a-checkbox a-checkbox-fancy\">\n                                            <label for=\"r375664965-header-payment-checkbox-input-harmonic-checkbox\">\n                                                <input id=\"r375664965-header-payment-checkbox-input-harmonic-checkbox\" type=\"checkbox\" name=\"\" value=\"\"/>\n                                                <i class=\"a-icon a-icon-checkbox\"></i>\n                                                <span class=\"a-label a-checkbox-label\"></span>\n                                            </label>\n                                        </div>\n                                    </span>\n                                    <input type=\"hidden\" id=\"r375664965-header-payment-checkbox-input\" name=\"r375664965-header-payment-checkbox-input\" value=\"false\" data-harmonic-renderer=\"bool-checkbox\">\n                                </span>\n                            </td>\n                            <td id=\"r375664965-header-payment-number\" data-column=\"header-payment-number\" data-row=\"r375664965\" class=\"mt-cell mt-left\">\n                                <span id=\"r375664965-header-payment-number-input-wrap\" class=\"harmonic-field\">\n                                    <span id=\"r375664965-header-payment-number-input-value\">\n                                        <a class=\"a-link-normal\" href=\"/hz/vendor/members/remittance/detail?paymentId=375664965&amp;vendorId=67442390&amp;marketplaceId=A13V1IB3VIYZZH\">213891338</a>\n                                    </span>\n                                </span>\n                            </td>\n                            <td id=\"r375664965-header-payment-date\" data-column=\"header-payment-date\" data-row=\"r375664965\" class=\"mt-cell mt-left\">\n                            <!--todo add a span-->\n                            25/2/2025\n</td>\n                            <td id=\"r375664965-header-payment-amount\" data-column=\"header-payment-amount\" data-row=\"r375664965\" class=\"mt-cell mt-right\">\n                            <!--todo add a span-->\n                            -108.19 GBP\n</td>\n                            <td id=\"r375664965-header-payment-status\" data-column=\"header-payment-status\" data-row=\"r375664965\" class=\"mt-cell mt-left\">\n                            <!--todo add a span-->\n                            Successful\n</td>\n                        </tr>\n                        <tr id=\"r376468418\" data-delayed-row-data=\"\" data-row-data=\"\" class=\"mt-row\">\n                            <td id=\"r376468418-header-payment-checkbox\" data-column=\"header-payment-checkbox\" data-row=\"r376468418\" class=\"mt-cell mt-left\">\n                                <span id=\"r376468418-header-payment-checkbox-input-wrap\" class=\"harmonic-field\">\n                                    <span class=\"a-declarative\" data-action=\"r376468418-header-payment-checkbox-input-harmonic-checkbox\" data-r376468418-header-payment-checkbox-input-harmonic-checkbox=\"{}\">\n                                        <div class=\"a-checkbox a-checkbox-fancy\">\n                                            <label for=\"r376468418-header-payment-checkbox-input-harmonic-checkbox\">\n                                                <input id=\"r376468418-header-payment-checkbox-input-harmonic-checkbox\" type=\"checkbox\" name=\"\" value=\"\"/>\n                                                <i class=\"a-icon a-icon-checkbox\"></i>\n                                                <span class=\"a-label a-checkbox-label\"></span>\n                                            </label>\n                                        </div>\n                                    </span>\n                                    <input type=\"hidden\" id=\"r376468418-header-payment-checkbox-input\" name=\"r376468418-header-payment-checkbox-input\" value=\"false\" data-harmonic-renderer=\"bool-checkbox\">\n                                </span>\n                            </td>\n                            <td id=\"r376468418-header-payment-number\" data-column=\"header-payment-number\" data-row=\"r376468418\" class=\"mt-cell mt-left\">\n                                <span id=\"r376468418-header-payment-number-input-wrap\" class=\"harmonic-field\">\n                                    <span id=\"r376468418-header-payment-number-input-value\">\n                                        <a class=\"a-link-normal\" href=\"/hz/vendor/members/remittance/detail?paymentId=376468418&amp;vendorId=67442390&amp;marketplaceId=A13V1IB3VIYZZH\">213891338</a>\n                                    </span>\n                                </span>\n                            </td>\n                            <td id=\"r376468418-header-payment-date\" data-column=\"header-payment-date\" data-row=\"r376468418\" class=\"mt-cell mt-left\">\n                            <!--todo add a span-->\n                            9/3/2025\n</td>\n                            <td id=\"r376468418-header-payment-amount\" data-column=\"header-payment-amount\" data-row=\"r376468418\" class=\"mt-cell mt-right\">\n                            <!--todo add a span-->\n                            -2,679.27 EUR\n</td>\n                            <td id=\"r376468418-header-payment-status\" data-column=\"header-payment-status\" data-row=\"r376468418\" class=\"mt-cell mt-left\">\n                            <!--todo add a span-->\n                            Successful\n</td>\n                        </tr>\n                    </table>\n                </div>\n            </div>\n            <div class=\"mt-foot clearfix\">\n                <div class=\"mt-foot-pagi clearfix\"></div>\n                <div class=\"mt-foot-rpp clearfix\">\n                    <div class=\"mt-records-per-page\"></div>\n                </div>\n            </div>\n            <input type=\"hidden\" name=\"\" class=\"refresh-endpoint\"/>\n            <input type=\"hidden\" name=\"\" class=\"fromTag\"/>\n            <input type=\"hidden\" name=\"\" class=\"featureSetTag\"/>\n            <input type=\"hidden\" name=\"\" class=\"delayed-endpoint\"/>\n            <input type=\"hidden\" name=\"\" class=\"save-endpoint\"/>\n            <input type=\"hidden\" name=\"\" value=\"false\" class=\"mt-allow-multi-page-select\"/>\n            <input type=\"hidden\" name=\"\" value=\"Your unsaved changes will be lost. Do you want to continue?\" class=\"unsaved-changes-confirm-label\"/>\n            <input type=\"hidden\" name=\"\" value=\"Your selected rows will be unselected. Do you want to continue?\" class=\"selected-rows-confirm-label\"/>\n            <input type=\"hidden\" name=\"\" class=\"default-error-message-label\"/>\n            <input type=\"hidden\" name=\"\" value=\"false\" class=\"mt-enable-floating-bar\"/>\n        </div>\n        <script>\n            P.when('tabela-manager').register('tabela-table-remittanceheadertable', function(TabelaManager) {\n                TabelaManager.create('remittanceheadertable');\n            });\n        </script>\n        <div class=\"melodic-templates aok-hidden\">\n            <span class=\"melodic-templates-button-normal\">\n                <li id=\"\" class=\"a-normal\">\n                    <a href=\"\"></a>\n                </li>\n            </span>\n            <span class=\"melodic-templates-button-selected\">\n                <li id=\"\" class=\"a-selected\">\n                    <a href=\"\" aria-current=\"page\"></a>\n                </li>\n            </span>\n            <span class=\"melodic-templates-button-disabled\">\n                <li id=\"\" class=\"a-disabled\" aria-disabled=\"true\"></li>\n            </span>\n            <span class=\"melodic-templates-pagination-wrapper\">\n                <div class=\"a-text-center\" role=\"navigation\">\n                    <ul class=\"a-pagination\">\n                        <li>\n                            <a href=\"#prev\">\n                                <span class=\"larr\">\u2190</span>\n                                <span class=\"a-letter-space\"></span>\n                                <span class=\"a-letter-space\"></span>\n                                Previous\n                            </a>\n                        </li>\n                        \n                        <li class=\"a-last\">\n                            <a href=\"#next\">\n                                Next<span class=\"a-letter-space\"></span>\n                                <span class=\"a-letter-space\"></span>\n                                <span class=\"larr\">\u2192</span>\n                            </a>\n                        </li>\n                    </ul>\n                </div>\n            </span>\n            <span class=\"melodic-templates-single-page\">\n                <p>&nbsp;</p>\n            </span>\n            <span class=\"melodic-templates-no-records\">\n                <div class=\"a-box a-spacing-large a-spacing-top-large\">\n                    <div class=\"a-box-inner\">\n                        No results were found. Possible reasons:\n                    \n                        <ul class=\"a-unordered-list a-vertical a-spacing-micro\">\n                            <li>\n                                <span class=\"a-list-item\">After you receive your payment notification, it can take up to three working days for the payment to be reflected here.\n                        </span>\n                            </li>\n                            <li>\n                                <span class=\"a-list-item\">No payment exists for this search.\n                        </span>\n                            </li>\n                        </ul>\n                    </div>\n                </div>\n            </span>\n            <span class=\"melodic-templates-no-matches\">\n                <div class=\"a-box a-alert-inline a-alert-inline-info a-spacing-large a-spacing-top-large\" aria-live=\"polite\" aria-atomic=\"true\">\n                    <div class=\"a-box-inner a-alert-container\">\n                        <i class=\"a-icon a-icon-alert\"></i>\n                        <div class=\"a-alert-content\">No results match your search criteria.</div>\n                    </div>\n                </div>\n            </span>\n            <span class=\"melodic-templates-load-error\">A problem occurred. Please try again.</span>\n        </div>\n    </div>\n    <script id=\"remittanceHeaderTable-melodic-data\" type=\"application/json\">\n        {\n            \"formId\": \"remittanceSearchForm\",\n            \"totalNumberOfRecords\": null,\n            \"records\": [\n                {\n                    \"cells\": {\n                        \"header-payment-status\": {\n                            \"id\": \"r375664965-header-payment-status\",\n                            \"value\": \"Successful\",\n                            \"edited\": false,\n                            \"formatted\": \"Successful\"\n                        },\n                        \"header-payment-checkbox\": {\n                            \"id\": \"r375664965-header-payment-checkbox\",\n                            \"value\": false,\n                            \"edited\": false,\n                            \"formatted\": \"false\"\n                        },\n                        \"header-payment-number\": {\n                            \"id\": \"r375664965-header-payment-number\",\n                            \"value\": {\n                                \"linkText\": {\n                                    \"string\": \"213891338\",\n                                    \"literal\": true\n                                },\n                                \"url\": \"/hz/vendor/members/remittance/detail?paymentId=375664965&vendorId=67442390&marketplaceId=A13V1IB3VIYZZH\",\n                                \"type\": \"link\"\n                            },\n                            \"edited\": false,\n                            \"formatted\": \"\"\n                        },\n                        \"header-payment-id\": {\n                            \"id\": \"r375664965-header-payment-id\",\n                            \"value\": \"375664965\",\n                            \"edited\": false,\n                            \"formatted\": \"375664965\"\n                        },\n                        \"header-payment-date\": {\"id\": \"r375664965-header-payment-date\",\n                        \"value\": [\n                            2025,\n                            2,\n                            25],\n                            \"edited\": false,\n                            \"formatted\": \"25/2/2025\"},\n                            \"header-payment-amount\": {\n                                \"id\": \"r375664965-header-payment-amount\",\n                                \"value\": -108.19,\n                                \"fieldId\": \"header-payment-amount-currency-GBP\",\n                                \"edited\": false,\n                                \"formatted\": \"-108.19 GBP\"\n                            }\n                        },\n                        \"index\": 0,\n                        \"id\": \"r375664965\",\n                        \"key\": \"375664965\"\n                    },\n                    {\n                        \"cells\": {\n                            \"header-payment-status\": {\n                                \"id\": \"r376468418-header-payment-status\",\n                                \"value\": \"Successful\",\n                                \"edited\": false,\n                                \"formatted\": \"Successful\"\n                            },\n                            \"header-payment-checkbox\": {\n                                \"id\": \"r376468418-header-payment-checkbox\",\n                                \"value\": false,\n                                \"edited\": false,\n                                \"formatted\": \"false\"\n                            },\n                            \"header-payment-number\": {\n                                \"id\": \"r376468418-header-payment-number\",\n                                \"value\": {\n                                    \"linkText\": {\n                                        \"string\": \"213891338\",\n                                        \"literal\": true\n                                    },\n                                    \"url\": \"/hz/vendor/members/remittance/detail?paymentId=376468418&vendorId=67442390&marketplaceId=A13V1IB3VIYZZH\",\n                                    \"type\": \"link\"\n                                },\n                                \"edited\": false,\n                                \"formatted\": \"\"\n                            },\n                            \"header-payment-id\": {\n                                \"id\": \"r376468418-header-payment-id\",\n                                \"value\": \"376468418\",\n                                \"edited\": false,\n                                \"formatted\": \"376468418\"\n                            },\n                            \"header-payment-date\": {\n                                \"id\": \"r376468418-header-payment-date\",\n                                \"value\": [\n                                    2025,\n                                    3,\n                                    9\n                                ],\n                                \"edited\": false,\n                                \"formatted\": \"9/3/2025\"\n                            },\n                            \"header-payment-amount\": {\n                                \"id\": \"r376468418-header-payment-amount\",\n                                \"value\": -2679.27,\n                                \"fieldId\": \"header-payment-amount-currency-EUR\",\n                                \"edited\": false,\n                                \"formatted\": \"-2,679.27 EUR\"\n                            }\n                        },\n                        \"index\": 1,\n                        \"id\": \"r376468418\",\n                        \"key\": \"376468418\"\n                    }\n                ],\n                \"columns\": [\n                    {\n                        \"index\": 0,\n                        \"defaultFieldId\": \"header-payment-checkbox\",\n                        \"editableDefault\": true,\n                        \"id\": \"header-payment-checkbox\",\n                        \"sortable\": false,\n                        \"alignment\": \"LEFT\"\n                    },\n                    {\n                        \"index\": 1,\n                        \"defaultFieldId\": \"header-payment-id\",\n                        \"editableDefault\": false,\n                        \"id\": \"header-payment-id\",\n                        \"sortable\": true,\n                        \"alignment\": \"LEFT\"\n                    },\n                    {\n                        \"index\": 2,\n                        \"defaultFieldId\": \"header-payment-number\",\n                        \"editableDefault\": true,\n                        \"id\": \"header-payment-number\",\n                        \"sortable\": true,\n                        \"alignment\": \"LEFT\"\n                    },\n                    {\n                        \"index\": 3,\n                        \"defaultFieldId\": \"header-payment-date\",\n                        \"editableDefault\": false,\n                        \"id\": \"header-payment-date\",\n                        \"sortable\": true,\n                        \"alignment\": \"LEFT\"\n                    },\n                    {\n                        \"index\": 4,\n                        \"defaultFieldId\": \"header-payment-amount\",\n                        \"editableDefault\": false,\n                        \"id\": \"header-payment-amount\",\n                        \"sortable\": true,\n                        \"alignment\": \"RIGHT\"\n                    },\n                    {\n                        \"index\": 5,\n                        \"defaultFieldId\": \"header-payment-status\",\n                        \"editableDefault\": false,\n                        \"id\": \"header-payment-status\",\n                        \"sortable\": true,\n                        \"alignment\": \"LEFT\"\n                    }\n                ],\n                \"recordsPerDisplayPage\": 10,\n                \"nextPageStartIndex\": -1,\n                \"sortColumnId\": \"header-payment-date\",\n                \"startIndex\": 0,\n                \"nextPageKeyData\": {\n                },\n                \"sortOrder\": \"ASCENDING\",\n                \"loadMode\": \"CLIENT_SIDE\",\n                \"currencyFormats\": [\n                    {\n                        \"endpoint\": \"USER\",\n                        \"positiveSuffix\": \" GBP\",\n                        \"negativePrefix\": \"-\",\n                        \"decimals\": 2,\n                        \"locale\": \"en_GB\",\n                        \"currencyCode\": \"GBP\",\n                        \"negativeSuffix\": \" GBP\",\n                        \"positivePrefix\": \"\"\n                    },\n                    {\n                        \"endpoint\": \"USER\",\n                        \"positiveSuffix\": \" EUR\",\n                        \"negativePrefix\": \"-\",\n                        \"decimals\": 2,\n                        \"locale\": \"en_GB\",\n                        \"currencyCode\": \"EUR\",\n                        \"negativeSuffix\": \" EUR\",\n                        \"positivePrefix\": \"\"\n                    }\n                ],\n                \"id\": \"remittanceHeaderTable\",\n                \"fields\": {\n                    \"header-payment-status\": {\n                        \"id\": \"header-payment-status\",\n                        \"labelText\": \"Payment status\",\n                        \"labelTextIsLiteral\": true,\n                        \"instruction\": null,\n                        \"instructionIsLiteral\": false,\n                        \"contextualHelp\": null,\n                        \"contextualHelpIsLiteral\": false,\n                        \"visibilityCondition\": null,\n                        \"properties\": {\n                        },\n                        \"multiValued\": false,\n                        \"nullText\": null,\n                        \"type\": \"text\",\n                        \"placeholder\": null,\n                        \"placeholderIsLiteral\": false,\n                        \"formattedValue\": \"\",\n                        \"displayAsValid\": false,\n                        \"desanitizedValue\": \"\",\n                        \"itemType\": \"Field\",\n                        \"fieldValid\": true,\n                        \"errorMessageString\": null,\n                        \"errorReplacements\": null,\n                        \"fieldRequired\": false,\n                        \"value\": \"\",\n                        \"labelTextLiteral\": true,\n                        \"settings\": {\n                            \"requireEntry\": false,\n                            \"maxLength\": null,\n                            \"minLength\": null\n                        }\n                    },\n                    \"header-payment-checkbox\": {\"id\": \"header-payment-checkbox\",\n                    \"labelText\": \"\",\n                    \"labelTextIsLiteral\": true,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"bool\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"value\": null,\n                    \"labelTextLiteral\": true,\n                    \"settings\": {\n                        \"requireEntry\": false\n                    }\n                },\n                \"header-payment-number\": {\n                    \"id\": \"header-payment-number\",\n                    \"labelText\": \"Payment Number\",\n                    \"labelTextIsLiteral\": true,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"display\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"value\": null,\n                    \"labelTextLiteral\": true\n                },\n                \"header-payment-id\": {\n                    \"id\": \"header-payment-id\",\n                    \"labelText\": \"\",\n                    \"labelTextIsLiteral\": true,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"text\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"desanitizedValue\": \"\",\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"value\": \"\",\n                    \"labelTextLiteral\": true,\n                    \"settings\": {\n                        \"requireEntry\": false,\n                        \"maxLength\": null,\n                        \"minLength\": null\n                    }\n                },\n                \"header-payment-date\": {\n                    \"id\": \"header-payment-date\",\n                    \"labelText\": \"Payment Date\",\n                    \"labelTextIsLiteral\": true,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"date\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"endpoint\": \"USER\",\n                    \"value\": null,\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"labelTextLiteral\": true,\n                    \"settings\": {\n                        \"requireEntry\": false,\n                        \"requirePast\": false,\n                        \"requireFuture\": false,\n                        \"maxValue\": [\n                            2100,\n                            1,\n                            1\n                        ],\n                        \"minValue\": [\n                            1900,\n                            1,\n                            1\n                        ]\n                    },\n                    \"formatPattern\": \"d/m/yyyy\"\n                },\n                \"header-payment-amount\": {\n                    \"id\": \"header-payment-amount\",\n                    \"labelText\": \"Payment amount\",\n                    \"labelTextIsLiteral\": true,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"money\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"endpoint\": \"USER\",\n                    \"currency\": \"GBP\",\n                    \"value\": null,\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"labelTextLiteral\": true,\n                    \"locale\": {\n                        \"country\": \"GB\",\n                        \"language\": \"en\",\n                        \"groupingSeparator\": \",\",\n                        \"decimalSeparator\": \".\"\n                    },\n                    \"settings\": {\n                        \"requireEntry\": false,\n                        \"requireNegative\": false,\n                        \"requirePositive\": false,\n                        \"maxValue\": null,\n                        \"minValue\": null\n                    }\n                },\n                \"header-payment-amount-currency-GBP\": {\n                    \"id\": \"header-payment-amount-currency-GBP\",\n                    \"labelText\": null,\n                    \"labelTextIsLiteral\": false,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"money\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"endpoint\": \"USER\",\n                    \"currency\": \"GBP\",\n                    \"value\": null,\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"labelTextLiteral\": false,\n                    \"locale\": {\n                        \"country\": \"GB\",\n                        \"language\": \"en\",\n                        \"groupingSeparator\": \",\",\n                        \"decimalSeparator\": \".\"\n                    },\n                    \"settings\": {\n                        \"requireEntry\": false,\n                        \"requireNegative\": false,\n                        \"requirePositive\": false,\n                        \"maxValue\": null,\n                        \"minValue\": null\n                    }\n                },\n                \"header-payment-amount-currency-EUR\": {\n                    \"id\": \"header-payment-amount-currency-EUR\",\n                    \"labelText\": null,\n                    \"labelTextIsLiteral\": false,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"money\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"endpoint\": \"USER\",\n                    \"currency\": \"EUR\",\n                    \"value\": null,\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"labelTextLiteral\": false,\n                    \"locale\": {\n                        \"country\": \"GB\",\n                        \"language\": \"en\",\n                        \"groupingSeparator\": \",\",\n                        \"decimalSeparator\": \".\"\n                    },\n                    \"settings\": {\n                        \"requireEntry\": false,\n                        \"requireNegative\": false,\n                        \"requirePositive\": false,\n                        \"maxValue\": null,\n                        \"minValue\": null\n                    }\n                }\n            },\n            \"deletionAllowed\": false,\n            \"ajaxEndpoint\": null,\n            \"templateRecords\": [\n            ]\n        }</script>\n    <script>\n        P.when('A', 'melodic', 'melodic-adapters-TabelaDisplayAdapter').execute(function(A, melodic, displayAdapter) {\n            var dataJson = A.$('#remittanceHeaderTable-melodic-data').html();\n            var data = JSON.parse(dataJson);\n            melodic(data, displayAdapter);\n        });\n    </script>\n</div>\n</form></div></div><script>\n    P.when('vft-stringmaps').execute(function(StringMaps) {\n        var map = {};\n\n        map['vendor-remittance-invalid-date-range'] = 'Please use a valid date range.';\n\n        map['vendor-remittance-invalid-date-range-limit'] = 'Maximum date range is  days.';\n\n        map['vendor-remittance-invalid-payment-amount-range'] = 'Please use a valid payment amount range.';\n\n        map['vendor-remittance-selected-payments-count'] = ' Payments selected';\n\n        map['vendor-remittance-search-results-count'] = '- of  total payments';\n\n        map['vendor-remittance-account-vendor-codes-info'] = 'You are viewing information for the following vendor codes: . If you want to add more vendor codes, please contact your account manager.';\n\n        map['vendor-remittance-successful-status'] = 'Successful';\n\n        map['vendor-remittance-failed-status'] = 'Failed';\n\n        map['vendor-remittance-payment-failed-info'] = 'Some payments may have failed due to incorrect bank information. To update your banking information, go to Settings.';\n\n        map['vendor-remittance-payment-failure-modal-header'] = 'A payment to your Vendor code #  has failed';\n\n        map['vendor-remittance-payment-failure-modal-text'] = 'One of the payments from your Vendor code no.  has failed. One possible reason could be that the bank account information we have on file is incorrect. Please take a moment to review and update your bank information.<br><br>Your Bank admin can update the payment details by going to:<br><strong>Settings > Bank Information.</strong><br><br>If you encounter any issues, feel free to contact us by going to:<br><strong>Help > Contact Us.</strong><br><br><i>If the bank information is updated or action is taken please ignore the pop-up</i>';\n\n        map['vendor-remittance-payment-failure-modal-update-button-text'] = 'Update Bank Information';\n\n        map['vendor-remittance-payment-failure-modal-dismiss-button-text'] = 'Dismiss';\n\n        StringMaps.registerMap('remittance-home-page-wsids', map);\n    });\n</script>\n</div>\n<div id=\"sc-footer-container\">\n    <style>\n        #a-page {\n            display: flex;\n            flex-direction: column;\n            height: 100%;\n        }\n\n        #sc-content-container {\n            flex: 1 0 auto;\n            /* Prevent Chrome, Opera, and Safari from letting these items shrink to smaller than their content's default minimum size. */\n        }\n\n        #sc-footer-container {\n            flex-shrink: 0;\n            /* Prevent Chrome, Opera, and Safari from letting these items shrink to smaller than their content's default minimum size. */\n        }\n\n        #vc-footer-container {\n            margin-top: 100px !important;\n            /*Creates spacing between last item in page and footer*/\n        }\n    </style>\n    <div id=\"vc-footer-container\"></div>\n</div>\n<div id='be' style=\"display:none;visibility:hidden;\">\n    <form name='ue_backdetect' action=\"get\">\n        <input type=\"hidden\" name='ue_back' value='1'/>\n    </form>\n    <script type=\"text/javascript\">\n        window.ue_ibe = (window.ue_ibe || 0) + 1;\n        if (window.ue_ibe === 1) {\n            (function(e, c) {\n                function h(b, a) {\n                    f.push([b, a])\n                }\n                function g(b, a) {\n                    if (b) {\n                        var c = e.head || e.getElementsByTagName(\"head\")[0] || e.documentElement\n                          , d = e.createElement(\"script\");\n                        d.async = \"async\";\n                        d.src = b;\n                        d.setAttribute(\"crossorigin\", \"anonymous\");\n                        a && a.onerror && (d.onerror = a.onerror);\n                        a && a.onload && (d.onload = a.onload);\n                        c.insertBefore(d, c.firstChild)\n                    }\n                }\n                function k() {\n                    ue.uels = g;\n                    for (var b = 0; b < f.length; b++) {\n                        var a = f[b];\n                        g(a[0], a[1])\n                    }\n                    ue.deffered = 1\n                }\n                var f = [];\n                c.ue && (ue.uels = h,\n                c.ue.attach && c.ue.attach(\"load\", k))\n            }\n            )(document, window);\n\n            if (window.ue && window.ue.uels) {\n                var cel_widgets = [{\n                    \"c\": \"celwidget\"\n                }, {\n                    \"s\": \"#nav-swmslot > div\",\n                    \"id_gen\": function(elem, index) {\n                        return 'nav_sitewide_msg';\n                    }\n                }];\n\n                ue.uels(\"https://images-eu.ssl-images-amazon.com/images/I/216YVwoRFDL.js\");\n            }\n            var ue_mbl = ue_csm.ue.exec(function(h, a) {\n                function s(c) {\n                    b = c || {};\n                    a.AMZNPerformance = b;\n                    b.transition = b.transition || {};\n                    b.timing = b.timing || {};\n                    if (a.csa) {\n                        var d;\n                        b.timing.transitionStart && (d = b.timing.transitionStart);\n                        b.timing.processStart && (d = b.timing.processStart);\n                        d && (csa(\"PageTiming\")(\"mark\", \"nativeTransitionStart\", d),\n                        csa(\"PageTiming\")(\"mark\", \"transitionStart\", d))\n                    }\n                    h.ue.exec(t, \"csm-android-check\")() && b.tags instanceof Array && (c = -1 != b.tags.indexOf(\"usesAppStartTime\") || b.transition.type ? !b.transition.type && -1 < b.tags.indexOf(\"usesAppStartTime\") ? \"warm-start\" : void 0 : \"view-transition\",\n                    c && (b.transition.type = c));\n                    n = null;\n                    \"reload\" === e._nt && h.ue_orct || \"intrapage-transition\" === e._nt ? u(b) : \"undefined\" === typeof e._nt && f && f.timing && f.timing.navigationStart && a.history && \"function\" === typeof a.History && \"object\" === typeof a.history && a.history.length && 1 != a.history.length && (b.timing.transitionStart = f.timing.navigationStart);\n                    p && e.ssw(q, \"\" + (b.timing.transitionStart || n || \"\"));\n                    c = b.transition;\n                    d = e._nt ? e._nt : void 0;\n                    c.subType = d;\n                    a.ue && a.ue.tag && a.ue.tag(\"has-AMZNPerformance\");\n                    e.isl && a.uex && a.uex(\"at\", \"csm-timing\");\n                    v()\n                }\n                function w(c) {\n                    a.ue && a.ue.count && a.ue.count(\"csm-cordova-plugin-failed\", 1)\n                }\n                function t() {\n                    return a.cordova && a.cordova.platformId && \"android\" == a.cordova.platformId\n                }\n                function u() {\n                    if (p) {\n                        var c = e.ssw(q)\n                          , a = function() {}\n                          , x = e.count || a\n                          , a = e.tag || a\n                          , k = b.timing.transitionStart\n                          , g = c && !c.e && c.val;\n                        n = c = g ? +c.val : null;\n                        k && g && k > c ? (x(\"csm.jumpStart.mtsDiff\", k - c || 0),\n                        a(\"csm-rld-mts-gt\")) : k && g ? a(\"csm-rld-mts-leq\") : g ? k || a(\"csm-rld-mts-no-new\") : a(\"csm-rld-mts-no-old\")\n                    }\n                    f && f.timing && f.timing.navigationStart ? b.timing.transitionStart = f.timing.navigationStart : delete b.timing.transitionStart\n                }\n                function v() {\n                    try {\n                        a.P.register(\"AMZNPerformance\", function() {\n                            return b\n                        })\n                    } catch (c) {}\n                }\n                function r() {\n                    if (!b)\n                        return \"\";\n                    ue_mbl.cnt = null;\n                    var c = b.timing\n                      , d = b.transition\n                      , d = [\"mts\", l(c.transitionStart), \"mps\", l(c.processStart), \"mtt\", d.type, \"mtst\", d.subType, \"mtlt\", d.launchType];\n                    a.ue && a.ue.tag && (c.fr_ovr && a.ue.tag(\"fr_ovr\"),\n                    c.fcp_ovr && a.ue.tag(\"fcp_ovr\"),\n                    d.push(\"fr_ovr\", l(c.fr_ovr), \"fcp_ovr\", l(c.fcp_ovr)));\n                    for (var c = \"\", e = 0; e < d.length; e += 2) {\n                        var f = d[e]\n                          , g = d[e + 1];\n                        \"undefined\" !== typeof g && (c += \"&\" + f + \"=\" + g)\n                    }\n                    return c\n                }\n                function l(a) {\n                    if (\"undefined\" !== typeof a && \"undefined\" !== typeof m)\n                        return a - m\n                }\n                function y(a, d) {\n                    b && (m = d,\n                    b.timing.transitionStart = a,\n                    b.transition.type = \"view-transition\",\n                    b.transition.subType = \"ajax-transition\",\n                    b.transition.launchType = \"normal\",\n                    ue_mbl.cnt = r)\n                }\n                var e = h.ue || {}, m = h.ue_t0, q = \"csm-last-mts\", p = 1 === h.ue_sswmts, n, f = a.performance, b;\n                if (a.P && a.P.when && a.P.register)\n                    return 1 === a.ue_fnt && (m = a.aPageStart || h.ue_t0),\n                    a.P.when(\"CSMPlugin\").execute(function(a) {\n                        a.buildAMZNPerformance && a.buildAMZNPerformance({\n                            successCallback: s,\n                            failCallback: w\n                        })\n                    }),\n                    {\n                        cnt: r,\n                        ajax: y\n                    }\n            }, \"mobile-timing\")(ue_csm, ue_csm.window);\n\n            (function(d) {\n                d._uess = function() {\n                    var a = \"\";\n                    screen && screen.width && screen.height && (a += \"&sw=\" + screen.width + \"&sh=\" + screen.height);\n                    var b = function(a) {\n                        var b = document.documentElement[\"client\" + a];\n                        return \"CSS1Compat\" === document.compatMode && b || document.body[\"client\" + a] || b\n                    }\n                      , c = b(\"Width\")\n                      , b = b(\"Height\");\n                    c && b && (a += \"&vw=\" + c + \"&vh=\" + b);\n                    return a\n                }\n            }\n            )(ue_csm);\n\n            (function(a) {\n                function d(a) {\n                    c && c(\"log\", a)\n                }\n                var b = document.ue_backdetect\n                  , c = a.csa && a.csa(\"Errors\", {\n                    producerId: \"csa\",\n                    logOptions: {\n                        ent: \"all\"\n                    }\n                });\n                a.ue_err.buffer && c && (a.ue_err.buffer.forEach(d),\n                a.ue_err.buffer.push = d);\n                b && b.ue_back && a.ue && (a.ue.bfini = b.ue_back.value);\n                a.uet && a.uet(\"be\");\n                a.onLdEnd && (window.addEventListener ? window.addEventListener(\"load\", a.onLdEnd, !1) : window.attachEvent && window.attachEvent(\"onload\", a.onLdEnd));\n                a.ueh && a.ueh(0, window, \"load\", a.onLd, 1);\n                a.ue && a.ue.tag && (a.ue_furl ? (b = a.ue_furl.replace(/./g, \"-\"),\n                a.ue.tag(b)) : a.ue.tag(\"nofls\"))\n            }\n            )(ue_csm);\n\n            (function(g, h) {\n                function d(a, d) {\n                    var b = {};\n                    if (!e || !f)\n                        try {\n                            var c = h.sessionStorage;\n                            c ? a && (\"undefined\" !== typeof d ? c.setItem(a, d) : b.val = c.getItem(a)) : f = 1\n                        } catch (g) {\n                            e = 1\n                        }\n                    e && (b.e = 1);\n                    return b\n                }\n                var b = g.ue || {}, a = \"\", f, e, c, a = d(\"csmtid\");\n                f ? a = \"NA\" : a.e ? a = \"ET\" : (a = a.val,\n                a || (a = b.oid || \"NI\",\n                d(\"csmtid\", a)),\n                c = d(b.oid),\n                c.e || (c.val = c.val || 0,\n                d(b.oid, c.val + 1)),\n                b.ssw = d);\n                b.tabid = a\n            }\n            )(ue_csm, ue_csm.window);\n\n            (function(a) {\n                var e = {\n                    rc: 1,\n                    hob: 1,\n                    hoe: 1,\n                    ntd: 1,\n                    rd_: 1,\n                    _rd: 1\n                };\n                \"function\" === typeof window.addEventListener && window.addEventListener(\"pageshow\", function(b) {\n                    if (b && b.persisted && (b = +new Date,\n                    b = {\n                        clickTime: b - 1,\n                        pageVisible: b\n                    },\n                    \"object\" === typeof b && \"object\" === typeof a.ue.markers && \"object\" === typeof a.ue && \"function\" === typeof a.uex)) {\n                        if (\"function\" === typeof a.uet) {\n                            for (var c in a.ue.markers)\n                                !a.ue.markers.hasOwnProperty(c) || c in e || a.uet(c, void 0, void 0, b.pageVisible);\n                            a.uet(\"tc\", void 0, void 0, b.clickTime);\n                            a.uet(\"ty\", void 0, void 0, b.clickTime + 2)\n                        }\n                        (c = document.ue_backdetect) && c.ue_back && (a.ue.bfini = +c.ue_back.value + 1);\n                        a.ue.isBFonMshop = !0;\n                        a.ue.isBFCache = !0;\n                        a.ue.t0 = b.clickTime;\n                        a.ue.viz = [\"visible:0\"];\n                        \"function\" === typeof a.ue.tag && (a.ue.tag(\"cacheSourceMemory\"),\n                        a.ue.tag(\"history-navigation-page-cache\"));\n                        c = ue_csm.csa && ue_csm.csa(\"SPA\");\n                        var d = ue_csm.csa && ue_csm.csa(\"PageTiming\");\n                        c && d && (c(\"newPage\", {\n                            transitionType: \"history-navigation-page-cache\"\n                        }, {\n                            keepPageAttributes: !0\n                        }),\n                        d(\"mark\", \"transitionStart\", b.clickTime));\n                        \"function\" === typeof a.uex && a.uex(\"ld\", void 0, void 0, a.ue.t.ld);\n                        delete a.ue.isBFonMshop;\n                        delete a.ue.isBFCache\n                    }\n                })\n            }\n            )(ue_csm);\n\n            ue_csm.ue.exec(function(e, f) {\n                var a = e.ue || {}, b = a._wlo, d;\n                if (a.ssw) {\n                    d = a.ssw(\"CSM_previousURL\").val;\n                    var c = f.location\n                      , b = b ? b : c && c.href ? c.href.split(\"#\")[0] : void 0;\n                    c = (b || \"\") === a.ssw(\"CSM_previousURL\").val;\n                    !c && b && a.ssw(\"CSM_previousURL\", b);\n                    d = c ? \"reload\" : d ? \"intrapage-transition\" : \"first-view\"\n                } else\n                    d = \"unknown\";\n                a._nt = d\n            }, \"NavTypeModule\")(ue_csm, window);\n            ue_csm.ue.exec(function(c, a) {\n                function g(a) {\n                    a.run(function(e) {\n                        d.tag(\"csm-feature-\" + a.name + \":\" + e);\n                        d.isl && c.uex(\"at\")\n                    })\n                }\n                if (a.addEventListener)\n                    for (var d = c.ue || {}, f = [{\n                        name: \"touch-enabled\",\n                        run: function(b) {\n                            var e = function() {\n                                a.removeEventListener(\"touchstart\", c, !0);\n                                a.removeEventListener(\"mousemove\", d, !0)\n                            }\n                              , c = function() {\n                                b(\"true\");\n                                e()\n                            }\n                              , d = function() {\n                                b(\"false\");\n                                e()\n                            };\n                            a.addEventListener(\"touchstart\", c, !0);\n                            a.addEventListener(\"mousemove\", d, !0)\n                        }\n                    }], b = 0; b < f.length; b++)\n                        g(f[b])\n            }, \"csm-features\")(ue_csm, window);\n\n            (function(a, e) {\n                function d(a) {\n                    b && b(\"recordCounter\", a.c, a.v)\n                }\n                var c = e.images\n                  , b = a.csa && a.csa(\"Metrics\", {\n                    producerId: \"csa\"\n                });\n                c && c.length && a.ue.count(\"totalImages\", c.length);\n                a.ue.cv.buffer && b && (a.ue.cv.buffer.forEach(d),\n                a.ue.cv.buffer.push = d)\n            }\n            )(ue_csm, document);\n            (function(b) {\n                function c() {\n                    var d = [];\n                    a.log && a.log.isStub && a.log.replay(function(a) {\n                        e(d, a)\n                    });\n                    a.clog && a.clog.isStub && a.clog.replay(function(a) {\n                        e(d, a)\n                    });\n                    d.length && (a._flhs += 1,\n                    n(d),\n                    p(d))\n                }\n                function g() {\n                    a.log && a.log.isStub && (a.onflush && a.onflush.replay && a.onflush.replay(function(a) {\n                        a[0]()\n                    }),\n                    a.onunload && a.onunload.replay && a.onunload.replay(function(a) {\n                        a[0]()\n                    }),\n                    c())\n                }\n                function e(d, b) {\n                    var c = b[1]\n                      , f = b[0]\n                      , e = {};\n                    a._lpn[c] = (a._lpn[c] || 0) + 1;\n                    e[c] = f;\n                    d.push(e)\n                }\n                function n(b) {\n                    q && (a._lpn.csm = (a._lpn.csm || 0) + 1,\n                    b.push({\n                        csm: {\n                            k: \"chk\",\n                            f: a._flhs,\n                            l: a._lpn,\n                            s: \"inln\"\n                        }\n                    }))\n                }\n                function p(a) {\n                    if (h)\n                        a = k(a),\n                        b.navigator.sendBeacon(l, a);\n                    else {\n                        a = k(a);\n                        var c = new b[f];\n                        c.open(\"POST\", l, !0);\n                        c.setRequestHeader && c.setRequestHeader(\"Content-type\", \"text/plain\");\n                        c.send(a)\n                    }\n                }\n                function k(a) {\n                    return JSON.stringify({\n                        rid: b.ue_id,\n                        sid: b.ue_sid,\n                        mid: b.ue_mid,\n                        mkt: b.ue_mkt,\n                        sn: b.ue_sn,\n                        reqs: a\n                    })\n                }\n                var f = \"XMLHttpRequest\"\n                  , q = 1 === b.ue_ddq\n                  , a = b.ue\n                  , r = b[f] && \"withCredentials\"in new b[f]\n                  , h = b.navigator && b.navigator.sendBeacon\n                  , l = \"//\" + b.ue_furl + \"/1/batch/1/OE/\"\n                  , m = b.ue_fci_ft || 5E3;\n                a && (r || h) && (a._flhs = a._flhs || 0,\n                a._lpn = a._lpn || {},\n                a.attach && (a.attach(\"beforeunload\", a.exec(g, \"fcli-bfu\")),\n                a.attach(\"pagehide\", a.exec(g, \"fcli-ph\"))),\n                m && b.setTimeout(a.exec(c, \"fcli-t\"), m),\n                a._ffci = a.exec(c))\n            }\n            )(window);\n\n            (function(k, c) {\n                function l(a, b) {\n                    return a.filter(function(a) {\n                        return a.initiatorType == b\n                    })\n                }\n                function f(a, c) {\n                    if (b.t[a]) {\n                        var g = b.t[a] - b._t0\n                          , e = c.filter(function(a) {\n                            return 0 !== a.responseEnd && m(a) < g\n                        })\n                          , f = l(e, \"script\")\n                          , h = l(e, \"link\")\n                          , k = l(e, \"img\")\n                          , n = e.map(function(a) {\n                            return a.name.split(\"/\")[2]\n                        }).filter(function(a, b, c) {\n                            return a && c.lastIndexOf(a) == b\n                        })\n                          , q = e.filter(function(a) {\n                            return a.duration < p\n                        })\n                          , s = g - Math.max.apply(null, e.map(m)) < r | 0;\n                        \"af\" == a && (b._afjs = f.length);\n                        return a + \":\" + [e[d], f[d], h[d], k[d], n[d], q[d], s].join(\"-\")\n                    }\n                }\n                function m(a) {\n                    return a.responseEnd - (b._t0 - c.timing.navigationStart)\n                }\n                function n() {\n                    var a = c[h](\"resource\")\n                      , d = f(\"cf\", a)\n                      , g = f(\"af\", a)\n                      , a = f(\"ld\", a);\n                    delete b._rt;\n                    b._ld = b.t.ld - b._t0;\n                    b._art && b._art();\n                    return [d, g, a].join(\"_\")\n                }\n                var p = 20\n                  , r = 50\n                  , d = \"length\"\n                  , b = k.ue\n                  , h = \"getEntriesByType\";\n                b._rre = m;\n                b._rt = c && c.timing && c[h] && n\n            }\n            )(ue_csm, window.performance);\n\n            (function(c, d) {\n                var b = c.ue\n                  , a = d.navigator;\n                b && b.tag && a && (a = a.connection || a.mozConnection || a.webkitConnection) && a.type && b.tag(\"netInfo:\" + a.type)\n            }\n            )(ue_csm, window);\n\n            (function(c, d) {\n                function h(a, b) {\n                    for (var c = [], d = 0; d < a.length; d++) {\n                        var e = a[d]\n                          , f = b.encode(e);\n                        if (e[k]) {\n                            var g = b.metaSep\n                              , e = e[k]\n                              , l = b.metaPairSep\n                              , h = []\n                              , m = void 0;\n                            for (m in e)\n                                e.hasOwnProperty(m) && h.push(m + \"=\" + e[m]);\n                            e = h.join(l);\n                            f += g + e\n                        }\n                        c.push(f)\n                    }\n                    return c.join(b.resourceSep)\n                }\n                function s(a) {\n                    var b = a[k] = a[k] || {};\n                    b[t] || (b[t] = c.ue_mid);\n                    b[u] || (b[u] = c.ue_sid);\n                    b[f] || (b[f] = c.ue_id);\n                    b.csm = 1;\n                    a = \"//\" + c.ue_furl + \"/1/\" + a[v] + \"/1/OP/\" + a[w] + \"/\" + a[x] + \"/\" + h([a], y);\n                    if (n)\n                        try {\n                            n.call(d[p], a)\n                        } catch (g) {\n                            c.ue.sbf = 1,\n                            (new Image).src = a\n                        }\n                    else\n                        (new Image).src = a\n                }\n                function q() {\n                    g && g.isStub && g.replay(function(a, b, c) {\n                        a = a[0];\n                        b = a[k] = a[k] || {};\n                        b[f] = b[f] || c;\n                        s(a)\n                    });\n                    l.impression = s;\n                    g = null\n                }\n                if (!(1 < c.ueinit)) {\n                    var k = \"metadata\"\n                      , x = \"impressionType\"\n                      , v = \"foresterChannel\"\n                      , w = \"programGroup\"\n                      , t = \"marketplaceId\"\n                      , u = \"session\"\n                      , f = \"requestId\"\n                      , p = \"navigator\"\n                      , l = c.ue || {}\n                      , n = d[p] && d[p].sendBeacon\n                      , r = function(a, b, c, d) {\n                        return {\n                            encode: d,\n                            resourceSep: a,\n                            metaSep: b,\n                            metaPairSep: c\n                        }\n                    }\n                      , y = r(\"\", \"?\", \"&\", function(a) {\n                        return h(a.impressionData, z)\n                    })\n                      , z = r(\"/\", \":\", \",\", function(a) {\n                        return a.featureName + \":\" + h(a.resources, A)\n                    })\n                      , A = r(\",\", \"@\", \"|\", function(a) {\n                        return a.id\n                    })\n                      , g = l.impression;\n                    n ? q() : (l.attach(\"load\", q),\n                    l.attach(\"beforeunload\", q));\n                    try {\n                        d.P && d.P.register && d.P.register(\"impression-client\", function() {})\n                    } catch (B) {\n                        c.ueLogError(B, {\n                            logLevel: \"WARN\"\n                        })\n                    }\n                }\n            }\n            )(ue_csm, window);\n\n            var ue_pty = \"VendorRemittanceLibertyApp\";\n\n            var ue_spty = \"RemittanceRegionalVendorView\";\n\n            var ue_adb = 4;\n            var ue_adb_rtla = 1;\n            ue_csm.ue.exec(function(y, a) {\n                function t() {\n                    if (d && f) {\n                        var a;\n                        a: {\n                            try {\n                                a = d.getItem(g);\n                                break a\n                            } catch (c) {}\n                            a = void 0\n                        }\n                        if (a)\n                            return b = a,\n                            !0\n                    }\n                    return !1\n                }\n                function u() {\n                    if (a.fetch)\n                        fetch(m).then(function(a) {\n                            if (!a.ok)\n                                throw Error(a.statusText);\n                            return a.text ? a.text() : null\n                        }).then(function(b) {\n                            b ? (-1 < b.indexOf(\"window.ue_adb_chk = 1\") && (a.ue_adb_chk = 1),\n                            n()) : h()\n                        })[\"catch\"](h);\n                    else\n                        e.uels(m, {\n                            onerror: h,\n                            onload: n\n                        })\n                }\n                function h() {\n                    b = k;\n                    l();\n                    if (f)\n                        try {\n                            d.setItem(g, b)\n                        } catch (a) {}\n                }\n                function n() {\n                    b = 1 === a.ue_adb_chk ? p : k;\n                    l();\n                    if (f)\n                        try {\n                            d.setItem(g, b)\n                        } catch (c) {}\n                }\n                function q() {\n                    a.ue_adb_rtla && c && 0 < c.ec && !1 === r && (c.elh = null,\n                    ueLogError({\n                        m: \"Hit Info\",\n                        fromOnError: 1\n                    }, {\n                        logLevel: \"INFO\",\n                        adb: b\n                    }),\n                    r = !0)\n                }\n                function l() {\n                    e.tag(b);\n                    e.isl && a.uex && uex(\"at\", b);\n                    s && s.updateCsmHit(\"adb\", b);\n                    c && 0 < c.ec ? q() : a.ue_adb_rtla && c && (c.elh = q)\n                }\n                function v() {\n                    return b\n                }\n                if (a.ue_adb) {\n                    a.ue_fadb = a.ue_fadb || 10;\n                    var e = a.ue, k = \"adblk_yes\", p = \"adblk_no\", m = \"https://m.media-amazon.com/images/G/01/csm/showads.v2.js?wppaszoneid=-ad-sidebar.\", b = \"adblk_unk\", d;\n                    a: {\n                        try {\n                            d = a.localStorage;\n                            break a\n                        } catch (z) {}\n                        d = void 0\n                    }\n                    var g = \"csm:adb\"\n                      , c = a.ue_err\n                      , s = e.cookie\n                      , f = void 0 !== a.localStorage\n                      , w = Math.random() > 1 - 1 / a.ue_fadb\n                      , r = !1\n                      , x = t();\n                    w || !x ? u() : l();\n                    a.ue_isAdb = v;\n                    a.ue_isAdb.unk = \"adblk_unk\";\n                    a.ue_isAdb.no = p;\n                    a.ue_isAdb.yes = k\n                }\n            }, \"adb\")(document, window);\n\n            (function(c, l, m) {\n                function h(a) {\n                    if (a)\n                        try {\n                            if (a.id)\n                                return \"//*[@id='\" + a.id + \"']\";\n                            var b, d = 1, e;\n                            for (e = a.previousSibling; e; e = e.previousSibling)\n                                e.nodeName === a.nodeName && (d += 1);\n                            b = d;\n                            var c = a.nodeName;\n                            1 !== b && (c += \"[\" + b + \"]\");\n                            a.parentNode && (c = h(a.parentNode) + \"/\" + c);\n                            return c\n                        } catch (f) {\n                            return \"DETACHED\"\n                        }\n                }\n                function f(a) {\n                    if (a && a.getAttribute)\n                        return a.getAttribute(k) ? a.getAttribute(k) : f(a.parentElement)\n                }\n                var k = \"data-cel-widget\"\n                  , g = !1\n                  , d = [];\n                (c.ue || {}).isBF = function() {\n                    try {\n                        var a = JSON.parse(localStorage[\"csm-bf\"] || \"[]\")\n                          , b = 0 <= a.indexOf(c.ue_id);\n                        a.unshift(c.ue_id);\n                        a = a.slice(0, 20);\n                        localStorage[\"csm-bf\"] = JSON.stringify(a);\n                        return b\n                    } catch (d) {\n                        return !1\n                    }\n                }();\n                c.ue_utils = {\n                    getXPath: h,\n                    getFirstAscendingWidget: function(a, b) {\n                        c.ue_cel && c.ue_fem ? !0 === g ? b(f(a)) : d.push({\n                            element: a,\n                            callback: b\n                        }) : b()\n                    },\n                    notifyWidgetsLabeled: function() {\n                        if (!1 === g) {\n                            g = !0;\n                            for (var a = f, b = 0; b < d.length; b++)\n                                if (d[b].hasOwnProperty(\"callback\") && d[b].hasOwnProperty(\"element\")) {\n                                    var c = d[b].callback\n                                      , e = d[b].element;\n                                    \"function\" === typeof c && \"function\" === typeof a && c(a(e))\n                                }\n                            d = null\n                        }\n                    },\n                    extractStringValue: function(a) {\n                        if (\"string\" === typeof a)\n                            return a\n                    }\n                }\n            }\n            )(ue_csm, window, document);\n\n            (function(a) {\n                a.ue_cel || (a.ue_cel = function() {\n                    function m(a, r) {\n                        r ? r.r = u : r = {\n                            r: u,\n                            c: 1\n                        };\n                        D || (!ue_csm.ue_sclog && r.clog && b.clog ? b.clog(a, r.ns || s, r) : r.glog && b.glog ? b.glog(a, r.ns || s, r) : b.log(a, r.ns || s, r))\n                    }\n                    function n(a, b) {\n                        \"function\" === typeof p && p(\"log\", {\n                            schemaId: t + \".RdCSI.1\",\n                            eventType: a,\n                            clientData: b\n                        }, {\n                            ent: {\n                                page: [\"requestId\"]\n                            }\n                        })\n                    }\n                    function c() {\n                        var a = q.length;\n                        if (0 < a) {\n                            for (var r = [], c = 0; c < a; c++) {\n                                var d = q[c].api;\n                                d.ready() ? (d.on({\n                                    ts: b.d,\n                                    ns: s\n                                }),\n                                g.push(q[c]),\n                                m({\n                                    k: \"mso\",\n                                    n: q[c].name,\n                                    t: b.d()\n                                })) : r.push(q[c])\n                            }\n                            q = r\n                        }\n                    }\n                    function f() {\n                        if (!f.executed) {\n                            for (var a = 0; a < g.length; a++)\n                                g[a].api.off && g[a].api.off({\n                                    ts: b.d,\n                                    ns: s\n                                });\n                            B();\n                            m({\n                                k: \"eod\",\n                                t0: b.t0,\n                                t: b.d()\n                            }, {\n                                c: 1,\n                                il: 1\n                            });\n                            f.executed = 1;\n                            for (a = 0; a < g.length; a++)\n                                q.push(g[a]);\n                            g = [];\n                            d(v);\n                            d(A)\n                        }\n                    }\n                    function B(a) {\n                        m({\n                            k: \"hrt\",\n                            t: b.d()\n                        }, {\n                            c: 1,\n                            il: 1,\n                            n: a\n                        });\n                        y = Math.min(w, e * y);\n                        z()\n                    }\n                    function z() {\n                        d(A);\n                        A = k(function() {\n                            B(!0)\n                        }, y)\n                    }\n                    function x() {\n                        f.executed || B()\n                    }\n                    var l = a.window, k = l.setTimeout, d = l.clearTimeout, e = 1.5, w = l.ue_cel_max_hrt || 3E4, t = \"robotdetection\", q = [], g = [], s = a.ue_cel_ns || \"cel\", v, A, b = a.ue, F = a.uet, C = a.uex, u = b.rid, D = a.ue_dsbl_cel, h = l.csa, p, y = l.ue_cel_hrt_int || 3E3, E = l.requestAnimationFrame || function(a) {\n                        a()\n                    }\n                    ;\n                    h && (p = h(\"Events\", {\n                        producerId: t\n                    }));\n                    if (b.isBF)\n                        m({\n                            k: \"bft\",\n                            t: b.d()\n                        });\n                    else {\n                        \"function\" == typeof F && F(\"bb\", \"csmCELLSframework\", {\n                            wb: 1\n                        });\n                        k(c, 0);\n                        b.onunload(f);\n                        if (b.onflush)\n                            b.onflush(x);\n                        v = k(f, 6E5);\n                        z();\n                        \"function\" == typeof C && C(\"ld\", \"csmCELLSframework\", {\n                            wb: 1\n                        });\n                        return {\n                            registerModule: function(a, r) {\n                                q.push({\n                                    name: a,\n                                    api: r\n                                });\n                                m({\n                                    k: \"mrg\",\n                                    n: a,\n                                    t: b.d()\n                                });\n                                c()\n                            },\n                            reset: function(a) {\n                                m({\n                                    k: \"rst\",\n                                    t0: b.t0,\n                                    t: b.d()\n                                });\n                                q = q.concat(g);\n                                g = [];\n                                for (var r = q.length, e = 0; e < r; e++)\n                                    q[e].api.off(),\n                                    q[e].api.reset();\n                                u = a || b.rid;\n                                c();\n                                d(v);\n                                v = k(f, 6E5);\n                                f.executed = 0\n                            },\n                            timeout: function(a, b) {\n                                return k(function() {\n                                    E(function() {\n                                        f.executed || a()\n                                    })\n                                }, b)\n                            },\n                            log: m,\n                            csaEventLog: n,\n                            off: f\n                        }\n                    }\n                }())\n            }\n            )(ue_csm);\n            (function(a) {\n                a.ue_pdm || !a.ue_cel || a.ue.isBF || (a.ue_pdm = function() {\n                    function m() {\n                        try {\n                            var b = d.screen;\n                            if (b) {\n                                var c = {\n                                    w: b.width,\n                                    aw: b.availWidth,\n                                    h: b.height,\n                                    ah: b.availHeight,\n                                    cd: b.colorDepth,\n                                    pd: b.pixelDepth\n                                };\n                                g && g.w === c.w && g.h === c.h && g.aw === c.aw && g.ah === c.ah && g.pd === c.pd && g.cd === c.cd || (g = c,\n                                g.t = t(),\n                                g.k = \"sci\",\n                                F(g),\n                                D && h(\"sci\", {\n                                    h: (g.h || \"0\") + \"\"\n                                }))\n                            }\n                            var k = e.body || {}\n                              , f = e.documentElement || {}\n                              , n = {\n                                w: Math.max(k.scrollWidth || 0, k.offsetWidth || 0, f.clientWidth || 0, f.scrollWidth || 0, f.offsetWidth || 0),\n                                h: Math.max(k.scrollHeight || 0, k.offsetHeight || 0, f.clientHeight || 0, f.scrollHeight || 0, f.offsetHeight || 0)\n                            };\n                            s && s.w === n.w && s.h === n.h || (s = n,\n                            s.t = t(),\n                            s.k = \"doi\",\n                            F(s));\n                            w = a.ue_cel.timeout(m, q);\n                            A += 1\n                        } catch (p) {\n                            d.ueLogError && ueLogError(p, {\n                                attribution: \"csm-cel-page-module\",\n                                logLevel: \"WARN\"\n                            })\n                        }\n                    }\n                    function n() {\n                        x(\"ebl\", \"default\", !1)\n                    }\n                    function c() {\n                        x(\"efo\", \"default\", !0)\n                    }\n                    function f() {\n                        x(\"ebl\", \"app\", !1)\n                    }\n                    function B() {\n                        x(\"efo\", \"app\", !0)\n                    }\n                    function z() {\n                        d.setTimeout(function() {\n                            e[E] ? x(\"ebl\", \"pageviz\", !1) : x(\"efo\", \"pageviz\", !0)\n                        }, 0)\n                    }\n                    function x(a, b, c) {\n                        v !== c && (F({\n                            k: a,\n                            t: t(),\n                            s: b\n                        }, {\n                            ff: !0 === c ? 0 : 1\n                        }),\n                        D && h(a, {\n                            t: (t() || \"0\") + \"\",\n                            s: b\n                        }));\n                        v = c\n                    }\n                    function l() {\n                        b.attach && (p && b.attach(y, z, e),\n                        G && P.when(\"mash\").execute(function(a) {\n                            a && a.addEventListener && (a.addEventListener(\"appPause\", f),\n                            a.addEventListener(\"appResume\", B))\n                        }),\n                        b.attach(\"blur\", n, d),\n                        b.attach(\"focus\", c, d))\n                    }\n                    function k() {\n                        b.detach && (p && b.detach(y, z, e),\n                        G && P.when(\"mash\").execute(function(a) {\n                            a && a.removeEventListener && (a.removeEventListener(\"appPause\", f),\n                            a.removeEventListener(\"appResume\", B))\n                        }),\n                        b.detach(\"blur\", n, d),\n                        b.detach(\"focus\", c, d))\n                    }\n                    var d = a.window, e = a.document, w, t, q, g, s, v = null, A = 0, b = a.ue, F = a.ue_cel.log, C = a.uet, u = a.uex, D = d.csa, h = a.ue_cel.csaEventLog, p = !!b.pageViz, y = p && b.pageViz.event, E = p && b.pageViz.propHid, G = d.P && d.P.when;\n                    \"function\" == typeof C && C(\"bb\", \"csmCELLSpdm\", {\n                        wb: 1\n                    });\n                    return {\n                        on: function(a) {\n                            q = a.timespan || 500;\n                            t = a.ts;\n                            l();\n                            a = d.location;\n                            F({\n                                k: \"pmd\",\n                                o: a.origin,\n                                p: a.pathname,\n                                t: t()\n                            });\n                            m();\n                            \"function\" == typeof u && u(\"ld\", \"csmCELLSpdm\", {\n                                wb: 1\n                            })\n                        },\n                        off: function(a) {\n                            clearTimeout(w);\n                            k();\n                            b.count && b.count(\"cel.PDM.TotalExecutions\", A)\n                        },\n                        ready: function() {\n                            return e.body && a.ue_cel && a.ue_cel.log\n                        },\n                        reset: function() {\n                            g = s = null\n                        }\n                    }\n                }(),\n                a.ue_cel && a.ue_cel.registerModule(\"page module\", a.ue_pdm))\n            }\n            )(ue_csm);\n            (function(a) {\n                a.ue_vpm || !a.ue_cel || a.ue.isBF || (a.ue_vpm = function() {\n                    function m() {\n                        var a = z()\n                          , b = {\n                            w: k.innerWidth,\n                            h: k.innerHeight,\n                            x: k.pageXOffset,\n                            y: k.pageYOffset\n                        };\n                        c && c.w == b.w && c.h == b.h && c.x == b.x && c.y == b.y || (b.t = a,\n                        b.k = \"vpi\",\n                        c = b,\n                        e(c, {\n                            clog: 1\n                        }),\n                        s && v(\"vpi\", {\n                            t: (c.t || \"0\") + \"\",\n                            h: (c.h || \"0\") + \"\",\n                            y: (c.y || \"0\") + \"\",\n                            w: (c.w || \"0\") + \"\",\n                            x: (c.x || \"0\") + \"\"\n                        }));\n                        f = 0;\n                        x = z() - a;\n                        l += 1\n                    }\n                    function n() {\n                        f || (f = a.ue_cel.timeout(m, B))\n                    }\n                    var c, f, B, z, x = 0, l = 0, k = a.window, d = a.ue, e = a.ue_cel.log, w = a.uet, t = a.uex, q = d.attach, g = d.detach, s = k.csa, v = a.ue_cel.csaEventLog;\n                    \"function\" == typeof w && w(\"bb\", \"csmCELLSvpm\", {\n                        wb: 1\n                    });\n                    return {\n                        on: function(a) {\n                            z = a.ts;\n                            B = a.timespan || 100;\n                            m();\n                            q && (q(\"scroll\", n),\n                            q(\"resize\", n));\n                            \"function\" == typeof t && t(\"ld\", \"csmCELLSvpm\", {\n                                wb: 1\n                            })\n                        },\n                        off: function(a) {\n                            clearTimeout(f);\n                            g && (g(\"scroll\", n),\n                            g(\"resize\", n));\n                            d.count && (d.count(\"cel.VPI.TotalExecutions\", l),\n                            d.count(\"cel.VPI.TotalExecutionTime\", x),\n                            d.count(\"cel.VPI.AverageExecutionTime\", x / l))\n                        },\n                        ready: function() {\n                            return a.ue_cel && a.ue_cel.log\n                        },\n                        reset: function() {\n                            c = void 0\n                        },\n                        getVpi: function() {\n                            return c\n                        }\n                    }\n                }(),\n                a.ue_cel && a.ue_cel.registerModule(\"viewport module\", a.ue_vpm))\n            }\n            )(ue_csm);\n            (function(a) {\n                if (!a.ue_fem && a.ue_cel && a.ue_utils) {\n                    var m = a.ue || {}\n                      , n = a.window\n                      , c = n.document;\n                    !m.isBF && !a.ue_fem && c.querySelector && n.getComputedStyle && [].forEach && (a.ue_fem = function() {\n                        function f(a, b) {\n                            return a > b ? 3 > a - b : 3 > b - a\n                        }\n                        function B(a, b) {\n                            var c = n.pageXOffset, d = n.pageYOffset, k;\n                            a: {\n                                try {\n                                    if (a) {\n                                        var e = a.getBoundingClientRect(), g, m = 0 === a.offsetWidth && 0 === a.offsetHeight;\n                                        c: {\n                                            for (var h = a.parentNode, p = e.left || 0, w = e.top || 0, q = e.width || 0, s = e.height || 0; h && h !== document.body; ) {\n                                                var l;\n                                                d: {\n                                                    try {\n                                                        var r = void 0;\n                                                        if (h)\n                                                            var t = h.getBoundingClientRect()\n                                                              , r = {\n                                                                x: t.left || 0,\n                                                                y: t.top || 0,\n                                                                w: t.width || 0,\n                                                                h: t.height || 0\n                                                            };\n                                                        else\n                                                            r = void 0;\n                                                        l = r;\n                                                        break d\n                                                    } catch (I) {}\n                                                    l = void 0\n                                                }\n                                                var u = window.getComputedStyle(h)\n                                                  , v = \"hidden\" === u.overflow\n                                                  , x = v || \"hidden\" === u.overflowX\n                                                  , y = v || \"hidden\" === u.overflowY\n                                                  , z = w + s - 1 < l.y + 1 || w + 1 > l.y + l.h - 1;\n                                                if ((p + q - 1 < l.x + 1 || p + 1 > l.x + l.w - 1) && x || z && y) {\n                                                    g = !0;\n                                                    break c\n                                                }\n                                                h = h.parentNode\n                                            }\n                                            g = !1\n                                        }\n                                        k = {\n                                            x: e.left + c || 0,\n                                            y: e.top + d || 0,\n                                            w: e.width || 0,\n                                            h: e.height || 0,\n                                            d: (m || g) | 0\n                                        }\n                                    } else\n                                        k = void 0;\n                                    break a\n                                } catch (J) {}\n                                k = void 0\n                            }\n                            if (k && !a.cel_b)\n                                a.cel_b = k,\n                                D({\n                                    n: a.getAttribute(A),\n                                    w: a.cel_b.w,\n                                    h: a.cel_b.h,\n                                    d: a.cel_b.d,\n                                    x: a.cel_b.x,\n                                    y: a.cel_b.y,\n                                    t: b,\n                                    k: \"ewi\",\n                                    cl: a.className\n                                }, {\n                                    clog: 1\n                                });\n                            else {\n                                if (c = k)\n                                    c = a.cel_b,\n                                    d = k,\n                                    c = d.d === c.d && 1 === d.d ? !1 : !(f(c.x, d.x) && f(c.y, d.y) && f(c.w, d.w) && f(c.h, d.h) && c.d === d.d);\n                                c && (a.cel_b = k,\n                                D({\n                                    n: a.getAttribute(A),\n                                    w: a.cel_b.w,\n                                    h: a.cel_b.h,\n                                    d: a.cel_b.d,\n                                    x: a.cel_b.x,\n                                    y: a.cel_b.y,\n                                    t: b,\n                                    k: \"ewi\"\n                                }, {\n                                    clog: 1\n                                }))\n                            }\n                        }\n                        function z(d, e) {\n                            var f;\n                            f = d.c ? c.getElementsByClassName(d.c) : d.id ? [c.getElementById(d.id)] : c.querySelectorAll(d.s);\n                            d.w = [];\n                            for (var g = 0; g < f.length; g++) {\n                                var h = f[g];\n                                if (h) {\n                                    if (!h.getAttribute(A)) {\n                                        var l = h.getAttribute(\"cel_widget_id\") || (d.id_gen || u)(h, g) || h.id;\n                                        h.setAttribute(A, l)\n                                    }\n                                    d.w.push(h);\n                                    k(Q, h, e)\n                                }\n                            }\n                            !1 === C && (F++,\n                            F === b.length && (C = !0,\n                            a.ue_utils.notifyWidgetsLabeled()))\n                        }\n                        function x(a, b) {\n                            h.contains(a) || D({\n                                n: a.getAttribute(A),\n                                t: b,\n                                k: \"ewd\"\n                            }, {\n                                clog: 1\n                            })\n                        }\n                        function l(a) {\n                            K.length && ue_cel.timeout(function() {\n                                if (s) {\n                                    for (var b = R(), c = !1; R() - b < g && !c; ) {\n                                        for (c = S; 0 < c-- && 0 < K.length; ) {\n                                            var d = K.shift();\n                                            T[d.type](d.elem, d.time)\n                                        }\n                                        c = 0 === K.length\n                                    }\n                                    U++;\n                                    l(a)\n                                }\n                            }, 0)\n                        }\n                        function k(a, b, c) {\n                            K.push({\n                                type: a,\n                                elem: b,\n                                time: c\n                            })\n                        }\n                        function d(a, c) {\n                            for (var d = 0; d < b.length; d++)\n                                for (var e = b[d].w || [], h = 0; h < e.length; h++)\n                                    k(a, e[h], c)\n                        }\n                        function e() {\n                            M || (M = a.ue_cel.timeout(function() {\n                                M = null;\n                                var c = v();\n                                d(W, c);\n                                for (var e = 0; e < b.length; e++)\n                                    k(X, b[e], c);\n                                0 === b.length && !1 === C && (C = !0,\n                                a.ue_utils.notifyWidgetsLabeled());\n                                l(c)\n                            }, q))\n                        }\n                        function w() {\n                            M || N || (N = a.ue_cel.timeout(function() {\n                                N = null;\n                                var a = v();\n                                d(Q, a);\n                                l(a)\n                            }, q))\n                        }\n                        function t() {\n                            return y && E && h && h.contains && h.getBoundingClientRect && v\n                        }\n                        var q = 50, g = 4.5, s = !1, v, A = \"data-cel-widget\", b = [], F = 0, C = !1, u = function() {}, D = a.ue_cel.log, h, p, y, E, G = n.MutationObserver || n.WebKitMutationObserver || n.MozMutationObserver, r = !!G, H, I, O = \"DOMAttrModified\", L = \"DOMNodeInserted\", J = \"DOMNodeRemoved\", N, M, K = [], U = 0, S = null, W = \"removedWidget\", X = \"updateWidgets\", Q = \"processWidget\", T, V = n.performance || {}, R = V.now && function() {\n                            return V.now()\n                        }\n                        || function() {\n                            return Date.now()\n                        }\n                        ;\n                        \"function\" == typeof uet && uet(\"bb\", \"csmCELLSfem\", {\n                            wb: 1\n                        });\n                        return {\n                            on: function(d) {\n                                function k() {\n                                    if (t()) {\n                                        T = {\n                                            removedWidget: x,\n                                            updateWidgets: z,\n                                            processWidget: B\n                                        };\n                                        if (r) {\n                                            var a = {\n                                                attributes: !0,\n                                                subtree: !0\n                                            };\n                                            H = new G(w);\n                                            I = new G(e);\n                                            H.observe(h, a);\n                                            I.observe(h, {\n                                                childList: !0,\n                                                subtree: !0\n                                            });\n                                            I.observe(p, a)\n                                        } else\n                                            y.call(h, O, w),\n                                            y.call(h, L, e),\n                                            y.call(h, J, e),\n                                            y.call(p, L, w),\n                                            y.call(p, J, w);\n                                        e()\n                                    }\n                                }\n                                h = c.body;\n                                p = c.head;\n                                y = h.addEventListener;\n                                E = h.removeEventListener;\n                                v = d.ts;\n                                b = a.cel_widgets || [];\n                                S = d.bs || 5;\n                                m.deffered ? k() : m.attach && m.attach(\"load\", k);\n                                \"function\" == typeof uex && uex(\"ld\", \"csmCELLSfem\", {\n                                    wb: 1\n                                });\n                                s = !0\n                            },\n                            off: function() {\n                                t() && (I && (I.disconnect(),\n                                I = null),\n                                H && (H.disconnect(),\n                                H = null),\n                                E.call(h, O, w),\n                                E.call(h, L, e),\n                                E.call(h, J, e),\n                                E.call(p, L, w),\n                                E.call(p, J, w));\n                                m.count && m.count(\"cel.widgets.batchesProcessed\", U);\n                                s = !1\n                            },\n                            ready: function() {\n                                return a.ue_cel && a.ue_cel.log\n                            },\n                            reset: function() {\n                                b = a.cel_widgets || []\n                            }\n                        }\n                    }(),\n                    a.ue_cel && a.ue_fem && a.ue_cel.registerModule(\"features module\", a.ue_fem))\n                }\n            }\n            )(ue_csm);\n            (function(a) {\n                !a.ue_mcm && a.ue_cel && a.ue_utils && !a.ue.isBF && (a.ue_mcm = function() {\n                    function m(a, d) {\n                        var e = a.srcElement || a.target || {}\n                          , f = {\n                            k: n,\n                            w: (d || {}).ow || (B.body || {}).scrollWidth,\n                            h: (d || {}).oh || (B.body || {}).scrollHeight,\n                            t: (d || {}).ots || c(),\n                            x: a.pageX,\n                            y: a.pageY,\n                            p: l.getXPath(e),\n                            n: e.nodeName\n                        };\n                        z && \"function\" === typeof z.now && a.timeStamp && (f.dt = (d || {}).odt || z.now() - a.timeStamp,\n                        f.dt = parseFloat(f.dt.toFixed(2)));\n                        a.button && (f.b = a.button);\n                        e.href && (f.r = l.extractStringValue(e.href));\n                        e.id && (f.i = e.id);\n                        e.className && e.className.split && (f.c = e.className.split(/s+/));\n                        x(f, {\n                            c: 1\n                        })\n                    }\n                    var n = \"mcm\", c, f = a.window, B = f.document, z = f.performance, x = a.ue_cel.log, l = a.ue_utils;\n                    return {\n                        on: function(k) {\n                            c = k.ts;\n                            a.ue_cel_stub && a.ue_cel_stub.replayModule(n, m);\n                            f.addEventListener && f.addEventListener(\"mousedown\", m, !0)\n                        },\n                        off: function(a) {\n                            f.addEventListener && f.removeEventListener(\"mousedown\", m, !0)\n                        },\n                        ready: function() {\n                            return a.ue_cel && a.ue_cel.log\n                        },\n                        reset: function() {}\n                    }\n                }(),\n                a.ue_cel && a.ue_cel.registerModule(\"mouse click module\", a.ue_mcm))\n            }\n            )(ue_csm);\n            (function(a) {\n                a.ue_mmm || !a.ue_cel || a.ue.isBF || (a.ue_mmm = function(m) {\n                    function n(a, b) {\n                        var c = {\n                            x: a.pageX || a.x || 0,\n                            y: a.pageY || a.y || 0,\n                            t: l()\n                        };\n                        !b && p && (c.t - p.t < B || c.x == p.x && c.y == p.y) || (p = c,\n                        u.push(c))\n                    }\n                    function c() {\n                        if (u.length) {\n                            F = H.now();\n                            for (var a = 0; a < u.length; a++) {\n                                var c = u[a]\n                                  , d = a;\n                                y = u[h];\n                                E = c;\n                                var e = void 0;\n                                if (!(e = 2 > d)) {\n                                    e = void 0;\n                                    a: if (u[d].t - u[d - 1].t > f)\n                                        e = 0;\n                                    else {\n                                        for (e = h + 1; e < d; e++) {\n                                            var g = y\n                                              , k = E\n                                              , l = u[e];\n                                            G = (k.x - g.x) * (g.y - l.y) - (g.x - l.x) * (k.y - g.y);\n                                            if (G * G / ((k.x - g.x) * (k.x - g.x) + (k.y - g.y) * (k.y - g.y)) > z) {\n                                                e = 0;\n                                                break a\n                                            }\n                                        }\n                                        e = 1\n                                    }\n                                    e = !e\n                                }\n                                (r = e) ? h = d - 1 : D.pop();\n                                D.push(c)\n                            }\n                            C = H.now() - F;\n                            s = Math.min(s, C);\n                            v = Math.max(v, C);\n                            A = (A * b + C) / (b + 1);\n                            b += 1;\n                            q({\n                                k: x,\n                                e: D,\n                                min: Math.floor(1E3 * s),\n                                max: Math.floor(1E3 * v),\n                                avg: Math.floor(1E3 * A)\n                            }, {\n                                c: 1\n                            });\n                            u = [];\n                            D = [];\n                            h = 0\n                        }\n                    }\n                    var f = 100, B = 20, z = 25, x = \"mmm1\", l, k, d = a.window, e = d.document, w = d.setInterval, t = a.ue, q = a.ue_cel.log, g, s = 1E3, v = 0, A = 0, b = 0, F, C, u = [], D = [], h = 0, p, y, E, G, r, H = m && m.now && m || Date.now && Date || {\n                        now: function() {\n                            return (new Date).getTime()\n                        }\n                    };\n                    return {\n                        on: function(a) {\n                            l = a.ts;\n                            k = a.ns;\n                            t.attach && t.attach(\"mousemove\", n, e);\n                            g = w(c, 3E3)\n                        },\n                        off: function(a) {\n                            k && (p && n(p, !0),\n                            c());\n                            clearInterval(g);\n                            t.detach && t.detach(\"mousemove\", n, e)\n                        },\n                        ready: function() {\n                            return a.ue_cel && a.ue_cel.log\n                        },\n                        reset: function() {\n                            u = [];\n                            D = [];\n                            h = 0;\n                            p = null\n                        }\n                    }\n                }(window.performance),\n                a.ue_cel && a.ue_cel.registerModule(\"mouse move module\", a.ue_mmm))\n            }\n            )(ue_csm);\n\n            ue_csm.ue.exec(function(b, c) {\n                var e = function() {}\n                  , f = function() {\n                    return {\n                        send: function(b, d) {\n                            if (d && b) {\n                                var a;\n                                if (c.XDomainRequest)\n                                    a = new XDomainRequest,\n                                    a.onerror = e,\n                                    a.ontimeout = e,\n                                    a.onprogress = e,\n                                    a.onload = e,\n                                    a.timeout = 0;\n                                else if (c.XMLHttpRequest) {\n                                    if (a = new XMLHttpRequest,\n                                    !(\"withCredentials\"in a))\n                                        throw \"\";\n                                } else\n                                    a = void 0;\n                                if (!a)\n                                    throw \"\";\n                                a.open(\"POST\", b, !0);\n                                a.setRequestHeader && a.setRequestHeader(\"Content-type\", \"text/plain\");\n                                a.send(d)\n                            }\n                        },\n                        isSupported: !0\n                    }\n                }()\n                  , g = function() {\n                    return {\n                        send: function(c, d) {\n                            if (c && d)\n                                if (navigator.sendBeacon(c, d))\n                                    b.ue_sbuimp && b.ue && b.ue.ssw && b.ue.ssw(\"eelsts\", \"scs\");\n                                else\n                                    throw \"\";\n                        },\n                        isSupported: !!navigator.sendBeacon && !(c.cordova && c.cordova.platformId && \"ios\" == c.cordova.platformId)\n                    }\n                }();\n                b.ue._ajx = f;\n                b.ue._sBcn = g\n            }, \"Transportation-clients\")(ue_csm, window);\n            ue_csm.ue.exec(function(b, k) {\n                function B() {\n                    for (var a = 0; a < arguments.length; a++) {\n                        var c = arguments[a];\n                        try {\n                            var g;\n                            if (c.isSupported) {\n                                var f = u.buildPayload(l, e);\n                                g = c.send(K, f)\n                            } else\n                                throw dummyException;\n                            return g\n                        } catch (d) {}\n                    }\n                    a = {\n                        m: \"All supported clients failed\",\n                        attribution: \"CSMSushiClient_TRANSPORTATION_FAIL\",\n                        f: \"sushi-client.js\",\n                        logLevel: \"ERROR\"\n                    };\n                    C(a, k.ue_err_chan || \"jserr\");\n                    b.ue_err.buffer && b.ue_err.buffer.push(a)\n                }\n                function m() {\n                    if (e.length) {\n                        for (var a = 0; a < n.length; a++)\n                            n[a]();\n                        B(d._sBcn || {}, d._ajx || {});\n                        e = [];\n                        h = {};\n                        l = {};\n                        v = w = r = x = 0\n                    }\n                }\n                function L() {\n                    var a = new Date\n                      , c = function(a) {\n                        return 10 > a ? \"0\" + a : a\n                    };\n                    return Date.prototype.toISOString ? a.toISOString() : a.getUTCFullYear() + \"-\" + c(a.getUTCMonth() + 1) + \"-\" + c(a.getUTCDate()) + \"T\" + c(a.getUTCHours()) + \":\" + c(a.getUTCMinutes()) + \":\" + c(a.getUTCSeconds()) + \".\" + String((a.getUTCMilliseconds() / 1E3).toFixed(3)).slice(2, 5) + \"Z\"\n                }\n                function y(a) {\n                    try {\n                        return JSON.stringify(a)\n                    } catch (c) {}\n                    return null\n                }\n                function D(a, c, g, f) {\n                    var q = !1;\n                    f = f || {};\n                    s++;\n                    if (s == E) {\n                        var p = {\n                            m: \"Max number of Sushi Logs exceeded\",\n                            f: \"sushi-client.js\",\n                            logLevel: \"ERROR\",\n                            attribution: \"CSMSushiClient_MAX_CALLS\"\n                        };\n                        C(p, k.ue_err_chan || \"jserr\");\n                        b.ue_err.buffer && b.ue_err.buffer.push(p)\n                    }\n                    if (p = !(s >= E))\n                        (p = a && -1 < a.constructor.toString().indexOf(\"Object\") && c && -1 < c.constructor.toString().indexOf(\"String\") && g && -1 < g.constructor.toString().indexOf(\"String\")) || M++;\n                    p && (d.count && d.count(\"Event:\" + g, 1),\n                    a.producerId = a.producerId || c,\n                    a.schemaId = a.schemaId || g,\n                    a.timestamp = L(),\n                    c = Date.now ? Date.now() : +new Date,\n                    g = Math.random().toString().substring(2, 12),\n                    a.messageId = b.ue_id + \"-\" + c + \"-\" + g,\n                    f && !f.ssd && (a.sessionId = a.sessionId || b.ue_sid,\n                    a.requestId = a.requestId || b.ue_id,\n                    a.obfuscatedMarketplaceId = a.obfuscatedMarketplaceId || b.ue_mid),\n                    (c = y(a)) ? (c = c.length,\n                    (e.length == N || r + c > O) && m(),\n                    r += c,\n                    a = {\n                        data: u.compressEvent(a)\n                    },\n                    e.push(a),\n                    (f || {}).n ? 0 === F ? m() : v || (v = k.setTimeout(m, F)) : w || (w = k.setTimeout(m, P)),\n                    q = !0) : q = !1);\n                    !q && b.ue_int && console.error(\"Invalid JS Nexus API call\");\n                    return q\n                }\n                function G() {\n                    if (!H) {\n                        for (var a = 0; a < z.length; a++)\n                            z[a]();\n                        for (a = 0; a < n.length; a++)\n                            n[a]();\n                        e.length && (b.ue_sbuimp && b.ue && b.ue.ssw && (a = y({\n                            dct: l,\n                            evt: e\n                        }),\n                        b.ue.ssw(\"eeldata\", a),\n                        b.ue.ssw(\"eelsts\", \"unk\")),\n                        B(d._sBcn || {}));\n                        H = !0\n                    }\n                }\n                function I(a) {\n                    z.push(a)\n                }\n                function J(a) {\n                    n.push(a)\n                }\n                var E = 1E3\n                  , N = 499\n                  , O = 524288\n                  , t = function() {}\n                  , d = b.ue || {}\n                  , C = d.log || t\n                  , Q = b.uex || t;\n                (b.uet || t)(\"bb\", \"ue_sushi_v1\", {\n                    wb: 1\n                });\n                var K = b.ue_surl || \"https://unagi-na.amazon.com/1/events/com.amazon.csm.nexusclient.gamma\", R = [\"messageId\", \"timestamp\"], A = \"#\", e = [], h = {}, l = {}, r = 0, x = 0, M = 0, s = 0, z = [], n = [], H = !1, v, w, F = void 0 === b.ue_hpsi ? 1E3 : b.ue_hpsi, P = void 0 === b.ue_lpsi ? 1E4 : b.ue_lpsi, u = function() {\n                    function a(a) {\n                        h[a] = A + x++;\n                        l[h[a]] = a;\n                        return h[a]\n                    }\n                    function c(b) {\n                        if (!(b instanceof Function)) {\n                            if (b instanceof Array) {\n                                for (var f = [], d = b.length, e = 0; e < d; e++)\n                                    f[e] = c(b[e]);\n                                return f\n                            }\n                            if (b instanceof Object) {\n                                f = {};\n                                for (d in b)\n                                    b.hasOwnProperty(d) && (f[h[d] ? h[d] : a(d)] = -1 === R.indexOf(d) ? c(b[d]) : b[d]);\n                                return f\n                            }\n                            return \"string\" === typeof b && (b.length > (A + x).length || b.charAt(0) === A) ? h[b] ? h[b] : a(b) : b\n                        }\n                    }\n                    return {\n                        compressEvent: c,\n                        buildPayload: function() {\n                            return y({\n                                cs: {\n                                    dct: l\n                                },\n                                events: e\n                            })\n                        }\n                    }\n                }();\n                (function() {\n                    if (d.event && d.event.isStub) {\n                        if (b.ue_sbuimp && b.ue && b.ue.ssw) {\n                            var a = b.ue.ssw(\"eelsts\").val;\n                            if (a && \"unk\" === a && (a = b.ue.ssw(\"eeldata\").val)) {\n                                var c;\n                                a: {\n                                    try {\n                                        c = JSON.parse(a);\n                                        break a\n                                    } catch (g) {}\n                                    c = null\n                                }\n                                c && c.evt instanceof Array && c.dct instanceof Object && (e = c.evt,\n                                l = c.dct,\n                                e && l && (m(),\n                                b.ue.ssw(\"eeldata\", \"{}\"),\n                                b.ue.ssw(\"eelsts\", \"scs\")))\n                            }\n                        }\n                        d.event.replay(function(a) {\n                            a[3] = a[3] || {};\n                            a[3].n = 1;\n                            D.apply(this, a)\n                        });\n                        d.onSushiUnload.replay(function(a) {\n                            I(a[0])\n                        });\n                        d.onSushiFlush.replay(function(a) {\n                            J(a[0])\n                        })\n                    }\n                }\n                )();\n                d.attach(\"beforeunload\", G);\n                d.attach(\"pagehide\", G);\n                d._cmps = u;\n                d.event = D;\n                d.event.reset = function() {\n                    s = 0\n                }\n                ;\n                d.onSushiUnload = I;\n                d.onSushiFlush = J;\n                try {\n                    k.P && k.P.register && k.P.register(\"sushi-client\", t)\n                } catch (S) {\n                    b.ueLogError(S, {\n                        logLevel: \"WARN\"\n                    })\n                }\n                Q(\"ld\", \"ue_sushi_v1\", {\n                    wb: 1\n                })\n            }, \"Nxs-JS-Client\")(ue_csm, window);\n\n            ue_csm.ue_unrt = 1500;\n            (function(d, b, t) {\n                function u(a, g) {\n                    var c = a.srcElement || a.target || {}\n                      , b = {\n                        k: v,\n                        t: g.t,\n                        dt: g.dt,\n                        x: a.pageX,\n                        y: a.pageY,\n                        p: e.getXPath(c),\n                        n: c.nodeName\n                    };\n                    a.button && (b.b = a.button);\n                    c.type && (b.ty = c.type);\n                    c.href && (b.r = e.extractStringValue(c.href));\n                    c.id && (b.i = c.id);\n                    c.className && c.className.split && (b.c = c.className.split(/s+/));\n                    h += 1;\n                    e.getFirstAscendingWidget(c, function(a) {\n                        b.wd = a;\n                        d.ue.log(b, r)\n                    })\n                }\n                function w(a) {\n                    if (!x(a.srcElement || a.target)) {\n                        m += 1;\n                        n = !0;\n                        var g = f = d.ue.d(), c;\n                        p && \"function\" === typeof p.now && a.timeStamp && (c = p.now() - a.timeStamp,\n                        c = parseFloat(c.toFixed(2)));\n                        s = b.setTimeout(function() {\n                            u(a, {\n                                t: g,\n                                dt: c\n                            })\n                        }, y)\n                    }\n                }\n                function z(a) {\n                    if (a) {\n                        var b = a.filter(A);\n                        a.length !== b.length && (q = !0,\n                        k = d.ue.d(),\n                        n && q && (k && f && d.ue.log({\n                            k: B,\n                            t: f,\n                            m: Math.abs(k - f)\n                        }, r),\n                        l(),\n                        q = !1,\n                        k = 0))\n                    }\n                }\n                function A(a) {\n                    if (!a)\n                        return !1;\n                    var b = \"characterData\" === a.type ? a.target.parentElement : a.target;\n                    if (!b || !b.hasAttributes || !b.attributes)\n                        return !1;\n                    var c = {\n                        \"class\": \"gw-clock gw-clock-aria s-item-container-height-auto feed-carousel using-mouse kfs-inner-container\".split(\" \"),\n                        id: [\"dealClock\", \"deal_expiry_timer\", \"timer\"],\n                        role: [\"timer\"]\n                    }\n                      , d = !1;\n                    Object.keys(c).forEach(function(a) {\n                        var e = b.attributes[a] ? b.attributes[a].value : \"\";\n                        (c[a] || \"\").forEach(function(a) {\n                            -1 !== e.indexOf(a) && (d = !0)\n                        })\n                    });\n                    return d\n                }\n                function x(a) {\n                    if (!a)\n                        return !1;\n                    var b = (e.extractStringValue(a.nodeName) || \"\").toLowerCase()\n                      , c = (e.extractStringValue(a.type) || \"\").toLowerCase()\n                      , d = (e.extractStringValue(a.href) || \"\").toLowerCase();\n                    a = (e.extractStringValue(a.id) || \"\").toLowerCase();\n                    var f = \"checkbox color date datetime-local email file month number password radio range reset search tel text time url week\".split(\" \");\n                    if (-1 !== [\"select\", \"textarea\", \"html\"].indexOf(b) || \"input\" === b && -1 !== f.indexOf(c) || \"a\" === b && -1 !== d.indexOf(\"http\") || -1 !== [\"sitbreaderrightpageturner\", \"sitbreaderleftpageturner\", \"sitbreaderpagecontainer\"].indexOf(a))\n                        return !0\n                }\n                function l() {\n                    n = !1;\n                    f = 0;\n                    b.clearTimeout(s)\n                }\n                function C() {\n                    b.ue.onunload(function() {\n                        ue.count(\"armored-cxguardrails.unresponsive-clicks.violations\", h);\n                        ue.count(\"armored-cxguardrails.unresponsive-clicks.violationRate\", h / m * 100 || 0)\n                    })\n                }\n                if (b.MutationObserver && b.addEventListener && Object.keys && d && d.ue && d.ue.log && d.ue_unrt && d.ue_utils) {\n                    var y = d.ue_unrt\n                      , r = \"cel\"\n                      , v = \"unr_mcm\"\n                      , B = \"res_mcm\"\n                      , p = b.performance\n                      , e = d.ue_utils\n                      , n = !1\n                      , f = 0\n                      , s = 0\n                      , q = !1\n                      , k = 0\n                      , h = 0\n                      , m = 0;\n                    b.addEventListener && (b.addEventListener(\"mousedown\", w, !0),\n                    b.addEventListener(\"beforeunload\", l, !0),\n                    b.addEventListener(\"visibilitychange\", l, !0),\n                    b.addEventListener(\"pagehide\", l, !0));\n                    b.ue && b.ue.event && b.ue.onSushiUnload && b.ue.onunload && C();\n                    (new MutationObserver(z)).observe(t, {\n                        childList: !0,\n                        attributes: !0,\n                        characterData: !0,\n                        subtree: !0\n                    })\n                }\n            }\n            )(ue_csm, window, document);\n\n            ue_csm.ue.exec(function(g, e) {\n                if (e.ue_err) {\n                    var f = \"\";\n                    e.ue_err.errorHandlers || (e.ue_err.errorHandlers = []);\n                    e.ue_err.errorHandlers.push({\n                        name: \"fctx\",\n                        handler: function(a) {\n                            if (!a.logLevel || \"FATAL\" === a.logLevel)\n                                if (f = g.getElementsByTagName(\"html\")[0].innerHTML) {\n                                    var b = f.indexOf(\"var ue_t0=ue_t0||+new Date();\");\n                                    if (-1 !== b) {\n                                        var b = f.substr(0, b).split(String.fromCharCode(10))\n                                          , d = Math.max(b.length - 10 - 1, 0)\n                                          , b = b.slice(d, b.length - 1);\n                                        a.fcsmln = d + b.length + 1;\n                                        a.cinfo = a.cinfo || {};\n                                        for (var c = 0; c < b.length; c++)\n                                            a.cinfo[d + c + 1 + \"\"] = b[c]\n                                    }\n                                    b = f.split(String.fromCharCode(10));\n                                    a.cinfo = a.cinfo || {};\n                                    if (!(a.f || void 0 === a.l || a.l in a.cinfo))\n                                        for (c = +a.l - 1,\n                                        d = Math.max(c - 5, 0),\n                                        c = Math.min(c + 5, b.length - 1); d <= c; d++)\n                                            a.cinfo[d + 1 + \"\"] = b[d]\n                                }\n                        }\n                    })\n                }\n            }, \"fatals-context\")(document, window);\n\n            (function(m, b) {\n                function c(k) {\n                    function f(a) {\n                        a && \"string\" === typeof a && (a = (a = a.match(/^(?:https?:)?//(.*?)(/|$)/i)) && 1 < a.length ? a[1] : null,\n                        a && a && (\"number\" === typeof e[a] ? e[a]++ : e[a] = 1))\n                    }\n                    function d(a) {\n                        var e = 10\n                          , d = +new Date;\n                        a && a.timeRemaining ? e = a.timeRemaining() : a = {\n                            timeRemaining: function() {\n                                return Math.max(0, e - (+new Date - d))\n                            }\n                        };\n                        for (var c = b.performance.getEntries(), k = e; g < c.length && k > n; )\n                            c[g].name && f(c[g].name),\n                            g++,\n                            k = a.timeRemaining();\n                        g >= c.length ? h(!0) : l()\n                    }\n                    function h(a) {\n                        if (!a) {\n                            a = m.scripts;\n                            var c;\n                            if (a)\n                                for (var d = 0; d < a.length; d++)\n                                    (c = a[d].getAttribute(\"src\")) && \"undefined\" !== c && f(c)\n                        }\n                        0 < Object.keys(e).length && (p && ue_csm.ue && ue_csm.ue.event && (a = {\n                            domains: e,\n                            pageType: b.ue_pty || null,\n                            subPageType: b.ue_spty || null,\n                            pageTypeId: b.ue_pti || null\n                        },\n                        ue_csm.ue_sjslob && (a.lob = ue_csm.ue_lob || \"0\"),\n                        ue_csm.ue.event(a, \"csm\", \"csm.CrossOriginDomains.2\")),\n                        b.ue_ext = e)\n                    }\n                    function l() {\n                        !0 === k ? d() : b.requestIdleCallback ? b.requestIdleCallback(d) : b.requestAnimationFrame ? b.requestAnimationFrame(d) : b.setTimeout(d, 100)\n                    }\n                    function c() {\n                        if (b.performance && b.performance.getEntries) {\n                            var a = b.performance.getEntries();\n                            !a || 0 >= a.length ? h(!1) : l()\n                        } else\n                            h(!1)\n                    }\n                    var e = b.ue_ext || {};\n                    b.ue_ext || c();\n                    return e\n                }\n                function q() {\n                    setTimeout(c, r)\n                }\n                var s = b.ue_dserr || !1\n                  , p = !0\n                  , n = 1\n                  , r = 2E3\n                  , g = 0;\n                b.ue_err && s && (b.ue_err.errorHandlers || (b.ue_err.errorHandlers = []),\n                b.ue_err.errorHandlers.push({\n                    name: \"ext\",\n                    handler: function(b) {\n                        if (!b.logLevel || \"FATAL\" === b.logLevel) {\n                            var f = c(!0), d = [], h;\n                            for (h in f) {\n                                var f = h\n                                  , g = f.match(/amazon(.com?)?.w{2,3}$/i);\n                                g && 1 < g.length || -1 !== f.indexOf(\"amazon-adsystem.com\") || -1 !== f.indexOf(\"amazonpay.com\") || -1 !== f.indexOf(\"cloudfront-labs.amazonaws.com\") || d.push(h)\n                            }\n                            b.ext = d\n                        }\n                    }\n                }));\n                b.ue && b.ue.isl ? c() : b.ue && ue.attach && ue.attach(\"load\", q)\n            }\n            )(document, window);\n\n            var ue_wtc_c = 3;\n            ue_csm.ue.exec(function(b, e) {\n                function l() {\n                    for (var a = 0; a < f.length; a++)\n                        a: for (var d = s.replace(A, f[a]) + g[f[a]] + t, c = arguments, b = 0; b < c.length; b++)\n                            try {\n                                c[b].send(d);\n                                break a\n                            } catch (e) {}\n                    g = {};\n                    f = [];\n                    n = 0;\n                    k = p\n                }\n                function u() {\n                    B ? l(q) : l(C, q)\n                }\n                function v(a, m, c) {\n                    r++;\n                    if (r > w)\n                        d.count && 1 == r - w && (d.count(\"WeblabTriggerThresholdReached\", 1),\n                        b.ue_int && console.error(\"Number of max call reached. Data will no longer be send\"));\n                    else {\n                        var h = c || {};\n                        h && -1 < h.constructor.toString().indexOf(D) && a && -1 < a.constructor.toString().indexOf(x) && m && -1 < m.constructor.toString().indexOf(x) ? (h = b.ue_id,\n                        c && c.rid && (h = c.rid),\n                        c = h,\n                        a = encodeURIComponent(\",wl=\" + a + \"/\" + m),\n                        2E3 > a.length + p ? (2E3 < k + a.length && u(),\n                        void 0 === g[c] && (g[c] = \"\",\n                        f.push(c)),\n                        g[c] += a,\n                        k += a.length,\n                        n || (n = e.setTimeout(u, E))) : b.ue_int && console.error(\"Invalid API call. The input provided is over 2000 chars.\")) : d.count && (d.count(\"WeblabTriggerImproperAPICall\", 1),\n                        b.ue_int && console.error(\"Invalid API call. The input provided does not match the API protocol i.e ue.trigger(String, String, Object).\"))\n                    }\n                }\n                function F() {\n                    d.trigger && d.trigger.isStub && d.trigger.replay(function(a) {\n                        v.apply(this, a)\n                    })\n                }\n                function y() {\n                    z || (f.length && l(q),\n                    z = !0)\n                }\n                var t = \":1234\", s = \"//\" + b.ue_furl + \"/1/remote-weblab-triggers/1/OE/\" + b.ue_mid + \":\" + b.ue_sid + \":PLCHLDR_RID$s:wl-client-id%3DCSMTriger\", A = \"PLCHLDR_RID\", E = b.wtt || 1E4, p = s.length + t.length, w = b.mwtc || 2E3, G = 1 === e.ue_wtc_c, B = 3 === e.ue_wtc_c, H = e.XMLHttpRequest && \"withCredentials\"in new e.XMLHttpRequest, x = \"String\", D = \"Object\", d = b.ue, g = {}, f = [], k = p, n, z = !1, r = 0, C = function() {\n                    return {\n                        send: function(a) {\n                            if (H) {\n                                var b = new e.XMLHttpRequest;\n                                b.open(\"GET\", a, !0);\n                                G && (b.withCredentials = !0);\n                                b.send()\n                            } else\n                                throw \"\";\n                        }\n                    }\n                }(), q = function() {\n                    return {\n                        send: function(a) {\n                            (new Image).src = a\n                        }\n                    }\n                }();\n                e.encodeURIComponent && (d.attach && (d.attach(\"beforeunload\", y),\n                d.attach(\"pagehide\", y)),\n                F(),\n                d.trigger = v)\n            }, \"client-wbl-trg\")(ue_csm, window);\n\n            (function(k, d, h) {\n                function f(a, c, b) {\n                    a && a.indexOf && 0 === a.indexOf(\"http\") && 0 !== a.indexOf(\"https\") && l(s, c, a, b)\n                }\n                function g(a, c, b) {\n                    a && a.indexOf && (location.href.split(\"#\")[0] != a && null !== a && \"undefined\" !== typeof a || l(t, c, a, b))\n                }\n                function l(a, c, b, e) {\n                    m[b] || (e = u && e ? n(e) : \"N/A\",\n                    d.ueLogError && d.ueLogError({\n                        message: a + c + \" : \" + b,\n                        logLevel: v,\n                        stack: \"N/A\"\n                    }, {\n                        attribution: e\n                    }),\n                    m[b] = 1,\n                    p++)\n                }\n                function e(a, c) {\n                    if (a && c)\n                        for (var b = 0; b < a.length; b++)\n                            try {\n                                c(a[b])\n                            } catch (d) {}\n                }\n                function q() {\n                    return d.performance && d.performance.getEntriesByType ? d.performance.getEntriesByType(\"resource\") : []\n                }\n                function n(a) {\n                    if (a.id)\n                        return \"//*[@id='\" + a.id + \"']\";\n                    var c;\n                    c = 1;\n                    var b;\n                    for (b = a.previousSibling; b; b = b.previousSibling)\n                        b.nodeName == a.nodeName && (c += 1);\n                    b = a.nodeName;\n                    1 != c && (b += \"[\" + c + \"]\");\n                    a.parentNode && (b = n(a.parentNode) + \"/\" + b);\n                    return b\n                }\n                function w() {\n                    var a = h.images;\n                    a && a.length && e(a, function(a) {\n                        var b = a.getAttribute(\"src\");\n                        f(b, \"img\", a);\n                        g(b, \"img\", a)\n                    })\n                }\n                function x() {\n                    var a = h.scripts;\n                    a && a.length && e(a, function(a) {\n                        var b = a.getAttribute(\"src\");\n                        f(b, \"script\", a);\n                        g(b, \"script\", a)\n                    })\n                }\n                function y() {\n                    var a = h.styleSheets;\n                    a && a.length && e(a, function(a) {\n                        if (a = a.ownerNode) {\n                            var b = a.getAttribute(\"href\");\n                            f(b, \"style\", a);\n                            g(b, \"style\", a)\n                        }\n                    })\n                }\n                function z() {\n                    if (A) {\n                        var a = q();\n                        e(a, function(a) {\n                            f(a.name, a.initiatorType)\n                        })\n                    }\n                }\n                function B() {\n                    e(q(), function(a) {\n                        g(a.name, a.initiatorType)\n                    })\n                }\n                function r() {\n                    var a;\n                    a = d.location && d.location.protocol ? d.location.protocol : void 0;\n                    \"https:\" == a && (z(),\n                    w(),\n                    x(),\n                    y(),\n                    B(),\n                    p < C && setTimeout(r, D))\n                }\n                var s = \"[CSM] Insecure content detected \"\n                  , t = \"[CSM] Ajax request to same page detected \"\n                  , v = \"WARN\"\n                  , m = {}\n                  , p = 0\n                  , D = k.ue_nsip || 1E3\n                  , C = 5\n                  , A = 1 == k.ue_urt\n                  , u = !0;\n                ue_csm.ue_disableNonSecure || (d.performance && d.performance.setResourceTimingBufferSize && d.performance.setResourceTimingBufferSize(300),\n                r())\n            }\n            )(ue_csm, window, document);\n\n            var ue_aa_a = \"\";\n            if (ue.trigger && (ue_aa_a === \"C\" || ue_aa_a === \"T1\")) {\n                ue.trigger(\"UEDATA_AA_SERVERSIDE_ASSIGNMENT_CLIENTSIDE_TRIGGER_190249\", ue_aa_a);\n            }\n            (function(f, b) {\n                function g() {\n                    try {\n                        b.PerformanceObserver && \"function\" === typeof b.PerformanceObserver && (a = new b.PerformanceObserver(function(b) {\n                            c(b.getEntries())\n                        }\n                        ),\n                        a.observe(d))\n                    } catch (h) {\n                        k()\n                    }\n                }\n                function m() {\n                    for (var h = d.entryTypes, a = 0; a < h.length; a++)\n                        c(b.performance.getEntriesByType(h[a]))\n                }\n                function c(a) {\n                    if (a && Array.isArray(a)) {\n                        for (var c = 0, e = 0; e < a.length; e++) {\n                            var d = l.indexOf(a[e].name);\n                            if (-1 !== d) {\n                                var g = Math.round(b.performance.timing.navigationStart + a[e].startTime);\n                                f.uet(n[d], void 0, void 0, g);\n                                c++\n                            }\n                        }\n                        l.length === c && k()\n                    }\n                }\n                function k() {\n                    a && a.disconnect && \"function\" === typeof a.disconnect && a.disconnect()\n                }\n                if (\"function\" === typeof f.uet && b.performance && \"object\" === typeof b.performance && b.performance.getEntriesByType && \"function\" === typeof b.performance.getEntriesByType && b.performance.timing && \"object\" === typeof b.performance.timing && \"number\" === typeof b.performance.timing.navigationStart) {\n                    var d = {\n                        entryTypes: [\"paint\"]\n                    }, l = [\"first-paint\", \"first-contentful-paint\"], n = [\"fp\", \"fcp\"], a;\n                    try {\n                        m(),\n                        g()\n                    } catch (p) {\n                        f.ueLogError(p, {\n                            logLevel: \"ERROR\",\n                            attribution: \"performanceMetrics\"\n                        })\n                    }\n                }\n            }\n            )(ue_csm, window);\n\n            if (window.csa) {\n                csa(\"Events\")(\"setEntity\", {\n                    page: {\n                        pageType: \"VendorRemittanceLibertyApp\",\n                        subPageType: \"RemittanceRegionalVendorView\",\n                        pageTypeId: \"\"\n                    }\n                });\n            }\n            csa.plugin(function(c) {\n                var m = \"transitionStart\"\n                  , n = \"pageVisible\"\n                  , e = \"PageTiming\"\n                  , t = \"visibilitychange\"\n                  , s = \"$latency.visible\"\n                  , i = c.global\n                  , r = (i.performance || {}).timing\n                  , a = [\"navigationStart\", \"unloadEventStart\", \"unloadEventEnd\", \"redirectStart\", \"redirectEnd\", \"fetchStart\", \"domainLookupStart\", \"domainLookupEnd\", \"connectStart\", \"connectEnd\", \"secureConnectionStart\", \"requestStart\", \"responseStart\", \"responseEnd\", \"domLoading\", \"domInteractive\", \"domContentLoadedEventStart\", \"domContentLoadedEventEnd\", \"domComplete\", \"loadEventStart\", \"loadEventEnd\"]\n                  , u = c.config\n                  , o = i.Math\n                  , l = o.max\n                  , g = o.floor\n                  , d = i.document || {}\n                  , f = (r || {}).navigationStart\n                  , v = f\n                  , p = 0\n                  , S = null;\n                if (i.Object.keys && [].forEach && !u[\"KillSwitch.\" + e]) {\n                    if (!r || null === f || f <= 0 || void 0 === f)\n                        return c.error(\"Invalid navigation timing data: \" + f);\n                    S = new E({\n                        schemaId: \"<ns>.PageLatency.6\",\n                        producerId: \"csa\"\n                    }),\n                    \"boolean\" != typeof d.hidden && \"string\" != typeof d.visibilityState || !d.removeEventListener ? c.emit(s) : b() ? (c.emit(s),\n                    I(n, f)) : c.on(d, t, function e() {\n                        b() && (v = c.time(),\n                        d.removeEventListener(t, e),\n                        I(m, v),\n                        I(n, v),\n                        c.emit(s))\n                    }),\n                    c.once(\"$unload\", h),\n                    c.once(\"$load\", h),\n                    c.on(\"$pageTransition\", function() {\n                        v = c.time()\n                    }),\n                    c.register(e, {\n                        mark: I,\n                        instance: function(e) {\n                            return new E(e)\n                        }\n                    })\n                }\n                function E(e) {\n                    var i, r = null, a = e.ent || {\n                        page: [\"pageType\", \"subPageType\", \"requestId\"]\n                    }, o = e.logger || c(\"Events\", {\n                        producerId: e.producerId,\n                        lob: u.lob || \"0\"\n                    });\n                    if (!e || !e.producerId || !e.schemaId)\n                        return c.error(\"The producer id and schema Id must be defined for PageLatencyInstance.\");\n                    function d() {\n                        return i || v\n                    }\n                    function n() {\n                        r = c.UUID()\n                    }\n                    this.mark = function(n, t) {\n                        if (null != n)\n                            return t = t || c.time(),\n                            n === m && (i = t),\n                            c.once(s, function() {\n                                o(\"log\", {\n                                    messageId: r,\n                                    __merge: function(e) {\n                                        e.markers[n] = function(e, n) {\n                                            return l(0, n - (e || v))\n                                        }(d(), t),\n                                        e.markerTimestamps[n] = g(t)\n                                    },\n                                    markers: {},\n                                    markerTimestamps: {},\n                                    navigationStartTimestamp: d() ? new Date(d()).toISOString() : null,\n                                    schemaId: e.schemaId\n                                }, {\n                                    ent: a\n                                })\n                            }),\n                            t\n                    }\n                    ,\n                    n(),\n                    c.on(\"$beforePageTransition\", n)\n                }\n                function I(e, n) {\n                    e === m && (v = n);\n                    var t = S.mark(e, n);\n                    c.emit(\"$timing:\" + e, t)\n                }\n                function h() {\n                    if (!p) {\n                        for (var e = 0; e < a.length; e++)\n                            r[a[e]] && I(a[e], r[a[e]]);\n                        p = 1\n                    }\n                }\n                function b() {\n                    return !d.hidden || \"visible\" === d.visibilityState\n                }\n            });\n            csa.plugin(function(c) {\n                var f, u, l = \"length\", a = \"parentElement\", t = \"target\", i = \"getEntriesByName\", e = null, r = \"_csa_flt\", o = \"_csa_llt\", s = \"previousSibling\", d = \"visuallyLoaded\", n = \"client\", g = \"offset\", h = \"scroll\", m = \"Width\", p = \"Height\", v = n + m, y = n + p, E = g + m, S = g + p, x = h + m, O = h + p, b = \"_osrc\", w = \"_elt\", I = \"_eid\", T = 10, _ = 5, L = 15, N = 100, k = c.global, B = c.timeout, H = k.Math, W = H.max, C = H.floor, F = H.ceil, M = k.document || {}, R = M.body || {}, Y = M.documentElement || {}, P = k.performance || {}, X = (P.timing || {}).navigationStart, $ = Date.now, D = Object.values || (c.types || {}).ovl, J = c(\"PageTiming\"), V = c(\"SpeedIndexBuffers\"), j = [], q = [], z = [], A = [], G = [], K = [], Q = .1, U = .1, Z = 0, ee = 0, ne = !0, te = 0, ie = 0, re = 1 == c.config[\"SpeedIndex.ForceReplay\"], oe = 0, ae = 1, fe = 0, ce = {}, ue = [], le = 0;\n                function se() {\n                    for (var e = $(), n = 0; f; ) {\n                        if (0 !== f[l]) {\n                            if (!1 !== f.h(f[0]) && f.shift(),\n                            n++,\n                            !re && n % T == 0 && $() - e > _)\n                                break\n                        } else\n                            f = f.n\n                    }\n                    Z = 0,\n                    f && (Z || (!0 === M.hidden ? (re = 1,\n                    se()) : c.timeout(se, 0)))\n                }\n                function de(e, n, t, i, r) {\n                    fe = C(e),\n                    j = n,\n                    q = t,\n                    z = i,\n                    K = r;\n                    var o = M.createTreeWalker(M.body, NodeFilter.SHOW_TEXT, null, null)\n                      , a = {\n                        w: k.innerWidth,\n                        h: k.innerHeight,\n                        x: k.pageXOffset,\n                        y: k.pageYOffset\n                    };\n                    M.body[w] = e,\n                    A.push({\n                        w: o,\n                        vp: a\n                    }),\n                    G.push({\n                        img: M.images,\n                        iter: 0\n                    }),\n                    j.h = ge,\n                    (j.n = q).h = he,\n                    (q.n = z).h = me,\n                    (z.n = A).h = pe,\n                    (A.n = G).h = ve,\n                    (G.n = K).h = ye,\n                    f = j,\n                    se()\n                }\n                function ge(e) {\n                    e.m.forEach(function(e) {\n                        for (var n = e; n && (e === n || !n[r] || !n[o]); )\n                            n[r] || (n[r] = e[r]),\n                            n[o] || (n[o] = e[o]),\n                            n[w] = n[r] - X,\n                            n = n[s]\n                    })\n                }\n                function he(e) {\n                    e.m.forEach(function(e) {\n                        var n = e[t];\n                        b in n || (n[b] = e.oldValue)\n                    })\n                }\n                function me(n) {\n                    n.m.forEach(function(e) {\n                        e[t][w] = n.t - X\n                    })\n                }\n                function pe(e) {\n                    for (var n, t = e.vp, i = e.w, r = T; (n = i.nextNode()) && 0 < r; ) {\n                        r -= 1;\n                        var o = (n[a] || {}).nodeName;\n                        \"SCRIPT\" !== o && \"STYLE\" !== o && \"NOSCRIPT\" !== o && \"BODY\" !== o && 0 !== (n.nodeValue || \"\").trim()[l] && be(n[a], Ee(n), t)\n                    }\n                    return !n\n                }\n                function ve(e) {\n                    for (var n = {\n                        w: k.innerWidth,\n                        h: k.innerHeight,\n                        x: k.pageXOffset,\n                        y: k.pageYOffset\n                    }, t = T; e.iter < e.img[l] && 0 < t; ) {\n                        var i, r = e.img[e.iter], o = Oe(r), a = o && Ee(o) || Ee(r);\n                        o ? (o[w] = a,\n                        i = xe(o.querySelector('[aria-posinset=\"1\"] img') || r) || a,\n                        r = o) : i = xe(r) || a,\n                        ie && u < i && (i = a),\n                        be(r, i, n),\n                        e.iter += 1,\n                        t -= 1\n                    }\n                    return e.img[l] <= e.iter\n                }\n                function ye(e) {\n                    var n = []\n                      , i = 0\n                      , r = 0\n                      , o = ee\n                      , t = k.innerHeight || W(R[O] || 0, R[S] || 0, Y[y] || 0, Y[O] || 0, Y[S] || 0)\n                      , a = C(e.y / N)\n                      , f = F((e.y + t) / N);\n                    ue.slice(a, f).forEach(function(e) {\n                        (e.elems || []).forEach(function(e) {\n                            e.lt in n || (n[e.lt] = {}),\n                            e.id in n[e.lt] || (i += (n[e.lt][e.id] = e).a)\n                        })\n                    }),\n                    D(n).forEach(function(e) {\n                        D(e).forEach(function(e) {\n                            var n = 1 - r / i\n                              , t = W(e.lt, o);\n                            le += n * (t - o),\n                            o = t,\n                            function(e, n) {\n                                var t;\n                                for (; Q <= 1 && Q - .01 <= e; )\n                                    we(d + (t = (100 * Q).toFixed(0)), n.lt),\n                                    \"50\" !== t && \"90\" !== t || c(\"Content\", {\n                                        target: n.e\n                                    })(\"mark\", d + t, X + F(n.lt || 0)),\n                                    Q += U\n                            }((r += e.a) / i, e)\n                        })\n                    }),\n                    ee = e.t - X,\n                    K[l] <= 1 && (we(\"speedIndex\", le),\n                    we(d + \"0\", fe)),\n                    ne && (ne = !1,\n                    we(\"atfSpeedIndex\", le))\n                }\n                function Ee(e) {\n                    for (var n = e[a], t = L; n && 0 < t; ) {\n                        if (n[w] || 0 === n[w])\n                            return W(n[w], fe);\n                        n = n.parentElement,\n                        t -= 1\n                    }\n                }\n                function Se(e, n) {\n                    if (e) {\n                        if (!e.indexOf(\"data:\"))\n                            return Ee(n);\n                        var t = P[i](e) || [];\n                        if (0 < t[l])\n                            return W(F(t[0].responseEnd || 0), fe)\n                    }\n                }\n                function xe(e) {\n                    return Se(e[b], e) || Se(e.currentSrc, e) || Se(e.src, e)\n                }\n                function Oe(e) {\n                    for (var n = 10, t = e.parentElement; t && 0 < n; ) {\n                        if (t.classList && t.classList.contains(\"a-carousel-viewport\"))\n                            return t;\n                        t = t.parentElement,\n                        n -= 1\n                    }\n                    return null\n                }\n                function be(e, n, t) {\n                    if ((n || 0 === n) && !e[I]) {\n                        var i = e.getBoundingClientRect()\n                          , r = i.width * i.height\n                          , o = t.w || W(R[x] || 0, R[E] || 0, Y[v] || 0, Y[x] || 0, Y[E] || 0) || i.right\n                          , a = i.width / 2\n                          , f = ae++;\n                        if (0 != r && !(a < i.right - o || i.right < a)) {\n                            for (var c = {\n                                e: e,\n                                lt: n,\n                                a: r,\n                                id: f\n                            }, u = C((i.top + t.y) / N), l = F((i.top + t.y + i.height) / N), s = u; s <= l; s++)\n                                s in ue || (ue[s] = {\n                                    elems: [],\n                                    lt: 0\n                                }),\n                                ue[s].elems.push(c);\n                            e[I] = f\n                        }\n                    }\n                }\n                function we(e, n) {\n                    J(\"mark\", e, X + F((ce[e] = n) || 0))\n                }\n                function Ie(e) {\n                    oe || (V(\"getBuffers\", de),\n                    oe = 1)\n                }\n                X && D && P[i] && (V(\"registerListener\", function() {\n                    ie && (clearTimeout(te),\n                    te = B(Ie.bind(e, \"Mut\"), 2500))\n                }),\n                c.once(\"$unload\", function() {\n                    re = 1,\n                    Ie()\n                }),\n                c.once(\"$load\", function() {\n                    ie = 1,\n                    u = $() - X,\n                    te = B(Ie.bind(e, \"Ld\"), 2500)\n                }),\n                c.once(\"$timing:functional\", Ie.bind(e, \"Fn\")),\n                V(\"replayModuleIsLive\"),\n                c.register(\"SpeedIndex\", {\n                    getMarkers: function(e) {\n                        e && e(JSON.parse(JSON.stringify(ce)))\n                    }\n                }))\n            });\n            csa.plugin(function(e) {\n                var m = !!e.config[\"LCP.elementDedup\"]\n                  , t = !1\n                  , n = e(\"PageTiming\")\n                  , r = e.global.PerformanceObserver\n                  , a = e.global.performance;\n                function i() {\n                    return a.timing.navigationStart\n                }\n                function o() {\n                    t || function(o) {\n                        var l = new r(function(e) {\n                            var t = e.getEntries();\n                            if (0 !== t.length) {\n                                var n = t[t.length - 1];\n                                if (m && \"\" !== n.id && n.element && \"IMG\" === n.element.tagName) {\n                                    for (var r = {}, a = t[0], i = 0; i < t.length; i++)\n                                        t[i].id in r || (\"\" !== t[i].id && (r[t[i].id] = !0),\n                                        a.startTime < t[i].startTime && (a = t[i]));\n                                    n = a\n                                }\n                                l.disconnect(),\n                                o({\n                                    startTime: n.startTime,\n                                    renderTime: n.renderTime,\n                                    loadTime: n.loadTime\n                                })\n                            }\n                        }\n                        );\n                        try {\n                            l.observe({\n                                type: \"largest-contentful-paint\",\n                                buffered: !0\n                            })\n                        } catch (e) {}\n                    }(function(e) {\n                        e && (t = !0,\n                        n(\"mark\", \"largestContentfulPaint\", Math.floor(e.startTime + i())),\n                        e.renderTime && n(\"mark\", \"largestContentfulPaint.render\", Math.floor(e.renderTime + i())),\n                        e.loadTime && n(\"mark\", \"largestContentfulPaint.load\", Math.floor(e.loadTime + i())))\n                    })\n                }\n                r && a && a.timing && (e.once(\"$unload\", o),\n                e.once(\"$load\", o),\n                e.register(\"LargestContentfulPaint\", {}))\n            });\n            csa.plugin(function(r) {\n                var e = r(\"Metrics\", {\n                    producerId: \"csa\"\n                })\n                  , n = r.global.PerformanceObserver;\n                n && (n = new n(function(r) {\n                    var t = r.getEntries();\n                    if (0 === t.length || !t[0].processingStart || !t[0].startTime)\n                        return;\n                    !function(r) {\n                        r = r || 0,\n                        n.disconnect(),\n                        0 <= r ? e(\"recordMetric\", \"firstInputDelay\", r) : e(\"recordMetric\", \"firstInputDelay.invalid\", 1)\n                    }(t[0].processingStart - t[0].startTime)\n                }\n                ),\n                function() {\n                    try {\n                        n.observe({\n                            type: \"first-input\",\n                            buffered: !0\n                        })\n                    } catch (r) {}\n                }())\n            });\n            csa.plugin(function(d) {\n                var e = \"Metrics\"\n                  , g = d.config\n                  , f = 0;\n                function r(i) {\n                    var c, t, e = i.producerId, r = i.logger, o = r || d(\"Events\", {\n                        producerId: e,\n                        lob: g.lob || \"0\"\n                    }), s = (i || {}).dimensions || {}, u = {}, n = -1;\n                    if (!e && !r)\n                        return d.error(\"Either a producer id or custom logger must be defined\");\n                    function a() {\n                        n !== f && (c = d.UUID(),\n                        t = d.UUID(),\n                        u = {},\n                        n = f)\n                    }\n                    this.recordMetric = function(r, n) {\n                        var e = i.logOptions || {\n                            ent: {\n                                page: [\"pageType\", \"subPageType\", \"requestId\"]\n                            }\n                        };\n                        e.debugMetric = i.debugMetric,\n                        a(),\n                        o(\"log\", {\n                            messageId: c,\n                            schemaId: i.schemaId || \"<ns>.Metric.4\",\n                            metrics: {},\n                            dimensions: s,\n                            __merge: function(e) {\n                                e.metrics[r] = n\n                            }\n                        }, e)\n                    }\n                    ,\n                    this.recordCounter = function(r, e) {\n                        var n = i.logOptions || {\n                            ent: {\n                                page: [\"pageType\", \"subPageType\", \"requestId\"]\n                            }\n                        };\n                        if (\"string\" != typeof r || \"number\" != typeof e || !isFinite(e))\n                            return d.error(\"Invalid type given for counter name or counter value: \" + r + \"/\" + e);\n                        a(),\n                        r in u || (u[r] = {});\n                        var c = u[r];\n                        \"f\"in c || (c.f = e),\n                        c.c = (c.c || 0) + 1,\n                        c.s = (c.s || 0) + e,\n                        c.l = e,\n                        o(\"log\", {\n                            messageId: t,\n                            schemaId: i.schemaId || \"<ns>.InternalCounters.3\",\n                            c: {},\n                            __merge: function(e) {\n                                r in e.c || (e.c[r] = {}),\n                                c.fs || (c.fs = 1,\n                                e.c[r].f = c.f),\n                                1 < c.c && (e.c[r].s = c.s,\n                                e.c[r].l = c.l,\n                                e.c[r].c = c.c)\n                            }\n                        }, n)\n                    }\n                }\n                g[\"KillSwitch.\" + e] || (new r({\n                    producerId: \"csa\"\n                }).recordMetric(\"baselineMetricEvent\", 1),\n                d.on(\"$beforePageTransition\", function() {\n                    f++\n                }),\n                d.register(e, {\n                    instance: function(e) {\n                        return new r(e || {})\n                    }\n                }))\n            });\n            csa.plugin(function(s) {\n                var n = s.config\n                  , r = (s.global.performance || {}).timing\n                  , c = (r || {}).navigationStart || s.time()\n                  , g = 0;\n                function e() {\n                    g += 1\n                }\n                function i(i) {\n                    i = i || {};\n                    var o = s.UUID()\n                      , t = g\n                      , r = i.producerId\n                      , e = i.logger\n                      , a = e || s(\"Events\", {\n                        producerId: r,\n                        lob: n.lob || \"0\"\n                    });\n                    if (!r && !e)\n                        return s.error(\"Either a producer id or custom logger must be defined\");\n                    this.mark = function(e, r) {\n                        var n = (void 0 === r ? s.time() : r) - c;\n                        t !== g && (t = g,\n                        o = s.UUID()),\n                        a(\"log\", {\n                            messageId: o,\n                            schemaId: i.schemaId || \"<ns>.Timer.1\",\n                            markers: {},\n                            __merge: function(r) {\n                                r.markers[e] = n\n                            }\n                        }, i.logOptions)\n                    }\n                }\n                r && (e(),\n                s.on(\"$beforePageTransition\", e),\n                s.register(\"Timers\", {\n                    instance: function(r) {\n                        return new i(r || {})\n                    }\n                }))\n            });\n            csa.plugin(function(t) {\n                var e = \"takeRecords\"\n                  , i = \"disconnect\"\n                  , n = \"function\"\n                  , o = t(\"Metrics\", {\n                    producerId: \"csa\"\n                })\n                  , c = t(\"PageTiming\")\n                  , a = t.global\n                  , u = t.timeout\n                  , r = t.on\n                  , f = a.PerformanceObserver\n                  , m = 0\n                  , l = !1\n                  , s = 0\n                  , d = a.performance\n                  , h = a.document\n                  , v = null\n                  , y = !1\n                  , g = t.blank;\n                function p() {\n                    l || (l = !0,\n                    clearTimeout(v),\n                    typeof f[e] === n && f[e](),\n                    typeof f[i] === n && f[i](),\n                    o(\"recordMetric\", \"documentCumulativeLayoutShift\", m),\n                    c(\"mark\", \"cumulativeLayoutShiftLastTimestamp\", Math.floor(s + d.timing.navigationStart)))\n                }\n                f && d && d.timing && h && (f = new f(function(t) {\n                    v && clearTimeout(v);\n                    t.getEntries().forEach(function(t) {\n                        t.hadRecentInput || (m += t.value,\n                        s < t.startTime && (s = t.startTime))\n                    }),\n                    v = u(p, 5e3)\n                }\n                ),\n                function() {\n                    try {\n                        f.observe({\n                            type: \"layout-shift\",\n                            buffered: !0\n                        }),\n                        v = u(p, 5e3)\n                    } catch (t) {}\n                }(),\n                g = r(h, \"click\", function(t) {\n                    y || (y = !0,\n                    o(\"recordMetric\", \"documentCumulativeLayoutShiftToFirstInput\", m),\n                    g())\n                }),\n                r(h, \"visibilitychange\", function() {\n                    \"hidden\" === h.visibilityState && p()\n                }),\n                t.once(\"$unload\", p))\n            });\n            csa.plugin(function(e) {\n                var t, n = e.global, r = n.PerformanceObserver, c = e(\"Metrics\", {\n                    producerId: \"csa\"\n                }), o = 0, i = 0, a = -1, l = n.Math, f = l.max, u = l.ceil;\n                if (r) {\n                    t = new r(function(e) {\n                        e.getEntries().forEach(function(e) {\n                            var t = e.duration;\n                            o += t,\n                            i += t,\n                            a = f(t, a)\n                        })\n                    }\n                    );\n                    try {\n                        t.observe({\n                            type: \"longtask\",\n                            buffered: !0\n                        })\n                    } catch (e) {}\n                    t = new r(function(e) {\n                        0 < e.getEntries().length && (i = 0,\n                        a = -1)\n                    }\n                    );\n                    try {\n                        t.observe({\n                            type: \"largest-contentful-paint\",\n                            buffered: !0\n                        })\n                    } catch (e) {}\n                    e.on(\"$unload\", g),\n                    e.on(\"$beforePageTransition\", g)\n                }\n                function g() {\n                    c(\"recordMetric\", \"totalBlockingTime\", u(i || 0)),\n                    c(\"recordMetric\", \"totalBlockingTimeInclLCP\", u(o || 0)),\n                    c(\"recordMetric\", \"maxBlockingTime\", u(a || 0)),\n                    i = o = 0,\n                    a = -1\n                }\n            });\n            csa.plugin(function(o) {\n                var e = \"CacheDetection\"\n                  , r = \"csa-ctoken-\"\n                  , c = o.store\n                  , t = o.deleteStored\n                  , n = o.config\n                  , i = n[e + \".RequestID\"]\n                  , a = n[e + \".Callback\"]\n                  , s = o.global\n                  , u = s.document || {}\n                  , d = s.Date\n                  , l = o(\"Events\")\n                  , f = o(\"Events\", {\n                    producerId: \"csa\",\n                    lob: n.lob || \"0\"\n                });\n                function p(e) {\n                    try {\n                        var c = u.cookie.match(RegExp(\"(^| )\" + e + \"=([^;]+)\"));\n                        return c && c[2].trim()\n                    } catch (e) {}\n                }\n                n[\"KillSwitch.\" + e] || (function() {\n                    var e = function() {\n                        var e = p(\"cdn-rid\");\n                        if (e)\n                            return {\n                                r: e,\n                                s: \"cdn\"\n                            }\n                    }() || function() {\n                        if (o.store(r + i))\n                            return {\n                                r: o.UUID().toUpperCase().replace(/-/g, \"\").slice(0, 20),\n                                s: \"device\"\n                            }\n                    }() || {}\n                      , c = e.r\n                      , n = e.s;\n                    if (!!c) {\n                        var t = p(\"session-id\");\n                        !function(e, c, n, t) {\n                            l(\"setEntity\", {\n                                page: {\n                                    pageSource: \"cache\",\n                                    requestId: e,\n                                    cacheRequestId: i,\n                                    cacheSource: t\n                                },\n                                session: {\n                                    id: n\n                                }\n                            })\n                        }(c, 0, t, n),\n                        \"device\" === n && f(\"log\", {\n                            schemaId: \"<ns>.CacheImpression.2\"\n                        }, {\n                            ent: \"all\"\n                        }),\n                        a && a(c, t, n)\n                    }\n                }(),\n                c(r + i, d.now() + 36e5),\n                o.once(\"$load\", function() {\n                    var n = d.now();\n                    t(function(e, c) {\n                        return 0 == e.indexOf(r) && parseInt(c) < n\n                    })\n                }))\n            });\n            csa.plugin(function(u) {\n                var i, t = \"Content\", e = \"MutationObserver\", n = \"addedNodes\", a = \"querySelectorAll\", f = \"matches\", r = \"getAttributeNames\", o = \"getAttribute\", s = \"dataset\", c = \"widget\", l = \"producerId\", d = \"slotId\", h = \"iSlotId\", g = {\n                    ent: {\n                        element: 1,\n                        page: [\"pageType\", \"subPageType\", \"requestId\"]\n                    }\n                }, p = 5, m = u.config[t + \".BubbleUp.SearchDepth\"] || 35, y = u.config[t + \".SearchPage\"] || 0, v = \"csaC\", b = v + \"Id\", E = \"logRender\", w = {}, I = u.config, O = I[t + \".Selectors\"] || [], C = I[t + \".WhitelistedAttributes\"] || {\n                    href: 1,\n                    class: 1\n                }, N = I[t + \".EnableContentEntities\"], S = I[\"KillSwitch.ContentRendered\"], k = u.global, A = k.document || {}, U = A.documentElement, L = k.HTMLElement, R = {}, _ = [], j = function(t, e, n, i) {\n                    var o = this\n                      , r = u(\"Events\", {\n                        producerId: t || \"csa\",\n                        lob: I.lob || \"0\"\n                    });\n                    e.type = e.type || c,\n                    o.id = e.id,\n                    o.l = r,\n                    o.e = e,\n                    o.el = n,\n                    o.rt = i,\n                    o.dlo = g,\n                    o.op = W(n, \"csaOp\"),\n                    o.log = function(t, e) {\n                        r(\"log\", t, e || g)\n                    }\n                    ,\n                    o.entities = function(t) {\n                        t(e)\n                    }\n                    ,\n                    e.id && r(\"setEntity\", {\n                        element: e\n                    })\n                }, x = j.prototype;\n                function D(t) {\n                    var e = (t = t || {}).element\n                      , n = t.target;\n                    return e ? function(t, e) {\n                        var n;\n                        n = t instanceof L ? K(t) || Y(e[l], t, z, u.time()) : R[t.id] || H(e[l], 0, t, u.time());\n                        return n\n                    }(e, t) : n ? M(n) : u.error(\"No element or target argument provided.\")\n                }\n                function M(t) {\n                    var e = function(t) {\n                        var e = null\n                          , n = 0;\n                        for (; t && n < m; ) {\n                            if (n++,\n                            P(t, b)) {\n                                e = t;\n                                break\n                            }\n                            t = t.parentElement\n                        }\n                        return e\n                    }(t);\n                    return e ? K(e) : new j(\"csa\",{\n                        id: null\n                    },null,u.time())\n                }\n                function P(t, e) {\n                    if (t && t.dataset)\n                        return t.dataset[e]\n                }\n                function T(t, e, n) {\n                    _.push({\n                        n: n,\n                        e: t,\n                        t: e\n                    }),\n                    B()\n                }\n                function q() {\n                    for (var t = u.time(), e = 0; 0 < _.length; ) {\n                        var n = _.shift();\n                        if (w[n.n](n.e, n.t),\n                        ++e % 10 == 0 && u.time() - t > p)\n                            break\n                    }\n                    i = 0,\n                    _.length && B()\n                }\n                function B() {\n                    i = i || u.raf(q)\n                }\n                function X(t, e, n) {\n                    return {\n                        n: t,\n                        e: e,\n                        t: n\n                    }\n                }\n                function Y(t, e, n, i) {\n                    var o = u.UUID()\n                      , r = {\n                        id: o\n                    }\n                      , c = M(e);\n                    return e[s][b] = o,\n                    n(r, e),\n                    c && c.id && (r.parentId = c.id),\n                    H(t, e, r, i)\n                }\n                function $(t) {\n                    return isNaN(t) ? null : Math.round(t)\n                }\n                function H(t, e, n, i) {\n                    N && (n.schemaId = \"<ns>.ContentEntity.2\"),\n                    n.id = n.id || u.UUID();\n                    var o = new j(t,n,e,i);\n                    return function(t) {\n                        return !S && ((t.op || {}).hasOwnProperty(E) || y)\n                    }(o) && function(t, e) {\n                        var n = {}\n                          , i = u.exec($);\n                        t.el && (n = t.el.getBoundingClientRect()),\n                        t.log({\n                            schemaId: \"<ns>.ContentRender.3\",\n                            timestamp: e,\n                            width: i(n.width),\n                            height: i(n.height),\n                            positionX: i(n.left + k.pageXOffset),\n                            positionY: i(n.top + k.pageYOffset)\n                        })\n                    }(o, i),\n                    u.emit(\"$content.register\", o),\n                    R[n.id] = o\n                }\n                function K(t) {\n                    return R[(t[s] || {})[b]]\n                }\n                function W(n, i) {\n                    var o = {};\n                    return r in (n = n || {}) && Object.keys(n[s]).forEach(function(t) {\n                        if (!t.indexOf(i) && i.length < t.length) {\n                            var e = function(t) {\n                                return (t[0] || \"\").toLowerCase() + t.slice(1)\n                            }(t.slice(i.length));\n                            o[e] = n[s][t]\n                        }\n                    }),\n                    o\n                }\n                function z(t, e) {\n                    r in e && (function(t, e) {\n                        var n = W(t, v);\n                        Object.keys(n).forEach(function(t) {\n                            e[t] = n[t]\n                        })\n                    }(e, t),\n                    d in t && (t[h] = t[d]),\n                    function(e, n) {\n                        (e[r]() || []).forEach(function(t) {\n                            t in C && (n[t] = e[o](t))\n                        })\n                    }(e, t))\n                }\n                U && A[a] && k[e] && (O.push({\n                    selector: \"*[data-csa-c-type]\",\n                    entity: z\n                }),\n                O.push({\n                    selector: \".celwidget\",\n                    entity: function(t, e) {\n                        z(t, e),\n                        t[d] = t[d] || e[o](\"cel_widget_id\") || e.id,\n                        t.legacyId = e[o](\"cel_widget_id\") || e.id,\n                        t.type = t.type || c\n                    }\n                }),\n                w[1] = function(t, e) {\n                    t.forEach(function(t) {\n                        t[n] && t[n].constructor && \"NodeList\" === t[n].constructor.name && Array.prototype.forEach.call(t[n], function(t) {\n                            _.unshift(X(2, t, e))\n                        })\n                    })\n                }\n                ,\n                w[2] = function(r, c) {\n                    a in r && f in r && O.forEach(function(t) {\n                        for (var e = t.selector, n = r[f](e), i = r[a](e), o = i.length - 1; 0 <= o; o--)\n                            _.unshift(X(3, {\n                                e: i[o],\n                                s: t\n                            }, c));\n                        n && _.unshift(X(3, {\n                            e: r,\n                            s: t\n                        }, c))\n                    })\n                }\n                ,\n                w[3] = function(t, e) {\n                    var n = t.e;\n                    K(n) || Y(\"csa\", n, t.s.entity, e)\n                }\n                ,\n                w[4] = function() {\n                    u.register(t, {\n                        instance: D\n                    })\n                }\n                ,\n                new k[e](function(t) {\n                    T(t, u.time(), 1)\n                }\n                ).observe(U, {\n                    childList: !0,\n                    subtree: !0\n                }),\n                T(U, u.time(), 2),\n                T(null, u.time(), 4),\n                u.on(\"$content.export\", function(e) {\n                    Object.keys(e).forEach(function(t) {\n                        x[t] = e[t]\n                    })\n                }))\n            });\n            csa.plugin(function(o) {\n                var i, t = \"ContentImpressions\", e = \"KillSwitch.\", n = \"IntersectionObserver\", r = \"getAttribute\", s = \"dataset\", c = \"intersectionRatio\", a = \"csaCId\", m = 1e3, l = o.global, f = o.config, u = f[e + t], v = f[e + t + \".ContentViews\"], g = ((l.performance || {}).timing || {}).navigationStart || o.time(), d = {};\n                function h(t) {\n                    t && (t.v = 1,\n                    function(t) {\n                        t.vt = o.time(),\n                        t.el.log({\n                            schemaId: \"<ns>.ContentView.4\",\n                            timeToViewed: t.vt - t.el.rt,\n                            pageFirstPaintToElementViewed: t.vt - g\n                        })\n                    }(t))\n                }\n                function I(t) {\n                    t && !t.it && (t.i = o.time() - t.is > m,\n                    function(t) {\n                        t.it = o.time(),\n                        t.el.log({\n                            schemaId: \"<ns>.ContentImpressed.3\",\n                            timeToImpressed: t.it - t.el.rt,\n                            pageFirstPaintToElementImpressed: t.it - g\n                        })\n                    }(t))\n                }\n                !u && l[n] && (i = new l[n](function(t) {\n                    var n = o.time();\n                    t.forEach(function(t) {\n                        var e = function(t) {\n                            if (t && t[r])\n                                return d[t[s][a]]\n                        }(t.target);\n                        if (e) {\n                            o.emit(\"$content.intersection\", {\n                                meta: e.el,\n                                t: n,\n                                e: t\n                            });\n                            var i = t.intersectionRect;\n                            t.isIntersecting && 0 < i.width && 0 < i.height && (v || e.v || h(e),\n                            .5 <= t[c] && !e.is && (e.is = n,\n                            e.timer = o.timeout(function() {\n                                I(e)\n                            }, m))),\n                            t[c] < .5 && !e.it && e.timer && (l.clearTimeout(e.timer),\n                            e.is = 0,\n                            e.timer = 0)\n                        }\n                    })\n                }\n                ,{\n                    threshold: [0, .5, .99]\n                }),\n                o.on(\"$content.register\", function(t) {\n                    var e = t.el;\n                    e && (d[t.id] = {\n                        el: t,\n                        v: 0,\n                        i: 0,\n                        is: 0,\n                        vt: 0,\n                        it: 0\n                    },\n                    i.observe(e))\n                }))\n            });\n            csa.plugin(function(e) {\n                e.config[\"KillSwitch.ContentLatency\"] || e.emit(\"$content.export\", {\n                    mark: function(t, n) {\n                        var o = this;\n                        o.t || (o.t = e(\"Timers\", {\n                            logger: o.l,\n                            schemaId: \"<ns>.ContentLatency.4\",\n                            logOptions: o.dlo\n                        })),\n                        o.t(\"mark\", t, n)\n                    }\n                })\n            });\n            csa.plugin(function(t) {\n                function n(i, e, o) {\n                    var c = {};\n                    function r(t, n, e) {\n                        t in c && o <= n - c[t].s && (function(n, e, i) {\n                            if (!p)\n                                return;\n                            E(function(t) {\n                                T(n, t),\n                                t.w[n][e] = a((t.w[n][e] || 0) + i)\n                            })\n                        }(t, i, n - c[t].d),\n                        c[t].d = n),\n                        e || delete c[t]\n                    }\n                    this.update = function(t, n) {\n                        n.isIntersecting && e <= n.intersectionRatio ? function(t, n) {\n                            t in c || (c[t] = {\n                                s: n,\n                                d: n\n                            })\n                        }(t, u()) : r(t, u())\n                    }\n                    ,\n                    this.stopAll = function(t) {\n                        var n = u();\n                        for (var e in c)\n                            r(e, n, t)\n                    }\n                    ,\n                    this.reset = function() {\n                        var t = u();\n                        for (var n in c)\n                            c[n].s = t,\n                            c[n].d = t\n                    }\n                }\n                var e = t.config\n                  , u = t.time\n                  , i = \"ContentInteractionsSummary\"\n                  , o = e[i + \".FlushInterval\"] || 5e3\n                  , c = e[i + \".FlushBackoff\"] || 1.5\n                  , r = t.global\n                  , s = t.on\n                  , a = Math.floor\n                  , f = (r.document || {}).documentElement || {}\n                  , l = ((r.performance || {}).timing || {}).responseStart || t.time()\n                  , d = o\n                  , m = 0\n                  , p = !0\n                  , v = t.UUID()\n                  , g = t(\"Events\", {\n                    producerId: \"csa\",\n                    lob: e.lob || \"0\"\n                })\n                  , w = new n(\"it0\",0,0)\n                  , I = new n(\"it50\",.5,1e3)\n                  , h = new n(\"it100\",.99,0)\n                  , b = {}\n                  , A = {};\n                function $() {\n                    w.stopAll(!0),\n                    I.stopAll(!0),\n                    h.stopAll(!0),\n                    S()\n                }\n                function C() {\n                    w.reset(),\n                    I.reset(),\n                    h.reset(),\n                    S()\n                }\n                function S() {\n                    d && (clearTimeout(m),\n                    m = t.timeout($, d),\n                    d *= c)\n                }\n                function U(n) {\n                    E(function(t) {\n                        T(n, t),\n                        t.w[n].mc = (t.w[n].mc || 0) + 1\n                    })\n                }\n                function E(t) {\n                    g(\"log\", {\n                        messageId: v,\n                        schemaId: \"<ns>.ContentInteractionsSummary.2\",\n                        w: {},\n                        __merge: t\n                    }, {\n                        ent: {\n                            page: [\"requestId\"]\n                        }\n                    })\n                }\n                function T(t, n) {\n                    t in n.w || (n.w[t] = {})\n                }\n                e[\"KillSwitch.\" + i] || (s(\"$content.intersection\", function(t) {\n                    if (t && t.meta && t.e) {\n                        var n = t.meta.id;\n                        if (n in b) {\n                            var e = t.e.boundingClientRect || {};\n                            e.width < 5 || e.height < 5 || (w.update(n, t.e),\n                            I.update(n, t.e),\n                            h.update(n, t.e),\n                            !t.e.isIntersecting || n in A || (A[n] = 1,\n                            function(n, e) {\n                                E(function(t) {\n                                    T(n, t),\n                                    t.w[n].ttfv = a(e)\n                                })\n                            }(n, u() - l)))\n                        }\n                    }\n                }),\n                s(\"$content.register\", function(t) {\n                    (t.e || {}).slotId && (b[t.id] = {},\n                    function(e) {\n                        E(function(t) {\n                            var n = e.id;\n                            T(n, t),\n                            t.w[n].sid = (e.e || {}).slotId,\n                            t.w[n].cid = (e.e || {}).contentId\n                        })\n                    }(t))\n                }),\n                s(\"$beforePageTransition\", function() {\n                    $(),\n                    C(),\n                    v = t.UUID(),\n                    S()\n                }),\n                s(\"$beforeunload\", function() {\n                    w.stopAll(),\n                    I.stopAll(),\n                    h.stopAll(),\n                    d = null\n                }),\n                s(\"$visible\", function(t) {\n                    t ? C() : ($(),\n                    clearTimeout(m)),\n                    p = t\n                }, {\n                    buffered: 1\n                }),\n                s(f, \"click\", function(t) {\n                    for (var n = t.target, e = 25; n && 0 < e; ) {\n                        var i = (n.dataset || {}).csaCId;\n                        i && U(i),\n                        n = n.parentElement,\n                        e -= 1\n                    }\n                }, {\n                    capture: !0,\n                    passive: !0\n                }),\n                S())\n            });\n            csa.plugin(function(d) {\n                var t, o, e = \"normal\", c = \"reload\", i = \"history\", s = \"new-tab\", n = \"ajax\", r = 1, a = 2, u = \"lastActive\", l = \"lastInteraction\", f = \"used\", p = \"csa-tabbed-browsing\", y = \"visibilityState\", g = \"page\", v = \"experience\", b = \"request\", I = \"initialized\", m = {\n                    \"back-memory-cache\": 1,\n                    \"tab-switch\": 1,\n                    \"history-navigation-page-cache\": 1\n                }, h = \"TabbedBrowsing\", T = \"<ns>.\" + h + \".4\", S = \"visible\", w = d.global, x = d.config, P = d(\"Events\", {\n                    producerId: \"csa\",\n                    lob: x.lob || \"0\"\n                }), q = w.location || {}, z = w.document, A = w.JSON, C = ((w.performance || {}).navigation || {}).type, E = d.store, O = d.on, $ = d.storageSupport(), k = !1, R = {}, j = {}, B = {}, J = {}, K = {}, M = !1, N = !1, D = !1, F = 0, G = x[\"CSA.isRunningInsideMShop\"];\n                function H(e) {\n                    try {\n                        return A.parse(E(p, void 0, {\n                            session: e\n                        }) || \"{}\") || {}\n                    } catch (e) {\n                        d.error('Could not parse storage value for key \"' + p + '\": ' + e)\n                    }\n                    return {}\n                }\n                function L(e, i) {\n                    E(p, A.stringify(i || {}), {\n                        session: e\n                    })\n                }\n                function Q(e) {\n                    var i = j.tid || e.id\n                      , t = {}\n                      , n = R[u] || {};\n                    for (var r in n)\n                        n.hasOwnProperty(r) && (t[r] = n[r]);\n                    !G && t.tid !== i || (t.tid = i,\n                    t.pid = e.id,\n                    t.ent = K),\n                    J = {\n                        pid: e.id,\n                        tid: i,\n                        ent: K,\n                        lastInteraction: j[l] || {},\n                        initialized: !0\n                    },\n                    B = {\n                        lastActive: t,\n                        lastInteraction: R[l] || {},\n                        time: d.time(),\n                        initialized: !0\n                    }\n                }\n                function U(e) {\n                    var i = e === s\n                      , t = z.referrer\n                      , n = !(t && t.length) || !~t.indexOf(q.origin || \"\")\n                      , r = i && !G && n\n                      , a = {\n                        type: e,\n                        toTabId: J.tid,\n                        toPageId: J.pid,\n                        transitTime: d.time() - R.time || null\n                    };\n                    r || function(e, i, t) {\n                        var n = e === c\n                          , r = i || G && !(j[I] && j.ent) ? R[u] || {} : j\n                          , a = R[l] || {}\n                          , d = j[l] || {}\n                          , o = i || G && !(d.id && !d[f]) ? a : d;\n                        t.fromTabId = r.tid,\n                        t.fromPageId = r.pid;\n                        var s = r.ent || {};\n                        s.rid && (t.fromRequestId = s.rid || null),\n                        s.ety && (t.fromExperienceType = s.ety || null),\n                        s.esty && (t.fromExperienceSubType = s.esty || null),\n                        n || !o.id || o[f] || (t.interactionId = o.id || null,\n                        o.sid && (t.interactionSlotId = o.sid || null),\n                        a.id === o.id && (a[f] = !0),\n                        d.id === o.id && (d[f] = !0))\n                    }(e, i, a),\n                    P(\"log\", {\n                        navigation: a,\n                        schemaId: T\n                    }, {\n                        ent: {\n                            page: [\"pageType\", \"subPageType\", \"requestId\"]\n                        }\n                    })\n                }\n                function V(e) {\n                    D = function(e) {\n                        return e && e in m\n                    }(e.transitionType),\n                    function() {\n                        R = H(!1),\n                        j = H(!0);\n                        var e = R[l]\n                          , i = j[l]\n                          , t = !1\n                          , n = !1;\n                        e && i && e.id === i.id && e[f] !== i[f] && (t = !e[f],\n                        n = !i[f],\n                        i[f] = e[f] = !0,\n                        t && L(!1, R),\n                        n && L(!0, j))\n                    }(),\n                    Q(e),\n                    M = !0,\n                    function(e) {\n                        var i, t;\n                        i = X(),\n                        t = Z(!0),\n                        (i || t) && Q(e)\n                    }(e),\n                    F = 1\n                }\n                function W() {\n                    k && !D ? U(n) : (k = !0,\n                    function() {\n                        if (C === a || D)\n                            U(i);\n                        else if (C === r)\n                            U(j[I] ? c : s);\n                        else {\n                            U(j[I] || G && R[I] ? e : s)\n                        }\n                    }())\n                }\n                function X() {\n                    var e = t\n                      , i = {};\n                    return !!(M && e && e.e && e.w) && (e.w(\"entities\", function(e) {\n                        i = e || {}\n                    }),\n                    j[l] = {\n                        id: e.e.messageId,\n                        sid: i.slotId,\n                        used: !(R[l] = {\n                            id: e.e.messageId,\n                            sid: i.slotId,\n                            used: !1\n                        })\n                    },\n                    !(t = null))\n                }\n                function Y(e, i, t, n) {\n                    var r = !1\n                      , a = e[u];\n                    return N ? (!a || a.tid !== J.tid || !a[S] || a.pid !== t || !a.ent && n || n && function(e, i) {\n                        var t = e || {}\n                          , n = i || {};\n                        return t.rid !== n.rid || t.ety !== n.ety || t.esty !== n.esty\n                    }(a.ent, n)) && (e[u] = {\n                        visible: !0,\n                        pid: t,\n                        tid: i,\n                        ent: n\n                    },\n                    r = !0) : !G && a && a.tid === J.tid && a[S] && (r = !(a[S] = !1)),\n                    r\n                }\n                function Z(e) {\n                    var i = !1;\n                    if (N = G && e || z[y] === S,\n                    M) {\n                        var t = R[u] || {};\n                        i = Y(R, j.tid || t.tid || J.tid, j.pid || t.pid || J.pid, j.ent || t.ent || J.ent)\n                    }\n                    return i\n                }\n                x[\"KillSwitch.\" + h] || $.local && $.session && A && z && y in z && (o = function() {\n                    try {\n                        return w.self !== w.top\n                    } catch (e) {\n                        return !0\n                    }\n                }(),\n                O(\"$entities.set\", function(e) {\n                    if (!o && e) {\n                        var i = (e[b] || {}).id || (e[g] || {}).requestId\n                          , t = (e[v] || {}).experienceType || (e[g] || {}).pageType\n                          , n = (e[v] || {}).experienceSubType || (e[g] || {}).subPageType\n                          , r = !K.rid && i || !K.ety && t || !K.esty && n;\n                        if (K.rid = K.rid || i,\n                        K.ety = K.ety || t,\n                        K.esty = K.esty || n,\n                        r && F) {\n                            var a = R[u] || {};\n                            a.tid === j.tid && (a.ent = K,\n                            L(!1, R)),\n                            j.ent = K,\n                            L(!0, j)\n                        }\n                    }\n                }, {\n                    buffered: 1\n                }),\n                O(\"$pageChange\", function(e) {\n                    o || (V(e),\n                    W(),\n                    L(!1, B),\n                    L(!0, J),\n                    j = J,\n                    R = B)\n                }, {\n                    buffered: 1\n                }),\n                O(\"$content.interaction\", function(e) {\n                    t = e,\n                    X() && (L(!1, R),\n                    L(!0, j))\n                }),\n                O(z, \"visibilitychange\", function() {\n                    !o && Z() && L(!1, R)\n                }, {\n                    capture: !1,\n                    passive: !0\n                }))\n            });\n            csa.plugin(function(c) {\n                var e = c(\"Metrics\", {\n                    producerId: \"csa\"\n                });\n                c.on(c.global, \"pageshow\", function(c) {\n                    c && c.persisted && e(\"recordMetric\", \"bfCache\", 1)\n                })\n            });\n            csa.plugin(function(o) {\n                var r, e = \"ResourceLatency\", t = \"clearResourceTimings\", c = [\"xmlhttprequest\", \"fetch\", \"beacon\"], i = {\n                    connectEnd: \"ce\",\n                    connectStart: \"cs\",\n                    decodedBodySize: \"dbs\",\n                    domainLookupEnd: \"dle\",\n                    domainLookupStart: \"dls\",\n                    duration: \"d\",\n                    encodedBodySize: \"ebs\",\n                    entryType: \"et\",\n                    fetchStart: \"fs\",\n                    initiatorType: \"it\",\n                    name: \"n\",\n                    nextHopProtocol: \"nhp\",\n                    redirectEnd: \"re\",\n                    redirectStart: \"rs\",\n                    requestStart: \"rqs\",\n                    responseEnd: \"rpe\",\n                    responseStart: \"rps\",\n                    secureConnectionStart: \"scs\",\n                    startTime: \"st\",\n                    transferSize: \"ts\",\n                    deliveryType: \"dt\",\n                    renderBlockingStatus: \"rbs\"\n                }, a = {\n                    serverTiming: \"srv\"\n                }, n = \"recordMetric\", s = \"resource\", d = \"observe\", u = o.config[e + \".MaxImageLookups\"] || 50, f = o.global, p = f.document, l = f.performance, g = f.PerformanceObserver, y = o.config, m = o.on, v = o(\"Events\", {\n                    producerId: \"csa\",\n                    lob: y.lob || \"0\"\n                }), S = o(\"Metrics\", {\n                    producerId: \"csa\"\n                }), b = 0, h = 0, T = ((l || {}).timing || {}).navigationStart, E = {}, I = 0, L = 0;\n                function x(e) {\n                    e = e.getEntries(),\n                    h += e.length,\n                    e.forEach(function(e) {\n                        var r = e.initiatorType;\n                        if (!(250 <= b || ~c.indexOf(r))) {\n                            var t = function(e, r) {\n                                if (u <= L || \"img\" !== r)\n                                    return;\n                                !function() {\n                                    for (var e = p.images || [], r = I; r < e.length; r++)\n                                        E[e[r].src] = e[r];\n                                    I = e.length\n                                }();\n                                var t = E[e];\n                                t && (L += 1);\n                                return t\n                            }(e.name, r)\n                              , n = function(e) {\n                                var r, t = {\n                                    schemaId: \"<ns>.ResourceLatency.6\",\n                                    ns: T\n                                };\n                                for (var n in e)\n                                    n in i && (t[i[n]] = (\"number\" == typeof (r = e[n]) && (r = Math.floor(r)),\n                                    r)),\n                                    n in a && (t[a[n]] = JSON.stringify(e[n]));\n                                return t\n                            }(e);\n                            t ? o(\"Content\", {\n                                target: t\n                            })(\"log\", n, {\n                                ent: {\n                                    element: [\"slotId\"]\n                                }\n                            }) : v(\"log\", n, {\n                                ent: {\n                                    page: [\"pageType\", \"requestId\"]\n                                }\n                            }),\n                            b++\n                        }\n                    })\n                }\n                function k() {\n                    S(n, \"TotalResourceLatencyCount\", h),\n                    l[t](),\n                    h = b = 0\n                }\n                y[\"KillSwitch.\" + e] || l && l[t] && T && g && o.exec(function() {\n                    r = new g(x);\n                    try {\n                        r[d]({\n                            type: s,\n                            buffered: !0\n                        })\n                    } catch (e) {\n                        try {\n                            r[d]({\n                                entryTypes: [s]\n                            })\n                        } catch (e) {\n                            o.warn(\"PerformanceEntry resource is not supported\")\n                        }\n                    }\n                    m(\"$beforePageTransition\", k),\n                    m(\"$beforeunload\", k)\n                })()\n            });\n            csa.plugin(function(n) {\n                var e, t, i, o, r, a, c, u, f, s, l, d, p, g, m, v, h, b, y = \"hasFocus\", S = \"$app.\", T = \"avail\", $ = \"client\", w = \"document\", I = \"inner\", P = \"offset\", D = \"screen\", C = \"scroll\", E = \"Width\", F = \"Height\", O = T + E, q = T + F, x = $ + E, z = $ + F, H = I + E, K = I + F, M = P + E, W = P + F, X = C + E, Y = C + F, j = \"up\", k = \"down\", A = \"none\", B = 20, G = n.config, J = G[\"KillSwitch.PageInteractionsSummary\"], L = n(\"Events\", {\n                    producerId: \"csa\",\n                    lob: G.lob || \"0\"\n                }), N = 1, Q = n.global || {}, R = n.time, U = n.on, V = n.once, Z = Q[w] || {}, _ = Q[D] || {}, nn = Q.Math || {}, en = nn.abs, tn = nn.max, on = nn.ceil, rn = ((Q.performance || {}).timing || {}).responseStart, an = function() {\n                    return Z[y]()\n                }, cn = 1, un = 100, fn = {}, sn = 1, ln = 0, dn = 0, pn = k, gn = A;\n                function mn() {\n                    c = t = o = r = e,\n                    i = d = 0,\n                    a = u = f = s = l = 0,\n                    pn = k,\n                    gn = A,\n                    dn = ln = 0,\n                    yn(),\n                    bn()\n                }\n                function vn() {\n                    rn && !o && (c = on((o = p) - rn),\n                    sn = 1)\n                }\n                function hn() {\n                    var n = m - i;\n                    (!t || t && t <= p) && (n && (++a,\n                    sn = dn = 1),\n                    i = m,\n                    n),\n                    function() {\n                        if (gn = d < m ? k : j,\n                        pn !== gn) {\n                            var n = en(m - d);\n                            B < n && (++l,\n                            ln && !dn && ++a,\n                            pn = gn,\n                            sn = ln = 1,\n                            d = m,\n                            dn = 0)\n                        } else\n                            dn = 0,\n                            d = m\n                    }(),\n                    t = p + un\n                }\n                function bn() {\n                    u = on(tn(u, m + b)),\n                    g && (f = on(tn(f, g + h))),\n                    sn = 1\n                }\n                function yn() {\n                    p = R(),\n                    g = en(Q.pageXOffset || 0),\n                    m = tn(Q.pageYOffset || 0, 0),\n                    v = 0 < g || 0 < m,\n                    h = Q[H] || 0,\n                    b = Q[K] || 0\n                }\n                function Sn() {\n                    yn(),\n                    vn(),\n                    hn(),\n                    bn()\n                }\n                function Tn() {\n                    if (r) {\n                        var n = on(R() - r);\n                        s += n,\n                        r = e,\n                        sn = 0 < n\n                    }\n                }\n                function $n() {\n                    r = r || R()\n                }\n                function wn(n, e, t, i) {\n                    e[n + E] = on(t || 0),\n                    e[n + F] = on(i || 0)\n                }\n                function In(n) {\n                    var e = n === fn\n                      , t = an();\n                    if (t || sn) {\n                        if (!e) {\n                            if (!N)\n                                return;\n                            N = 0,\n                            t && Tn()\n                        }\n                        var i = function() {\n                            var n = {}\n                              , e = Z.documentElement || {}\n                              , t = Z.body || {};\n                            return wn(\"availableScreen\", n, _[O], _[q]),\n                            wn(w, n, tn(t[X] || 0, t[M] || 0, e[x] || 0, e[X] || 0, e[M] || 0), tn(t[Y] || 0, t[W] || 0, e[z] || 0, e[Y] || 0, e[W] || 0)),\n                            wn(D, n, _.width, _.height),\n                            wn(\"viewport\", n, Q[H], Q[K]),\n                            n\n                        }()\n                          , o = function() {\n                            var n = {\n                                scrollCounts: a,\n                                reachedDepth: u,\n                                horizontalScrollDistance: f,\n                                dwellTime: s,\n                                vScrollDirChanges: l\n                            };\n                            return \"number\" == typeof c && (n.clientTimeToFirstScroll = c),\n                            n\n                        }();\n                        e ? sn = 0 : (mn(),\n                        rn = R(),\n                        t && (r = rn)),\n                        L(\"log\", {\n                            activity: o,\n                            dimensions: i,\n                            schemaId: \"<ns>.PageInteractionsSummary.3\"\n                        }, {\n                            ent: {\n                                page: [\"pageType\", \"subPageType\", \"requestId\"]\n                            }\n                        })\n                    }\n                }\n                function Pn() {\n                    Tn(),\n                    In(fn)\n                }\n                function Dn(n, e) {\n                    return function() {\n                        cn = e,\n                        n()\n                    }\n                }\n                function Cn() {\n                    an = function() {\n                        return cn\n                    }\n                    ,\n                    cn && !r && (r = R())\n                }\n                \"function\" != typeof Z[y] || J || (mn(),\n                v && vn(),\n                U(Q, C, Sn, {\n                    passive: !0\n                }),\n                U(Q, \"blur\", Pn),\n                U(Q, \"focus\", Dn($n, 1)),\n                V(S + \"android\", Cn),\n                V(S + \"ios\", Cn),\n                U(S + \"pause\", Dn(Pn, 0)),\n                U(S + \"resume\", Dn($n, 1)),\n                U(S + \"resign\", Dn(Pn, 0)),\n                U(S + \"active\", Dn($n, 1)),\n                an() && (r = rn || R()),\n                V(\"$beforeunload\", In),\n                U(\"$beforeunload\", In),\n                U(\"$document.hidden\", Pn),\n                U(\"$beforePageTransition\", In),\n                U(\"$afterPageTransition\", function() {\n                    sn = N = 1\n                }))\n            });\n            csa.plugin(function(e) {\n                var o, n, r = \"Navigator\", a = \"<ns>.\" + r + \".5\", i = e.global, c = e.config, d = i.navigator || {}, t = d.connection || {}, l = i.Math.round, u = e(\"Events\", {\n                    producerId: \"csa\",\n                    lob: c.lob || \"0\"\n                });\n                function v() {\n                    o = {\n                        network: {\n                            downlink: void 0,\n                            downlinkMax: void 0,\n                            rtt: void 0,\n                            type: void 0,\n                            effectiveType: void 0,\n                            saveData: void 0\n                        },\n                        language: void 0,\n                        doNotTrack: void 0,\n                        hardwareConcurrency: void 0,\n                        deviceMemory: void 0,\n                        cookieEnabled: void 0,\n                        webdriver: void 0\n                    },\n                    w(),\n                    o.language = d.language || null,\n                    o.doNotTrack = function() {\n                        switch (d.doNotTrack) {\n                        case \"1\":\n                            return \"enabled\";\n                        case \"0\":\n                            return \"disabled\";\n                        case \"unspecified\":\n                            return d.doNotTrack;\n                        default:\n                            return null\n                        }\n                    }(),\n                    o.hardwareConcurrency = \"hardwareConcurrency\"in d ? l(d.hardwareConcurrency || 0) : null,\n                    o.deviceMemory = \"deviceMemory\"in d ? l(d.deviceMemory || 0) : null,\n                    o.cookieEnabled = \"cookieEnabled\"in d ? d.cookieEnabled : null,\n                    o.webdriver = \"webdriver\"in d ? d.webdriver : null\n                }\n                function k() {\n                    u(\"log\", {\n                        network: (n = {},\n                        Object.keys(o.network).forEach(function(e) {\n                            n[e] = o.network[e] + \"\"\n                        }),\n                        n),\n                        language: o.language,\n                        doNotTrack: o.doNotTrack,\n                        hardwareConcurrency: o.hardwareConcurrency,\n                        deviceMemory: o.deviceMemory,\n                        cookieEnabled: o.cookieEnabled,\n                        webdriver: o.webdriver,\n                        schemaId: a\n                    }, {\n                        ent: {\n                            page: [\"pageType\", \"subPageType\", \"requestId\"]\n                        }\n                    })\n                }\n                function w() {\n                    !function(n) {\n                        Object.keys(o.network).forEach(function(e) {\n                            o.network[e] = n[e]\n                        })\n                    }({\n                        downlink: \"downlink\"in t ? l(t.downlink || 0) : null,\n                        downlinkMax: \"downlinkMax\"in t ? l(t.downlinkMax || 0) : null,\n                        rtt: \"rtt\"in t ? (t.rtt || 0).toFixed() : null,\n                        type: t.type || null,\n                        effectiveType: t.effectiveType || null,\n                        saveData: \"saveData\"in t ? t.saveData : null\n                    })\n                }\n                function f() {\n                    w(),\n                    k()\n                }\n                function y() {\n                    v(),\n                    k()\n                }\n                c[\"KillSwitch.\" + r] || (v(),\n                k(),\n                e.on(\"$afterPageTransition\", y),\n                e.on(t, \"change\", f))\n            });\n\n            ue.exec(function(d, c) {\n                function g(e, c) {\n                    e && ue.tag(e + c);\n                    return !!e\n                }\n                function n() {\n                    for (var e = RegExp(\"^https://(.*.(images|ssl-images|media)-amazon.com|\" + c.location.hostname + \")/images/\", \"i\"), d = {}, h = 0, k = c.performance.getEntriesByType(\"resource\"), l = !1, b, a, m, f = 0; f < k.length; f++)\n                        if (a = k[f],\n                        0 < a.transferSize && a.transferSize >= a.encodedBodySize && (b = e.exec(String(a.name))) && 3 === b.length) {\n                            a: {\n                                b = a.serverTiming || [];\n                                for (a = 0; a < b.length; a++)\n                                    if (\"provider\" === b[a].name) {\n                                        b = b[a].description;\n                                        break a\n                                    }\n                                b = void 0\n                            }\n                            b && (l || (l = g(b, \"_cdn_fr\")),\n                            a = d[b] = (d[b] || 0) + 1,\n                            a > h && (m = b,\n                            h = a))\n                        }\n                    g(m, \"_cdn_mp\")\n                }\n                d.ue && \"function\" === typeof d.ue.tag && c.performance && c.location && n()\n            }, \"cdnTagging\")(ue_csm, window);\n\n        }\n\n        /* \u25EC */\n    </script>\n</div>\n<noscript>\n    <img height=\"1\" width=\"1\" style='display:none;visibility:hidden;' src='//fls-eu.amazon.de/1/batch/1/OP/A1PA6795UKMFR9:262-7807958-1059108:B6B42Z8ZPKKYKC8XWKD7$uedata=s:%2Frd%2Fuedata%3Fnoscript%26id%3DB6B42Z8ZPKKYKC8XWKD7:0' alt=\"\"/>\n</noscript>\n<script>\n    window.ue && ue.count && ue.count('CSMLibrarySize', 68043)\n</script>\n</div></body></html>");

/***/ }),

/***/ "73ac":
/***/ (function(module, exports, __webpack_require__) {

var baseIsTypedArray = __webpack_require__("743f"),
    baseUnary = __webpack_require__("b047"),
    nodeUtil = __webpack_require__("99d3");

/* Node.js helper references. */
var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;

/**
 * Checks if `value` is classified as a typed array.
 *
 * @static
 * @memberOf _
 * @since 3.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
 * @example
 *
 * _.isTypedArray(new Uint8Array);
 * // => true
 *
 * _.isTypedArray([]);
 * // => false
 */
var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;

module.exports = isTypedArray;


/***/ }),

/***/ "743f":
/***/ (function(module, exports, __webpack_require__) {

var baseGetTag = __webpack_require__("3729"),
    isLength = __webpack_require__("b218"),
    isObjectLike = __webpack_require__("1310");

/** `Object#toString` result references. */
var argsTag = '[object Arguments]',
    arrayTag = '[object Array]',
    boolTag = '[object Boolean]',
    dateTag = '[object Date]',
    errorTag = '[object Error]',
    funcTag = '[object Function]',
    mapTag = '[object Map]',
    numberTag = '[object Number]',
    objectTag = '[object Object]',
    regexpTag = '[object RegExp]',
    setTag = '[object Set]',
    stringTag = '[object String]',
    weakMapTag = '[object WeakMap]';

var arrayBufferTag = '[object ArrayBuffer]',
    dataViewTag = '[object DataView]',
    float32Tag = '[object Float32Array]',
    float64Tag = '[object Float64Array]',
    int8Tag = '[object Int8Array]',
    int16Tag = '[object Int16Array]',
    int32Tag = '[object Int32Array]',
    uint8Tag = '[object Uint8Array]',
    uint8ClampedTag = '[object Uint8ClampedArray]',
    uint16Tag = '[object Uint16Array]',
    uint32Tag = '[object Uint32Array]';

/** Used to identify `toStringTag` values of typed arrays. */
var typedArrayTags = {};
typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
typedArrayTags[uint32Tag] = true;
typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =
typedArrayTags[errorTag] = typedArrayTags[funcTag] =
typedArrayTags[mapTag] = typedArrayTags[numberTag] =
typedArrayTags[objectTag] = typedArrayTags[regexpTag] =
typedArrayTags[setTag] = typedArrayTags[stringTag] =
typedArrayTags[weakMapTag] = false;

/**
 * The base implementation of `_.isTypedArray` without Node.js optimizations.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
 */
function baseIsTypedArray(value) {
  return isObjectLike(value) &&
    isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
}

module.exports = baseIsTypedArray;


/***/ }),

/***/ "7530":
/***/ (function(module, exports, __webpack_require__) {

var isObject = __webpack_require__("1a8c");

/** Built-in value references. */
var objectCreate = Object.create;

/**
 * The base implementation of `_.create` without support for assigning
 * properties to the created object.
 *
 * @private
 * @param {Object} proto The object to inherit from.
 * @returns {Object} Returns the new object.
 */
var baseCreate = (function() {
  function object() {}
  return function(proto) {
    if (!isObject(proto)) {
      return {};
    }
    if (objectCreate) {
      return objectCreate(proto);
    }
    object.prototype = proto;
    var result = new object;
    object.prototype = undefined;
    return result;
  };
}());

module.exports = baseCreate;


/***/ }),

/***/ "76dd":
/***/ (function(module, exports, __webpack_require__) {

var baseToString = __webpack_require__("ce86");

/**
 * Converts `value` to a string. An empty string is returned for `null`
 * and `undefined` values. The sign of `-0` is preserved.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to convert.
 * @returns {string} Returns the converted string.
 * @example
 *
 * _.toString(null);
 * // => ''
 *
 * _.toString(-0);
 * // => '-0'
 *
 * _.toString([1, 2, 3]);
 * // => '1,2,3'
 */
function toString(value) {
  return value == null ? '' : baseToString(value);
}

module.exports = toString;


/***/ }),

/***/ "7703":
/***/ (function(module, exports, __webpack_require__) {

var $ = __webpack_require__("d116"),
    utils = __webpack_require__("4a1c"),
    isTag = utils.isTag,
    domEach = utils.domEach,
    hasOwn = Object.prototype.hasOwnProperty,
    camelCase = utils.camelCase,
    cssCase = utils.cssCase,
    rspace = /\s+/,
    dataAttrPrefix = 'data-',
    _ = {
      forEach: __webpack_require__("6cd4"),
      extend: __webpack_require__("a9b9"),
      some: __webpack_require__("3092")
    },

  // Lookup table for coercing string data-* attributes to their corresponding
  // JavaScript primitives
  primitives = {
    null: null,
    true: true,
    false: false
  },

  // Attributes that are booleans
  rboolean = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,
  // Matches strings that look like JSON objects or arrays
  rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/;


var getAttr = function(elem, name) {
  if (!elem || !isTag(elem)) return;

  if (!elem.attribs) {
    elem.attribs = {};
  }

  // Return the entire attribs object if no attribute specified
  if (!name) {
    return elem.attribs;
  }

  if (hasOwn.call(elem.attribs, name)) {
    // Get the (decoded) attribute
    return rboolean.test(name) ? name : elem.attribs[name];
  }

  // Mimic the DOM and return text content as value for `option's`
  if (elem.name === 'option' && name === 'value') {
    return $.text(elem.children);
  }

  // Mimic DOM with default value for radios/checkboxes
  if (elem.name === 'input' &&
      (elem.attribs.type === 'radio' || elem.attribs.type === 'checkbox') &&
      name === 'value') {
    return 'on';
  }
};

var setAttr = function(el, name, value) {

  if (value === null) {
    removeAttribute(el, name);
  } else {
    el.attribs[name] = value+'';
  }
};

exports.attr = function(name, value) {
  // Set the value (with attr map support)
  if (typeof name === 'object' || value !== undefined) {
    if (typeof value === 'function') {
      return domEach(this, function(i, el) {
        setAttr(el, name, value.call(el, i, el.attribs[name]));
      });
    }
    return domEach(this, function(i, el) {
      if (!isTag(el)) return;

      if (typeof name === 'object') {
        _.forEach(name, function(objValue, objName) {
          setAttr(el, objName, objValue);
        });
      } else {
        setAttr(el, name, value);
      }
    });
  }

  return getAttr(this[0], name);
};

var getProp = function (el, name) {
  if (!el || !isTag(el)) return;

  return hasOwn.call(el, name)
      ? el[name]
      : rboolean.test(name)
          ? getAttr(el, name) !== undefined
          : getAttr(el, name);
};

var setProp = function (el, name, value) {
  el[name] = rboolean.test(name) ? !!value : value;
};

exports.prop = function (name, value) {
  var i = 0,
      property;

  if (typeof name === 'string' && value === undefined) {

    switch (name) {
      case 'style':
        property = this.css();

        _.forEach(property, function (v, p) {
          property[i++] = p;
        });

        property.length = i;

        break;
      case 'tagName':
      case 'nodeName':
        property = this[0].name.toUpperCase();
        break;
      default:
        property = getProp(this[0], name);
    }

    return property;
  }

  if (typeof name === 'object' || value !== undefined) {

    if (typeof value === 'function') {
      return domEach(this, function(j, el) {
        setProp(el, name, value.call(el, j, getProp(el, name)));
      });
    }

    return domEach(this, function(__, el) {
      if (!isTag(el)) return;

      if (typeof name === 'object') {

        _.forEach(name, function(val, key) {
          setProp(el, key, val);
        });

      } else {
        setProp(el, name, value);
      }
    });

  }
};

var setData = function(el, name, value) {
  if (!el.data) {
    el.data = {};
  }

  if (typeof name === 'object') return _.extend(el.data, name);
  if (typeof name === 'string' && value !== undefined) {
    el.data[name] = value;
  }
};

// Read the specified attribute from the equivalent HTML5 `data-*` attribute,
// and (if present) cache the value in the node's internal data store. If no
// attribute name is specified, read *all* HTML5 `data-*` attributes in this
// manner.
var readData = function(el, name) {
  var readAll = arguments.length === 1;
  var domNames, domName, jsNames, jsName, value, idx, length;

  if (readAll) {
    domNames = Object.keys(el.attribs).filter(function(attrName) {
      return attrName.slice(0, dataAttrPrefix.length) === dataAttrPrefix;
    });
    jsNames = domNames.map(function(_domName) {
      return camelCase(_domName.slice(dataAttrPrefix.length));
    });
  } else {
    domNames = [dataAttrPrefix + cssCase(name)];
    jsNames = [name];
  }

  for (idx = 0, length = domNames.length; idx < length; ++idx) {
    domName = domNames[idx];
    jsName = jsNames[idx];
    if (hasOwn.call(el.attribs, domName)) {
      value = el.attribs[domName];

      if (hasOwn.call(primitives, value)) {
        value = primitives[value];
      } else if (value === String(Number(value))) {
        value = Number(value);
      } else if (rbrace.test(value)) {
        try {
          value = JSON.parse(value);
        } catch(e){ }
      }

      el.data[jsName] = value;
    }
  }

  return readAll ? el.data : value;
};

exports.data = function(name, value) {
  var elem = this[0];

  if (!elem || !isTag(elem)) return;

  if (!elem.data) {
    elem.data = {};
  }

  // Return the entire data object if no data specified
  if (!name) {
    return readData(elem);
  }

  // Set the value (with attr map support)
  if (typeof name === 'object' || value !== undefined) {
    domEach(this, function(i, el) {
      setData(el, name, value);
    });
    return this;
  } else if (hasOwn.call(elem.data, name)) {
    return elem.data[name];
  }

  return readData(elem, name);
};

/**
 * Get the value of an element
 */

exports.val = function(value) {
  var querying = arguments.length === 0,
      element = this[0];

  if(!element) return;

  switch (element.name) {
    case 'textarea':
      return this.text(value);
    case 'input':
      switch (this.attr('type')) {
        case 'radio':
          if (querying) {
            return this.attr('value');
          } else {
            this.attr('value', value);
            return this;
          }
          break;
        default:
          return this.attr('value', value);
      }
      return;
    case 'select':
      var option = this.find('option:selected'),
          returnValue;
      if (option === undefined) return undefined;
      if (!querying) {
        if (!hasOwn.call(this.attr(), 'multiple') && typeof value == 'object') {
          return this;
        }
        if (typeof value != 'object') {
          value = [value];
        }
        this.find('option').removeAttr('selected');
        for (var i = 0; i < value.length; i++) {
          this.find('option[value="' + value[i] + '"]').attr('selected', '');
        }
        return this;
      }
      returnValue = option.attr('value');
      if (hasOwn.call(this.attr(), 'multiple')) {
        returnValue = [];
        domEach(option, function(__, el) {
          returnValue.push(getAttr(el, 'value'));
        });
      }
      return returnValue;
    case 'option':
      if (!querying) {
        this.attr('value', value);
        return this;
      }
      return this.attr('value');
  }
};

/**
 * Remove an attribute
 */

var removeAttribute = function(elem, name) {
  if (!elem.attribs || !hasOwn.call(elem.attribs, name))
    return;

  delete elem.attribs[name];
};


exports.removeAttr = function(name) {
  domEach(this, function(i, elem) {
    removeAttribute(elem, name);
  });

  return this;
};

exports.hasClass = function(className) {
  return _.some(this, function(elem) {
    var attrs = elem.attribs,
        clazz = attrs && attrs['class'],
        idx = -1,
        end;

    if (clazz && className.length) {
      while ((idx = clazz.indexOf(className, idx+1)) > -1) {
        end = idx + className.length;

        if ((idx === 0 || rspace.test(clazz[idx-1]))
            && (end === clazz.length || rspace.test(clazz[end]))) {
          return true;
        }
      }
    }
  });
};

exports.addClass = function(value) {
  // Support functions
  if (typeof value === 'function') {
    return domEach(this, function(i, el) {
      var className = el.attribs['class'] || '';
      exports.addClass.call([el], value.call(el, i, className));
    });
  }

  // Return if no value or not a string or function
  if (!value || typeof value !== 'string') return this;

  var classNames = value.split(rspace),
      numElements = this.length;


  for (var i = 0; i < numElements; i++) {
    // If selected element isn't a tag, move on
    if (!isTag(this[i])) continue;

    // If we don't already have classes
    var className = getAttr(this[i], 'class'),
        numClasses,
        setClass;

    if (!className) {
      setAttr(this[i], 'class', classNames.join(' ').trim());
    } else {
      setClass = ' ' + className + ' ';
      numClasses = classNames.length;

      // Check if class already exists
      for (var j = 0; j < numClasses; j++) {
        var appendClass = classNames[j] + ' ';
        if (setClass.indexOf(' ' + appendClass) < 0)
          setClass += appendClass;
      }

      setAttr(this[i], 'class', setClass.trim());
    }
  }

  return this;
};

var splitClass = function(className) {
  return className ? className.trim().split(rspace) : [];
};

exports.removeClass = function(value) {
  var classes,
      numClasses,
      removeAll;

  // Handle if value is a function
  if (typeof value === 'function') {
    return domEach(this, function(i, el) {
      exports.removeClass.call(
        [el], value.call(el, i, el.attribs['class'] || '')
      );
    });
  }

  classes = splitClass(value);
  numClasses = classes.length;
  removeAll = arguments.length === 0;

  return domEach(this, function(i, el) {
    if (!isTag(el)) return;

    if (removeAll) {
      // Short circuit the remove all case as this is the nice one
      el.attribs.class = '';
    } else {
      var elClasses = splitClass(el.attribs.class),
          index,
          changed;

      for (var j = 0; j < numClasses; j++) {
        index = elClasses.indexOf(classes[j]);

        if (index >= 0) {
          elClasses.splice(index, 1);
          changed = true;

          // We have to do another pass to ensure that there are not duplicate
          // classes listed
          j--;
        }
      }
      if (changed) {
        el.attribs.class = elClasses.join(' ');
      }
    }
  });
};

exports.toggleClass = function(value, stateVal) {
  // Support functions
  if (typeof value === 'function') {
    return domEach(this, function(i, el) {
      exports.toggleClass.call(
        [el],
        value.call(el, i, el.attribs['class'] || '', stateVal),
        stateVal
      );
    });
  }

  // Return if no value or not a string or function
  if (!value || typeof value !== 'string') return this;

  var classNames = value.split(rspace),
    numClasses = classNames.length,
    state = typeof stateVal === 'boolean' ? stateVal ? 1 : -1 : 0,
    numElements = this.length,
    elementClasses,
    index;

  for (var i = 0; i < numElements; i++) {
    // If selected element isn't a tag, move on
    if (!isTag(this[i])) continue;

    elementClasses = splitClass(this[i].attribs.class);

    // Check if class already exists
    for (var j = 0; j < numClasses; j++) {
      // Check if the class name is currently defined
      index = elementClasses.indexOf(classNames[j]);

      // Add if stateValue === true or we are toggling and there is no value
      if (state >= 0 && index < 0) {
        elementClasses.push(classNames[j]);
      } else if (state <= 0 && index >= 0) {
        // Otherwise remove but only if the item exists
        elementClasses.splice(index, 1);
      }
    }

    this[i].attribs.class = elementClasses.join(' ');
  }

  return this;
};

exports.is = function (selector) {
  if (selector) {
    return this.filter(selector).length > 0;
  }
  return false;
};


/***/ }),

/***/ "780f":
/***/ (function(module, exports, __webpack_require__) {

"use strict";
// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.

// a passthrough stream.
// basically just the most minimal sort of Transform stream.
// Every written chunk gets output as-is.



module.exports = PassThrough;

var Transform = __webpack_require__("27bf");

/*<replacement>*/
var util = Object.create(__webpack_require__("3a7c"));
util.inherits = __webpack_require__("3fb5");
/*</replacement>*/

util.inherits(PassThrough, Transform);

function PassThrough(options) {
  if (!(this instanceof PassThrough)) return new PassThrough(options);

  Transform.call(this, options);
}

PassThrough.prototype._transform = function (chunk, encoding, cb) {
  cb(null, chunk);
};

/***/ }),

/***/ "7884":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony default export */ __webpack_exports__["default"] = ("\n<!doctype html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"utf-8\" />\n    <title>Mercado Libre International Selling</title>\n  </head>\n  <body>\n    <a class=\"nav-logo\" href=\"//global-selling.mercadolibre.com\" tabindex=\"2\">Mercado Libre International Selling</a>\n    <div class=\"nav-header-cbt__content\">\n        <div class=\"nav-header-cbt__menu\">\n            <div id=\"nav-header-cbt__logged\" class=\"nav-header-cbt-body\">\n                <div class=\"nav-header-cbt__trigger\">\n                    <div class=\"nav-header-cbt__trigger-element\">guangzhoushimeiyiwangluokejiyouxiangongsi</div>\n                    <div class=\"nav-header-cbt__trigger-element nav-header-cbt__current\">\n                        <div class=\"nav-header-cbt__current-flag\">\n                            <img src=\"https://http2.mlstatic.com/storage/cbt-statics/layout/header/flags/Colombia.svg\"\n                                alt=\"Colombia\" />\n                        </div>\n                        <div class=\"nav-header-cbt__current-site\">CO</div>\n                    </div>\n                    <i class=\"nav-header-cbt__trigger-element nav-header-cbt__chevron\"></i>\n                </div>\n                <div id=\"nav-header-cbt__logged-options\">\n                    <span class=\"nav-header-cbt__tail\"></span>\n                    <div class=\"nav-header-cbt__options \">\n                        <div class=\"nav-header-cbt__option nav-header-cbt__my-account\">\n                            <div class=\"nav-header-cbt__bold-text\">My account</div>\n                            <a id=\"nav-header-cbt__logout\" class=\"nav-header-cbt__blue-link\"\n                                href=\"https://www.mercadolibre.com/jms/cbt/lgz/logout?go=https%3A%2F%2Fglobal-selling.mercadolibre.com%2F&amp;platform_id=ML\">Log\n                                out</a>\n                        </div>\n                        <div id=\"nav-header-cbt__switcher\">\n                            <div data-value=\"MLM-fulfillment\" data-userid=\"2542370125\"\n                                class=\"nav-header-cbt__option nav-header-cbt__option-switcher\">\n                                <img data-value=\"MLM-fulfillment\" data-userid=\"2542370125\"\n                                    src=\"https://http2.mlstatic.com/storage/cbt-statics/layout/header/flags/Mexico.svg\"\n                                    alt=\"Mexico\" />Mexico (Full)\n                            </div>\n                            <div data-value=\"MLM-remote\" data-userid=\"2542362139\"\n                                class=\"nav-header-cbt__option nav-header-cbt__option-switcher\">\n                                <img data-value=\"MLM-remote\" data-userid=\"2542362139\"\n                                    src=\"https://http2.mlstatic.com/storage/cbt-statics/layout/header/flags/Mexico.svg\"\n                                    alt=\"Mexico\" />Mexico\n                            </div>\n                            <div data-value=\"MLB-remote\" data-userid=\"2542362141\"\n                                class=\"nav-header-cbt__option nav-header-cbt__option-switcher\">\n                                <img data-value=\"MLB-remote\" data-userid=\"2542362141\"\n                                    src=\"https://http2.mlstatic.com/storage/cbt-statics/layout/header/flags/Brazil.svg\"\n                                    alt=\"Brazil\" />Brazil\n                            </div>\n                            <div data-value=\"MLA-remote\" data-userid=\"2672267004\"\n                                class=\"nav-header-cbt__option nav-header-cbt__option-switcher\">\n                                <img data-value=\"MLA-remote\" data-userid=\"2672267004\"\n                                    src=\"https://http2.mlstatic.com/storage/cbt-statics/layout/header/flags/Argentina.svg\"\n                                    alt=\"Argentina\" />Argentina\n                            </div>\n                            <div data-value=\"MLC-remote\" data-userid=\"2547147410\"\n                                class=\"nav-header-cbt__option nav-header-cbt__option-switcher\">\n                                <img data-value=\"MLC-remote\" data-userid=\"2547147410\"\n                                    src=\"https://http2.mlstatic.com/storage/cbt-statics/layout/header/flags/Chile.svg\"\n                                    alt=\"Chile\" />Chile\n                            </div>\n                            <div data-value=\"MCO-remote\" data-userid=\"2547147424\"\n                                class=\"nav-header-cbt__option nav-header-cbt__option-switcher nav-header-cbt__option-selected\">\n                                <img data-value=\"MCO-remote\" data-userid=\"2547147424\"\n                                    src=\"https://http2.mlstatic.com/storage/cbt-statics/layout/header/flags/Colombia.svg\"\n                                    alt=\"Colombia\" />Colombia\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </div>\n        <div class=\"nav-header-cbt__links\">\n            <div class=\"nav-header-cbt__links-titles\">\n                <div id=\"nav-header-cbt__link-publish\" class=\"nav-header-cbt__link\">\n                    <a href=\"https://global-selling.mercadolibre.com/bulk-listing\">Add listings</a>\n                </div>\n            </div>\n            <div class=\"nav-header-cbt__links-icons\">\n                <div id=\"nav-header-cbt__icon-helpMain\" class=\"nav-header-cbt__icon\">\n                    <a href=\"https://global-selling.mercadolibre.com/help\">\n                        <img class=\"nav-header-cbt__icon-img\"\n                            src=\"https://http2.mlstatic.com/storage/cbt-statics/layout/header/icons/help.svg\" alt=\"\" />\n                    </a>\n                </div>\n            </div>\n        </div>\n        \n    </div>\n    </div>\n    </header>\n    <main role=\"main\" id=\"root-app\">\n        <div class=\"app-wrapper\">\n            <div class=\"menu-wrapper\">\n                <div>\n                    <div class=\"myml-nav__tooltip\">\n                        <button class=\"myml-nav__tooltip__close\" tabindex=\"-1\">\n                            <span class=\"andes-visually-hidden\">Cerrar descripci\xF3n de</span>\n                            <svg aria-hidden=\"true\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"rgba(0, 0, 0, 0.9)\">\n                                <path\n                                    d=\"M12.4485 11.5996L8.87116 8.02227L12.4485 4.39446L11.594 3.5519L8.02261 7.17372L4.40077 3.55188L3.55225 4.40041L7.18003 8.02819L3.65246 11.6055L4.50692 12.4481L8.02858 8.87674L11.6 12.4481L12.4485 11.5996Z\"\n                                    fill=\"rgba(0, 0, 0, 0.9)\"></path>\n                            </svg>\n                        </button>\n                        <p class=\"myml-nav__tooltip__text\"></p>\n                    </div>\n                </div>\n                <input type=\"checkbox\" id=\"myml-menu-toggle\" aria-label=\"Menu\" />\n                <nav class=\"myml-nav\">\n                    <div class=\"myml-nav__wrapper\">\n                        <div class=\"myml-nav__container\">\n                            <div class=\"myml-nav__section myml-nav__section--toggle\">\n                                <div class=\"myml-nav__section-heading\">\n                                    <span class=\"myml-nav__section-icon\">\n                                        <span class=\"myml-nav__toggle\">\n                                            <span class=\"myml-nav__ham--top\"></span>\n                                            <span class=\"myml-nav__ham--middle\"></span>\n                                            <span class=\"myml-nav__ham--bottom\"></span>\n                                            <span class=\"myml-nav__ham--cross\"></span>\n                                        </span>\n                                    </span>\n                                    <p class=\"myml-nav__section-title\">\n                                        <span class=\"myml-nav__user-permalink\">My account</span>\n                                        <span class=\"myml-nav__section-subtitle\"></span>\n                                    </p>\n                                </div>\n                            </div>\n                            <ul class=\"myml-nav__menu\">\n                                <li class=\"myml-nav__section myml-nav__section--active\">\n                                    <div class=\"myml-nav__section-container\" data-section-id=\"MYML_SUMMARY\">\n                                        <a href=\"https://global-selling.mercadolibre.com/summary\" tabindex=\"0\"\n                                            class=\"myml-nav__section-heading\" data-section-id=\"MYML_SUMMARY\">\n                                            <div class=\"myml-nav__section-icon-container\">\n                                                <span class=\"myml-nav__section-icon myml-nav__section-icon--myml_summary\"\n                                                    data-tooltip=\"Summary\">\n                                                    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"22\" height=\"23\"\n                                                        viewBox=\"0 0 22 23\"></svg>\n                                                </span>\n                                            </div>\n                                        </a>\n                                    </div>\n                                </li>\n                            </ul>\n                        </div>\n                    </div>\n                </nav>\n            </div>\n        </div>\n    </main>\n  </body>\n</html>\n");

/***/ }),

/***/ "791e":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Mixin = __webpack_require__("362e"),
    inherits = __webpack_require__("3022").inherits;

var LocationInfoOpenElementStackMixin = module.exports = function (stack, options) {
    Mixin.call(this, stack);

    this.onItemPop = options.onItemPop;
};

inherits(LocationInfoOpenElementStackMixin, Mixin);

LocationInfoOpenElementStackMixin.prototype._getOverriddenMethods = function (mxn, orig) {
    return {
        pop: function () {
            mxn.onItemPop(this.current);
            orig.pop.call(this);
        },

        popAllUpToHtmlElement: function () {
            for (var i = this.stackTop; i > 0; i--)
                mxn.onItemPop(this.items[i]);

            orig.popAllUpToHtmlElement.call(this);
        },

        remove: function (element) {
            mxn.onItemPop(this.current);
            orig.remove.call(this, element);
        }
    };
};



/***/ }),

/***/ "7948":
/***/ (function(module, exports) {

/**
 * A specialized version of `_.map` for arrays without support for iteratee
 * shorthands.
 *
 * @private
 * @param {Array} [array] The array to iterate over.
 * @param {Function} iteratee The function invoked per iteration.
 * @returns {Array} Returns the new mapped array.
 */
function arrayMap(array, iteratee) {
  var index = -1,
      length = array == null ? 0 : array.length,
      result = Array(length);

  while (++index < length) {
    result[index] = iteratee(array[index], index, array);
  }
  return result;
}

module.exports = arrayMap;


/***/ }),

/***/ "79bc":
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__("0b07"),
    root = __webpack_require__("2b3e");

/* Built-in method references that are verified to be native. */
var Map = getNative(root, 'Map');

module.exports = Map;


/***/ }),

/***/ "7a48":
/***/ (function(module, exports, __webpack_require__) {

var nativeCreate = __webpack_require__("6044");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Checks if a hash value for `key` exists.
 *
 * @private
 * @name has
 * @memberOf Hash
 * @param {string} key The key of the entry to check.
 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
 */
function hashHas(key) {
  var data = this.__data__;
  return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);
}

module.exports = hashHas;


/***/ }),

/***/ "7a77":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


/**
 * A `Cancel` is an object that is thrown when an operation is canceled.
 *
 * @class
 * @param {string=} message The message.
 */
function Cancel(message) {
  this.message = message;
}

Cancel.prototype.toString = function toString() {
  return 'Cancel' + (this.message ? ': ' + this.message : '');
};

Cancel.prototype.__CANCEL__ = true;

module.exports = Cancel;


/***/ }),

/***/ "7aac":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");

module.exports = (
  utils.isStandardBrowserEnv() ?

  // Standard browser envs support document.cookie
    (function standardBrowserEnv() {
      return {
        write: function write(name, value, expires, path, domain, secure) {
          var cookie = [];
          cookie.push(name + '=' + encodeURIComponent(value));

          if (utils.isNumber(expires)) {
            cookie.push('expires=' + new Date(expires).toGMTString());
          }

          if (utils.isString(path)) {
            cookie.push('path=' + path);
          }

          if (utils.isString(domain)) {
            cookie.push('domain=' + domain);
          }

          if (secure === true) {
            cookie.push('secure');
          }

          document.cookie = cookie.join('; ');
        },

        read: function read(name) {
          var match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)'));
          return (match ? decodeURIComponent(match[3]) : null);
        },

        remove: function remove(name) {
          this.write(name, '', Date.now() - 86400000);
        }
      };
    })() :

  // Non standard browser env (web workers, react-native) lack needed support.
    (function nonStandardBrowserEnv() {
      return {
        write: function write() {},
        read: function read() { return null; },
        remove: function remove() {}
      };
    })()
);


/***/ }),

/***/ "7b83":
/***/ (function(module, exports, __webpack_require__) {

var mapCacheClear = __webpack_require__("7c64"),
    mapCacheDelete = __webpack_require__("93ed"),
    mapCacheGet = __webpack_require__("2478"),
    mapCacheHas = __webpack_require__("a524"),
    mapCacheSet = __webpack_require__("1fc8");

/**
 * Creates a map cache object to store key-value pairs.
 *
 * @private
 * @constructor
 * @param {Array} [entries] The key-value pairs to cache.
 */
function MapCache(entries) {
  var index = -1,
      length = entries == null ? 0 : entries.length;

  this.clear();
  while (++index < length) {
    var entry = entries[index];
    this.set(entry[0], entry[1]);
  }
}

// Add methods to `MapCache`.
MapCache.prototype.clear = mapCacheClear;
MapCache.prototype['delete'] = mapCacheDelete;
MapCache.prototype.get = mapCacheGet;
MapCache.prototype.has = mapCacheHas;
MapCache.prototype.set = mapCacheSet;

module.exports = MapCache;


/***/ }),

/***/ "7b97":
/***/ (function(module, exports, __webpack_require__) {

var Stack = __webpack_require__("7e64"),
    equalArrays = __webpack_require__("a2be"),
    equalByTag = __webpack_require__("1c3c"),
    equalObjects = __webpack_require__("b1e5"),
    getTag = __webpack_require__("42a2"),
    isArray = __webpack_require__("6747"),
    isBuffer = __webpack_require__("0d24"),
    isTypedArray = __webpack_require__("73ac");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1;

/** `Object#toString` result references. */
var argsTag = '[object Arguments]',
    arrayTag = '[object Array]',
    objectTag = '[object Object]';

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * A specialized version of `baseIsEqual` for arrays and objects which performs
 * deep comparisons and tracks traversed objects enabling objects with circular
 * references to be compared.
 *
 * @private
 * @param {Object} object The object to compare.
 * @param {Object} other The other object to compare.
 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
 * @param {Function} customizer The function to customize comparisons.
 * @param {Function} equalFunc The function to determine equivalents of values.
 * @param {Object} [stack] Tracks traversed `object` and `other` objects.
 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
 */
function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {
  var objIsArr = isArray(object),
      othIsArr = isArray(other),
      objTag = objIsArr ? arrayTag : getTag(object),
      othTag = othIsArr ? arrayTag : getTag(other);

  objTag = objTag == argsTag ? objectTag : objTag;
  othTag = othTag == argsTag ? objectTag : othTag;

  var objIsObj = objTag == objectTag,
      othIsObj = othTag == objectTag,
      isSameTag = objTag == othTag;

  if (isSameTag && isBuffer(object)) {
    if (!isBuffer(other)) {
      return false;
    }
    objIsArr = true;
    objIsObj = false;
  }
  if (isSameTag && !objIsObj) {
    stack || (stack = new Stack);
    return (objIsArr || isTypedArray(object))
      ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)
      : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);
  }
  if (!(bitmask & COMPARE_PARTIAL_FLAG)) {
    var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
        othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');

    if (objIsWrapped || othIsWrapped) {
      var objUnwrapped = objIsWrapped ? object.value() : object,
          othUnwrapped = othIsWrapped ? other.value() : other;

      stack || (stack = new Stack);
      return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);
    }
  }
  if (!isSameTag) {
    return false;
  }
  stack || (stack = new Stack);
  return equalObjects(object, other, bitmask, customizer, equalFunc, stack);
}

module.exports = baseIsEqualDeep;


/***/ }),

/***/ "7c64":
/***/ (function(module, exports, __webpack_require__) {

var Hash = __webpack_require__("e24b"),
    ListCache = __webpack_require__("5e2e"),
    Map = __webpack_require__("79bc");

/**
 * Removes all key-value entries from the map.
 *
 * @private
 * @name clear
 * @memberOf MapCache
 */
function mapCacheClear() {
  this.size = 0;
  this.__data__ = {
    'hash': new Hash,
    'map': new (Map || ListCache),
    'string': new Hash
  };
}

module.exports = mapCacheClear;


/***/ }),

/***/ "7cf0":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"data\":{\"total\":6,\"invitation_list\":[{\"id\":\"7588049174860465975\",\"name\":\"领星测试接口-1230删\",\"message\":\"Dear {{user_name}},\\nIt's such a pleasure to connect with you! I'm Candice, and I am reaching out to you on behalf of GYS Bamboo Pajamas. We are a sleepwear brand specializing in eco-friendly bamboo viscose products.\\nTo express our sincerity, we would be delighted to provide our products, allowing you to experience them firsthand. We would also love to invite you to create a buyable video showcasing your authentic experience with our products.\\nCandice from GYS\",\"theme_file_id\":\"\",\"start_time\":\"1766730378751\",\"end_time\":\"1767167999000\",\"update_time\":\"1766730379000\",\"creator_cnt\":1,\"creator_added_cnt\":0,\"creator_posted_cnt\":0,\"product_cnt\":2,\"theme_url\":\"\",\"free_sample_rule\":{\"has_free_sample\":true,\"is_free_sample_auto_review\":false},\"group_type\":1,\"delivery_requirements\":{\"content_option\":2},\"flash_sale_info\":{\"promotion_name\":\"领星测试接口-1230删\",\"start_time\":\"1766740980000\",\"end_time\":\"1766913780000\",\"flash_sale_status\":3,\"creator_id\":\"7494014343454820212\",\"limit_one_product\":null,\"promotion_id\":\"7588040642811545357\"},\"group_brand_info\":{}},{\"id\":\"7588007620411049741\",\"name\":\"领星测试接口-1230删\",\"message\":\"Dear {{user_name}},\\nIt's such a pleasure to connect with you! I'm Candice, and I am reaching out to you on behalf of GYS Bamboo Pajamas. We are a sleepwear brand specializing in eco-friendly bamboo viscose products.\\nTo express our sincerity, we would be delighted to provide our products, allowing you to experience them firsthand. We would also love to invite you to create a buyable video showcasing your authentic experience with our products.\\nCandice from GYS\",\"theme_file_id\":\"\",\"start_time\":\"1766720705217\",\"end_time\":\"1767167999000\",\"update_time\":\"1766729923000\",\"creator_cnt\":1,\"creator_added_cnt\":0,\"creator_posted_cnt\":0,\"product_cnt\":2,\"theme_url\":\"\",\"free_sample_rule\":{\"has_free_sample\":true,\"is_free_sample_auto_review\":false},\"group_type\":1,\"delivery_requirements\":{\"content_option\":2},\"flash_sale_info\":{\"promotion_name\":\"领星测试接口-1230删\",\"start_time\":\"1766731500000\",\"end_time\":\"1766732100000\",\"flash_sale_status\":4,\"creator_id\":\"7494850300185511990\",\"limit_one_product\":null,\"promotion_id\":\"7587998984250345230\"},\"group_brand_info\":{}},{\"id\":\"7523033617474275086\",\"name\":\"High Commission Collaboration\",\"message\":\"Dear {{user_name}},\\nIt's such a pleasure to connect with you! I'm Candice, and I am reaching out to you on behalf of GYS Bamboo Pajamas. We are a sleepwear brand specializing in eco-friendly bamboo viscose products.\\nTo express our sincerity, we would be delighted to provide our products, allowing you to experience them firsthand. We would also love to invite you to create a buyable video showcasing your authentic experience with our products.\\nCandice from GYS\",\"theme_file_id\":\"\",\"start_time\":\"1751592779781\",\"end_time\":\"1767254399000\",\"update_time\":\"1757319929000\",\"creator_cnt\":47,\"creator_added_cnt\":0,\"creator_posted_cnt\":0,\"product_cnt\":99,\"theme_url\":\"\",\"free_sample_rule\":{\"has_free_sample\":true,\"is_free_sample_auto_review\":false},\"group_type\":1,\"delivery_requirements\":{\"content_option\":1},\"group_brand_info\":{}},{\"id\":\"7529730030038976270\",\"name\":\"High Commission Collaboration\",\"message\":\"Dear {{user_name}},\\nIt's such a pleasure to connect with you! I'm Candice, and I am reaching out to you on behalf of GYS Bamboo Pajamas. We are a sleepwear brand specializing in eco-friendly bamboo viscose products.\\nTo express our sincerity, we would be delighted to provide our products, allowing you to experience them firsthand. We would also love to invite you to create a buyable video showcasing your authentic experience with our products.\\nCandice from GYS\",\"theme_file_id\":\"\",\"start_time\":\"1753151899157\",\"end_time\":\"1767254399000\",\"update_time\":\"1757319583000\",\"creator_cnt\":50,\"creator_added_cnt\":0,\"creator_posted_cnt\":1,\"product_cnt\":100,\"theme_url\":\"\",\"free_sample_rule\":{\"has_free_sample\":true,\"is_free_sample_auto_review\":false},\"group_type\":1,\"delivery_requirements\":{\"content_option\":1},\"group_brand_info\":{}},{\"id\":\"7547626161585964855\",\"name\":\"High Commission Collaboration\",\"message\":\"Dear {{user_name}},\\nIt's such a pleasure to connect with you! I'm Candice, and I am reaching out to you on behalf of GYS Bamboo Pajamas. We are a sleepwear brand specializing in eco-friendly bamboo viscose products.\\nTo express our sincerity, we would be delighted to provide our products, allowing you to experience them firsthand. We would also love to invite you to create a buyable video showcasing your authentic experience with our products.\\nCandice from GYS\",\"theme_file_id\":\"\",\"start_time\":\"1757318661828\",\"end_time\":\"1767254399000\",\"update_time\":\"1757318662000\",\"creator_cnt\":35,\"creator_added_cnt\":0,\"creator_posted_cnt\":1,\"product_cnt\":100,\"theme_url\":\"\",\"free_sample_rule\":{\"has_free_sample\":true,\"is_free_sample_auto_review\":false},\"group_type\":1,\"delivery_requirements\":{\"content_option\":1},\"group_brand_info\":{}},{\"id\":\"7547625966753072910\",\"name\":\"High Commission Collaboration\",\"message\":\"Dear {{user_name}},\\nIt's such a pleasure to connect with you! I'm Candice, and I am reaching out to you on behalf of GYS Bamboo Pajamas. We are a sleepwear brand specializing in eco-friendly bamboo viscose products.\\nTo express our sincerity, we would be delighted to provide our products, allowing you to experience them firsthand. We would also love to invite you to create a buyable video showcasing your authentic experience with our products.\\nCandice from GYS\",\"theme_file_id\":\"\",\"start_time\":\"1757318618248\",\"end_time\":\"1767254399000\",\"update_time\":\"1757318619000\",\"creator_cnt\":43,\"creator_added_cnt\":1,\"creator_posted_cnt\":0,\"product_cnt\":100,\"theme_url\":\"\",\"free_sample_rule\":{\"has_free_sample\":true,\"is_free_sample_auto_review\":false},\"group_type\":1,\"delivery_requirements\":{\"content_option\":1},\"group_brand_info\":{}}],\"has_more\":false}}");

/***/ }),

/***/ "7d1f":
/***/ (function(module, exports, __webpack_require__) {

var arrayPush = __webpack_require__("087d"),
    isArray = __webpack_require__("6747");

/**
 * The base implementation of `getAllKeys` and `getAllKeysIn` which uses
 * `keysFunc` and `symbolsFunc` to get the enumerable property names and
 * symbols of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @param {Function} keysFunc The function to get the keys of `object`.
 * @param {Function} symbolsFunc The function to get the symbols of `object`.
 * @returns {Array} Returns the array of property names and symbols.
 */
function baseGetAllKeys(object, keysFunc, symbolsFunc) {
  var result = keysFunc(object);
  return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
}

module.exports = baseGetAllKeys;


/***/ }),

/***/ "7d72":
/***/ (function(module, exports, __webpack_require__) {

"use strict";
// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.



/*<replacement>*/

var Buffer = __webpack_require__("8707").Buffer;
/*</replacement>*/

var isEncoding = Buffer.isEncoding || function (encoding) {
  encoding = '' + encoding;
  switch (encoding && encoding.toLowerCase()) {
    case 'hex':case 'utf8':case 'utf-8':case 'ascii':case 'binary':case 'base64':case 'ucs2':case 'ucs-2':case 'utf16le':case 'utf-16le':case 'raw':
      return true;
    default:
      return false;
  }
};

function _normalizeEncoding(enc) {
  if (!enc) return 'utf8';
  var retried;
  while (true) {
    switch (enc) {
      case 'utf8':
      case 'utf-8':
        return 'utf8';
      case 'ucs2':
      case 'ucs-2':
      case 'utf16le':
      case 'utf-16le':
        return 'utf16le';
      case 'latin1':
      case 'binary':
        return 'latin1';
      case 'base64':
      case 'ascii':
      case 'hex':
        return enc;
      default:
        if (retried) return; // undefined
        enc = ('' + enc).toLowerCase();
        retried = true;
    }
  }
};

// Do not cache `Buffer.isEncoding` when checking encoding names as some
// modules monkey-patch it to support additional encodings
function normalizeEncoding(enc) {
  var nenc = _normalizeEncoding(enc);
  if (typeof nenc !== 'string' && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) throw new Error('Unknown encoding: ' + enc);
  return nenc || enc;
}

// StringDecoder provides an interface for efficiently splitting a series of
// buffers into a series of JS strings without breaking apart multi-byte
// characters.
exports.StringDecoder = StringDecoder;
function StringDecoder(encoding) {
  this.encoding = normalizeEncoding(encoding);
  var nb;
  switch (this.encoding) {
    case 'utf16le':
      this.text = utf16Text;
      this.end = utf16End;
      nb = 4;
      break;
    case 'utf8':
      this.fillLast = utf8FillLast;
      nb = 4;
      break;
    case 'base64':
      this.text = base64Text;
      this.end = base64End;
      nb = 3;
      break;
    default:
      this.write = simpleWrite;
      this.end = simpleEnd;
      return;
  }
  this.lastNeed = 0;
  this.lastTotal = 0;
  this.lastChar = Buffer.allocUnsafe(nb);
}

StringDecoder.prototype.write = function (buf) {
  if (buf.length === 0) return '';
  var r;
  var i;
  if (this.lastNeed) {
    r = this.fillLast(buf);
    if (r === undefined) return '';
    i = this.lastNeed;
    this.lastNeed = 0;
  } else {
    i = 0;
  }
  if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i);
  return r || '';
};

StringDecoder.prototype.end = utf8End;

// Returns only complete characters in a Buffer
StringDecoder.prototype.text = utf8Text;

// Attempts to complete a partial non-UTF-8 character using bytes from a Buffer
StringDecoder.prototype.fillLast = function (buf) {
  if (this.lastNeed <= buf.length) {
    buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed);
    return this.lastChar.toString(this.encoding, 0, this.lastTotal);
  }
  buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length);
  this.lastNeed -= buf.length;
};

// Checks the type of a UTF-8 byte, whether it's ASCII, a leading byte, or a
// continuation byte. If an invalid byte is detected, -2 is returned.
function utf8CheckByte(byte) {
  if (byte <= 0x7F) return 0;else if (byte >> 5 === 0x06) return 2;else if (byte >> 4 === 0x0E) return 3;else if (byte >> 3 === 0x1E) return 4;
  return byte >> 6 === 0x02 ? -1 : -2;
}

// Checks at most 3 bytes at the end of a Buffer in order to detect an
// incomplete multi-byte UTF-8 character. The total number of bytes (2, 3, or 4)
// needed to complete the UTF-8 character (if applicable) are returned.
function utf8CheckIncomplete(self, buf, i) {
  var j = buf.length - 1;
  if (j < i) return 0;
  var nb = utf8CheckByte(buf[j]);
  if (nb >= 0) {
    if (nb > 0) self.lastNeed = nb - 1;
    return nb;
  }
  if (--j < i || nb === -2) return 0;
  nb = utf8CheckByte(buf[j]);
  if (nb >= 0) {
    if (nb > 0) self.lastNeed = nb - 2;
    return nb;
  }
  if (--j < i || nb === -2) return 0;
  nb = utf8CheckByte(buf[j]);
  if (nb >= 0) {
    if (nb > 0) {
      if (nb === 2) nb = 0;else self.lastNeed = nb - 3;
    }
    return nb;
  }
  return 0;
}

// Validates as many continuation bytes for a multi-byte UTF-8 character as
// needed or are available. If we see a non-continuation byte where we expect
// one, we "replace" the validated continuation bytes we've seen so far with
// a single UTF-8 replacement character ('\ufffd'), to match v8's UTF-8 decoding
// behavior. The continuation byte check is included three times in the case
// where all of the continuation bytes for a character exist in the same buffer.
// It is also done this way as a slight performance increase instead of using a
// loop.
function utf8CheckExtraBytes(self, buf, p) {
  if ((buf[0] & 0xC0) !== 0x80) {
    self.lastNeed = 0;
    return '\ufffd';
  }
  if (self.lastNeed > 1 && buf.length > 1) {
    if ((buf[1] & 0xC0) !== 0x80) {
      self.lastNeed = 1;
      return '\ufffd';
    }
    if (self.lastNeed > 2 && buf.length > 2) {
      if ((buf[2] & 0xC0) !== 0x80) {
        self.lastNeed = 2;
        return '\ufffd';
      }
    }
  }
}

// Attempts to complete a multi-byte UTF-8 character using bytes from a Buffer.
function utf8FillLast(buf) {
  var p = this.lastTotal - this.lastNeed;
  var r = utf8CheckExtraBytes(this, buf, p);
  if (r !== undefined) return r;
  if (this.lastNeed <= buf.length) {
    buf.copy(this.lastChar, p, 0, this.lastNeed);
    return this.lastChar.toString(this.encoding, 0, this.lastTotal);
  }
  buf.copy(this.lastChar, p, 0, buf.length);
  this.lastNeed -= buf.length;
}

// Returns all complete UTF-8 characters in a Buffer. If the Buffer ended on a
// partial character, the character's bytes are buffered until the required
// number of bytes are available.
function utf8Text(buf, i) {
  var total = utf8CheckIncomplete(this, buf, i);
  if (!this.lastNeed) return buf.toString('utf8', i);
  this.lastTotal = total;
  var end = buf.length - (total - this.lastNeed);
  buf.copy(this.lastChar, 0, end);
  return buf.toString('utf8', i, end);
}

// For UTF-8, a replacement character is added when ending on a partial
// character.
function utf8End(buf) {
  var r = buf && buf.length ? this.write(buf) : '';
  if (this.lastNeed) return r + '\ufffd';
  return r;
}

// UTF-16LE typically needs two bytes per character, but even if we have an even
// number of bytes available, we need to check if we end on a leading/high
// surrogate. In that case, we need to wait for the next two bytes in order to
// decode the last character properly.
function utf16Text(buf, i) {
  if ((buf.length - i) % 2 === 0) {
    var r = buf.toString('utf16le', i);
    if (r) {
      var c = r.charCodeAt(r.length - 1);
      if (c >= 0xD800 && c <= 0xDBFF) {
        this.lastNeed = 2;
        this.lastTotal = 4;
        this.lastChar[0] = buf[buf.length - 2];
        this.lastChar[1] = buf[buf.length - 1];
        return r.slice(0, -1);
      }
    }
    return r;
  }
  this.lastNeed = 1;
  this.lastTotal = 2;
  this.lastChar[0] = buf[buf.length - 1];
  return buf.toString('utf16le', i, buf.length - 1);
}

// For UTF-16LE we do not explicitly append special replacement characters if we
// end on a partial character, we simply let v8 handle that.
function utf16End(buf) {
  var r = buf && buf.length ? this.write(buf) : '';
  if (this.lastNeed) {
    var end = this.lastTotal - this.lastNeed;
    return r + this.lastChar.toString('utf16le', 0, end);
  }
  return r;
}

function base64Text(buf, i) {
  var n = (buf.length - i) % 3;
  if (n === 0) return buf.toString('base64', i);
  this.lastNeed = 3 - n;
  this.lastTotal = 3;
  if (n === 1) {
    this.lastChar[0] = buf[buf.length - 1];
  } else {
    this.lastChar[0] = buf[buf.length - 2];
    this.lastChar[1] = buf[buf.length - 1];
  }
  return buf.toString('base64', i, buf.length - n);
}

function base64End(buf) {
  var r = buf && buf.length ? this.write(buf) : '';
  if (this.lastNeed) return r + this.lastChar.toString('base64', 0, 3 - this.lastNeed);
  return r;
}

// Pass bytes on through for single-byte encodings (e.g. ascii, latin1, hex)
function simpleWrite(buf) {
  return buf.toString(this.encoding);
}

function simpleEnd(buf) {
  return buf && buf.length ? this.write(buf) : '';
}

/***/ }),

/***/ "7e64":
/***/ (function(module, exports, __webpack_require__) {

var ListCache = __webpack_require__("5e2e"),
    stackClear = __webpack_require__("efb6"),
    stackDelete = __webpack_require__("2fcc"),
    stackGet = __webpack_require__("802a"),
    stackHas = __webpack_require__("55a3"),
    stackSet = __webpack_require__("d02c");

/**
 * Creates a stack cache object to store key-value pairs.
 *
 * @private
 * @constructor
 * @param {Array} [entries] The key-value pairs to cache.
 */
function Stack(entries) {
  var data = this.__data__ = new ListCache(entries);
  this.size = data.size;
}

// Add methods to `Stack`.
Stack.prototype.clear = stackClear;
Stack.prototype['delete'] = stackDelete;
Stack.prototype.get = stackGet;
Stack.prototype.has = stackHas;
Stack.prototype.set = stackSet;

module.exports = Stack;


/***/ }),

/***/ "7eb9":
/***/ (function(module, exports, __webpack_require__) {

var DomUtils    = __webpack_require__("2241"),
    isTag       = DomUtils.isTag,
    getParent   = DomUtils.getParent,
    getChildren = DomUtils.getChildren,
    getSiblings = DomUtils.getSiblings,
    getName     = DomUtils.getName;

/*
	all available rules
*/
module.exports = {
	__proto__: null,

	attribute: __webpack_require__("061b").compile,
	pseudo: __webpack_require__("99bc").compile,

	//tags
	tag: function(next, data){
		var name = data.name;
		return function tag(elem){
			return getName(elem) === name && next(elem);
		};
	},

	//traversal
	descendant: function(next, rule, options, context, acceptSelf){
		return function descendant(elem){

			if (acceptSelf && next(elem)) return true;

			var found = false;

			while(!found && (elem = getParent(elem))){
				found = next(elem);
			}

			return found;
		};
	},
	parent: function(next, data, options){
		if(options && options.strict) throw SyntaxError("Parent selector isn't part of CSS3");

		return function parent(elem){
			return getChildren(elem).some(test);
		};

		function test(elem){
			return isTag(elem) && next(elem);
		}
	},
	child: function(next){
		return function child(elem){
			var parent = getParent(elem);
			return !!parent && next(parent);
		};
	},
	sibling: function(next){
		return function sibling(elem){
			var siblings = getSiblings(elem);

			for(var i = 0; i < siblings.length; i++){
				if(isTag(siblings[i])){
					if(siblings[i] === elem) break;
					if(next(siblings[i])) return true;
				}
			}

			return false;
		};
	},
	adjacent: function(next){
		return function adjacent(elem){
			var siblings = getSiblings(elem),
			    lastElement;

			for(var i = 0; i < siblings.length; i++){
				if(isTag(siblings[i])){
					if(siblings[i] === elem) break;
					lastElement = siblings[i];
				}
			}

			return !!lastElement && next(lastElement);
		};
	},
	universal: function(next){
		return next;
	}
};

/***/ }),

/***/ "7ed2":
/***/ (function(module, exports) {

/** Used to stand-in for `undefined` hash values. */
var HASH_UNDEFINED = '__lodash_hash_undefined__';

/**
 * Adds `value` to the array cache.
 *
 * @private
 * @name add
 * @memberOf SetCache
 * @alias push
 * @param {*} value The value to cache.
 * @returns {Object} Returns the cache instance.
 */
function setCacheAdd(value) {
  this.__data__.set(value, HASH_UNDEFINED);
  return this;
}

module.exports = setCacheAdd;


/***/ }),

/***/ "7f45":
/***/ (function(module, exports, __webpack_require__) {

var moment = module.exports = __webpack_require__("0efb");
moment.tz.load(__webpack_require__("6cd2"));


/***/ }),

/***/ "7fdb":
/***/ (function(module) {

module.exports = JSON.parse("{\"lnVO\":{\"lnHeader\":{\"arn\":\"36400696411\",\"version\":1,\"shipFrom\":{\"line1\":\"10 Keystone Blvd E\",\"line2\":null,\"line3\":null,\"city\":\"Pottsville\",\"state\":\"PA\",\"countryCode\":\"US\",\"countryName\":null,\"postalCode\":\"17901\",\"province\":null,\"district\":null,\"addressId\":173680201,\"warehouseCode\":null,\"name\":\"ZNDER\",\"fcCode\":null,\"hasContacts\":false,\"localTimeZone\":\"America/New_York\",\"operatingHours\":null,\"fcType\":null},\"shipTo\":{\"line1\":\"850 GATEWAY GLOBAL DR\",\"line2\":\"\",\"line3\":null,\"city\":\"BYHALIA\",\"state\":\"MS\",\"countryCode\":\"US\",\"countryName\":\"United States\",\"postalCode\":\"38611-6040\",\"province\":null,\"district\":null,\"addressId\":null,\"warehouseCode\":null,\"name\":\"MEM8\",\"fcCode\":\"MEM8\",\"hasContacts\":false,\"localTimeZone\":\"US/Central\",\"operatingHours\":null,\"fcType\":\"FulfillmentCenter\"},\"destinationFc\":\"MEM8\",\"vendorCode\":\"NIQ76\",\"lnStatus\":\"NEW\",\"bolNumber\":null,\"vendorRRId\":\"POSH20250528093823471\",\"trId\":\"tr-52cb8a5b-eb2a-d34e-2343-91f0ad6ac5bd\",\"isEditable\":true,\"isAFLTLSidelined\":null,\"consolidationEligibility\":\"INELIGIBLE\"},\"lnDetails\":{\"poList\":[\"7GCXZUJP\"],\"freightReadyDate\":1748545200000,\"freightReadyDateString\":\"5/29/2025\",\"labelRequired\":false,\"labelGenerated\":false,\"mediaFormatId\":\"LoadNotification\",\"creationDate\":1748399280243,\"creationDateString\":\"5/27/2025\",\"unitCount\":null,\"cartonCount\":2,\"stackedPalletCount\":0,\"unstackedPalletCount\":0,\"weight\":20,\"weightUOM\":\"pounds\",\"volume\":2,\"volumeUOM\":\"cuFt\",\"freightClassDescription\":\"60-78\",\"freightClassRange\":13,\"submissionMode\":\"OFFLINE\",\"crnList\":null,\"purchaseOrderList\":[{\"earliestShipDate\":1748329200000,\"latestShipDate\":1748599200000,\"poId\":\"7GCXZUJP\"}],\"pickupTimeSlotStart\":null,\"pickupTimeSlotEnd\":null,\"originSystemId\":\"EDI\",\"temperature\":null,\"trailerId\":null,\"pickupLoadingType\":null},\"shippingPlan\":null,\"containerVOList\":null,\"gtinMappingVOList\":null,\"lnItemVoList\":[{\"poId\":\"7GCXZUJP\",\"asin\":\"asin_2a\",\"shipQuantity\":2,\"lotNumber\":null,\"expiryDate\":\"\",\"marketplaceId\":\"1\",\"mcid\":null,\"msku\":null,\"mskuQuantity\":null,\"mskuQuantityUnit\":null,\"mskuRatio\":null,\"gtin\":null,\"aggregateQuantity\":1,\"ibq\":1,\"sku\":\"50472RV\",\"externalIdType\":\"UPC\",\"modelNumber\":\"92321B\",\"quantityUnit\":\"ASIN\",\"productDescription\":\"Nilight Driveway Curb Ramps, 2.6 Inch High Heavy-Duty Rubber Curbside Vehicle ramps for Car Truck Wheelchair Mobility Loading Dock Garage, 2 Pack\",\"glProductCode\":263,\"dcRequiredTemperature\":null,\"perishable\":false,\"expiryRequired\":false}],\"disruptionEventList\":null},\"purchaseOrderVOList\":[{\"purchaseOrder\":\"7GCXZUJP\",\"itemData\":[{\"asin\":\"asin_2a\",\"sku\":\"50472RV\",\"externalIdType\":\"UPC\",\"poAsinQuantity\":2,\"poMskuQuantity\":null,\"asnAsinQuantity\":0,\"asnMskuQuantity\":null,\"quantityUnit\":\"ASIN\",\"lotNumber\":null,\"marketplaceId\":\"1\",\"mcid\":null,\"msku\":null,\"mskuRatio\":null,\"aggregateQuantity\":1,\"ibq\":1,\"modelNumber\":\"92321B\",\"gtin\":null,\"productDescription\":\"Nilight Driveway Curb Ramps, 2.6 Inch High Heavy-Duty Rubber Curbside Vehicle ramps for Car Truck Wheelchair Mobility Loading Dock Garage, 2 Pack\",\"predictedShipFrom\":null,\"glProductCode\":263,\"dcRequiredTemperature\":null,\"perishable\":false,\"expiryRequired\":false}],\"poOrderDate\":\"2025-05-26T00:27:38.000-07:00\",\"poWindowStartDate\":\"2025-05-27T00:00:00.000-07:00\",\"poWindowEndDate\":\"2025-05-30T03:00:00.000-07:00\",\"shipTo\":{\"line1\":\"850 GATEWAY GLOBAL DR\",\"line2\":\"\",\"line3\":null,\"city\":\"BYHALIA\",\"state\":\"MS\",\"countryCode\":\"US\",\"countryName\":\"United States\",\"postalCode\":\"38611-6040\",\"province\":null,\"district\":null,\"addressId\":null,\"warehouseCode\":null,\"name\":\"MEM8\",\"fcCode\":\"MEM8\",\"hasContacts\":false,\"localTimeZone\":\"US/Central\",\"operatingHours\":null,\"fcType\":\"FulfillmentCenter\"},\"vendorCode\":\"NIQ76\",\"marketplaceId\":null,\"fcCode\":\"MEM8\",\"mcid\":null,\"freightTerms\":\"Collect\"}]}");

/***/ }),

/***/ "802a":
/***/ (function(module, exports) {

/**
 * Gets the stack value for `key`.
 *
 * @private
 * @name get
 * @memberOf Stack
 * @param {string} key The key of the value to get.
 * @returns {*} Returns the entry value.
 */
function stackGet(key) {
  return this.__data__.get(key);
}

module.exports = stackGet;


/***/ }),

/***/ "8057":
/***/ (function(module, exports) {

/**
 * A specialized version of `_.forEach` for arrays without support for
 * iteratee shorthands.
 *
 * @private
 * @param {Array} [array] The array to iterate over.
 * @param {Function} iteratee The function invoked per iteration.
 * @returns {Array} Returns `array`.
 */
function arrayEach(array, iteratee) {
  var index = -1,
      length = array == null ? 0 : array.length;

  while (++index < length) {
    if (iteratee(array[index], index, array) === false) {
      break;
    }
  }
  return array;
}

module.exports = arrayEach;


/***/ }),

/***/ "807c":
/***/ (function(module, exports) {

module.exports = parse;

//following http://www.w3.org/TR/css3-selectors/#nth-child-pseudo

//[ ['-'|'+']? INTEGER? {N} [ S* ['-'|'+'] S* INTEGER ]?
var re_nthElement = /^([+\-]?\d*n)?\s*(?:([+\-]?)\s*(\d+))?$/;

/*
	parses a nth-check formula, returns an array of two numbers
*/
function parse(formula){
	formula = formula.trim().toLowerCase();

	if(formula === "even"){
		return [2, 0];
	} else if(formula === "odd"){
		return [2, 1];
	} else {
		var parsed = formula.match(re_nthElement);

		if(!parsed){
			throw new SyntaxError("n-th rule couldn't be parsed ('" + formula + "')");
		}

		var a;

		if(parsed[1]){
			a = parseInt(parsed[1], 10);
			if(isNaN(a)){
				if(parsed[1].charAt(0) === "-") a = -1;
				else a = 1;
			}
		} else a = 0;

		return [
			a,
			parsed[3] ? parseInt((parsed[2] || "") + parsed[3], 10) : 0
		];
	}
}


/***/ }),

/***/ "8270":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\"}");

/***/ }),

/***/ "837d":
/***/ (function(module) {

module.exports = JSON.parse("{\"status\":{\"statusMessage\":\"OK\",\"responseCode\":\"OK\",\"httpReturnCode\":200,\"httpReturnCodeMessage\":\"OK\"},\"headers\":[],\"responses\":[{\"campaigns\":[{\"advertiserId\":\"ENTITY3E2E9XK5B617C\",\"advertiserType\":\"SELLER\",\"brandId\":\"1977408\",\"gcorId\":\"1977408\",\"brandName\":\"setdian\",\"brandRegistryName\":\"setdian\",\"campaignId\":\"amzn1.campaign.1V633YJX57KDS\",\"campaignName\":\"测试创建2\",\"campaignInstruction\":\"**广告活动概览：**\\n例如，简要介绍商品和广告活动\\n\\n**广告活动目标：**\\n例如，品牌知名度、销售额等\\n\\n**谈话要点：**\\n例如，美国制造、女性或非裔拥有等\\n\\n**要避免的内容：**\\n例如，关于效果提升的声明（提升了 2 倍）\\n\\n**促销代码：**\\n例如，促销代码和促销日期\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B0B6P6RSK4\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1767686400000,\"scheduledEndDateTimeInEpochMills\":1770364799999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1767514780774,\"lastUpdatedDateTimeInEpochMills\":1767514801326,\"entityAggregateState\":null,\"rank\":0,\"campaignQualifier\":\"ORGANIC\",\"campaignQualifiers\":[],\"campaignStatus\":\"DELETED\",\"interestTags\":[],\"campaignBrowseNodes\":[2335752011],\"providingSample\":false,\"fullyClaimed\":false,\"campaignEdited\":false,\"contentSubmissionRequired\":false,\"campaignUnlockTimeInEpochMills\":1768205980720,\"numberOfCreatorsRequired\":800,\"numberOfCreatorsAccepted\":0,\"numberOfCreatorsWithContentSubmitted\":0,\"commissionPercentage\":10,\"promotionalPaymentPercentage\":0,\"remainingBudget\":5000,\"clicks\":0,\"orders\":0,\"sales\":0,\"spend\":0,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignStepStatus\":null},{\"advertiserId\":\"ENTITY3E2E9XK5B617C\",\"advertiserType\":\"SELLER\",\"brandId\":\"1977408\",\"gcorId\":\"1977408\",\"brandName\":\"setdian\",\"brandRegistryName\":\"setdian\",\"campaignId\":\"amzn1.campaign.1RBYOWAN5GMDZ\",\"campaignName\":\"测试创作者计划\",\"campaignInstruction\":\"**广告活动概览：**\\n例如，简要介绍商品和广告活动\\n\\n**广告活动目标：**\\n例如，品牌知名度、销售额等\\n\\n**谈话要点：**\\n例如，美国制造、女性或非裔拥有等\\n\\n**要避免的内容：**\\n例如，关于效果提升的声明（提升了 2 倍）\\n\\n**促销代码：**\\n例如，促销代码和促销日期\",\"marketplaceId\":\"ATVPDKIKX0DER\",\"campaignAsins\":[\"B0B6PC9NF6\"],\"campaignType\":\"BOUNTY_BOARD\",\"totalBudget\":5000,\"currencyCode\":\"USD\",\"startDateTimeInEpochMills\":1765353600000,\"scheduledEndDateTimeInEpochMills\":1768031999999,\"actualEndDateTimeInEpochMills\":0,\"createDateTimeInEpochMills\":1765189234095,\"lastUpdatedDateTimeInEpochMills\":1765189298202,\"entityAggregateState\":null,\"rank\":0,\"campaignQualifier\":\"ORGANIC\",\"campaignQualifiers\":[],\"campaignStatus\":\"DELETED\",\"interestTags\":[],\"campaignBrowseNodes\":[2335752011],\"providingSample\":false,\"fullyClaimed\":false,\"campaignEdited\":false,\"contentSubmissionRequired\":false,\"campaignUnlockTimeInEpochMills\":1765880434032,\"numberOfCreatorsRequired\":800,\"numberOfCreatorsAccepted\":0,\"numberOfCreatorsWithContentSubmitted\":0,\"commissionPercentage\":10,\"promotionalPaymentPercentage\":0,\"remainingBudget\":5000,\"clicks\":0,\"orders\":0,\"sales\":0,\"spend\":0,\"numberOfContentSubmissionsRequired\":0,\"socialMediaPlatforms\":null,\"campaignStepStatus\":null}],\"totalResults\":2,\"nextToken\":null}]}");

/***/ }),

/***/ "83b9":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var isAbsoluteURL = __webpack_require__("d925");
var combineURLs = __webpack_require__("e683");

/**
 * Creates a new URL by combining the baseURL with the requestedURL,
 * only when the requestedURL is not already an absolute URL.
 * If the requestURL is absolute, this function returns the requestedURL untouched.
 *
 * @param {string} baseURL The base URL
 * @param {string} requestedURL Absolute or relative URL to combine
 * @returns {string} The combined full path
 */
module.exports = function buildFullPath(baseURL, requestedURL) {
  if (baseURL && !isAbsoluteURL(requestedURL)) {
    return combineURLs(baseURL, requestedURL);
  }
  return requestedURL;
};


/***/ }),

/***/ "8410":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"data\":{}}");

/***/ }),

/***/ "85e3":
/***/ (function(module, exports) {

/**
 * A faster alternative to `Function#apply`, this function invokes `func`
 * with the `this` binding of `thisArg` and the arguments of `args`.
 *
 * @private
 * @param {Function} func The function to invoke.
 * @param {*} thisArg The `this` binding of `func`.
 * @param {Array} args The arguments to invoke `func` with.
 * @returns {*} Returns the result of `func`.
 */
function apply(func, thisArg, args) {
  switch (args.length) {
    case 0: return func.call(thisArg);
    case 1: return func.call(thisArg, args[0]);
    case 2: return func.call(thisArg, args[0], args[1]);
    case 3: return func.call(thisArg, args[0], args[1], args[2]);
  }
  return func.apply(thisArg, args);
}

module.exports = apply;


/***/ }),

/***/ "85fb":
/***/ (function(module) {

module.exports = JSON.parse("{\"amp\":\"&\",\"apos\":\"'\",\"gt\":\">\",\"lt\":\"<\",\"quot\":\"\\\"\"}");

/***/ }),

/***/ "8604":
/***/ (function(module, exports, __webpack_require__) {

var baseHasIn = __webpack_require__("26e8"),
    hasPath = __webpack_require__("e2c0");

/**
 * Checks if `path` is a direct or inherited property of `object`.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Object
 * @param {Object} object The object to query.
 * @param {Array|string} path The path to check.
 * @returns {boolean} Returns `true` if `path` exists, else `false`.
 * @example
 *
 * var object = _.create({ 'a': _.create({ 'b': 2 }) });
 *
 * _.hasIn(object, 'a');
 * // => true
 *
 * _.hasIn(object, 'a.b');
 * // => true
 *
 * _.hasIn(object, ['a', 'b']);
 * // => true
 *
 * _.hasIn(object, 'b');
 * // => false
 */
function hasIn(object, path) {
  return object != null && hasPath(object, path, baseHasIn);
}

module.exports = hasIn;


/***/ }),

/***/ "8707":
/***/ (function(module, exports, __webpack_require__) {

/* eslint-disable node/no-deprecated-api */
var buffer = __webpack_require__("b639")
var Buffer = buffer.Buffer

// alternative to using Object.keys for old browsers
function copyProps (src, dst) {
  for (var key in src) {
    dst[key] = src[key]
  }
}
if (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {
  module.exports = buffer
} else {
  // Copy properties from require('buffer')
  copyProps(buffer, exports)
  exports.Buffer = SafeBuffer
}

function SafeBuffer (arg, encodingOrOffset, length) {
  return Buffer(arg, encodingOrOffset, length)
}

// Copy static methods from Buffer
copyProps(Buffer, SafeBuffer)

SafeBuffer.from = function (arg, encodingOrOffset, length) {
  if (typeof arg === 'number') {
    throw new TypeError('Argument must not be a number')
  }
  return Buffer(arg, encodingOrOffset, length)
}

SafeBuffer.alloc = function (size, fill, encoding) {
  if (typeof size !== 'number') {
    throw new TypeError('Argument must be a number')
  }
  var buf = Buffer(size)
  if (fill !== undefined) {
    if (typeof encoding === 'string') {
      buf.fill(fill, encoding)
    } else {
      buf.fill(fill)
    }
  } else {
    buf.fill(0)
  }
  return buf
}

SafeBuffer.allocUnsafe = function (size) {
  if (typeof size !== 'number') {
    throw new TypeError('Argument must be a number')
  }
  return Buffer(size)
}

SafeBuffer.allocUnsafeSlow = function (size) {
  if (typeof size !== 'number') {
    throw new TypeError('Argument must be a number')
  }
  return buffer.SlowBuffer(size)
}


/***/ }),

/***/ "872a":
/***/ (function(module, exports, __webpack_require__) {

var defineProperty = __webpack_require__("3b4a");

/**
 * The base implementation of `assignValue` and `assignMergeValue` without
 * value checks.
 *
 * @private
 * @param {Object} object The object to modify.
 * @param {string} key The key of the property to assign.
 * @param {*} value The value to assign.
 */
function baseAssignValue(object, key, value) {
  if (key == '__proto__' && defineProperty) {
    defineProperty(object, key, {
      'configurable': true,
      'enumerable': true,
      'value': value,
      'writable': true
    });
  } else {
    object[key] = value;
  }
}

module.exports = baseAssignValue;


/***/ }),

/***/ "89d9":
/***/ (function(module, exports, __webpack_require__) {

var baseGet = __webpack_require__("656b"),
    baseSet = __webpack_require__("159a"),
    castPath = __webpack_require__("e2e4");

/**
 * The base implementation of  `_.pickBy` without support for iteratee shorthands.
 *
 * @private
 * @param {Object} object The source object.
 * @param {string[]} paths The property paths to pick.
 * @param {Function} predicate The function invoked per property.
 * @returns {Object} Returns the new object.
 */
function basePickBy(object, paths, predicate) {
  var index = -1,
      length = paths.length,
      result = {};

  while (++index < length) {
    var path = paths[index],
        value = baseGet(object, path);

    if (predicate(value, path)) {
      baseSet(result, castPath(path, object), value);
    }
  }
  return result;
}

module.exports = basePickBy;


/***/ }),

/***/ "89ea":
/***/ (function(module, exports, __webpack_require__) {

var createCtor = __webpack_require__("1257"),
    root = __webpack_require__("2b3e");

/** Used to compose bitmasks for function metadata. */
var WRAP_BIND_FLAG = 1;

/**
 * Creates a function that wraps `func` to invoke it with the optional `this`
 * binding of `thisArg`.
 *
 * @private
 * @param {Function} func The function to wrap.
 * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
 * @param {*} [thisArg] The `this` binding of `func`.
 * @returns {Function} Returns the new wrapped function.
 */
function createBind(func, bitmask, thisArg) {
  var isBind = bitmask & WRAP_BIND_FLAG,
      Ctor = createCtor(func);

  function wrapper() {
    var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;
    return fn.apply(isBind ? thisArg : this, arguments);
  }
  return wrapper;
}

module.exports = createBind;


/***/ }),

/***/ "8a47":
/***/ (function(module) {

module.exports = JSON.parse("{\"failureModel\":null,\"tabsData\":[{\"tabId\":\"SUBMITTED\",\"currency\":{\"currencySymbol\":\"EUR\",\"amount\":73331.1328239719},\"count\":30},{\"tabId\":\"REJECTED\",\"currency\":{\"currencySymbol\":\"EUR\",\"amount\":0},\"count\":0},{\"tabId\":\"DRAFT\",\"currency\":{\"currencySymbol\":\"EUR\",\"amount\":0},\"count\":0}]}");

/***/ }),

/***/ "8adb":
/***/ (function(module, exports) {

/**
 * Gets the value at `key`, unless `key` is "__proto__" or "constructor".
 *
 * @private
 * @param {Object} object The object to query.
 * @param {string} key The key of the property to get.
 * @returns {*} Returns the property value.
 */
function safeGet(object, key) {
  if (key === 'constructor' && typeof object[key] === 'function') {
    return;
  }

  if (key == '__proto__') {
    return;
  }

  return object[key];
}

module.exports = safeGet;


/***/ }),

/***/ "8c0a":
/***/ (function(module) {

module.exports = JSON.parse("{\"failureModel\":null,\"invoiceHeader\":{\"vendorInvoiceNumber\":\"UK-83DQ4UCZ\",\"isValidated\":null,\"dateHeaders\":null,\"sortedInvoiceDateHeaders\":{\"invoiceDate\":1749513600000,\"invoiceSubmissionDate\":1749523853000,\"lastUpdatedDate\":1749523856000,\"invoiceDueDate\":1755043199000},\"leftInvoiceHeaders\":{\"simar-po-numbers-label\":{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"1\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},\"vendorCodes\":{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"1\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},\"simar-child-invoices-label\":{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"0\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},\"simar-latest-scr-label\":{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"-\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}},\"rightInvoiceHeaders\":{\"simar-marketplace-label\":{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"GB\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},\"payeeCode\":{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"IFADT\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},\"simar-invoice-amount-field\":{\"phraseType\":\"CURRENCY\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":0,\"url\":null,\"currency\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},\"simar-total-processed-field\":{\"phraseType\":\"CURRENCY\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":0,\"url\":null,\"currency\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}},\"summaryData\":{\"amountSettledPercentage\":100,\"amountSettled\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"summaryTableRowDataList\":[{\"status\":\"simar-invoices-queued-for-payement\",\"amount\":{\"currencySymbol\":\"GBP\",\"amount\":1074.36},\"isExpandable\":false,\"statusDescription\":[{\"phraseType\":\"TEXT\",\"invoiceNumber\":null,\"wsid\":\"simar-insights-payment-due-on\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null},{\"phraseType\":\"DATE\",\"invoiceNumber\":null,\"wsid\":null,\"cssId\":null,\"date\":1755043199000,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":null,\"additionalData\":null,\"isDisabled\":null,\"disabledReason\":null}],\"accordianTableData\":null}]}}}");

/***/ }),

/***/ "8d14":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony default export */ __webpack_exports__["default"] = ("<!doctype html><html lang=\"en-GB\" data-19ax5a9jf=\"dingo\" class=\"a-no-js\"><head><script>var aPageStart = (new Date()).getTime();</script><meta charset=\"utf-8\"/>\n  <script type='text/javascript'>window.ue_mkt = \"vceu\";</script>\n  <script type='text/javascript'>var ue_t0=ue_t0||+new Date();</script>\n  <script type='text/javascript'>\n  window.ue_ihb = (window.ue_ihb || window.ueinit || 0) + 1;\n  if (window.ue_ihb === 1) {\n  \n  var ue_csm = window,\n      ue_hob = +new Date();\n  (function(d){var e=d.ue=d.ue||{},f=Date.now||function(){return+new Date};e.d=function(b){return f()-(b?0:d.ue_t0)};e.stub=function(b,a){if(!b[a]){var c=[];b[a]=function(){c.push([c.slice.call(arguments),e.d(),d.ue_id])};b[a].replay=function(b){for(var a;a=c.shift();)b(a[0],a[1],a[2])};b[a].isStub=1}};e.exec=function(b,a){return function(){try{return b.apply(this,arguments)}catch(c){ueLogError(c,{attribution:a||\"undefined\",logLevel:\"WARN\"})}}}})(ue_csm);\n  \n  \n      var ue_err_chan = 'jserr';\n  (function(d,e){function h(f,b){if(!(a.ec>a.mxe)&&f){a.ter.push(f);b=b||{};var c=f.logLevel||b.logLevel;c&&c!==k&&c!==m&&c!==n&&c!==p||a.ec++;c&&c!=k||a.ecf++;b.pageURL=\"\"+(e.location?e.location.href:\"\");b.logLevel=c;b.attribution=f.attribution||b.attribution;a.erl.push({ex:f,info:b})}}function l(a,b,c,e,g){d.ueLogError({m:a,f:b,l:c,c:\"\"+e,err:g,fromOnError:1,args:arguments},g?{attribution:g.attribution,logLevel:g.logLevel}:void 0);return!1}var k=\"FATAL\",m=\"ERROR\",n=\"WARN\",p=\"DOWNGRADED\",a={ec:0,ecf:0,\n  pec:0,ts:0,erl:[],ter:[],buffer:[],mxe:50,startTimer:function(){a.ts++;setInterval(function(){d.ue&&a.pec<a.ec&&d.uex(\"at\");a.pec=a.ec},1E4)}};l.skipTrace=1;h.skipTrace=1;h.isStub=1;d.ueLogError=h;d.ue_err=a;e.onerror=l})(ue_csm,window);\n  \n  \n  var ue_id = 'JKHZS17H9F94VVVE25V6',\n      ue_url,\n      ue_navtiming = 1,\n      ue_mid = 'A1PA6795UKMFR9',\n      ue_sid = '262-7807958-1059108',\n      ue_sn = 'vendorcentral.amazon.de',\n      ue_furl = 'fls-eu.amazon.de',\n      ue_surl = 'https://unagi-eu.amazon.com/1/events/com.amazon.csm.nexusclient.prod',\n      ue_int = 0,\n      ue_fcsn = 1,\n      ue_urt = 3,\n      ue_rpl_ns = 'cel-rpl',\n      ue_ddq = 1,\n      ue_fpf = '//fls-eu.amazon.de/1/batch/1/OP/A1PA6795UKMFR9:262-7807958-1059108:JKHZS17H9F94VVVE25V6:vendorcentral.amazon.de$uedata=s:',\n      ue_sbuimp = 1,\n      ue_ibft = 0,\n      ue_sswmts = 0,\n      ue_jsmtf = 0,\n      ue_fnt = 0,\n      ue_lpsi = 6000,\n      ue_no_counters = 0,\n      ue_stop_all_counters = 0,\n      ue_lob = '1',\n      ue_sjslob = 0,\n      ue_dsbl_cel = 1,\n  \n      ue_swi = 1;\n  var ue_viz=function(){(function(b,f,d){function g(){return(!(p in d)||0<d[p])&&(!(q in d)||0<d[q])}function h(c){if(b.ue.viz.length<w&&!r){var a=c.type;c=c.originalEvent;/^focus./.test(a)&&c&&(c.toElement||c.fromElement||c.relatedTarget)||(a=g()?f[s]||(\"blur\"==a||\"focusout\"==a?t:u):t,b.ue.viz.push(a+\":\"+(+new Date-b.ue.t0)),a==u&&(b.ue.isl&&x(\"at\"),r=1))}}for(var r=0,x=b.uex,a,k,l,s,v=[\"\",\"webkit\",\"o\",\"ms\",\"moz\"],e=0,m=1,u=\"visible\",t=\"hidden\",p=\"innerWidth\",q=\"innerHeight\",w=20,n=0;n<v.length&&!e;n++)if(a=\n  v[n],k=(a?a+\"H\":\"h\")+\"idden\",e=\"boolean\"==typeof f[k])l=a+\"visibilitychange\",s=(a?a+\"V\":\"v\")+\"isibilityState\";h({});e&&f.addEventListener(l,h,0);m=g()?1:0;d.addEventListener(\"resize\",function(){var a=g()?1:0;m!==a&&(m=a,h({}))},{passive:!0});b.ue&&e&&(b.ue.pageViz={event:l,propHid:k})})(ue_csm,ue_csm.document,ue_csm.window)};window.ue_viz=ue_viz;\n  \n  \n  ue.stub(ue,\"event\");ue.stub(ue,\"onSushiUnload\");ue.stub(ue,\"onSushiFlush\");\n  \n  ue.stub(ue,\"log\");ue.stub(ue,\"onunload\");ue.stub(ue,\"onflush\");\n  (function(b){function g(){var a={requestId:b.ue_id||\"rid\",server:b.ue_sn||\"sn\",obfuscatedMarketplaceId:b.ue_mid||\"mid\"};b.ue_sjslob&&(a.lob=b.ue_lob||\"0\");return a}var a=b.ue,h=1===b.ue_no_counters,k=1===b.ue_stop_all_counters;a.cv={};a.cv.scopes={};a.cv.buffer=[];a.count=function(b,f,c){var e={},d=a.cv,g=c&&0===c.c;e.counter=b;e.value=f;e.t=a.d();c&&c.scope&&(d=a.cv.scopes[c.scope]=a.cv.scopes[c.scope]||{},e.scope=c.scope);if(void 0===f)return d[b];d[b]=f;d=0;c&&c.bf&&(d=1);k||h||(ue_csm.ue_sclog||\n  !a.clog||0!==d||g?a.log&&a.log(e,\"csmcount\",{c:1,bf:d}):a.clog(e,\"csmcount\",{bf:d}));a.cv.buffer.push({c:b,v:f})};a.count(\"baselineCounter2\",1);a&&a.event&&(a.event(g(),\"csm\",\"csm.CSMBaselineEvent.4\"),a.count(\"nexusBaselineCounter\",1,{bf:1}))})(ue_csm);\n  \n  \n  \n  var ue_hoe = +new Date();\n  }\n  window.ueinit = window.ue_ihb;\n  </script>\n  \n  <!-- dnm9lbqd5ctze356038stvi3 -->\n  <script>window.ue && ue.count && ue.count('CSMLibrarySize', 10359)</script><meta name=\"a2z:request_id\" content=\"JKHZS17H9F94VVVE25V6\"><meta name=\"a2z:mons_app_name\" content=\"ContraCogsLibertyApp\"><meta name=\"a2z:mons_config_name\" content=\"ContraCogsLibertyApp_MonsV2\"><meta name=\"a2z:mons_site_name\" content=\"vendorCentral\"><script>!function(){if(window.BOOMR&&(window.BOOMR.version||window.BOOMR.snippetExecuted))return;window.BOOMR=window.BOOMR||{},window.BOOMR.snippetExecuted=!0;var e,t,n,o=document.createElement(\"iframe\"),d=window;function i(e){d.BOOMR_onload=e&&e.timeStamp||(new Date).getTime()}d.addEventListener?d.addEventListener(\"load\",i,!1):d.attachEvent&&d.attachEvent(\"onload\",i),o.src=\"javascript:void(0)\",o.title=\"\",o.role=\"presentation\",(o.frameElement||o).style.cssText=\"width:0;height:0;border:0;display:none;\",(n=document.getElementsByTagName(\"script\")[0])?n.parentNode.insertBefore(o,n):document.getElementsByTagName(\"head\")[0].appendChild(o);try{t=o.contentWindow.document}catch(n){e=document.domain,o.src=\"javascript:var d=document.open();d.domain='\"+e+\"';void(0);\",t=o.contentWindow.document}t.open()._l=function(){var t=this.createElement(\"script\");e&&(this.domain=e),t.id=\"boomr-if-as\",t.src=\"https://d1t40axu4ik42k.cloudfront.net/boomerang.8c6c93a3f6c6106b3e97.min.js\",window.BOOMR_lstart=(new Date).getTime(),this.body.appendChild(t)},t.write('<body onload=\"document._l();\">'),t.close()}();</script><script type=\"text/javascript\" id=\"cathode-loader\" async=\"\" data-mons=\"true\" data-browser-performance=\"true\" data-http_request_id=\"JKHZS17H9F94VVVE25V6\" data-sn=\"vendorCentral\" data-domain=\"prod\" data-realm=\"EUAmazon\" data-application-name=\"ContraCogsLibertyApp\" src=\"https://d1t40axu4ik42k.cloudfront.net/cathodeBoomerang.a9ac4d996f11e99f327a.min.js\"></script><link rel=\"stylesheet\" href=\"https://d1xay4df2pqje6.cloudfront.net/main.8f661968.css\" />\n  <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/11EIQ5IGqaL._RC|01ZTHTZObnL.css,51rW56+edML.css,31psa26hM5L.css,11D3BPoiHRL.css,01qDClimA1L.css,01s-u+zGGeL.css,413Vvv3GONL.css,11TIuySqr6L.css,01Rw4F+QU6L.css,11JJsNcqOIL.css,01J3raiFJrL.css,01IdKcBuAdL.css,014QJx7nWqL.css,01g0qANOfIL.css,01gOs5CTljL.css,01l+IElyGxL.css,21zWwo38rCL.css,01vFUtN2xgL.css,01dKnqpnxfL.css,01Sv7-fQIGL.css,51rPSKeSOSL.css,01XPHJk60-L.css,11ChJlzZQoL.css,01UgxIH-BSL.css,01fxuupJToL.css,21izvssjRGL.css,01oATFSeEjL.css,21RWaJb6t+L.css,11I+YZzE7kL.css,21VjvVtGWXL.css,01CFUgsA-YL.css,31L6liY0zYL.css,11-tILsHNJL.css,11PDZ29p-PL.css,11qlWiOaPwL.css,11tNhCU--0L.css,11msBd9oOTL.css,11BO1RWH3kL.css,01ELGsSvEzL.css,21Jbji9XlaL.css,01petkFB4FL.css,11El-W1-pIL.css,01vfkVAfcLL.css,21BqeAVSM4L.css,11-w3ouFc1L.css,11hvENnYNUL.css,11Qek6G6pNL.css,01890+Vwk8L.css,014VAMpg+ZL.css,01qiwJ7qDfL.css,21TAMzcrOKL.css,016mfgi+D2L.css,01eniAikTiL.css,21yq4mhvspL.css,013-xYw+SRL.css_.css?AUIClients/AmazonUI#gb.not-trident.1092656-T2.1186350-T2.1186361-T2.1186360-T1.1073045-T2\" />\n  <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/11+BsbU2mSL._RC|217baEDR1AL.css_.css?AUIClients/AmazonUICalendar#not-trident\" />\n  <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/11i6psSZM5L.css?AUIClients/ContraCogsLibertyAssets\" />\n  <script>\n  (function(b,a,c,d){if((b=b.AmazonUIPageJS||b.P)&&b.when&&b.register){c=[];for(a=a.currentScript;a;a=a.parentElement)a.id&&c.push(a.id);return b.log(\"A copy of P has already been loaded on this page.\",\"FATAL\",c.join(\" \"))}})(window,document,Date);(function(a,b,c,d){\"use strict\";a._pSetI=function(){return null}})(window,document,Date);(function(d,G,I,J){\"use strict\";d._sw=function(){var p;return function(w,e,u,z,h,A,q,k,x,B){p||(p=!0,B.execute(\"RetailPageServiceWorker\",function(){function y(a,b){g.controller&&a?(a={feature:\"retail_service_worker_messaging\",command:a},b&&(a.data=b),g.controller.postMessage(a)):a&&h(\"sw:sw_message_no_ctrl\",1)}function p(a){var b=a.data;if(b&&\"retail_service_worker_messaging\"===b.feature&&b.command&&b.data){var c=b.data;a=d.ue;var f=d.ueLogError;switch(b.command){case \"log_counter\":a&&k(a.count)&&\n  c.name&&a.count(c.name,0===c.value?0:c.value||1);break;case \"log_tag\":a&&k(a.tag)&&c.tag&&(a.tag(c.tag),b=d.uex,a.isl&&k(b)&&b(\"at\"));break;case \"log_error\":f&&k(f)&&c.message&&f({message:c.message,logLevel:c.level||\"ERROR\",attribution:c.attribution||\"RetailServiceWorker\"});break;case \"log_weblab_trigger\":if(!c.weblab||!c.treatment)break;a&&k(a.trigger)?a.trigger(c.weblab,c.treatment):(h(\"sw:wt:miss\"),h(\"sw:wt:miss:\"+c.weblab+\":\"+c.treatment));break;default:h(\"sw:unsupported_message_command\",1)}}}\n  function v(a,b){return\"sw:\"+(b||\"\")+\":\"+a+\":\"}function C(){l.forEach(function(a){q(a)})}function n(a){return a.capabilities.isAmazonApp&&a.capabilities.android}function D(a,b,c){if(b)if(b.mshop&&n(a))a=v(c,\"mshop_and\"),b=b.mshop.action,l.push(a+\"supported\"),b(a,c);else if(b.browser){a=u(/Chrome/i)&&!u(/Edge/i)&&!u(/OPR/i)&&!a.capabilities.isAmazonApp&&!u(new RegExp(z+\"bwv\"+z+\"b\"));var f=b.browser;b=v(c,\"browser\");a?(a=f.action,l.push(b+\"supported\"),a(b,c)):l.push(b+\"unsupported\")}}function E(a,b,\n  c){a&&l.push(v(\"register\",c)+\"unsupported\");b&&l.push(v(\"unregister\",c)+\"unsupported\");C()}try{var g=navigator.serviceWorker}catch(a){q(\"sw:nav_err\")}(function(){if(g){var a=function(){y(\"page_loaded\",{rid:d.ue_id,mid:d.ue_mid,pty:d.ue_pty,sid:d.ue_sid,spty:d.ue_spty,furl:d.ue_furl})};x(g,\"message\",p);y(\"client_messaging_ready\");B.when(\"load\").execute(a);x(g,\"controllerchange\",function(){y(\"client_messaging_ready\");\"complete\"===G.readyState&&a()})}})();var l=[],m=function(a,b){var c=d.uex,f=d.uet;\n  a=e(\":\",\"aui\",\"sw\",a);\"ld\"===b&&k(c)?c(\"ld\",a,{wb:1}):k(f)&&f(b,a,{wb:1})},H=function(a,b,c){function f(a){b&&k(b.failure)&&b.failure(a)}function F(){l=setTimeout(function(){q(e(\":\",\"sw:\"+r,t.TIMED_OUT));f({ok:!1,statusCode:t.TIMED_OUT,done:!1});m(r,\"ld\")},c||4E3)}var t={NO_CONTROLLER:\"no_ctrl\",TIMED_OUT:\"timed_out\",UNSUPPORTED_BROWSER:\"unsupported_browser\",UNEXPECTED_RESPONSE:\"unexpected_response\"},r=e(\":\",a.feature,a.command),l,n=!0;if(\"MessageChannel\"in d&&g&&\"controller\"in g)if(g.controller){var p=\n  new MessageChannel;p.port1.onmessage=function(c){(c=c.data)&&c.feature===a.feature&&c.command===a.command?(n&&(m(r,\"cf\"),n=!1),m(r,\"af\"),clearTimeout(l),c.done||F(),c.ok?b&&k(b.success)&&b.success(c):f(c),c.done&&m(r,\"ld\")):h(e(\":\",\"sw:\"+r,t.UNEXPECTED_RESPONSE),1)};F();m(r,\"bb\");g.controller.postMessage(a,[p.port2])}else q(e(\":\",\"sw:\"+a.feature,t.NO_CONTROLLER)),f({ok:!1,statusCode:t.NO_CONTROLLER,done:!0});else q(e(\":\",\"sw:\"+a.feature,t.UNSUPPORTED_BROWSER)),f({ok:!1,statusCode:t.UNSUPPORTED_BROWSER,\n  done:!0})};(function(){g?(m(\"ctrl_changed\",\"bb\"),g.addEventListener(\"controllerchange\",function(){q(\"sw:ctrl_changed\");m(\"ctrl_changed\",\"ld\")})):h(e(\":\",\"sw:ctrl_changed\",\"sw_unsupp\"),1)})();(function(){var a=function(){m(b,\"ld\");var a=d.uex;H({feature:\"page_proxy\",command:\"request_feature_tags\"},{success:function(b){b=b.data;Array.isArray(b)&&b.forEach(function(a){\"string\"===typeof a?q(e(\":\",\"sw:ppft\",a)):h(e(\":\",\"sw:ppft\",\"invalid_tag\"),1)});h(e(\":\",\"sw:ppft\",\"success\"),1);A&&A.isl&&k(a)&&a(\"at\")},\n  failure:function(a){h(e(\":\",\"sw:ppft\",\"error:\"+(a.statusCode||\"ppft_error\")),1)}})};if(\"requestIdleCallback\"in d){var b=e(\":\",\"ppft\",\"callback_ricb\");d.requestIdleCallback(a,{timeout:1E3})}else b=e(\":\",\"ppft\",\"callback_timeout\"),setTimeout(a,0);m(b,\"bb\")})();(function(a){var b=a.reg,c=a.unreg;g&&g.getRegistrations?(w.when(\"A\").execute(function(b){if((a.reg.mshop||a.unreg.mshop)&&\"function\"===typeof n&&n(b)){var f=a.reg.mshop?\"T1\":\"C\",e=d.ue;e&&e.trigger?e.trigger(\"MSHOP_SW_CLIENT_446196\",f):h(\"sw:mshop:wt:failed\")}D(b,\n  c,\"unregister\")}),x(d,\"load\",function(){w.when(\"A\").execute(function(a){D(a,b,\"register\");C()})})):(E(b&&b.browser,c&&c.browser,\"browser\"),w.when(\"A\").execute(function(a){\"function\"===typeof n&&n(a)&&E(b&&b.mshop,c&&c.mshop,\"mshop_and\")}))})({reg:{},unreg:{}})}))}}()})(window,document,Date);(function(c,e,I,B){\"use strict\";c._pd=function(){var a,u;return function(C,f,h,k,b,D,v,E,F){function w(d){try{return d()}catch(J){return!1}}function l(){if(m){var d={w:c.innerWidth||b.clientWidth,h:c.innerHeight||b.clientHeight};5<Math.abs(d.w-q.w)||50<d.h-q.h?(q=d,n=4,(d=a.mobile||a.tablet?450<d.w&&d.w>d.h:1250<=d.w)?k(b,\"a-ws\"):b.className=v(b,\"a-ws\")):0<n&&(n--,x=setTimeout(l,16))}}function G(d){(m=d===B?!m:!!d)&&l()}function H(){return m}if(!u){u=!0;var r=function(){var d=[\"O\",\"ms\",\"Moz\",\"Webkit\"],\n  c=e.createElement(\"div\");return{testGradients:function(){return!0},test:function(a){var b=a.charAt(0).toUpperCase()+a.substr(1);a=(d.join(b+\" \")+b+\" \"+a).split(\" \");for(b=a.length;b--;)if(\"\"===c.style[a[b]])return!0;return!1},testTransform3d:function(){return!0}}}(),y=b.className,z=/(^| )a-mobile( |$)/.test(y),A=/(^| )a-tablet( |$)/.test(y);a={audio:function(){return!!e.createElement(\"audio\").canPlayType},video:function(){return!!e.createElement(\"video\").canPlayType},canvas:function(){return!!e.createElement(\"canvas\").getContext},\n  svg:function(){return!!e.createElementNS&&!!e.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\").createSVGRect},offline:function(){return navigator.hasOwnProperty&&navigator.hasOwnProperty(\"onLine\")&&navigator.onLine},dragDrop:function(){return\"draggable\"in e.createElement(\"span\")},geolocation:function(){return!!navigator.geolocation},history:function(){return!(!c.history||!c.history.pushState)},webworker:function(){return!!c.Worker},autofocus:function(){return\"autofocus\"in e.createElement(\"input\")},\n  inputPlaceholder:function(){return\"placeholder\"in e.createElement(\"input\")},textareaPlaceholder:function(){return\"placeholder\"in e.createElement(\"textarea\")},localStorage:function(){return\"localStorage\"in c&&null!==c.localStorage},orientation:function(){return\"orientation\"in c},touch:function(){return\"ontouchend\"in e},gradients:function(){return r.testGradients()},hires:function(){var a=c.devicePixelRatio&&1.5<=c.devicePixelRatio||c.matchMedia&&c.matchMedia(\"(min-resolution:144dpi)\").matches;E(\"hiRes\"+\n  (z?\"Mobile\":A?\"Tablet\":\"Desktop\"),a?1:0);return a},transform3d:function(){return r.testTransform3d()},touchScrolling:function(){return f(/Windowshop|android|OS ([5-9]|[1-9][0-9]+)(_[0-9]{1,2})+ like Mac OS X|SOFTWARE=([5-9]|[1-9][0-9]+)(.[0-9]{1,2})+.*DEVICE=iPhone|Chrome|Silk|Firefox|Trident.+?; Touch/i)},ios:function(){return f(/OS [1-9][0-9]*(_[0-9]*)+ like Mac OS X/i)&&!f(/trident|Edge/i)},android:function(){return f(/android.([1-9]|[L-Z])/i)&&!f(/trident|Edge/i)},mobile:function(){return z},\n  tablet:function(){return A},rtl:function(){return\"rtl\"===b.dir}};for(var g in a)a.hasOwnProperty(g)&&(a[g]=w(a[g]));for(var t=\"textShadow textStroke boxShadow borderRadius borderImage opacity transform transition\".split(\" \"),p=0;p<t.length;p++)a[t[p]]=w(function(){return r.test(t[p])});var m=!0,x=0,q={w:0,h:0},n=4;l();h(c,\"resize\",function(){clearTimeout(x);n=4;l()});b.className=v(b,\"a-no-js\");k(b,\"a-js\");!f(/OS [1-8](_[0-9]*)+ like Mac OS X/i)||c.navigator.standalone||f(/safari/i)||k(b,\"a-ember\");\n  h=[];for(g in a)a.hasOwnProperty(g)&&a[g]&&h.push(\"a-\"+g.replace(/([A-Z])/g,function(a){return\"-\"+a.toLowerCase()}));k(b,h.join(\" \"));b.setAttribute(\"data-aui-build-date\",F);C.register(\"p-detect\",function(){return{capabilities:a,localStorage:a.localStorage&&D,toggleResponsiveGrid:G,responsiveGridEnabled:H}});return a||{}}}}()})(window,document,Date);(function(g,l,C,D){function E(a){n&&n.tag&&n.tag(p(\":\",\"aui\",a))}function m(a,b){n&&n.count&&n.count(\"aui:\"+a,0===b?0:b||(n.count(\"aui:\"+a)||0)+1)}function F(a){try{return a.test(navigator.userAgent)}catch(b){return!1}}function G(a){return\"function\"===typeof a}function u(a,b,c){a.addEventListener?a.addEventListener(b,c,!1):a.attachEvent&&a.attachEvent(\"on\"+b,c)}function p(a,b,c,f){b=b&&c?b+a+c:b||c;return f?p(a,b,f):b}function y(a,b,c){try{Object.defineProperty(a,b,{value:c,writable:!1})}catch(f){a[b]=\n  c}return c}function O(a,b){a.className=P(a,b)+\" \"+b}function P(a,b){return(\" \"+a.className+\" \").split(\" \"+b+\" \").join(\" \").replace(/^ | $/g,\"\")}function ca(a,b,c){var f=c=a.length,e=function(){f--||(H.push(b),I||(q?q.set(z):setTimeout(z,0),I=!0))};for(e();c--;)Q[a[c]]?e():(v[a[c]]=v[a[c]]||[]).push(e)}function da(a,b,c,f,e){var d=l.createElement(a?\"script\":\"link\");u(d,\"error\",f);e&&u(d,\"load\",e);a?(d.type=\"text/javascript\",d.async=!0,c&&/AUIClients|images[/]I/.test(b)&&d.setAttribute(\"crossorigin\",\n  \"anonymous\"),d.src=b):(d.rel=\"stylesheet\",d.href=b);l.getElementsByTagName(\"head\")[0].appendChild(d)}function R(a,b){return function(c,f){function e(){da(b,c,d,function(b){J?m(\"resource_unload\"):d?(d=!1,m(\"resource_retry\"),e()):(m(\"resource_error\"),a.log(\"Asset failed to load: \"+c));b&&b.stopPropagation?b.stopPropagation():g.event&&(g.event.cancelBubble=!0)},f)}if(S[c])return!1;S[c]=!0;m(\"resource_count\");var d=!0;return!e()}}function ea(a,b,c){for(var f={name:a,guard:function(c){return b.guardFatal(a,\n  c)},guardTime:function(a){return b.guardTime(a)},logError:function(c,d,e){b.logError(c,d,e,a)}},e=[],d=0;d<c.length;d++)A.hasOwnProperty(c[d])&&(e[d]=K.hasOwnProperty(c[d])?K[c[d]](A[c[d]],f):A[c[d]]);return e}function w(a,b,c,f,e){return function(d,k){function n(){var a=null;f?a=k:G(k)&&(q.start=r(),a=k.apply(g,ea(d,h,l)),q.end=r());if(b){A[d]=a;a=d;for(Q[a]=!0;(v[a]||[]).length;)v[a].shift()();delete v[a]}q.done=!0}var h=e||this;G(d)&&(k=d,d=D);b&&(d=d?d.replace(T,\"\"):\"__NONAME__\",L.hasOwnProperty(d)&&\n  h.error(p(\", reregistered by \",p(\" by \",d+\" already registered\",L[d]),h.attribution),d),L[d]=h.attribution);for(var l=[],m=0;m<a.length;m++)l[m]=a[m].replace(T,\"\");var q=x[d||\"anon\"+ ++fa]={depend:l,registered:r(),namespace:h.namespace};d&&ha.hasOwnProperty(d);c?n():ca(l,h.guardFatal(d,n),d);return{decorate:function(a){K[d]=h.guardFatal(d,a)}}}}function U(a){return function(){var b=Array.prototype.slice.call(arguments);return{execute:w(b,!1,a,!1,this),register:w(b,!0,a,!1,this)}}}function M(a,b){return function(c,\n  f){f||(f=c,c=D);var e=this.attribution;return function(){h.push(b||{attribution:e,name:c,logLevel:a});var d=f.apply(this,arguments);h.pop();return d}}}function B(a,b){this.load={js:R(this,!0),css:R(this)};y(this,\"namespace\",b);y(this,\"attribution\",a)}function V(){l.body?k.trigger(\"a-bodyBegin\"):setTimeout(V,20)}\"use strict\";var t=C.now=C.now||function(){return+new C},r=function(a){return a&&a.now?a.now.bind(a):t}(g.performance),ia=r(),ha={},n=g.ue;E();E(\"aui_build_date:3.25.2-2025-04-21\");var W={getItem:function(a){try{return g.localStorage.getItem(a)}catch(b){}},\n  setItem:function(a,b){try{return g.localStorage.setItem(a,b)}catch(c){}}},q=g._pSetI(),H=[],ja=[],I=!1,ka=navigator.scheduling&&\"function\"===typeof navigator.scheduling.isInputPending;var z=function(){for(var a=q?q.set(z):setTimeout(z,0),b=t();ja.length||H.length;)if(H.shift()(),q&&ka){if(150<t()-b&&!navigator.scheduling.isInputPending()||50<t()-b&&navigator.scheduling.isInputPending())return}else if(50<t()-b)return;q?q.clear(a):clearTimeout(a);I=!1};var Q={},v={},S={},J=!1;u(g,\"beforeunload\",function(){J=\n  !0;setTimeout(function(){J=!1},1E4)});var T=/^prv:/,L={},A={},K={},x={},fa=0,X=String.fromCharCode(92),h=[],Y=!0,Z=g.onerror;g.onerror=function(a,b,c,f,e){e&&\"object\"===typeof e||(e=Error(a,b,c),e.columnNumber=f,e.stack=b||c||f?p(X,e.message,\"at \"+p(\":\",b,c,f)):D);var d=h.pop()||{};e.attribution=p(\":\",e.attribution||d.attribution,d.name);e.logLevel=d.logLevel;e.attribution&&console&&console.log&&console.log([e.logLevel||\"ERROR\",a,\"thrown by\",e.attribution].join(\" \"));h=[];Z&&(d=[].slice.call(arguments),\n  d[4]=e,Z.apply(g,d))};B.prototype={logError:function(a,b,c,f){b={message:b,logLevel:c||\"ERROR\",attribution:p(\":\",this.attribution,f)};if(g.ueLogError)return g.ueLogError(a||b,a?b:null),!0;console&&console.error&&(console.log(b),console.error(a));return!1},error:function(a,b,c,f){a=Error(p(\":\",f,a,c));a.attribution=p(\":\",this.attribution,b);throw a;},guardError:M(),guardFatal:M(\"FATAL\"),guardCurrent:function(a){var b=h[h.length-1];return b?M(b.logLevel,b).call(this,a):a},guardTime:function(a){var b=\n  h[h.length-1],c=b&&b.name;return c&&c in x?function(){var b=r(),e=a.apply(this,arguments);x[c].async=(x[c].async||0)+r()-b;return e}:a},log:function(a,b,c){return this.logError(null,a,b,c)},declare:w([],!0,!0,!0),register:w([],!0),execute:w([]),AUI_BUILD_DATE:\"3.25.2-2025-04-21\",when:U(),now:U(!0),trigger:function(a,b,c){var f=t();this.declare(a,{data:b,pageElapsedTime:f-(g.aPageStart||NaN),triggerTime:f});c&&c.instrument&&N.when(\"prv:a-logTrigger\").execute(function(b){b(a)})},handleTriggers:function(){this.log(\"handleTriggers deprecated\")},\n  attributeErrors:function(a){return new B(a)},_namespace:function(a,b){return new B(a,b)},setPriority:function(a){Y?Y=!1:this.log(\"setPriority only accept the first call.\")}};var k=y(g,\"AmazonUIPageJS\",new B);var N=k._namespace(\"PageJS\",\"AmazonUI\");N.declare(\"prv:p-debug\",x);k.declare(\"p-recorder-events\",[]);k.declare(\"p-recorder-stop\",function(){});y(g,\"P\",k);V();if(l.addEventListener){var aa;l.addEventListener(\"DOMContentLoaded\",aa=function(){k.trigger(\"a-domready\");l.removeEventListener(\"DOMContentLoaded\",\n  </script>\n  <script src=\"https://d1xay4df2pqje6.cloudfront.net/main.89520936.js\"></script>\n  <title>Amazon</title><script type='text/javascript'>\n  window.ue_ihe = (window.ue_ihe || 0) + 1;\n  if (window.ue_ihe === 1) {\n  (function(c){c&&1===c.ue_jsmtf&&\"object\"===typeof c.P&&\"function\"===typeof c.P.when&&c.P.when(\"mshop-interactions\").execute(function(e){\"object\"===typeof e&&\"function\"===typeof e.addListener&&e.addListener(function(b){\"object\"===typeof b&&\"ORIGIN\"===b.dataSource&&\"number\"===typeof b.clickTime&&\"object\"===typeof b.events&&\"number\"===typeof b.events.pageVisible&&(c.ue_jsmtf_interaction={pv:b.events.pageVisible,ct:b.clickTime})})})})(ue_csm);\n  (function(c,e,b){function m(a){f||(f=d[a.type].id,\"undefined\"===typeof a.clientX?(h=a.pageX,k=a.pageY):(h=a.clientX,k=a.clientY),2!=f||l&&(l!=h||n!=k)?(r(),g.isl&&e.setTimeout(function(){p(\"at\",g.id)},0)):(l=h,n=k,f=0))}function r(){for(var a in d)d.hasOwnProperty(a)&&g.detach(a,m,d[a].parent)}function s(){for(var a in d)d.hasOwnProperty(a)&&g.attach(a,m,d[a].parent)}function t(){var a=\"\";!q&&f&&(q=1,a+=\"&ui=\"+f);return a}var g=c.ue,p=c.uex,q=0,f=0,l,n,h,k,d={click:{id:1,parent:b},mousemove:{id:2,\n  parent:b},scroll:{id:3,parent:e},keydown:{id:4,parent:b}};g&&p&&(s(),g._ui=t)})(ue_csm,window,document);\n  \n  \n  \n  \n  ue_csm.ue.stub(ue,\"impression\");\n  \n  \n  ue.stub(ue,\"trigger\");\n  \n  \n  if(window.ue&&uet) { uet('bb'); }\n  \n  }\n  </script>\n  <script>window.ue && ue.count && ue.count('CSMLibrarySize', 1263)</script></head><body class=\"a-aui_72554-c a-aui_template_weblab_cache_333406-c a-aui_a11y_6_837773-c a-aui_killswitch_csa_logger_372963-t1 a-bw_aui_cxc_alert_measurement_1074111-c\"><div id=\"a-page\"><script type=\"a-state\" data-a-state=\"{&quot;key&quot;:&quot;a-wlab-states&quot;}\" >\n      {\"AUI_A11Y_6_837773\":\"C\",\"AUI_TEMPLATE_WEBLAB_CACHE_333406\":\"C\",\"BW_AUI_CXC_ALERT_MEASUREMENT_1074111\":\"C\",\"AUI_72554\":\"C\",\"AUI_KILLSWITCH_CSA_LOGGER_372963\":\"T1\"}\n  </script>\n  \n  \n  <script>\n  !function(){function n(n,t){var r=i(n);return t&&(r=r(\"instance\",t)),r}var r=[],c=0,i=function(t){return function(){var n=c++;return r.push([t,[].slice.call(arguments,0),n,{time:Date.now()}]),i(n)}};n._s=r,this.csa=n}();;\n  csa('Config', {});\n  if (window.csa) {\n      csa(\"Config\", {\n          \n          'Events.Namespace': 'csa',\n          'ObfuscatedMarketplaceId': 'A1PA6795UKMFR9',\n          'Events.SushiEndpoint': 'https://unagi.amazon.de/1/events/com.amazon.csm.csa.prod',\n          'CacheDetection.RequestID': \"JKHZS17H9F94VVVE25V6\",\n          'CacheDetection.Callback': window.ue && ue.reset,\n          'LCP.elementDedup': 1,\n          'lob': '1'\n      });\n  \n      csa(\"Events\")(\"setEntity\", {\n          page: {requestId: \"JKHZS17H9F94VVVE25V6\", meaningful: \"interactive\"},\n          session: {id: \"262-7807958-1059108\"}\n      });\n  }\n  !function(r){var e,i,o=\"splice\",u=r.csa,f={},c={},a=r.csa._s,s=0,l=0,g=-1,h={},v={},d={},n=Object.keys,p=function(){};function t(n,t){return u(n,t)}function m(n,t){var r=c[n]||{};k(r,t),c[n]=r,l++,S(U,0)}function w(n,t,r){var i=!0;return t=D(t),r&&r.buffered&&(i=(d[n]||[]).every(function(n){return!1!==t(n)})),i?(h[n]||(h[n]=[]),h[n].push(t),function(){!function(n,t){var r=h[n];r&&r[o](r.indexOf(t),1)}(n,t)}):p}function b(n,t){if(t=D(t),n in v)return t(v[n]),p;return w(n,function(n){return t(n),!1})}function y(n,t){if(u(\"Errors\")(\"logError\",n),f.DEBUG)throw t||n}function E(){return Math.abs(4294967295*Math.random()|0).toString(36)}function D(n,t){return function(){try{return n.apply(this,arguments)}catch(n){y(n.message||n,n)}}}function S(n,t){return r.setTimeout(D(n),t)}function U(){for(var n=0;n<a.length;){var t=a[n],r=t[0]in c;if(!r&&!i)return void(s=a.length);r?(a[o](s=n,1),I(t)):n++}g=l}function I(n){var t=c[n[0]],r=n[1],i=r[0];if(!t||!t[i])return y(\"Undefined function: \"+t+\"/\"+i);e=n[3],c[n[2]]=t[i].apply(t,r.slice(1))||{},e=0}function O(){i=1,U()}function k(t,r){n(r).forEach(function(n){t[n]=r[n]})}b(\"$beforeunload\",O),m(\"Config\",{instance:function(n){k(f,n)}}),u.plugin=D(function(n){n(t)}),t.config=f,t.register=m,t.on=w,t.once=b,t.blank=p,t.emit=function(n,t,r){for(var i=h[n]||[],e=0;e<i.length;)!1===i[e](t)?i[o](e,1):e++;v[n]=t||{},r&&r.buffered&&(d[n]||(d[n]=[]),100<=d[n].length&&d[n].shift(),d[n].push(t||{}))},t.UUID=function(){return[E(),E(),E(),E()].join(\"-\")},t.time=function(n){var t=e?new Date(e.time):new Date;return\"ISO\"===n?t.toISOString():t.getTime()},t.error=y,t.warn=function(n,t){if(u(\"Errors\")(\"logWarn\",n),f.DEBUG)throw t||n},t.exec=D,t.timeout=S,t.interval=function(n,t){return r.setInterval(D(n),t)},(t.global=r).csa._s.push=function(n){n[0]in c&&(!a.length||i)?(I(n),a.length&&g!==l&&U()):a[o](s++,0,n)},U(),S(function(){S(O,f.SkipMissingPluginsTimeout||5e3)},1)}(\"undefined\"!=typeof window?window:global);csa.plugin(function(o){var f=\"addEventListener\",e=\"requestAnimationFrame\",t=o.exec,r=o.global,u=o.on;o.raf=function(n){if(r[e])return r[e](t(n))},o.on=function(n,e,t,r){if(n&&\"function\"==typeof n[f]){var i=o.exec(t);return n[f](e,i,r),function(){n.removeEventListener(e,i,r)}}return\"string\"==typeof n?u(n,e,t,r):o.blank}});csa.plugin(function(o){var t,n,r={},e=\"localStorage\",c=\"sessionStorage\",a=\"local\",i=\"session\",u=o.exec;function s(e,t){var n;try{r[t]=!!(n=o.global[e]),n=n||{}}catch(e){r[t]=!(n={})}return n}function f(){t=t||s(e,a),n=n||s(c,i)}function l(e){return e&&e[i]?n:t}o.store=u(function(e,t,n){f();var o=l(n);return e?t?void(o[e]=t):o[e]:Object.keys(o)}),o.storageSupport=u(function(){return f(),r}),o.deleteStored=u(function(e,t){f();var n=l(t);if(\"function\"==typeof e)for(var o in n)n.hasOwnProperty(o)&&e(o,n[o])&&delete n[o];else delete n[e]})});csa.plugin(function(n){n.types={ovl:function(n){var r=[];if(n)for(var i in n)n.hasOwnProperty(i)&&r.push(n[i]);return r}}});csa.plugin(function(a){var e=a.config,n=\"Errors\",c=\"fcsmln\",s=e[\"KillSwitch.\"+n];function r(n){return function(e){a(\"Metrics\",{producerId:\"csa\",dimensions:{message:e}})(\"recordMetric\",n,1)}}function t(r){var t,o,l=a(\"Events\",{producerId:r.producerId,lob:e.lob||\"0\"}),i=[\"name\",\"type\",\"csm\",\"adb\"],u={url:\"pageURL\",file:\"f\",line:\"l\",column:\"c\"};this.log=function(e){if(!s&&!function(e){if(!e)return!0;for(var n in e)return!1;return!0}(e)){var n=r.logOptions||{ent:{page:[\"pageType\",\"subPageType\",\"requestId\"]}};l(\"log\",function(n){return t=a.UUID(),o={messageId:t,schemaId:r.schemaId||\"<ns>.Error.6\",errorMessage:n.m||null,attribution:n.attribution||null,logLevel:\"FATAL\",url:null,file:null,line:null,column:null,stack:n.s||[],context:n.cinfo||{},metadata:{}},n.logLevel&&(o.logLevel=\"\"+n.logLevel),i.forEach(function(e){n[e]&&(o.metadata[e]=n[e])}),c in n&&(o.metadata[c]=n[c]+\"\"),\"INFO\"===n.logLevel||Object.keys(u).forEach(function(e){\"number\"!=typeof n[u[e]]&&\"string\"!=typeof n[u[e]]||(o[e]=\"\"+n[u[e]])}),o}(e),n)}}}a.register(n,{instance:function(e){return new t(e||{})},logError:r(\"jsError\"),logWarn:r(\"jsWarn\")})});csa.plugin(function(o){var r,e,n,t,a,i=\"function\",u=\"willDisappear\",f=\"$app.\",p=\"$document.\",c=\"focus\",s=\"blur\",d=\"active\",l=\"resign\",$=o.global,b=o.exec,m=o.config[\"Transport.AnonymizeRequests\"]||!1,g=o(\"Events\"),h=$.location,v=$.document||{},y=$.P||{},P=(($.performance||{}).navigation||{}).type,w=o.on,k=o.emit,E=v.hidden,T={};h&&v&&(w($,\"beforeunload\",D),w($,\"pagehide\",D),w(v,\"visibilitychange\",R(p,function(){return v.visibilityState||\"unknown\"})),w(v,c,R(p+c)),w(v,s,R(p+s)),y.when&&y.when(\"mash\").execute(function(e){e&&(w(e,\"appPause\",R(f+\"pause\")),w(e,\"appResume\",R(f+\"resume\")),R(f+\"deviceready\")(),$.cordova&&$.cordova.platformId&&R(f+cordova.platformId)(),w(v,d,R(f+d)),w(v,l,R(f+l)))}),e=$.app||{},n=b(function(){k(f+\"willDisappear\"),D()}),a=typeof(t=e[u])==i,e[u]=b(function(){n(),a&&t()}),$.app||($.app=e),\"complete\"===v.readyState?A():w($,\"load\",A),E?S():x(),o.on(\"$app.blur\",S),o.on(\"$app.focus\",x),o.on(\"$document.blur\",S),o.on(\"$document.focus\",x),o.on(\"$document.hidden\",S),o.on(\"$document.visible\",x),o.register(\"SPA\",{newPage:I}),I({transitionType:{0:\"hard\",1:\"refresh\",2:\"back-button\"}[P]||\"unknown\"}));function I(n,e){var t=!!r,a=(e=e||{}).keepPageAttributes;t&&(k(\"$beforePageTransition\"),k(\"$pageTransition\")),t&&!a&&g(\"removeEntity\",\"page\"),r=o.UUID(),a?T.id=r:T={schemaId:\"<ns>.PageEntity.2\",id:r,url:m?h.href.split(\"?\")[0]:h.href,server:h.hostname,path:h.pathname,referrer:m?v.referrer.split(\"?\")[0]:v.referrer,title:v.title},Object.keys(n||{}).forEach(function(e){T[e]=n[e]}),g(\"setEntity\",{page:T}),k(\"$pageChange\",T,{buffered:1}),t&&k(\"$afterPageTransition\")}function A(){k(\"$load\"),k(\"$ready\"),k(\"$afterload\")}function D(){k(\"$ready\"),k(\"$beforeunload\"),k(\"$unload\"),k(\"$afterunload\")}function S(){E||(k(\"$visible\",!1,{buffered:1}),E=!0)}function x(){E&&(k(\"$visible\",!0,{buffered:1}),E=!1)}function R(n,t){return b(function(){var e=typeof t==i?n+t():n;k(e)})}});csa.plugin(function(c){var e=\"Events\",n=\"UNKNOWN\",s=\"id\",a=\"all\",i=\"messageId\",o=\"timestamp\",u=\"producerId\",r=\"application\",f=\"obfuscatedMarketplaceId\",d=\"entities\",l=\"schemaId\",p=\"version\",v=\"attributes\",g=\"<ns>\",b=\"lob\",t=\"session\",h=c.config,m=(c.global.location||{}).host,I=h[e+\".Namespace\"]||\"csa_other\",y=h.Application||\"Other\"+(m?\":\"+m:\"\"),O=h[\"Transport.AnonymizeRequests\"]||!1,E=c(\"Transport\"),U={},A=function(e,t){Object.keys(e).forEach(t)};function N(n,i,o){A(i,function(e){var t=o===a||(o||{})[e];e in n||(n[e]={version:1,id:i[e][s]||c.UUID()}),S(n[e],i[e],t)})}function S(t,n,i){A(n,function(e){!function(e,t,n){return\"string\"!=typeof t&&e!==p?c.error(\"Attribute is not of type string: \"+e):!0===n||1===n||(e===s||!!~(n||[]).indexOf(e))}(e,n[e],i)||(t[e]=n[e])})}function k(o,e,r){A(e,function(e){var t=o[e];if(t[l]){var n={},i={};n[s]=t[s],n[u]=t[u]||r[u],n[l]=t[l],n[p]=t[p]++,n[v]=i,w(n,r),S(i,t,1),D(i),E(\"log\",n)}})}function w(e,t){e[o]=function(e){return\"number\"==typeof e&&(e=new Date(e).toISOString()),e||c.time(\"ISO\")}(e[o]),e[i]=e[i]||c.UUID(),e[r]=y,e[f]=h.ObfuscatedMarketplaceId||n,e[l]=e[l].replace(g,I),t&&t[b]&&(e[b]=t[b])}function D(e){delete e[p],delete e[l],delete e[u]}function T(o){var r={};this.log=function(e,t){var n={},i=(t||{}).ent;return e?\"string\"!=typeof e[l]?c.error(\"A valid schema id is required for the event\"):(w(e,o),N(n,U,i),N(n,r,i),N(n,e[d]||{},i),A(n,function(e){D(n[e])}),e[u]=o[u],e[d]=n,t&&t[b]&&(e[b]=t[b]),void E(\"log\",e,t)):c.error(\"The event cannot be undefined\")},this.setEntity=function(e){O&&delete e[t],N(r,e,a),k(r,e,o)}}h[\"KillSwitch.\"+e]||c.register(e,{setEntity:function(e){O&&delete e[t],c.emit(\"$entities.set\",e,{buffered:1}),N(U,e,a),k(U,e,{producerId:\"csa\",lob:h[b]||\"0\"})},removeEntity:function(e){delete U[e]},instance:function(e){return new T(e)}})});csa.plugin(function(s){var c,g=\"Transport\",l=\"post\",f=\"preflight\",r=\"csa.cajun.\",i=\"store\",a=\"deleteStored\",u=\"sendBeacon\",t=\"__merge\",e=\"messageId\",n=\".FlushInterval\",o=0,d=s.config[g+\".BufferSize\"]||2e3,h=s.config[g+\".RetryDelay\"]||1500,p=s.config[g+\".AnonymizeRequests\"]||!1,v={},y=0,m=[],E=s.global,R=E.document,b=s.timeout,k=E.Object.keys,w=s.config[g+n]||5e3,I=w,O=s.config[g+n+\".BackoffFactor\"]||1,S=s.config[g+n+\".BackoffLimit\"]||3e4,B=0;function T(n){if(864e5<s.time()-+new Date(n.timestamp))return s.warn(\"Event is too old: \"+n);y<d&&(n[e]in v||(v[n[e]]=n,y++),\"function\"==typeof n[t]&&n[t](v[n[e]]),!B&&o&&(B=b(q,function(){var n=I;return I=Math.min(n*O,S),n}())))}function q(){m.forEach(function(e){var o=[];k(v).forEach(function(n){var t=v[n];e.accepts(t)&&o.push(t)}),o.length&&(e.chunks?e.chunks(o).forEach(function(n){D(e,n)}):D(e,o))}),v={},B=0}function D(t,e){function o(){s[a](r+n)}var n=s.UUID();s[i](r+n,JSON.stringify(e)),[function(n,t,e){var o=E.navigator||{},r=E.cordova||{};if(p)return 0;if(!o[u]||!n[l])return 0;n[f]&&r&&\"ios\"===r.platformId&&!c&&((new Image).src=n[f]().url,c=1);var i=n[l](t);if(!i.type&&o[u](i.url,i.body))return e(),1},function(n,t,e){if(!n[l])return 0;var o=n[l](t),r=o.url,i=o.body,c=o.type,f=new XMLHttpRequest,a=0;function u(n,t,e){f.open(\"POST\",n),f.withCredentials=!p,e&&f.setRequestHeader(\"Content-Type\",e),f.send(t)}return f.onload=function(){f.status<299?e():s.config[g+\".XHRRetries\"]&&a<3&&b(function(){u(r,i,c)},++a*h)},u(r,i,c),1}].some(function(n){try{return n(t,e,o)}catch(n){}})}k&&(s.once(\"$afterload\",function(){o=1,function(e){(s[i]()||[]).forEach(function(n){if(!n.indexOf(r))try{var t=s[i](n);s[a](n),JSON.parse(t).forEach(e)}catch(n){s.error(n)}})}(T),s.on(R,\"visibilitychange\",q,!1),q()}),s.once(\"$afterunload\",function(){o=1,q()}),s.on(\"$afterPageTransition\",function(){y=0,I=w}),s.register(g,{log:T,register:function(n){m.push(n)}}))});csa.plugin(function(n){var r=n.config[\"Events.SushiEndpoint\"];n(\"Transport\")(\"register\",{accepts:function(n){return n.schemaId},post:function(n){var t=n.map(function(n){return{data:n}});return{url:r,body:JSON.stringify({events:t})}},preflight:function(){var n,t=///(.*?)//.exec(r);return t&&t[1]&&(n=\"https://\"+t[1]+\"/ping\"),{url:n}},chunks:function(n){for(var t=[];500<n.length;)t.push(n.splice(0,500));return t.push(n),t}})});csa.plugin(function(n){var t,a,o,r,e=n.config,i=\"PageViews\",d=e[i+\".ImpressionMinimumTime\"]||1e3,s=\"hidden\",c=\"innerHeight\",l=\"innerWidth\",g=\"renderedTo\",f=g+\"Viewed\",m=g+\"Meaningful\",u=g+\"Impressed\",p=1,h=2,v=3,w=4,P=5,y=\"loaded\",I=7,b=8,T=n.global,S=n.on,E=n(\"Events\",{producerId:\"csa\",lob:e.lob||\"0\"}),K=T.document,V={},$={},M=P,R=e[\"KillSwitch.\"+i],H=e[\"KillSwitch.PageRender\"],W=e[\"KillSwitch.PageImpressed\"];function j(e){if(!V[I]){if(V[e]=n.time(),e!==v&&e!==y||(t=t||V[e]),t&&M===w){if(a=a||V[e],!R)(i={})[m]=t-o,i[f]=a-o,k(\"PageView.5\",i);r=r||n.timeout(x,d)}var i;if(e!==P&&e!==p&&e!==h||(clearTimeout(r),r=0),e!==p&&e!==h||H||k(\"PageRender.4\",{transitionType:e===p?\"hard\":\"soft\"}),e===I&&!W)(i={})[m]=t-o,i[f]=a-o,i[u]=V[e]-o,k(\"PageImpressed.3\",i)}}function k(e,i){$[e]||(i.schemaId=\"<ns>.\"+e,E(\"log\",i,{ent:\"all\"}),$[e]=1)}function q(){0===T[c]&&0===T[l]?(M=b,n(\"Events\")(\"setEntity\",{page:{viewport:\"hidden-iframe\"}})):M=K[s]?P:w,j(M)}function x(){j(I),r=0}function z(){var e=o?h:p;V={},$={},a=t=0,o=n.time(),j(e),q()}function A(){var e=K.readyState;\"interactive\"===e&&j(v),\"complete\"===e&&j(y)}K&&void 0!==K[s]?(z(),S(K,\"visibilitychange\",q,!1),S(K,\"readystatechange\",A,!1),S(\"$afterPageTransition\",z),S(\"$timing:loaded\",A),n.once(\"$load\",A)):n.warn(\"Page visibility not supported\")});csa.plugin(function(c){var s=c.config[\"Interactions.ParentChainLength\"]||35,e=\"click\",r=\"touches\",f=\"timeStamp\",o=\"length\",u=\"pageX\",g=\"pageY\",p=\"pageXOffset\",h=\"pageYOffset\",m=250,v=5,d=200,l=.5,t={capture:!0,passive:!0},X=c.global,Y=c.emit,n=c.on,x=X.Math.abs,a=(X.document||{}).documentElement||{},y={x:0,y:0,t:0,sX:0,sY:0},N={x:0,y:0,t:0,sX:0,sY:0};function b(t){if(t.id)return\"//*[@id='\"+t.id+\"']\";var e=function(t){var e,n=1;for(e=t.previousSibling;e;e=e.previousSibling)e.nodeName===t.nodeName&&(n+=1);return n}(t),n=t.nodeName;return 1!==e&&(n+=\"[\"+e+\"]\"),t.parentNode&&(n=b(t.parentNode)+\"/\"+n),n}function I(t,e,n){var a=c(\"Content\",{target:n}),i={schemaId:\"<ns>.ContentInteraction.2\",interaction:t,interactionData:e,messageId:c.UUID()};if(n){var r=b(n);r&&(i.attribution=r);var o=function(t){for(var e=t,n=e.tagName,a=!1,i=t?t.href:null,r=0;r<s;r++){if(!e||!e.parentElement){a=!0;break}n=(e=e.parentElement).tagName+\"/\"+n,i=i||e.href}return a||(n=\".../\"+n),{pc:n,hr:i}}(n);o.pc&&(i.interactionData.parentChain=o.pc),o.hr&&(i.interactionData.href=o.hr)}a(\"log\",i),Y(\"$content.interaction\",{e:i,w:a})}function i(t){I(e,{interactionX:\"\"+t.pageX,interactionY:\"\"+t.pageY},t.target)}function C(t){if(t&&t[r]&&1===t[r][o]){var e=t[r][0];N=y={e:t.target,x:e[u],y:e[g],t:t[f],sX:X[p],sY:X[h]}}}function D(t){if(t&&t[r]&&1===t[r][o]&&y&&N){var e=t[r][0],n=t[f],a=n-N.t,i={e:t.target,x:e[u],y:e[g],t:n,sX:X[p],sY:X[h]};N=i,d<=a&&(y=i)}}function E(t){if(t){var e=x(y.x-N.x),n=x(y.y-N.y),a=x(y.sX-N.sX),i=x(y.sY-N.sY),r=t[f]-y.t;if(m<1e3*e/r&&v<e||m<1e3*n/r&&v<n){var o=n<e;o&&a&&e*l<=a||!o&&i&&n*l<=i||I((o?\"horizontal\":\"vertical\")+\"-swipe\",{interactionX:\"\"+y.x,interactionY:\"\"+y.y,endX:\"\"+N.x,endY:\"\"+N.y},y.e)}}}n(a,e,i,t),n(a,\"touchstart\",C,t),n(a,\"touchmove\",D,t),n(a,\"touchend\",E,t)});csa.plugin(function(s){var a,o,t,c,e,n=\"MutationObserver\",l=\"observe\",i=\"disconnect\",f=\"_csa_flt\",b=\"_csa_llt\",d=\"_csa_mr\",p=\"_csa_mi\",v=\"lastChild\",m=\"length\",h={childList:!0,subtree:!0},_=10,g=25,r=1e3,y=4,u=s.global,k=u.document,w=k.body||k.documentElement,I=Date.now,L=[],O=[],B=[],M=0,x=0,C=0,D=1,E=[],F=[],S=0,V=s.blank;I&&u[n]&&(M=0,o=new u[n]($),(t=new u[n](Y))[l](w,{attributes:!0,subtree:!0,attributeFilter:[\"src\"],attributeOldValue:!0}),V=s.on(u,\"scroll\",j,{passive:!0}),s.once(\"$ready\",A),D&&(z(),e=s.interval(q,r)),s.register(\"SpeedIndexBuffers\",{getBuffers:function(e){e&&(A(),j(),e(M,E,L,O,B),o&&o[i](),t&&t[i](),V())},registerListener:function(e){a=e},replayModuleIsLive:function(){s.timeout(A,0)}}));function Y(e){L.push({t:I(),m:e})}function $(e){O.push({t:I(),m:e}),C=1,a&&a()}function j(){C&&(B.push({t:I(),y:x}),x=u.pageYOffset,C=0)}function q(){var e=I();(!c||r<e-c)&&z()}function z(){for(var e=w,t=I(),n=[],i=[],r=0,u=0;e;)e[f]?++r:(e[f]=t,n.push(e),u=1),i[m]<y&&i.push(e),e[p]=S,e[b]=t,e=e[v];u&&(r<F[m]&&function(e){for(var t=e,n=F[m];t<n;t++){var i=F[t];if(i){if(i[d])break;if(i[p]<S){i[d]=1,o[l](i,h);break}}}}(r),F=i,E.push({t:t,m:n}),++S,C=u,a&&a()),D&&s.timeout(z,u?_:g),c=t}function A(){D&&(D=0,e&&u.clearInterval(e),e=null,z(),o[l](w,h))}});\n  csa.plugin(function(b){var a=b.global,c=a.uet,e=a.uex,f=a.ue,a=a.Object,g=0,h={largestContentfulPaint:\"lcp\",visuallyLoaded50:\"vl50\",visuallyLoaded90:\"vl90\",visuallyLoaded100:\"vl100\"};b&&c&&e&&a.keys&&f&&(b.once(\"$ditched.beforemitigation\",function(){g=1}),a.keys(h).forEach(function(a){b.on(\"$timing:\"+a,function(b){var d=h[a];if(f.isl||g){var k=\"csa:\"+d;c(d,k,void 0,b);e(\"at\",k)}else c(d,void 0,void 0,b)})}))});\n  \n  \n  \n  </script>\n  <script>window.ue && ue.count && ue.count('CSMLibrarySize', 15738)</script><div id=\"sc-navbar-container\"><script type=\"text/javascript\">if(typeof uet == \"function\"){uet('ns');}</script><style>html,\n          body {\n              height: 100%;\n              margin: 0;\n          }\n  \n          #vc-header-placeholder {\n              height: 78px;\n              margin-bottom: 30px;\n          }</style><div id=\"vc-header-container\"><div id=\"vc-header-placeholder\"></div></div><script type=\"text/javascript\">if(typeof uet == \"function\"){uet('ne');}</script></div><div id=\"sc-content-container\">\n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <link rel=\"icon\" href=\"data:;base64,iVBORw0KGgo=\">\n  \n  \n  \n  <script src=\"https://d1uznvntk80v7s.cloudfront.net/katal.assetloader.ab5760ee5ae3.min.js\"></script>\n  \n  \n  <script type=\"a-state\" data-a-state=\"{&quot;key&quot;:&quot;coop-metadata&quot;}\">{\"agreementTextUrl\":\"/hz/vendor/members/coop/resource/invoice/agreement-text\",\"giasInvoiceDownloadUrl\":\"/hz/vendor/members/coop/resource/tax-invoice/download\",\"showNegativeInvoicesUrl\":\"/hz/vendor/members/coop/resource/negative-invoices\",\"dateFormat\":\"d/m/yyyy\",\"marketscopeId\":\"DE\",\"calendarLocale\":\"en_US\",\"auditClaimsList\":\"/hz/vendor/members/coop/resource/audit-claims/list\",\"exportToExcel\":\"/hz/vendor/members/coop/resource/invoices/export\",\"pageLocale\":\"de-DE\",\"csrfToken\":\"hMa23trjfLARAuXtvYS3bcN/aM3u+HyRCjODgiqmwZq6AAAAAGgJpdEAAAAC\",\"validateDisputeUrl\":\"/hz/vendor/members/coop/resource/invoices/validate/dispute\",\"encryptedVendorGroupId\":\"amzn1.vg.d.ABBBSZFOMRXZFN7CVWPSSU6JXLPQ\",\"auditClaimsBackupReportDownloadUrl\":\"/hz/vendor/members/coop/resource/audit-claims/backup-report\",\"backUpReportDownloadUrl\":\"/hz/vendor/members/coop/resource/backupreport/download\",\"auditClaimsBackupReportsList\":\"/hz/vendor/members/coop/resource/audit-claims/backup-reports/list\",\"disputeCreateUrl\":\"/hz/vendor/members/disputes/create\",\"backUpReportUrl\":\"/hz/vendor/members/coop/resource/backupreports/get\",\"invoiceDownloadUrl\":\"/hz/vendor/members/coop/resource/invoice/download\",\"siteType\":\"ven\"}</script>\n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <script type=\"a-state\" data-a-state=\"{&quot;key&quot;:&quot;coop-strings&quot;}\">{\"contraCogsReportId\":\"Report ID\",\"contraCogsAgreementDetails\":\"Agreement ID / title\",\"contraCogsNegativeInvoicesHeader\":\"CoOp Return Invoice Details\",\"contraCogsInvoiceDate\":\"Invoice date\",\"contraCogsFundingType\":\"Funding type\",\"contraCogsDisputedHeader\":\"Deductions already disputed\",\"contraCogsDeductionSelected\":\"1 deduction selected\",\"contraCogsReportDate\":\"Report Date\",\"contraCogsRecordsSelected\":\"{number} deductions selected\",\"contraCogsDownloads\":\"Downloads\",\"contraCogsZeroTotalDeductions\":\"No deductions\",\"contraCogsAvailableDownloads\":\"Available downloads\",\"contraCogsOriginalBalance\":\"Original balance\",\"contraCogsDraftDisputeHeader\":\"These deductions have disputes in a draft status. A deduction can only be part of one dispute draft.\",\"contraCogsInvoiceId\":\"Invoice ID\"}</script>\n  \n  \n  \n  <div class=\"a-container page\">\n      <div class=\"a-section\">\n      \n          \n              <div class=\"a-row a-spacing-medium\">\n                  <div class=\"a-box a-alert a-alert-info\" aria-live=\"polite\" aria-atomic=\"true\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                      Starting 1 February 2024, you can access backup reports for your audit claims by clicking on the Audit Postings/Deductions tab.\n                      <br/>\n                      If you need backup reports for audit deductions before 1 February 2024, please contact us by going to Contact us -> Payments -> Audit Claim (APAUDIT, IPAP, RSS and AUDCNLY)\n                      <span class=\"a-letter-space\"></span>\n                  </div></div></div>\n              </div>\n              <div class=\"a-tab-container\">\n                  <ul data-action=\"a-tabs\" class=\"a-tabs a-declarative\" data-a-tabs=\"{&quot;name&quot;: &quot;invoices-tabs&quot;}\">\n                      <li class=\"a-tab-heading a-active\" data-a-tab-name=\"coop-deductions\"><a href=\"#\">\n                          CoOp deductions\n                      </a></li>\n                      <li class=\"a-tab-heading\" data-a-tab-name=\"audit-deductions\"><a href=\"#\">\n                          Audit Postings/Deductions\n                      </a></li>\n                  </ul>\n                  <div data-a-name=\"coop-deductions\" class=\"a-box a-box-tab a-tab-content\"><div class=\"a-box-inner\">\n                      \n  <div class=\"a-row main-header-row\">\n      \n      <div class=\"a-column a-span4\">\n          <div class=\"a-row\">\n              <h1 id=\"invoice-header\" class=\"invoice-header\">\n                  CoOp deductions\n              </h1>\n          </div>\n          <div class=\"a-row\">\n              <a class=\"a-link-normal\" href=\"/hz/vendor/members/support/help/node/G201262370\">\n                  CoOp Help\n              </a>\n          </div>\n          \n              <div class=\"a-row\">\n                  <a class=\"a-link-normal\" href=\"/hz/vendor/members/disputes\">\n                      View disputes\n                  </a>\n              </div>\n          \n      </div>\n      <div id=\"total-deductions-summary-container\" class=\"a-column a-span2 aok-hidden a-span-last\">\n          <div class=\"a-row\">\n              <span id=\"total-deductions-label\" class=\"a-color-tertiary a-text-caps\">\n                  {totalRecordCount} TOTAL DEDUCTIONS\n              </span>\n          </div>\n          \n              <div class=\"a-row\">\n                  <span class=\"a-size-medium a-text-bold a-text-caps\">\n                  </span>\n              </div>\n          \n              <div class=\"a-row\">\n                  <span class=\"a-size-medium a-text-bold a-text-caps\">\n                  </span>\n              </div>\n          \n          <div class=\"a-row\">\n              \n                  <div id=\"total-deductions-section\" class=\"a-section no-wrap-section\">\n                      <span id=\"date-range-label\" class=\"a-color-tertiary\">\n                          From\n                          1/2/2025\n                          to\n                          24/4/2025\n                      </span>\n                  </div>\n              \n          </div>\n      </div>\n  </div>\n  \n  \n  \n  \n  \n  <div class=\"a-row\">\n      \n      <div class=\"a-column a-span3\">\n          <span class=\"a-letter-space\"></span>\n      </div>\n      <div class=\"a-column a-span6\">\n          <div class=\"a-section a-spacing-top-medium link-group\">\n              <a id=\"select-all\" class=\"a-link-normal link-group-element\" href=\"javascript:;\">\n                  Select all\n              </a>\n              <a id=\"de-select-all\" class=\"a-link-normal aok-hidden link-group-element\" href=\"javascript:;\">\n                  Uncheck all\n              </a>\n              <span id=\"contra-cogs-selected-text\" class=\"a-color-tertiary aok-hidden link-group-element\"></span>\n              <a id=\"negative-invoices-modal-trigger\" href=\"javascript:void(0)\" role=\"button\" class=\"a-popover-trigger a-declarative aok-hidden\"><i class=\"a-icon a-icon-popover\"></i></a>\n              \n              <form id=\"export-to-spreadsheet\" method=\"post\" action=\"\">\n                  <input type=\"hidden\" name=\"csrfToken\" value=\"hMa23trjfLARAuXtvYS3bcN/aM3u+HyRCjODgiqmwZq6AAAAAGgJpdEAAAAC\" />\n              </form>\n              <form id=\"contra-cogs-invoice-download\" method=\"get\" action=\"\"></form>\n          </div>\n      </div>\n      <div class=\"a-column a-span3 a-span-last\">\n          <div class=\"a-row\">\n              <div class=\"a-column a-span4\">\n                  <span class=\"a-letter-space\"></span>\n              </div>\n              <div class=\"a-column a-span7\">\n                  <span class=\"a-size-base search-header a-text-bold\">\n                      Deduction action\n                  </span>\n              </div>\n          </div>\n          <div class=\"a-row\">\n              \n              <div class=\"a-column a-span4\">\n                  <span class=\"a-letter-space\"></span>\n              </div>\n              <div class=\"a-column a-span7\">\n                  \n                  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"cc-invoice-actions-dropdown\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-button-span12 a-spacing-top-mini a-declarative\"><option class=\"a-prompt\" value=\"\">Choose one</option>\n                      <option value=\"selectAnAction\">\n                          Choose one\n                      </option>\n                      \n                          <option value=\"disputeInvoices\">\n                              Dispute deductions\n                          </option>\n                      \n                      <option value=\"exportToSpreadsheet\">\n                          Export to a spreadsheet\n                      </option>\n                  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown a-spacing-top-mini a-button-span12\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Choose one</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n              </div>\n              <div class=\"a-row\">\n                  <div class=\"a-column a-span2\">\n                      <span class=\"a-letter-space\"></span>\n                  </div>\n                  <div id=\"no-records-selected-error\" class=\"a-column a-span8 aok-hidden no-records-selected-error\">\n                      <div class=\"a-box a-alert-inline a-alert-inline-error record-select-alert\" role=\"alert\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                          Select a deduction to proceed\n                      </div></div></div>\n                  </div>\n              </div>\n          </div>\n      </div>\n  </div>\n  <hr aria-hidden=\"true\" class=\"a-divider-normal\"/>\n  <div class=\"a-row\">\n      \n      <div class=\"a-column a-span3\">\n          \n              \n              \n              \n              \n              \n          \n          <form id=\"cc-invoice-search-form\" method=\"GET\" action=\"/hz/vendor/members/coop\">\n              <div class=\"a-row\">\n                  <span class=\"a-size-medium a-color-tertiary\">\n                      Refine by\n                  </span>\n              </div>\n                  \n              <div class=\"a-row a-spacing-top-mini\">\n                  <div class=\"a-column a-span12\">\n                      <div class=\"a-row a-spacing-large\">\n                          <label class=\"a-form-label\">Funding type</label>\n                          <div id=\"funding-types\">\n                              \n                                  <div data-a-input-name=\"Accrual\" class=\"a-checkbox\"><label><input type=\"checkbox\" name=\"Accrual\" value=\"Accrual\"/><i class=\"a-icon a-icon-checkbox\"></i><span class=\"a-label a-checkbox-label\">Accrual</span></label></div>\n                              \n                                  <div data-a-input-name=\"Straight Payment\" class=\"a-checkbox\"><label><input type=\"checkbox\" name=\"Straight Payment\" value=\"Straight Payment\"/><i class=\"a-icon a-icon-checkbox\"></i><span class=\"a-label a-checkbox-label\">Straight Payment</span></label></div>\n                              \n                                  <div data-a-input-name=\"Vendor Funded Sales Discount\" class=\"a-checkbox\"><label><input type=\"checkbox\" name=\"Vendor Funded Sales Discount\" value=\"Vendor Funded Sales Discount\"/><i class=\"a-icon a-icon-checkbox\"></i><span class=\"a-label a-checkbox-label\">Vendor Funded Sales Discount</span></label></div>\n                              \n                          </div>\n                      </div>\n                  </div>\n              </div>\n              <div class=\"a-row\">\n                  <span class=\"a-size-medium a-color-tertiary\">\n                      Search by\n                  </span>\n              </div>\n                  \n              <div class=\"a-row a-spacing-top-mini\">\n                  <div class=\"a-column a-span12 position-relative\">\n                      <span id=\"free-text-search-label\" class=\"a-size-base a-text-bold\">\n                          Agreement title/ID or invoice ID\n                      </span>\n                      <span id=\"free-text-search-label-tooltip\" class=\"free-text-search-label-tooltip\">\n                          <i id=\"free-text-search-label-tooltip-icon\" class=\"a-icon a-icon-info a-icon-mini\" role=\"presentation\"></i>\n                          <span id=\"free-text-search-label-tooltip-text\" class=\"free-text-search-label-tooltip-text\">\n                              Separate multiple search terms by a comma or return\n                          </span>\n                      </span>\n                  </div>\n              </div>\n              <div class=\"a-row a-spacing-top-mini\">\n                  <div class=\"a-column a-span12\">\n                      \n                      <span id=\"search-text-value\" class=\"aok-hidden\"></span>\n                      <div class=\"a-input-text-wrapper a-span12\"><textarea maxlength=\"1500\" placeholder=\"Enter keyword, agreement ID or invoice ID\" id=\"search-input\" name=\"searchText\"></textarea></div>\n                  </div>\n              </div>\n              <div class=\"a-row a-spacing-top-mini\">\n                  <span id=\"date-range-search-label\" class=\"a-size-base search-header a-text-bold\">\n                      Date range\n                  </span>\n              </div>\n              <div class=\"a-row a-spacing-top-mini\">\n                  <div class=\"a-column a-span5\">\n                      <div data-a-cal-attributes=\"{&quot;selectedDate&quot;:{&quot;month&quot;:2,&quot;year&quot;:2025,&quot;day&quot;:1},&quot;maxDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24}}\" data-a-cal-renderer-instance=\"renderer-instance-localized\" data-a-cal-input=\"true\" class=\"a-cal-calendar-container a-cal-static\"><div class=\"a-cal-dropdown-container\"><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-month a-declarative\" name=\"from-date-m\"><option value=\"\">Month</option><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option value=\"8\">8</option><option value=\"9\">9</option><option value=\"10\">10</option><option value=\"11\">11</option><option value=\"12\">12</option></select><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-day a-declarative\" name=\"from-date-d\"><option value=\"\">Day</option><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option value=\"8\">8</option><option value=\"9\">9</option><option value=\"10\">10</option><option value=\"11\">11</option><option value=\"12\">12</option><option value=\"13\">13</option><option value=\"14\">14</option><option value=\"15\">15</option><option value=\"16\">16</option><option value=\"17\">17</option><option value=\"18\">18</option><option value=\"19\">19</option><option value=\"20\">20</option><option value=\"21\">21</option><option value=\"22\">22</option><option value=\"23\">23</option><option value=\"24\">24</option><option value=\"25\">25</option><option value=\"26\">26</option><option value=\"27\">27</option><option value=\"28\">28</option><option value=\"29\">29</option><option value=\"30\">30</option><option value=\"31\">31</option></select><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-year a-declarative\" name=\"from-date-y\"><option value=\"\">Year</option><option value=\"1900\">1900</option><option value=\"1901\">1901</option><option value=\"1902\">1902</option><option value=\"1903\">1903</option><option value=\"1904\">1904</option><option value=\"1905\">1905</option><option value=\"1906\">1906</option><option value=\"1907\">1907</option><option value=\"1908\">1908</option><option value=\"1909\">1909</option><option value=\"1910\">1910</option><option value=\"1911\">1911</option><option value=\"1912\">1912</option><option value=\"1913\">1913</option><option value=\"1914\">1914</option><option value=\"1915\">1915</option><option value=\"1916\">1916</option><option value=\"1917\">1917</option><option value=\"1918\">1918</option><option value=\"1919\">1919</option><option value=\"1920\">1920</option><option value=\"1921\">1921</option><option value=\"1922\">1922</option><option value=\"1923\">1923</option><option value=\"1924\">1924</option><option value=\"1925\">1925</option><option value=\"1926\">1926</option><option value=\"1927\">1927</option><option value=\"1928\">1928</option><option value=\"1929\">1929</option><option value=\"1930\">1930</option><option value=\"1931\">1931</option><option value=\"1932\">1932</option><option value=\"1933\">1933</option><option value=\"1934\">1934</option><option value=\"1935\">1935</option><option value=\"1936\">1936</option><option value=\"1937\">1937</option><option value=\"1938\">1938</option><option value=\"1939\">1939</option><option value=\"1940\">1940</option><option value=\"1941\">1941</option><option value=\"1942\">1942</option><option value=\"1943\">1943</option><option value=\"1944\">1944</option><option value=\"1945\">1945</option><option value=\"1946\">1946</option><option value=\"1947\">1947</option><option value=\"1948\">1948</option><option value=\"1949\">1949</option><option value=\"1950\">1950</option><option value=\"1951\">1951</option><option value=\"1952\">1952</option><option value=\"1953\">1953</option><option value=\"1954\">1954</option><option value=\"1955\">1955</option><option value=\"1956\">1956</option><option value=\"1957\">1957</option><option value=\"1958\">1958</option><option value=\"1959\">1959</option><option value=\"1960\">1960</option><option value=\"1961\">1961</option><option value=\"1962\">1962</option><option value=\"1963\">1963</option><option value=\"1964\">1964</option><option value=\"1965\">1965</option><option value=\"1966\">1966</option><option value=\"1967\">1967</option><option value=\"1968\">1968</option><option value=\"1969\">1969</option><option value=\"1970\">1970</option><option value=\"1971\">1971</option><option value=\"1972\">1972</option><option value=\"1973\">1973</option><option value=\"1974\">1974</option><option value=\"1975\">1975</option><option value=\"1976\">1976</option><option value=\"1977\">1977</option><option value=\"1978\">1978</option><option value=\"1979\">1979</option><option value=\"1980\">1980</option><option value=\"1981\">1981</option><option value=\"1982\">1982</option><option value=\"1983\">1983</option><option value=\"1984\">1984</option><option value=\"1985\">1985</option><option value=\"1986\">1986</option><option value=\"1987\">1987</option><option value=\"1988\">1988</option><option value=\"1989\">1989</option><option value=\"1990\">1990</option><option value=\"1991\">1991</option><option value=\"1992\">1992</option><option value=\"1993\">1993</option><option value=\"1994\">1994</option><option value=\"1995\">1995</option><option value=\"1996\">1996</option><option value=\"1997\">1997</option><option value=\"1998\">1998</option><option value=\"1999\">1999</option><option value=\"2000\">2000</option><option value=\"2001\">2001</option><option value=\"2002\">2002</option><option value=\"2003\">2003</option><option value=\"2004\">2004</option><option value=\"2005\">2005</option><option value=\"2006\">2006</option><option value=\"2007\">2007</option><option value=\"2008\">2008</option><option value=\"2009\">2009</option><option value=\"2010\">2010</option><option value=\"2011\">2011</option><option value=\"2012\">2012</option><option value=\"2013\">2013</option><option value=\"2014\">2014</option><option value=\"2015\">2015</option><option value=\"2016\">2016</option><option value=\"2017\">2017</option><option value=\"2018\">2018</option><option value=\"2019\">2019</option><option value=\"2020\">2020</option><option value=\"2021\">2021</option><option value=\"2022\">2022</option><option value=\"2023\">2023</option><option value=\"2024\">2024</option><option value=\"2025\">2025</option><option value=\"2026\">2026</option><option value=\"2027\">2027</option><option value=\"2028\">2028</option><option value=\"2029\">2029</option><option value=\"2030\">2030</option><option value=\"2031\">2031</option><option value=\"2032\">2032</option><option value=\"2033\">2033</option><option value=\"2034\">2034</option><option value=\"2035\">2035</option><option value=\"2036\">2036</option><option value=\"2037\">2037</option><option value=\"2038\">2038</option><option value=\"2039\">2039</option></select></div><div class=\"a-cal-date-range-group a-cal-date-range-group-vertical\"><div class=\"a-cal-date-range-wrapper\"><div class=\"a-input-text-addon-group-wrapper\"><div class=\"a-input-text-addon-group a-width-base\" role=\"presentation\"><span class=\"a-input-text-addon a-cal-icon a-declarative\" role=\"button\" tabindex=\"0\" data-action=\"a-cal-icon\"><i class=\"a-icon a-icon-calendar\"></i></span><input type=\"text\" maxlength=\"10\" placeholder=\"d/M/yyyy\" data-action=\"a-cal-input\" data-input=\"start\" class=\"a-input-text a-cal-input a-declarative\" id=\"from-date-id\"/></div></div></div></div></div>\n                  </div>\n                  <div class=\"a-column a-span2 a-text-center\">\n                      <span class=\"a-size-base a-text-bold\">\n                          To:\n                      </span>\n                      <br/>\n                  </div>\n                  <div class=\"a-column a-span5 a-span-last\">\n                      <div data-a-cal-attributes=\"{&quot;selectedDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24},&quot;maxDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24}}\" data-a-cal-renderer-instance=\"renderer-instance-localized\" data-a-cal-input=\"true\" class=\"a-cal-calendar-container a-cal-static\"><div class=\"a-cal-dropdown-container\"><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-month a-declarative\" name=\"to-date-m\"><option value=\"\">Month</option><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option value=\"8\">8</option><option value=\"9\">9</option><option value=\"10\">10</option><option value=\"11\">11</option><option value=\"12\">12</option></select><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-day a-declarative\" name=\"to-date-d\"><option value=\"\">Day</option><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option value=\"8\">8</option><option value=\"9\">9</option><option value=\"10\">10</option><option value=\"11\">11</option><option value=\"12\">12</option><option value=\"13\">13</option><option value=\"14\">14</option><option value=\"15\">15</option><option value=\"16\">16</option><option value=\"17\">17</option><option value=\"18\">18</option><option value=\"19\">19</option><option value=\"20\">20</option><option value=\"21\">21</option><option value=\"22\">22</option><option value=\"23\">23</option><option value=\"24\">24</option><option value=\"25\">25</option><option value=\"26\">26</option><option value=\"27\">27</option><option value=\"28\">28</option><option value=\"29\">29</option><option value=\"30\">30</option><option value=\"31\">31</option></select><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-year a-declarative\" name=\"to-date-y\"><option value=\"\">Year</option><option value=\"1900\">1900</option><option value=\"1901\">1901</option><option value=\"1902\">1902</option><option value=\"1903\">1903</option><option value=\"1904\">1904</option><option value=\"1905\">1905</option><option value=\"1906\">1906</option><option value=\"1907\">1907</option><option value=\"1908\">1908</option><option value=\"1909\">1909</option><option value=\"1910\">1910</option><option value=\"1911\">1911</option><option value=\"1912\">1912</option><option value=\"1913\">1913</option><option value=\"1914\">1914</option><option value=\"1915\">1915</option><option value=\"1916\">1916</option><option value=\"1917\">1917</option><option value=\"1918\">1918</option><option value=\"1919\">1919</option><option value=\"1920\">1920</option><option value=\"1921\">1921</option><option value=\"1922\">1922</option><option value=\"1923\">1923</option><option value=\"1924\">1924</option><option value=\"1925\">1925</option><option value=\"1926\">1926</option><option value=\"1927\">1927</option><option value=\"1928\">1928</option><option value=\"1929\">1929</option><option value=\"1930\">1930</option><option value=\"1931\">1931</option><option value=\"1932\">1932</option><option value=\"1933\">1933</option><option value=\"1934\">1934</option><option value=\"1935\">1935</option><option value=\"1936\">1936</option><option value=\"1937\">1937</option><option value=\"1938\">1938</option><option value=\"1939\">1939</option><option value=\"1940\">1940</option><option value=\"1941\">1941</option><option value=\"1942\">1942</option><option value=\"1943\">1943</option><option value=\"1944\">1944</option><option value=\"1945\">1945</option><option value=\"1946\">1946</option><option value=\"1947\">1947</option><option value=\"1948\">1948</option><option value=\"1949\">1949</option><option value=\"1950\">1950</option><option value=\"1951\">1951</option><option value=\"1952\">1952</option><option value=\"1953\">1953</option><option value=\"1954\">1954</option><option value=\"1955\">1955</option><option value=\"1956\">1956</option><option value=\"1957\">1957</option><option value=\"1958\">1958</option><option value=\"1959\">1959</option><option value=\"1960\">1960</option><option value=\"1961\">1961</option><option value=\"1962\">1962</option><option value=\"1963\">1963</option><option value=\"1964\">1964</option><option value=\"1965\">1965</option><option value=\"1966\">1966</option><option value=\"1967\">1967</option><option value=\"1968\">1968</option><option value=\"1969\">1969</option><option value=\"1970\">1970</option><option value=\"1971\">1971</option><option value=\"1972\">1972</option><option value=\"1973\">1973</option><option value=\"1974\">1974</option><option value=\"1975\">1975</option><option value=\"1976\">1976</option><option value=\"1977\">1977</option><option value=\"1978\">1978</option><option value=\"1979\">1979</option><option value=\"1980\">1980</option><option value=\"1981\">1981</option><option value=\"1982\">1982</option><option value=\"1983\">1983</option><option value=\"1984\">1984</option><option value=\"1985\">1985</option><option value=\"1986\">1986</option><option value=\"1987\">1987</option><option value=\"1988\">1988</option><option value=\"1989\">1989</option><option value=\"1990\">1990</option><option value=\"1991\">1991</option><option value=\"1992\">1992</option><option value=\"1993\">1993</option><option value=\"1994\">1994</option><option value=\"1995\">1995</option><option value=\"1996\">1996</option><option value=\"1997\">1997</option><option value=\"1998\">1998</option><option value=\"1999\">1999</option><option value=\"2000\">2000</option><option value=\"2001\">2001</option><option value=\"2002\">2002</option><option value=\"2003\">2003</option><option value=\"2004\">2004</option><option value=\"2005\">2005</option><option value=\"2006\">2006</option><option value=\"2007\">2007</option><option value=\"2008\">2008</option><option value=\"2009\">2009</option><option value=\"2010\">2010</option><option value=\"2011\">2011</option><option value=\"2012\">2012</option><option value=\"2013\">2013</option><option value=\"2014\">2014</option><option value=\"2015\">2015</option><option value=\"2016\">2016</option><option value=\"2017\">2017</option><option value=\"2018\">2018</option><option value=\"2019\">2019</option><option value=\"2020\">2020</option><option value=\"2021\">2021</option><option value=\"2022\">2022</option><option value=\"2023\">2023</option><option value=\"2024\">2024</option><option value=\"2025\">2025</option><option value=\"2026\">2026</option><option value=\"2027\">2027</option><option value=\"2028\">2028</option><option value=\"2029\">2029</option><option value=\"2030\">2030</option><option value=\"2031\">2031</option><option value=\"2032\">2032</option><option value=\"2033\">2033</option><option value=\"2034\">2034</option><option value=\"2035\">2035</option><option value=\"2036\">2036</option><option value=\"2037\">2037</option><option value=\"2038\">2038</option><option value=\"2039\">2039</option></select></div><div class=\"a-cal-date-range-group a-cal-date-range-group-vertical\"><div class=\"a-cal-date-range-wrapper\"><div class=\"a-input-text-addon-group-wrapper\"><div class=\"a-input-text-addon-group a-width-base\" role=\"presentation\"><span class=\"a-input-text-addon a-cal-icon a-declarative\" role=\"button\" tabindex=\"0\" data-action=\"a-cal-icon\"><i class=\"a-icon a-icon-calendar\"></i></span><input type=\"text\" maxlength=\"10\" placeholder=\"d/M/yyyy\" data-action=\"a-cal-input\" data-input=\"start\" class=\"a-input-text a-cal-input a-declarative\" id=\"to-date-id\"/></div></div></div></div></div>\n                  </div>\n                  <div class=\"a-row\">\n                      <div id=\"date-out-of-range-past-error\" class=\"a-column a-span12 aok-hidden\">\n                          <div class=\"a-box a-alert-inline a-alert-inline-error\" role=\"alert\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                              Start date cannot be later than end date\n                          </div></div></div>\n                      </div>\n                      <div id=\"date-out-of-range-exceed-error\" class=\"a-column a-span12 aok-hidden\">\n                          <div class=\"a-box a-alert-inline a-alert-inline-error\" role=\"alert\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                              Date range cannot exceed 365 days\n                          </div></div></div>\n                      </div>\n                      <div id=\"date-invalid-error\" class=\"a-column a-span12 aok-hidden\">\n                          <div class=\"a-box a-alert-inline a-alert-inline-error\" role=\"alert\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                              Date format must be\n                              d/m/yyyy\n                          </div></div></div>\n                      </div>\n                  </div>\n                  <input type=\"hidden\" name=\"\" value=\"d/m/yyyy\" id=\"date-format\"/>\n              </div>\n              <div class=\"a-row\">\n                  <div class=\"a-column a-span12\">\n                      <br/>\n                      <span id=\"search-button\" class=\"a-button a-button-span12 a-button-thumbnail\"><span class=\"a-button-inner\"><button id=\"search-button-announce\" class=\"a-button-text\" type=\"button\">\n                          Search\n                      </button></span></span>\n                  </div>\n              </div>\n          </form>\n      </div>\n      <div class=\"a-column a-span9 a-span-last\">\n          \n          \n          <div id=\"dispute-error-section\" class=\"a-section aok-hidden\">\n              <div class=\"a-row\">\n                  <div id=\"dispute-error-occurred\" class=\"a-box a-alert a-alert-error\" role=\"alert\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                      An problem occurred getting the dispute details. Please try again.\n                  </div></div></div>\n                  <br/>\n              </div>\n          </div>\n          \n          \n          \n              \n              \n                  <div class=\"katal\">\n                      <div class=\"kat-row\">\n                          <div class=\"kat-col-sm-12\">\n                              <kat-data-table id=\"kat-invoice-table\" rowData=\"[{&#034;AGREEMENT_NUMBER&#034;:85131600,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;99,94\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPR3ZKD and B0BTPQRBKC 10...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170213&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84882710,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;97,65\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D6BF6GCN to 1229-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170188&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85311945,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;339,10\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-11 to 2025-01-13 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594244&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85832245,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;66,49\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPQRBKC to 0202-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170181&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85609565,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;12,27\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-21 to 2025-01-26 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594245&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84902730,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;52,41\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 to 1229-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170190&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85487370,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;5.846,46\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685592&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85129935,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.388,76\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 to 0108-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170212&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84670025,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;189,44\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-25 to 2024-12-25 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685595&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85593135,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;146,10\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPR3ZKD to 0126 10-Shenzh...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170166&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85609565,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;453,64\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-21 to 2025-01-26 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100541447&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85782570,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;248,89\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Born to Run Retention Fee for ASIN B0BTPR3ZKD&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594233&#034;,&#034;FUNDING_TYPE&#034;:&#034;Straight Payment&#034;},{&#034;AGREEMENT_NUMBER&#034;:85130575,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;27,40\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D6BF6GCN to 0108-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170209&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85255355,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;22,90\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07T59ZD81 to 0112-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170193&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85832220,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.552,87\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 to 0202-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170180&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335395,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;46.076,04\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Co-op Activities)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021073957&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:82063960,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;70,00\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-11-21 to 2024-12-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594242&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84670660,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;2.967,52\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-30 to 2025-01-05 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100541446&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84321340,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;23,52\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685585&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882735,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;274,93\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Single-Unit Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594241&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84952655,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.034,48\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 to 0101-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170202&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85487370,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;13.306,52\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594247&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84882840,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;6,04\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07T59ZD81 to 1229-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170189&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335385,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;30.524,45\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594728&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:85564890,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;41,24\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-01-30 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100541453&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85407740,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;7,72\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPQRBKC to 0119-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170200&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:76203605,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;41.791,06\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE,ES,FR,IT,UK] X-Sense AVS 2024-05-20 to 2025-05-20 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021073909&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:84321340,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;23,52\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100541450&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85255475,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;250,95\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPR3ZKD and B0BTPQRBKC 10...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170194&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85609565,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;474,26\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-21 to 2025-01-26 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685594&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882735,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;20,06\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Single-Unit Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100541452&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85490010,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;220,84\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594238&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85130215,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;19,32\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D66LK5NP to 0108-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170211&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84670660,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;22.598,24\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-30 to 2025-01-05 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594240&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84952950,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;28,71\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPQRBKC 10 to 1231-Shenzh...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170201&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:82007035,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;88,85\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-11-21 to 2024-12-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594243&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84294245,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;13,91\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Biss FLEXIBLE_ASIN_BASED [FX71X] 2024-12-16 to 2024-12-22 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801593922&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85609850,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;2.426,57\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100541449&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84670965,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;13.632,87\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-13 to 2025-01-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685583&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84670965,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;6.483,68\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-13 to 2025-01-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100541451&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85255575,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;823,00\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D6BF6GCN to 0112-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170192&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85220005,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;215,33\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B082FXLS39 to 0112-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170191&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882735,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;96,66\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Single-Unit Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685586&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84670025,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;29,44\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-25 to 2024-12-25 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594234&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84321340,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;94,28\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594237&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84325410,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;21,13\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594249&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85609850,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;12.025,92\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594239&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85564890,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;24,54\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-01-30 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594248&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85564890,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;309,30\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-01-30 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685588&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85593055,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.157,73\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D6BF6GCN 0126-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170170&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882730,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;25,47\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;QP Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594235&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85487370,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;2.134,28\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100541448&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85490010,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;144,34\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100541445&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84844730,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;3,55\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPQRBKC 10 1229-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170183&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84327255,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;15,28\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-16 to 2024-12-22 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594236&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85255325,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.466,83\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 to 0112-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170195&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85593180,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;70,72\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07T59ZD81 8-Shenzhen Lingji...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170167&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335385,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;16.522,27\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400686365&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:85490010,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;329,92\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685584&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84670660,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;16.212,40\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-30 to 2025-01-05 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685591&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85782570,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;75,57\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Born to Run Retention Fee for ASIN B0BTPR3ZKD&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685593&#034;,&#034;FUNDING_TYPE&#034;:&#034;Straight Payment&#034;},{&#034;AGREEMENT_NUMBER&#034;:84670965,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;45.592,42\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-13 to 2025-01-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801594246&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85592985,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;3.004,94\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 0126-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170165&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85130650,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;40,55\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07T59ZD81 to 0108-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170210&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85311945,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;602,80\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-11 to 2025-01-13 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685590&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85593040,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;141,98\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B082FXLS39 0126-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021170169&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882730,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;15,50\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;QP Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685587&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335385,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;3.902,97\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100542517&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:85609850,&#034;INVOICE_DATE&#034;:&#034;4/2/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;9.165,86\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400685589&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335385,&#034;INVOICE_DATE&#034;:&#034;2/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;18.878,53\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801609712&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:84321340,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;18,57\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400694382&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86830095,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;437,55\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400694384&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85609850,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;4.198,04\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801616648&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85609850,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;12.137,33\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400694381&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85564890,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;10,31\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-01-30 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400694385&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86660830,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;561,64\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-21 to 2025-02-23 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801616644&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86830095,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.201,36\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801616646&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335385,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;17.799,41\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400695032&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:85564945,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;405,52\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-03 to 2025-02-09 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400694383&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:84321340,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;22,10\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801616647&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85609850,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;304,11\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100545635&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335385,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.521,63\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100546668&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:86830095,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;147,53\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100545636&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85564945,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.102,08\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-03 to 2025-02-09 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801616645&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85610085,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.715,89\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100545634&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85610085,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;17.363,96\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801616649&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85610085,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;16.514,53\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400694386&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86660830,&#034;INVOICE_DATE&#034;:&#034;3/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;177,84\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-21 to 2025-02-23 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400694387&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86114215,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;17.970,70\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400701758&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86572590,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;63,48\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B08766FG4N 10 0217-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186024&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86014465,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;59,84\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07T59ZD81 0209-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186056&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86014440,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;2.915,57\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 0209 10-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186052&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86014520,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;67,11\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07CWV3PRS 0209-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186055&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335395,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;35.185,35\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Co-op Activities)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021076173&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:86774640,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;72,81\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D66LK5NP 0224-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186032&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86350770,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;150,25\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B082FXLS39 0210-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186050&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86014450,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;103,26\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D6BF6GCN 0209-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186053&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86569015,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;13,50\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPQRBKC 10 0217-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186023&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86774870,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;682,15\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D6BF6GCN 0224-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186031&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85832245,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;31,59\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPQRBKC to 0202-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186040&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86774495,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.550,23\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 0224-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186035&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86568740,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;2,72\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07T59ZD81 8 0227-Shenzhen L...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186022&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882735,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;138,10\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Single-Unit Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801625156&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882735,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;24,71\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Single-Unit Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100547158&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86014480,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;148,73\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B082FXLS39 0209-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186058&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86089540,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;201,02\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B08766FG4N 0203 10-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186060&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86774595,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;84,64\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B08766FG4N 0224-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186033&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882735,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;74,93\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Single-Unit Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400701757&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86114215,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;37.474,05\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801625157&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:85832220,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.040,06\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 to 0202-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186039&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882730,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;18,50\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;QP Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801625155&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86014490,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;88,78\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPQRBKC 0210-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186057&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86774720,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;27,37\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07T59ZD81 0224-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186034&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86014455,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;109,00\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPR3ZKD 0209-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186054&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86350815,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;137,54\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B08766FG4N 0210-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186049&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86787930,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;62,87\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B082FXLS39 0224 12-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186038&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86490790,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;36,24\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for 0214 SWS54-Shenzhen Lingjia ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186019&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86114215,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.701,70\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100547159&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:76203605,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;32.108,38\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE,ES,FR,IT,UK] X-Sense AVS 2024-05-20 to 2025-05-20 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021076097&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:86605460,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;16,80\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPQRBKC 10 0218-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186025&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86787880,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;77,01\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPQRBKC 0224 12-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186037&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86787855,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;22,32\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPR3ZKD 0224 12-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186036&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882730,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;15,70\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;QP Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100547160&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86568800,&#034;INVOICE_DATE&#034;:&#034;4/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;38,22\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B082FXLS39 10 0223-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021186021&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:82063960,&#034;INVOICE_DATE&#034;:&#034;15/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;20,02\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-11-21 to 2024-12-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801628497&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:81629810,&#034;INVOICE_DATE&#034;:&#034;21/3/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;4,81\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;X-Sense Smart Wassermelder mit Batterie, WLAN Wassersensor, komp&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801629701&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87530290,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;478,43\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for 03100316 SWS54 10%off-Shenzh...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021193744&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87562825,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;459,62\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-12 to 2025-03-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400709833&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86830095,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;858,72\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801642212&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335385,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;3.607,50\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400710437&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:86660830,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;8,14\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-21 to 2025-02-23 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801642211&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87562825,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;781,36\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-12 to 2025-03-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801642207&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86830095,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;178,71\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400709835&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86830095,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;45,51\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100549694&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87529915,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;76,60\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07CWV3PRS 0310-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021193743&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87562825,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;65,66\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-12 to 2025-03-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100549693&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87529880,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;83,82\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B082FXLS39 0310-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021193741&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87800010,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;15.826,37\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-25 to 2025-03-31 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801642159&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86977870,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.735,82\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-03 to 2025-03-09 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801642210&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335395,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;21.252,20\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Co-op Activities)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021076966&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:87529815,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;93,80\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPR3ZKD 0310-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021193740&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86660830,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;6,84\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-21 to 2025-02-23 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400709834&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87529840,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;95,74\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07T59ZD81 0310-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021193737&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335385,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;20.067,01\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801642687&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:85564945,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;6,52\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-03 to 2025-02-09 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801642208&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87800010,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;10.173,57\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-25 to 2025-03-31 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400709756&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87529940,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;438,52\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D66LK5NP 0310-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021193738&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87529600,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.674,26\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D6BF6GCN 0310-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021193745&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87529505,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;2.636,59\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 0310-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021193742&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:76203605,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;19.289,04\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE,ES,FR,IT,UK] X-Sense AVS 2024-05-20 to 2025-05-20 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021076951&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:83335385,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;781,66\xA0\xA3&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100550582&#034;,&#034;FUNDING_TYPE&#034;:&#034;Accrual&#034;},{&#034;AGREEMENT_NUMBER&#034;:85610085,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;31,45\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801642209&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87800010,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;2.006,41\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-25 to 2025-03-31 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100549692&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87529770,&#034;INVOICE_DATE&#034;:&#034;3/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;135,10\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPQRBKC 0310-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021193739&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:88181560,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.469,56\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-0328-Shenzhen Lingjia Technology Limited-...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199552&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87376000,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;256,90\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D66LK5NP-Shenzhen Lingjia ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199543&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882735,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;61,72\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Single-Unit Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400716476&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87761630,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;3.965,19\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-03/17-03/23-Shenzhen Lingjia Technology L...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199503&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86774640,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;62,68\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D66LK5NP 0224-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199509&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86787880,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;72,49\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPQRBKC 0224 12-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199513&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87078925,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;2.646,17\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 0304-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199549&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87079225,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;76,59\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07T59ZD81 0304-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199547&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87375935,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;78,12\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPR3ZKD 0305-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199542&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882735,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;29,34\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Single-Unit Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;8100551758&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87753625,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;106,50\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for SWS5410%OFF 03170323-Shenzhe...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199499&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86774595,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;52,90\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B08766FG4N 0224-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199510&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86977870,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;2.147,46\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-03 to 2025-03-09 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400716478&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87376050,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;126,00\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B08766FG4N 0305-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199544&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86787930,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;47,37\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B082FXLS39 0224 12-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199515&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882730,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;93,77\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;QP Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5400716477&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86787855,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;11,16\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BTPR3ZKD 0224 12-Shenzhen ...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199514&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882730,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;87,26\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;QP Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801651422&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:87078930,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;123,00\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B07CWV3PRS 0304-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199548&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86774495,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;1.432,76\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0BMQ52BC8 0224-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199511&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:80882735,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;196,10\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;Single-Unit Business pricing agreement for:FX71X&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801651423&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86114215,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;22,25\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR&#034;,&#034;INVOICE_NUMBER&#034;:&#034;5801651424&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;},{&#034;AGREEMENT_NUMBER&#034;:86774870,&#034;INVOICE_DATE&#034;:&#034;4/4/2025&#034;,&#034;ORIGINAL_INVOICE_AMOUNT&#034;:&#034;482,51\xA0\u20AC&#034;,&#034;AGREEMENT_TITLE&#034;:&#034;VPC-Campaign for B0D6BF6GCN 0224-Shenzhen Lin...&#034;,&#034;INVOICE_NUMBER&#034;:&#034;2021199507&#034;,&#034;FUNDING_TYPE&#034;:&#034;Vendor Funded Sales Discount&#034;}]\"\n                              ></kat-data-table>\n                              <kat-pagination total-items=177 id=\"pagination\">\n                              </kat-pagination>\n                          </div>\n                      </div>\n                  </div>\n              \n          \n      </div>\n  </div>\n                  </div></div>\n                  <div data-a-name=\"audit-deductions\" class=\"a-box a-box-tab a-tab-content a-hidden\"><div class=\"a-box-inner\">\n                      \n  <div class=\"a-row main-header-row\">\n      \n      <div class=\"a-column a-span4\">\n          <div class=\"a-row\">\n              <h1 id=\"audit-deductions-header\" class=\"invoice-header\">\n                  Audit Postings/Deductions\n              </h1>\n          </div>\n          <div class=\"a-row\">\n              <a class=\"a-link-normal\" href=\"/hz/vendor/members/contact\">\n                  Audit deductions help\n              </a>\n              <br/>\n              <span style=\"font-size: 11px;\">(Please select Payments -> Audit Claim (APAUDIT, IPAP, RSS and AUDCNLY))</span>\n          </div>\n      </div>\n      <div id=\"total-audit-deductions-summary-container\" class=\"a-column a-span2 aok-hidden a-span-last\">\n          <div class=\"a-row\">\n              <span id=\"total-audit-deductions-label\" class=\"a-color-tertiary a-text-caps\">\n                  {totalRecordCount} TOTAL DEDUCTIONS\n              </span>\n          </div>\n          <div class=\"a-row\">\n              <span id=\"total-audit-deductions-value\" class=\"a-size-medium a-text-bold a-text-caps\">\n              </span>\n          </div>\n          <div class=\"a-row\">\n              <div id=\"ac-total-deductions-section\" class=\"a-section no-wrap-section\">\n                  <span id=\"date-range-label\" class=\"a-color-tertiary\">\n                      From\n                      <span id=\"ac-td-start-date\">1/2/2025</span>\n                      to\n                      <span id=\"ac-td-end-date\">24/4/2025</span>\n                  </span>\n              </div>\n          </div>\n      </div>\n  </div>\n  <hr aria-hidden=\"true\" class=\"a-divider-normal\"/>\n  <div class=\"a-row\">\n      \n      <div class=\"a-column a-span3\">\n          \n          \n          \n          \n          <div id=\"audit-deductions-search-fields\">\n              <div class=\"a-row\">\n                  <span class=\"a-size-medium a-color-tertiary\">\n                      Search by\n                  </span>\n              </div>\n                  \n              <div class=\"a-row a-spacing-top-mini\">\n                  <div class=\"a-column a-span12 position-relative\">\n                      <span id=\"free-text-search-label\" class=\"a-size-base a-text-bold\">\n                          Search by Invoice ID\n                      </span>\n                  </div>\n              </div>\n              <div class=\"a-row a-spacing-top-mini\">\n                  <div class=\"a-column a-span12\">\n                      \n                      <span id=\"search-text-value\" class=\"aok-hidden\"></span>\n                      <div class=\"a-input-text-wrapper a-span12\"><textarea maxlength=\"1500\" placeholder=\"Search by Invoice ID\" id=\"audit-claims-search-input\" name=\"searchText\"></textarea></div>\n                  </div>\n              </div>\n              <div class=\"a-row a-spacing-top-mini\">\n                  <span id=\"date-range-search-label\" class=\"a-size-base search-header a-text-bold\">\n                      Date range\n                  </span>\n              </div>\n              <div class=\"a-row a-spacing-top-mini\">\n                  <div class=\"a-column a-span5\">\n                      <div data-a-cal-attributes=\"{&quot;selectedDate&quot;:{&quot;month&quot;:3,&quot;year&quot;:2025,&quot;day&quot;:25},&quot;maxDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24}}\" data-a-cal-renderer-instance=\"renderer-instance-localized\" data-a-cal-input=\"true\" class=\"a-cal-calendar-container a-cal-static\"><div class=\"a-cal-dropdown-container\"><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-month a-declarative\" name=\"audit-claims-from-date-m\"><option value=\"\">Month</option><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option value=\"8\">8</option><option value=\"9\">9</option><option value=\"10\">10</option><option value=\"11\">11</option><option value=\"12\">12</option></select><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-day a-declarative\" name=\"audit-claims-from-date-d\"><option value=\"\">Day</option><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option value=\"8\">8</option><option value=\"9\">9</option><option value=\"10\">10</option><option value=\"11\">11</option><option value=\"12\">12</option><option value=\"13\">13</option><option value=\"14\">14</option><option value=\"15\">15</option><option value=\"16\">16</option><option value=\"17\">17</option><option value=\"18\">18</option><option value=\"19\">19</option><option value=\"20\">20</option><option value=\"21\">21</option><option value=\"22\">22</option><option value=\"23\">23</option><option value=\"24\">24</option><option value=\"25\">25</option><option value=\"26\">26</option><option value=\"27\">27</option><option value=\"28\">28</option><option value=\"29\">29</option><option value=\"30\">30</option><option value=\"31\">31</option></select><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-year a-declarative\" name=\"audit-claims-from-date-y\"><option value=\"\">Year</option><option value=\"1900\">1900</option><option value=\"1901\">1901</option><option value=\"1902\">1902</option><option value=\"1903\">1903</option><option value=\"1904\">1904</option><option value=\"1905\">1905</option><option value=\"1906\">1906</option><option value=\"1907\">1907</option><option value=\"1908\">1908</option><option value=\"1909\">1909</option><option value=\"1910\">1910</option><option value=\"1911\">1911</option><option value=\"1912\">1912</option><option value=\"1913\">1913</option><option value=\"1914\">1914</option><option value=\"1915\">1915</option><option value=\"1916\">1916</option><option value=\"1917\">1917</option><option value=\"1918\">1918</option><option value=\"1919\">1919</option><option value=\"1920\">1920</option><option value=\"1921\">1921</option><option value=\"1922\">1922</option><option value=\"1923\">1923</option><option value=\"1924\">1924</option><option value=\"1925\">1925</option><option value=\"1926\">1926</option><option value=\"1927\">1927</option><option value=\"1928\">1928</option><option value=\"1929\">1929</option><option value=\"1930\">1930</option><option value=\"1931\">1931</option><option value=\"1932\">1932</option><option value=\"1933\">1933</option><option value=\"1934\">1934</option><option value=\"1935\">1935</option><option value=\"1936\">1936</option><option value=\"1937\">1937</option><option value=\"1938\">1938</option><option value=\"1939\">1939</option><option value=\"1940\">1940</option><option value=\"1941\">1941</option><option value=\"1942\">1942</option><option value=\"1943\">1943</option><option value=\"1944\">1944</option><option value=\"1945\">1945</option><option value=\"1946\">1946</option><option value=\"1947\">1947</option><option value=\"1948\">1948</option><option value=\"1949\">1949</option><option value=\"1950\">1950</option><option value=\"1951\">1951</option><option value=\"1952\">1952</option><option value=\"1953\">1953</option><option value=\"1954\">1954</option><option value=\"1955\">1955</option><option value=\"1956\">1956</option><option value=\"1957\">1957</option><option value=\"1958\">1958</option><option value=\"1959\">1959</option><option value=\"1960\">1960</option><option value=\"1961\">1961</option><option value=\"1962\">1962</option><option value=\"1963\">1963</option><option value=\"1964\">1964</option><option value=\"1965\">1965</option><option value=\"1966\">1966</option><option value=\"1967\">1967</option><option value=\"1968\">1968</option><option value=\"1969\">1969</option><option value=\"1970\">1970</option><option value=\"1971\">1971</option><option value=\"1972\">1972</option><option value=\"1973\">1973</option><option value=\"1974\">1974</option><option value=\"1975\">1975</option><option value=\"1976\">1976</option><option value=\"1977\">1977</option><option value=\"1978\">1978</option><option value=\"1979\">1979</option><option value=\"1980\">1980</option><option value=\"1981\">1981</option><option value=\"1982\">1982</option><option value=\"1983\">1983</option><option value=\"1984\">1984</option><option value=\"1985\">1985</option><option value=\"1986\">1986</option><option value=\"1987\">1987</option><option value=\"1988\">1988</option><option value=\"1989\">1989</option><option value=\"1990\">1990</option><option value=\"1991\">1991</option><option value=\"1992\">1992</option><option value=\"1993\">1993</option><option value=\"1994\">1994</option><option value=\"1995\">1995</option><option value=\"1996\">1996</option><option value=\"1997\">1997</option><option value=\"1998\">1998</option><option value=\"1999\">1999</option><option value=\"2000\">2000</option><option value=\"2001\">2001</option><option value=\"2002\">2002</option><option value=\"2003\">2003</option><option value=\"2004\">2004</option><option value=\"2005\">2005</option><option value=\"2006\">2006</option><option value=\"2007\">2007</option><option value=\"2008\">2008</option><option value=\"2009\">2009</option><option value=\"2010\">2010</option><option value=\"2011\">2011</option><option value=\"2012\">2012</option><option value=\"2013\">2013</option><option value=\"2014\">2014</option><option value=\"2015\">2015</option><option value=\"2016\">2016</option><option value=\"2017\">2017</option><option value=\"2018\">2018</option><option value=\"2019\">2019</option><option value=\"2020\">2020</option><option value=\"2021\">2021</option><option value=\"2022\">2022</option><option value=\"2023\">2023</option><option value=\"2024\">2024</option><option value=\"2025\">2025</option><option value=\"2026\">2026</option><option value=\"2027\">2027</option><option value=\"2028\">2028</option><option value=\"2029\">2029</option><option value=\"2030\">2030</option><option value=\"2031\">2031</option><option value=\"2032\">2032</option><option value=\"2033\">2033</option><option value=\"2034\">2034</option><option value=\"2035\">2035</option><option value=\"2036\">2036</option><option value=\"2037\">2037</option><option value=\"2038\">2038</option><option value=\"2039\">2039</option></select></div><div class=\"a-cal-date-range-group a-cal-date-range-group-vertical\"><div class=\"a-cal-date-range-wrapper\"><div class=\"a-input-text-addon-group-wrapper\"><div class=\"a-input-text-addon-group a-width-base\" role=\"presentation\"><span class=\"a-input-text-addon a-cal-icon a-declarative\" role=\"button\" tabindex=\"0\" data-action=\"a-cal-icon\"><i class=\"a-icon a-icon-calendar\"></i></span><input type=\"text\" maxlength=\"10\" placeholder=\"d/M/yyyy\" data-action=\"a-cal-input\" data-input=\"start\" class=\"a-input-text a-cal-input a-declarative\" id=\"audit-claims-from-date-id\"/></div></div></div></div></div>\n                  </div>\n                  <div class=\"a-column a-span2 a-text-center\">\n                      <span class=\"a-size-base a-text-bold\">\n                          To:\n                      </span>\n                      <br/>\n                  </div>\n                  <div class=\"a-column a-span5 a-span-last\">\n                      <div data-a-cal-attributes=\"{&quot;selectedDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24},&quot;maxDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24}}\" data-a-cal-renderer-instance=\"renderer-instance-localized\" data-a-cal-input=\"true\" class=\"a-cal-calendar-container a-cal-static\"><div class=\"a-cal-dropdown-container\"><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-month a-declarative\" name=\"audit-claims-to-date-m\"><option value=\"\">Month</option><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option value=\"8\">8</option><option value=\"9\">9</option><option value=\"10\">10</option><option value=\"11\">11</option><option value=\"12\">12</option></select><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-day a-declarative\" name=\"audit-claims-to-date-d\"><option value=\"\">Day</option><option value=\"1\">1</option><option value=\"2\">2</option><option value=\"3\">3</option><option value=\"4\">4</option><option value=\"5\">5</option><option value=\"6\">6</option><option value=\"7\">7</option><option value=\"8\">8</option><option value=\"9\">9</option><option value=\"10\">10</option><option value=\"11\">11</option><option value=\"12\">12</option><option value=\"13\">13</option><option value=\"14\">14</option><option value=\"15\">15</option><option value=\"16\">16</option><option value=\"17\">17</option><option value=\"18\">18</option><option value=\"19\">19</option><option value=\"20\">20</option><option value=\"21\">21</option><option value=\"22\">22</option><option value=\"23\">23</option><option value=\"24\">24</option><option value=\"25\">25</option><option value=\"26\">26</option><option value=\"27\">27</option><option value=\"28\">28</option><option value=\"29\">29</option><option value=\"30\">30</option><option value=\"31\">31</option></select><select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-year a-declarative\" name=\"audit-claims-to-date-y\"><option value=\"\">Year</option><option value=\"1900\">1900</option><option value=\"1901\">1901</option><option value=\"1902\">1902</option><option value=\"1903\">1903</option><option value=\"1904\">1904</option><option value=\"1905\">1905</option><option value=\"1906\">1906</option><option value=\"1907\">1907</option><option value=\"1908\">1908</option><option value=\"1909\">1909</option><option value=\"1910\">1910</option><option value=\"1911\">1911</option><option value=\"1912\">1912</option><option value=\"1913\">1913</option><option value=\"1914\">1914</option><option value=\"1915\">1915</option><option value=\"1916\">1916</option><option value=\"1917\">1917</option><option value=\"1918\">1918</option><option value=\"1919\">1919</option><option value=\"1920\">1920</option><option value=\"1921\">1921</option><option value=\"1922\">1922</option><option value=\"1923\">1923</option><option value=\"1924\">1924</option><option value=\"1925\">1925</option><option value=\"1926\">1926</option><option value=\"1927\">1927</option><option value=\"1928\">1928</option><option value=\"1929\">1929</option><option value=\"1930\">1930</option><option value=\"1931\">1931</option><option value=\"1932\">1932</option><option value=\"1933\">1933</option><option value=\"1934\">1934</option><option value=\"1935\">1935</option><option value=\"1936\">1936</option><option value=\"1937\">1937</option><option value=\"1938\">1938</option><option value=\"1939\">1939</option><option value=\"1940\">1940</option><option value=\"1941\">1941</option><option value=\"1942\">1942</option><option value=\"1943\">1943</option><option value=\"1944\">1944</option><option value=\"1945\">1945</option><option value=\"1946\">1946</option><option value=\"1947\">1947</option><option value=\"1948\">1948</option><option value=\"1949\">1949</option><option value=\"1950\">1950</option><option value=\"1951\">1951</option><option value=\"1952\">1952</option><option value=\"1953\">1953</option><option value=\"1954\">1954</option><option value=\"1955\">1955</option><option value=\"1956\">1956</option><option value=\"1957\">1957</option><option value=\"1958\">1958</option><option value=\"1959\">1959</option><option value=\"1960\">1960</option><option value=\"1961\">1961</option><option value=\"1962\">1962</option><option value=\"1963\">1963</option><option value=\"1964\">1964</option><option value=\"1965\">1965</option><option value=\"1966\">1966</option><option value=\"1967\">1967</option><option value=\"1968\">1968</option><option value=\"1969\">1969</option><option value=\"1970\">1970</option><option value=\"1971\">1971</option><option value=\"1972\">1972</option><option value=\"1973\">1973</option><option value=\"1974\">1974</option><option value=\"1975\">1975</option><option value=\"1976\">1976</option><option value=\"1977\">1977</option><option value=\"1978\">1978</option><option value=\"1979\">1979</option><option value=\"1980\">1980</option><option value=\"1981\">1981</option><option value=\"1982\">1982</option><option value=\"1983\">1983</option><option value=\"1984\">1984</option><option value=\"1985\">1985</option><option value=\"1986\">1986</option><option value=\"1987\">1987</option><option value=\"1988\">1988</option><option value=\"1989\">1989</option><option value=\"1990\">1990</option><option value=\"1991\">1991</option><option value=\"1992\">1992</option><option value=\"1993\">1993</option><option value=\"1994\">1994</option><option value=\"1995\">1995</option><option value=\"1996\">1996</option><option value=\"1997\">1997</option><option value=\"1998\">1998</option><option value=\"1999\">1999</option><option value=\"2000\">2000</option><option value=\"2001\">2001</option><option value=\"2002\">2002</option><option value=\"2003\">2003</option><option value=\"2004\">2004</option><option value=\"2005\">2005</option><option value=\"2006\">2006</option><option value=\"2007\">2007</option><option value=\"2008\">2008</option><option value=\"2009\">2009</option><option value=\"2010\">2010</option><option value=\"2011\">2011</option><option value=\"2012\">2012</option><option value=\"2013\">2013</option><option value=\"2014\">2014</option><option value=\"2015\">2015</option><option value=\"2016\">2016</option><option value=\"2017\">2017</option><option value=\"2018\">2018</option><option value=\"2019\">2019</option><option value=\"2020\">2020</option><option value=\"2021\">2021</option><option value=\"2022\">2022</option><option value=\"2023\">2023</option><option value=\"2024\">2024</option><option value=\"2025\">2025</option><option value=\"2026\">2026</option><option value=\"2027\">2027</option><option value=\"2028\">2028</option><option value=\"2029\">2029</option><option value=\"2030\">2030</option><option value=\"2031\">2031</option><option value=\"2032\">2032</option><option value=\"2033\">2033</option><option value=\"2034\">2034</option><option value=\"2035\">2035</option><option value=\"2036\">2036</option><option value=\"2037\">2037</option><option value=\"2038\">2038</option><option value=\"2039\">2039</option></select></div><div class=\"a-cal-date-range-group a-cal-date-range-group-vertical\"><div class=\"a-cal-date-range-wrapper\"><div class=\"a-input-text-addon-group-wrapper\"><div class=\"a-input-text-addon-group a-width-base\" role=\"presentation\"><span class=\"a-input-text-addon a-cal-icon a-declarative\" role=\"button\" tabindex=\"0\" data-action=\"a-cal-icon\"><i class=\"a-icon a-icon-calendar\"></i></span><input type=\"text\" maxlength=\"10\" placeholder=\"d/M/yyyy\" data-action=\"a-cal-input\" data-input=\"start\" class=\"a-input-text a-cal-input a-declarative\" id=\"audit-claims-to-date-id\"/></div></div></div></div></div>\n                  </div>\n                  <div class=\"a-row\">\n                      <div id=\"ac-date-out-of-range-past-error\" class=\"a-column a-span12 aok-hidden\">\n                          <div class=\"a-box a-alert-inline a-alert-inline-error\" role=\"alert\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                              Start date cannot be later than end date\n                          </div></div></div>\n                      </div>\n                      <div id=\"ac-date-out-of-range-exceed-error\" class=\"a-column a-span12 aok-hidden\">\n                          <div class=\"a-box a-alert-inline a-alert-inline-error\" role=\"alert\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                              Date range cannot exceed 365 days\n                          </div></div></div>\n                      </div>\n                      <div id=\"ac-date-invalid-error\" class=\"a-column a-span12 aok-hidden\">\n                          <div class=\"a-box a-alert-inline a-alert-inline-error\" role=\"alert\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                              Date format must be\n                              d/m/yyyy\n                          </div></div></div>\n                      </div>\n                  </div>\n                  <input type=\"hidden\" name=\"\" value=\"d/m/yyyy\" id=\"date-format\"/>\n              </div>\n              <div class=\"a-row\">\n                  <div class=\"a-column a-span12\">\n                      <br/>\n                      <span id=\"ac-search-button\" class=\"a-button a-button-span12 a-button-thumbnail\"><span class=\"a-button-inner\"><button id=\"ac-search-button-announce\" class=\"a-button-text\" type=\"button\">\n                          Search\n                      </button></span></span>\n                  </div>\n              </div>\n          </div>\n      </div>\n      <div class=\"a-column a-span9 a-span-last\">\n          \n          \n          <div class=\"a-box a-spacing-large a-spacing-top-large aok-hidden\" id=\"audit-claims-no-records-msg\">\n              <div class=\"a-box-inner\">\n  \n                      <div class=\"a-row\">\n                          <span class=\"a-size-base\">\n                              No results were found. For recently deducted invoices, please revisit this page 72 hours after deduction.\n                          </span>\n                      </div>\n  \n              </div>\n          </div>\n          <div class=\"katal\" id=\"kat-audit-claims-table-container\">\n              <div class=\"kat-row\">\n                  <div class=\"kat-col-sm-12\">\n                      <kat-data-table id=\"kat-audit-claims-table\"></kat-data-table>\n                      <kat-pagination items-per-page=\"10\" open-ended id=\"audit-claims-pagination\"></kat-pagination>\n                  </div>\n              </div>\n          </div>\n      </div>\n  </div>\n  \n  <template id=\"audit-claims-downloads\">\n      <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"audit-claims-downloads-dropdown\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n          <option value=\"download-backup-reports\" class=\"ac-backup-reports\">\n              Backup report\n          </option>\n      </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  </template>\n  \n                  </div></div>\n              </div>\n              <div id=\"dispute-spinner-section\" class=\"a-section aok-hidden\">\n                  <div id=\"disputeSpinner\" class=\"kat-loading-overlay\" style=\"display: block;\">\n                      <div class=\"kat-loading-overlay-inner\"><kat-spinner /></div>\n                  </div>\n              </div>\n              \n                   <div class=\"a-popover-preload\" id=\"a-popover-disputeErrorMessageModal\">\n      <span id=\"dispute-header-text\"></span>\n      <div id=\"dispute-invoices-section\" class=\"a-section a-spacing-top-medium\"></div>\n  </div>\n  \n  \n  \n  \n  \n  <span class=\"a-declarative\" data-action=\"a-modal\" data-a-modal=\"{&quot;name&quot;:&quot;disputeErrorMessageModal&quot;,&quot;width&quot;:&quot;500&quot;,&quot;header&quot;:&quot;Deductions are already disputed.&quot;,&quot;footer&quot;:&quot;<span class=&quot;a-declarative&quot; data-action=&quot;a-popover-close&quot; data-a-popover-close=&quot;{}&quot;&gt;\n        <span id=&quot;cancel-dispute&quot; class=&quot;a-button a-button-primary&quot;&gt;<span class=&quot;a-button-inner&quot;&gt;<input class=&quot;a-button-input&quot; type=&quot;submit&quot; aria-labelledby=&quot;cancel-dispute-announce&quot;/&gt;<span id=&quot;cancel-dispute-announce&quot; class=&quot;a-button-text&quot; aria-hidden=&quot;true&quot;&gt;\n            Return to invoice overview\n        </span&gt;</span&gt;</span&gt;\n    </span&gt;\n    <div id=&quot;create-dispute-section&quot; class=&quot;a-section show-inline-element&quot;&gt;\n        <span class=&quot;a-declarative&quot; data-action=&quot;a-popover-close&quot; data-a-popover-close=&quot;{}&quot;&gt;\n            <span id=&quot;continue-dispute-button&quot; class=&quot;a-button a-button-base&quot;&gt;<span class=&quot;a-button-inner&quot;&gt;<button id=&quot;continue-dispute&quot; class=&quot;a-button-text&quot; type=&quot;button&quot;&gt;\n                Continue to create dispute\n            </button&gt;</span&gt;</span&gt;\n        </span&gt;\n    </div&gt;&quot;}\" id=\"dispute-invoices-action\"></span>\n              \n              \n  \n  \n  \n  <div class=\"a-section\">\n      \n      \n  \n     \n  \n      <span class=\"a-declarative\" data-action=\"a-modal\" data-a-modal=\"{&quot;name&quot;:&quot;backUpReportModal&quot;,&quot;width&quot;:&quot;700&quot;,&quot;header&quot;:&quot;Download invoice report&quot;,&quot;footer&quot;:&quot;<span class=&quot;a-declarative&quot; data-action=&quot;a-popover-close&quot; data-a-popover-close=&quot;{}&quot;&gt;\n            <span id=&quot;return-to-invoice-overview&quot; class=&quot;a-button a-button-base&quot;&gt;<span class=&quot;a-button-inner&quot;&gt;<input class=&quot;a-button-input&quot; type=&quot;submit&quot; aria-labelledby=&quot;return-to-invoice-overview-announce&quot;/&gt;<span id=&quot;return-to-invoice-overview-announce&quot; class=&quot;a-button-text&quot; aria-hidden=&quot;true&quot;&gt;\n                Return to invoice overview\n            </span&gt;</span&gt;</span&gt;\n        </span&gt;&quot;}\" id=\"backup-report-selection\">\n          <a id=\"backup-report-trigger\" href=\"javascript:void(0)\" role=\"button\" class=\"a-popover-trigger a-declarative aok-hidden\">\n          <i class=\"a-icon a-icon-popover\"></i></a>\n      </span>\n  \n      <div class=\"a-popover-preload\" id=\"a-popover-backUpReportModal\">\n          <div class=\"a-row\">\n              <div class=\"a-column a-span11\">\n                  <a href=\"/hz/vendor/members/support/help/node/G201100510\" target=\"_blank\">Help with CoOp backup reports.</a>\n              </div>\n          </div>\n          <br/>\n          <div class=\"a-row\">\n              <span class=\"a-size-base a-text-bold\">\n                  Agreement name:\n              </span>\n              <span id=\"backup-agreement-name\" class=\"a-size-base\"></span>\n          </div>\n          <div class=\"a-row\">\n              <span class=\"a-size-base a-text-bold\">\n                  Agreement ID:\n              </span>\n              <span id=\"backup-agreement-number\" class=\"a-size-base\"></span>\n          </div>\n          <div class=\"a-row\">\n              <span class=\"a-size-base a-text-bold\">\n                  Invoice ID:\n              </span>\n              <span id=\"backup-invoice-number\" class=\"a-size-base\"></span>\n          </div>\n          <div id=\"backup-load-spinner\" class=\"a-section\">\n              <div class=\"a-row\">\n                  <div class=\"a-column a-span7 a-span-last\">\n                      <span class=\"a-spinner a-spinner-medium\"></span>\n                  </div>\n              </div>\n          </div>\n          <br/>\n  \n          <div id=\"backup-report-no-records\" class=\"a-section aok-hidden\">\n              <div id=\"backup-report-not-found\" class=\"a-box a-alert-inline a-alert-inline-info a-spacing-mini\" aria-live=\"polite\" aria-atomic=\"true\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n              </div></div></div>\n          </div>\n  \n          <div id=\"backup-report-error-section\" class=\"a-section aok-hidden\">\n              <div id=\"backup-report-error\" class=\"a-box a-alert-inline a-alert-inline-error a-spacing-mini\" role=\"alert\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                  Error occurred while processing report\n              </div></div></div>\n          </div>\n  \n          \n          <form id=\"backup-report-table-form\">\n              <div class=\"a-row\">\n                  <span id=\"download-backup-report-link-text\" class=\"aok-hidden\">\n                      Download report\n                  </span>\n                  <div class=\"a-column a-span9\">\n                      <div id=\"backup-report-section\" class=\"a-section aok-hidden\">\n                          <table id=\"backup-report-table\" class=\"a-normal\">\n                              <tr>\n                                  <th class=\"a-span3 a-size-base a-text-left\">\n                                      <span>\n                                          Start date\n                                      </span>\n                                  </th>\n                                  <th class=\"a-span3 a-size-base a-text-left\">\n                                      <span>\n                                          End date\n                                      </span>\n                                  </th>\n                                  <th class=\"a-span3 a-size-base a-text-left\">\n                                      <span>\n                                          Actions\n                                      </span>\n                                  </th>\n                              </tr>\n                          </table>\n                      </div>\n                  </div>\n              </div>\n          </form>\n          <div id=\"backup-report-contact\" class=\"a-section aok-hidden\">\n              <div class=\"a-row\">\n                  <div class=\"a-column a-span11\">\n                      If you find a discrepancy in the report, please <a href=\"/hz/vendor/members/contact\" target=\"_blank\">contact us</a>.\n                  </div>\n              </div>\n          </div>\n      </div>\n  </div>\n              \n  \n  \n  \n  <div class=\"a-section\">\n      \n      \n  \n      \n  \n      <span class=\"a-declarative\" data-action=\"a-modal\" data-a-modal=\"{&quot;name&quot;:&quot;acBackUpReportModal&quot;,&quot;width&quot;:&quot;700&quot;,&quot;header&quot;:&quot;Download invoice report&quot;,&quot;footer&quot;:&quot;<span class=&quot;a-declarative&quot; data-action=&quot;a-popover-close&quot; data-a-popover-close=&quot;{}&quot;&gt;\n            <span id=&quot;return-to-invoice-overview&quot; class=&quot;a-button a-button-base&quot;&gt;<span class=&quot;a-button-inner&quot;&gt;<input class=&quot;a-button-input&quot; type=&quot;submit&quot; aria-labelledby=&quot;return-to-invoice-overview-announce&quot;/&gt;<span id=&quot;return-to-invoice-overview-announce&quot; class=&quot;a-button-text&quot; aria-hidden=&quot;true&quot;&gt;\n                Return to invoice overview\n            </span&gt;</span&gt;</span&gt;\n        </span&gt;&quot;}\" id=\"ac-backup-report-selection\">\n          <a id=\"ac-backup-report-trigger\" href=\"javascript:void(0)\" role=\"button\" class=\"a-popover-trigger a-declarative aok-hidden\">\n          <i class=\"a-icon a-icon-popover\"></i></a>\n      </span>\n  \n      <div class=\"a-popover-preload\" id=\"a-popover-acBackUpReportModal\">\n          <br/>\n          <div class=\"a-row\">\n              <span class=\"a-size-base a-text-bold\">\n                  Invoice ID:\n              </span>\n              <span id=\"ac-backup-invoice-number\" class=\"a-size-base\"></span>\n          </div>\n          <div id=\"ac-backup-load-spinner\" class=\"a-section\">\n              <div class=\"a-row\">\n                  <div class=\"a-column a-span7 a-span-last\">\n                      <span class=\"a-spinner a-spinner-medium\"></span>\n                  </div>\n              </div>\n          </div>\n          <br/>\n  \n          <div id=\"ac-backup-report-no-records\" class=\"a-section aok-hidden\">\n              <div id=\"ac-backup-report-not-found\" class=\"a-box a-alert-inline a-alert-inline-info a-spacing-mini\" aria-live=\"polite\" aria-atomic=\"true\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                  No backup reports found\n              </div></div></div>\n          </div>\n  \n          <div id=\"ac-backup-report-error-section\" class=\"a-section aok-hidden\">\n              <div id=\"ac-backup-report-error\" class=\"a-box a-alert-inline a-alert-inline-error a-spacing-mini\" role=\"alert\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n                  Error occurred while processing report\n              </div></div></div>\n          </div>\n  \n          \n          <form id=\"ac-backup-report-table-form\">\n              <div class=\"a-row\">\n                  <span id=\"ac-download-backup-report-link-text\" class=\"aok-hidden\">\n                      Download report\n                  </span>\n                  <div class=\"a-column a-span9\">\n                      <div id=\"ac-backup-report-section\" class=\"a-section aok-hidden\">\n                          <table id=\"ac-backup-report-table\" class=\"a-normal\">\n                              <tr>\n                                  <th class=\"a-span3 a-size-base a-text-left\">\n                                      <span>\n                                          Filename\n                                      </span>\n                                  </th>\n                                  <th class=\"a-span3 a-size-base a-text-left\">\n                                      <span>\n                                          Actions\n                                      </span>\n                                  </th>\n                              </tr>\n                          </table>\n                      </div>\n                  </div>\n              </div>\n          </form>\n          <div id=\"ac-backup-report-contact\" class=\"a-section aok-hidden\">\n              <div class=\"a-row\">\n                  <div class=\"a-column a-span11\">\n                      If you find a discrepancy in the report, please <a href=\"/hz/vendor/members/contact\" target=\"_blank\">contact us</a>.\n                  </div>\n              </div>\n          </div>\n      </div>\n  </div>\n          \n          \n      \n      </div>\n      \n      <a id=\"cc-agreements-text-modal\" href=\"javascript:void(0)\" role=\"button\" class=\"a-popover-trigger a-declarative aok-hidden\">\n          <input type=\"hidden\" name=\"unique-agreement-id\"/>\n      <i class=\"a-icon a-icon-popover\"></i></a>\n      <div class=\"aok-hidden\" id=\"cc-agreements-text-modal-footer\">\n          <span class=\"a-button a-button-base cc-agreements-text-modal-print-btn\"><span class=\"a-button-inner\"><button class=\"a-button-text\" type=\"button\">\n              Print\n          </button></span></span>\n      </div>\n      <div class=\"aok-hidden\" id=\"cc-agreements-preload-modal-body\">\n          <div id=\"agreement-text-spinner\" class=\"a-section\">\n              <div class=\"a-row\">\n                  <div class=\"a-column a-span7 a-span-last\">\n                      <span class=\"a-spinner a-spinner-medium\"></span>\n                  </div>\n              </div>\n          </div>\n      </div>\n      <div class=\"aok-hidden\" id=\"cc-agreements-modal-body-error\">\n          <div class=\"a-box a-alert a-alert-error\" role=\"alert\"><div class=\"a-box-inner a-alert-container\"><i class=\"a-icon a-icon-alert\"></i><div class=\"a-alert-content\">\n              A problem occurred. Please try again.\n          </div></div></div>\n      </div>\n      \n          <div id=\"download-cell-2021170213\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170213\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170213\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1065739995\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1065739995\",\"agreementTitle\":\"VPC-Campaign for B0BTPR3ZKD and B0BTPQRBKC 10...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170213\",\"customerTrxId\":\"1113080571\",\"agreementNumber\":85131600}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400694382\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400694382\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400694382\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1082794580\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1082794580\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400694382\",\"customerTrxId\":\"1118330955\",\"agreementNumber\":84321340}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021193744\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021193744\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021193744\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097240130\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097240130\",\"agreementTitle\":\"VPC-Campaign for 03100316 SWS54 10%off-Shenzh...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021193744\",\"customerTrxId\":\"1124129324\",\"agreementNumber\":87530290}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170188\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170188\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170188\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1062192510\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1062192510\",\"agreementTitle\":\"VPC-Campaign for B0D6BF6GCN to 1229-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170188\",\"customerTrxId\":\"1113080467\",\"agreementNumber\":84882710}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400709833\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400709833\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400709833\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097424900\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097424900\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-12 to 2025-03-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400709833\",\"customerTrxId\":\"1124089065\",\"agreementNumber\":87562825}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801642212\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801642212\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801642212\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1099324335\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1099324335\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801642212\",\"customerTrxId\":\"1124128742\",\"agreementNumber\":86830095}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400694384\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400694384\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400694384\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1080199950\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1080199950\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400694384\",\"customerTrxId\":\"1118330957\",\"agreementNumber\":86830095}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801616648\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801616648\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801616648\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079169980\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079169980\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801616648\",\"customerTrxId\":\"1118317318\",\"agreementNumber\":85609850}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400701758\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400701758\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400701758\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1084086205\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1084086205\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400701758\",\"customerTrxId\":\"1118618996\",\"agreementNumber\":86114215}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199552\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199552\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199552\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1103182270\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1103182270\",\"agreementTitle\":\"VPC-0328-Shenzhen Lingjia Technology Limited-...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199552\",\"customerTrxId\":\"1124374636\",\"agreementNumber\":88181560}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594244\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594244\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594244\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063601060\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063601060\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-11 to 2025-01-13 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594244\",\"customerTrxId\":\"1113079192\",\"agreementNumber\":85311945}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170181\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170181\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170181\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1061628580\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1061628580\",\"agreementTitle\":\"VPC-Campaign for B0BTPQRBKC to 0202-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170181\",\"customerTrxId\":\"1113080446\",\"agreementNumber\":85832245}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400710437\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400710437\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400710437\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097236665\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1097236665\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400710437\",\"customerTrxId\":\"1124090818\",\"agreementNumber\":83335385}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186024\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186024\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186024\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078627850\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1078627850\",\"agreementTitle\":\"VPC-Campaign for B08766FG4N 10 0217-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186024\",\"customerTrxId\":\"1118649745\",\"agreementNumber\":86572590}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400694381\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400694381\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400694381\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079169985\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079169985\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400694381\",\"customerTrxId\":\"1118330954\",\"agreementNumber\":85609850}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594245\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594245\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594245\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060320680\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060320680\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-21 to 2025-01-26 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594245\",\"customerTrxId\":\"1113079193\",\"agreementNumber\":85609565}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186056\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186056\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186056\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1083349290\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1083349290\",\"agreementTitle\":\"VPC-Campaign for B07T59ZD81 0209-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186056\",\"customerTrxId\":\"1118649777\",\"agreementNumber\":86014465}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801642211\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801642211\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801642211\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1098310570\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1098310570\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-21 to 2025-02-23 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801642211\",\"customerTrxId\":\"1124128741\",\"agreementNumber\":86660830}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801642207\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801642207\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801642207\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097424905\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097424905\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-12 to 2025-03-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801642207\",\"customerTrxId\":\"1124128737\",\"agreementNumber\":87562825}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199543\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199543\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199543\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1101498220\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1101498220\",\"agreementTitle\":\"VPC-Campaign for B0D66LK5NP-Shenzhen Lingjia ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199543\",\"customerTrxId\":\"1124374627\",\"agreementNumber\":87376000}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400709835\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400709835\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400709835\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1099324340\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1099324340\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400709835\",\"customerTrxId\":\"1124089067\",\"agreementNumber\":86830095}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170190\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170190\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170190\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1062321755\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1062321755\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 to 1229-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170190\",\"customerTrxId\":\"1113080476\",\"agreementNumber\":84902730}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100549694\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100549694\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100549694\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1099324330\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1099324330\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100549694\",\"customerTrxId\":\"1124034303\",\"agreementNumber\":86830095}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400716476\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400716476\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400716476\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1103489795\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1103489795\",\"agreementTitle\":\"Single-Unit Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400716476\",\"customerTrxId\":\"1124281462\",\"agreementNumber\":80882735}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186052\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186052\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186052\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1083345585\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1083345585\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 0209 10-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186052\",\"customerTrxId\":\"1118649773\",\"agreementNumber\":86014440}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199503\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199503\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199503\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1098640660\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1098640660\",\"agreementTitle\":\"VPC-03/17-03/23-Shenzhen Lingjia Technology L...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199503\",\"customerTrxId\":\"1124374587\",\"agreementNumber\":87761630}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186055\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186055\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186055\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1083349180\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1083349180\",\"agreementTitle\":\"VPC-Campaign for B07CWV3PRS 0209-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186055\",\"customerTrxId\":\"1118649776\",\"agreementNumber\":86014520}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021193743\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021193743\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021193743\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097238645\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097238645\",\"agreementTitle\":\"VPC-Campaign for B07CWV3PRS 0310-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021193743\",\"customerTrxId\":\"1124129323\",\"agreementNumber\":87529915}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021076173\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021076173\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021076173\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078136570\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1078136570\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Co-op Activities)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021076173\",\"customerTrxId\":\"1118650862\",\"agreementNumber\":83335395}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186032\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186032\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186032\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079884550\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079884550\",\"agreementTitle\":\"VPC-Campaign for B0D66LK5NP 0224-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186032\",\"customerTrxId\":\"1118649753\",\"agreementNumber\":86774640}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100549693\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100549693\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100549693\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097424915\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097424915\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-12 to 2025-03-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100549693\",\"customerTrxId\":\"1124034302\",\"agreementNumber\":87562825}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685592\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685592\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685592\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1059594730\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1059594730\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685592\",\"customerTrxId\":\"1112883862\",\"agreementNumber\":85487370}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170212\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170212\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170212\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1065731930\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1065731930\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 to 0108-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170212\",\"customerTrxId\":\"1113080570\",\"agreementNumber\":85129935}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400694385\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400694385\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400694385\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078879870\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1078879870\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-01-30 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400694385\",\"customerTrxId\":\"1118330958\",\"agreementNumber\":85564890}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801616644\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801616644\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801616644\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079191800\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079191800\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-21 to 2025-02-23 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801616644\",\"customerTrxId\":\"1118317314\",\"agreementNumber\":86660830}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199509\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199509\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199509\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1099002175\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1099002175\",\"agreementTitle\":\"VPC-Campaign for B0D66LK5NP 0224-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199509\",\"customerTrxId\":\"1124374593\",\"agreementNumber\":86774640}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021193741\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021193741\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021193741\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097237510\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097237510\",\"agreementTitle\":\"VPC-Campaign for B082FXLS39 0310-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021193741\",\"customerTrxId\":\"1124129321\",\"agreementNumber\":87529880}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685595\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685595\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685595\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060976885\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060976885\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-25 to 2024-12-25 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685595\",\"customerTrxId\":\"1112883865\",\"agreementNumber\":84670025}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170166\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170166\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170166\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060229230\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060229230\",\"agreementTitle\":\"VPC-Campaign for B0BTPR3ZKD to 0126 10-Shenzh...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170166\",\"customerTrxId\":\"1113080426\",\"agreementNumber\":85593135}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801616646\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801616646\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801616646\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1080199955\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1080199955\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801616646\",\"customerTrxId\":\"1118317316\",\"agreementNumber\":86830095}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199513\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199513\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199513\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1099071255\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1099071255\",\"agreementTitle\":\"VPC-Campaign for B0BTPQRBKC 0224 12-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199513\",\"customerTrxId\":\"1124374597\",\"agreementNumber\":86787880}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186050\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186050\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186050\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1082441130\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1082441130\",\"agreementTitle\":\"VPC-Campaign for B082FXLS39 0210-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186050\",\"customerTrxId\":\"1118649771\",\"agreementNumber\":86350770}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199549\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199549\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199549\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1102727280\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1102727280\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 0304-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199549\",\"customerTrxId\":\"1124374633\",\"agreementNumber\":87078925}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100541447\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100541447\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100541447\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060320660\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060320660\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-21 to 2025-01-26 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100541447\",\"customerTrxId\":\"1112870071\",\"agreementNumber\":85609565}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594233\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594233\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594233\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1061353875\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Straight Payment\",\"backUpReportInput\":\"2800-1061353875\",\"agreementTitle\":\"Born to Run Retention Fee for ASIN B0BTPR3ZKD\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594233\",\"customerTrxId\":\"1113079181\",\"agreementNumber\":85782570}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170209\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170209\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170209\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1065717945\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1065717945\",\"agreementTitle\":\"VPC-Campaign for B0D6BF6GCN to 0108-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170209\",\"customerTrxId\":\"1113080517\",\"agreementNumber\":85130575}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186053\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186053\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186053\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1083345655\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1083345655\",\"agreementTitle\":\"VPC-Campaign for B0D6BF6GCN 0209-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186053\",\"customerTrxId\":\"1118649774\",\"agreementNumber\":86014450}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186023\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186023\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186023\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078619965\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1078619965\",\"agreementTitle\":\"VPC-Campaign for B0BTPQRBKC 10 0217-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186023\",\"customerTrxId\":\"1118649744\",\"agreementNumber\":86569015}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199547\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199547\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199547\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1102723945\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1102723945\",\"agreementTitle\":\"VPC-Campaign for B07T59ZD81 0304-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199547\",\"customerTrxId\":\"1124374631\",\"agreementNumber\":87079225}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170193\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170193\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170193\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063241460\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063241460\",\"agreementTitle\":\"VPC-Campaign for B07T59ZD81 to 0112-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170193\",\"customerTrxId\":\"1113080479\",\"agreementNumber\":85255355}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170180\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170180\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170180\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1061628320\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1061628320\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 to 0202-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170180\",\"customerTrxId\":\"1113080445\",\"agreementNumber\":85832220}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021073957\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021073957\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021073957\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1059306190\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1059306190\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Co-op Activities)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021073957\",\"customerTrxId\":\"1113081082\",\"agreementNumber\":83335395}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186031\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186031\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186031\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079877410\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079877410\",\"agreementTitle\":\"VPC-Campaign for B0D6BF6GCN 0224-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186031\",\"customerTrxId\":\"1118649752\",\"agreementNumber\":86774870}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594242\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594242\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594242\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1062929340\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1062929340\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-11-21 to 2024-12-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594242\",\"customerTrxId\":\"1113079190\",\"agreementNumber\":82063960}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100541446\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100541446\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100541446\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060992530\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060992530\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-30 to 2025-01-05 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100541446\",\"customerTrxId\":\"1112870070\",\"agreementNumber\":84670660}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199542\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199542\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199542\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1101496995\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1101496995\",\"agreementTitle\":\"VPC-Campaign for B0BTPR3ZKD 0305-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199542\",\"customerTrxId\":\"1124374626\",\"agreementNumber\":87375935}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685585\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685585\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685585\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063896690\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063896690\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685585\",\"customerTrxId\":\"1112883855\",\"agreementNumber\":84321340}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186040\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186040\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186040\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1080483040\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1080483040\",\"agreementTitle\":\"VPC-Campaign for B0BTPQRBKC to 0202-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186040\",\"customerTrxId\":\"1118649761\",\"agreementNumber\":85832245}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594241\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594241\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594241\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1065292700\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1065292700\",\"agreementTitle\":\"Single-Unit Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594241\",\"customerTrxId\":\"1113079189\",\"agreementNumber\":80882735}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170202\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170202\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170202\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1064359375\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1064359375\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 to 0101-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170202\",\"customerTrxId\":\"1113080507\",\"agreementNumber\":84952655}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594247\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594247\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594247\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1059594710\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1059594710\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594247\",\"customerTrxId\":\"1113079195\",\"agreementNumber\":85487370}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186035\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186035\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186035\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079886590\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079886590\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 0224-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186035\",\"customerTrxId\":\"1118649756\",\"agreementNumber\":86774495}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400695032\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400695032\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400695032\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078131195\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1078131195\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400695032\",\"customerTrxId\":\"1118331608\",\"agreementNumber\":83335385}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186022\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186022\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186022\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078605695\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1078605695\",\"agreementTitle\":\"VPC-Campaign for B07T59ZD81 8 0227-Shenzhen L...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186022\",\"customerTrxId\":\"1118649743\",\"agreementNumber\":86568740}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170189\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170189\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170189\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1062193110\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1062193110\",\"agreementTitle\":\"VPC-Campaign for B07T59ZD81 to 1229-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170189\",\"customerTrxId\":\"1113080468\",\"agreementNumber\":84882840}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801642159\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801642159\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801642159\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1098870800\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1098870800\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-25 to 2025-03-31 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801642159\",\"customerTrxId\":\"1124128689\",\"agreementNumber\":87800010}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594728\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594728\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594728\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1059306775\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1059306775\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594728\",\"customerTrxId\":\"1113081075\",\"agreementNumber\":83335385}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100541453\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100541453\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100541453\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060055370\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060055370\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-01-30 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100541453\",\"customerTrxId\":\"1112870077\",\"agreementNumber\":85564890}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170200\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170200\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170200\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1064104840\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1064104840\",\"agreementTitle\":\"VPC-Campaign for B0BTPQRBKC to 0119-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170200\",\"customerTrxId\":\"1113080505\",\"agreementNumber\":85407740}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021073909\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021073909\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021073909\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060502990\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1060502990\",\"agreementTitle\":\"[DE,ES,FR,IT,UK] X-Sense AVS 2024-05-20 to 2025-05-20 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021073909\",\"customerTrxId\":\"1113081010\",\"agreementNumber\":76203605}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100551758\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100551758\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100551758\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1103489805\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1103489805\",\"agreementTitle\":\"Single-Unit Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100551758\",\"customerTrxId\":\"1124250727\",\"agreementNumber\":80882735}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100541450\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100541450\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100541450\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063896680\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063896680\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100541450\",\"customerTrxId\":\"1112870074\",\"agreementNumber\":84321340}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170194\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170194\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170194\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063242450\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063242450\",\"agreementTitle\":\"VPC-Campaign for B0BTPR3ZKD and B0BTPQRBKC 10...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170194\",\"customerTrxId\":\"1113080480\",\"agreementNumber\":85255475}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199499\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199499\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199499\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1098586370\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1098586370\",\"agreementTitle\":\"VPC-Campaign for SWS5410%OFF 03170323-Shenzhe...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199499\",\"customerTrxId\":\"1124374583\",\"agreementNumber\":87753625}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400694383\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400694383\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400694383\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078883505\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1078883505\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-03 to 2025-02-09 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400694383\",\"customerTrxId\":\"1118330956\",\"agreementNumber\":85564945}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801625156\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801625156\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801625156\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1084173520\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1084173520\",\"agreementTitle\":\"Single-Unit Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801625156\",\"customerTrxId\":\"1118648293\",\"agreementNumber\":80882735}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801616647\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801616647\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801616647\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1082794585\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1082794585\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801616647\",\"customerTrxId\":\"1118317317\",\"agreementNumber\":84321340}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199510\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199510\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199510\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1099002345\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1099002345\",\"agreementTitle\":\"VPC-Campaign for B08766FG4N 0224-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199510\",\"customerTrxId\":\"1124374594\",\"agreementNumber\":86774595}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685594\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685594\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685594\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060320665\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060320665\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-21 to 2025-01-26 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685594\",\"customerTrxId\":\"1112883864\",\"agreementNumber\":85609565}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801628497\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801628497\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801628497\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1093323715\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1093323715\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-11-21 to 2024-12-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801628497\",\"customerTrxId\":\"1119282620\",\"agreementNumber\":82063960}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400716478\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400716478\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400716478\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1100185695\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1100185695\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-03 to 2025-03-09 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400716478\",\"customerTrxId\":\"1124281464\",\"agreementNumber\":86977870}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100547158\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100547158\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100547158\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1084173525\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1084173525\",\"agreementTitle\":\"Single-Unit Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100547158\",\"customerTrxId\":\"1118616328\",\"agreementNumber\":80882735}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100541452\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100541452\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100541452\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1065292705\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1065292705\",\"agreementTitle\":\"Single-Unit Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100541452\",\"customerTrxId\":\"1112870076\",\"agreementNumber\":80882735}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186058\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186058\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186058\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1083349535\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1083349535\",\"agreementTitle\":\"VPC-Campaign for B082FXLS39 0209-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186058\",\"customerTrxId\":\"1118649779\",\"agreementNumber\":86014480}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594238\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594238\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594238\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1059618100\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1059618100\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594238\",\"customerTrxId\":\"1113079186\",\"agreementNumber\":85490010}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801642210\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801642210\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801642210\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1100185700\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1100185700\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-03 to 2025-03-09 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801642210\",\"customerTrxId\":\"1124128740\",\"agreementNumber\":86977870}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186060\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186060\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186060\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1083897775\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1083897775\",\"agreementTitle\":\"VPC-Campaign for B08766FG4N 0203 10-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186060\",\"customerTrxId\":\"1118649781\",\"agreementNumber\":86089540}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199544\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199544\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199544\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1101498350\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1101498350\",\"agreementTitle\":\"VPC-Campaign for B08766FG4N 0305-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199544\",\"customerTrxId\":\"1124374628\",\"agreementNumber\":87376050}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021076966\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021076966\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021076966\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097236040\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1097236040\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Co-op Activities)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021076966\",\"customerTrxId\":\"1124129559\",\"agreementNumber\":83335395}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100545635\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100545635\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100545635\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079169990\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079169990\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100545635\",\"customerTrxId\":\"1118291448\",\"agreementNumber\":85609850}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186033\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186033\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186033\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079884670\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079884670\",\"agreementTitle\":\"VPC-Campaign for B08766FG4N 0224-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186033\",\"customerTrxId\":\"1118649754\",\"agreementNumber\":86774595}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170211\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170211\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170211\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1065730055\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1065730055\",\"agreementTitle\":\"VPC-Campaign for B0D66LK5NP to 0108-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170211\",\"customerTrxId\":\"1113080569\",\"agreementNumber\":85130215}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594240\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594240\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594240\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060992525\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060992525\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-30 to 2025-01-05 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594240\",\"customerTrxId\":\"1113079188\",\"agreementNumber\":84670660}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170201\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170201\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170201\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1064357165\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1064357165\",\"agreementTitle\":\"VPC-Campaign for B0BTPQRBKC 10 to 1231-Shenzh...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170201\",\"customerTrxId\":\"1113080506\",\"agreementNumber\":84952950}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100546668\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100546668\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100546668\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078131200\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1078131200\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100546668\",\"customerTrxId\":\"1118292481\",\"agreementNumber\":83335385}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594243\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594243\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594243\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1062562865\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1062562865\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-11-21 to 2024-12-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594243\",\"customerTrxId\":\"1113079191\",\"agreementNumber\":82007035}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801593922\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801593922\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801593922\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1063759260\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1063759260\",\"agreementTitle\":\"[DE] Biss FLEXIBLE_ASIN_BASED [FX71X] 2024-12-16 to 2024-12-22 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801593922\",\"customerTrxId\":\"1113078671\",\"agreementNumber\":84294245}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100541449\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100541449\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100541449\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060321715\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060321715\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100541449\",\"customerTrxId\":\"1112870073\",\"agreementNumber\":85609850}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685583\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685583\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685583\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060991360\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060991360\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-13 to 2025-01-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685583\",\"customerTrxId\":\"1112883853\",\"agreementNumber\":84670965}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100541451\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100541451\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100541451\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060991375\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060991375\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-13 to 2025-01-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100541451\",\"customerTrxId\":\"1112870075\",\"agreementNumber\":84670965}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170192\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170192\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170192\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063239465\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063239465\",\"agreementTitle\":\"VPC-Campaign for B0D6BF6GCN to 0112-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170192\",\"customerTrxId\":\"1113080478\",\"agreementNumber\":85255575}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100545636\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100545636\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100545636\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1080199945\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1080199945\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-26 to 2025-03-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100545636\",\"customerTrxId\":\"1118291449\",\"agreementNumber\":86830095}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170191\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170191\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170191\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063001660\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063001660\",\"agreementTitle\":\"VPC-Campaign for B082FXLS39 to 0112-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170191\",\"customerTrxId\":\"1113080477\",\"agreementNumber\":85220005}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685586\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685586\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685586\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1065292710\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1065292710\",\"agreementTitle\":\"Single-Unit Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685586\",\"customerTrxId\":\"1112883856\",\"agreementNumber\":80882735}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594234\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594234\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594234\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060976880\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060976880\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-25 to 2024-12-25 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594234\",\"customerTrxId\":\"1113079182\",\"agreementNumber\":84670025}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400701757\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400701757\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400701757\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1084173510\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1084173510\",\"agreementTitle\":\"Single-Unit Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400701757\",\"customerTrxId\":\"1118618995\",\"agreementNumber\":80882735}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801625157\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801625157\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801625157\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1084086210\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1084086210\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801625157\",\"customerTrxId\":\"1118648294\",\"agreementNumber\":86114215}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199515\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199515\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199515\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1099072025\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1099072025\",\"agreementTitle\":\"VPC-Campaign for B082FXLS39 0224 12-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199515\",\"customerTrxId\":\"1124374599\",\"agreementNumber\":86787930}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801616645\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801616645\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801616645\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078883495\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1078883495\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-03 to 2025-02-09 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801616645\",\"customerTrxId\":\"1118317315\",\"agreementNumber\":85564945}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100545634\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100545634\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100545634\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079182740\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079182740\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100545634\",\"customerTrxId\":\"1118291447\",\"agreementNumber\":85610085}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186039\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186039\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186039\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1080482710\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1080482710\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 to 0202-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186039\",\"customerTrxId\":\"1118649760\",\"agreementNumber\":85832220}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400716477\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400716477\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400716477\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1103489585\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1103489585\",\"agreementTitle\":\"QP Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400716477\",\"customerTrxId\":\"1124281463\",\"agreementNumber\":80882730}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594237\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594237\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594237\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063896675\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063896675\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594237\",\"customerTrxId\":\"1113079185\",\"agreementNumber\":84321340}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801625155\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801625155\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801625155\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1084173475\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1084173475\",\"agreementTitle\":\"QP Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801625155\",\"customerTrxId\":\"1118648292\",\"agreementNumber\":80882730}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186057\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186057\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186057\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1083349495\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1083349495\",\"agreementTitle\":\"VPC-Campaign for B0BTPQRBKC 0210-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186057\",\"customerTrxId\":\"1118649778\",\"agreementNumber\":86014490}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594249\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594249\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594249\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063919700\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063919700\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-10 to 2024-12-22 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594249\",\"customerTrxId\":\"1113079197\",\"agreementNumber\":84325410}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594239\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594239\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594239\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060321720\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060321720\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594239\",\"customerTrxId\":\"1113079187\",\"agreementNumber\":85609850}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594248\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594248\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594248\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060055365\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060055365\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-01-30 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594248\",\"customerTrxId\":\"1113079196\",\"agreementNumber\":85564890}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685588\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685588\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685588\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060055360\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060055360\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-01-30 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685588\",\"customerTrxId\":\"1112883858\",\"agreementNumber\":85564890}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186034\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186034\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186034\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079885385\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079885385\",\"agreementTitle\":\"VPC-Campaign for B07T59ZD81 0224-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186034\",\"customerTrxId\":\"1118649755\",\"agreementNumber\":86774720}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170170\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170170\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170170\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060240240\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060240240\",\"agreementTitle\":\"VPC-Campaign for B0D6BF6GCN 0126-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170170\",\"customerTrxId\":\"1113080430\",\"agreementNumber\":85593055}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186054\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186054\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186054\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1083345690\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1083345690\",\"agreementTitle\":\"VPC-Campaign for B0BTPR3ZKD 0209-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186054\",\"customerTrxId\":\"1118649775\",\"agreementNumber\":86014455}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186049\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186049\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186049\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1082440045\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1082440045\",\"agreementTitle\":\"VPC-Campaign for B08766FG4N 0210-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186049\",\"customerTrxId\":\"1118649770\",\"agreementNumber\":86350815}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021193740\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021193740\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021193740\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097236520\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097236520\",\"agreementTitle\":\"VPC-Campaign for B0BTPR3ZKD 0310-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021193740\",\"customerTrxId\":\"1124129320\",\"agreementNumber\":87529815}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594235\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594235\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594235\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1065292635\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1065292635\",\"agreementTitle\":\"QP Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594235\",\"customerTrxId\":\"1113079183\",\"agreementNumber\":80882730}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100541448\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100541448\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100541448\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1059594720\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1059594720\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100541448\",\"customerTrxId\":\"1112870072\",\"agreementNumber\":85487370}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186038\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186038\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186038\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079956945\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079956945\",\"agreementTitle\":\"VPC-Campaign for B082FXLS39 0224 12-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186038\",\"customerTrxId\":\"1118649759\",\"agreementNumber\":86787930}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199514\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199514\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199514\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1099071485\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1099071485\",\"agreementTitle\":\"VPC-Campaign for B0BTPR3ZKD 0224 12-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199514\",\"customerTrxId\":\"1124374598\",\"agreementNumber\":86787855}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400709834\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400709834\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400709834\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1098310565\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1098310565\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-21 to 2025-02-23 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400709834\",\"customerTrxId\":\"1124089066\",\"agreementNumber\":86660830}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021193737\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021193737\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021193737\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097233450\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097233450\",\"agreementTitle\":\"VPC-Campaign for B07T59ZD81 0310-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021193737\",\"customerTrxId\":\"1124129317\",\"agreementNumber\":87529840}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100541445\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100541445\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100541445\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1059618110\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1059618110\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100541445\",\"customerTrxId\":\"1112870069\",\"agreementNumber\":85490010}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186019\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186019\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186019\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078184715\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1078184715\",\"agreementTitle\":\"VPC-Campaign for 0214 SWS54-Shenzhen Lingjia ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186019\",\"customerTrxId\":\"1118649740\",\"agreementNumber\":86490790}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801642687\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801642687\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801642687\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097236670\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1097236670\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801642687\",\"customerTrxId\":\"1124129558\",\"agreementNumber\":83335385}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801642208\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801642208\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801642208\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1098014470\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1098014470\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-03 to 2025-02-09 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801642208\",\"customerTrxId\":\"1124128738\",\"agreementNumber\":85564945}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170183\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170183\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170183\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1061982290\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1061982290\",\"agreementTitle\":\"VPC-Campaign for B0BTPQRBKC 10 1229-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170183\",\"customerTrxId\":\"1113080448\",\"agreementNumber\":84844730}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594236\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594236\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594236\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063941215\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063941215\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-16 to 2024-12-22 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594236\",\"customerTrxId\":\"1113079184\",\"agreementNumber\":84327255}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400709756\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400709756\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400709756\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1098870790\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1098870790\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-25 to 2025-03-31 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400709756\",\"customerTrxId\":\"1124088853\",\"agreementNumber\":87800010}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100547159\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100547159\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100547159\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1084086215\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1084086215\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100547159\",\"customerTrxId\":\"1118616329\",\"agreementNumber\":86114215}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021193738\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021193738\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021193738\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097234410\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097234410\",\"agreementTitle\":\"VPC-Campaign for B0D66LK5NP 0310-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021193738\",\"customerTrxId\":\"1124129318\",\"agreementNumber\":87529940}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801616649\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801616649\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801616649\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079182735\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079182735\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801616649\",\"customerTrxId\":\"1118317319\",\"agreementNumber\":85610085}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170195\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170195\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170195\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063245605\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063245605\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 to 0112-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170195\",\"customerTrxId\":\"1113080481\",\"agreementNumber\":85255325}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170167\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170167\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170167\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060231865\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060231865\",\"agreementTitle\":\"VPC-Campaign for B07T59ZD81 8-Shenzhen Lingji...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170167\",\"customerTrxId\":\"1113080427\",\"agreementNumber\":85593180}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400686365\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400686365\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400686365\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1059306785\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1059306785\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400686365\",\"customerTrxId\":\"1112884637\",\"agreementNumber\":83335385}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021193745\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021193745\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021193745\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097240930\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097240930\",\"agreementTitle\":\"VPC-Campaign for B0D6BF6GCN 0310-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021193745\",\"customerTrxId\":\"1124129325\",\"agreementNumber\":87529600}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400694386\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400694386\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400694386\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079182745\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079182745\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400694386\",\"customerTrxId\":\"1118330959\",\"agreementNumber\":85610085}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021193742\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021193742\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021193742\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097238185\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097238185\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 0310-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021193742\",\"customerTrxId\":\"1124129322\",\"agreementNumber\":87529505}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801609712\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801609712\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801609712\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078131190\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1078131190\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801609712\",\"customerTrxId\":\"1117367910\",\"agreementNumber\":83335385}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685584\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685584\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685584\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1059618095\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1059618095\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-17 to 2025-01-19 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685584\",\"customerTrxId\":\"1112883854\",\"agreementNumber\":85490010}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801651422\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801651422\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801651422\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1103489590\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1103489590\",\"agreementTitle\":\"QP Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801651422\",\"customerTrxId\":\"1124373891\",\"agreementNumber\":80882730}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199548\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199548\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199548\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1102726905\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1102726905\",\"agreementTitle\":\"VPC-Campaign for B07CWV3PRS 0304-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199548\",\"customerTrxId\":\"1124374632\",\"agreementNumber\":87078930}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021076951\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021076951\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021076951\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1098471590\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1098471590\",\"agreementTitle\":\"[DE,ES,FR,IT,UK] X-Sense AVS 2024-05-20 to 2025-05-20 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021076951\",\"customerTrxId\":\"1124129534\",\"agreementNumber\":76203605}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021076097\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021076097\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021076097\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079354780\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1079354780\",\"agreementTitle\":\"[DE,ES,FR,IT,UK] X-Sense AVS 2024-05-20 to 2025-05-20 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021076097\",\"customerTrxId\":\"1118650703\",\"agreementNumber\":76203605}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186025\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186025\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186025\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078828960\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1078828960\",\"agreementTitle\":\"VPC-Campaign for B0BTPQRBKC 10 0218-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186025\",\"customerTrxId\":\"1118649746\",\"agreementNumber\":86605460}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100550582\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100550582\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100550582\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097236660\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1097236660\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100550582\",\"customerTrxId\":\"1124035191\",\"agreementNumber\":83335385}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801642209\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801642209\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801642209\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1098293130\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1098293130\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801642209\",\"customerTrxId\":\"1124128739\",\"agreementNumber\":85610085}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801629701\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801629701\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801629701\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1094079335\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1094079335\",\"agreementTitle\":\"X-Sense Smart Wassermelder mit Batterie, WLAN Wassersensor, komp\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801629701\",\"customerTrxId\":\"1119508217\",\"agreementNumber\":81629810}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199511\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199511\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199511\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1099004160\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1099004160\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 0224-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199511\",\"customerTrxId\":\"1124374595\",\"agreementNumber\":86774495}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186037\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186037\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186037\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079956075\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079956075\",\"agreementTitle\":\"VPC-Campaign for B0BTPQRBKC 0224 12-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186037\",\"customerTrxId\":\"1118649758\",\"agreementNumber\":86787880}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685591\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685591\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685591\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060992520\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060992520\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2024-12-30 to 2025-01-05 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685591\",\"customerTrxId\":\"1112883861\",\"agreementNumber\":84670660}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186036\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186036\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186036\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079956025\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079956025\",\"agreementTitle\":\"VPC-Campaign for B0BTPR3ZKD 0224 12-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186036\",\"customerTrxId\":\"1118649757\",\"agreementNumber\":86787855}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100549692\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100549692\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100549692\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1098870795\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1098870795\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-03-25 to 2025-03-31 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100549692\",\"customerTrxId\":\"1124034301\",\"agreementNumber\":87800010}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685593\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685593\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685593\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1061353870\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Straight Payment\",\"backUpReportInput\":\"2800-1061353870\",\"agreementTitle\":\"Born to Run Retention Fee for ASIN B0BTPR3ZKD\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685593\",\"customerTrxId\":\"1112883863\",\"agreementNumber\":85782570}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801594246\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801594246\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801594246\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060991370\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060991370\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-13 to 2025-01-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801594246\",\"customerTrxId\":\"1113079194\",\"agreementNumber\":84670965}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170165\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170165\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170165\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060227130\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060227130\",\"agreementTitle\":\"VPC-Campaign for B0BMQ52BC8 0126-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170165\",\"customerTrxId\":\"1113080425\",\"agreementNumber\":85592985}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801651423\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801651423\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801651423\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1103489810\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1103489810\",\"agreementTitle\":\"Single-Unit Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801651423\",\"customerTrxId\":\"1124373892\",\"agreementNumber\":80882735}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170210\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170210\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170210\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1065718280\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1065718280\",\"agreementTitle\":\"VPC-Campaign for B07T59ZD81 to 0108-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170210\",\"customerTrxId\":\"1113080568\",\"agreementNumber\":85130650}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100547160\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100547160\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100547160\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1084173480\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1084173480\",\"agreementTitle\":\"QP Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100547160\",\"customerTrxId\":\"1118616330\",\"agreementNumber\":80882730}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685590\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685590\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685590\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1063601055\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1063601055\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-11 to 2025-01-13 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685590\",\"customerTrxId\":\"1112883860\",\"agreementNumber\":85311945}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021186021\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021186021\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021186021\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1078604925\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1078604925\",\"agreementTitle\":\"VPC-Campaign for B082FXLS39 10 0223-Shenzhen ...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021186021\",\"customerTrxId\":\"1118649742\",\"agreementNumber\":86568800}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021193739\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021193739\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021193739\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1097236195\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1097236195\",\"agreementTitle\":\"VPC-Campaign for B0BTPQRBKC 0310-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021193739\",\"customerTrxId\":\"1124129319\",\"agreementNumber\":87529770}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021170169\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021170169\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021170169\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060238600\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060238600\",\"agreementTitle\":\"VPC-Campaign for B082FXLS39 0126-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021170169\",\"customerTrxId\":\"1113080429\",\"agreementNumber\":85593040}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5801651424\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5801651424\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5801651424\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1103399765\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1103399765\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-10 to 2025-02-16 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5801651424\",\"customerTrxId\":\"1124373893\",\"agreementNumber\":86114215}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400694387\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400694387\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400694387\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1079191795\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1079191795\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-02-21 to 2025-02-23 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400694387\",\"customerTrxId\":\"1118330960\",\"agreementNumber\":86660830}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685587\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685587\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685587\" data-invoice-data='{\"ccogsInvoiceId\":\"6270-1065292630\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"6270-1065292630\",\"agreementTitle\":\"QP Business pricing agreement for:FX71X\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685587\",\"customerTrxId\":\"1112883857\",\"agreementNumber\":80882730}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-2021199507\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-2021199507\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-2021199507\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1098994685\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1098994685\",\"agreementTitle\":\"VPC-Campaign for B0D6BF6GCN 0224-Shenzhen Lin...\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"2021199507\",\"customerTrxId\":\"1124374591\",\"agreementNumber\":86774870}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-8100542517\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-8100542517\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-8100542517\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1059306790\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Accrual\",\"backUpReportInput\":\"2800-1059306790\",\"agreementTitle\":\"Shenzhen Lingjia Technology Limited - 5.0% - Accrual (Damage Allowance)\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"8100542517\",\"customerTrxId\":\"1112871141\",\"agreementNumber\":83335385}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n          <div id=\"download-cell-5400685589\" style=\"display: none;\">\n              \n              \n  \n  \n  \n  \n  \n      \n      \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  \n  <span class=\"a-dropdown-container\"><select name=\"\" autocomplete=\"off\" role=\"combobox\" id=\"invoiceDownloads-5400685589\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-declarative\"><option class=\"a-prompt\" value=\"\">Available downloads</option>\n      \n          \n              \n              \n              \n              \n                  <optgroup label=\"dg-ccogs-invoice-download\">\n                      <option value=\"download-contracogs-invoice-pdf\">\n                          Invoice as a PDF\n                      </option>\n                      <option value=\"download-contracogs-invoice-csv\">\n                          Invoice as a spreadsheet\n                      </option>\n                  </optgroup>\n              \n          \n      \n      <optgroup label=\"dg-backup-report\">\n          <option value=\"download-backup-reports\">\n              Backup report\n          </option>\n      </optgroup>\n      <optgroup label=\"dg-ccogs-agreement-text\">\n          <option value=\"view-agreement-text\">\n              Agreement text\n          </option>\n      </optgroup>\n  </select><span tabindex=\"-1\" class=\"a-button a-button-dropdown\" aria-hidden=\"true\"><span class=\"a-button-inner\"><span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\"><span class=\"a-dropdown-prompt\">Available downloads</span></span><i class=\"a-icon a-icon-dropdown\"></i></span></span></span>\n  \n  <span id=\"invoiceData-5400685589\" data-invoice-data='{\"ccogsInvoiceId\":\"2800-1060321710\",\"isOrgIdPresentInAlexandria\":false,\"isLangInvoiceAvailable\":false,\"fundingType\":\"Vendor Funded Sales Discount\",\"backUpReportInput\":\"2800-1060321710\",\"agreementTitle\":\"[DE] Home Improvement FLEXIBLE_ASIN_BASED [FX71X] 2025-01-27 to 2025-02-02 EUR\",\"invoiceLineType\":\"Positive\",\"isOrgIdPresentInGIS\":false,\"invoiceNumber\":\"5400685589\",\"customerTrxId\":\"1112883859\",\"agreementNumber\":85609850}' class=\"hidden\"></span>\n  \n  \n          </div>\n      \n  </div>\n  </div><div id=\"sc-footer-container\"><style>#a-page {\n              display: flex;\n              flex-direction: column;\n              height: 100%;\n          }\n          #sc-content-container {\n              flex: 1 0 auto; /* Prevent Chrome, Opera, and Safari from letting these items shrink to smaller than their content's default minimum size. */\n          }\n          #sc-footer-container {\n              flex-shrink: 0; /* Prevent Chrome, Opera, and Safari from letting these items shrink to smaller than their content's default minimum size. */\n          }\n          #vc-footer-container {\n              margin-top: 100px !important; /*Creates spacing between last item in page and footer*/\n          }</style><div id=\"vc-footer-container\"></div></div><div id='be' style=\"display:none;visibility:hidden;\"><form name='ue_backdetect' action=\"get\"><input type=\"hidden\" name='ue_back' value='1' /></form>\n  \n  \n  <script type=\"text/javascript\">\n  window.ue_ibe = (window.ue_ibe || 0) + 1;\n  if (window.ue_ibe === 1) {\n  (function(e,c){function h(b,a){f.push([b,a])}function g(b,a){if(b){var c=e.head||e.getElementsByTagName(\"head\")[0]||e.documentElement,d=e.createElement(\"script\");d.async=\"async\";d.src=b;d.setAttribute(\"crossorigin\",\"anonymous\");a&&a.onerror&&(d.onerror=a.onerror);a&&a.onload&&(d.onload=a.onload);c.insertBefore(d,c.firstChild)}}function k(){ue.uels=g;for(var b=0;b<f.length;b++){var a=f[b];g(a[0],a[1])}ue.deffered=1}var f=[];c.ue&&(ue.uels=h,c.ue.attach&&c.ue.attach(\"load\",k))})(document,window);\n  \n  \n  if (window.ue && window.ue.uels) {\n          var cel_widgets = [ { \"c\":\"celwidget\" },{ \"s\":\"#nav-swmslot > div\", \"id_gen\":function(elem, index){ return 'nav_sitewide_msg'; } } ];\n  \n                  ue.uels(\"https://images-eu.ssl-images-amazon.com/images/I/216YVwoRFDL.js\");\n  }\n  var ue_mbl=ue_csm.ue.exec(function(h,a){function s(c){b=c||{};a.AMZNPerformance=b;b.transition=b.transition||{};b.timing=b.timing||{};if(a.csa){var d;b.timing.transitionStart&&(d=b.timing.transitionStart);b.timing.processStart&&(d=b.timing.processStart);d&&(csa(\"PageTiming\")(\"mark\",\"nativeTransitionStart\",d),csa(\"PageTiming\")(\"mark\",\"transitionStart\",d))}h.ue.exec(t,\"csm-android-check\")()&&b.tags instanceof Array&&(c=-1!=b.tags.indexOf(\"usesAppStartTime\")||b.transition.type?!b.transition.type&&-1<\n  b.tags.indexOf(\"usesAppStartTime\")?\"warm-start\":void 0:\"view-transition\",c&&(b.transition.type=c));n=null;\"reload\"===e._nt&&h.ue_orct||\"intrapage-transition\"===e._nt?u(b):\"undefined\"===typeof e._nt&&f&&f.timing&&f.timing.navigationStart&&a.history&&\"function\"===typeof a.History&&\"object\"===typeof a.history&&a.history.length&&1!=a.history.length&&(b.timing.transitionStart=f.timing.navigationStart);p&&e.ssw(q,\"\"+(b.timing.transitionStart||n||\"\"));c=b.transition;d=e._nt?e._nt:void 0;c.subType=d;a.ue&&\n  a.ue.tag&&a.ue.tag(\"has-AMZNPerformance\");e.isl&&a.uex&&a.uex(\"at\",\"csm-timing\");v()}function w(c){a.ue&&a.ue.count&&a.ue.count(\"csm-cordova-plugin-failed\",1)}function t(){return a.cordova&&a.cordova.platformId&&\"android\"==a.cordova.platformId}function u(){if(p){var c=e.ssw(q),a=function(){},x=e.count||a,a=e.tag||a,k=b.timing.transitionStart,g=c&&!c.e&&c.val;n=c=g?+c.val:null;k&&g&&k>c?(x(\"csm.jumpStart.mtsDiff\",k-c||0),a(\"csm-rld-mts-gt\")):k&&g?a(\"csm-rld-mts-leq\"):g?k||a(\"csm-rld-mts-no-new\"):a(\"csm-rld-mts-no-old\")}f&&\n  f.timing&&f.timing.navigationStart?b.timing.transitionStart=f.timing.navigationStart:delete b.timing.transitionStart}function v(){try{a.P.register(\"AMZNPerformance\",function(){return b})}catch(c){}}function r(){if(!b)return\"\";ue_mbl.cnt=null;var c=b.timing,d=b.transition,d=[\"mts\",l(c.transitionStart),\"mps\",l(c.processStart),\"mtt\",d.type,\"mtst\",d.subType,\"mtlt\",d.launchType];a.ue&&a.ue.tag&&(c.fr_ovr&&a.ue.tag(\"fr_ovr\"),c.fcp_ovr&&a.ue.tag(\"fcp_ovr\"),d.push(\"fr_ovr\",l(c.fr_ovr),\"fcp_ovr\",l(c.fcp_ovr)));\n  for(var c=\"\",e=0;e<d.length;e+=2){var f=d[e],g=d[e+1];\"undefined\"!==typeof g&&(c+=\"&\"+f+\"=\"+g)}return c}function l(a){if(\"undefined\"!==typeof a&&\"undefined\"!==typeof m)return a-m}function y(a,d){b&&(m=d,b.timing.transitionStart=a,b.transition.type=\"view-transition\",b.transition.subType=\"ajax-transition\",b.transition.launchType=\"normal\",ue_mbl.cnt=r)}var e=h.ue||{},m=h.ue_t0,q=\"csm-last-mts\",p=1===h.ue_sswmts,n,f=a.performance,b;if(a.P&&a.P.when&&a.P.register)return 1===a.ue_fnt&&(m=a.aPageStart||\n  h.ue_t0),a.P.when(\"CSMPlugin\").execute(function(a){a.buildAMZNPerformance&&a.buildAMZNPerformance({successCallback:s,failCallback:w})}),{cnt:r,ajax:y}},\"mobile-timing\")(ue_csm,ue_csm.window);\n  \n  (function(d){d._uess=function(){var a=\"\";screen&&screen.width&&screen.height&&(a+=\"&sw=\"+screen.width+\"&sh=\"+screen.height);var b=function(a){var b=document.documentElement[\"client\"+a];return\"CSS1Compat\"===document.compatMode&&b||document.body[\"client\"+a]||b},c=b(\"Width\"),b=b(\"Height\");c&&b&&(a+=\"&vw=\"+c+\"&vh=\"+b);return a}})(ue_csm);\n  \n  (function(a){function d(a){c&&c(\"log\",a)}var b=document.ue_backdetect,c=a.csa&&a.csa(\"Errors\",{producerId:\"csa\",logOptions:{ent:\"all\"}});a.ue_err.buffer&&c&&(a.ue_err.buffer.forEach(d),a.ue_err.buffer.push=d);b&&b.ue_back&&a.ue&&(a.ue.bfini=b.ue_back.value);a.uet&&a.uet(\"be\");a.onLdEnd&&(window.addEventListener?window.addEventListener(\"load\",a.onLdEnd,!1):window.attachEvent&&window.attachEvent(\"onload\",a.onLdEnd));a.ueh&&a.ueh(0,window,\"load\",a.onLd,1);a.ue&&a.ue.tag&&(a.ue_furl?(b=a.ue_furl.replace(/./g,\n  \"-\"),a.ue.tag(b)):a.ue.tag(\"nofls\"))})(ue_csm);\n  \n  (function(g,h){function d(a,d){var b={};if(!e||!f)try{var c=h.sessionStorage;c?a&&(\"undefined\"!==typeof d?c.setItem(a,d):b.val=c.getItem(a)):f=1}catch(g){e=1}e&&(b.e=1);return b}var b=g.ue||{},a=\"\",f,e,c,a=d(\"csmtid\");f?a=\"NA\":a.e?a=\"ET\":(a=a.val,a||(a=b.oid||\"NI\",d(\"csmtid\",a)),c=d(b.oid),c.e||(c.val=c.val||0,d(b.oid,c.val+1)),b.ssw=d);b.tabid=a})(ue_csm,ue_csm.window);\n  \n  (function(a){var e={rc:1,hob:1,hoe:1,ntd:1,rd_:1,_rd:1};\"function\"===typeof window.addEventListener&&window.addEventListener(\"pageshow\",function(b){if(b&&b.persisted&&(b=+new Date,b={clickTime:b-1,pageVisible:b},\"object\"===typeof b&&\"object\"===typeof a.ue.markers&&\"object\"===typeof a.ue&&\"function\"===typeof a.uex)){if(\"function\"===typeof a.uet){for(var c in a.ue.markers)!a.ue.markers.hasOwnProperty(c)||c in e||a.uet(c,void 0,void 0,b.pageVisible);a.uet(\"tc\",void 0,void 0,b.clickTime);a.uet(\"ty\",void 0,\n  void 0,b.clickTime+2)}(c=document.ue_backdetect)&&c.ue_back&&(a.ue.bfini=+c.ue_back.value+1);a.ue.isBFonMshop=!0;a.ue.isBFCache=!0;a.ue.t0=b.clickTime;a.ue.viz=[\"visible:0\"];\"function\"===typeof a.ue.tag&&(a.ue.tag(\"cacheSourceMemory\"),a.ue.tag(\"history-navigation-page-cache\"));c=ue_csm.csa&&ue_csm.csa(\"SPA\");var d=ue_csm.csa&&ue_csm.csa(\"PageTiming\");c&&d&&(c(\"newPage\",{transitionType:\"history-navigation-page-cache\"},{keepPageAttributes:!0}),d(\"mark\",\"transitionStart\",b.clickTime));\"function\"===typeof a.uex&&\n  a.uex(\"ld\",void 0,void 0,a.ue.t.ld);delete a.ue.isBFonMshop;delete a.ue.isBFCache}})})(ue_csm);\n  \n  ue_csm.ue.exec(function(e,f){var a=e.ue||{},b=a._wlo,d;if(a.ssw){d=a.ssw(\"CSM_previousURL\").val;var c=f.location,b=b?b:c&&c.href?c.href.split(\"#\")[0]:void 0;c=(b||\"\")===a.ssw(\"CSM_previousURL\").val;!c&&b&&a.ssw(\"CSM_previousURL\",b);d=c?\"reload\":d?\"intrapage-transition\":\"first-view\"}else d=\"unknown\";a._nt=d},\"NavTypeModule\")(ue_csm,window);\n  ue_csm.ue.exec(function(c,a){function g(a){a.run(function(e){d.tag(\"csm-feature-\"+a.name+\":\"+e);d.isl&&c.uex(\"at\")})}if(a.addEventListener)for(var d=c.ue||{},f=[{name:\"touch-enabled\",run:function(b){var e=function(){a.removeEventListener(\"touchstart\",c,!0);a.removeEventListener(\"mousemove\",d,!0)},c=function(){b(\"true\");e()},d=function(){b(\"false\");e()};a.addEventListener(\"touchstart\",c,!0);a.addEventListener(\"mousemove\",d,!0)}}],b=0;b<f.length;b++)g(f[b])},\"csm-features\")(ue_csm,window);\n  \n  \n  (function(a,e){function d(a){b&&b(\"recordCounter\",a.c,a.v)}var c=e.images,b=a.csa&&a.csa(\"Metrics\",{producerId:\"csa\"});c&&c.length&&a.ue.count(\"totalImages\",c.length);a.ue.cv.buffer&&b&&(a.ue.cv.buffer.forEach(d),a.ue.cv.buffer.push=d)})(ue_csm,document);\n  (function(b){function c(){var d=[];a.log&&a.log.isStub&&a.log.replay(function(a){e(d,a)});a.clog&&a.clog.isStub&&a.clog.replay(function(a){e(d,a)});d.length&&(a._flhs+=1,n(d),p(d))}function g(){a.log&&a.log.isStub&&(a.onflush&&a.onflush.replay&&a.onflush.replay(function(a){a[0]()}),a.onunload&&a.onunload.replay&&a.onunload.replay(function(a){a[0]()}),c())}function e(d,b){var c=b[1],f=b[0],e={};a._lpn[c]=(a._lpn[c]||0)+1;e[c]=f;d.push(e)}function n(b){q&&(a._lpn.csm=(a._lpn.csm||0)+1,b.push({csm:{k:\"chk\",\n  f:a._flhs,l:a._lpn,s:\"inln\"}}))}function p(a){if(h)a=k(a),b.navigator.sendBeacon(l,a);else{a=k(a);var c=new b[f];c.open(\"POST\",l,!0);c.setRequestHeader&&c.setRequestHeader(\"Content-type\",\"text/plain\");c.send(a)}}function k(a){return JSON.stringify({rid:b.ue_id,sid:b.ue_sid,mid:b.ue_mid,mkt:b.ue_mkt,sn:b.ue_sn,reqs:a})}var f=\"XMLHttpRequest\",q=1===b.ue_ddq,a=b.ue,r=b[f]&&\"withCredentials\"in new b[f],h=b.navigator&&b.navigator.sendBeacon,l=\"//\"+b.ue_furl+\"/1/batch/1/OE/\",m=b.ue_fci_ft||5E3;a&&(r||h)&&\n  (a._flhs=a._flhs||0,a._lpn=a._lpn||{},a.attach&&(a.attach(\"beforeunload\",a.exec(g,\"fcli-bfu\")),a.attach(\"pagehide\",a.exec(g,\"fcli-ph\"))),m&&b.setTimeout(a.exec(c,\"fcli-t\"),m),a._ffci=a.exec(c))})(window);\n  \n  \n  (function(k,c){function l(a,b){return a.filter(function(a){return a.initiatorType==b})}function f(a,c){if(b.t[a]){var g=b.t[a]-b._t0,e=c.filter(function(a){return 0!==a.responseEnd&&m(a)<g}),f=l(e,\"script\"),h=l(e,\"link\"),k=l(e,\"img\"),n=e.map(function(a){return a.name.split(\"/\")[2]}).filter(function(a,b,c){return a&&c.lastIndexOf(a)==b}),q=e.filter(function(a){return a.duration<p}),s=g-Math.max.apply(null,e.map(m))<r|0;\"af\"==a&&(b._afjs=f.length);return a+\":\"+[e[d],f[d],h[d],k[d],n[d],q[d],s].join(\"-\")}}\n  function m(a){return a.responseEnd-(b._t0-c.timing.navigationStart)}function n(){var a=c[h](\"resource\"),d=f(\"cf\",a),g=f(\"af\",a),a=f(\"ld\",a);delete b._rt;b._ld=b.t.ld-b._t0;b._art&&b._art();return[d,g,a].join(\"_\")}var p=20,r=50,d=\"length\",b=k.ue,h=\"getEntriesByType\";b._rre=m;b._rt=c&&c.timing&&c[h]&&n})(ue_csm,window.performance);\n  \n  \n  \n  \n  (function(c,d){function h(a,b){for(var c=[],d=0;d<a.length;d++){var e=a[d],f=b.encode(e);if(e[k]){var g=b.metaSep,e=e[k],l=b.metaPairSep,h=[],m=void 0;for(m in e)e.hasOwnProperty(m)&&h.push(m+\"=\"+e[m]);e=h.join(l);f+=g+e}c.push(f)}return c.join(b.resourceSep)}function s(a){var b=a[k]=a[k]||{};b[t]||(b[t]=c.ue_mid);b[u]||(b[u]=c.ue_sid);b[f]||(b[f]=c.ue_id);b.csm=1;a=\"//\"+c.ue_furl+\"/1/\"+a[v]+\"/1/OP/\"+a[w]+\"/\"+a[x]+\"/\"+h([a],y);if(n)try{n.call(d[p],a)}catch(g){c.ue.sbf=1,(new Image).src=a}else(new Image).src=\n  a}function q(){g&&g.isStub&&g.replay(function(a,b,c){a=a[0];b=a[k]=a[k]||{};b[f]=b[f]||c;s(a)});l.impression=s;g=null}if(!(1<c.ueinit)){var k=\"metadata\",x=\"impressionType\",v=\"foresterChannel\",w=\"programGroup\",t=\"marketplaceId\",u=\"session\",f=\"requestId\",p=\"navigator\",l=c.ue||{},n=d[p]&&d[p].sendBeacon,r=function(a,b,c,d){return{encode:d,resourceSep:a,metaSep:b,metaPairSep:c}},y=r(\"\",\"?\",\"&\",function(a){return h(a.impressionData,z)}),z=r(\"/\",\":\",\",\",function(a){return a.featureName+\":\"+h(a.resources,\n  A)}),A=r(\",\",\"@\",\"|\",function(a){return a.id}),g=l.impression;n?q():(l.attach(\"load\",q),l.attach(\"beforeunload\",q));try{d.P&&d.P.register&&d.P.register(\"impression-client\",function(){})}catch(B){c.ueLogError(B,{logLevel:\"WARN\"})}}})(ue_csm,window);\n  \n\n  \n  var ue_spty = \"ContraCogsLibertyApp_MonsV2\";\n  \n  \n  \n  var ue_adb = 4;\n  var ue_adb_rtla = 1;\n  ue_csm.ue.exec(function(y,a){function t(){if(d&&f){var a;a:{try{a=d.getItem(g);break a}catch(c){}a=void 0}if(a)return b=a,!0}return!1}function u(){if(a.fetch)fetch(m).then(function(a){if(!a.ok)throw Error(a.statusText);return a.text?a.text():null}).then(function(b){b?(-1<b.indexOf(\"window.ue_adb_chk = 1\")&&(a.ue_adb_chk=1),n()):h()})[\"catch\"](h);else e.uels(m,{onerror:h,onload:n})}function h(){b=k;l();if(f)try{d.setItem(g,b)}catch(a){}}function n(){b=1===a.ue_adb_chk?p:k;l();if(f)try{d.setItem(g,\n  b)}catch(c){}}function q(){a.ue_adb_rtla&&c&&0<c.ec&&!1===r&&(c.elh=null,ueLogError({m:\"Hit Info\",fromOnError:1},{logLevel:\"INFO\",adb:b}),r=!0)}function l(){e.tag(b);e.isl&&a.uex&&uex(\"at\",b);s&&s.updateCsmHit(\"adb\",b);c&&0<c.ec?q():a.ue_adb_rtla&&c&&(c.elh=q)}function v(){return b}if(a.ue_adb){a.ue_fadb=a.ue_fadb||10;var e=a.ue,k=\"adblk_yes\",p=\"adblk_no\",m=\"https://m.media-amazon.com/images/G/01/csm/showads.v2.js?wppaszoneid=-ad-sidebar.\",b=\"adblk_unk\",d;a:{try{d=a.localStorage;break a}catch(z){}d=\n  void 0}var g=\"csm:adb\",c=a.ue_err,s=e.cookie,f=void 0!==a.localStorage,w=Math.random()>1-1/a.ue_fadb,r=!1,x=t();w||!x?u():l();a.ue_isAdb=v;a.ue_isAdb.unk=\"adblk_unk\";a.ue_isAdb.no=p;a.ue_isAdb.yes=k}},\"adb\")(document,window);\n  \n  \n  \n  \n  (function(c,l,m){function h(a){if(a)try{if(a.id)return\"//*[@id='\"+a.id+\"']\";var b,d=1,e;for(e=a.previousSibling;e;e=e.previousSibling)e.nodeName===a.nodeName&&(d+=1);b=d;var c=a.nodeName;1!==b&&(c+=\"[\"+b+\"]\");a.parentNode&&(c=h(a.parentNode)+\"/\"+c);return c}catch(f){return\"DETACHED\"}}function f(a){if(a&&a.getAttribute)return a.getAttribute(k)?a.getAttribute(k):f(a.parentElement)}var k=\"data-cel-widget\",g=!1,d=[];(c.ue||{}).isBF=function(){try{var a=JSON.parse(localStorage[\"csm-bf\"]||\"[]\"),b=0<=a.indexOf(c.ue_id);\n  a.unshift(c.ue_id);a=a.slice(0,20);localStorage[\"csm-bf\"]=JSON.stringify(a);return b}catch(d){return!1}}();c.ue_utils={getXPath:h,getFirstAscendingWidget:function(a,b){c.ue_cel&&c.ue_fem?!0===g?b(f(a)):d.push({element:a,callback:b}):b()},notifyWidgetsLabeled:function(){if(!1===g){g=!0;for(var a=f,b=0;b<d.length;b++)if(d[b].hasOwnProperty(\"callback\")&&d[b].hasOwnProperty(\"element\")){var c=d[b].callback,e=d[b].element;\"function\"===typeof c&&\"function\"===typeof a&&c(a(e))}d=null}},extractStringValue:function(a){if(\"string\"===\n  typeof a)return a}}})(ue_csm,window,document);\n  \n  \n  \n  \n  \n  ue_csm.ue.exec(function(b,c){var e=function(){},f=function(){return{send:function(b,d){if(d&&b){var a;if(c.XDomainRequest)a=new XDomainRequest,a.onerror=e,a.ontimeout=e,a.onprogress=e,a.onload=e,a.timeout=0;else if(c.XMLHttpRequest){if(a=new XMLHttpRequest,!(\"withCredentials\"in a))throw\"\";}else a=void 0;if(!a)throw\"\";a.open(\"POST\",b,!0);a.setRequestHeader&&a.setRequestHeader(\"Content-type\",\"text/plain\");a.send(d)}},isSupported:!0}}(),g=function(){return{send:function(c,d){if(c&&d)if(navigator.sendBeacon(c,\n  d))b.ue_sbuimp&&b.ue&&b.ue.ssw&&b.ue.ssw(\"eelsts\",\"scs\");else throw\"\";},isSupported:!!navigator.sendBeacon&&!(c.cordova&&c.cordova.platformId&&\"ios\"==c.cordova.platformId)}}();b.ue._ajx=f;b.ue._sBcn=g},\"Transportation-clients\")(ue_csm,window);\n  ue_csm.ue.exec(function(b,k){function B(){for(var a=0;a<arguments.length;a++){var c=arguments[a];try{var g;if(c.isSupported){var f=u.buildPayload(l,e);g=c.send(K,f)}else throw dummyException;return g}catch(d){}}a={m:\"All supported clients failed\",attribution:\"CSMSushiClient_TRANSPORTATION_FAIL\",f:\"sushi-client.js\",logLevel:\"ERROR\"};C(a,k.ue_err_chan||\"jserr\");b.ue_err.buffer&&b.ue_err.buffer.push(a)}function m(){if(e.length){for(var a=0;a<n.length;a++)n[a]();B(d._sBcn||{},d._ajx||{});e=[];h={};l=\n  {};v=w=r=x=0}}function L(){var a=new Date,c=function(a){return 10>a?\"0\"+a:a};return Date.prototype.toISOString?a.toISOString():a.getUTCFullYear()+\"-\"+c(a.getUTCMonth()+1)+\"-\"+c(a.getUTCDate())+\"T\"+c(a.getUTCHours())+\":\"+c(a.getUTCMinutes())+\":\"+c(a.getUTCSeconds())+\".\"+String((a.getUTCMilliseconds()/1E3).toFixed(3)).slice(2,5)+\"Z\"}function y(a){try{return JSON.stringify(a)}catch(c){}return null}function D(a,c,g,f){var q=!1;f=f||{};s++;if(s==E){var p={m:\"Max number of Sushi Logs exceeded\",f:\"sushi-client.js\",\n  logLevel:\"ERROR\",attribution:\"CSMSushiClient_MAX_CALLS\"};C(p,k.ue_err_chan||\"jserr\");b.ue_err.buffer&&b.ue_err.buffer.push(p)}if(p=!(s>=E))(p=a&&-1<a.constructor.toString().indexOf(\"Object\")&&c&&-1<c.constructor.toString().indexOf(\"String\")&&g&&-1<g.constructor.toString().indexOf(\"String\"))||M++;p&&(d.count&&d.count(\"Event:\"+g,1),a.producerId=a.producerId||c,a.schemaId=a.schemaId||g,a.timestamp=L(),c=Date.now?Date.now():+new Date,g=Math.random().toString().substring(2,12),a.messageId=b.ue_id+\"-\"+\n  c+\"-\"+g,f&&!f.ssd&&(a.sessionId=a.sessionId||b.ue_sid,a.requestId=a.requestId||b.ue_id,a.obfuscatedMarketplaceId=a.obfuscatedMarketplaceId||b.ue_mid),(c=y(a))?(c=c.length,(e.length==N||r+c>O)&&m(),r+=c,a={data:u.compressEvent(a)},e.push(a),(f||{}).n?0===F?m():v||(v=k.setTimeout(m,F)):w||(w=k.setTimeout(m,P)),q=!0):q=!1);!q&&b.ue_int&&console.error(\"Invalid JS Nexus API call\");return q}function G(){if(!H){for(var a=0;a<z.length;a++)z[a]();for(a=0;a<n.length;a++)n[a]();e.length&&(b.ue_sbuimp&&b.ue&&\n  b.ue.ssw&&(a=y({dct:l,evt:e}),b.ue.ssw(\"eeldata\",a),b.ue.ssw(\"eelsts\",\"unk\")),B(d._sBcn||{}));H=!0}}function I(a){z.push(a)}function J(a){n.push(a)}var E=1E3,N=499,O=524288,t=function(){},d=b.ue||{},C=d.log||t,Q=b.uex||t;(b.uet||t)(\"bb\",\"ue_sushi_v1\",{wb:1});var K=b.ue_surl||\"https://unagi-na.amazon.com/1/events/com.amazon.csm.nexusclient.gamma\",R=[\"messageId\",\"timestamp\"],A=\"#\",e=[],h={},l={},r=0,x=0,M=0,s=0,z=[],n=[],H=!1,v,w,F=void 0===b.ue_hpsi?1E3:b.ue_hpsi,P=void 0===b.ue_lpsi?1E4:b.ue_lpsi,\n  u=function(){function a(a){h[a]=A+x++;l[h[a]]=a;return h[a]}function c(b){if(!(b instanceof Function)){if(b instanceof Array){for(var f=[],d=b.length,e=0;e<d;e++)f[e]=c(b[e]);return f}if(b instanceof Object){f={};for(d in b)b.hasOwnProperty(d)&&(f[h[d]?h[d]:a(d)]=-1===R.indexOf(d)?c(b[d]):b[d]);return f}return\"string\"===typeof b&&(b.length>(A+x).length||b.charAt(0)===A)?h[b]?h[b]:a(b):b}}return{compressEvent:c,buildPayload:function(){return y({cs:{dct:l},events:e})}}}();(function(){if(d.event&&d.event.isStub){if(b.ue_sbuimp&&\n  b.ue&&b.ue.ssw){var a=b.ue.ssw(\"eelsts\").val;if(a&&\"unk\"===a&&(a=b.ue.ssw(\"eeldata\").val)){var c;a:{try{c=JSON.parse(a);break a}catch(g){}c=null}c&&c.evt instanceof Array&&c.dct instanceof Object&&(e=c.evt,l=c.dct,e&&l&&(m(),b.ue.ssw(\"eeldata\",\"{}\"),b.ue.ssw(\"eelsts\",\"scs\")))}}d.event.replay(function(a){a[3]=a[3]||{};a[3].n=1;D.apply(this,a)});d.onSushiUnload.replay(function(a){I(a[0])});d.onSushiFlush.replay(function(a){J(a[0])})}})();d.attach(\"beforeunload\",G);d.attach(\"pagehide\",G);d._cmps=u;d.event=\n  D;d.event.reset=function(){s=0};d.onSushiUnload=I;d.onSushiFlush=J;try{k.P&&k.P.register&&k.P.register(\"sushi-client\",t)}catch(S){b.ueLogError(S,{logLevel:\"WARN\"})}Q(\"ld\",\"ue_sushi_v1\",{wb:1})},\"Nxs-JS-Client\")(ue_csm,window);\n  \n  \n  ue_csm.ue_unrt = 1500;\n  (function(d,b,t){function u(a,g){var c=a.srcElement||a.target||{},b={k:v,t:g.t,dt:g.dt,x:a.pageX,y:a.pageY,p:e.getXPath(c),n:c.nodeName};a.button&&(b.b=a.button);c.type&&(b.ty=c.type);c.href&&(b.r=e.extractStringValue(c.href));c.id&&(b.i=c.id);c.className&&c.className.split&&(b.c=c.className.split(/s+/));h+=1;e.getFirstAscendingWidget(c,function(a){b.wd=a;d.ue.log(b,r)})}function w(a){if(!x(a.srcElement||a.target)){m+=1;n=!0;var g=f=d.ue.d(),c;p&&\"function\"===typeof p.now&&a.timeStamp&&(c=p.now()-\n  a.timeStamp,c=parseFloat(c.toFixed(2)));s=b.setTimeout(function(){u(a,{t:g,dt:c})},y)}}function z(a){if(a){var b=a.filter(A);a.length!==b.length&&(q=!0,k=d.ue.d(),n&&q&&(k&&f&&d.ue.log({k:B,t:f,m:Math.abs(k-f)},r),l(),q=!1,k=0))}}function A(a){if(!a)return!1;var b=\"characterData\"===a.type?a.target.parentElement:a.target;if(!b||!b.hasAttributes||!b.attributes)return!1;var c={\"class\":\"gw-clock gw-clock-aria s-item-container-height-auto feed-carousel using-mouse kfs-inner-container\".split(\" \"),id:[\"dealClock\",\n  \"deal_expiry_timer\",\"timer\"],role:[\"timer\"]},d=!1;Object.keys(c).forEach(function(a){var e=b.attributes[a]?b.attributes[a].value:\"\";(c[a]||\"\").forEach(function(a){-1!==e.indexOf(a)&&(d=!0)})});return d}function x(a){if(!a)return!1;var b=(e.extractStringValue(a.nodeName)||\"\").toLowerCase(),c=(e.extractStringValue(a.type)||\"\").toLowerCase(),d=(e.extractStringValue(a.href)||\"\").toLowerCase();a=(e.extractStringValue(a.id)||\"\").toLowerCase();var f=\"checkbox color date datetime-local email file month number password radio range reset search tel text time url week\".split(\" \");\n  if(-1!==[\"select\",\"textarea\",\"html\"].indexOf(b)||\"input\"===b&&-1!==f.indexOf(c)||\"a\"===b&&-1!==d.indexOf(\"http\")||-1!==[\"sitbreaderrightpageturner\",\"sitbreaderleftpageturner\",\"sitbreaderpagecontainer\"].indexOf(a))return!0}function l(){n=!1;f=0;b.clearTimeout(s)}function C(){b.ue.onunload(function(){ue.count(\"armored-cxguardrails.unresponsive-clicks.violations\",h);ue.count(\"armored-cxguardrails.unresponsive-clicks.violationRate\",h/m*100||0)})}if(b.MutationObserver&&b.addEventListener&&Object.keys&&\n  d&&d.ue&&d.ue.log&&d.ue_unrt&&d.ue_utils){var y=d.ue_unrt,r=\"cel\",v=\"unr_mcm\",B=\"res_mcm\",p=b.performance,e=d.ue_utils,n=!1,f=0,s=0,q=!1,k=0,h=0,m=0;b.addEventListener&&(b.addEventListener(\"mousedown\",w,!0),b.addEventListener(\"beforeunload\",l,!0),b.addEventListener(\"visibilitychange\",l,!0),b.addEventListener(\"pagehide\",l,!0));b.ue&&b.ue.event&&b.ue.onSushiUnload&&b.ue.onunload&&C();(new MutationObserver(z)).observe(t,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}})(ue_csm,window,document);\n  \n  \n  ue_csm.ue.exec(function(g,e){if(e.ue_err){var f=\"\";e.ue_err.errorHandlers||(e.ue_err.errorHandlers=[]);e.ue_err.errorHandlers.push({name:\"fctx\",handler:function(a){if(!a.logLevel||\"FATAL\"===a.logLevel)if(f=g.getElementsByTagName(\"html\")[0].innerHTML){var b=f.indexOf(\"var ue_t0=ue_t0||+new Date();\");if(-1!==b){var b=f.substr(0,b).split(String.fromCharCode(10)),d=Math.max(b.length-10-1,0),b=b.slice(d,b.length-1);a.fcsmln=d+b.length+1;a.cinfo=a.cinfo||{};for(var c=0;c<b.length;c++)a.cinfo[d+c+1+\"\"]=\n  b[c]}b=f.split(String.fromCharCode(10));a.cinfo=a.cinfo||{};if(!(a.f||void 0===a.l||a.l in a.cinfo))for(c=+a.l-1,d=Math.max(c-5,0),c=Math.min(c+5,b.length-1);d<=c;d++)a.cinfo[d+1+\"\"]=b[d]}}})}},\"fatals-context\")(document,window);\n  \n  \n  (function(m,b){function c(k){function f(a){a&&\"string\"===typeof a&&(a=(a=a.match(/^(?:https?:)?//(.*?)(/|$)/i))&&1<a.length?a[1]:null,a&&a&&(\"number\"===typeof e[a]?e[a]++:e[a]=1))}function d(a){var e=10,d=+new Date;a&&a.timeRemaining?e=a.timeRemaining():a={timeRemaining:function(){return Math.max(0,e-(+new Date-d))}};for(var c=b.performance.getEntries(),k=e;g<c.length&&k>n;)c[g].name&&f(c[g].name),g++,k=a.timeRemaining();g>=c.length?h(!0):l()}function h(a){if(!a){a=m.scripts;var c;if(a)for(var d=\n  0;d<a.length;d++)(c=a[d].getAttribute(\"src\"))&&\"undefined\"!==c&&f(c)}0<Object.keys(e).length&&(p&&ue_csm.ue&&ue_csm.ue.event&&(a={domains:e,pageType:b.ue_pty||null,subPageType:b.ue_spty||null,pageTypeId:b.ue_pti||null},ue_csm.ue_sjslob&&(a.lob=ue_csm.ue_lob||\"0\"),ue_csm.ue.event(a,\"csm\",\"csm.CrossOriginDomains.2\")),b.ue_ext=e)}function l(){!0===k?d():b.requestIdleCallback?b.requestIdleCallback(d):b.requestAnimationFrame?b.requestAnimationFrame(d):b.setTimeout(d,100)}function c(){if(b.performance&&\n  b.performance.getEntries){var a=b.performance.getEntries();!a||0>=a.length?h(!1):l()}else h(!1)}var e=b.ue_ext||{};b.ue_ext||c();return e}function q(){setTimeout(c,r)}var s=b.ue_dserr||!1,p=!0,n=1,r=2E3,g=0;b.ue_err&&s&&(b.ue_err.errorHandlers||(b.ue_err.errorHandlers=[]),b.ue_err.errorHandlers.push({name:\"ext\",handler:function(b){if(!b.logLevel||\"FATAL\"===b.logLevel){var f=c(!0),d=[],h;for(h in f){var f=h,g=f.match(/amazon(.com?)?.w{2,3}$/i);g&&1<g.length||-1!==f.indexOf(\"amazon-adsystem.com\")||\n  -1!==f.indexOf(\"amazonpay.com\")||-1!==f.indexOf(\"cloudfront-labs.amazonaws.com\")||d.push(h)}b.ext=d}}}));b.ue&&b.ue.isl?c():b.ue&&ue.attach&&ue.attach(\"load\",q)})(document,window);\n  \n  \n  \n  \n  \n  var ue_wtc_c = 3;\n  ue_csm.ue.exec(function(b,e){function l(){for(var a=0;a<f.length;a++)a:for(var d=s.replace(A,f[a])+g[f[a]]+t,c=arguments,b=0;b<c.length;b++)try{c[b].send(d);break a}catch(e){}g={};f=[];n=0;k=p}function u(){B?l(q):l(C,q)}function v(a,m,c){r++;if(r>w)d.count&&1==r-w&&(d.count(\"WeblabTriggerThresholdReached\",1),b.ue_int&&console.error(\"Number of max call reached. Data will no longer be send\"));else{var h=c||{};h&&-1<h.constructor.toString().indexOf(D)&&a&&-1<a.constructor.toString().indexOf(x)&&m&&-1<\n  m.constructor.toString().indexOf(x)?(h=b.ue_id,c&&c.rid&&(h=c.rid),c=h,a=encodeURIComponent(\",wl=\"+a+\"/\"+m),2E3>a.length+p?(2E3<k+a.length&&u(),void 0===g[c]&&(g[c]=\"\",f.push(c)),g[c]+=a,k+=a.length,n||(n=e.setTimeout(u,E))):b.ue_int&&console.error(\"Invalid API call. The input provided is over 2000 chars.\")):d.count&&(d.count(\"WeblabTriggerImproperAPICall\",1),b.ue_int&&console.error(\"Invalid API call. The input provided does not match the API protocol i.e ue.trigger(String, String, Object).\"))}}function F(){d.trigger&&\n  d.trigger.isStub&&d.trigger.replay(function(a){v.apply(this,a)})}function y(){z||(f.length&&l(q),z=!0)}var t=\":1234\",s=\"//\"+b.ue_furl+\"/1/remote-weblab-triggers/1/OE/\"+b.ue_mid+\":\"+b.ue_sid+\":PLCHLDR_RID$s:wl-client-id%3DCSMTriger\",A=\"PLCHLDR_RID\",E=b.wtt||1E4,p=s.length+t.length,w=b.mwtc||2E3,G=1===e.ue_wtc_c,B=3===e.ue_wtc_c,H=e.XMLHttpRequest&&\"withCredentials\"in new e.XMLHttpRequest,x=\"String\",D=\"Object\",d=b.ue,g={},f=[],k=p,n,z=!1,r=0,C=function(){return{send:function(a){if(H){var b=new e.XMLHttpRequest;\n  b.open(\"GET\",a,!0);G&&(b.withCredentials=!0);b.send()}else throw\"\";}}}(),q=function(){return{send:function(a){(new Image).src=a}}}();e.encodeURIComponent&&(d.attach&&(d.attach(\"beforeunload\",y),d.attach(\"pagehide\",y)),F(),d.trigger=v)},\"client-wbl-trg\")(ue_csm,window);\n  \n  \n  (function(k,d,h){function f(a,c,b){a&&a.indexOf&&0===a.indexOf(\"http\")&&0!==a.indexOf(\"https\")&&l(s,c,a,b)}function g(a,c,b){a&&a.indexOf&&(location.href.split(\"#\")[0]!=a&&null!==a&&\"undefined\"!==typeof a||l(t,c,a,b))}function l(a,c,b,e){m[b]||(e=u&&e?n(e):\"N/A\",d.ueLogError&&d.ueLogError({message:a+c+\" : \"+b,logLevel:v,stack:\"N/A\"},{attribution:e}),m[b]=1,p++)}function e(a,c){if(a&&c)for(var b=0;b<a.length;b++)try{c(a[b])}catch(d){}}function q(){return d.performance&&d.performance.getEntriesByType?\n  d.performance.getEntriesByType(\"resource\"):[]}function n(a){if(a.id)return\"//*[@id='\"+a.id+\"']\";var c;c=1;var b;for(b=a.previousSibling;b;b=b.previousSibling)b.nodeName==a.nodeName&&(c+=1);b=a.nodeName;1!=c&&(b+=\"[\"+c+\"]\");a.parentNode&&(b=n(a.parentNode)+\"/\"+b);return b}function w(){var a=h.images;a&&a.length&&e(a,function(a){var b=a.getAttribute(\"src\");f(b,\"img\",a);g(b,\"img\",a)})}function x(){var a=h.scripts;a&&a.length&&e(a,function(a){var b=a.getAttribute(\"src\");f(b,\"script\",a);g(b,\"script\",a)})}\n  function y(){var a=h.styleSheets;a&&a.length&&e(a,function(a){if(a=a.ownerNode){var b=a.getAttribute(\"href\");f(b,\"style\",a);g(b,\"style\",a)}})}function z(){if(A){var a=q();e(a,function(a){f(a.name,a.initiatorType)})}}function B(){e(q(),function(a){g(a.name,a.initiatorType)})}function r(){var a;a=d.location&&d.location.protocol?d.location.protocol:void 0;\"https:\"==a&&(z(),w(),x(),y(),B(),p<C&&setTimeout(r,D))}var s=\"[CSM] Insecure content detected \",t=\"[CSM] Ajax request to same page detected \",v=\"WARN\",\n  m={},p=0,D=k.ue_nsip||1E3,C=5,A=1==k.ue_urt,u=!0;ue_csm.ue_disableNonSecure||(d.performance&&d.performance.setResourceTimingBufferSize&&d.performance.setResourceTimingBufferSize(300),r())})(ue_csm,window,document);\n  \n  \n  var ue_aa_a = \"\";\n  if (ue.trigger && (ue_aa_a === \"C\" || ue_aa_a === \"T1\")) {\n      ue.trigger(\"UEDATA_AA_SERVERSIDE_ASSIGNMENT_CLIENTSIDE_TRIGGER_190249\", ue_aa_a);\n  }\n  (function(f,b){function g(){try{b.PerformanceObserver&&\"function\"===typeof b.PerformanceObserver&&(a=new b.PerformanceObserver(function(b){c(b.getEntries())}),a.observe(d))}catch(h){k()}}function m(){for(var h=d.entryTypes,a=0;a<h.length;a++)c(b.performance.getEntriesByType(h[a]))}function c(a){if(a&&Array.isArray(a)){for(var c=0,e=0;e<a.length;e++){var d=l.indexOf(a[e].name);if(-1!==d){var g=Math.round(b.performance.timing.navigationStart+a[e].startTime);f.uet(n[d],void 0,void 0,g);c++}}l.length===\n  c&&k()}}function k(){a&&a.disconnect&&\"function\"===typeof a.disconnect&&a.disconnect()}if(\"function\"===typeof f.uet&&b.performance&&\"object\"===typeof b.performance&&b.performance.getEntriesByType&&\"function\"===typeof b.performance.getEntriesByType&&b.performance.timing&&\"object\"===typeof b.performance.timing&&\"number\"===typeof b.performance.timing.navigationStart){var d={entryTypes:[\"paint\"]},l=[\"first-paint\",\"first-contentful-paint\"],n=[\"fp\",\"fcp\"],a;try{m(),g()}catch(p){f.ueLogError(p,{logLevel:\"ERROR\",\n  attribution:\"performanceMetrics\"})}}})(ue_csm,window);\n  \n  \n  if (window.csa) {\n      csa(\"Events\")(\"setEntity\", {\n          page:{pageType: \"ContraCogsLibertyApp\", subPageType: \"ContraCogsLibertyApp_MonsV2\", pageTypeId: \"\"}\n      });\n  }\n  csa.plugin(function(c){var m=\"transitionStart\",n=\"pageVisible\",e=\"PageTiming\",t=\"visibilitychange\",s=\"$latency.visible\",i=c.global,r=(i.performance||{}).timing,a=[\"navigationStart\",\"unloadEventStart\",\"unloadEventEnd\",\"redirectStart\",\"redirectEnd\",\"fetchStart\",\"domainLookupStart\",\"domainLookupEnd\",\"connectStart\",\"connectEnd\",\"secureConnectionStart\",\"requestStart\",\"responseStart\",\"responseEnd\",\"domLoading\",\"domInteractive\",\"domContentLoadedEventStart\",\"domContentLoadedEventEnd\",\"domComplete\",\"loadEventStart\",\"loadEventEnd\"],u=c.config,o=i.Math,l=o.max,g=o.floor,d=i.document||{},f=(r||{}).navigationStart,v=f,p=0,S=null;if(i.Object.keys&&[].forEach&&!u[\"KillSwitch.\"+e]){if(!r||null===f||f<=0||void 0===f)return c.error(\"Invalid navigation timing data: \"+f);S=new E({schemaId:\"<ns>.PageLatency.6\",producerId:\"csa\"}),\"boolean\"!=typeof d.hidden&&\"string\"!=typeof d.visibilityState||!d.removeEventListener?c.emit(s):b()?(c.emit(s),I(n,f)):c.on(d,t,function e(){b()&&(v=c.time(),d.removeEventListener(t,e),I(m,v),I(n,v),c.emit(s))}),c.once(\"$unload\",h),c.once(\"$load\",h),c.on(\"$pageTransition\",function(){v=c.time()}),c.register(e,{mark:I,instance:function(e){return new E(e)}})}function E(e){var i,r=null,a=e.ent||{page:[\"pageType\",\"subPageType\",\"requestId\"]},o=e.logger||c(\"Events\",{producerId:e.producerId,lob:u.lob||\"0\"});if(!e||!e.producerId||!e.schemaId)return c.error(\"The producer id and schema Id must be defined for PageLatencyInstance.\");function d(){return i||v}function n(){r=c.UUID()}this.mark=function(n,t){if(null!=n)return t=t||c.time(),n===m&&(i=t),c.once(s,function(){o(\"log\",{messageId:r,__merge:function(e){e.markers[n]=function(e,n){return l(0,n-(e||v))}(d(),t),e.markerTimestamps[n]=g(t)},markers:{},markerTimestamps:{},navigationStartTimestamp:d()?new Date(d()).toISOString():null,schemaId:e.schemaId},{ent:a})}),t},n(),c.on(\"$beforePageTransition\",n)}function I(e,n){e===m&&(v=n);var t=S.mark(e,n);c.emit(\"$timing:\"+e,t)}function h(){if(!p){for(var e=0;e<a.length;e++)r[a[e]]&&I(a[e],r[a[e]]);p=1}}function b(){return!d.hidden||\"visible\"===d.visibilityState}});csa.plugin(function(c){var f,u,l=\"length\",a=\"parentElement\",t=\"target\",i=\"getEntriesByName\",e=null,r=\"_csa_flt\",o=\"_csa_llt\",s=\"previousSibling\",d=\"visuallyLoaded\",n=\"client\",g=\"offset\",h=\"scroll\",m=\"Width\",p=\"Height\",v=n+m,y=n+p,E=g+m,S=g+p,x=h+m,O=h+p,b=\"_osrc\",w=\"_elt\",I=\"_eid\",T=10,_=5,L=15,N=100,k=c.global,B=c.timeout,H=k.Math,W=H.max,C=H.floor,F=H.ceil,M=k.document||{},R=M.body||{},Y=M.documentElement||{},P=k.performance||{},X=(P.timing||{}).navigationStart,$=Date.now,D=Object.values||(c.types||{}).ovl,J=c(\"PageTiming\"),V=c(\"SpeedIndexBuffers\"),j=[],q=[],z=[],A=[],G=[],K=[],Q=.1,U=.1,Z=0,ee=0,ne=!0,te=0,ie=0,re=1==c.config[\"SpeedIndex.ForceReplay\"],oe=0,ae=1,fe=0,ce={},ue=[],le=0;function se(){for(var e=$(),n=0;f;){if(0!==f[l]){if(!1!==f.h(f[0])&&f.shift(),n++,!re&&n%T==0&&$()-e>_)break}else f=f.n}Z=0,f&&(Z||(!0===M.hidden?(re=1,se()):c.timeout(se,0)))}function de(e,n,t,i,r){fe=C(e),j=n,q=t,z=i,K=r;var o=M.createTreeWalker(M.body,NodeFilter.SHOW_TEXT,null,null),a={w:k.innerWidth,h:k.innerHeight,x:k.pageXOffset,y:k.pageYOffset};M.body[w]=e,A.push({w:o,vp:a}),G.push({img:M.images,iter:0}),j.h=ge,(j.n=q).h=he,(q.n=z).h=me,(z.n=A).h=pe,(A.n=G).h=ve,(G.n=K).h=ye,f=j,se()}function ge(e){e.m.forEach(function(e){for(var n=e;n&&(e===n||!n[r]||!n[o]);)n[r]||(n[r]=e[r]),n[o]||(n[o]=e[o]),n[w]=n[r]-X,n=n[s]})}function he(e){e.m.forEach(function(e){var n=e[t];b in n||(n[b]=e.oldValue)})}function me(n){n.m.forEach(function(e){e[t][w]=n.t-X})}function pe(e){for(var n,t=e.vp,i=e.w,r=T;(n=i.nextNode())&&0<r;){r-=1;var o=(n[a]||{}).nodeName;\"SCRIPT\"!==o&&\"STYLE\"!==o&&\"NOSCRIPT\"!==o&&\"BODY\"!==o&&0!==(n.nodeValue||\"\").trim()[l]&&be(n[a],Ee(n),t)}return!n}function ve(e){for(var n={w:k.innerWidth,h:k.innerHeight,x:k.pageXOffset,y:k.pageYOffset},t=T;e.iter<e.img[l]&&0<t;){var i,r=e.img[e.iter],o=Oe(r),a=o&&Ee(o)||Ee(r);o?(o[w]=a,i=xe(o.querySelector('[aria-posinset=\"1\"] img')||r)||a,r=o):i=xe(r)||a,ie&&u<i&&(i=a),be(r,i,n),e.iter+=1,t-=1}return e.img[l]<=e.iter}function ye(e){var n=[],i=0,r=0,o=ee,t=k.innerHeight||W(R[O]||0,R[S]||0,Y[y]||0,Y[O]||0,Y[S]||0),a=C(e.y/N),f=F((e.y+t)/N);ue.slice(a,f).forEach(function(e){(e.elems||[]).forEach(function(e){e.lt in n||(n[e.lt]={}),e.id in n[e.lt]||(i+=(n[e.lt][e.id]=e).a)})}),D(n).forEach(function(e){D(e).forEach(function(e){var n=1-r/i,t=W(e.lt,o);le+=n*(t-o),o=t,function(e,n){var t;for(;Q<=1&&Q-.01<=e;)we(d+(t=(100*Q).toFixed(0)),n.lt),\"50\"!==t&&\"90\"!==t||c(\"Content\",{target:n.e})(\"mark\",d+t,X+F(n.lt||0)),Q+=U}((r+=e.a)/i,e)})}),ee=e.t-X,K[l]<=1&&(we(\"speedIndex\",le),we(d+\"0\",fe)),ne&&(ne=!1,we(\"atfSpeedIndex\",le))}function Ee(e){for(var n=e[a],t=L;n&&0<t;){if(n[w]||0===n[w])return W(n[w],fe);n=n.parentElement,t-=1}}function Se(e,n){if(e){if(!e.indexOf(\"data:\"))return Ee(n);var t=P[i](e)||[];if(0<t[l])return W(F(t[0].responseEnd||0),fe)}}function xe(e){return Se(e[b],e)||Se(e.currentSrc,e)||Se(e.src,e)}function Oe(e){for(var n=10,t=e.parentElement;t&&0<n;){if(t.classList&&t.classList.contains(\"a-carousel-viewport\"))return t;t=t.parentElement,n-=1}return null}function be(e,n,t){if((n||0===n)&&!e[I]){var i=e.getBoundingClientRect(),r=i.width*i.height,o=t.w||W(R[x]||0,R[E]||0,Y[v]||0,Y[x]||0,Y[E]||0)||i.right,a=i.width/2,f=ae++;if(0!=r&&!(a<i.right-o||i.right<a)){for(var c={e:e,lt:n,a:r,id:f},u=C((i.top+t.y)/N),l=F((i.top+t.y+i.height)/N),s=u;s<=l;s++)s in ue||(ue[s]={elems:[],lt:0}),ue[s].elems.push(c);e[I]=f}}}function we(e,n){J(\"mark\",e,X+F((ce[e]=n)||0))}function Ie(e){oe||(V(\"getBuffers\",de),oe=1)}X&&D&&P[i]&&(V(\"registerListener\",function(){ie&&(clearTimeout(te),te=B(Ie.bind(e,\"Mut\"),2500))}),c.once(\"$unload\",function(){re=1,Ie()}),c.once(\"$load\",function(){ie=1,u=$()-X,te=B(Ie.bind(e,\"Ld\"),2500)}),c.once(\"$timing:functional\",Ie.bind(e,\"Fn\")),V(\"replayModuleIsLive\"),c.register(\"SpeedIndex\",{getMarkers:function(e){e&&e(JSON.parse(JSON.stringify(ce)))}}))});csa.plugin(function(e){var m=!!e.config[\"LCP.elementDedup\"],t=!1,n=e(\"PageTiming\"),r=e.global.PerformanceObserver,a=e.global.performance;function i(){return a.timing.navigationStart}function o(){t||function(o){var l=new r(function(e){var t=e.getEntries();if(0!==t.length){var n=t[t.length-1];if(m&&\"\"!==n.id&&n.element&&\"IMG\"===n.element.tagName){for(var r={},a=t[0],i=0;i<t.length;i++)t[i].id in r||(\"\"!==t[i].id&&(r[t[i].id]=!0),a.startTime<t[i].startTime&&(a=t[i]));n=a}l.disconnect(),o({startTime:n.startTime,renderTime:n.renderTime,loadTime:n.loadTime})}});try{l.observe({type:\"largest-contentful-paint\",buffered:!0})}catch(e){}}(function(e){e&&(t=!0,n(\"mark\",\"largestContentfulPaint\",Math.floor(e.startTime+i())),e.renderTime&&n(\"mark\",\"largestContentfulPaint.render\",Math.floor(e.renderTime+i())),e.loadTime&&n(\"mark\",\"largestContentfulPaint.load\",Math.floor(e.loadTime+i())))})}r&&a&&a.timing&&(e.once(\"$unload\",o),e.once(\"$load\",o),e.register(\"LargestContentfulPaint\",{}))});csa.plugin(function(r){var e=r(\"Metrics\",{producerId:\"csa\"}),n=r.global.PerformanceObserver;n&&(n=new n(function(r){var t=r.getEntries();if(0===t.length||!t[0].processingStart||!t[0].startTime)return;!function(r){r=r||0,n.disconnect(),0<=r?e(\"recordMetric\",\"firstInputDelay\",r):e(\"recordMetric\",\"firstInputDelay.invalid\",1)}(t[0].processingStart-t[0].startTime)}),function(){try{n.observe({type:\"first-input\",buffered:!0})}catch(r){}}())});csa.plugin(function(d){var e=\"Metrics\",g=d.config,f=0;function r(i){var c,t,e=i.producerId,r=i.logger,o=r||d(\"Events\",{producerId:e,lob:g.lob||\"0\"}),s=(i||{}).dimensions||{},u={},n=-1;if(!e&&!r)return d.error(\"Either a producer id or custom logger must be defined\");function a(){n!==f&&(c=d.UUID(),t=d.UUID(),u={},n=f)}this.recordMetric=function(r,n){var e=i.logOptions||{ent:{page:[\"pageType\",\"subPageType\",\"requestId\"]}};e.debugMetric=i.debugMetric,a(),o(\"log\",{messageId:c,schemaId:i.schemaId||\"<ns>.Metric.4\",metrics:{},dimensions:s,__merge:function(e){e.metrics[r]=n}},e)},this.recordCounter=function(r,e){var n=i.logOptions||{ent:{page:[\"pageType\",\"subPageType\",\"requestId\"]}};if(\"string\"!=typeof r||\"number\"!=typeof e||!isFinite(e))return d.error(\"Invalid type given for counter name or counter value: \"+r+\"/\"+e);a(),r in u||(u[r]={});var c=u[r];\"f\"in c||(c.f=e),c.c=(c.c||0)+1,c.s=(c.s||0)+e,c.l=e,o(\"log\",{messageId:t,schemaId:i.schemaId||\"<ns>.InternalCounters.3\",c:{},__merge:function(e){r in e.c||(e.c[r]={}),c.fs||(c.fs=1,e.c[r].f=c.f),1<c.c&&(e.c[r].s=c.s,e.c[r].l=c.l,e.c[r].c=c.c)}},n)}}g[\"KillSwitch.\"+e]||(new r({producerId:\"csa\"}).recordMetric(\"baselineMetricEvent\",1),d.on(\"$beforePageTransition\",function(){f++}),d.register(e,{instance:function(e){return new r(e||{})}}))});csa.plugin(function(s){var n=s.config,r=(s.global.performance||{}).timing,c=(r||{}).navigationStart||s.time(),g=0;function e(){g+=1}function i(i){i=i||{};var o=s.UUID(),t=g,r=i.producerId,e=i.logger,a=e||s(\"Events\",{producerId:r,lob:n.lob||\"0\"});if(!r&&!e)return s.error(\"Either a producer id or custom logger must be defined\");this.mark=function(e,r){var n=(void 0===r?s.time():r)-c;t!==g&&(t=g,o=s.UUID()),a(\"log\",{messageId:o,schemaId:i.schemaId||\"<ns>.Timer.1\",markers:{},__merge:function(r){r.markers[e]=n}},i.logOptions)}}r&&(e(),s.on(\"$beforePageTransition\",e),s.register(\"Timers\",{instance:function(r){return new i(r||{})}}))});csa.plugin(function(t){var e=\"takeRecords\",i=\"disconnect\",n=\"function\",o=t(\"Metrics\",{producerId:\"csa\"}),c=t(\"PageTiming\"),a=t.global,u=t.timeout,r=t.on,f=a.PerformanceObserver,m=0,l=!1,s=0,d=a.performance,h=a.document,v=null,y=!1,g=t.blank;function p(){l||(l=!0,clearTimeout(v),typeof f[e]===n&&f[e](),typeof f[i]===n&&f[i](),o(\"recordMetric\",\"documentCumulativeLayoutShift\",m),c(\"mark\",\"cumulativeLayoutShiftLastTimestamp\",Math.floor(s+d.timing.navigationStart)))}f&&d&&d.timing&&h&&(f=new f(function(t){v&&clearTimeout(v);t.getEntries().forEach(function(t){t.hadRecentInput||(m+=t.value,s<t.startTime&&(s=t.startTime))}),v=u(p,5e3)}),function(){try{f.observe({type:\"layout-shift\",buffered:!0}),v=u(p,5e3)}catch(t){}}(),g=r(h,\"click\",function(t){y||(y=!0,o(\"recordMetric\",\"documentCumulativeLayoutShiftToFirstInput\",m),g())}),r(h,\"visibilitychange\",function(){\"hidden\"===h.visibilityState&&p()}),t.once(\"$unload\",p))});csa.plugin(function(e){var t,n=e.global,r=n.PerformanceObserver,c=e(\"Metrics\",{producerId:\"csa\"}),o=0,i=0,a=-1,l=n.Math,f=l.max,u=l.ceil;if(r){t=new r(function(e){e.getEntries().forEach(function(e){var t=e.duration;o+=t,i+=t,a=f(t,a)})});try{t.observe({type:\"longtask\",buffered:!0})}catch(e){}t=new r(function(e){0<e.getEntries().length&&(i=0,a=-1)});try{t.observe({type:\"largest-contentful-paint\",buffered:!0})}catch(e){}e.on(\"$unload\",g),e.on(\"$beforePageTransition\",g)}function g(){c(\"recordMetric\",\"totalBlockingTime\",u(i||0)),c(\"recordMetric\",\"totalBlockingTimeInclLCP\",u(o||0)),c(\"recordMetric\",\"maxBlockingTime\",u(a||0)),i=o=0,a=-1}});csa.plugin(function(o){var e=\"CacheDetection\",r=\"csa-ctoken-\",c=o.store,t=o.deleteStored,n=o.config,i=n[e+\".RequestID\"],a=n[e+\".Callback\"],s=o.global,u=s.document||{},d=s.Date,l=o(\"Events\"),f=o(\"Events\",{producerId:\"csa\",lob:n.lob||\"0\"});function p(e){try{var c=u.cookie.match(RegExp(\"(^| )\"+e+\"=([^;]+)\"));return c&&c[2].trim()}catch(e){}}n[\"KillSwitch.\"+e]||(function(){var e=function(){var e=p(\"cdn-rid\");if(e)return{r:e,s:\"cdn\"}}()||function(){if(o.store(r+i))return{r:o.UUID().toUpperCase().replace(/-/g,\"\").slice(0,20),s:\"device\"}}()||{},c=e.r,n=e.s;if(!!c){var t=p(\"session-id\");!function(e,c,n,t){l(\"setEntity\",{page:{pageSource:\"cache\",requestId:e,cacheRequestId:i,cacheSource:t},session:{id:n}})}(c,0,t,n),\"device\"===n&&f(\"log\",{schemaId:\"<ns>.CacheImpression.2\"},{ent:\"all\"}),a&&a(c,t,n)}}(),c(r+i,d.now()+36e5),o.once(\"$load\",function(){var n=d.now();t(function(e,c){return 0==e.indexOf(r)&&parseInt(c)<n})}))});csa.plugin(function(u){var i,t=\"Content\",e=\"MutationObserver\",n=\"addedNodes\",a=\"querySelectorAll\",f=\"matches\",r=\"getAttributeNames\",o=\"getAttribute\",s=\"dataset\",c=\"widget\",l=\"producerId\",d=\"slotId\",h=\"iSlotId\",g={ent:{element:1,page:[\"pageType\",\"subPageType\",\"requestId\"]}},p=5,m=u.config[t+\".BubbleUp.SearchDepth\"]||35,y=u.config[t+\".SearchPage\"]||0,v=\"csaC\",b=v+\"Id\",E=\"logRender\",w={},I=u.config,O=I[t+\".Selectors\"]||[],C=I[t+\".WhitelistedAttributes\"]||{href:1,class:1},N=I[t+\".EnableContentEntities\"],S=I[\"KillSwitch.ContentRendered\"],k=u.global,A=k.document||{},U=A.documentElement,L=k.HTMLElement,R={},_=[],j=function(t,e,n,i){var o=this,r=u(\"Events\",{producerId:t||\"csa\",lob:I.lob||\"0\"});e.type=e.type||c,o.id=e.id,o.l=r,o.e=e,o.el=n,o.rt=i,o.dlo=g,o.op=W(n,\"csaOp\"),o.log=function(t,e){r(\"log\",t,e||g)},o.entities=function(t){t(e)},e.id&&r(\"setEntity\",{element:e})},x=j.prototype;function D(t){var e=(t=t||{}).element,n=t.target;return e?function(t,e){var n;n=t instanceof L?K(t)||Y(e[l],t,z,u.time()):R[t.id]||H(e[l],0,t,u.time());return n}(e,t):n?M(n):u.error(\"No element or target argument provided.\")}function M(t){var e=function(t){var e=null,n=0;for(;t&&n<m;){if(n++,P(t,b)){e=t;break}t=t.parentElement}return e}(t);return e?K(e):new j(\"csa\",{id:null},null,u.time())}function P(t,e){if(t&&t.dataset)return t.dataset[e]}function T(t,e,n){_.push({n:n,e:t,t:e}),B()}function q(){for(var t=u.time(),e=0;0<_.length;){var n=_.shift();if(w[n.n](n.e,n.t),++e%10==0&&u.time()-t>p)break}i=0,_.length&&B()}function B(){i=i||u.raf(q)}function X(t,e,n){return{n:t,e:e,t:n}}function Y(t,e,n,i){var o=u.UUID(),r={id:o},c=M(e);return e[s][b]=o,n(r,e),c&&c.id&&(r.parentId=c.id),H(t,e,r,i)}function $(t){return isNaN(t)?null:Math.round(t)}function H(t,e,n,i){N&&(n.schemaId=\"<ns>.ContentEntity.2\"),n.id=n.id||u.UUID();var o=new j(t,n,e,i);return function(t){return!S&&((t.op||{}).hasOwnProperty(E)||y)}(o)&&function(t,e){var n={},i=u.exec($);t.el&&(n=t.el.getBoundingClientRect()),t.log({schemaId:\"<ns>.ContentRender.3\",timestamp:e,width:i(n.width),height:i(n.height),positionX:i(n.left+k.pageXOffset),positionY:i(n.top+k.pageYOffset)})}(o,i),u.emit(\"$content.register\",o),R[n.id]=o}function K(t){return R[(t[s]||{})[b]]}function W(n,i){var o={};return r in(n=n||{})&&Object.keys(n[s]).forEach(function(t){if(!t.indexOf(i)&&i.length<t.length){var e=function(t){return(t[0]||\"\").toLowerCase()+t.slice(1)}(t.slice(i.length));o[e]=n[s][t]}}),o}function z(t,e){r in e&&(function(t,e){var n=W(t,v);Object.keys(n).forEach(function(t){e[t]=n[t]})}(e,t),d in t&&(t[h]=t[d]),function(e,n){(e[r]()||[]).forEach(function(t){t in C&&(n[t]=e[o](t))})}(e,t))}U&&A[a]&&k[e]&&(O.push({selector:\"*[data-csa-c-type]\",entity:z}),O.push({selector:\".celwidget\",entity:function(t,e){z(t,e),t[d]=t[d]||e[o](\"cel_widget_id\")||e.id,t.legacyId=e[o](\"cel_widget_id\")||e.id,t.type=t.type||c}}),w[1]=function(t,e){t.forEach(function(t){t[n]&&t[n].constructor&&\"NodeList\"===t[n].constructor.name&&Array.prototype.forEach.call(t[n],function(t){_.unshift(X(2,t,e))})})},w[2]=function(r,c){a in r&&f in r&&O.forEach(function(t){for(var e=t.selector,n=r[f](e),i=r[a](e),o=i.length-1;0<=o;o--)_.unshift(X(3,{e:i[o],s:t},c));n&&_.unshift(X(3,{e:r,s:t},c))})},w[3]=function(t,e){var n=t.e;K(n)||Y(\"csa\",n,t.s.entity,e)},w[4]=function(){u.register(t,{instance:D})},new k[e](function(t){T(t,u.time(),1)}).observe(U,{childList:!0,subtree:!0}),T(U,u.time(),2),T(null,u.time(),4),u.on(\"$content.export\",function(e){Object.keys(e).forEach(function(t){x[t]=e[t]})}))});csa.plugin(function(o){var i,t=\"ContentImpressions\",e=\"KillSwitch.\",n=\"IntersectionObserver\",r=\"getAttribute\",s=\"dataset\",c=\"intersectionRatio\",a=\"csaCId\",m=1e3,l=o.global,f=o.config,u=f[e+t],v=f[e+t+\".ContentViews\"],g=((l.performance||{}).timing||{}).navigationStart||o.time(),d={};function h(t){t&&(t.v=1,function(t){t.vt=o.time(),t.el.log({schemaId:\"<ns>.ContentView.4\",timeToViewed:t.vt-t.el.rt,pageFirstPaintToElementViewed:t.vt-g})}(t))}function I(t){t&&!t.it&&(t.i=o.time()-t.is>m,function(t){t.it=o.time(),t.el.log({schemaId:\"<ns>.ContentImpressed.3\",timeToImpressed:t.it-t.el.rt,pageFirstPaintToElementImpressed:t.it-g})}(t))}!u&&l[n]&&(i=new l[n](function(t){var n=o.time();t.forEach(function(t){var e=function(t){if(t&&t[r])return d[t[s][a]]}(t.target);if(e){o.emit(\"$content.intersection\",{meta:e.el,t:n,e:t});var i=t.intersectionRect;t.isIntersecting&&0<i.width&&0<i.height&&(v||e.v||h(e),.5<=t[c]&&!e.is&&(e.is=n,e.timer=o.timeout(function(){I(e)},m))),t[c]<.5&&!e.it&&e.timer&&(l.clearTimeout(e.timer),e.is=0,e.timer=0)}})},{threshold:[0,.5,.99]}),o.on(\"$content.register\",function(t){var e=t.el;e&&(d[t.id]={el:t,v:0,i:0,is:0,vt:0,it:0},i.observe(e))}))});csa.plugin(function(e){e.config[\"KillSwitch.ContentLatency\"]||e.emit(\"$content.export\",{mark:function(t,n){var o=this;o.t||(o.t=e(\"Timers\",{logger:o.l,schemaId:\"<ns>.ContentLatency.4\",logOptions:o.dlo})),o.t(\"mark\",t,n)}})});csa.plugin(function(t){function n(i,e,o){var c={};function r(t,n,e){t in c&&o<=n-c[t].s&&(function(n,e,i){if(!p)return;E(function(t){T(n,t),t.w[n][e]=a((t.w[n][e]||0)+i)})}(t,i,n-c[t].d),c[t].d=n),e||delete c[t]}this.update=function(t,n){n.isIntersecting&&e<=n.intersectionRatio?function(t,n){t in c||(c[t]={s:n,d:n})}(t,u()):r(t,u())},this.stopAll=function(t){var n=u();for(var e in c)r(e,n,t)},this.reset=function(){var t=u();for(var n in c)c[n].s=t,c[n].d=t}}var e=t.config,u=t.time,i=\"ContentInteractionsSummary\",o=e[i+\".FlushInterval\"]||5e3,c=e[i+\".FlushBackoff\"]||1.5,r=t.global,s=t.on,a=Math.floor,f=(r.document||{}).documentElement||{},l=((r.performance||{}).timing||{}).responseStart||t.time(),d=o,m=0,p=!0,v=t.UUID(),g=t(\"Events\",{producerId:\"csa\",lob:e.lob||\"0\"}),w=new n(\"it0\",0,0),I=new n(\"it50\",.5,1e3),h=new n(\"it100\",.99,0),b={},A={};function $(){w.stopAll(!0),I.stopAll(!0),h.stopAll(!0),S()}function C(){w.reset(),I.reset(),h.reset(),S()}function S(){d&&(clearTimeout(m),m=t.timeout($,d),d*=c)}function U(n){E(function(t){T(n,t),t.w[n].mc=(t.w[n].mc||0)+1})}function E(t){g(\"log\",{messageId:v,schemaId:\"<ns>.ContentInteractionsSummary.2\",w:{},__merge:t},{ent:{page:[\"requestId\"]}})}function T(t,n){t in n.w||(n.w[t]={})}e[\"KillSwitch.\"+i]||(s(\"$content.intersection\",function(t){if(t&&t.meta&&t.e){var n=t.meta.id;if(n in b){var e=t.e.boundingClientRect||{};e.width<5||e.height<5||(w.update(n,t.e),I.update(n,t.e),h.update(n,t.e),!t.e.isIntersecting||n in A||(A[n]=1,function(n,e){E(function(t){T(n,t),t.w[n].ttfv=a(e)})}(n,u()-l)))}}}),s(\"$content.register\",function(t){(t.e||{}).slotId&&(b[t.id]={},function(e){E(function(t){var n=e.id;T(n,t),t.w[n].sid=(e.e||{}).slotId,t.w[n].cid=(e.e||{}).contentId})}(t))}),s(\"$beforePageTransition\",function(){$(),C(),v=t.UUID(),S()}),s(\"$beforeunload\",function(){w.stopAll(),I.stopAll(),h.stopAll(),d=null}),s(\"$visible\",function(t){t?C():($(),clearTimeout(m)),p=t},{buffered:1}),s(f,\"click\",function(t){for(var n=t.target,e=25;n&&0<e;){var i=(n.dataset||{}).csaCId;i&&U(i),n=n.parentElement,e-=1}},{capture:!0,passive:!0}),S())});csa.plugin(function(d){var t,o,e=\"normal\",c=\"reload\",i=\"history\",s=\"new-tab\",n=\"ajax\",r=1,a=2,u=\"lastActive\",l=\"lastInteraction\",f=\"used\",p=\"csa-tabbed-browsing\",y=\"visibilityState\",g=\"page\",v=\"experience\",b=\"request\",I=\"initialized\",m={\"back-memory-cache\":1,\"tab-switch\":1,\"history-navigation-page-cache\":1},h=\"TabbedBrowsing\",T=\"<ns>.\"+h+\".4\",S=\"visible\",w=d.global,x=d.config,P=d(\"Events\",{producerId:\"csa\",lob:x.lob||\"0\"}),q=w.location||{},z=w.document,A=w.JSON,C=((w.performance||{}).navigation||{}).type,E=d.store,O=d.on,$=d.storageSupport(),k=!1,R={},j={},B={},J={},K={},M=!1,N=!1,D=!1,F=0,G=x[\"CSA.isRunningInsideMShop\"];function H(e){try{return A.parse(E(p,void 0,{session:e})||\"{}\")||{}}catch(e){d.error('Could not parse storage value for key \"'+p+'\": '+e)}return{}}function L(e,i){E(p,A.stringify(i||{}),{session:e})}function Q(e){var i=j.tid||e.id,t={},n=R[u]||{};for(var r in n)n.hasOwnProperty(r)&&(t[r]=n[r]);!G&&t.tid!==i||(t.tid=i,t.pid=e.id,t.ent=K),J={pid:e.id,tid:i,ent:K,lastInteraction:j[l]||{},initialized:!0},B={lastActive:t,lastInteraction:R[l]||{},time:d.time(),initialized:!0}}function U(e){var i=e===s,t=z.referrer,n=!(t&&t.length)||!~t.indexOf(q.origin||\"\"),r=i&&!G&&n,a={type:e,toTabId:J.tid,toPageId:J.pid,transitTime:d.time()-R.time||null};r||function(e,i,t){var n=e===c,r=i||G&&!(j[I]&&j.ent)?R[u]||{}:j,a=R[l]||{},d=j[l]||{},o=i||G&&!(d.id&&!d[f])?a:d;t.fromTabId=r.tid,t.fromPageId=r.pid;var s=r.ent||{};s.rid&&(t.fromRequestId=s.rid||null),s.ety&&(t.fromExperienceType=s.ety||null),s.esty&&(t.fromExperienceSubType=s.esty||null),n||!o.id||o[f]||(t.interactionId=o.id||null,o.sid&&(t.interactionSlotId=o.sid||null),a.id===o.id&&(a[f]=!0),d.id===o.id&&(d[f]=!0))}(e,i,a),P(\"log\",{navigation:a,schemaId:T},{ent:{page:[\"pageType\",\"subPageType\",\"requestId\"]}})}function V(e){D=function(e){return e&&e in m}(e.transitionType),function(){R=H(!1),j=H(!0);var e=R[l],i=j[l],t=!1,n=!1;e&&i&&e.id===i.id&&e[f]!==i[f]&&(t=!e[f],n=!i[f],i[f]=e[f]=!0,t&&L(!1,R),n&&L(!0,j))}(),Q(e),M=!0,function(e){var i,t;i=X(),t=Z(!0),(i||t)&&Q(e)}(e),F=1}function W(){k&&!D?U(n):(k=!0,function(){if(C===a||D)U(i);else if(C===r)U(j[I]?c:s);else{U(j[I]||G&&R[I]?e:s)}}())}function X(){var e=t,i={};return!!(M&&e&&e.e&&e.w)&&(e.w(\"entities\",function(e){i=e||{}}),j[l]={id:e.e.messageId,sid:i.slotId,used:!(R[l]={id:e.e.messageId,sid:i.slotId,used:!1})},!(t=null))}function Y(e,i,t,n){var r=!1,a=e[u];return N?(!a||a.tid!==J.tid||!a[S]||a.pid!==t||!a.ent&&n||n&&function(e,i){var t=e||{},n=i||{};return t.rid!==n.rid||t.ety!==n.ety||t.esty!==n.esty}(a.ent,n))&&(e[u]={visible:!0,pid:t,tid:i,ent:n},r=!0):!G&&a&&a.tid===J.tid&&a[S]&&(r=!(a[S]=!1)),r}function Z(e){var i=!1;if(N=G&&e||z[y]===S,M){var t=R[u]||{};i=Y(R,j.tid||t.tid||J.tid,j.pid||t.pid||J.pid,j.ent||t.ent||J.ent)}return i}x[\"KillSwitch.\"+h]||$.local&&$.session&&A&&z&&y in z&&(o=function(){try{return w.self!==w.top}catch(e){return!0}}(),O(\"$entities.set\",function(e){if(!o&&e){var i=(e[b]||{}).id||(e[g]||{}).requestId,t=(e[v]||{}).experienceType||(e[g]||{}).pageType,n=(e[v]||{}).experienceSubType||(e[g]||{}).subPageType,r=!K.rid&&i||!K.ety&&t||!K.esty&&n;if(K.rid=K.rid||i,K.ety=K.ety||t,K.esty=K.esty||n,r&&F){var a=R[u]||{};a.tid===j.tid&&(a.ent=K,L(!1,R)),j.ent=K,L(!0,j)}}},{buffered:1}),O(\"$pageChange\",function(e){o||(V(e),W(),L(!1,B),L(!0,J),j=J,R=B)},{buffered:1}),O(\"$content.interaction\",function(e){t=e,X()&&(L(!1,R),L(!0,j))}),O(z,\"visibilitychange\",function(){!o&&Z()&&L(!1,R)},{capture:!1,passive:!0}))});csa.plugin(function(c){var e=c(\"Metrics\",{producerId:\"csa\"});c.on(c.global,\"pageshow\",function(c){c&&c.persisted&&e(\"recordMetric\",\"bfCache\",1)})});csa.plugin(function(o){var r,e=\"ResourceLatency\",t=\"clearResourceTimings\",c=[\"xmlhttprequest\",\"fetch\",\"beacon\"],i={connectEnd:\"ce\",connectStart:\"cs\",decodedBodySize:\"dbs\",domainLookupEnd:\"dle\",domainLookupStart:\"dls\",duration:\"d\",encodedBodySize:\"ebs\",entryType:\"et\",fetchStart:\"fs\",initiatorType:\"it\",name:\"n\",nextHopProtocol:\"nhp\",redirectEnd:\"re\",redirectStart:\"rs\",requestStart:\"rqs\",responseEnd:\"rpe\",responseStart:\"rps\",secureConnectionStart:\"scs\",startTime:\"st\",transferSize:\"ts\",deliveryType:\"dt\",renderBlockingStatus:\"rbs\"},a={serverTiming:\"srv\"},n=\"recordMetric\",s=\"resource\",d=\"observe\",u=o.config[e+\".MaxImageLookups\"]||50,f=o.global,p=f.document,l=f.performance,g=f.PerformanceObserver,y=o.config,m=o.on,v=o(\"Events\",{producerId:\"csa\",lob:y.lob||\"0\"}),S=o(\"Metrics\",{producerId:\"csa\"}),b=0,h=0,T=((l||{}).timing||{}).navigationStart,E={},I=0,L=0;function x(e){e=e.getEntries(),h+=e.length,e.forEach(function(e){var r=e.initiatorType;if(!(250<=b||~c.indexOf(r))){var t=function(e,r){if(u<=L||\"img\"!==r)return;!function(){for(var e=p.images||[],r=I;r<e.length;r++)E[e[r].src]=e[r];I=e.length}();var t=E[e];t&&(L+=1);return t}(e.name,r),n=function(e){var r,t={schemaId:\"<ns>.ResourceLatency.6\",ns:T};for(var n in e)n in i&&(t[i[n]]=(\"number\"==typeof(r=e[n])&&(r=Math.floor(r)),r)),n in a&&(t[a[n]]=JSON.stringify(e[n]));return t}(e);t?o(\"Content\",{target:t})(\"log\",n,{ent:{element:[\"slotId\"]}}):v(\"log\",n,{ent:{page:[\"pageType\",\"requestId\"]}}),b++}})}function k(){S(n,\"TotalResourceLatencyCount\",h),l[t](),h=b=0}y[\"KillSwitch.\"+e]||l&&l[t]&&T&&g&&o.exec(function(){r=new g(x);try{r[d]({type:s,buffered:!0})}catch(e){try{r[d]({entryTypes:[s]})}catch(e){o.warn(\"PerformanceEntry resource is not supported\")}}m(\"$beforePageTransition\",k),m(\"$beforeunload\",k)})()});csa.plugin(function(n){var e,t,i,o,r,a,c,u,f,s,l,d,p,g,m,v,h,b,y=\"hasFocus\",S=\"$app.\",T=\"avail\",$=\"client\",w=\"document\",I=\"inner\",P=\"offset\",D=\"screen\",C=\"scroll\",E=\"Width\",F=\"Height\",O=T+E,q=T+F,x=$+E,z=$+F,H=I+E,K=I+F,M=P+E,W=P+F,X=C+E,Y=C+F,j=\"up\",k=\"down\",A=\"none\",B=20,G=n.config,J=G[\"KillSwitch.PageInteractionsSummary\"],L=n(\"Events\",{producerId:\"csa\",lob:G.lob||\"0\"}),N=1,Q=n.global||{},R=n.time,U=n.on,V=n.once,Z=Q[w]||{},_=Q[D]||{},nn=Q.Math||{},en=nn.abs,tn=nn.max,on=nn.ceil,rn=((Q.performance||{}).timing||{}).responseStart,an=function(){return Z[y]()},cn=1,un=100,fn={},sn=1,ln=0,dn=0,pn=k,gn=A;function mn(){c=t=o=r=e,i=d=0,a=u=f=s=l=0,pn=k,gn=A,dn=ln=0,yn(),bn()}function vn(){rn&&!o&&(c=on((o=p)-rn),sn=1)}function hn(){var n=m-i;(!t||t&&t<=p)&&(n&&(++a,sn=dn=1),i=m,n),function(){if(gn=d<m?k:j,pn!==gn){var n=en(m-d);B<n&&(++l,ln&&!dn&&++a,pn=gn,sn=ln=1,d=m,dn=0)}else dn=0,d=m}(),t=p+un}function bn(){u=on(tn(u,m+b)),g&&(f=on(tn(f,g+h))),sn=1}function yn(){p=R(),g=en(Q.pageXOffset||0),m=tn(Q.pageYOffset||0,0),v=0<g||0<m,h=Q[H]||0,b=Q[K]||0}function Sn(){yn(),vn(),hn(),bn()}function Tn(){if(r){var n=on(R()-r);s+=n,r=e,sn=0<n}}function $n(){r=r||R()}function wn(n,e,t,i){e[n+E]=on(t||0),e[n+F]=on(i||0)}function In(n){var e=n===fn,t=an();if(t||sn){if(!e){if(!N)return;N=0,t&&Tn()}var i=function(){var n={},e=Z.documentElement||{},t=Z.body||{};return wn(\"availableScreen\",n,_[O],_[q]),wn(w,n,tn(t[X]||0,t[M]||0,e[x]||0,e[X]||0,e[M]||0),tn(t[Y]||0,t[W]||0,e[z]||0,e[Y]||0,e[W]||0)),wn(D,n,_.width,_.height),wn(\"viewport\",n,Q[H],Q[K]),n}(),o=function(){var n={scrollCounts:a,reachedDepth:u,horizontalScrollDistance:f,dwellTime:s,vScrollDirChanges:l};return\"number\"==typeof c&&(n.clientTimeToFirstScroll=c),n}();e?sn=0:(mn(),rn=R(),t&&(r=rn)),L(\"log\",{activity:o,dimensions:i,schemaId:\"<ns>.PageInteractionsSummary.3\"},{ent:{page:[\"pageType\",\"subPageType\",\"requestId\"]}})}}function Pn(){Tn(),In(fn)}function Dn(n,e){return function(){cn=e,n()}}function Cn(){an=function(){return cn},cn&&!r&&(r=R())}\"function\"!=typeof Z[y]||J||(mn(),v&&vn(),U(Q,C,Sn,{passive:!0}),U(Q,\"blur\",Pn),U(Q,\"focus\",Dn($n,1)),V(S+\"android\",Cn),V(S+\"ios\",Cn),U(S+\"pause\",Dn(Pn,0)),U(S+\"resume\",Dn($n,1)),U(S+\"resign\",Dn(Pn,0)),U(S+\"active\",Dn($n,1)),an()&&(r=rn||R()),V(\"$beforeunload\",In),U(\"$beforeunload\",In),U(\"$document.hidden\",Pn),U(\"$beforePageTransition\",In),U(\"$afterPageTransition\",function(){sn=N=1}))});csa.plugin(function(e){var o,n,r=\"Navigator\",a=\"<ns>.\"+r+\".5\",i=e.global,c=e.config,d=i.navigator||{},t=d.connection||{},l=i.Math.round,u=e(\"Events\",{producerId:\"csa\",lob:c.lob||\"0\"});function v(){o={network:{downlink:void 0,downlinkMax:void 0,rtt:void 0,type:void 0,effectiveType:void 0,saveData:void 0},language:void 0,doNotTrack:void 0,hardwareConcurrency:void 0,deviceMemory:void 0,cookieEnabled:void 0,webdriver:void 0},w(),o.language=d.language||null,o.doNotTrack=function(){switch(d.doNotTrack){case\"1\":return\"enabled\";case\"0\":return\"disabled\";case\"unspecified\":return d.doNotTrack;default:return null}}(),o.hardwareConcurrency=\"hardwareConcurrency\"in d?l(d.hardwareConcurrency||0):null,o.deviceMemory=\"deviceMemory\"in d?l(d.deviceMemory||0):null,o.cookieEnabled=\"cookieEnabled\"in d?d.cookieEnabled:null,o.webdriver=\"webdriver\"in d?d.webdriver:null}function k(){u(\"log\",{network:(n={},Object.keys(o.network).forEach(function(e){n[e]=o.network[e]+\"\"}),n),language:o.language,doNotTrack:o.doNotTrack,hardwareConcurrency:o.hardwareConcurrency,deviceMemory:o.deviceMemory,cookieEnabled:o.cookieEnabled,webdriver:o.webdriver,schemaId:a},{ent:{page:[\"pageType\",\"subPageType\",\"requestId\"]}})}function w(){!function(n){Object.keys(o.network).forEach(function(e){o.network[e]=n[e]})}({downlink:\"downlink\"in t?l(t.downlink||0):null,downlinkMax:\"downlinkMax\"in t?l(t.downlinkMax||0):null,rtt:\"rtt\"in t?(t.rtt||0).toFixed():null,type:t.type||null,effectiveType:t.effectiveType||null,saveData:\"saveData\"in t?t.saveData:null})}function f(){w(),k()}function y(){v(),k()}c[\"KillSwitch.\"+r]||(v(),k(),e.on(\"$afterPageTransition\",y),e.on(t,\"change\",f))});\n  \n  \n  ue.exec(function(d,c){function g(e,c){e&&ue.tag(e+c);return!!e}function n(){for(var e=RegExp(\"^https://(.*.(images|ssl-images|media)-amazon.com|\"+c.location.hostname+\")/images/\",\"i\"),d={},h=0,k=c.performance.getEntriesByType(\"resource\"),l=!1,b,a,m,f=0;f<k.length;f++)if(a=k[f],0<a.transferSize&&a.transferSize>=a.encodedBodySize&&(b=e.exec(String(a.name)))&&3===b.length){a:{b=a.serverTiming||[];for(a=0;a<b.length;a++)if(\"provider\"===b[a].name){b=b[a].description;break a}b=void 0}b&&(l||(l=g(b,\"_cdn_fr\")),\n  a=d[b]=(d[b]||0)+1,a>h&&(m=b,h=a))}g(m,\"_cdn_mp\")}d.ue&&\"function\"===typeof d.ue.tag&&c.performance&&c.location&&n()},\"cdnTagging\")(ue_csm,window);\n  \n  \n  }\n  \n  /* \u25EC */\n  </script>\n  \n  </div>\n  \n  <noscript>\n      <img height=\"1\" width=\"1\" style='display:none;visibility:hidden;' src='//fls-eu.amazon.de/1/batch/1/OP/A1PA6795UKMFR9:262-7807958-1059108:JKHZS17H9F94VVVE25V6$uedata=s:%2Frd%2Fuedata%3Fnoscript%26id%3DJKHZS17H9F94VVVE25V6:0' alt=\"\"/>\n  </noscript>\n  \n  <script>window.ue && ue.count && ue.count('CSMLibrarySize', 68029)</script></div></body></html>");

/***/ }),

/***/ "8d74":
/***/ (function(module, exports, __webpack_require__) {

var trimmedEndIndex = __webpack_require__("4cef");

/** Used to match leading whitespace. */
var reTrimStart = /^\s+/;

/**
 * The base implementation of `_.trim`.
 *
 * @private
 * @param {string} string The string to trim.
 * @returns {string} Returns the trimmed string.
 */
function baseTrim(string) {
  return string
    ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')
    : string;
}

module.exports = baseTrim;


/***/ }),

/***/ "8db3":
/***/ (function(module, exports, __webpack_require__) {

var baseIndexOf = __webpack_require__("47f5");

/**
 * A specialized version of `_.includes` for arrays without support for
 * specifying an index to search from.
 *
 * @private
 * @param {Array} [array] The array to inspect.
 * @param {*} target The value to search for.
 * @returns {boolean} Returns `true` if `target` is found, else `false`.
 */
function arrayIncludes(array, value) {
  var length = array == null ? 0 : array.length;
  return !!length && baseIndexOf(array, value, 0) > -1;
}

module.exports = arrayIncludes;


/***/ }),

/***/ "8de2":
/***/ (function(module, exports, __webpack_require__) {

var copyObject = __webpack_require__("8eeb"),
    keysIn = __webpack_require__("9934");

/**
 * Converts `value` to a plain object flattening inherited enumerable string
 * keyed properties of `value` to own properties of the plain object.
 *
 * @static
 * @memberOf _
 * @since 3.0.0
 * @category Lang
 * @param {*} value The value to convert.
 * @returns {Object} Returns the converted plain object.
 * @example
 *
 * function Foo() {
 *   this.b = 2;
 * }
 *
 * Foo.prototype.c = 3;
 *
 * _.assign({ 'a': 1 }, new Foo);
 * // => { 'a': 1, 'b': 2 }
 *
 * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));
 * // => { 'a': 1, 'b': 2, 'c': 3 }
 */
function toPlainObject(value) {
  return copyObject(value, keysIn(value));
}

module.exports = toPlainObject;


/***/ }),

/***/ "8df4":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Cancel = __webpack_require__("7a77");

/**
 * A `CancelToken` is an object that can be used to request cancellation of an operation.
 *
 * @class
 * @param {Function} executor The executor function.
 */
function CancelToken(executor) {
  if (typeof executor !== 'function') {
    throw new TypeError('executor must be a function.');
  }

  var resolvePromise;
  this.promise = new Promise(function promiseExecutor(resolve) {
    resolvePromise = resolve;
  });

  var token = this;
  executor(function cancel(message) {
    if (token.reason) {
      // Cancellation has already been requested
      return;
    }

    token.reason = new Cancel(message);
    resolvePromise(token.reason);
  });
}

/**
 * Throws a `Cancel` if cancellation has been requested.
 */
CancelToken.prototype.throwIfRequested = function throwIfRequested() {
  if (this.reason) {
    throw this.reason;
  }
};

/**
 * Returns an object that contains a new `CancelToken` and a function that, when called,
 * cancels the `CancelToken`.
 */
CancelToken.source = function source() {
  var cancel;
  var token = new CancelToken(function executor(c) {
    cancel = c;
  });
  return {
    token: token,
    cancel: cancel
  };
};

module.exports = CancelToken;


/***/ }),

/***/ "8eeb":
/***/ (function(module, exports, __webpack_require__) {

var assignValue = __webpack_require__("32b3"),
    baseAssignValue = __webpack_require__("872a");

/**
 * Copies properties of `source` to `object`.
 *
 * @private
 * @param {Object} source The object to copy properties from.
 * @param {Array} props The property identifiers to copy.
 * @param {Object} [object={}] The object to copy properties to.
 * @param {Function} [customizer] The function to customize copied values.
 * @returns {Object} Returns `object`.
 */
function copyObject(source, props, object, customizer) {
  var isNew = !object;
  object || (object = {});

  var index = -1,
      length = props.length;

  while (++index < length) {
    var key = props[index];

    var newValue = customizer
      ? customizer(object[key], source[key], key, object, source)
      : undefined;

    if (newValue === undefined) {
      newValue = source[key];
    }
    if (isNew) {
      baseAssignValue(object, key, newValue);
    } else {
      assignValue(object, key, newValue);
    }
  }
  return object;
}

module.exports = copyObject;


/***/ }),

/***/ "9133":
/***/ (function(module, exports) {

var getChildren = exports.getChildren = function(elem){
	return elem.children;
};

var getParent = exports.getParent = function(elem){
	return elem.parent;
};

exports.getSiblings = function(elem){
	var parent = getParent(elem);
	return parent ? getChildren(parent) : [elem];
};

exports.getAttributeValue = function(elem, name){
	return elem.attribs && elem.attribs[name];
};

exports.hasAttrib = function(elem, name){
	return !!elem.attribs && hasOwnProperty.call(elem.attribs, name);
};

exports.getName = function(elem){
	return elem.name;
};


/***/ }),

/***/ "9152":
/***/ (function(module, exports) {

/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
exports.read = function (buffer, offset, isLE, mLen, nBytes) {
  var e, m
  var eLen = (nBytes * 8) - mLen - 1
  var eMax = (1 << eLen) - 1
  var eBias = eMax >> 1
  var nBits = -7
  var i = isLE ? (nBytes - 1) : 0
  var d = isLE ? -1 : 1
  var s = buffer[offset + i]

  i += d

  e = s & ((1 << (-nBits)) - 1)
  s >>= (-nBits)
  nBits += eLen
  for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}

  m = e & ((1 << (-nBits)) - 1)
  e >>= (-nBits)
  nBits += mLen
  for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}

  if (e === 0) {
    e = 1 - eBias
  } else if (e === eMax) {
    return m ? NaN : ((s ? -1 : 1) * Infinity)
  } else {
    m = m + Math.pow(2, mLen)
    e = e - eBias
  }
  return (s ? -1 : 1) * m * Math.pow(2, e - mLen)
}

exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
  var e, m, c
  var eLen = (nBytes * 8) - mLen - 1
  var eMax = (1 << eLen) - 1
  var eBias = eMax >> 1
  var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)
  var i = isLE ? 0 : (nBytes - 1)
  var d = isLE ? 1 : -1
  var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0

  value = Math.abs(value)

  if (isNaN(value) || value === Infinity) {
    m = isNaN(value) ? 1 : 0
    e = eMax
  } else {
    e = Math.floor(Math.log(value) / Math.LN2)
    if (value * (c = Math.pow(2, -e)) < 1) {
      e--
      c *= 2
    }
    if (e + eBias >= 1) {
      value += rt / c
    } else {
      value += rt * Math.pow(2, 1 - eBias)
    }
    if (value * c >= 2) {
      e++
      c /= 2
    }

    if (e + eBias >= eMax) {
      m = 0
      e = eMax
    } else if (e + eBias >= 1) {
      m = ((value * c) - 1) * Math.pow(2, mLen)
      e = e + eBias
    } else {
      m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)
      e = 0
    }
  }

  for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}

  e = (e << mLen) | m
  eLen += mLen
  for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}

  buffer[offset + i - d] |= s * 128
}


/***/ }),

/***/ "91e9":
/***/ (function(module, exports) {

/**
 * Creates a unary function that invokes `func` with its argument transformed.
 *
 * @private
 * @param {Function} func The function to wrap.
 * @param {Function} transform The argument transform.
 * @returns {Function} Returns the new function.
 */
function overArg(func, transform) {
  return function(arg) {
    return func(transform(arg));
  };
}

module.exports = overArg;


/***/ }),

/***/ "9282":
/***/ (function(module, exports) {

exports.removeElement = function(elem){
	if(elem.prev) elem.prev.next = elem.next;
	if(elem.next) elem.next.prev = elem.prev;

	if(elem.parent){
		var childs = elem.parent.children;
		childs.splice(childs.lastIndexOf(elem), 1);
	}
};

exports.replaceElement = function(elem, replacement){
	var prev = replacement.prev = elem.prev;
	if(prev){
		prev.next = replacement;
	}

	var next = replacement.next = elem.next;
	if(next){
		next.prev = replacement;
	}

	var parent = replacement.parent = elem.parent;
	if(parent){
		var childs = parent.children;
		childs[childs.lastIndexOf(elem)] = replacement;
	}
};

exports.appendChild = function(elem, child){
	child.parent = elem;

	if(elem.children.push(child) !== 1){
		var sibling = elem.children[elem.children.length - 2];
		sibling.next = child;
		child.prev = sibling;
		child.next = null;
	}
};

exports.append = function(elem, next){
	var parent = elem.parent,
		currNext = elem.next;

	next.next = currNext;
	next.prev = elem;
	elem.next = next;
	next.parent = parent;

	if(currNext){
		currNext.prev = next;
		if(parent){
			var childs = parent.children;
			childs.splice(childs.lastIndexOf(currNext), 0, next);
		}
	} else if(parent){
		parent.children.push(next);
	}
};

exports.prepend = function(elem, prev){
	var parent = elem.parent;
	if(parent){
		var childs = parent.children;
		childs.splice(childs.lastIndexOf(elem), 0, prev);
	}

	if(elem.prev){
		elem.prev.next = prev;
	}
	
	prev.parent = parent;
	prev.prev = elem.prev;
	prev.next = elem;
	elem.prev = prev;
};




/***/ }),

/***/ "9380":
/***/ (function(module, exports, __webpack_require__) {

var arrayFilter = __webpack_require__("2d7c"),
    baseFilter = __webpack_require__("9f74"),
    baseIteratee = __webpack_require__("badf"),
    isArray = __webpack_require__("6747");

/**
 * Iterates over elements of `collection`, returning an array of all elements
 * `predicate` returns truthy for. The predicate is invoked with three
 * arguments: (value, index|key, collection).
 *
 * **Note:** Unlike `_.remove`, this method returns a new array.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Collection
 * @param {Array|Object} collection The collection to iterate over.
 * @param {Function} [predicate=_.identity] The function invoked per iteration.
 * @returns {Array} Returns the new filtered array.
 * @see _.reject
 * @example
 *
 * var users = [
 *   { 'user': 'barney', 'age': 36, 'active': true },
 *   { 'user': 'fred',   'age': 40, 'active': false }
 * ];
 *
 * _.filter(users, function(o) { return !o.active; });
 * // => objects for ['fred']
 *
 * // The `_.matches` iteratee shorthand.
 * _.filter(users, { 'age': 36, 'active': true });
 * // => objects for ['barney']
 *
 * // The `_.matchesProperty` iteratee shorthand.
 * _.filter(users, ['active', false]);
 * // => objects for ['fred']
 *
 * // The `_.property` iteratee shorthand.
 * _.filter(users, 'active');
 * // => objects for ['barney']
 *
 * // Combining several predicates using `_.overEvery` or `_.overSome`.
 * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]]));
 * // => objects for ['fred', 'barney']
 */
function filter(collection, predicate) {
  var func = isArray(collection) ? arrayFilter : baseFilter;
  return func(collection, baseIteratee(predicate, 3));
}

module.exports = filter;


/***/ }),

/***/ "93ed":
/***/ (function(module, exports, __webpack_require__) {

var getMapData = __webpack_require__("4245");

/**
 * Removes `key` and its value from the map.
 *
 * @private
 * @name delete
 * @memberOf MapCache
 * @param {string} key The key of the value to remove.
 * @returns {boolean} Returns `true` if the entry was removed, else `false`.
 */
function mapCacheDelete(key) {
  var result = getMapData(this, key)['delete'](key);
  this.size -= result ? 1 : 0;
  return result;
}

module.exports = mapCacheDelete;


/***/ }),

/***/ "9459":
/***/ (function(module, exports, __webpack_require__) {

// https://github.com/jquery/jquery/blob/2.1.3/src/manipulation/var/rcheckableType.js
// https://github.com/jquery/jquery/blob/2.1.3/src/serialize.js
var submittableSelector = 'input,select,textarea,keygen',
    r20 = /%20/g,
    rCRLF = /\r?\n/g,
    _ = {
      map: __webpack_require__("dd61")
    };

exports.serialize = function() {
  // Convert form elements into name/value objects
  var arr = this.serializeArray();

  // Serialize each element into a key/value string
  var retArr = _.map(arr, function(data) {
    return encodeURIComponent(data.name) + '=' + encodeURIComponent(data.value);
  });

  // Return the resulting serialization
  return retArr.join('&').replace(r20, '+');
};

exports.serializeArray = function() {
  // Resolve all form elements from either forms or collections of form elements
  var Cheerio = this.constructor;
  return this.map(function() {
      var elem = this;
      var $elem = Cheerio(elem);
      if (elem.name === 'form') {
        return $elem.find(submittableSelector).toArray();
      } else {
        return $elem.filter(submittableSelector).toArray();
      }
    }).filter(
        // Verify elements have a name (`attr.name`) and are not disabled (`:disabled`)
        '[name!=""]:not(:disabled)'
        // and cannot be clicked (`[type=submit]`) or are used in `x-www-form-urlencoded` (`[type=file]`)
        + ':not(:submit, :button, :image, :reset, :file)'
        // and are either checked/don't have a checkable state
        + ':matches([checked], :not(:checkbox, :radio))'
    // Convert each of the elements to its value(s)
    ).map(function(i, elem) {
      var $elem = Cheerio(elem);
      var name = $elem.attr('name');
      var value = $elem.val();

      // If there is no value set (e.g. `undefined`, `null`), then default value to empty
      if (value == null) {
        value = '';
      }

      // If we have an array of values (e.g. `<select multiple>`), return an array of key/value pairs
      if (Array.isArray(value)) {
        return _.map(value, function(val) {
          // We trim replace any line endings (e.g. `\r` or `\r\n` with `\r\n`) to guarantee consistency across platforms
          //   These can occur inside of `<textarea>'s`
          return {name: name, value: val.replace( rCRLF, '\r\n' )};
        });
      // Otherwise (e.g. `<input type="text">`, return only one key/value pair
      } else {
        return {name: name, value: value.replace( rCRLF, '\r\n' )};
      }
    // Convert our result to an array
    }).get();
};


/***/ }),

/***/ "950a":
/***/ (function(module, exports, __webpack_require__) {

var isArrayLike = __webpack_require__("30c9");

/**
 * Creates a `baseEach` or `baseEachRight` function.
 *
 * @private
 * @param {Function} eachFunc The function to iterate over a collection.
 * @param {boolean} [fromRight] Specify iterating from right to left.
 * @returns {Function} Returns the new base function.
 */
function createBaseEach(eachFunc, fromRight) {
  return function(collection, iteratee) {
    if (collection == null) {
      return collection;
    }
    if (!isArrayLike(collection)) {
      return eachFunc(collection, iteratee);
    }
    var length = collection.length,
        index = fromRight ? length : -1,
        iterable = Object(collection);

    while ((fromRight ? index-- : ++index < length)) {
      if (iteratee(iterable[index], index, iterable) === false) {
        break;
      }
    }
    return collection;
  };
}

module.exports = createBaseEach;


/***/ }),

/***/ "9520":
/***/ (function(module, exports, __webpack_require__) {

var baseGetTag = __webpack_require__("3729"),
    isObject = __webpack_require__("1a8c");

/** `Object#toString` result references. */
var asyncTag = '[object AsyncFunction]',
    funcTag = '[object Function]',
    genTag = '[object GeneratorFunction]',
    proxyTag = '[object Proxy]';

/**
 * Checks if `value` is classified as a `Function` object.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a function, else `false`.
 * @example
 *
 * _.isFunction(_);
 * // => true
 *
 * _.isFunction(/abc/);
 * // => false
 */
function isFunction(value) {
  if (!isObject(value)) {
    return false;
  }
  // The use of `Object#toString` avoids issues with the `typeof` operator
  // in Safari 9 which returns 'object' for typed arrays and other constructors.
  var tag = baseGetTag(value);
  return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
}

module.exports = isFunction;


/***/ }),

/***/ "959b":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"data\":[{\"taskIdList\":[\"911646131983943168\"],\"task_id\":\"911646131983943168\",\"data\":\"{\\n  \\\"report_custom_date_start\\\" : \\\"2025-11-01\\\",\\n  \\\"report_custom_date_end\\\" : \\\"2025-11-30\\\",\\n  \\\"report_custom_datetime_start\\\" : 1761926400000,\\n  \\\"report_custom_datetime_end\\\" : 1764518399000,\\n  \\\"report_date_month\\\" : \\\"2025-11\\\",\\n  \\\"code\\\" : \\\"2512111837000001\\\",\\n  \\\"data_range_type\\\" : 1,\\n  \\\"platform_code\\\" : \\\"10011\\\"\\n}\",\"jobId\":\"911646131983899648\",\"expiration_time\":\"2025-12-12 18:37:46\",\"gmt_create\":\"1765449466\",\"origin_type\":3,\"platform_code\":\"tiktok\",\"platform_store_id\":\"7496208493855869396\",\"priority\":900,\"repeat\":0,\"status\":1,\"reportMonth\":null,\"run_type\":1,\"store_id\":\"110458597223657472\",\"type_id\":\"30001\",\"store_info\":{\"company_id\":\"90128554873982976\",\"platform_code\":10011,\"store_id\":\"110458597223657472\",\"status\":null,\"name\":\"Tree\",\"area\":\"US\",\"site_name\":\"US\",\"store_type\":\"GLOBAL\",\"platform_store_id\":\"7496208493855869396\"}}],\"msg\":\"操作成功\",\"traceId\":\"6628065051334071bffebb1a0dacdef8.181.17654494663373709\",\"success\":false}");

/***/ }),

/***/ "95a2":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony default export */ __webpack_exports__["default"] = ("<!doctype html>\n<html lang=\"en-GB\" data-19ax5a9jf=\"dingo\" class=\"a-no-js\">\n    <head>\n        <script>\n            var aPageStart = (new Date()).getTime();\n        </script>\n        <meta charset=\"utf-8\"/>\n        <script type='text/javascript'>\n            window.ue_mkt = \"vceu\";\n        </script>\n        <script type='text/javascript'>\n            var ue_t0 = ue_t0 || +new Date();\n        </script>\n        <script type='text/javascript'>\n            window.ue_ihb = (window.ue_ihb || window.ueinit || 0) + 1;\n            if (window.ue_ihb === 1) {\n\n                var ue_csm = window\n                  , ue_hob = +new Date();\n                (function(d) {\n                    var e = d.ue = d.ue || {}\n                      , f = Date.now || function() {\n                        return +new Date\n                    }\n                    ;\n                    e.d = function(b) {\n                        return f() - (b ? 0 : d.ue_t0)\n                    }\n                    ;\n                    e.stub = function(b, a) {\n                        if (!b[a]) {\n                            var c = [];\n                            b[a] = function() {\n                                c.push([c.slice.call(arguments), e.d(), d.ue_id])\n                            }\n                            ;\n                            b[a].replay = function(b) {\n                                for (var a; a = c.shift(); )\n                                    b(a[0], a[1], a[2])\n                            }\n                            ;\n                            b[a].isStub = 1\n                        }\n                    }\n                    ;\n                    e.exec = function(b, a) {\n                        return function() {\n                            try {\n                                return b.apply(this, arguments)\n                            } catch (c) {\n                                ueLogError(c, {\n                                    attribution: a || \"undefined\",\n                                    logLevel: \"WARN\"\n                                })\n                            }\n                        }\n                    }\n                }\n                )(ue_csm);\n\n                var ue_err_chan = 'jserr';\n                (function(d, e) {\n                    function h(f, b) {\n                        if (!(a.ec > a.mxe) && f) {\n                            a.ter.push(f);\n                            b = b || {};\n                            var c = f.logLevel || b.logLevel;\n                            c && c !== k && c !== m && c !== n && c !== p || a.ec++;\n                            c && c != k || a.ecf++;\n                            b.pageURL = \"\" + (e.location ? e.location.href : \"\");\n                            b.logLevel = c;\n                            b.attribution = f.attribution || b.attribution;\n                            a.erl.push({\n                                ex: f,\n                                info: b\n                            })\n                        }\n                    }\n                    function l(a, b, c, e, g) {\n                        d.ueLogError({\n                            m: a,\n                            f: b,\n                            l: c,\n                            c: \"\" + e,\n                            err: g,\n                            fromOnError: 1,\n                            args: arguments\n                        }, g ? {\n                            attribution: g.attribution,\n                            logLevel: g.logLevel\n                        } : void 0);\n                        return !1\n                    }\n                    var k = \"FATAL\"\n                      , m = \"ERROR\"\n                      , n = \"WARN\"\n                      , p = \"DOWNGRADED\"\n                      , a = {\n                        ec: 0,\n                        ecf: 0,\n                        pec: 0,\n                        ts: 0,\n                        erl: [],\n                        ter: [],\n                        buffer: [],\n                        mxe: 50,\n                        startTimer: function() {\n                            a.ts++;\n                            setInterval(function() {\n                                d.ue && a.pec < a.ec && d.uex(\"at\");\n                                a.pec = a.ec\n                            }, 1E4)\n                        }\n                    };\n                    l.skipTrace = 1;\n                    h.skipTrace = 1;\n                    h.isStub = 1;\n                    d.ueLogError = h;\n                    d.ue_err = a;\n                    e.onerror = l\n                }\n                )(ue_csm, window);\n\n                var ue_id = '280AM2XXY2XR6VP4XMPC', ue_url, ue_navtiming = 1, ue_mid = 'A1PA6795UKMFR9', ue_sid = '262-7807958-1059108', ue_sn = 'vendorcentral.amazon.de', ue_furl = 'fls-eu.amazon.de', ue_surl = 'https://unagi-eu.amazon.com/1/events/com.amazon.csm.nexusclient.prod', ue_int = 0, ue_fcsn = 1, ue_urt = 3, ue_rpl_ns = 'cel-rpl', ue_ddq = 1, ue_fpf = '//fls-eu.amazon.de/1/batch/1/OP/A1PA6795UKMFR9:262-7807958-1059108:280AM2XXY2XR6VP4XMPC:vendorcentral.amazon.de$uedata=s:', ue_sbuimp = 1, ue_ibft = 0, ue_sswmts = 0, ue_jsmtf = 0, ue_fnt = 0, ue_lpsi = 6000, ue_no_counters = 0, ue_stop_all_counters = 0, ue_lob = '1', ue_sjslob = 0, ue_dsbl_cel = 1,\n                ue_swi = 1;\n                var ue_viz = function() {\n                    (function(b, f, d) {\n                        function g() {\n                            return (!(p in d) || 0 < d[p]) && (!(q in d) || 0 < d[q])\n                        }\n                        function h(c) {\n                            if (b.ue.viz.length < w && !r) {\n                                var a = c.type;\n                                c = c.originalEvent;\n                                /^focus./.test(a) && c && (c.toElement || c.fromElement || c.relatedTarget) || (a = g() ? f[s] || (\"blur\" == a || \"focusout\" == a ? t : u) : t,\n                                b.ue.viz.push(a + \":\" + (+new Date - b.ue.t0)),\n                                a == u && (b.ue.isl && x(\"at\"),\n                                r = 1))\n                            }\n                        }\n                        for (var r = 0, x = b.uex, a, k, l, s, v = [\"\", \"webkit\", \"o\", \"ms\", \"moz\"], e = 0, m = 1, u = \"visible\", t = \"hidden\", p = \"innerWidth\", q = \"innerHeight\", w = 20, n = 0; n < v.length && !e; n++)\n                            if (a = v[n],\n                            k = (a ? a + \"H\" : \"h\") + \"idden\",\n                            e = \"boolean\" == typeof f[k])\n                                l = a + \"visibilitychange\",\n                                s = (a ? a + \"V\" : \"v\") + \"isibilityState\";\n                        h({});\n                        e && f.addEventListener(l, h, 0);\n                        m = g() ? 1 : 0;\n                        d.addEventListener(\"resize\", function() {\n                            var a = g() ? 1 : 0;\n                            m !== a && (m = a,\n                            h({}))\n                        }, {\n                            passive: !0\n                        });\n                        b.ue && e && (b.ue.pageViz = {\n                            event: l,\n                            propHid: k\n                        })\n                    }\n                    )(ue_csm, ue_csm.document, ue_csm.window)\n                };\n                window.ue_viz = ue_viz;\n\n                (function(d, h, N) {\n                    function H(a) {\n                        return a && a.replace && a.replace(/^s+|s+$/g, \"\")\n                    }\n                    function u(a) {\n                        return \"undefined\" === typeof a\n                    }\n                    function B(a, b) {\n                        for (var c in b)\n                            b[v](c) && (a[c] = b[c])\n                    }\n                    function I(a) {\n                        try {\n                            var b = N.cookie.match(RegExp(\"(^| )\" + a + \"=([^;]+)\"));\n                            if (b)\n                                return b[2].trim()\n                        } catch (c) {}\n                    }\n                    function O(k, b, c) {\n                        var q = (x || {}).type;\n                        if (\"device\" !== c || 2 !== q && 1 !== q)\n                            k && (d.ue_id = a.id = a.rid = k,\n                            w && (w = w.replace(/((.*?:){2})(w+)/, function(a, b) {\n                                return b + k\n                            })),\n                            D && (e(\"id\", D, k),\n                            D = 0)),\n                            b && (w && (w = w.replace(/(.*?:)(w|-)+/, function(a, c) {\n                                return c + b\n                            })),\n                            d.ue_sid = b),\n                            c && a.tag(\"page-source:\" + c),\n                            d.ue_fpf = w\n                    }\n                    function P() {\n                        var a = {};\n                        return function(b) {\n                            b && (a[b] = 1);\n                            b = [];\n                            for (var c in a)\n                                a[v](c) && b.push(c);\n                            return b\n                        }\n                    }\n                    function y(d, b, c, q) {\n                        q = q || +new E;\n                        var g, m;\n                        if (b || u(c)) {\n                            if (d)\n                                for (m in g = b ? e(\"t\", b) || e(\"t\", b, {}) : a.t,\n                                g[d] = q,\n                                c)\n                                    c[v](m) && e(m, b, c[m]);\n                            return q\n                        }\n                    }\n                    function e(d, b, c) {\n                        var e = b && b != a.id ? a.sc[b] : a;\n                        e || (e = a.sc[b] = {});\n                        \"id\" === d && c && (Q = 1);\n                        return e[d] = c || e[d]\n                    }\n                    function R(d, b, c, e, g) {\n                        c = \"on\" + c;\n                        var m = b[c];\n                        \"function\" === typeof m ? d && (a.h[d] = m) : m = function() {}\n                        ;\n                        b[c] = function(a) {\n                            g ? (e(a),\n                            m(a)) : (m(a),\n                            e(a))\n                        }\n                        ;\n                        b[c] && (b[c].isUeh = 1)\n                    }\n                    function S(k, b, c, q) {\n                        function p(b, c) {\n                            var d = [b], f = 0, g = {}, m, h;\n                            c ? (d.push(\"m=1\"),\n                            g[c] = 1) : g = a.sc;\n                            for (h in g)\n                                if (g[v](h)) {\n                                    var q = e(\"wb\", h), p = e(\"t\", h) || {}, n = e(\"t0\", h) || a.t0, l;\n                                    if (c || 2 == q) {\n                                        q = q ? f++ : \"\";\n                                        d.push(\"sc\" + q + \"=\" + h);\n                                        for (l in p)\n                                            u(p[l]) || null === p[l] || d.push(l + q + \"=\" + (p[l] - n));\n                                        d.push(\"t\" + q + \"=\" + p[k]);\n                                        if (e(\"ctb\", h) || e(\"wb\", h))\n                                            m = 1\n                                    }\n                                }\n                            !J && m && d.push(\"ctb=1\");\n                            return d.join(\"&\")\n                        }\n                        function m(b, c, f, e, g) {\n                            if (b) {\n                                var k = d.ue_err;\n                                d.ue_url && !e && !g && b && 0 < b.length && (e = new Image,\n                                a.iel.push(e),\n                                e.src = b,\n                                a.count && a.count(\"postbackImageSize\", b.length));\n                                w ? (g = h.encodeURIComponent) && b && (e = new Image,\n                                b = \"\" + d.ue_fpf + g(b) + \":\" + (+new E - d.ue_t0),\n                                a.iel.push(e),\n                                e.src = b) : a.log && (a.log(b, \"uedata\", {\n                                    n: 1\n                                }),\n                                a.ielf.push(b));\n                                k && !k.ts && k.startTimer();\n                                a.b && (k = a.b,\n                                a.b = \"\",\n                                m(k, c, f, 1))\n                            }\n                        }\n                        function A(b) {\n                            var c = x ? x.type : F\n                              , d = 2 == c || a.isBFonMshop\n                              , c = c && !d\n                              , f = a.bfini;\n                            if (!Q || a.isBFCache)\n                                f && 1 < f && (b += \"&bfform=1\",\n                                c || (a.isBFT = f - 1)),\n                                d && (b += \"&bfnt=1\",\n                                a.isBFT = a.isBFT || 1),\n                                a.ssw && a.isBFT && (a.isBFonMshop && (a.isNRBF = 0),\n                                u(a.isNRBF) && (d = a.ssw(a.oid),\n                                d.e || u(d.val) || (a.isNRBF = 1 < d.val ? 0 : 1)),\n                                u(a.isNRBF) || (b += \"&nrbf=\" + a.isNRBF)),\n                                a.isBFT && !a.isNRBF && (b += \"&bft=\" + a.isBFT);\n                            return b\n                        }\n                        if (!a.paused && (b || u(c))) {\n                            for (var l in c)\n                                c[v](l) && e(l, b, c[l]);\n                            a.isBFonMshop || y(\"pc\", b, c);\n                            l = \"ld\" === k && b && e(\"wb\", b);\n                            var s = e(\"id\", b) || a.id;\n                            l || s === a.oid || (D = b,\n                            ba(s, (e(\"t\", b) || {}).tc || +e(\"t0\", b), +e(\"t0\", b)));\n                            var s = e(\"id\", b) || a.id, t = e(\"id2\", b), f = a.url + \"?\" + k + \"&v=\" + a.v + \"&id=\" + s, J = e(\"ctb\", b) || e(\"wb\", b), z;\n                            J && (f += \"&ctb=\" + J);\n                            t && (f += \"&id2=\" + t);\n                            1 < d.ueinit && (f += \"&ic=\" + d.ueinit);\n                            if (!(\"ld\" != k && \"ul\" != k || b && b != s)) {\n                                if (\"ld\" == k) {\n                                    try {\n                                        h[K] && h[K].isUeh && (h[K] = null)\n                                    } catch (I) {}\n                                    if (h.chrome)\n                                        for (t = 0; t < L.length; t++)\n                                            T(G, L[t]);\n                                    (t = N.ue_backdetect) && t.ue_back && t.ue_back.value++;\n                                    d._uess && (z = d._uess());\n                                    a.isl = 1\n                                }\n                                a._bf && (f += \"&bf=\" + a._bf());\n                                d.ue_navtiming && g && (e(\"ctb\", s, \"1\"),\n                                a.isBFonMshop || y(\"tc\", F, F, M));\n                                !C || a.isBFonMshop || U || (g && B(a.t, {\n                                    na_: g.navigationStart,\n                                    ul_: g.unloadEventStart,\n                                    _ul: g.unloadEventEnd,\n                                    rd_: g.redirectStart,\n                                    _rd: g.redirectEnd,\n                                    fe_: g.fetchStart,\n                                    lk_: g.domainLookupStart,\n                                    _lk: g.domainLookupEnd,\n                                    co_: g.connectStart,\n                                    _co: g.connectEnd,\n                                    sc_: g.secureConnectionStart,\n                                    rq_: g.requestStart,\n                                    rs_: g.responseStart,\n                                    _rs: g.responseEnd,\n                                    dl_: g.domLoading,\n                                    di_: g.domInteractive,\n                                    de_: g.domContentLoadedEventStart,\n                                    _de: g.domContentLoadedEventEnd,\n                                    _dc: g.domComplete,\n                                    ld_: g.loadEventStart,\n                                    _ld: g.loadEventEnd,\n                                    ntd: (\"function\" !== typeof C.now || u(M) ? 0 : new E(M + C.now()) - new E) + a.t0\n                                }),\n                                x && B(a.t, {\n                                    ty: x.type + a.t0,\n                                    rc: x.redirectCount + a.t0\n                                }),\n                                U = 1);\n                                a.isBFonMshop || B(a.t, {\n                                    hob: d.ue_hob,\n                                    hoe: d.ue_hoe\n                                });\n                                a.ifr && (f += \"&ifr=1\")\n                            }\n                            y(k, b, c, q);\n                            var r, n;\n                            l || b && b !== s || ca(b);\n                            (c = d.ue_mbl) && c.cnt && !l && (f += c.cnt());\n                            l ? e(\"wb\", b, 2) : \"ld\" == k && (a.lid = H(s));\n                            for (r in a.sc)\n                                if (1 == e(\"wb\", r))\n                                    break;\n                            if (l) {\n                                if (a.s)\n                                    return;\n                                f = p(f, null)\n                            } else\n                                c = p(f, null),\n                                c != f && (c = A(c),\n                                a.b = c),\n                                z && (f += z),\n                                f = p(f, b || a.id);\n                            f = A(f);\n                            if (a.b || l)\n                                for (r in a.sc)\n                                    2 == e(\"wb\", r) && delete a.sc[r];\n                            z = 0;\n                            a._rt && (f += \"&rt=\" + a._rt());\n                            c = h.csa;\n                            if (!l && c)\n                                for (n in r = e(\"t\", b) || {},\n                                c = c(\"PageTiming\"),\n                                r)\n                                    r[v](n) && c(\"mark\", da[n] || n, r[n]);\n                            l || (a.s = 0,\n                            (n = d.ue_err) && 0 < n.ec && n.pec < n.ec && (n.pec = n.ec,\n                            f += \"&ec=\" + n.ec + \"&ecf=\" + n.ecf),\n                            z = e(\"ctb\", b),\n                            \"ld\" !== k || b || a.markers ? a.markers && a.isl && !l && b && B(a.markers, e(\"t\", b)) : (a.markers = {},\n                            B(a.markers, e(\"t\", b))),\n                            e(\"t\", b, {}));\n                            a.tag && a.tag().length && (f += \"&csmtags=\" + a.tag().join(\"|\"),\n                            a.tag = P());\n                            n = a.viz || [];\n                            (r = n.length) && (f += \"&viz=\" + n.splice(0, r).join(\"|\"));\n                            u(d.ue_pty) || (f += \"&pty=\" + d.ue_pty + \"&spty=\" + d.ue_spty + \"&pti=\" + d.ue_pti);\n                            a.tabid && (f += \"&tid=\" + a.tabid);\n                            a.aftb && (f += \"&aftb=1\");\n                            !a._ui || b && b != s || (f += a._ui());\n                            f += \"&lob=\" + (d.ue_lob || \"0\");\n                            a.a = f;\n                            m(f, k, z, l, b && \"string\" === typeof b && -1 !== b.indexOf(\"csa:\"))\n                        }\n                    }\n                    function ca(a) {\n                        var b = h.ue_csm_markers || {}, c;\n                        for (c in b)\n                            b[v](c) && y(c, a, F, b[c])\n                    }\n                    function A(a, b, c) {\n                        c = c || h;\n                        if (c[V])\n                            c[V](a, b, !1);\n                        else if (c[W])\n                            c[W](\"on\" + a, b)\n                    }\n                    function T(a, b, c) {\n                        c = c || h;\n                        if (c[X])\n                            c[X](a, b, !1);\n                        else if (c[Y])\n                            c[Y](\"on\" + a, b)\n                    }\n                    function Z() {\n                        function a() {\n                            d.onUl()\n                        }\n                        function b(a) {\n                            return function() {\n                                c[a] || (c[a] = 1,\n                                S(a))\n                            }\n                        }\n                        var c = {}, e, g;\n                        d.onLd = b(\"ld\");\n                        d.onLdEnd = b(\"ld\");\n                        d.onUl = b(\"ul\");\n                        e = {\n                            stop: b(\"os\")\n                        };\n                        h.chrome ? (A(G, a),\n                        L.push(a)) : e[G] = d.onUl;\n                        for (g in e)\n                            e[v](g) && R(0, h, g, e[g]);\n                        d.ue_viz && ue_viz();\n                        A(\"load\", d.onLd);\n                        y(\"ue\")\n                    }\n                    function ba(e, b, c) {\n                        var g = d.ue_mbl\n                          , p = h.csa\n                          , m = p && p(\"SPA\")\n                          , p = p && p(\"PageTiming\");\n                        g && g.ajax && g.ajax(b, c);\n                        m && p && (m(\"newPage\", {\n                            requestId: e,\n                            transitionType: \"soft\"\n                        }),\n                        p(\"mark\", \"transitionStart\", b));\n                        a.tag(\"ajax-transition\")\n                    }\n                    d.ueinit = (d.ueinit || 0) + 1;\n                    var a = d.ue = d.ue || {};\n                    a.t0 = h.aPageStart || d.ue_t0;\n                    a.id = d.ue_id;\n                    a.url = d.ue_url;\n                    a.rid = d.ue_id;\n                    a.a = \"\";\n                    a.b = \"\";\n                    a.h = {};\n                    a.s = 1;\n                    a.t = {};\n                    a.sc = {};\n                    a.iel = [];\n                    a.ielf = [];\n                    a.viz = [];\n                    a.v = \"0.310795.0\";\n                    a.paused = !1;\n                    var v = \"hasOwnProperty\", G = \"beforeunload\", K = \"on\" + G, V = \"addEventListener\", X = \"removeEventListener\", W = \"attachEvent\", Y = \"detachEvent\", da = {\n                        cf: \"criticalFeature\",\n                        af: \"aboveTheFold\",\n                        fn: \"functional\",\n                        fp: \"firstPaint\",\n                        fcp: \"firstContentfulPaint\",\n                        bb: \"bodyBegin\",\n                        be: \"bodyEnd\",\n                        ld: \"loaded\"\n                    }, E = h.Date, C = h.performance || h.webkitPerformance, g = (C || {}).timing, x = (C || {}).navigation, M = (g || {}).navigationStart, w = d.ue_fpf, Q = 0, U = 0, L = [], D = 0, F;\n                    a.oid = H(a.id);\n                    a.lid = H(a.id);\n                    a._t0 = a.t0;\n                    a.tag = P();\n                    a.ifr = h.top !== h.self || h.frameElement ? 1 : 0;\n                    a.markers = null;\n                    a.attach = A;\n                    a.detach = T;\n                    if (\"000-0000000-8675309\" === d.ue_sid) {\n                        var $ = I(\"cdn-rid\")\n                          , aa = I(\"session-id\");\n                        $ && aa && O($, aa, \"cdn\")\n                    }\n                    d.uei = Z;\n                    d.ueh = R;\n                    d.ues = e;\n                    d.uet = y;\n                    d.uex = S;\n                    a.reset = O;\n                    a.pause = function(d) {\n                        a.paused = d\n                    }\n                    ;\n                    Z()\n                }\n                )(ue_csm, ue_csm.window, ue_csm.document);\n\n                ue.stub(ue, \"event\");\n                ue.stub(ue, \"onSushiUnload\");\n                ue.stub(ue, \"onSushiFlush\");\n\n                ue.stub(ue, \"log\");\n                ue.stub(ue, \"onunload\");\n                ue.stub(ue, \"onflush\");\n                (function(b) {\n                    function g() {\n                        var a = {\n                            requestId: b.ue_id || \"rid\",\n                            server: b.ue_sn || \"sn\",\n                            obfuscatedMarketplaceId: b.ue_mid || \"mid\"\n                        };\n                        b.ue_sjslob && (a.lob = b.ue_lob || \"0\");\n                        return a\n                    }\n                    var a = b.ue\n                      , h = 1 === b.ue_no_counters\n                      , k = 1 === b.ue_stop_all_counters;\n                    a.cv = {};\n                    a.cv.scopes = {};\n                    a.cv.buffer = [];\n                    a.count = function(b, f, c) {\n                        var e = {}\n                          , d = a.cv\n                          , g = c && 0 === c.c;\n                        e.counter = b;\n                        e.value = f;\n                        e.t = a.d();\n                        c && c.scope && (d = a.cv.scopes[c.scope] = a.cv.scopes[c.scope] || {},\n                        e.scope = c.scope);\n                        if (void 0 === f)\n                            return d[b];\n                        d[b] = f;\n                        d = 0;\n                        c && c.bf && (d = 1);\n                        k || h || (ue_csm.ue_sclog || !a.clog || 0 !== d || g ? a.log && a.log(e, \"csmcount\", {\n                            c: 1,\n                            bf: d\n                        }) : a.clog(e, \"csmcount\", {\n                            bf: d\n                        }));\n                        a.cv.buffer.push({\n                            c: b,\n                            v: f\n                        })\n                    }\n                    ;\n                    a.count(\"baselineCounter2\", 1);\n                    a && a.event && (a.event(g(), \"csm\", \"csm.CSMBaselineEvent.4\"),\n                    a.count(\"nexusBaselineCounter\", 1, {\n                        bf: 1\n                    }))\n                }\n                )(ue_csm);\n\n                var ue_hoe = +new Date();\n            }\n            window.ueinit = window.ue_ihb;\n        </script>\n        <!-- jwaeftpepv9dyz -->\n        <script>\n            window.ue && ue.count && ue.count('CSMLibrarySize', 10349)\n        </script>\n        <meta name=\"a2z:request_id\" content=\"280AM2XXY2XR6VP4XMPC\">\n        <meta name=\"a2z:mons_app_name\" content=\"VendorRemittanceLibertyApp\">\n        <meta name=\"a2z:mons_config_name\" content=\"RemittanceRegionalVendorView\">\n        <meta name=\"a2z:mons_site_name\" content=\"vendorCentral\">\n        <script>\n            !function() {\n                if (window.BOOMR && (window.BOOMR.version || window.BOOMR.snippetExecuted))\n                    return;\n                window.BOOMR = window.BOOMR || {},\n                window.BOOMR.snippetExecuted = !0;\n                var e, t, n, o = document.createElement(\"iframe\"), d = window;\n                function i(e) {\n                    d.BOOMR_onload = e && e.timeStamp || (new Date).getTime()\n                }\n                d.addEventListener ? d.addEventListener(\"load\", i, !1) : d.attachEvent && d.attachEvent(\"onload\", i),\n                o.src = \"javascript:void(0)\",\n                o.title = \"\",\n                o.role = \"presentation\",\n                (o.frameElement || o).style.cssText = \"width:0;height:0;border:0;display:none;\",\n                (n = document.getElementsByTagName(\"script\")[0]) ? n.parentNode.insertBefore(o, n) : document.getElementsByTagName(\"head\")[0].appendChild(o);\n                try {\n                    t = o.contentWindow.document\n                } catch (n) {\n                    e = document.domain,\n                    o.src = \"javascript:var d=document.open();d.domain='\" + e + \"';void(0);\",\n                    t = o.contentWindow.document\n                }\n                t.open()._l = function() {\n                    var t = this.createElement(\"script\");\n                    e && (this.domain = e),\n                    t.id = \"boomr-if-as\",\n                    t.src = \"https://d1t40axu4ik42k.cloudfront.net/boomerang.8c6c93a3f6c6106b3e97.min.js\",\n                    window.BOOMR_lstart = (new Date).getTime(),\n                    this.body.appendChild(t)\n                }\n                ,\n                t.write('<body onload=\"document._l();\">'),\n                t.close()\n            }();\n        </script>\n        <script type=\"text/javascript\" id=\"cathode-loader\" async=\"\" data-mons=\"true\" data-browser-performance=\"true\" data-http_request_id=\"280AM2XXY2XR6VP4XMPC\" data-sn=\"vendorCentral\" data-domain=\"prod\" data-realm=\"EUAmazon\" data-application-name=\"VendorRemittanceLibertyApp\" src=\"https://d1t40axu4ik42k.cloudfront.net/cathodeBoomerang.a9ac4d996f11e99f327a.min.js\"></script>\n        <link rel=\"stylesheet\" href=\"https://d1xay4df2pqje6.cloudfront.net/main.8f661968.css\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/11NWoo7bTLL.css?AUIClients/VftVitalWidgetAssets\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/018RghOTPKL.css?AUIClients/VftHarmonicFormAssets\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/01xIdkN54wL.css?AUIClients/VftMelodicTableAssets\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/31kV0uUlSjL.css?AUIClients/MrTableUI\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/11+BsbU2mSL._RC|21IJD91Su3L.css_.css?AUIClients/AmazonUICalendar#not-trident\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/01h5MPddwAL.css?AUIClients/VendorRemittanceLibertyAppAssets\"/>\n        <link rel=\"stylesheet\" href=\"https://images-eu.ssl-images-amazon.com/images/I/11EIQ5IGqaL._RC|01ZTHTZObnL.css,51FIeTurRAL.css,31fFxDf00KL.css,012SlIQp3XL.css,11D3BPoiHRL.css,01qDClimA1L.css,01pOTCa2wPL.css,413Vvv3GONL.css,11TIuySqr6L.css,01Rw4F+QU6L.css,11JJsNcqOIL.css,01J3raiFJrL.css,01IdKcBuAdL.css,014QJx7nWqL.css,21Otytu1xYL.css,01Sv7-fQIGL.css,51mfNuT7JUL.css,01XPHJk60-L.css,11ChJlzZQoL.css,01UgxIH-BSL.css,01fxuupJToL.css,21+W7u4fDzL.css,01oATFSeEjL.css,21RWaJb6t+L.css,11I+YZzE7kL.css,211Xmr7zN2L.css,01CFUgsA-YL.css,31UaWAYAYPL.css,11PDZ29p-PL.css,111bsezNMhL.css,11tNhCU--0L.css,11msBd9oOTL.css,11BO1RWH3kL.css,011ylpySXkL.css,21aIYZpUYPL.css,01petkFB4FL.css,11Wb9slw7JL.css,01uDrkI-EcL.css,21BqeAVSM4L.css,113EFChyAjL.css,11hvENnYNUL.css,11Qek6G6pNL.css,01890+Vwk8L.css,014VAMpg+ZL.css,01qiwJ7qDfL.css,21TAMzcrOKL.css,016mfgi+D2L.css,01gU3ljx0fL.css,21l8QuSB5IL.css,013-xYw+SRL.css_.css?AUIClients/AmazonUI#gb.not-trident.991784-T1.1092656-T2.1073045-T2.1074116-T2.1074121-T2.1074849-T2\"/>\n        <script>\n            (function(b, a, c, d) {\n                if ((b = b.AmazonUIPageJS || b.P) && b.when && b.register) {\n                    c = [];\n                    for (a = a.currentScript; a; a = a.parentElement)\n                        a.id && c.push(a.id);\n                    return b.log(\"A copy of P has already been loaded on this page.\", \"FATAL\", c.join(\" \"))\n                }\n            }\n            )(window, document, Date);\n            (function(a, b, c, d) {\n                \"use strict\";\n                a._pSetI = function() {\n                    return null\n                }\n            }\n            )(window, document, Date);\n            (function(d, G, I, J) {\n                \"use strict\";\n                d._sw = function() {\n                    var p;\n                    return function(w, e, u, z, h, A, q, k, x, B) {\n                        p || (p = !0,\n                        B.execute(\"RetailPageServiceWorker\", function() {\n                            function y(a, b) {\n                                g.controller && a ? (a = {\n                                    feature: \"retail_service_worker_messaging\",\n                                    command: a\n                                },\n                                b && (a.data = b),\n                                g.controller.postMessage(a)) : a && h(\"sw:sw_message_no_ctrl\", 1)\n                            }\n                            function p(a) {\n                                var b = a.data;\n                                if (b && \"retail_service_worker_messaging\" === b.feature && b.command && b.data) {\n                                    var c = b.data;\n                                    a = d.ue;\n                                    var f = d.ueLogError;\n                                    switch (b.command) {\n                                    case \"log_counter\":\n                                        a && k(a.count) && c.name && a.count(c.name, 0 === c.value ? 0 : c.value || 1);\n                                        break;\n                                    case \"log_tag\":\n                                        a && k(a.tag) && c.tag && (a.tag(c.tag),\n                                        b = d.uex,\n                                        a.isl && k(b) && b(\"at\"));\n                                        break;\n                                    case \"log_error\":\n                                        f && k(f) && c.message && f({\n                                            message: c.message,\n                                            logLevel: c.level || \"ERROR\",\n                                            attribution: c.attribution || \"RetailServiceWorker\"\n                                        });\n                                        break;\n                                    case \"log_weblab_trigger\":\n                                        if (!c.weblab || !c.treatment)\n                                            break;\n                                        a && k(a.trigger) ? a.trigger(c.weblab, c.treatment) : (h(\"sw:wt:miss\"),\n                                        h(\"sw:wt:miss:\" + c.weblab + \":\" + c.treatment));\n                                        break;\n                                    default:\n                                        h(\"sw:unsupported_message_command\", 1)\n                                    }\n                                }\n                            }\n                            function v(a, b) {\n                                return \"sw:\" + (b || \"\") + \":\" + a + \":\"\n                            }\n                            function C() {\n                                l.forEach(function(a) {\n                                    q(a)\n                                })\n                            }\n                            function n(a) {\n                                return a.capabilities.isAmazonApp && a.capabilities.android\n                            }\n                            function D(a, b, c) {\n                                if (b)\n                                    if (b.mshop && n(a))\n                                        a = v(c, \"mshop_and\"),\n                                        b = b.mshop.action,\n                                        l.push(a + \"supported\"),\n                                        b(a, c);\n                                    else if (b.browser) {\n                                        a = u(/Chrome/i) && !u(/Edge/i) && !u(/OPR/i) && !a.capabilities.isAmazonApp && !u(new RegExp(z + \"bwv\" + z + \"b\"));\n                                        var f = b.browser;\n                                        b = v(c, \"browser\");\n                                        a ? (a = f.action,\n                                        l.push(b + \"supported\"),\n                                        a(b, c)) : l.push(b + \"unsupported\")\n                                    }\n                            }\n                            function E(a, b, c) {\n                                a && l.push(v(\"register\", c) + \"unsupported\");\n                                b && l.push(v(\"unregister\", c) + \"unsupported\");\n                                C()\n                            }\n                            try {\n                                var g = navigator.serviceWorker\n                            } catch (a) {\n                                q(\"sw:nav_err\")\n                            }\n                            (function() {\n                                if (g) {\n                                    var a = function() {\n                                        y(\"page_loaded\", {\n                                            rid: d.ue_id,\n                                            mid: d.ue_mid,\n                                            pty: d.ue_pty,\n                                            sid: d.ue_sid,\n                                            spty: d.ue_spty,\n                                            furl: d.ue_furl\n                                        })\n                                    };\n                                    x(g, \"message\", p);\n                                    y(\"client_messaging_ready\");\n                                    B.when(\"load\").execute(a);\n                                    x(g, \"controllerchange\", function() {\n                                        y(\"client_messaging_ready\");\n                                        \"complete\" === G.readyState && a()\n                                    })\n                                }\n                            }\n                            )();\n                            var l = []\n                              , m = function(a, b) {\n                                var c = d.uex\n                                  , f = d.uet;\n                                a = e(\":\", \"aui\", \"sw\", a);\n                                \"ld\" === b && k(c) ? c(\"ld\", a, {\n                                    wb: 1\n                                }) : k(f) && f(b, a, {\n                                    wb: 1\n                                })\n                            }\n                              , H = function(a, b, c) {\n                                function f(a) {\n                                    b && k(b.failure) && b.failure(a)\n                                }\n                                function F() {\n                                    l = setTimeout(function() {\n                                        q(e(\":\", \"sw:\" + r, t.TIMED_OUT));\n                                        f({\n                                            ok: !1,\n                                            statusCode: t.TIMED_OUT,\n                                            done: !1\n                                        });\n                                        m(r, \"ld\")\n                                    }, c || 4E3)\n                                }\n                                var t = {\n                                    NO_CONTROLLER: \"no_ctrl\",\n                                    TIMED_OUT: \"timed_out\",\n                                    UNSUPPORTED_BROWSER: \"unsupported_browser\",\n                                    UNEXPECTED_RESPONSE: \"unexpected_response\"\n                                }, r = e(\":\", a.feature, a.command), l, n = !0;\n                                if (\"MessageChannel\"in d && g && \"controller\"in g)\n                                    if (g.controller) {\n                                        var p = new MessageChannel;\n                                        p.port1.onmessage = function(c) {\n                                            (c = c.data) && c.feature === a.feature && c.command === a.command ? (n && (m(r, \"cf\"),\n                                            n = !1),\n                                            m(r, \"af\"),\n                                            clearTimeout(l),\n                                            c.done || F(),\n                                            c.ok ? b && k(b.success) && b.success(c) : f(c),\n                                            c.done && m(r, \"ld\")) : h(e(\":\", \"sw:\" + r, t.UNEXPECTED_RESPONSE), 1)\n                                        }\n                                        ;\n                                        F();\n                                        m(r, \"bb\");\n                                        g.controller.postMessage(a, [p.port2])\n                                    } else\n                                        q(e(\":\", \"sw:\" + a.feature, t.NO_CONTROLLER)),\n                                        f({\n                                            ok: !1,\n                                            statusCode: t.NO_CONTROLLER,\n                                            done: !0\n                                        });\n                                else\n                                    q(e(\":\", \"sw:\" + a.feature, t.UNSUPPORTED_BROWSER)),\n                                    f({\n                                        ok: !1,\n                                        statusCode: t.UNSUPPORTED_BROWSER,\n                                        done: !0\n                                    })\n                            };\n                            (function() {\n                                g ? (m(\"ctrl_changed\", \"bb\"),\n                                g.addEventListener(\"controllerchange\", function() {\n                                    q(\"sw:ctrl_changed\");\n                                    m(\"ctrl_changed\", \"ld\")\n                                })) : h(e(\":\", \"sw:ctrl_changed\", \"sw_unsupp\"), 1)\n                            }\n                            )();\n                            (function() {\n                                var a = function() {\n                                    m(b, \"ld\");\n                                    var a = d.uex;\n                                    H({\n                                        feature: \"page_proxy\",\n                                        command: \"request_feature_tags\"\n                                    }, {\n                                        success: function(b) {\n                                            b = b.data;\n                                            Array.isArray(b) && b.forEach(function(a) {\n                                                \"string\" === typeof a ? q(e(\":\", \"sw:ppft\", a)) : h(e(\":\", \"sw:ppft\", \"invalid_tag\"), 1)\n                                            });\n                                            h(e(\":\", \"sw:ppft\", \"success\"), 1);\n                                            A && A.isl && k(a) && a(\"at\")\n                                        },\n                                        failure: function(a) {\n                                            h(e(\":\", \"sw:ppft\", \"error:\" + (a.statusCode || \"ppft_error\")), 1)\n                                        }\n                                    })\n                                };\n                                if (\"requestIdleCallback\"in d) {\n                                    var b = e(\":\", \"ppft\", \"callback_ricb\");\n                                    d.requestIdleCallback(a, {\n                                        timeout: 1E3\n                                    })\n                                } else\n                                    b = e(\":\", \"ppft\", \"callback_timeout\"),\n                                    setTimeout(a, 0);\n                                m(b, \"bb\")\n                            }\n                            )();\n                            (function(a) {\n                                var b = a.reg\n                                  , c = a.unreg;\n                                g && g.getRegistrations ? (w.when(\"A\").execute(function(b) {\n                                    if ((a.reg.mshop || a.unreg.mshop) && \"function\" === typeof n && n(b)) {\n                                        var f = a.reg.mshop ? \"T1\" : \"C\"\n                                          , e = d.ue;\n                                        e && e.trigger ? e.trigger(\"MSHOP_SW_CLIENT_446196\", f) : h(\"sw:mshop:wt:failed\")\n                                    }\n                                    D(b, c, \"unregister\")\n                                }),\n                                x(d, \"load\", function() {\n                                    w.when(\"A\").execute(function(a) {\n                                        D(a, b, \"register\");\n                                        C()\n                                    })\n                                })) : (E(b && b.browser, c && c.browser, \"browser\"),\n                                w.when(\"A\").execute(function(a) {\n                                    \"function\" === typeof n && n(a) && E(b && b.mshop, c && c.mshop, \"mshop_and\")\n                                }))\n                            }\n                            )({\n                                reg: {},\n                                unreg: {}\n                            })\n                        }))\n                    }\n                }()\n            }\n            )(window, document, Date);\n            (function(c, e, I, B) {\n                \"use strict\";\n                c._pd = function() {\n                    var a, u;\n                    return function(C, f, h, k, b, D, v, E, F) {\n                        function w(d) {\n                            try {\n                                return d()\n                            } catch (J) {\n                                return !1\n                            }\n                        }\n                        function l() {\n                            if (m) {\n                                var d = {\n                                    w: c.innerWidth || b.clientWidth,\n                                    h: c.innerHeight || b.clientHeight\n                                };\n                                5 < Math.abs(d.w - q.w) || 50 < d.h - q.h ? (q = d,\n                                n = 4,\n                                (d = a.mobile || a.tablet ? 450 < d.w && d.w > d.h : 1250 <= d.w) ? k(b, \"a-ws\") : b.className = v(b, \"a-ws\")) : 0 < n && (n--,\n                                x = setTimeout(l, 16))\n                            }\n                        }\n                        function G(d) {\n                            (m = d === B ? !m : !!d) && l()\n                        }\n                        function H() {\n                            return m\n                        }\n                        if (!u) {\n                            u = !0;\n                            var r = function() {\n                                var d = [\"O\", \"ms\", \"Moz\", \"Webkit\"]\n                                  , c = e.createElement(\"div\");\n                                return {\n                                    testGradients: function() {\n                                        return !0\n                                    },\n                                    test: function(a) {\n                                        var b = a.charAt(0).toUpperCase() + a.substr(1);\n                                        a = (d.join(b + \" \") + b + \" \" + a).split(\" \");\n                                        for (b = a.length; b--; )\n                                            if (\"\" === c.style[a[b]])\n                                                return !0;\n                                        return !1\n                                    },\n                                    testTransform3d: function() {\n                                        return !0\n                                    }\n                                }\n                            }()\n                              , y = b.className\n                              , z = /(^| )a-mobile( |$)/.test(y)\n                              , A = /(^| )a-tablet( |$)/.test(y);\n                            a = {\n                                audio: function() {\n                                    return !!e.createElement(\"audio\").canPlayType\n                                },\n                                video: function() {\n                                    return !!e.createElement(\"video\").canPlayType\n                                },\n                                canvas: function() {\n                                    return !!e.createElement(\"canvas\").getContext\n                                },\n                                svg: function() {\n                                    return !!e.createElementNS && !!e.createElementNS(\"http://www.w3.org/2000/svg\", \"svg\").createSVGRect\n                                },\n                                offline: function() {\n                                    return navigator.hasOwnProperty && navigator.hasOwnProperty(\"onLine\") && navigator.onLine\n                                },\n                                dragDrop: function() {\n                                    return \"draggable\"in e.createElement(\"span\")\n                                },\n                                geolocation: function() {\n                                    return !!navigator.geolocation\n                                },\n                                history: function() {\n                                    return !(!c.history || !c.history.pushState)\n                                },\n                                webworker: function() {\n                                    return !!c.Worker\n                                },\n                                autofocus: function() {\n                                    return \"autofocus\"in e.createElement(\"input\")\n                                },\n                                inputPlaceholder: function() {\n                                    return \"placeholder\"in e.createElement(\"input\")\n                                },\n                                textareaPlaceholder: function() {\n                                    return \"placeholder\"in e.createElement(\"textarea\")\n                                },\n                                localStorage: function() {\n                                    return \"localStorage\"in c && null !== c.localStorage\n                                },\n                                orientation: function() {\n                                    return \"orientation\"in c\n                                },\n                                touch: function() {\n                                    return \"ontouchend\"in e\n                                },\n                                gradients: function() {\n                                    return r.testGradients()\n                                },\n                                hires: function() {\n                                    var a = c.devicePixelRatio && 1.5 <= c.devicePixelRatio || c.matchMedia && c.matchMedia(\"(min-resolution:144dpi)\").matches;\n                                    E(\"hiRes\" + (z ? \"Mobile\" : A ? \"Tablet\" : \"Desktop\"), a ? 1 : 0);\n                                    return a\n                                },\n                                transform3d: function() {\n                                    return r.testTransform3d()\n                                },\n                                touchScrolling: function() {\n                                    return f(/Windowshop|android|OS ([5-9]|[1-9][0-9]+)(_[0-9]{1,2})+ like Mac OS X|SOFTWARE=([5-9]|[1-9][0-9]+)(.[0-9]{1,2})+.*DEVICE=iPhone|Chrome|Silk|Firefox|Trident.+?; Touch/i)\n                                },\n                                ios: function() {\n                                    return f(/OS [1-9][0-9]*(_[0-9]*)+ like Mac OS X/i) && !f(/trident|Edge/i)\n                                },\n                                android: function() {\n                                    return f(/android.([1-9]|[L-Z])/i) && !f(/trident|Edge/i)\n                                },\n                                mobile: function() {\n                                    return z\n                                },\n                                tablet: function() {\n                                    return A\n                                },\n                                rtl: function() {\n                                    return \"rtl\" === b.dir\n                                }\n                            };\n                            for (var g in a)\n                                a.hasOwnProperty(g) && (a[g] = w(a[g]));\n                            for (var t = \"textShadow textStroke boxShadow borderRadius borderImage opacity transform transition\".split(\" \"), p = 0; p < t.length; p++)\n                                a[t[p]] = w(function() {\n                                    return r.test(t[p])\n                                });\n                            var m = !0\n                              , x = 0\n                              , q = {\n                                w: 0,\n                                h: 0\n                            }\n                              , n = 4;\n                            l();\n                            h(c, \"resize\", function() {\n                                clearTimeout(x);\n                                n = 4;\n                                l()\n                            });\n                            b.className = v(b, \"a-no-js\");\n                            k(b, \"a-js\");\n                            !f(/OS [1-8](_[0-9]*)+ like Mac OS X/i) || c.navigator.standalone || f(/safari/i) || k(b, \"a-ember\");\n                            h = [];\n                            for (g in a)\n                                a.hasOwnProperty(g) && a[g] && h.push(\"a-\" + g.replace(/([A-Z])/g, function(a) {\n                                    return \"-\" + a.toLowerCase()\n                                }));\n                            k(b, h.join(\" \"));\n                            b.setAttribute(\"data-aui-build-date\", F);\n                            C.register(\"p-detect\", function() {\n                                return {\n                                    capabilities: a,\n                                    localStorage: a.localStorage && D,\n                                    toggleResponsiveGrid: G,\n                                    responsiveGridEnabled: H\n                                }\n                            });\n                            return a || {}\n                        }\n                    }\n                }()\n            }\n            )(window, document, Date);\n            (function(g, l, C, D) {\n                function E(a) {\n                    n && n.tag && n.tag(p(\":\", \"aui\", a))\n                }\n                function m(a, b) {\n                    n && n.count && n.count(\"aui:\" + a, 0 === b ? 0 : b || (n.count(\"aui:\" + a) || 0) + 1)\n                }\n                function F(a) {\n                    try {\n                        return a.test(navigator.userAgent)\n                    } catch (b) {\n                        return !1\n                    }\n                }\n                function G(a) {\n                    return \"function\" === typeof a\n                }\n                function u(a, b, c) {\n                    a.addEventListener ? a.addEventListener(b, c, !1) : a.attachEvent && a.attachEvent(\"on\" + b, c)\n                }\n                function p(a, b, c, f) {\n                    b = b && c ? b + a + c : b || c;\n                    return f ? p(a, b, f) : b\n                }\n                function y(a, b, c) {\n                    try {\n                        Object.defineProperty(a, b, {\n                            value: c,\n                            writable: !1\n                        })\n                    } catch (f) {\n                        a[b] = c\n                    }\n                    return c\n                }\n                function O(a, b) {\n                    a.className = P(a, b) + \" \" + b\n                }\n                function P(a, b) {\n                    return (\" \" + a.className + \" \").split(\" \" + b + \" \").join(\" \").replace(/^ | $/g, \"\")\n                }\n                function ca(a, b, c) {\n                    var f = c = a.length\n                      , e = function() {\n                        f-- || (H.push(b),\n                        I || (q ? q.set(z) : setTimeout(z, 0),\n                        I = !0))\n                    };\n                    for (e(); c--; )\n                        Q[a[c]] ? e() : (v[a[c]] = v[a[c]] || []).push(e)\n                }\n                function da(a, b, c, f, e) {\n                    var d = l.createElement(a ? \"script\" : \"link\");\n                    u(d, \"error\", f);\n                    e && u(d, \"load\", e);\n                    a ? (d.type = \"text/javascript\",\n                    d.async = !0,\n                    c && /AUIClients|images[/]I/.test(b) && d.setAttribute(\"crossorigin\", \"anonymous\"),\n                    d.src = b) : (d.rel = \"stylesheet\",\n                    d.href = b);\n                    l.getElementsByTagName(\"head\")[0].appendChild(d)\n                }\n                function R(a, b) {\n                    return function(c, f) {\n                        function e() {\n                            da(b, c, d, function(b) {\n                                J ? m(\"resource_unload\") : d ? (d = !1,\n                                m(\"resource_retry\"),\n                                e()) : (m(\"resource_error\"),\n                                a.log(\"Asset failed to load: \" + c));\n                                b && b.stopPropagation ? b.stopPropagation() : g.event && (g.event.cancelBubble = !0)\n                            }, f)\n                        }\n                        if (S[c])\n                            return !1;\n                        S[c] = !0;\n                        m(\"resource_count\");\n                        var d = !0;\n                        return !e()\n                    }\n                }\n                function ea(a, b, c) {\n                    for (var f = {\n                        name: a,\n                        guard: function(c) {\n                            return b.guardFatal(a, c)\n                        },\n                        guardTime: function(a) {\n                            return b.guardTime(a)\n                        },\n                        logError: function(c, d, e) {\n                            b.logError(c, d, e, a)\n                        }\n                    }, e = [], d = 0; d < c.length; d++)\n                        A.hasOwnProperty(c[d]) && (e[d] = K.hasOwnProperty(c[d]) ? K[c[d]](A[c[d]], f) : A[c[d]]);\n                    return e\n                }\n                function w(a, b, c, f, e) {\n                    return function(d, k) {\n                        function n() {\n                            var a = null;\n                            f ? a = k : G(k) && (q.start = r(),\n                            a = k.apply(g, ea(d, h, l)),\n                            q.end = r());\n                            if (b) {\n                                A[d] = a;\n                                a = d;\n                                for (Q[a] = !0; (v[a] || []).length; )\n                                    v[a].shift()();\n                                delete v[a]\n                            }\n                            q.done = !0\n                        }\n                        var h = e || this;\n                        G(d) && (k = d,\n                        d = D);\n                        b && (d = d ? d.replace(T, \"\") : \"__NONAME__\",\n                        L.hasOwnProperty(d) && h.error(p(\", reregistered by \", p(\" by \", d + \" already registered\", L[d]), h.attribution), d),\n                        L[d] = h.attribution);\n                        for (var l = [], m = 0; m < a.length; m++)\n                            l[m] = a[m].replace(T, \"\");\n                        var q = x[d || \"anon\" + ++fa] = {\n                            depend: l,\n                            registered: r(),\n                            namespace: h.namespace\n                        };\n                        d && ha.hasOwnProperty(d);\n                        c ? n() : ca(l, h.guardFatal(d, n), d);\n                        return {\n                            decorate: function(a) {\n                                K[d] = h.guardFatal(d, a)\n                            }\n                        }\n                    }\n                }\n                function U(a) {\n                    return function() {\n                        var b = Array.prototype.slice.call(arguments);\n                        return {\n                            execute: w(b, !1, a, !1, this),\n                            register: w(b, !0, a, !1, this)\n                        }\n                    }\n                }\n                function M(a, b) {\n                    return function(c, f) {\n                        f || (f = c,\n                        c = D);\n                        var e = this.attribution;\n                        return function() {\n                            h.push(b || {\n                                attribution: e,\n                                name: c,\n                                logLevel: a\n                            });\n                            var d = f.apply(this, arguments);\n                            h.pop();\n                            return d\n                        }\n                    }\n                }\n                function B(a, b) {\n                    this.load = {\n                        js: R(this, !0),\n                        css: R(this)\n                    };\n                    y(this, \"namespace\", b);\n                    y(this, \"attribution\", a)\n                }\n                function V() {\n                    l.body ? k.trigger(\"a-bodyBegin\") : setTimeout(V, 20)\n                }\n                \"use strict\";\n                var t = C.now = C.now || function() {\n                    return +new C\n                }\n                  , r = function(a) {\n                    return a && a.now ? a.now.bind(a) : t\n                }(g.performance)\n                  , ia = r()\n                  , ha = {}\n                  , n = g.ue;\n                E();\n                E(\"aui_build_date:3.25.2-2025-04-21\");\n                var W = {\n                    getItem: function(a) {\n                        try {\n                            return g.localStorage.getItem(a)\n                        } catch (b) {}\n                    },\n                    setItem: function(a, b) {\n                        try {\n                            return g.localStorage.setItem(a, b)\n                        } catch (c) {}\n                    }\n                }\n                  , q = g._pSetI()\n                  , H = []\n                  , ja = []\n                  , I = !1\n                  , ka = navigator.scheduling && \"function\" === typeof navigator.scheduling.isInputPending;\n                var z = function() {\n                    for (var a = q ? q.set(z) : setTimeout(z, 0), b = t(); ja.length || H.length; )\n                        if (H.shift()(),\n                        q && ka) {\n                            if (150 < t() - b && !navigator.scheduling.isInputPending() || 50 < t() - b && navigator.scheduling.isInputPending())\n                                return\n                        } else if (50 < t() - b)\n                            return;\n                    q ? q.clear(a) : clearTimeout(a);\n                    I = !1\n                };\n                var Q = {}\n                  , v = {}\n                  , S = {}\n                  , J = !1;\n                u(g, \"beforeunload\", function() {\n                    J = !0;\n                    setTimeout(function() {\n                        J = !1\n                    }, 1E4)\n                });\n                var T = /^prv:/\n                  , L = {}\n                  , A = {}\n                  , K = {}\n                  , x = {}\n                  , fa = 0\n                  , X = String.fromCharCode(92)\n                  , h = []\n                  , Y = !0\n                  , Z = g.onerror;\n                g.onerror = function(a, b, c, f, e) {\n                    e && \"object\" === typeof e || (e = Error(a, b, c),\n                    e.columnNumber = f,\n                    e.stack = b || c || f ? p(X, e.message, \"at \" + p(\":\", b, c, f)) : D);\n                    var d = h.pop() || {};\n                    e.attribution = p(\":\", e.attribution || d.attribution, d.name);\n                    e.logLevel = d.logLevel;\n                    e.attribution && console && console.log && console.log([e.logLevel || \"ERROR\", a, \"thrown by\", e.attribution].join(\" \"));\n                    h = [];\n                    Z && (d = [].slice.call(arguments),\n                    d[4] = e,\n                    Z.apply(g, d))\n                }\n                ;\n                B.prototype = {\n                    logError: function(a, b, c, f) {\n                        b = {\n                            message: b,\n                            logLevel: c || \"ERROR\",\n                            attribution: p(\":\", this.attribution, f)\n                        };\n                        if (g.ueLogError)\n                            return g.ueLogError(a || b, a ? b : null),\n                            !0;\n                        console && console.error && (console.log(b),\n                        console.error(a));\n                        return !1\n                    },\n                    error: function(a, b, c, f) {\n                        a = Error(p(\":\", f, a, c));\n                        a.attribution = p(\":\", this.attribution, b);\n                        throw a;\n                    },\n                    guardError: M(),\n                    guardFatal: M(\"FATAL\"),\n                    guardCurrent: function(a) {\n                        var b = h[h.length - 1];\n                        return b ? M(b.logLevel, b).call(this, a) : a\n                    },\n                    guardTime: function(a) {\n                        var b = h[h.length - 1]\n                          , c = b && b.name;\n                        return c && c in x ? function() {\n                            var b = r()\n                              , e = a.apply(this, arguments);\n                            x[c].async = (x[c].async || 0) + r() - b;\n                            return e\n                        }\n                        : a\n                    },\n                    log: function(a, b, c) {\n                        return this.logError(null, a, b, c)\n                    },\n                    declare: w([], !0, !0, !0),\n                    register: w([], !0),\n                    execute: w([]),\n                    AUI_BUILD_DATE: \"3.25.2-2025-04-21\",\n                    when: U(),\n                    now: U(!0),\n                    trigger: function(a, b, c) {\n                        var f = t();\n                        this.declare(a, {\n                            data: b,\n                            pageElapsedTime: f - (g.aPageStart || NaN),\n                            triggerTime: f\n                        });\n                        c && c.instrument && N.when(\"prv:a-logTrigger\").execute(function(b) {\n                            b(a)\n                        })\n                    },\n                    handleTriggers: function() {\n                        this.log(\"handleTriggers deprecated\")\n                    },\n                    attributeErrors: function(a) {\n                        return new B(a)\n                    },\n                    _namespace: function(a, b) {\n                        return new B(a,b)\n                    },\n                    setPriority: function(a) {\n                        Y ? Y = !1 : this.log(\"setPriority only accept the first call.\")\n                    }\n                };\n                var k = y(g, \"AmazonUIPageJS\", new B);\n                var N = k._namespace(\"PageJS\", \"AmazonUI\");\n                N.declare(\"prv:p-debug\", x);\n                k.declare(\"p-recorder-events\", []);\n                k.declare(\"p-recorder-stop\", function() {});\n                y(g, \"P\", k);\n                V();\n                if (l.addEventListener) {\n                    var aa;\n                    l.addEventListener(\"DOMContentLoaded\", aa = function() {\n                        k.trigger(\"a-domready\");\n                        l.removeEventListener(\"DOMContentLoaded\", aa, !1)\n                    }\n                    , !1)\n                }\n                var ba = l.documentElement\n                  , la = g._pd(k, F, u, O, ba, W, P, m, \"3.25.2-2025-04-21\");\n                F(/UCBrowser/i) || la.localStorage && O(ba, W.getItem(\"a-font-class\"));\n                k.declare(\"a-event-revised-handling\", !1);\n                g._sw(N, p, F, X, m, n, E, G, u, k);\n                k.declare(\"a-fix-event-off\", !1);\n                m(\"pagejs:pkgExecTime\", r() - ia)\n            }\n            )(window, document, Date);\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/21TTgFboxZL.js?AUIClients/VftVitalWidgetAssets');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/61uLwfmbtbL.js?AUIClients/VftHarmonicFormAssets');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/214C-V9fmiL.js?AUIClients/VendorCentralLocalizedAUICalendar');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/41EJMFJJO-L.js?AUIClients/VftMelodicTableAssets');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/01ZGBYvP+3L._RC|516Zv5asIKL.js_.js?AUIClients/MrTableUI');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/31vB5DAPhsL.js?AUIClients/AmazonUICalendar');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/31eN1U3NunL.js?AUIClients/VendorRemittanceLibertyAppAssets');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/11S8+gqVNUL.js?AUIClients/MYPHMDUtilsBuzzAssets');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-eu.ssl-images-amazon.com/images/I/11zuylp74DL._RC|61xJcNKKLXL.js,11Y+5x+kkTL.js,51F3LXOLEtL.js,11EeeaacI2L.js,11GgN1+C7hL.js,01+z+uIeJ-L.js,01VRMV3FBdL.js,21u+kGQyRqL.js,012FVc3131L.js,11aD5q6kNBL.js,11rRjDLdAVL.js,51zH7YD-TsL.js,11nAhXzgUmL.js,11dIAzUNpxL.js,1110g-SvlBL.js,116PwN2VXHL.js,21+WA5wfjfL.js,0190vxtlzcL.js,51xvEQZx5oL.js,01JYHc2oIlL.js,31nfKXylf6L.js,01ktRCtOqKL.js,01VIlNGiFCL.js,11bEz2VIYrL.js,31o2NGTXThL.js,01rpauTep4L.js,31N+6dLod0L.js,01tvglXfQOL.js,11+FwJUUPNL.js,014gnDeJDsL.js,11vb6P5C5AL.js,015+pUPweLL.js_.js?AUIClients/AmazonUI#372963-T1.1072613-T2');\n            (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://d1uznvntk80v7s.cloudfront.net/katal.assetloader.27d53ecb2cbc.min.js');\n        </script>\n        <script src=\"https://d1xay4df2pqje6.cloudfront.net/main.89520936.js\"></script>\n        <title>Amazon</title>\n        <script type='text/javascript'>\n            window.ue_ihe = (window.ue_ihe || 0) + 1;\n            if (window.ue_ihe === 1) {\n                (function(c) {\n                    c && 1 === c.ue_jsmtf && \"object\" === typeof c.P && \"function\" === typeof c.P.when && c.P.when(\"mshop-interactions\").execute(function(e) {\n                        \"object\" === typeof e && \"function\" === typeof e.addListener && e.addListener(function(b) {\n                            \"object\" === typeof b && \"ORIGIN\" === b.dataSource && \"number\" === typeof b.clickTime && \"object\" === typeof b.events && \"number\" === typeof b.events.pageVisible && (c.ue_jsmtf_interaction = {\n                                pv: b.events.pageVisible,\n                                ct: b.clickTime\n                            })\n                        })\n                    })\n                }\n                )(ue_csm);\n                (function(c, e, b) {\n                    function m(a) {\n                        f || (f = d[a.type].id,\n                        \"undefined\" === typeof a.clientX ? (h = a.pageX,\n                        k = a.pageY) : (h = a.clientX,\n                        k = a.clientY),\n                        2 != f || l && (l != h || n != k) ? (r(),\n                        g.isl && e.setTimeout(function() {\n                            p(\"at\", g.id)\n                        }, 0)) : (l = h,\n                        n = k,\n                        f = 0))\n                    }\n                    function r() {\n                        for (var a in d)\n                            d.hasOwnProperty(a) && g.detach(a, m, d[a].parent)\n                    }\n                    function s() {\n                        for (var a in d)\n                            d.hasOwnProperty(a) && g.attach(a, m, d[a].parent)\n                    }\n                    function t() {\n                        var a = \"\";\n                        !q && f && (q = 1,\n                        a += \"&ui=\" + f);\n                        return a\n                    }\n                    var g = c.ue, p = c.uex, q = 0, f = 0, l, n, h, k, d = {\n                        click: {\n                            id: 1,\n                            parent: b\n                        },\n                        mousemove: {\n                            id: 2,\n                            parent: b\n                        },\n                        scroll: {\n                            id: 3,\n                            parent: e\n                        },\n                        keydown: {\n                            id: 4,\n                            parent: b\n                        }\n                    };\n                    g && p && (s(),\n                    g._ui = t)\n                }\n                )(ue_csm, window, document);\n\n                ue_csm.ue.stub(ue, \"impression\");\n\n                ue.stub(ue, \"trigger\");\n\n                if (window.ue && uet) {\n                    uet('bb');\n                }\n\n            }\n        </script>\n        <script>\n            window.ue && ue.count && ue.count('CSMLibrarySize', 1263)\n        </script>\n    </head>\n    <body class=\"a-aui_72554-c a-aui_template_weblab_cache_333406-c a-aui_a11y_6_837773-c a-aui_killswitch_csa_logger_372963-t1 a-bw_aui_cxc_alert_measurement_1074111-c\">\n        <div id=\"a-page\">\n            <script type=\"a-state\" data-a-state=\"{&quot;key&quot;:&quot;a-wlab-states&quot;}\">\n                \n    {\"AUI_A11Y_6_837773\":\"C\",\"AUI_TEMPLATE_WEBLAB_CACHE_333406\":\"C\",\"BW_AUI_CXC_ALERT_MEASUREMENT_1074111\":\"C\",\"AUI_72554\":\"C\",\"AUI_KILLSWITCH_CSA_LOGGER_372963\":\"T1\"}\n\n            </script>\n            <script>\n                !function() {\n                    function n(n, t) {\n                        var r = i(n);\n                        return t && (r = r(\"instance\", t)),\n                        r\n                    }\n                    var r = []\n                      , c = 0\n                      , i = function(t) {\n                        return function() {\n                            var n = c++;\n                            return r.push([t, [].slice.call(arguments, 0), n, {\n                                time: Date.now()\n                            }]),\n                            i(n)\n                        }\n                    };\n                    n._s = r,\n                    this.csa = n\n                }();\n                ;csa('Config', {});\n                if (window.csa) {\n                    csa(\"Config\", {\n\n                        'Events.Namespace': 'csa',\n                        'ObfuscatedMarketplaceId': 'A1PA6795UKMFR9',\n                        'Events.SushiEndpoint': 'https://unagi.amazon.de/1/events/com.amazon.csm.csa.prod',\n                        'CacheDetection.RequestID': \"280AM2XXY2XR6VP4XMPC\",\n                        'CacheDetection.Callback': window.ue && ue.reset,\n                        'LCP.elementDedup': 1,\n                        'lob': '1'\n                    });\n\n                    csa(\"Events\")(\"setEntity\", {\n                        page: {\n                            requestId: \"280AM2XXY2XR6VP4XMPC\",\n                            meaningful: \"interactive\"\n                        },\n                        session: {\n                            id: \"262-7807958-1059108\"\n                        }\n                    });\n                }\n                !function(r) {\n                    var e, i, o = \"splice\", u = r.csa, f = {}, c = {}, a = r.csa._s, s = 0, l = 0, g = -1, h = {}, v = {}, d = {}, n = Object.keys, p = function() {};\n                    function t(n, t) {\n                        return u(n, t)\n                    }\n                    function m(n, t) {\n                        var r = c[n] || {};\n                        k(r, t),\n                        c[n] = r,\n                        l++,\n                        S(U, 0)\n                    }\n                    function w(n, t, r) {\n                        var i = !0;\n                        return t = D(t),\n                        r && r.buffered && (i = (d[n] || []).every(function(n) {\n                            return !1 !== t(n)\n                        })),\n                        i ? (h[n] || (h[n] = []),\n                        h[n].push(t),\n                        function() {\n                            !function(n, t) {\n                                var r = h[n];\n                                r && r[o](r.indexOf(t), 1)\n                            }(n, t)\n                        }\n                        ) : p\n                    }\n                    function b(n, t) {\n                        if (t = D(t),\n                        n in v)\n                            return t(v[n]),\n                            p;\n                        return w(n, function(n) {\n                            return t(n),\n                            !1\n                        })\n                    }\n                    function y(n, t) {\n                        if (u(\"Errors\")(\"logError\", n),\n                        f.DEBUG)\n                            throw t || n\n                    }\n                    function E() {\n                        return Math.abs(4294967295 * Math.random() | 0).toString(36)\n                    }\n                    function D(n, t) {\n                        return function() {\n                            try {\n                                return n.apply(this, arguments)\n                            } catch (n) {\n                                y(n.message || n, n)\n                            }\n                        }\n                    }\n                    function S(n, t) {\n                        return r.setTimeout(D(n), t)\n                    }\n                    function U() {\n                        for (var n = 0; n < a.length; ) {\n                            var t = a[n]\n                              , r = t[0]in c;\n                            if (!r && !i)\n                                return void (s = a.length);\n                            r ? (a[o](s = n, 1),\n                            I(t)) : n++\n                        }\n                        g = l\n                    }\n                    function I(n) {\n                        var t = c[n[0]]\n                          , r = n[1]\n                          , i = r[0];\n                        if (!t || !t[i])\n                            return y(\"Undefined function: \" + t + \"/\" + i);\n                        e = n[3],\n                        c[n[2]] = t[i].apply(t, r.slice(1)) || {},\n                        e = 0\n                    }\n                    function O() {\n                        i = 1,\n                        U()\n                    }\n                    function k(t, r) {\n                        n(r).forEach(function(n) {\n                            t[n] = r[n]\n                        })\n                    }\n                    b(\"$beforeunload\", O),\n                    m(\"Config\", {\n                        instance: function(n) {\n                            k(f, n)\n                        }\n                    }),\n                    u.plugin = D(function(n) {\n                        n(t)\n                    }),\n                    t.config = f,\n                    t.register = m,\n                    t.on = w,\n                    t.once = b,\n                    t.blank = p,\n                    t.emit = function(n, t, r) {\n                        for (var i = h[n] || [], e = 0; e < i.length; )\n                            !1 === i[e](t) ? i[o](e, 1) : e++;\n                        v[n] = t || {},\n                        r && r.buffered && (d[n] || (d[n] = []),\n                        100 <= d[n].length && d[n].shift(),\n                        d[n].push(t || {}))\n                    }\n                    ,\n                    t.UUID = function() {\n                        return [E(), E(), E(), E()].join(\"-\")\n                    }\n                    ,\n                    t.time = function(n) {\n                        var t = e ? new Date(e.time) : new Date;\n                        return \"ISO\" === n ? t.toISOString() : t.getTime()\n                    }\n                    ,\n                    t.error = y,\n                    t.warn = function(n, t) {\n                        if (u(\"Errors\")(\"logWarn\", n),\n                        f.DEBUG)\n                            throw t || n\n                    }\n                    ,\n                    t.exec = D,\n                    t.timeout = S,\n                    t.interval = function(n, t) {\n                        return r.setInterval(D(n), t)\n                    }\n                    ,\n                    (t.global = r).csa._s.push = function(n) {\n                        n[0]in c && (!a.length || i) ? (I(n),\n                        a.length && g !== l && U()) : a[o](s++, 0, n)\n                    }\n                    ,\n                    U(),\n                    S(function() {\n                        S(O, f.SkipMissingPluginsTimeout || 5e3)\n                    }, 1)\n                }(\"undefined\" != typeof window ? window : global);\n                csa.plugin(function(o) {\n                    var f = \"addEventListener\"\n                      , e = \"requestAnimationFrame\"\n                      , t = o.exec\n                      , r = o.global\n                      , u = o.on;\n                    o.raf = function(n) {\n                        if (r[e])\n                            return r[e](t(n))\n                    }\n                    ,\n                    o.on = function(n, e, t, r) {\n                        if (n && \"function\" == typeof n[f]) {\n                            var i = o.exec(t);\n                            return n[f](e, i, r),\n                            function() {\n                                n.removeEventListener(e, i, r)\n                            }\n                        }\n                        return \"string\" == typeof n ? u(n, e, t, r) : o.blank\n                    }\n                });\n                csa.plugin(function(o) {\n                    var t, n, r = {}, e = \"localStorage\", c = \"sessionStorage\", a = \"local\", i = \"session\", u = o.exec;\n                    function s(e, t) {\n                        var n;\n                        try {\n                            r[t] = !!(n = o.global[e]),\n                            n = n || {}\n                        } catch (e) {\n                            r[t] = !(n = {})\n                        }\n                        return n\n                    }\n                    function f() {\n                        t = t || s(e, a),\n                        n = n || s(c, i)\n                    }\n                    function l(e) {\n                        return e && e[i] ? n : t\n                    }\n                    o.store = u(function(e, t, n) {\n                        f();\n                        var o = l(n);\n                        return e ? t ? void (o[e] = t) : o[e] : Object.keys(o)\n                    }),\n                    o.storageSupport = u(function() {\n                        return f(),\n                        r\n                    }),\n                    o.deleteStored = u(function(e, t) {\n                        f();\n                        var n = l(t);\n                        if (\"function\" == typeof e)\n                            for (var o in n)\n                                n.hasOwnProperty(o) && e(o, n[o]) && delete n[o];\n                        else\n                            delete n[e]\n                    })\n                });\n                csa.plugin(function(n) {\n                    n.types = {\n                        ovl: function(n) {\n                            var r = [];\n                            if (n)\n                                for (var i in n)\n                                    n.hasOwnProperty(i) && r.push(n[i]);\n                            return r\n                        }\n                    }\n                });\n                csa.plugin(function(a) {\n                    var e = a.config\n                      , n = \"Errors\"\n                      , c = \"fcsmln\"\n                      , s = e[\"KillSwitch.\" + n];\n                    function r(n) {\n                        return function(e) {\n                            a(\"Metrics\", {\n                                producerId: \"csa\",\n                                dimensions: {\n                                    message: e\n                                }\n                            })(\"recordMetric\", n, 1)\n                        }\n                    }\n                    function t(r) {\n                        var t, o, l = a(\"Events\", {\n                            producerId: r.producerId,\n                            lob: e.lob || \"0\"\n                        }), i = [\"name\", \"type\", \"csm\", \"adb\"], u = {\n                            url: \"pageURL\",\n                            file: \"f\",\n                            line: \"l\",\n                            column: \"c\"\n                        };\n                        this.log = function(e) {\n                            if (!s && !function(e) {\n                                if (!e)\n                                    return !0;\n                                for (var n in e)\n                                    return !1;\n                                return !0\n                            }(e)) {\n                                var n = r.logOptions || {\n                                    ent: {\n                                        page: [\"pageType\", \"subPageType\", \"requestId\"]\n                                    }\n                                };\n                                l(\"log\", function(n) {\n                                    return t = a.UUID(),\n                                    o = {\n                                        messageId: t,\n                                        schemaId: r.schemaId || \"<ns>.Error.6\",\n                                        errorMessage: n.m || null,\n                                        attribution: n.attribution || null,\n                                        logLevel: \"FATAL\",\n                                        url: null,\n                                        file: null,\n                                        line: null,\n                                        column: null,\n                                        stack: n.s || [],\n                                        context: n.cinfo || {},\n                                        metadata: {}\n                                    },\n                                    n.logLevel && (o.logLevel = \"\" + n.logLevel),\n                                    i.forEach(function(e) {\n                                        n[e] && (o.metadata[e] = n[e])\n                                    }),\n                                    c in n && (o.metadata[c] = n[c] + \"\"),\n                                    \"INFO\" === n.logLevel || Object.keys(u).forEach(function(e) {\n                                        \"number\" != typeof n[u[e]] && \"string\" != typeof n[u[e]] || (o[e] = \"\" + n[u[e]])\n                                    }),\n                                    o\n                                }(e), n)\n                            }\n                        }\n                    }\n                    a.register(n, {\n                        instance: function(e) {\n                            return new t(e || {})\n                        },\n                        logError: r(\"jsError\"),\n                        logWarn: r(\"jsWarn\")\n                    })\n                });\n                csa.plugin(function(o) {\n                    var r, e, n, t, a, i = \"function\", u = \"willDisappear\", f = \"$app.\", p = \"$document.\", c = \"focus\", s = \"blur\", d = \"active\", l = \"resign\", $ = o.global, b = o.exec, m = o.config[\"Transport.AnonymizeRequests\"] || !1, g = o(\"Events\"), h = $.location, v = $.document || {}, y = $.P || {}, P = (($.performance || {}).navigation || {}).type, w = o.on, k = o.emit, E = v.hidden, T = {};\n                    h && v && (w($, \"beforeunload\", D),\n                    w($, \"pagehide\", D),\n                    w(v, \"visibilitychange\", R(p, function() {\n                        return v.visibilityState || \"unknown\"\n                    })),\n                    w(v, c, R(p + c)),\n                    w(v, s, R(p + s)),\n                    y.when && y.when(\"mash\").execute(function(e) {\n                        e && (w(e, \"appPause\", R(f + \"pause\")),\n                        w(e, \"appResume\", R(f + \"resume\")),\n                        R(f + \"deviceready\")(),\n                        $.cordova && $.cordova.platformId && R(f + cordova.platformId)(),\n                        w(v, d, R(f + d)),\n                        w(v, l, R(f + l)))\n                    }),\n                    e = $.app || {},\n                    n = b(function() {\n                        k(f + \"willDisappear\"),\n                        D()\n                    }),\n                    a = typeof (t = e[u]) == i,\n                    e[u] = b(function() {\n                        n(),\n                        a && t()\n                    }),\n                    $.app || ($.app = e),\n                    \"complete\" === v.readyState ? A() : w($, \"load\", A),\n                    E ? S() : x(),\n                    o.on(\"$app.blur\", S),\n                    o.on(\"$app.focus\", x),\n                    o.on(\"$document.blur\", S),\n                    o.on(\"$document.focus\", x),\n                    o.on(\"$document.hidden\", S),\n                    o.on(\"$document.visible\", x),\n                    o.register(\"SPA\", {\n                        newPage: I\n                    }),\n                    I({\n                        transitionType: {\n                            0: \"hard\",\n                            1: \"refresh\",\n                            2: \"back-button\"\n                        }[P] || \"unknown\"\n                    }));\n                    function I(n, e) {\n                        var t = !!r\n                          , a = (e = e || {}).keepPageAttributes;\n                        t && (k(\"$beforePageTransition\"),\n                        k(\"$pageTransition\")),\n                        t && !a && g(\"removeEntity\", \"page\"),\n                        r = o.UUID(),\n                        a ? T.id = r : T = {\n                            schemaId: \"<ns>.PageEntity.2\",\n                            id: r,\n                            url: m ? h.href.split(\"?\")[0] : h.href,\n                            server: h.hostname,\n                            path: h.pathname,\n                            referrer: m ? v.referrer.split(\"?\")[0] : v.referrer,\n                            title: v.title\n                        },\n                        Object.keys(n || {}).forEach(function(e) {\n                            T[e] = n[e]\n                        }),\n                        g(\"setEntity\", {\n                            page: T\n                        }),\n                        k(\"$pageChange\", T, {\n                            buffered: 1\n                        }),\n                        t && k(\"$afterPageTransition\")\n                    }\n                    function A() {\n                        k(\"$load\"),\n                        k(\"$ready\"),\n                        k(\"$afterload\")\n                    }\n                    function D() {\n                        k(\"$ready\"),\n                        k(\"$beforeunload\"),\n                        k(\"$unload\"),\n                        k(\"$afterunload\")\n                    }\n                    function S() {\n                        E || (k(\"$visible\", !1, {\n                            buffered: 1\n                        }),\n                        E = !0)\n                    }\n                    function x() {\n                        E && (k(\"$visible\", !0, {\n                            buffered: 1\n                        }),\n                        E = !1)\n                    }\n                    function R(n, t) {\n                        return b(function() {\n                            var e = typeof t == i ? n + t() : n;\n                            k(e)\n                        })\n                    }\n                });\n                csa.plugin(function(c) {\n                    var e = \"Events\"\n                      , n = \"UNKNOWN\"\n                      , s = \"id\"\n                      , a = \"all\"\n                      , i = \"messageId\"\n                      , o = \"timestamp\"\n                      , u = \"producerId\"\n                      , r = \"application\"\n                      , f = \"obfuscatedMarketplaceId\"\n                      , d = \"entities\"\n                      , l = \"schemaId\"\n                      , p = \"version\"\n                      , v = \"attributes\"\n                      , g = \"<ns>\"\n                      , b = \"lob\"\n                      , t = \"session\"\n                      , h = c.config\n                      , m = (c.global.location || {}).host\n                      , I = h[e + \".Namespace\"] || \"csa_other\"\n                      , y = h.Application || \"Other\" + (m ? \":\" + m : \"\")\n                      , O = h[\"Transport.AnonymizeRequests\"] || !1\n                      , E = c(\"Transport\")\n                      , U = {}\n                      , A = function(e, t) {\n                        Object.keys(e).forEach(t)\n                    };\n                    function N(n, i, o) {\n                        A(i, function(e) {\n                            var t = o === a || (o || {})[e];\n                            e in n || (n[e] = {\n                                version: 1,\n                                id: i[e][s] || c.UUID()\n                            }),\n                            S(n[e], i[e], t)\n                        })\n                    }\n                    function S(t, n, i) {\n                        A(n, function(e) {\n                            !function(e, t, n) {\n                                return \"string\" != typeof t && e !== p ? c.error(\"Attribute is not of type string: \" + e) : !0 === n || 1 === n || (e === s || !!~(n || []).indexOf(e))\n                            }(e, n[e], i) || (t[e] = n[e])\n                        })\n                    }\n                    function k(o, e, r) {\n                        A(e, function(e) {\n                            var t = o[e];\n                            if (t[l]) {\n                                var n = {}\n                                  , i = {};\n                                n[s] = t[s],\n                                n[u] = t[u] || r[u],\n                                n[l] = t[l],\n                                n[p] = t[p]++,\n                                n[v] = i,\n                                w(n, r),\n                                S(i, t, 1),\n                                D(i),\n                                E(\"log\", n)\n                            }\n                        })\n                    }\n                    function w(e, t) {\n                        e[o] = function(e) {\n                            return \"number\" == typeof e && (e = new Date(e).toISOString()),\n                            e || c.time(\"ISO\")\n                        }(e[o]),\n                        e[i] = e[i] || c.UUID(),\n                        e[r] = y,\n                        e[f] = h.ObfuscatedMarketplaceId || n,\n                        e[l] = e[l].replace(g, I),\n                        t && t[b] && (e[b] = t[b])\n                    }\n                    function D(e) {\n                        delete e[p],\n                        delete e[l],\n                        delete e[u]\n                    }\n                    function T(o) {\n                        var r = {};\n                        this.log = function(e, t) {\n                            var n = {}\n                              , i = (t || {}).ent;\n                            return e ? \"string\" != typeof e[l] ? c.error(\"A valid schema id is required for the event\") : (w(e, o),\n                            N(n, U, i),\n                            N(n, r, i),\n                            N(n, e[d] || {}, i),\n                            A(n, function(e) {\n                                D(n[e])\n                            }),\n                            e[u] = o[u],\n                            e[d] = n,\n                            t && t[b] && (e[b] = t[b]),\n                            void E(\"log\", e, t)) : c.error(\"The event cannot be undefined\")\n                        }\n                        ,\n                        this.setEntity = function(e) {\n                            O && delete e[t],\n                            N(r, e, a),\n                            k(r, e, o)\n                        }\n                    }\n                    h[\"KillSwitch.\" + e] || c.register(e, {\n                        setEntity: function(e) {\n                            O && delete e[t],\n                            c.emit(\"$entities.set\", e, {\n                                buffered: 1\n                            }),\n                            N(U, e, a),\n                            k(U, e, {\n                                producerId: \"csa\",\n                                lob: h[b] || \"0\"\n                            })\n                        },\n                        removeEntity: function(e) {\n                            delete U[e]\n                        },\n                        instance: function(e) {\n                            return new T(e)\n                        }\n                    })\n                });\n                csa.plugin(function(s) {\n                    var c, g = \"Transport\", l = \"post\", f = \"preflight\", r = \"csa.cajun.\", i = \"store\", a = \"deleteStored\", u = \"sendBeacon\", t = \"__merge\", e = \"messageId\", n = \".FlushInterval\", o = 0, d = s.config[g + \".BufferSize\"] || 2e3, h = s.config[g + \".RetryDelay\"] || 1500, p = s.config[g + \".AnonymizeRequests\"] || !1, v = {}, y = 0, m = [], E = s.global, R = E.document, b = s.timeout, k = E.Object.keys, w = s.config[g + n] || 5e3, I = w, O = s.config[g + n + \".BackoffFactor\"] || 1, S = s.config[g + n + \".BackoffLimit\"] || 3e4, B = 0;\n                    function T(n) {\n                        if (864e5 < s.time() - +new Date(n.timestamp))\n                            return s.warn(\"Event is too old: \" + n);\n                        y < d && (n[e]in v || (v[n[e]] = n,\n                        y++),\n                        \"function\" == typeof n[t] && n[t](v[n[e]]),\n                        !B && o && (B = b(q, function() {\n                            var n = I;\n                            return I = Math.min(n * O, S),\n                            n\n                        }())))\n                    }\n                    function q() {\n                        m.forEach(function(e) {\n                            var o = [];\n                            k(v).forEach(function(n) {\n                                var t = v[n];\n                                e.accepts(t) && o.push(t)\n                            }),\n                            o.length && (e.chunks ? e.chunks(o).forEach(function(n) {\n                                D(e, n)\n                            }) : D(e, o))\n                        }),\n                        v = {},\n                        B = 0\n                    }\n                    function D(t, e) {\n                        function o() {\n                            s[a](r + n)\n                        }\n                        var n = s.UUID();\n                        s[i](r + n, JSON.stringify(e)),\n                        [function(n, t, e) {\n                            var o = E.navigator || {}\n                              , r = E.cordova || {};\n                            if (p)\n                                return 0;\n                            if (!o[u] || !n[l])\n                                return 0;\n                            n[f] && r && \"ios\" === r.platformId && !c && ((new Image).src = n[f]().url,\n                            c = 1);\n                            var i = n[l](t);\n                            if (!i.type && o[u](i.url, i.body))\n                                return e(),\n                                1\n                        }\n                        , function(n, t, e) {\n                            if (!n[l])\n                                return 0;\n                            var o = n[l](t)\n                              , r = o.url\n                              , i = o.body\n                              , c = o.type\n                              , f = new XMLHttpRequest\n                              , a = 0;\n                            function u(n, t, e) {\n                                f.open(\"POST\", n),\n                                f.withCredentials = !p,\n                                e && f.setRequestHeader(\"Content-Type\", e),\n                                f.send(t)\n                            }\n                            return f.onload = function() {\n                                f.status < 299 ? e() : s.config[g + \".XHRRetries\"] && a < 3 && b(function() {\n                                    u(r, i, c)\n                                }, ++a * h)\n                            }\n                            ,\n                            u(r, i, c),\n                            1\n                        }\n                        ].some(function(n) {\n                            try {\n                                return n(t, e, o)\n                            } catch (n) {}\n                        })\n                    }\n                    k && (s.once(\"$afterload\", function() {\n                        o = 1,\n                        function(e) {\n                            (s[i]() || []).forEach(function(n) {\n                                if (!n.indexOf(r))\n                                    try {\n                                        var t = s[i](n);\n                                        s[a](n),\n                                        JSON.parse(t).forEach(e)\n                                    } catch (n) {\n                                        s.error(n)\n                                    }\n                            })\n                        }(T),\n                        s.on(R, \"visibilitychange\", q, !1),\n                        q()\n                    }),\n                    s.once(\"$afterunload\", function() {\n                        o = 1,\n                        q()\n                    }),\n                    s.on(\"$afterPageTransition\", function() {\n                        y = 0,\n                        I = w\n                    }),\n                    s.register(g, {\n                        log: T,\n                        register: function(n) {\n                            m.push(n)\n                        }\n                    }))\n                });\n                csa.plugin(function(n) {\n                    var r = n.config[\"Events.SushiEndpoint\"];\n                    n(\"Transport\")(\"register\", {\n                        accepts: function(n) {\n                            return n.schemaId\n                        },\n                        post: function(n) {\n                            var t = n.map(function(n) {\n                                return {\n                                    data: n\n                                }\n                            });\n                            return {\n                                url: r,\n                                body: JSON.stringify({\n                                    events: t\n                                })\n                            }\n                        },\n                        preflight: function() {\n                            var n, t = ///(.*?)//.exec(r);\n                            return t && t[1] && (n = \"https://\" + t[1] + \"/ping\"),\n                            {\n                                url: n\n                            }\n                        },\n                        chunks: function(n) {\n                            for (var t = []; 500 < n.length; )\n                                t.push(n.splice(0, 500));\n                            return t.push(n),\n                            t\n                        }\n                    })\n                });\n                csa.plugin(function(n) {\n                    var t, a, o, r, e = n.config, i = \"PageViews\", d = e[i + \".ImpressionMinimumTime\"] || 1e3, s = \"hidden\", c = \"innerHeight\", l = \"innerWidth\", g = \"renderedTo\", f = g + \"Viewed\", m = g + \"Meaningful\", u = g + \"Impressed\", p = 1, h = 2, v = 3, w = 4, P = 5, y = \"loaded\", I = 7, b = 8, T = n.global, S = n.on, E = n(\"Events\", {\n                        producerId: \"csa\",\n                        lob: e.lob || \"0\"\n                    }), K = T.document, V = {}, $ = {}, M = P, R = e[\"KillSwitch.\" + i], H = e[\"KillSwitch.PageRender\"], W = e[\"KillSwitch.PageImpressed\"];\n                    function j(e) {\n                        if (!V[I]) {\n                            if (V[e] = n.time(),\n                            e !== v && e !== y || (t = t || V[e]),\n                            t && M === w) {\n                                if (a = a || V[e],\n                                !R)\n                                    (i = {})[m] = t - o,\n                                    i[f] = a - o,\n                                    k(\"PageView.5\", i);\n                                r = r || n.timeout(x, d)\n                            }\n                            var i;\n                            if (e !== P && e !== p && e !== h || (clearTimeout(r),\n                            r = 0),\n                            e !== p && e !== h || H || k(\"PageRender.4\", {\n                                transitionType: e === p ? \"hard\" : \"soft\"\n                            }),\n                            e === I && !W)\n                                (i = {})[m] = t - o,\n                                i[f] = a - o,\n                                i[u] = V[e] - o,\n                                k(\"PageImpressed.3\", i)\n                        }\n                    }\n                    function k(e, i) {\n                        $[e] || (i.schemaId = \"<ns>.\" + e,\n                        E(\"log\", i, {\n                            ent: \"all\"\n                        }),\n                        $[e] = 1)\n                    }\n                    function q() {\n                        0 === T[c] && 0 === T[l] ? (M = b,\n                        n(\"Events\")(\"setEntity\", {\n                            page: {\n                                viewport: \"hidden-iframe\"\n                            }\n                        })) : M = K[s] ? P : w,\n                        j(M)\n                    }\n                    function x() {\n                        j(I),\n                        r = 0\n                    }\n                    function z() {\n                        var e = o ? h : p;\n                        V = {},\n                        $ = {},\n                        a = t = 0,\n                        o = n.time(),\n                        j(e),\n                        q()\n                    }\n                    function A() {\n                        var e = K.readyState;\n                        \"interactive\" === e && j(v),\n                        \"complete\" === e && j(y)\n                    }\n                    K && void 0 !== K[s] ? (z(),\n                    S(K, \"visibilitychange\", q, !1),\n                    S(K, \"readystatechange\", A, !1),\n                    S(\"$afterPageTransition\", z),\n                    S(\"$timing:loaded\", A),\n                    n.once(\"$load\", A)) : n.warn(\"Page visibility not supported\")\n                });\n                csa.plugin(function(c) {\n                    var s = c.config[\"Interactions.ParentChainLength\"] || 35\n                      , e = \"click\"\n                      , r = \"touches\"\n                      , f = \"timeStamp\"\n                      , o = \"length\"\n                      , u = \"pageX\"\n                      , g = \"pageY\"\n                      , p = \"pageXOffset\"\n                      , h = \"pageYOffset\"\n                      , m = 250\n                      , v = 5\n                      , d = 200\n                      , l = .5\n                      , t = {\n                        capture: !0,\n                        passive: !0\n                    }\n                      , X = c.global\n                      , Y = c.emit\n                      , n = c.on\n                      , x = X.Math.abs\n                      , a = (X.document || {}).documentElement || {}\n                      , y = {\n                        x: 0,\n                        y: 0,\n                        t: 0,\n                        sX: 0,\n                        sY: 0\n                    }\n                      , N = {\n                        x: 0,\n                        y: 0,\n                        t: 0,\n                        sX: 0,\n                        sY: 0\n                    };\n                    function b(t) {\n                        if (t.id)\n                            return \"//*[@id='\" + t.id + \"']\";\n                        var e = function(t) {\n                            var e, n = 1;\n                            for (e = t.previousSibling; e; e = e.previousSibling)\n                                e.nodeName === t.nodeName && (n += 1);\n                            return n\n                        }(t)\n                          , n = t.nodeName;\n                        return 1 !== e && (n += \"[\" + e + \"]\"),\n                        t.parentNode && (n = b(t.parentNode) + \"/\" + n),\n                        n\n                    }\n                    function I(t, e, n) {\n                        var a = c(\"Content\", {\n                            target: n\n                        })\n                          , i = {\n                            schemaId: \"<ns>.ContentInteraction.2\",\n                            interaction: t,\n                            interactionData: e,\n                            messageId: c.UUID()\n                        };\n                        if (n) {\n                            var r = b(n);\n                            r && (i.attribution = r);\n                            var o = function(t) {\n                                for (var e = t, n = e.tagName, a = !1, i = t ? t.href : null, r = 0; r < s; r++) {\n                                    if (!e || !e.parentElement) {\n                                        a = !0;\n                                        break\n                                    }\n                                    n = (e = e.parentElement).tagName + \"/\" + n,\n                                    i = i || e.href\n                                }\n                                return a || (n = \".../\" + n),\n                                {\n                                    pc: n,\n                                    hr: i\n                                }\n                            }(n);\n                            o.pc && (i.interactionData.parentChain = o.pc),\n                            o.hr && (i.interactionData.href = o.hr)\n                        }\n                        a(\"log\", i),\n                        Y(\"$content.interaction\", {\n                            e: i,\n                            w: a\n                        })\n                    }\n                    function i(t) {\n                        I(e, {\n                            interactionX: \"\" + t.pageX,\n                            interactionY: \"\" + t.pageY\n                        }, t.target)\n                    }\n                    function C(t) {\n                        if (t && t[r] && 1 === t[r][o]) {\n                            var e = t[r][0];\n                            N = y = {\n                                e: t.target,\n                                x: e[u],\n                                y: e[g],\n                                t: t[f],\n                                sX: X[p],\n                                sY: X[h]\n                            }\n                        }\n                    }\n                    function D(t) {\n                        if (t && t[r] && 1 === t[r][o] && y && N) {\n                            var e = t[r][0]\n                              , n = t[f]\n                              , a = n - N.t\n                              , i = {\n                                e: t.target,\n                                x: e[u],\n                                y: e[g],\n                                t: n,\n                                sX: X[p],\n                                sY: X[h]\n                            };\n                            N = i,\n                            d <= a && (y = i)\n                        }\n                    }\n                    function E(t) {\n                        if (t) {\n                            var e = x(y.x - N.x)\n                              , n = x(y.y - N.y)\n                              , a = x(y.sX - N.sX)\n                              , i = x(y.sY - N.sY)\n                              , r = t[f] - y.t;\n                            if (m < 1e3 * e / r && v < e || m < 1e3 * n / r && v < n) {\n                                var o = n < e;\n                                o && a && e * l <= a || !o && i && n * l <= i || I((o ? \"horizontal\" : \"vertical\") + \"-swipe\", {\n                                    interactionX: \"\" + y.x,\n                                    interactionY: \"\" + y.y,\n                                    endX: \"\" + N.x,\n                                    endY: \"\" + N.y\n                                }, y.e)\n                            }\n                        }\n                    }\n                    n(a, e, i, t),\n                    n(a, \"touchstart\", C, t),\n                    n(a, \"touchmove\", D, t),\n                    n(a, \"touchend\", E, t)\n                });\n                csa.plugin(function(s) {\n                    var a, o, t, c, e, n = \"MutationObserver\", l = \"observe\", i = \"disconnect\", f = \"_csa_flt\", b = \"_csa_llt\", d = \"_csa_mr\", p = \"_csa_mi\", v = \"lastChild\", m = \"length\", h = {\n                        childList: !0,\n                        subtree: !0\n                    }, _ = 10, g = 25, r = 1e3, y = 4, u = s.global, k = u.document, w = k.body || k.documentElement, I = Date.now, L = [], O = [], B = [], M = 0, x = 0, C = 0, D = 1, E = [], F = [], S = 0, V = s.blank;\n                    I && u[n] && (M = 0,\n                    o = new u[n]($),\n                    (t = new u[n](Y))[l](w, {\n                        attributes: !0,\n                        subtree: !0,\n                        attributeFilter: [\"src\"],\n                        attributeOldValue: !0\n                    }),\n                    V = s.on(u, \"scroll\", j, {\n                        passive: !0\n                    }),\n                    s.once(\"$ready\", A),\n                    D && (z(),\n                    e = s.interval(q, r)),\n                    s.register(\"SpeedIndexBuffers\", {\n                        getBuffers: function(e) {\n                            e && (A(),\n                            j(),\n                            e(M, E, L, O, B),\n                            o && o[i](),\n                            t && t[i](),\n                            V())\n                        },\n                        registerListener: function(e) {\n                            a = e\n                        },\n                        replayModuleIsLive: function() {\n                            s.timeout(A, 0)\n                        }\n                    }));\n                    function Y(e) {\n                        L.push({\n                            t: I(),\n                            m: e\n                        })\n                    }\n                    function $(e) {\n                        O.push({\n                            t: I(),\n                            m: e\n                        }),\n                        C = 1,\n                        a && a()\n                    }\n                    function j() {\n                        C && (B.push({\n                            t: I(),\n                            y: x\n                        }),\n                        x = u.pageYOffset,\n                        C = 0)\n                    }\n                    function q() {\n                        var e = I();\n                        (!c || r < e - c) && z()\n                    }\n                    function z() {\n                        for (var e = w, t = I(), n = [], i = [], r = 0, u = 0; e; )\n                            e[f] ? ++r : (e[f] = t,\n                            n.push(e),\n                            u = 1),\n                            i[m] < y && i.push(e),\n                            e[p] = S,\n                            e[b] = t,\n                            e = e[v];\n                        u && (r < F[m] && function(e) {\n                            for (var t = e, n = F[m]; t < n; t++) {\n                                var i = F[t];\n                                if (i) {\n                                    if (i[d])\n                                        break;\n                                    if (i[p] < S) {\n                                        i[d] = 1,\n                                        o[l](i, h);\n                                        break\n                                    }\n                                }\n                            }\n                        }(r),\n                        F = i,\n                        E.push({\n                            t: t,\n                            m: n\n                        }),\n                        ++S,\n                        C = u,\n                        a && a()),\n                        D && s.timeout(z, u ? _ : g),\n                        c = t\n                    }\n                    function A() {\n                        D && (D = 0,\n                        e && u.clearInterval(e),\n                        e = null,\n                        z(),\n                        o[l](w, h))\n                    }\n                });\n                csa.plugin(function(b) {\n                    var a = b.global\n                      , c = a.uet\n                      , e = a.uex\n                      , f = a.ue\n                      , a = a.Object\n                      , g = 0\n                      , h = {\n                        largestContentfulPaint: \"lcp\",\n                        visuallyLoaded50: \"vl50\",\n                        visuallyLoaded90: \"vl90\",\n                        visuallyLoaded100: \"vl100\"\n                    };\n                    b && c && e && a.keys && f && (b.once(\"$ditched.beforemitigation\", function() {\n                        g = 1\n                    }),\n                    a.keys(h).forEach(function(a) {\n                        b.on(\"$timing:\" + a, function(b) {\n                            var d = h[a];\n                            if (f.isl || g) {\n                                var k = \"csa:\" + d;\n                                c(d, k, void 0, b);\n                                e(\"at\", k)\n                            } else\n                                c(d, void 0, void 0, b)\n                        })\n                    }))\n                });\n            </script>\n            <script>\n                window.ue && ue.count && ue.count('CSMLibrarySize', 15738)\n            </script>\n            <div id=\"sc-navbar-container\">\n                <script type=\"text/javascript\">\n                    if (typeof uet == \"function\") {\n                        uet('ns');\n                    }\n                </script>\n                <style>\n                    html, body {\n                        height: 100%;\n                        margin: 0;\n                    }\n\n                    #vc-header-placeholder {\n                        height: 78px;\n                        margin-bottom: 30px;\n                    }\n                </style>\n                <div id=\"vc-header-container\">\n                    <div id=\"vc-header-placeholder\"></div>\n                </div>\n                <script type=\"text/javascript\">\n                    if (typeof uet == \"function\") {\n                        uet('ne');\n                    }\n                </script>\n            </div>\n            <div id=\"sc-content-container\">\n                <script>\n                    var constants = {};\n                    constants.vendorCodes = 'QT71I, LZ7TO';\n                    constants.currentDay = '24';\n                    constants.currentMonth = '4';\n                    constants.currentYear = '2025';\n                    constants.dateFormat = 'd/M/yyyy';\n                    constants.dateRangeSearchOption = '[Lcom.amazon.vendorremittance.data.types.DateRangeSearchOption;@77bb14c3';\n                    constants.remittanceDownloadUrl = '/hz/vendor/members/remittance/resource/download';\n                    constants.calendarLocale = 'en_GB';\n                    constants.marketplaceId = 'A13V1IB3VIYZZH';\n                    constants.showPaymentFailureNotification = '';\n                    constants.paymentFailureVendorId = '';\n\n                    P.when('remittance-home-page', 'ready').execute(function(remittanceHomePage) {\n                        remittanceHomePage.init(constants);\n                    });\n\n                    P.when('vft-harmonic-calendar-localization-utils', 'ready').execute(function(calendarUtils) {\n                        calendarUtils.init(constants.dateFormat, constants.calendarLocale);\n                    });\n                </script>\n                <div class=\"a-container page-container\">\n                    <h1 class=\"a-spacing-small a-spacing-top-micro\">Remittance payments\n            </h1>\n                    <div class=\"a-box a-alert a-alert-info a-spacing-small\" aria-live=\"polite\" aria-atomic=\"true\">\n                        <div class=\"a-box-inner a-alert-container\">\n                            <i class=\"a-icon a-icon-alert\"></i>\n                            <div class=\"a-alert-content\">\n                                <div id=\"holdbacks-page-banner\" class=\"a-section\">\n                                    <span>New Feature. From the remittances page, you can now download details regarding provisions. \n                    </span>\n                                    <span>Click on \u2018Payments\u2019 -> \u2018Remittance\u2019 -> \u2018Remittance ID containing the provision\u2019 -> \u2018Specific Provision ID for which you want the details\u2019 to get the report.\n                    </span>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"a-box a-alert a-alert-info\" aria-live=\"polite\" aria-atomic=\"true\">\n                        <div class=\"a-box-inner a-alert-container\">\n                            <i class=\"a-icon a-icon-alert\"></i>\n                            <div class=\"a-alert-content\">\n                                <span id=\"vendor-codes-info\"></span>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"a-row a-spacing-top-medium\">\n                        <div class=\"a-column a-span3\">Marketplace\n        </div>\n                        <div class=\"a-column a-span3\">Vendor Codes\n        </div>\n                    </div>\n                    <div class=\"a-row\">\n                        <div class=\"a-column a-span3\">\n                            <kat-dropdown id=\"countriesDropDown\" class=\"dropdown-maxheight\" data-action=\"marketplaceDropDownChange\" rich-selection-label value=\"A13V1IB3VIYZZH\">\n                                <kat-option value=\"A1PA6795UKMFR9\">\n                                    <div class=\"dropdown-flexed\">\n                                        <kat-icon name=\"flag-de\" size=\"small\"></kat-icon>\n                                        <span class=\"dropdown-padded\">Germany\n                    (DE)</span>\n                                    </div>\n                                </kat-option>\n                                <kat-option value=\"APJ6JRA9NG5V4\">\n                                    <div class=\"dropdown-flexed\">\n                                        <kat-icon name=\"flag-it\" size=\"small\"></kat-icon>\n                                        <span class=\"dropdown-padded\">Italy\n                    (IT)</span>\n                                    </div>\n                                </kat-option>\n                                <kat-option value=\"A13V1IB3VIYZZH\">\n                                    <div class=\"dropdown-flexed\">\n                                        <kat-icon name=\"flag-fr\" size=\"small\"></kat-icon>\n                                        <span class=\"dropdown-padded\">France\n                    (FR)</span>\n                                    </div>\n                                </kat-option>\n                                <kat-option value=\"A1RKKUPIHCS9HS\">\n                                    <div class=\"dropdown-flexed\">\n                                        <kat-icon name=\"flag-es\" size=\"small\"></kat-icon>\n                                        <span class=\"dropdown-padded\">Spain\n                    (ES)</span>\n                                    </div>\n                                </kat-option>\n                            </kat-dropdown>\n                        </div>\n                        <div class=\"a-column a-span3\">\n                            <div id=\"vendorCodesDropDownDive\">\n                                <kat-dropdown id=\"vendorCodesDropdown\" class=\"dropdown-maxheight\">\n                                    <kat-checkbox class=\"vendorCodeCheckBox dropdown-flexed dropdown-padded\" label=\"QT71I\" checked></kat-checkbox>\n                                    <kat-checkbox class=\"vendorCodeCheckBox dropdown-flexed dropdown-padded\" label=\"LZ7TO\" checked></kat-checkbox>\n                                </kat-dropdown>\n                            </div>\n                        </div>\n                    </div>\n                    <!-- If layout is absent, use 'default' -->\n                    <!-- Generate a randon string and use as training widget's id -->\n                    <!-- because if there are more than 1 widget then they must have different ids -->\n                    <!-- so that we can manipulate them independently -->\n                    <div id=\"training-widget-83dcd0f0-48d1-4476-9a11-a79b6720979d\" class=\"a-section a-spacing-none training-widget\">\n                        <span class=\"a-spinner a-spinner-small\"></span>\n                    </div>\n                    <script type=\"text/javascript\">\n                        P.when('A').execute(function(A) {\n                            var $ = A.$;\n                            var trainingWidget$ = $('#training-widget-83dcd0f0-48d1-4476-9a11-a79b6720979d');\n                            // Identify site area by looking at the current url\n                            // By default assume 'members'. If 'setup' is present in the url, then assume 'setup'\n                            var siteArea = 'members';\n                            if (window.location.href.toLowerCase().indexOf('/setup/') !== -1) {\n                                siteArea = 'setup';\n                            }\n                            // Execute ajax request to retrieve training recommendation and show it on the widget\n                            A.ajax('/hz/vendor/' + siteArea + '/support/ajax/training/widget/content/layout/default/tags/remittance-page', {\n                                method: 'get',\n                                success: function(response) {\n                                    // Replace spinner with training recommendation html\n                                    trainingWidget$.html(response);\n                                },\n                                error: function() {\n                                    // Hide the widget if there is an error\n                                    trainingWidget$.addClass('aok-hidden');\n                                }\n                            });\n                        });\n                    </script>\n                    <div class=\"a-row a-spacing-top-medium\">\n                        <span id=\"page-indexing\"></span>\n                        <span id=\"remittance-home-link-group\">\n                            <a id=\"remittance-home-select-all\" class=\"a-link-normal\" href=\"javascript:;\">Select all\n                </a>\n                            <a id=\"remittance-home-deselect-all\" class=\"a-link-normal\" href=\"javascript:;\">Deselect all\n                </a>\n                            <a id=\"remittance-home-export-link\" class=\"a-link-normal\" href=\"javascript:;\">Export to a spreadsheet\n                </a>\n                        </span>\n                    </div>\n                    <hr aria-hidden=\"true\" class=\"a-spacing-top-micro a-divider-normal\"/>\n                    <div class=\"a-row\">\n                        <form id=\"remittanceSearchForm\" method=\"POST\" action=\"/hz/vendor/members/remittance/home\">\n                            <input type='hidden' name='anti-csrftoken-a2z' value='hCO2PTotzaX1SlTL+tgqGL+egE9QPPpHRH5RsZcNqNoWAAAAAGgJ9gUAAAAB'/>\n                            <input type=\"hidden\" id=\"marketplaceIdsInput\" name=\"marketplaceIds\" value=\"A13V1IB3VIYZZH\"/>\n                            <input type=\"hidden\" id=\"vendorCodesInput\" name=\"vendor-codes\" value=\"QT71I,LZ7TO\"/>\n                            <div class=\"a-column a-span3\">\n                                <div class=\"a-row\">\n                                    <span id=\"selected-remittance-count\"></span>\n                                </div>\n                                <h3 class=\"a-spacing-top-base\">Search by\n                    </h3>\n                                <div class=\"a-row a-spacing-top-small\">\n                                    <div id=\"remittance-search-key-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                                        <span class=\"a-dropdown-container\">\n                                            <select name=\"remittance-search-key\" autocomplete=\"off\" role=\"combobox\" id=\"remittance-search-key\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-button-span12 a-declarative\">\n                                                <option class=\"a-prompt\" value=\"\">Payment Date Range</option>\n                                                <option value=\"DATE_RANGE\" selected>Payment Date Range</option>\n                                                <option value=\"PAYMENT_NUMBER\">Payment Number</option>\n                                                <option value=\"INVOICE_NUMBER\">Invoice Number</option>\n                                                <option value=\"AMOUNT_RANGE\">Payment amount</option>\n                                            </select>\n                                            <span tabindex=\"-1\" id=\"remittance-search-key\" class=\"a-button a-button-dropdown a-button-span12\" aria-hidden=\"true\">\n                                                <span class=\"a-button-inner\">\n                                                    <span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\">\n                                                        <span class=\"a-dropdown-prompt\">DATE_RANGE</span>\n                                                    </span>\n                                                    <i class=\"a-icon a-icon-dropdown\"></i>\n                                                </span>\n                                            </span>\n                                        </span>\n                                        <div data-harmonic-error-for=\"remittance-search-key\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                            <div class=\"a-box-inner a-alert-container\">\n                                                <i class=\"a-icon a-icon-alert\"></i>\n                                                <div class=\"a-alert-content\"></div>\n                                            </div>\n                                        </div>\n                                    </div>\n                                    <div id=\"payment-number-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field a-hidden\">\n                                        <input type=\"text\" id=\"payment-number\" placeholder=\"Enter payment number\" name=\"payment-number\" class=\"a-input-text a-span12\"/>\n                                        <div data-harmonic-error-for=\"payment-number\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                            <div class=\"a-box-inner a-alert-container\">\n                                                <i class=\"a-icon a-icon-alert\"></i>\n                                                <div class=\"a-alert-content\"></div>\n                                            </div>\n                                        </div>\n                                    </div>\n                                    <div id=\"invoice-number-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field a-hidden\">\n                                        <input type=\"text\" id=\"invoice-number\" placeholder=\"Enter invoice number\" name=\"invoice-number\" class=\"a-input-text a-span12\"/>\n                                        <div data-harmonic-error-for=\"invoice-number\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                            <div class=\"a-box-inner a-alert-container\">\n                                                <i class=\"a-icon a-icon-alert\"></i>\n                                                <div class=\"a-alert-content\"></div>\n                                            </div>\n                                        </div>\n                                    </div>\n                                    <div class=\"a-row\">\n                                        <span class=\"harmonic-fieldset a-hidden\" id=\"amount-field-set-wrap\">\n                                            <div class=\"a-column a-span6\">\n                                                <div id=\"min-payment-amount-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                                                    <label for=\"min-payment-amount\" id=\"min-payment-amount-text\" class=\"a-form-label\">\n                                                        From<span class=\"a-color-tertiary a-text-normal\">&nbsp;(optional)</span>\n                                                    </label>\n                                                    <input type=\"text\" id=\"min-payment-amount\" name=\"min-payment-amount\" class=\"a-input-text a-span12\"/>\n                                                    <div data-harmonic-error-for=\"min-payment-amount\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                                        <div class=\"a-box-inner a-alert-container\">\n                                                            <i class=\"a-icon a-icon-alert\"></i>\n                                                            <div class=\"a-alert-content\"></div>\n                                                        </div>\n                                                    </div>\n                                                </div>\n                                            </div>\n                                            <div class=\"a-column a-span6 a-span-last\">\n                                                <div id=\"max-payment-amount-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                                                    <label for=\"max-payment-amount\" id=\"max-payment-amount-text\" class=\"a-form-label\">\n                                                        To<span class=\"a-color-tertiary a-text-normal\">&nbsp;(optional)</span>\n                                                    </label>\n                                                    <input type=\"text\" id=\"max-payment-amount\" name=\"max-payment-amount\" class=\"a-input-text a-span12\"/>\n                                                    <div data-harmonic-error-for=\"max-payment-amount\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                                        <div class=\"a-box-inner a-alert-container\">\n                                                            <i class=\"a-icon a-icon-alert\"></i>\n                                                            <div class=\"a-alert-content\"></div>\n                                                        </div>\n                                                    </div>\n                                                </div>\n                                            </div>\n                                        </span>\n                                    </div>\n                                    <span class=\"harmonic-fieldset\" id=\"date-field-set-wrap\">\n                                        <p>\n                                        <div id=\"date-range-option-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                                            <span class=\"a-dropdown-container\">\n                                                <select name=\"date-range-option\" autocomplete=\"off\" role=\"combobox\" id=\"date-range-option\" tabindex=\"0\" data-action=\"a-dropdown-select\" class=\"a-native-dropdown a-button-span12 a-declarative\">\n                                                    <option class=\"a-prompt\" value=\"\">Last 15 days</option>\n                                                    <option value=\"SEVEN_DAYS\">Last 07 days</option>\n                                                    <option value=\"FIFTEEN_DAYS\" selected>Last 15 days</option>\n                                                    <option value=\"THIRTY_DAYS\">Last 30 days</option>\n                                                    <option value=\"SIXTY_DAYS\">Last 60 days</option>\n                                                    <option value=\"NINETY_DAYS\">Last 90 days</option>\n                                                    <option value=\"CUSTOM\">Custom payment date range</option>\n                                                </select>\n                                                <span tabindex=\"-1\" id=\"date-range-option\" class=\"a-button a-button-dropdown a-button-span12\" aria-hidden=\"true\">\n                                                    <span class=\"a-button-inner\">\n                                                        <span class=\"a-button-text a-declarative\" data-action=\"a-dropdown-button\" aria-hidden=\"true\">\n                                                            <span class=\"a-dropdown-prompt\">FIFTEEN_DAYS</span>\n                                                        </span>\n                                                        <i class=\"a-icon a-icon-dropdown\"></i>\n                                                    </span>\n                                                </span>\n                                            </span>\n                                            <div data-harmonic-error-for=\"date-range-option\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                                                <div class=\"a-box-inner a-alert-container\">\n                                                    <i class=\"a-icon a-icon-alert\"></i>\n                                                    <div class=\"a-alert-content\"></div>\n                                                </div>\n                                            </div>\n                                        </div>\n</p></span>\n<div class=\"a-row\">\n    <span class=\"harmonic-fieldset\" id=\"date-field-set-wrap\">\n        <div class=\"a-column a-span6\">\n            <div id=\"from-date-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                <label for=\"from-date\" id=\"from-date-text\" class=\"a-form-label\">From</label>\n                <div id=\"from-date-calendar\" data-a-cal-attributes=\"{&quot;selectedDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:9},&quot;minDate&quot;:{&quot;month&quot;:1,&quot;year&quot;:1990,&quot;day&quot;:1},&quot;maxDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24}}\" data-a-cal-renderer-instance=\"harmonic-aui-calendar-renderer-d/m/yyyy\" data-a-cal-input=\"true\" class=\"a-cal-calendar-container a-cal-static\">\n                    <div class=\"a-cal-dropdown-container\">\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-month a-declarative\">\n                            <option value=\"\">Month</option>\n                            <option value=\"1\">1</option>\n                            <option value=\"2\">2</option>\n                            <option value=\"3\">3</option>\n                            <option value=\"4\">4</option>\n                            <option value=\"5\">5</option>\n                            <option value=\"6\">6</option>\n                            <option value=\"7\">7</option>\n                            <option value=\"8\">8</option>\n                            <option value=\"9\">9</option>\n                            <option value=\"10\">10</option>\n                            <option value=\"11\">11</option>\n                            <option value=\"12\">12</option>\n                        </select>\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-day a-declarative\">\n                            <option value=\"\">Day</option>\n                            <option value=\"1\">1</option>\n                            <option value=\"2\">2</option>\n                            <option value=\"3\">3</option>\n                            <option value=\"4\">4</option>\n                            <option value=\"5\">5</option>\n                            <option value=\"6\">6</option>\n                            <option value=\"7\">7</option>\n                            <option value=\"8\">8</option>\n                            <option value=\"9\">9</option>\n                            <option value=\"10\">10</option>\n                            <option value=\"11\">11</option>\n                            <option value=\"12\">12</option>\n                            <option value=\"13\">13</option>\n                            <option value=\"14\">14</option>\n                            <option value=\"15\">15</option>\n                            <option value=\"16\">16</option>\n                            <option value=\"17\">17</option>\n                            <option value=\"18\">18</option>\n                            <option value=\"19\">19</option>\n                            <option value=\"20\">20</option>\n                            <option value=\"21\">21</option>\n                            <option value=\"22\">22</option>\n                            <option value=\"23\">23</option>\n                            <option value=\"24\">24</option>\n                            <option value=\"25\">25</option>\n                            <option value=\"26\">26</option>\n                            <option value=\"27\">27</option>\n                            <option value=\"28\">28</option>\n                            <option value=\"29\">29</option>\n                            <option value=\"30\">30</option>\n                            <option value=\"31\">31</option>\n                        </select>\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-year a-declarative\">\n                            <option value=\"\">Year</option>\n                            <option value=\"1900\">1900</option>\n                            <option value=\"1901\">1901</option>\n                            <option value=\"1902\">1902</option>\n                            <option value=\"1903\">1903</option>\n                            <option value=\"1904\">1904</option>\n                            <option value=\"1905\">1905</option>\n                            <option value=\"1906\">1906</option>\n                            <option value=\"1907\">1907</option>\n                            <option value=\"1908\">1908</option>\n                            <option value=\"1909\">1909</option>\n                            <option value=\"1910\">1910</option>\n                            <option value=\"1911\">1911</option>\n                            <option value=\"1912\">1912</option>\n                            <option value=\"1913\">1913</option>\n                            <option value=\"1914\">1914</option>\n                            <option value=\"1915\">1915</option>\n                            <option value=\"1916\">1916</option>\n                            <option value=\"1917\">1917</option>\n                            <option value=\"1918\">1918</option>\n                            <option value=\"1919\">1919</option>\n                            <option value=\"1920\">1920</option>\n                            <option value=\"1921\">1921</option>\n                            <option value=\"1922\">1922</option>\n                            <option value=\"1923\">1923</option>\n                            <option value=\"1924\">1924</option>\n                            <option value=\"1925\">1925</option>\n                            <option value=\"1926\">1926</option>\n                            <option value=\"1927\">1927</option>\n                            <option value=\"1928\">1928</option>\n                            <option value=\"1929\">1929</option>\n                            <option value=\"1930\">1930</option>\n                            <option value=\"1931\">1931</option>\n                            <option value=\"1932\">1932</option>\n                            <option value=\"1933\">1933</option>\n                            <option value=\"1934\">1934</option>\n                            <option value=\"1935\">1935</option>\n                            <option value=\"1936\">1936</option>\n                            <option value=\"1937\">1937</option>\n                            <option value=\"1938\">1938</option>\n                            <option value=\"1939\">1939</option>\n                            <option value=\"1940\">1940</option>\n                            <option value=\"1941\">1941</option>\n                            <option value=\"1942\">1942</option>\n                            <option value=\"1943\">1943</option>\n                            <option value=\"1944\">1944</option>\n                            <option value=\"1945\">1945</option>\n                            <option value=\"1946\">1946</option>\n                            <option value=\"1947\">1947</option>\n                            <option value=\"1948\">1948</option>\n                            <option value=\"1949\">1949</option>\n                            <option value=\"1950\">1950</option>\n                            <option value=\"1951\">1951</option>\n                            <option value=\"1952\">1952</option>\n                            <option value=\"1953\">1953</option>\n                            <option value=\"1954\">1954</option>\n                            <option value=\"1955\">1955</option>\n                            <option value=\"1956\">1956</option>\n                            <option value=\"1957\">1957</option>\n                            <option value=\"1958\">1958</option>\n                            <option value=\"1959\">1959</option>\n                            <option value=\"1960\">1960</option>\n                            <option value=\"1961\">1961</option>\n                            <option value=\"1962\">1962</option>\n                            <option value=\"1963\">1963</option>\n                            <option value=\"1964\">1964</option>\n                            <option value=\"1965\">1965</option>\n                            <option value=\"1966\">1966</option>\n                            <option value=\"1967\">1967</option>\n                            <option value=\"1968\">1968</option>\n                            <option value=\"1969\">1969</option>\n                            <option value=\"1970\">1970</option>\n                            <option value=\"1971\">1971</option>\n                            <option value=\"1972\">1972</option>\n                            <option value=\"1973\">1973</option>\n                            <option value=\"1974\">1974</option>\n                            <option value=\"1975\">1975</option>\n                            <option value=\"1976\">1976</option>\n                            <option value=\"1977\">1977</option>\n                            <option value=\"1978\">1978</option>\n                            <option value=\"1979\">1979</option>\n                            <option value=\"1980\">1980</option>\n                            <option value=\"1981\">1981</option>\n                            <option value=\"1982\">1982</option>\n                            <option value=\"1983\">1983</option>\n                            <option value=\"1984\">1984</option>\n                            <option value=\"1985\">1985</option>\n                            <option value=\"1986\">1986</option>\n                            <option value=\"1987\">1987</option>\n                            <option value=\"1988\">1988</option>\n                            <option value=\"1989\">1989</option>\n                            <option value=\"1990\">1990</option>\n                            <option value=\"1991\">1991</option>\n                            <option value=\"1992\">1992</option>\n                            <option value=\"1993\">1993</option>\n                            <option value=\"1994\">1994</option>\n                            <option value=\"1995\">1995</option>\n                            <option value=\"1996\">1996</option>\n                            <option value=\"1997\">1997</option>\n                            <option value=\"1998\">1998</option>\n                            <option value=\"1999\">1999</option>\n                            <option value=\"2000\">2000</option>\n                            <option value=\"2001\">2001</option>\n                            <option value=\"2002\">2002</option>\n                            <option value=\"2003\">2003</option>\n                            <option value=\"2004\">2004</option>\n                            <option value=\"2005\">2005</option>\n                            <option value=\"2006\">2006</option>\n                            <option value=\"2007\">2007</option>\n                            <option value=\"2008\">2008</option>\n                            <option value=\"2009\">2009</option>\n                            <option value=\"2010\">2010</option>\n                            <option value=\"2011\">2011</option>\n                            <option value=\"2012\">2012</option>\n                            <option value=\"2013\">2013</option>\n                            <option value=\"2014\">2014</option>\n                            <option value=\"2015\">2015</option>\n                            <option value=\"2016\">2016</option>\n                            <option value=\"2017\">2017</option>\n                            <option value=\"2018\">2018</option>\n                            <option value=\"2019\">2019</option>\n                            <option value=\"2020\">2020</option>\n                            <option value=\"2021\">2021</option>\n                            <option value=\"2022\">2022</option>\n                            <option value=\"2023\">2023</option>\n                            <option value=\"2024\">2024</option>\n                            <option value=\"2025\">2025</option>\n                            <option value=\"2026\">2026</option>\n                            <option value=\"2027\">2027</option>\n                            <option value=\"2028\">2028</option>\n                            <option value=\"2029\">2029</option>\n                            <option value=\"2030\">2030</option>\n                            <option value=\"2031\">2031</option>\n                            <option value=\"2032\">2032</option>\n                            <option value=\"2033\">2033</option>\n                            <option value=\"2034\">2034</option>\n                            <option value=\"2035\">2035</option>\n                            <option value=\"2036\">2036</option>\n                            <option value=\"2037\">2037</option>\n                            <option value=\"2038\">2038</option>\n                            <option value=\"2039\">2039</option>\n                        </select>\n                    </div>\n                    <div class=\"a-cal-date-range-group a-cal-date-range-group-vertical\">\n                        <div class=\"a-cal-date-range-wrapper\">\n                            <div class=\"a-input-text-addon-group-wrapper\">\n                                <div class=\"a-input-text-addon-group a-width-base\" role=\"presentation\">\n                                    <span class=\"a-input-text-addon a-cal-icon a-declarative\" role=\"button\" tabindex=\"0\" data-action=\"a-cal-icon\">\n                                        <i class=\"a-icon a-icon-calendar\"></i>\n                                    </span>\n                                    <input type=\"text\" maxlength=\"10\" data-action=\"a-cal-input\" data-input=\"start\" class=\"a-input-text a-cal-input a-declarative\" id=\"from-date\"/>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n                <script>\n                    //FIXME: remove this horrible hack once AUI update is complete with Calendar improvements\n                    (function() {\n                        var calOuter = document.getElementById('from-date-wrap');\n                        var calInput = calOuter.getElementsByClassName('a-cal-input')[0]\n                        calInput.name = 'from-date';\n                        if (calInput.value === '') {\n                            calInput.value = '9/4/2025';\n                        }\n                    }());\n                </script>\n                <div data-harmonic-error-for=\"from-date\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                    <div class=\"a-box-inner a-alert-container\">\n                        <i class=\"a-icon a-icon-alert\"></i>\n                        <div class=\"a-alert-content\"></div>\n                    </div>\n                </div>\n            </div>\n        </div>\n        <div class=\"a-column a-span6 a-span-last\">\n            <div id=\"to-date-wrap\" class=\"a-row a-spacing-large a-grid-vertical-align a-grid-center harmonic-field\">\n                <label for=\"to-date\" id=\"to-date-text\" class=\"a-form-label\">To</label>\n                <div id=\"to-date-calendar\" data-a-cal-attributes=\"{&quot;selectedDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24},&quot;minDate&quot;:{&quot;month&quot;:1,&quot;year&quot;:1990,&quot;day&quot;:1},&quot;maxDate&quot;:{&quot;month&quot;:4,&quot;year&quot;:2025,&quot;day&quot;:24}}\" data-a-cal-renderer-instance=\"harmonic-aui-calendar-renderer-d/m/yyyy\" data-a-cal-input=\"true\" class=\"a-cal-calendar-container a-cal-static\">\n                    <div class=\"a-cal-dropdown-container\">\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-month a-declarative\">\n                            <option value=\"\">Month</option>\n                            <option value=\"1\">1</option>\n                            <option value=\"2\">2</option>\n                            <option value=\"3\">3</option>\n                            <option value=\"4\">4</option>\n                            <option value=\"5\">5</option>\n                            <option value=\"6\">6</option>\n                            <option value=\"7\">7</option>\n                            <option value=\"8\">8</option>\n                            <option value=\"9\">9</option>\n                            <option value=\"10\">10</option>\n                            <option value=\"11\">11</option>\n                            <option value=\"12\">12</option>\n                        </select>\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-day a-declarative\">\n                            <option value=\"\">Day</option>\n                            <option value=\"1\">1</option>\n                            <option value=\"2\">2</option>\n                            <option value=\"3\">3</option>\n                            <option value=\"4\">4</option>\n                            <option value=\"5\">5</option>\n                            <option value=\"6\">6</option>\n                            <option value=\"7\">7</option>\n                            <option value=\"8\">8</option>\n                            <option value=\"9\">9</option>\n                            <option value=\"10\">10</option>\n                            <option value=\"11\">11</option>\n                            <option value=\"12\">12</option>\n                            <option value=\"13\">13</option>\n                            <option value=\"14\">14</option>\n                            <option value=\"15\">15</option>\n                            <option value=\"16\">16</option>\n                            <option value=\"17\">17</option>\n                            <option value=\"18\">18</option>\n                            <option value=\"19\">19</option>\n                            <option value=\"20\">20</option>\n                            <option value=\"21\">21</option>\n                            <option value=\"22\">22</option>\n                            <option value=\"23\">23</option>\n                            <option value=\"24\">24</option>\n                            <option value=\"25\">25</option>\n                            <option value=\"26\">26</option>\n                            <option value=\"27\">27</option>\n                            <option value=\"28\">28</option>\n                            <option value=\"29\">29</option>\n                            <option value=\"30\">30</option>\n                            <option value=\"31\">31</option>\n                        </select>\n                        <select data-action=\"a-cal-dropdown-select\" class=\"a-cal-select-year a-declarative\">\n                            <option value=\"\">Year</option>\n                            <option value=\"1900\">1900</option>\n                            <option value=\"1901\">1901</option>\n                            <option value=\"1902\">1902</option>\n                            <option value=\"1903\">1903</option>\n                            <option value=\"1904\">1904</option>\n                            <option value=\"1905\">1905</option>\n                            <option value=\"1906\">1906</option>\n                            <option value=\"1907\">1907</option>\n                            <option value=\"1908\">1908</option>\n                            <option value=\"1909\">1909</option>\n                            <option value=\"1910\">1910</option>\n                            <option value=\"1911\">1911</option>\n                            <option value=\"1912\">1912</option>\n                            <option value=\"1913\">1913</option>\n                            <option value=\"1914\">1914</option>\n                            <option value=\"1915\">1915</option>\n                            <option value=\"1916\">1916</option>\n                            <option value=\"1917\">1917</option>\n                            <option value=\"1918\">1918</option>\n                            <option value=\"1919\">1919</option>\n                            <option value=\"1920\">1920</option>\n                            <option value=\"1921\">1921</option>\n                            <option value=\"1922\">1922</option>\n                            <option value=\"1923\">1923</option>\n                            <option value=\"1924\">1924</option>\n                            <option value=\"1925\">1925</option>\n                            <option value=\"1926\">1926</option>\n                            <option value=\"1927\">1927</option>\n                            <option value=\"1928\">1928</option>\n                            <option value=\"1929\">1929</option>\n                            <option value=\"1930\">1930</option>\n                            <option value=\"1931\">1931</option>\n                            <option value=\"1932\">1932</option>\n                            <option value=\"1933\">1933</option>\n                            <option value=\"1934\">1934</option>\n                            <option value=\"1935\">1935</option>\n                            <option value=\"1936\">1936</option>\n                            <option value=\"1937\">1937</option>\n                            <option value=\"1938\">1938</option>\n                            <option value=\"1939\">1939</option>\n                            <option value=\"1940\">1940</option>\n                            <option value=\"1941\">1941</option>\n                            <option value=\"1942\">1942</option>\n                            <option value=\"1943\">1943</option>\n                            <option value=\"1944\">1944</option>\n                            <option value=\"1945\">1945</option>\n                            <option value=\"1946\">1946</option>\n                            <option value=\"1947\">1947</option>\n                            <option value=\"1948\">1948</option>\n                            <option value=\"1949\">1949</option>\n                            <option value=\"1950\">1950</option>\n                            <option value=\"1951\">1951</option>\n                            <option value=\"1952\">1952</option>\n                            <option value=\"1953\">1953</option>\n                            <option value=\"1954\">1954</option>\n                            <option value=\"1955\">1955</option>\n                            <option value=\"1956\">1956</option>\n                            <option value=\"1957\">1957</option>\n                            <option value=\"1958\">1958</option>\n                            <option value=\"1959\">1959</option>\n                            <option value=\"1960\">1960</option>\n                            <option value=\"1961\">1961</option>\n                            <option value=\"1962\">1962</option>\n                            <option value=\"1963\">1963</option>\n                            <option value=\"1964\">1964</option>\n                            <option value=\"1965\">1965</option>\n                            <option value=\"1966\">1966</option>\n                            <option value=\"1967\">1967</option>\n                            <option value=\"1968\">1968</option>\n                            <option value=\"1969\">1969</option>\n                            <option value=\"1970\">1970</option>\n                            <option value=\"1971\">1971</option>\n                            <option value=\"1972\">1972</option>\n                            <option value=\"1973\">1973</option>\n                            <option value=\"1974\">1974</option>\n                            <option value=\"1975\">1975</option>\n                            <option value=\"1976\">1976</option>\n                            <option value=\"1977\">1977</option>\n                            <option value=\"1978\">1978</option>\n                            <option value=\"1979\">1979</option>\n                            <option value=\"1980\">1980</option>\n                            <option value=\"1981\">1981</option>\n                            <option value=\"1982\">1982</option>\n                            <option value=\"1983\">1983</option>\n                            <option value=\"1984\">1984</option>\n                            <option value=\"1985\">1985</option>\n                            <option value=\"1986\">1986</option>\n                            <option value=\"1987\">1987</option>\n                            <option value=\"1988\">1988</option>\n                            <option value=\"1989\">1989</option>\n                            <option value=\"1990\">1990</option>\n                            <option value=\"1991\">1991</option>\n                            <option value=\"1992\">1992</option>\n                            <option value=\"1993\">1993</option>\n                            <option value=\"1994\">1994</option>\n                            <option value=\"1995\">1995</option>\n                            <option value=\"1996\">1996</option>\n                            <option value=\"1997\">1997</option>\n                            <option value=\"1998\">1998</option>\n                            <option value=\"1999\">1999</option>\n                            <option value=\"2000\">2000</option>\n                            <option value=\"2001\">2001</option>\n                            <option value=\"2002\">2002</option>\n                            <option value=\"2003\">2003</option>\n                            <option value=\"2004\">2004</option>\n                            <option value=\"2005\">2005</option>\n                            <option value=\"2006\">2006</option>\n                            <option value=\"2007\">2007</option>\n                            <option value=\"2008\">2008</option>\n                            <option value=\"2009\">2009</option>\n                            <option value=\"2010\">2010</option>\n                            <option value=\"2011\">2011</option>\n                            <option value=\"2012\">2012</option>\n                            <option value=\"2013\">2013</option>\n                            <option value=\"2014\">2014</option>\n                            <option value=\"2015\">2015</option>\n                            <option value=\"2016\">2016</option>\n                            <option value=\"2017\">2017</option>\n                            <option value=\"2018\">2018</option>\n                            <option value=\"2019\">2019</option>\n                            <option value=\"2020\">2020</option>\n                            <option value=\"2021\">2021</option>\n                            <option value=\"2022\">2022</option>\n                            <option value=\"2023\">2023</option>\n                            <option value=\"2024\">2024</option>\n                            <option value=\"2025\">2025</option>\n                            <option value=\"2026\">2026</option>\n                            <option value=\"2027\">2027</option>\n                            <option value=\"2028\">2028</option>\n                            <option value=\"2029\">2029</option>\n                            <option value=\"2030\">2030</option>\n                            <option value=\"2031\">2031</option>\n                            <option value=\"2032\">2032</option>\n                            <option value=\"2033\">2033</option>\n                            <option value=\"2034\">2034</option>\n                            <option value=\"2035\">2035</option>\n                            <option value=\"2036\">2036</option>\n                            <option value=\"2037\">2037</option>\n                            <option value=\"2038\">2038</option>\n                            <option value=\"2039\">2039</option>\n                        </select>\n                    </div>\n                    <div class=\"a-cal-date-range-group a-cal-date-range-group-vertical\">\n                        <div class=\"a-cal-date-range-wrapper\">\n                            <div class=\"a-input-text-addon-group-wrapper\">\n                                <div class=\"a-input-text-addon-group a-width-base\" role=\"presentation\">\n                                    <span class=\"a-input-text-addon a-cal-icon a-declarative\" role=\"button\" tabindex=\"0\" data-action=\"a-cal-icon\">\n                                        <i class=\"a-icon a-icon-calendar\"></i>\n                                    </span>\n                                    <input type=\"text\" maxlength=\"10\" data-action=\"a-cal-input\" data-input=\"start\" class=\"a-input-text a-cal-input a-declarative\" id=\"to-date\"/>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n                <script>\n                    //FIXME: remove this horrible hack once AUI update is complete with Calendar improvements\n                    (function() {\n                        var calOuter = document.getElementById('to-date-wrap');\n                        var calInput = calOuter.getElementsByClassName('a-cal-input')[0]\n                        calInput.name = 'to-date';\n                        if (calInput.value === '') {\n                            calInput.value = '24/4/2025';\n                        }\n                    }());\n                </script>\n                <div data-harmonic-error-for=\"to-date\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n                    <div class=\"a-box-inner a-alert-container\">\n                        <i class=\"a-icon a-icon-alert\"></i>\n                        <div class=\"a-alert-content\"></div>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </span>\n</div>\n<script id=\"remittanceSearchForm-harmonic-fields-data\" type=\"application/json\">\n    [\n        {\n            \"id\": \"remittance-search-key\",\n            \"labelText\": null,\n            \"labelTextIsLiteral\": false,\n            \"instruction\": null,\n            \"instructionIsLiteral\": false,\n            \"contextualHelp\": null,\n            \"contextualHelpIsLiteral\": false,\n            \"visibilityCondition\": null,\n            \"properties\": {\n            },\n            \"multiValued\": false,\n            \"nullText\": null,\n            \"type\": \"selection\",\n            \"placeholder\": null,\n            \"placeholderIsLiteral\": false,\n            \"formattedValue\": \"Payment Date Range\",\n            \"displayAsValid\": true,\n            \"settings\": {\n                \"requireEntry\": false,\n                \"options\": {\n                    \"DATE_RANGE\": \"Payment Date Range\",\n                    \"PAYMENT_NUMBER\": \"Payment Number\",\n                    \"INVOICE_NUMBER\": \"Invoice Number\",\n                    \"AMOUNT_RANGE\": \"Payment amount\"\n                }\n            },\n            \"itemType\": \"Field\",\n            \"fieldValid\": true,\n            \"errorMessageString\": null,\n            \"errorReplacements\": null,\n            \"fieldRequired\": false,\n            \"value\": \"DATE_RANGE\",\n            \"labelTextLiteral\": false\n        },\n        {\n            \"id\": \"payment-number\",\n            \"labelText\": null,\n            \"labelTextIsLiteral\": false,\n            \"instruction\": null,\n            \"instructionIsLiteral\": false,\n            \"contextualHelp\": null,\n            \"contextualHelpIsLiteral\": false,\n            \"visibilityCondition\": {\n                \"id\": \"214644\",\n                \"checkValues\": [\n                    \"PAYMENT_NUMBER\"\n                ],\n                \"fieldId\": \"remittance-search-key\",\n                \"true\": false,\n                \"type\": \"FieldValueCheckCondition\"\n            },\n            \"properties\": {\n            },\n            \"multiValued\": false,\n            \"nullText\": null,\n            \"type\": \"text\",\n            \"placeholder\": \"Enter payment number\",\n            \"placeholderIsLiteral\": true,\n            \"formattedValue\": \"\",\n            \"displayAsValid\": true,\n            \"desanitizedValue\": \"\",\n            \"itemType\": \"Field\",\n            \"fieldValid\": false,\n            \"errorMessageString\": {\n                \"string\": \"vft-harmonic-base-validation-require-entry-error\",\n                \"literal\": false\n            },\n            \"errorReplacements\": {\n        },\n        \"fieldRequired\": true,\n        \"value\": \"\",\n        \"labelTextLiteral\": false,\n        \"settings\": {\n            \"requireEntry\": true,\n            \"maxLength\": 20,\n            \"minLength\": null\n        }\n    },\n    {\n        \"id\": \"invoice-number\",\n        \"labelText\": null,\n        \"labelTextIsLiteral\": false,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": {\n            \"id\": \"214645\",\n            \"checkValues\": [\n                \"INVOICE_NUMBER\"\n            ],\n            \"fieldId\": \"remittance-search-key\",\n            \"true\": false,\n            \"type\": \"FieldValueCheckCondition\"\n        },\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"text\",\n        \"placeholder\": \"Enter invoice number\",\n        \"placeholderIsLiteral\": true,\n        \"formattedValue\": \"\",\n        \"displayAsValid\": true,\n        \"desanitizedValue\": \"\",\n        \"itemType\": \"Field\",\n        \"fieldValid\": false,\n        \"errorMessageString\": {\n            \"string\": \"vft-harmonic-base-validation-require-entry-error\",\n            \"literal\": false\n        },\n        \"errorReplacements\": {\n        },\n        \"fieldRequired\": true,\n        \"value\": \"\",\n        \"labelTextLiteral\": false,\n        \"settings\": {\n            \"requireEntry\": true,\n            \"maxLength\": 50,\n            \"minLength\": null\n        }\n    },\n    {\n        \"id\": \"min-payment-amount\",\n        \"labelText\": \"From\",\n        \"labelTextIsLiteral\": true,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": null,\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"number\",\n        \"placeholder\": null,\n        \"placeholderIsLiteral\": false,\n        \"formattedValue\": \"\",\n        \"displayAsValid\": true,\n        \"endpoint\": \"USER\",\n        \"value\": null,\n        \"itemType\": \"Field\",\n        \"fieldValid\": true,\n        \"errorMessageString\": null,\n        \"errorReplacements\": null,\n        \"fieldRequired\": false,\n        \"labelTextLiteral\": true,\n        \"locale\": {\n            \"country\": \"GB\",\n            \"language\": \"en\",\n            \"groupingSeparator\": \",\",\n            \"decimalSeparator\": \".\"\n        },\n        \"settings\": {\n            \"decimals\": 2,\n            \"percentage\": false,\n            \"requireEntry\": false,\n            \"requireInteger\": false,\n            \"requireNegative\": false,\n            \"requirePositive\": true,\n            \"maxValue\": 1.7976931348623157E308\n        }\n    },\n    {\n        \"id\": \"max-payment-amount\",\n        \"labelText\": \"To\",\n        \"labelTextIsLiteral\": true,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": null,\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"number\",\n        \"placeholder\": null,\n        \"placeholderIsLiteral\": false,\n        \"formattedValue\": \"\",\n        \"displayAsValid\": true,\n        \"endpoint\": \"USER\",\n        \"value\": null,\n        \"itemType\": \"Field\",\n        \"fieldValid\": true,\n        \"errorMessageString\": null,\n        \"errorReplacements\": null,\n        \"fieldRequired\": false,\n        \"labelTextLiteral\": true,\n        \"locale\": {\n            \"country\": \"GB\",\n            \"language\": \"en\",\n            \"groupingSeparator\": \",\",\n            \"decimalSeparator\": \".\"\n        },\n        \"settings\": {\n            \"decimals\": 2,\n            \"percentage\": false,\n            \"requireEntry\": false,\n            \"requireInteger\": false,\n            \"requireNegative\": false,\n            \"requirePositive\": true,\n            \"maxValue\": 1.7976931348623157E308\n        }\n    },\n    {\n        \"id\": \"date-range-option\",\n        \"labelText\": null,\n        \"labelTextIsLiteral\": false,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": null,\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"selection\",\n        \"placeholder\": null,\n        \"placeholderIsLiteral\": false,\n        \"formattedValue\": \"Last 15 days\",\n        \"displayAsValid\": true,\n        \"settings\": {\n            \"requireEntry\": false,\n            \"options\": {\n                \"SEVEN_DAYS\": \"Last 07 days\",\n                \"FIFTEEN_DAYS\": \"Last 15 days\",\n                \"THIRTY_DAYS\": \"Last 30 days\",\n                \"SIXTY_DAYS\": \"Last 60 days\",\n                \"NINETY_DAYS\": \"Last 90 days\",\n                \"CUSTOM\": \"Custom payment date range\"\n            }\n        },\n        \"itemType\": \"Field\",\n        \"fieldValid\": true,\n        \"errorMessageString\": null,\n        \"errorReplacements\": null,\n        \"fieldRequired\": false,\n        \"value\": \"FIFTEEN_DAYS\",\n        \"labelTextLiteral\": false\n    },\n    {\n        \"id\": \"from-date\",\n        \"labelText\": \"From\",\n        \"labelTextIsLiteral\": true,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": null,\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"date\",\n        \"placeholder\": null,\n        \"placeholderIsLiteral\": false,\n        \"formattedValue\": \"9/4/2025\",\n        \"displayAsValid\": true,\n        \"endpoint\": \"USER\",\n        \"value\": [\n            2025,\n            4,\n            9\n        ],\n        \"itemType\": \"Field\",\n        \"fieldValid\": true,\n        \"errorMessageString\": null,\n        \"errorReplacements\": null,\n        \"fieldRequired\": true,\n        \"labelTextLiteral\": true,\n        \"settings\": {\n            \"requireEntry\": true,\n            \"requirePast\": false,\n            \"requireFuture\": false,\n            \"maxValue\": [\n                2025,\n                4,\n                24\n            ],\n            \"minValue\": [\n                1990,\n                1,\n                1\n            ]\n        },\n        \"formatPattern\": \"d/m/yyyy\"\n    },\n    {\n        \"id\": \"to-date\",\n        \"labelText\": \"To\",\n        \"labelTextIsLiteral\": true,\n        \"instruction\": null,\n        \"instructionIsLiteral\": false,\n        \"contextualHelp\": null,\n        \"contextualHelpIsLiteral\": false,\n        \"visibilityCondition\": null,\n        \"properties\": {\n        },\n        \"multiValued\": false,\n        \"nullText\": null,\n        \"type\": \"date\",\n        \"placeholder\": null,\n        \"placeholderIsLiteral\": false,\n        \"formattedValue\": \"24/4/2025\",\n        \"displayAsValid\": true,\n        \"endpoint\": \"USER\",\n        \"value\": [\n            2025,\n            4,\n            24\n        ],\n        \"itemType\": \"Field\",\n        \"fieldValid\": true,\n        \"errorMessageString\": null,\n        \"errorReplacements\": null,\n        \"fieldRequired\": true,\n        \"labelTextLiteral\": true,\n        \"settings\": {\n            \"requireEntry\": true,\n            \"requirePast\": false,\n            \"requireFuture\": false,\n            \"maxValue\": [\n                2025,\n                4,\n                24\n            ],\n            \"minValue\": [\n                1990,\n                1,\n                1\n            ]\n        },\n        \"formatPattern\": \"d/m/yyyy\"\n    }\n]</script>\n<script id=\"remittanceSearchForm-harmonic-init-script\">\n    P.when('A', 'harmonic').execute(function(A, harmonic) {\n        try {\n            var fieldDataJson = A.$('#remittanceSearchForm-harmonic-fields-data').html();\n            var fieldData = JSON.parse(fieldDataJson);\n\n            harmonic('#remittanceSearchForm', {\n                formValidatorModuleName: 'remittance-search-form-validator',\n                displayAsValid: true,\n                currencyFormats: [],\n                conditions: [{\n                    \"id\": \"214644\",\n                    \"checkValues\": [\"PAYMENT_NUMBER\"],\n                    \"fieldId\": \"remittance-search-key\",\n                    \"true\": false,\n                    \"type\": \"FieldValueCheckCondition\"\n                }, {\n                    \"id\": \"214645\",\n                    \"checkValues\": [\"INVOICE_NUMBER\"],\n                    \"fieldId\": \"remittance-search-key\",\n                    \"true\": false,\n                    \"type\": \"FieldValueCheckCondition\"\n                }, {\n                    \"id\": \"214646\",\n                    \"checkValues\": [\"AMOUNT_RANGE\"],\n                    \"fieldId\": \"remittance-search-key\",\n                    \"true\": false,\n                    \"type\": \"FieldValueCheckCondition\"\n                }, {\n                    \"id\": \"214647\",\n                    \"checkValues\": [\"DATE_RANGE\", \"AMOUNT_RANGE\"],\n                    \"fieldId\": \"remittance-search-key\",\n                    \"true\": true,\n                    \"type\": \"FieldValueCheckCondition\"\n                }],\n                structure: [{\n                    \"itemType\": \"Field\",\n                    \"id\": \"remittance-search-key\"\n                }, {\n                    \"itemType\": \"Field\",\n                    \"visibilityConditionId\": \"214644\",\n                    \"id\": \"payment-number\"\n                }, {\n                    \"itemType\": \"Field\",\n                    \"visibilityConditionId\": \"214645\",\n                    \"id\": \"invoice-number\"\n                }, {\n                    \"itemType\": \"FieldSet\",\n                    \"visibilityConditionId\": \"214646\",\n                    \"id\": \"amount-field-set\",\n                    \"items\": [{\n                        \"itemType\": \"Field\",\n                        \"id\": \"min-payment-amount\"\n                    }, {\n                        \"itemType\": \"Field\",\n                        \"id\": \"max-payment-amount\"\n                    }]\n                }, {\n                    \"itemType\": \"FieldSet\",\n                    \"visibilityConditionId\": \"214647\",\n                    \"id\": \"date-field-set\",\n                    \"items\": [{\n                        \"itemType\": \"Field\",\n                        \"id\": \"date-range-option\"\n                    }, {\n                        \"itemType\": \"Field\",\n                        \"id\": \"from-date\"\n                    }, {\n                        \"itemType\": \"Field\",\n                        \"id\": \"to-date\"\n                    }]\n                }]\n            }, fieldData);\n        } catch (e) {\n            P.when('vft-devlogger').execute(function(devLogger) {\n                devLogger.log('Error creating harmonic form #remittanceSearchForm');\n                devLogger.log(e);\n            });\n        }\n    });\n</script>\n<script>\n    P.when('vft-stringmaps').execute(function(StringMaps) {\n        var map = {};\n\n        map['vft-harmonic-base-formatting-error'] = 'The value could not be formatted.';\n        map['vft-harmonic-base-operation-error'] = 'The value entered caused an error. Please enter a different value.';\n        map['vft-harmonic-base-parsing-error'] = '\"\" is not a valid entry.';\n        map['vft-harmonic-base-validation-error'] = '\"\" is not a valid entry.';\n        map['vft-harmonic-base-validation-require-entry-error'] = 'This is required.';\n        map['vft-harmonic-date-parsing-error'] = '\"\" is not a valid date format.';\n        map['vft-harmonic-base-field-error'] = 'The field is invalid.';\n        map['vft-harmonic-date-validation-max-value-error'] = '\"\" comes after the maximum date . Please enter a valid date.';\n        map['vft-harmonic-date-validation-min-value-error'] = '\"\" comes before the minimum date . Please enter a valid date.\n';\n        map['vft-harmonic-date-validation-require-future-error'] = 'Enter a date in the future.';\n        map['vft-harmonic-date-validation-require-past-error'] = 'Enter a date in the past.';\n        map['vft-harmonic-date-validation-type-error'] = 'Enter a valid date.';\n        map['vft-harmonic-form-invalid-error'] = 'Some entries aren\u2019t valid. Please fix the errors and then submit the form.';\n        map['vft-harmonic-general-error'] = 'There was a problem processing the form. Please try again.';\n        map['vft-harmonic-money-parsing-error'] = '\"\" is not a valid monetary amount.';\n        map['vft-harmonic-money-validation-max-value-error'] = 'The amount must be less than . \n';\n        map['vft-harmonic-money-validation-min-value-error'] = 'The amount entered is too small. It must be at least . \n';\n        map['vft-harmonic-money-validation-require-negative-error'] = 'Enter a negative amount.';\n        map['vft-harmonic-money-validation-require-positive-error'] = 'Enter a positive amount.';\n        map['vft-harmonic-number-parsing-error'] = '\"\" is not a valid number.';\n        map['vft-harmonic-number-validation-max-value-error'] = 'The number entered is too large. It must be no more than .';\n        map['vft-harmonic-number-validation-min-value-error'] = 'This must be at least .';\n        map['vft-harmonic-number-validation-require-integer-error'] = 'Enter an integer.';\n        map['vft-harmonic-number-validation-require-negative-error'] = 'Enter a negative number.';\n        map['vft-harmonic-number-validation-require-positive-error'] = 'Enter a positive number.';\n        map['vft-harmonic-number-validation-type-error'] = 'Enter a number.';\n        map['vft-harmonic-selection-operation-no-multiples-error'] = 'Select one item.';\n        map['vft-harmonic-selection-validation-not-found-error'] = 'Please select a valid value.';\n        map['vft-harmonic-multiselect-validation-not-found-error'] = 'Please select a valid value.';\n        map['vft-harmonic-text-validation-max-length-error'] = 'The text entered is too long. It must be no more than  characters.';\n        map['vft-harmonic-text-validation-min-length-error'] = 'The text entered is not long enough. It needs to be at least  characters.';\n        map['vft-harmonic-text-validation-type-error'] = 'The value  is not a string.';\n        StringMaps.registerMap('harmonic-Strings', map);\n    });\n</script>\n<span id=\"remittanceSearchForm-submit-aui-button\" class=\"a-button a-button-primary\">\n    <span class=\"a-button-inner\">\n        <input id=\"remittanceSearchForm-submit\" class=\"a-button-input\" type=\"submit\" aria-labelledby=\"remittanceSearchForm-submit-aui-button-announce\"/>\n        <span id=\"remittanceSearchForm-submit-aui-button-announce\" class=\"a-button-text\" aria-hidden=\"true\">Search</span>\n    </span>\n</span>\n<div data-harmonic-form-error=\"true\" class=\"a-box a-alert-inline a-alert-inline-error harmonic-error-hidden harmonic-error\" role=\"alert\">\n    <div class=\"a-box-inner a-alert-container\">\n        <i class=\"a-icon a-icon-alert\"></i>\n        <div class=\"a-alert-content\"></div>\n    </div>\n</div>\n<div class=\"a-row a-spacing-top-small\">\n    <a id=\"clear-search-form\" class=\"a-link-normal\" href=\"javascript:;\">Clear search\n                            </a>\n</div>\n</div><hr aria-hidden=\"true\" class=\"a-spacing-top-base a-divider-normal\"/>\n<div class=\"a-row\">\n    <h3 class=\"a-spacing-small\">Refine by\n                        </h3>\n    <fieldset class=\"a-spacing-medium a-spacing-top-small\">\n        <legend>Payment status\n                            </legend>\n        <div data-a-input-name=\"paymentStatusCheckboxFilter\" class=\"a-checkbox a-checkbox-fancy checkbox-filter a-spacing-top-micro\">\n            <label for=\"payment-status-successful-check\">\n                <input id=\"payment-status-successful-check\" type=\"checkbox\" name=\"paymentStatusCheckboxFilter\" value=\"\"/>\n                <i class=\"a-icon a-icon-checkbox\"></i>\n                <span class=\"a-label a-checkbox-label\">Successful\n                            </span>\n            </label>\n        </div>\n        <div data-a-input-name=\"paymentStatusCheckboxFilter\" class=\"a-checkbox a-checkbox-fancy checkbox-filter a-spacing-top-micro\">\n            <label for=\"payment-status-failed-check\">\n                <input id=\"payment-status-failed-check\" type=\"checkbox\" name=\"paymentStatusCheckboxFilter\" value=\"\"/>\n                <i class=\"a-icon a-icon-checkbox\"></i>\n                <span class=\"a-label a-checkbox-label\">Failed\n                            </span>\n            </label>\n        </div>\n    </fieldset>\n</div>\n</div>\n<div class=\"a-column a-span8\">\n    <div id=\"remittanceHeaderTable-melodic-wrapper\" class=\"melodic-wrapper melodic-loading\">\n        <div class=\"melodic-loading-overlay\" style=\"display: block;\">\n            <div class=\"melodic-loading-overlay-inner\">\n                <div class=\"a-popover-loading \">&nbsp;</div>\n            </div>\n        </div>\n        <div id=\"remittanceheadertable\" class=\"mt-container clearfix\" data-scroll-on-refresh=\"body\" data-max-retries=\"10\">\n            <div class=\"mt-loading-overlay\">\n                <div class=\"mt-loading-image a-popover-loading\"></div>\n            </div>\n            <div class=\"mt-table-alerts\"></div>\n            <div class=\"mt-default-alert a-hidden\">\n                <div class=\"a-box a-alert a-alert-error a-spacing-medium\" role=\"alert\">\n                    <div class=\"a-box-inner a-alert-container\">\n                        <i class=\"a-icon a-icon-alert\"></i>\n                        <div class=\"a-alert-content\">\n                            <span id=\"mt-default-error-text\"></span>\n                        </div>\n                    </div>\n                </div>\n            </div>\n            <div class=\"mt-header clearfix\">\n                <div class=\"mt-header-search\"></div>\n                <div class=\"mt-header-count\">\n                    <span id=\"mt-header-count-value\">0</span>\n                    records\n                </div>\n            </div>\n            <div class=\"mt-content clearfix\">\n                <div class=\"mt-table-container clearfix\">\n                    <table class=\"a-bordered a-horizontal-stripes mt-table\">\n                        <tr id=\"head-row\" class=\"mt-head\">\n                            <th id=\"header-payment-checkbox\" class=\"mt-table-header-cell mt-header-left mt-head mt-cell\">\n                                <div class=\"mt-layout-block\"></div>\n                            </th>\n                            <th id=\"header-payment-number\" class=\"mt-table-header-cell mt-header-sort mt-header-left mt-head mt-cell\">\n                                <div class=\"mt-layout-block\">\n                                    <span class=\"a-declarative\" data-action=\"remittanceheadertable-sort-clicked\" data-remittanceheadertable-sort-clicked=\"{&quot;heading&quot;:&quot;header-payment-number&quot;}\">\n                                        <a href=\"javascript:void(0)\" class=\"mt-sort-link\">\n                                            Payment Number\n                            <span class=\" mt-header-sort-icon\" data-column=\"header-payment-number\" data-sorted=\"false\" data-direction=\"NOT_SORTED\"></span>\n                                        </a>\n                                    </span>\n                                </div>\n                            </th>\n                            <th id=\"header-payment-date\" class=\"mt-table-header-cell mt-header-sort mt-sort-up mt-header-left mt-head mt-cell\">\n                                <div class=\"mt-layout-block\">\n                                    <span class=\"a-declarative\" data-action=\"remittanceheadertable-sort-clicked\" data-remittanceheadertable-sort-clicked=\"{&quot;heading&quot;:&quot;header-payment-date&quot;}\">\n                                        <a href=\"javascript:void(0)\" class=\"mt-sort-link\">\n                                            Payment Date\n                            <span class=\"mt-sort-up mt-header-sort-icon\" data-column=\"header-payment-date\" data-sorted=\"true\" data-direction=\"ASCENDING\"></span>\n                                        </a>\n                                    </span>\n                                </div>\n                            </th>\n                            <th id=\"header-payment-amount\" class=\"mt-table-header-cell mt-header-sort mt-header-right mt-head mt-cell\">\n                                <div class=\"mt-layout-block\">\n                                    <span class=\"a-declarative\" data-action=\"remittanceheadertable-sort-clicked\" data-remittanceheadertable-sort-clicked=\"{&quot;heading&quot;:&quot;header-payment-amount&quot;}\">\n                                        <a href=\"javascript:void(0)\" class=\"mt-sort-link\">\n                                            Payment amount\n                            <span class=\" mt-header-sort-icon\" data-column=\"header-payment-amount\" data-sorted=\"false\" data-direction=\"NOT_SORTED\"></span>\n                                        </a>\n                                    </span>\n                                </div>\n                            </th>\n                            <th id=\"header-payment-status\" class=\"mt-table-header-cell mt-header-sort mt-header-left mt-head mt-cell\">\n                                <div class=\"mt-layout-block\">\n                                    <span class=\"a-declarative\" data-action=\"remittanceheadertable-sort-clicked\" data-remittanceheadertable-sort-clicked=\"{&quot;heading&quot;:&quot;header-payment-status&quot;}\">\n                                        <a href=\"javascript:void(0)\" class=\"mt-sort-link\">\n                                            Payment status\n                            <span class=\" mt-header-sort-icon\" data-column=\"header-payment-status\" data-sorted=\"false\" data-direction=\"NOT_SORTED\"></span>\n                                        </a>\n                                    </span>\n                                </div>\n                            </th>\n                        </tr>\n                    </table>\n                </div>\n            </div>\n            <div class=\"mt-foot clearfix\">\n                <div class=\"mt-foot-pagi clearfix\"></div>\n                <div class=\"mt-foot-rpp clearfix\">\n                    <div class=\"mt-records-per-page\"></div>\n                </div>\n            </div>\n            <input type=\"hidden\" name=\"\" class=\"refresh-endpoint\"/>\n            <input type=\"hidden\" name=\"\" class=\"fromTag\"/>\n            <input type=\"hidden\" name=\"\" class=\"featureSetTag\"/>\n            <input type=\"hidden\" name=\"\" class=\"delayed-endpoint\"/>\n            <input type=\"hidden\" name=\"\" class=\"save-endpoint\"/>\n            <input type=\"hidden\" name=\"\" value=\"false\" class=\"mt-allow-multi-page-select\"/>\n            <input type=\"hidden\" name=\"\" value=\"Your unsaved changes will be lost. Do you want to continue?\" class=\"unsaved-changes-confirm-label\"/>\n            <input type=\"hidden\" name=\"\" value=\"Your selected rows will be unselected. Do you want to continue?\" class=\"selected-rows-confirm-label\"/>\n            <input type=\"hidden\" name=\"\" class=\"default-error-message-label\"/>\n            <input type=\"hidden\" name=\"\" value=\"false\" class=\"mt-enable-floating-bar\"/>\n        </div>\n        <script>\n            P.when('tabela-manager').register('tabela-table-remittanceheadertable', function(TabelaManager) {\n                TabelaManager.create('remittanceheadertable');\n            });\n        </script>\n        <div class=\"melodic-templates aok-hidden\">\n            <span class=\"melodic-templates-button-normal\">\n                <li id=\"1\" class=\"a-normal\">\n                    <a href=\"#\"></a>\n                </li>\n            </span>\n            <span class=\"melodic-templates-button-selected\">\n                <li id=\"2\" class=\"a-selected\">\n                    <a href=\"#\" aria-current=\"page\"></a>\n                </li>\n            </span>\n            <span class=\"melodic-templates-button-disabled\">\n                <li id=\"3\" class=\"a-disabled\" aria-disabled=\"true\"></li>\n            </span>\n            <span class=\"melodic-templates-pagination-wrapper\">\n                <div class=\"a-text-center\" role=\"navigation\">\n                    <ul class=\"a-pagination\">\n                        <li>\n                            <a href=\"#prev\">\n                                <span class=\"larr\">\u2190</span>\n                                <span class=\"a-letter-space\"></span>\n                                <span class=\"a-letter-space\"></span>\n                                Previous\n                            </a>\n                        </li>\n                        \n                        <li class=\"a-last\">\n                            <a href=\"#next\">\n                                Next<span class=\"a-letter-space\"></span>\n                                <span class=\"a-letter-space\"></span>\n                                <span class=\"larr\">\u2192</span>\n                            </a>\n                        </li>\n                    </ul>\n                </div>\n            </span>\n            <span class=\"melodic-templates-single-page\">\n                <p>&nbsp;</p>\n            </span>\n            <span class=\"melodic-templates-no-records\">\n                <div class=\"a-box a-spacing-large a-spacing-top-large\">\n                    <div class=\"a-box-inner\">\n                        No results were found. Possible reasons:\n                    \n                        <ul class=\"a-unordered-list a-vertical a-spacing-micro\">\n                            <li>\n                                <span class=\"a-list-item\">After you receive your payment notification, it can take up to three working days for the payment to be reflected here.\n                        </span>\n                            </li>\n                            <li>\n                                <span class=\"a-list-item\">No payment exists for this search.\n                        </span>\n                            </li>\n                        </ul>\n                    </div>\n                </div>\n            </span>\n            <span class=\"melodic-templates-no-matches\">\n                <div class=\"a-box a-alert-inline a-alert-inline-info a-spacing-large a-spacing-top-large\" aria-live=\"polite\" aria-atomic=\"true\">\n                    <div class=\"a-box-inner a-alert-container\">\n                        <i class=\"a-icon a-icon-alert\"></i>\n                        <div class=\"a-alert-content\">No results match your search criteria.</div>\n                    </div>\n                </div>\n            </span>\n            <span class=\"melodic-templates-load-error\">A problem occurred. Please try again.</span>\n        </div>\n    </div>\n    <script id=\"remittanceHeaderTable-melodic-data\" type=\"application/json\">\n        {\n            \"formId\": \"remittanceSearchForm\",\n            \"totalNumberOfRecords\": null,\n            \"records\": [\n            ],\n            \"columns\": [\n                {\n                    \"index\": 0,\n                    \"defaultFieldId\": \"header-payment-checkbox\",\n                    \"editableDefault\": true,\n                    \"id\": \"header-payment-checkbox\",\n                    \"sortable\": false,\n                    \"alignment\": \"LEFT\"\n                },\n                {\n                    \"index\": 1,\n                    \"defaultFieldId\": \"header-payment-id\",\n                    \"editableDefault\": false,\n                    \"id\": \"header-payment-id\",\n                    \"sortable\": true,\n                    \"alignment\": \"LEFT\"\n                },\n                {\n                    \"index\": 2,\n                    \"defaultFieldId\": \"header-payment-number\",\n                    \"editableDefault\": true,\n                    \"id\": \"header-payment-number\",\n                    \"sortable\": true,\n                    \"alignment\": \"LEFT\"\n                },\n                {\n                    \"index\": 3,\n                    \"defaultFieldId\": \"header-payment-date\",\n                    \"editableDefault\": false,\n                    \"id\": \"header-payment-date\",\n                    \"sortable\": true,\n                    \"alignment\": \"LEFT\"\n                },\n                {\n                    \"index\": 4,\n                    \"defaultFieldId\": \"header-payment-amount\",\n                    \"editableDefault\": false,\n                    \"id\": \"header-payment-amount\",\n                    \"sortable\": true,\n                    \"alignment\": \"RIGHT\"\n                },\n                {\n                    \"index\": 5,\n                    \"defaultFieldId\": \"header-payment-status\",\n                    \"editableDefault\": false,\n                    \"id\": \"header-payment-status\",\n                    \"sortable\": true,\n                    \"alignment\": \"LEFT\"\n                }\n            ],\n            \"recordsPerDisplayPage\": 10,\n            \"nextPageStartIndex\": -1,\n            \"sortColumnId\": \"header-payment-date\",\n            \"startIndex\": 0,\n            \"nextPageKeyData\": {\n            },\n            \"sortOrder\": \"ASCENDING\",\n            \"loadMode\": \"CLIENT_SIDE\",\n            \"currencyFormats\": [\n                {\n                    \"endpoint\": \"USER\",\n                    \"positiveSuffix\": \" GBP\",\n                    \"negativePrefix\": \"-\",\n                    \"decimals\": 2,\n                    \"locale\": \"en_GB\",\n                    \"currencyCode\": \"GBP\",\n                    \"negativeSuffix\": \" GBP\",\n                    \"positivePrefix\": \"\"\n                }\n            ],\n            \"id\": \"remittanceHeaderTable\",\n            \"fields\": {\n                \"header-payment-status\": {\n                    \"id\": \"header-payment-status\",\n                    \"labelText\": \"Payment status\",\n                    \"labelTextIsLiteral\": true,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"text\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"desanitizedValue\": \"\",\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"value\": \"\",\n                    \"labelTextLiteral\": true,\n                    \"settings\": {\n                        \"requireEntry\": false,\n                        \"maxLength\": null,\n                        \"minLength\": null\n                    }\n                },\n                \"header-payment-checkbox\": {\n                    \"id\": \"header-payment-checkbox\",\n                    \"labelText\": \"\",\n                    \"labelTextIsLiteral\": true,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"bool\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"value\": null,\n                    \"labelTextLiteral\": true,\n                    \"settings\": {\n                        \"requireEntry\": false\n                    }\n                },\n                \"header-payment-number\": {\n                    \"id\": \"header-payment-number\",\n                    \"labelText\": \"Payment Number\",\n                    \"labelTextIsLiteral\": true,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"display\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"value\": null,\n                    \"labelTextLiteral\": true\n                },\n                \"header-payment-id\": {\n                    \"id\": \"header-payment-id\",\n                    \"labelText\": \"\",\n                    \"labelTextIsLiteral\": true,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"text\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"desanitizedValue\": \"\",\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"value\": \"\",\n                    \"labelTextLiteral\": true,\n                    \"settings\": {\n                        \"requireEntry\": false,\n                        \"maxLength\": null,\n                        \"minLength\": null\n                    }\n                },\n                \"header-payment-date\": {\n                    \"id\": \"header-payment-date\",\n                    \"labelText\": \"Payment Date\",\n                    \"labelTextIsLiteral\": true,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {},\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"date\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"endpoint\": \"USER\",\n                    \"value\": null,\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"labelTextLiteral\": true,\n                    \"settings\": {\n                        \"requireEntry\": false,\n                        \"requirePast\": false,\n                        \"requireFuture\": false,\n                        \"maxValue\": [\n                            2100,\n                            1,\n                            1\n                        ],\n                        \"minValue\": [\n                            1900,\n                            1,\n                            1\n                        ]\n                    },\n                    \"formatPattern\": \"d/m/yyyy\"\n                },\n                \"header-payment-amount\": {\n                    \"id\": \"header-payment-amount\",\n                    \"labelText\": \"Payment amount\",\n                    \"labelTextIsLiteral\": true,\n                    \"instruction\": null,\n                    \"instructionIsLiteral\": false,\n                    \"contextualHelp\": null,\n                    \"contextualHelpIsLiteral\": false,\n                    \"visibilityCondition\": null,\n                    \"properties\": {\n                    },\n                    \"multiValued\": false,\n                    \"nullText\": null,\n                    \"type\": \"money\",\n                    \"placeholder\": null,\n                    \"placeholderIsLiteral\": false,\n                    \"formattedValue\": \"\",\n                    \"displayAsValid\": false,\n                    \"endpoint\": \"USER\",\n                    \"currency\": \"GBP\",\n                    \"value\": null,\n                    \"itemType\": \"Field\",\n                    \"fieldValid\": true,\n                    \"errorMessageString\": null,\n                    \"errorReplacements\": null,\n                    \"fieldRequired\": false,\n                    \"labelTextLiteral\": true,\n                    \"locale\": {\n                        \"country\": \"GB\",\n                        \"language\": \"en\",\n                        \"groupingSeparator\": \",\",\n                        \"decimalSeparator\": \".\"\n                    },\n                    \"settings\": {\n                        \"requireEntry\": false,\n                        \"requireNegative\": false,\n                        \"requirePositive\": false,\n                        \"maxValue\": null,\n                        \"minValue\": null\n                    }\n                }\n            },\n            \"deletionAllowed\": false,\n            \"ajaxEndpoint\": null,\n            \"templateRecords\": [\n            ]\n        }</script>\n    <script>\n        P.when('A', 'melodic', 'melodic-adapters-TabelaDisplayAdapter').execute(function(A, melodic, displayAdapter) {\n            var dataJson = A.$('#remittanceHeaderTable-melodic-data').html();\n            var data = JSON.parse(dataJson);\n            melodic(data, displayAdapter);\n        });\n    </script>\n</div>\n</form></div></div><script>\n    P.when('vft-stringmaps').execute(function(StringMaps) {\n        var map = {};\n\n        map['vendor-remittance-invalid-date-range'] = 'Please use a valid date range.';\n\n        map['vendor-remittance-invalid-date-range-limit'] = 'Maximum date range is  days.';\n\n        map['vendor-remittance-invalid-payment-amount-range'] = 'Please use a valid payment amount range.';\n\n        map['vendor-remittance-selected-payments-count'] = ' Payments selected';\n\n        map['vendor-remittance-search-results-count'] = '- of  total payments';\n\n        map['vendor-remittance-account-vendor-codes-info'] = 'You are viewing information for the following vendor codes: . If you want to add more vendor codes, please contact your account manager.';\n\n        map['vendor-remittance-successful-status'] = 'Successful';\n\n        map['vendor-remittance-failed-status'] = 'Failed';\n\n        map['vendor-remittance-payment-failed-info'] = 'Some payments may have failed due to incorrect bank information. To update your banking information, go to Settings.';\n\n        map['vendor-remittance-payment-failure-modal-header'] = 'A payment to your Vendor code #  has failed';\n\n        map['vendor-remittance-payment-failure-modal-text'] = 'One of the payments from your Vendor code no.  has failed. One possible reason could be that the bank account information we have on file is incorrect. Please take a moment to review and update your bank information.<br><br>Your Bank admin can update the payment details by going to:<br><strong>Settings > Bank Information.</strong><br><br>If you encounter any issues, feel free to contact us by going to:<br><strong>Help > Contact Us.</strong><br><br><i>If the bank information is updated or action is taken please ignore the pop-up</i>';\n\n        map['vendor-remittance-payment-failure-modal-update-button-text'] = 'Update Bank Information';\n\n        map['vendor-remittance-payment-failure-modal-dismiss-button-text'] = 'Dismiss';\n\n        StringMaps.registerMap('remittance-home-page-wsids', map);\n    });\n</script>\n</div>\n<div id=\"sc-footer-container\">\n    <style>\n        #a-page {\n            display: flex;\n            flex-direction: column;\n            height: 100%;\n        }\n\n        #sc-content-container {\n            flex: 1 0 auto;\n            /* Prevent Chrome, Opera, and Safari from letting these items shrink to smaller than their content's default minimum size. */\n        }\n\n        #sc-footer-container {\n            flex-shrink: 0;\n            /* Prevent Chrome, Opera, and Safari from letting these items shrink to smaller than their content's default minimum size. */\n        }\n\n        #vc-footer-container {\n            margin-top: 100px !important;\n            /*Creates spacing between last item in page and footer*/\n        }\n    </style>\n    <div id=\"vc-footer-container\"></div>\n</div>\n<div id='be' style=\"display:none;visibility:hidden;\">\n    <form name='ue_backdetect' action=\"get\">\n        <input type=\"hidden\" name='ue_back' value='1'/>\n    </form>\n    <script type=\"text/javascript\">\n        window.ue_ibe = (window.ue_ibe || 0) + 1;\n        if (window.ue_ibe === 1) {\n            (function(e, c) {\n                function h(b, a) {\n                    f.push([b, a])\n                }\n                function g(b, a) {\n                    if (b) {\n                        var c = e.head || e.getElementsByTagName(\"head\")[0] || e.documentElement\n                          , d = e.createElement(\"script\");\n                        d.async = \"async\";\n                        d.src = b;\n                        d.setAttribute(\"crossorigin\", \"anonymous\");\n                        a && a.onerror && (d.onerror = a.onerror);\n                        a && a.onload && (d.onload = a.onload);\n                        c.insertBefore(d, c.firstChild)\n                    }\n                }\n                function k() {\n                    ue.uels = g;\n                    for (var b = 0; b < f.length; b++) {\n                        var a = f[b];\n                        g(a[0], a[1])\n                    }\n                    ue.deffered = 1\n                }\n                var f = [];\n                c.ue && (ue.uels = h,\n                c.ue.attach && c.ue.attach(\"load\", k))\n            }\n            )(document, window);\n\n            if (window.ue && window.ue.uels) {\n                var cel_widgets = [{\n                    \"c\": \"celwidget\"\n                }, {\n                    \"s\": \"#nav-swmslot > div\",\n                    \"id_gen\": function(elem, index) {\n                        return 'nav_sitewide_msg';\n                    }\n                }];\n\n                ue.uels(\"https://images-eu.ssl-images-amazon.com/images/I/216YVwoRFDL.js\");\n            }\n            var ue_mbl = ue_csm.ue.exec(function(h, a) {\n                function s(c) {\n                    b = c || {};\n                    a.AMZNPerformance = b;\n                    b.transition = b.transition || {};\n                    b.timing = b.timing || {};\n                    if (a.csa) {\n                        var d;\n                        b.timing.transitionStart && (d = b.timing.transitionStart);\n                        b.timing.processStart && (d = b.timing.processStart);\n                        d && (csa(\"PageTiming\")(\"mark\", \"nativeTransitionStart\", d),\n                        csa(\"PageTiming\")(\"mark\", \"transitionStart\", d))\n                    }\n                    h.ue.exec(t, \"csm-android-check\")() && b.tags instanceof Array && (c = -1 != b.tags.indexOf(\"usesAppStartTime\") || b.transition.type ? !b.transition.type && -1 < b.tags.indexOf(\"usesAppStartTime\") ? \"warm-start\" : void 0 : \"view-transition\",\n                    c && (b.transition.type = c));\n                    n = null;\n                    \"reload\" === e._nt && h.ue_orct || \"intrapage-transition\" === e._nt ? u(b) : \"undefined\" === typeof e._nt && f && f.timing && f.timing.navigationStart && a.history && \"function\" === typeof a.History && \"object\" === typeof a.history && a.history.length && 1 != a.history.length && (b.timing.transitionStart = f.timing.navigationStart);\n                    p && e.ssw(q, \"\" + (b.timing.transitionStart || n || \"\"));\n                    c = b.transition;\n                    d = e._nt ? e._nt : void 0;\n                    c.subType = d;\n                    a.ue && a.ue.tag && a.ue.tag(\"has-AMZNPerformance\");\n                    e.isl && a.uex && a.uex(\"at\", \"csm-timing\");\n                    v()\n                }\n                function w(c) {\n                    a.ue && a.ue.count && a.ue.count(\"csm-cordova-plugin-failed\", 1)\n                }\n                function t() {\n                    return a.cordova && a.cordova.platformId && \"android\" == a.cordova.platformId\n                }\n                function u() {\n                    if (p) {\n                        var c = e.ssw(q)\n                          , a = function() {}\n                          , x = e.count || a\n                          , a = e.tag || a\n                          , k = b.timing.transitionStart\n                          , g = c && !c.e && c.val;\n                        n = c = g ? +c.val : null;\n                        k && g && k > c ? (x(\"csm.jumpStart.mtsDiff\", k - c || 0),\n                        a(\"csm-rld-mts-gt\")) : k && g ? a(\"csm-rld-mts-leq\") : g ? k || a(\"csm-rld-mts-no-new\") : a(\"csm-rld-mts-no-old\")\n                    }\n                    f && f.timing && f.timing.navigationStart ? b.timing.transitionStart = f.timing.navigationStart : delete b.timing.transitionStart\n                }\n                function v() {\n                    try {\n                        a.P.register(\"AMZNPerformance\", function() {\n                            return b\n                        })\n                    } catch (c) {}\n                }\n                function r() {\n                    if (!b)\n                        return \"\";\n                    ue_mbl.cnt = null;\n                    var c = b.timing\n                      , d = b.transition\n                      , d = [\"mts\", l(c.transitionStart), \"mps\", l(c.processStart), \"mtt\", d.type, \"mtst\", d.subType, \"mtlt\", d.launchType];\n                    a.ue && a.ue.tag && (c.fr_ovr && a.ue.tag(\"fr_ovr\"),\n                    c.fcp_ovr && a.ue.tag(\"fcp_ovr\"),\n                    d.push(\"fr_ovr\", l(c.fr_ovr), \"fcp_ovr\", l(c.fcp_ovr)));\n                    for (var c = \"\", e = 0; e < d.length; e += 2) {\n                        var f = d[e]\n                          , g = d[e + 1];\n                        \"undefined\" !== typeof g && (c += \"&\" + f + \"=\" + g)\n                    }\n                    return c\n                }\n                function l(a) {\n                    if (\"undefined\" !== typeof a && \"undefined\" !== typeof m)\n                        return a - m\n                }\n                function y(a, d) {\n                    b && (m = d,\n                    b.timing.transitionStart = a,\n                    b.transition.type = \"view-transition\",\n                    b.transition.subType = \"ajax-transition\",\n                    b.transition.launchType = \"normal\",\n                    ue_mbl.cnt = r)\n                }\n                var e = h.ue || {}, m = h.ue_t0, q = \"csm-last-mts\", p = 1 === h.ue_sswmts, n, f = a.performance, b;\n                if (a.P && a.P.when && a.P.register)\n                    return 1 === a.ue_fnt && (m = a.aPageStart || h.ue_t0),\n                    a.P.when(\"CSMPlugin\").execute(function(a) {\n                        a.buildAMZNPerformance && a.buildAMZNPerformance({\n                            successCallback: s,\n                            failCallback: w\n                        })\n                    }),\n                    {\n                        cnt: r,\n                        ajax: y\n                    }\n            }, \"mobile-timing\")(ue_csm, ue_csm.window);\n\n            (function(d) {\n                d._uess = function() {\n                    var a = \"\";\n                    screen && screen.width && screen.height && (a += \"&sw=\" + screen.width + \"&sh=\" + screen.height);\n                    var b = function(a) {\n                        var b = document.documentElement[\"client\" + a];\n                        return \"CSS1Compat\" === document.compatMode && b || document.body[\"client\" + a] || b\n                    }\n                      , c = b(\"Width\")\n                      , b = b(\"Height\");\n                    c && b && (a += \"&vw=\" + c + \"&vh=\" + b);\n                    return a\n                }\n            }\n            )(ue_csm);\n\n            (function(a) {\n                function d(a) {\n                    c && c(\"log\", a)\n                }\n                var b = document.ue_backdetect\n                  , c = a.csa && a.csa(\"Errors\", {\n                    producerId: \"csa\",\n                    logOptions: {\n                        ent: \"all\"\n                    }\n                });\n                a.ue_err.buffer && c && (a.ue_err.buffer.forEach(d),\n                a.ue_err.buffer.push = d);\n                b && b.ue_back && a.ue && (a.ue.bfini = b.ue_back.value);\n                a.uet && a.uet(\"be\");\n                a.onLdEnd && (window.addEventListener ? window.addEventListener(\"load\", a.onLdEnd, !1) : window.attachEvent && window.attachEvent(\"onload\", a.onLdEnd));\n                a.ueh && a.ueh(0, window, \"load\", a.onLd, 1);\n                a.ue && a.ue.tag && (a.ue_furl ? (b = a.ue_furl.replace(/./g, \"-\"),\n                a.ue.tag(b)) : a.ue.tag(\"nofls\"))\n            }\n            )(ue_csm);\n\n            (function(g, h) {\n                function d(a, d) {\n                    var b = {};\n                    if (!e || !f)\n                        try {\n                            var c = h.sessionStorage;\n                            c ? a && (\"undefined\" !== typeof d ? c.setItem(a, d) : b.val = c.getItem(a)) : f = 1\n                        } catch (g) {\n                            e = 1\n                        }\n                    e && (b.e = 1);\n                    return b\n                }\n                var b = g.ue || {}, a = \"\", f, e, c, a = d(\"csmtid\");\n                f ? a = \"NA\" : a.e ? a = \"ET\" : (a = a.val,\n                a || (a = b.oid || \"NI\",\n                d(\"csmtid\", a)),\n                c = d(b.oid),\n                c.e || (c.val = c.val || 0,\n                d(b.oid, c.val + 1)),\n                b.ssw = d);\n                b.tabid = a\n            }\n            )(ue_csm, ue_csm.window);\n\n            (function(a) {\n                var e = {\n                    rc: 1,\n                    hob: 1,\n                    hoe: 1,\n                    ntd: 1,\n                    rd_: 1,\n                    _rd: 1\n                };\n                \"function\" === typeof window.addEventListener && window.addEventListener(\"pageshow\", function(b) {\n                    if (b && b.persisted && (b = +new Date,\n                    b = {\n                        clickTime: b - 1,\n                        pageVisible: b\n                    },\n                    \"object\" === typeof b && \"object\" === typeof a.ue.markers && \"object\" === typeof a.ue && \"function\" === typeof a.uex)) {\n                        if (\"function\" === typeof a.uet) {\n                            for (var c in a.ue.markers)\n                                !a.ue.markers.hasOwnProperty(c) || c in e || a.uet(c, void 0, void 0, b.pageVisible);\n                            a.uet(\"tc\", void 0, void 0, b.clickTime);\n                            a.uet(\"ty\", void 0, void 0, b.clickTime + 2)\n                        }\n                        (c = document.ue_backdetect) && c.ue_back && (a.ue.bfini = +c.ue_back.value + 1);\n                        a.ue.isBFonMshop = !0;\n                        a.ue.isBFCache = !0;\n                        a.ue.t0 = b.clickTime;\n                        a.ue.viz = [\"visible:0\"];\n                        \"function\" === typeof a.ue.tag && (a.ue.tag(\"cacheSourceMemory\"),\n                        a.ue.tag(\"history-navigation-page-cache\"));\n                        c = ue_csm.csa && ue_csm.csa(\"SPA\");\n                        var d = ue_csm.csa && ue_csm.csa(\"PageTiming\");\n                        c && d && (c(\"newPage\", {\n                            transitionType: \"history-navigation-page-cache\"\n                        }, {\n                            keepPageAttributes: !0\n                        }),\n                        d(\"mark\", \"transitionStart\", b.clickTime));\n                        \"function\" === typeof a.uex && a.uex(\"ld\", void 0, void 0, a.ue.t.ld);\n                        delete a.ue.isBFonMshop;\n                        delete a.ue.isBFCache\n                    }\n                })\n            }\n            )(ue_csm);\n\n            ue_csm.ue.exec(function(e, f) {\n                var a = e.ue || {}, b = a._wlo, d;\n                if (a.ssw) {\n                    d = a.ssw(\"CSM_previousURL\").val;\n                    var c = f.location\n                      , b = b ? b : c && c.href ? c.href.split(\"#\")[0] : void 0;\n                    c = (b || \"\") === a.ssw(\"CSM_previousURL\").val;\n                    !c && b && a.ssw(\"CSM_previousURL\", b);\n                    d = c ? \"reload\" : d ? \"intrapage-transition\" : \"first-view\"\n                } else\n                    d = \"unknown\";\n                a._nt = d\n            }, \"NavTypeModule\")(ue_csm, window);\n            ue_csm.ue.exec(function(c, a) {\n                function g(a) {\n                    a.run(function(e) {\n                        d.tag(\"csm-feature-\" + a.name + \":\" + e);\n                        d.isl && c.uex(\"at\")\n                    })\n                }\n                if (a.addEventListener)\n                    for (var d = c.ue || {}, f = [{\n                        name: \"touch-enabled\",\n                        run: function(b) {\n                            var e = function() {\n                                a.removeEventListener(\"touchstart\", c, !0);\n                                a.removeEventListener(\"mousemove\", d, !0)\n                            }\n                              , c = function() {\n                                b(\"true\");\n                                e()\n                            }\n                              , d = function() {\n                                b(\"false\");\n                                e()\n                            };\n                            a.addEventListener(\"touchstart\", c, !0);\n                            a.addEventListener(\"mousemove\", d, !0)\n                        }\n                    }], b = 0; b < f.length; b++)\n                        g(f[b])\n            }, \"csm-features\")(ue_csm, window);\n\n            (function(a, e) {\n                function d(a) {\n                    b && b(\"recordCounter\", a.c, a.v)\n                }\n                var c = e.images\n                  , b = a.csa && a.csa(\"Metrics\", {\n                    producerId: \"csa\"\n                });\n                c && c.length && a.ue.count(\"totalImages\", c.length);\n                a.ue.cv.buffer && b && (a.ue.cv.buffer.forEach(d),\n                a.ue.cv.buffer.push = d)\n            }\n            )(ue_csm, document);\n            (function(b) {\n                function c() {\n                    var d = [];\n                    a.log && a.log.isStub && a.log.replay(function(a) {\n                        e(d, a)\n                    });\n                    a.clog && a.clog.isStub && a.clog.replay(function(a) {\n                        e(d, a)\n                    });\n                    d.length && (a._flhs += 1,\n                    n(d),\n                    p(d))\n                }\n                function g() {\n                    a.log && a.log.isStub && (a.onflush && a.onflush.replay && a.onflush.replay(function(a) {\n                        a[0]()\n                    }),\n                    a.onunload && a.onunload.replay && a.onunload.replay(function(a) {\n                        a[0]()\n                    }),\n                    c())\n                }\n                function e(d, b) {\n                    var c = b[1]\n                      , f = b[0]\n                      , e = {};\n                    a._lpn[c] = (a._lpn[c] || 0) + 1;\n                    e[c] = f;\n                    d.push(e)\n                }\n                function n(b) {\n                    q && (a._lpn.csm = (a._lpn.csm || 0) + 1,\n                    b.push({\n                        csm: {\n                            k: \"chk\",\n                            f: a._flhs,\n                            l: a._lpn,\n                            s: \"inln\"\n                        }\n                    }))\n                }\n                function p(a) {\n                    if (h)\n                        a = k(a),\n                        b.navigator.sendBeacon(l, a);\n                    else {\n                        a = k(a);\n                        var c = new b[f];\n                        c.open(\"POST\", l, !0);\n                        c.setRequestHeader && c.setRequestHeader(\"Content-type\", \"text/plain\");\n                        c.send(a)\n                    }\n                }\n                function k(a) {\n                    return JSON.stringify({\n                        rid: b.ue_id,\n                        sid: b.ue_sid,\n                        mid: b.ue_mid,\n                        mkt: b.ue_mkt,\n                        sn: b.ue_sn,\n                        reqs: a\n                    })\n                }\n                var f = \"XMLHttpRequest\"\n                  , q = 1 === b.ue_ddq\n                  , a = b.ue\n                  , r = b[f] && \"withCredentials\"in new b[f]\n                  , h = b.navigator && b.navigator.sendBeacon\n                  , l = \"//\" + b.ue_furl + \"/1/batch/1/OE/\"\n                  , m = b.ue_fci_ft || 5E3;\n                a && (r || h) && (a._flhs = a._flhs || 0,\n                a._lpn = a._lpn || {},\n                a.attach && (a.attach(\"beforeunload\", a.exec(g, \"fcli-bfu\")),\n                a.attach(\"pagehide\", a.exec(g, \"fcli-ph\"))),\n                m && b.setTimeout(a.exec(c, \"fcli-t\"), m),\n                a._ffci = a.exec(c))\n            }\n            )(window);\n\n            (function(k, c) {\n                function l(a, b) {\n                    return a.filter(function(a) {\n                        return a.initiatorType == b\n                    })\n                }\n                function f(a, c) {\n                    if (b.t[a]) {\n                        var g = b.t[a] - b._t0\n                          , e = c.filter(function(a) {\n                            return 0 !== a.responseEnd && m(a) < g\n                        })\n                          , f = l(e, \"script\")\n                          , h = l(e, \"link\")\n                          , k = l(e, \"img\")\n                          , n = e.map(function(a) {\n                            return a.name.split(\"/\")[2]\n                        }).filter(function(a, b, c) {\n                            return a && c.lastIndexOf(a) == b\n                        })\n                          , q = e.filter(function(a) {\n                            return a.duration < p\n                        })\n                          , s = g - Math.max.apply(null, e.map(m)) < r | 0;\n                        \"af\" == a && (b._afjs = f.length);\n                        return a + \":\" + [e[d], f[d], h[d], k[d], n[d], q[d], s].join(\"-\")\n                    }\n                }\n                function m(a) {\n                    return a.responseEnd - (b._t0 - c.timing.navigationStart)\n                }\n                function n() {\n                    var a = c[h](\"resource\")\n                      , d = f(\"cf\", a)\n                      , g = f(\"af\", a)\n                      , a = f(\"ld\", a);\n                    delete b._rt;\n                    b._ld = b.t.ld - b._t0;\n                    b._art && b._art();\n                    return [d, g, a].join(\"_\")\n                }\n                var p = 20\n                  , r = 50\n                  , d = \"length\"\n                  , b = k.ue\n                  , h = \"getEntriesByType\";\n                b._rre = m;\n                b._rt = c && c.timing && c[h] && n\n            }\n            )(ue_csm, window.performance);\n\n            (function(c, d) {\n                var b = c.ue\n                  , a = d.navigator;\n                b && b.tag && a && (a = a.connection || a.mozConnection || a.webkitConnection) && a.type && b.tag(\"netInfo:\" + a.type)\n            }\n            )(ue_csm, window);\n\n            (function(c, d) {\n                function h(a, b) {\n                    for (var c = [], d = 0; d < a.length; d++) {\n                        var e = a[d]\n                          , f = b.encode(e);\n                        if (e[k]) {\n                            var g = b.metaSep\n                              , e = e[k]\n                              , l = b.metaPairSep\n                              , h = []\n                              , m = void 0;\n                            for (m in e)\n                                e.hasOwnProperty(m) && h.push(m + \"=\" + e[m]);\n                            e = h.join(l);\n                            f += g + e\n                        }\n                        c.push(f)\n                    }\n                    return c.join(b.resourceSep)\n                }\n                function s(a) {\n                    var b = a[k] = a[k] || {};\n                    b[t] || (b[t] = c.ue_mid);\n                    b[u] || (b[u] = c.ue_sid);\n                    b[f] || (b[f] = c.ue_id);\n                    b.csm = 1;\n                    a = \"//\" + c.ue_furl + \"/1/\" + a[v] + \"/1/OP/\" + a[w] + \"/\" + a[x] + \"/\" + h([a], y);\n                    if (n)\n                        try {\n                            n.call(d[p], a)\n                        } catch (g) {\n                            c.ue.sbf = 1,\n                            (new Image).src = a\n                        }\n                    else\n                        (new Image).src = a\n                }\n                function q() {\n                    g && g.isStub && g.replay(function(a, b, c) {\n                        a = a[0];\n                        b = a[k] = a[k] || {};\n                        b[f] = b[f] || c;\n                        s(a)\n                    });\n                    l.impression = s;\n                    g = null\n                }\n                if (!(1 < c.ueinit)) {\n                    var k = \"metadata\"\n                      , x = \"impressionType\"\n                      , v = \"foresterChannel\"\n                      , w = \"programGroup\"\n                      , t = \"marketplaceId\"\n                      , u = \"session\"\n                      , f = \"requestId\"\n                      , p = \"navigator\"\n                      , l = c.ue || {}\n                      , n = d[p] && d[p].sendBeacon\n                      , r = function(a, b, c, d) {\n                        return {\n                            encode: d,\n                            resourceSep: a,\n                            metaSep: b,\n                            metaPairSep: c\n                        }\n                    }\n                      , y = r(\"\", \"?\", \"&\", function(a) {\n                        return h(a.impressionData, z)\n                    })\n                      , z = r(\"/\", \":\", \",\", function(a) {\n                        return a.featureName + \":\" + h(a.resources, A)\n                    })\n                      , A = r(\",\", \"@\", \"|\", function(a) {\n                        return a.id\n                    })\n                      , g = l.impression;\n                    n ? q() : (l.attach(\"load\", q),\n                    l.attach(\"beforeunload\", q));\n                    try {\n                        d.P && d.P.register && d.P.register(\"impression-client\", function() {})\n                    } catch (B) {\n                        c.ueLogError(B, {\n                            logLevel: \"WARN\"\n                        })\n                    }\n                }\n            }\n            )(ue_csm, window);\n\n            var ue_pty = \"VendorRemittanceLibertyApp\";\n\n            var ue_spty = \"RemittanceRegionalVendorView\";\n\n            var ue_adb = 4;\n            var ue_adb_rtla = 1;\n            ue_csm.ue.exec(function(y, a) {\n                function t() {\n                    if (d && f) {\n                        var a;\n                        a: {\n                            try {\n                                a = d.getItem(g);\n                                break a\n                            } catch (c) {}\n                            a = void 0\n                        }\n                        if (a)\n                            return b = a,\n                            !0\n                    }\n                    return !1\n                }\n                function u() {\n                    if (a.fetch)\n                        fetch(m).then(function(a) {\n                            if (!a.ok)\n                                throw Error(a.statusText);\n                            return a.text ? a.text() : null\n                        }).then(function(b) {\n                            b ? (-1 < b.indexOf(\"window.ue_adb_chk = 1\") && (a.ue_adb_chk = 1),\n                            n()) : h()\n                        })[\"catch\"](h);\n                    else\n                        e.uels(m, {\n                            onerror: h,\n                            onload: n\n                        })\n                }\n                function h() {\n                    b = k;\n                    l();\n                    if (f)\n                        try {\n                            d.setItem(g, b)\n                        } catch (a) {}\n                }\n                function n() {\n                    b = 1 === a.ue_adb_chk ? p : k;\n                    l();\n                    if (f)\n                        try {\n                            d.setItem(g, b)\n                        } catch (c) {}\n                }\n                function q() {\n                    a.ue_adb_rtla && c && 0 < c.ec && !1 === r && (c.elh = null,\n                    ueLogError({\n                        m: \"Hit Info\",\n                        fromOnError: 1\n                    }, {\n                        logLevel: \"INFO\",\n                        adb: b\n                    }),\n                    r = !0)\n                }\n                function l() {\n                    e.tag(b);\n                    e.isl && a.uex && uex(\"at\", b);\n                    s && s.updateCsmHit(\"adb\", b);\n                    c && 0 < c.ec ? q() : a.ue_adb_rtla && c && (c.elh = q)\n                }\n                function v() {\n                    return b\n                }\n                if (a.ue_adb) {\n                    a.ue_fadb = a.ue_fadb || 10;\n                    var e = a.ue, k = \"adblk_yes\", p = \"adblk_no\", m = \"https://m.media-amazon.com/images/G/01/csm/showads.v2.js?wppaszoneid=-ad-sidebar.\", b = \"adblk_unk\", d;\n                    a: {\n                        try {\n                            d = a.localStorage;\n                            break a\n                        } catch (z) {}\n                        d = void 0\n                    }\n                    var g = \"csm:adb\"\n                      , c = a.ue_err\n                      , s = e.cookie\n                      , f = void 0 !== a.localStorage\n                      , w = Math.random() > 1 - 1 / a.ue_fadb\n                      , r = !1\n                      , x = t();\n                    w || !x ? u() : l();\n                    a.ue_isAdb = v;\n                    a.ue_isAdb.unk = \"adblk_unk\";\n                    a.ue_isAdb.no = p;\n                    a.ue_isAdb.yes = k\n                }\n            }, \"adb\")(document, window);\n\n            (function(c, l, m) {\n                function h(a) {\n                    if (a)\n                        try {\n                            if (a.id)\n                                return \"//*[@id='\" + a.id + \"']\";\n                            var b, d = 1, e;\n                            for (e = a.previousSibling; e; e = e.previousSibling)\n                                e.nodeName === a.nodeName && (d += 1);\n                            b = d;\n                            var c = a.nodeName;\n                            1 !== b && (c += \"[\" + b + \"]\");\n                            a.parentNode && (c = h(a.parentNode) + \"/\" + c);\n                            return c\n                        } catch (f) {\n                            return \"DETACHED\"\n                        }\n                }\n                function f(a) {\n                    if (a && a.getAttribute)\n                        return a.getAttribute(k) ? a.getAttribute(k) : f(a.parentElement)\n                }\n                var k = \"data-cel-widget\"\n                  , g = !1\n                  , d = [];\n                (c.ue || {}).isBF = function() {\n                    try {\n                        var a = JSON.parse(localStorage[\"csm-bf\"] || \"[]\")\n                          , b = 0 <= a.indexOf(c.ue_id);\n                        a.unshift(c.ue_id);\n                        a = a.slice(0, 20);\n                        localStorage[\"csm-bf\"] = JSON.stringify(a);\n                        return b\n                    } catch (d) {\n                        return !1\n                    }\n                }();\n                c.ue_utils = {\n                    getXPath: h,\n                    getFirstAscendingWidget: function(a, b) {\n                        c.ue_cel && c.ue_fem ? !0 === g ? b(f(a)) : d.push({\n                            element: a,\n                            callback: b\n                        }) : b()\n                    },\n                    notifyWidgetsLabeled: function() {\n                        if (!1 === g) {\n                            g = !0;\n                            for (var a = f, b = 0; b < d.length; b++)\n                                if (d[b].hasOwnProperty(\"callback\") && d[b].hasOwnProperty(\"element\")) {\n                                    var c = d[b].callback\n                                      , e = d[b].element;\n                                    \"function\" === typeof c && \"function\" === typeof a && c(a(e))\n                                }\n                            d = null\n                        }\n                    },\n                    extractStringValue: function(a) {\n                        if (\"string\" === typeof a)\n                            return a\n                    }\n                }\n            }\n            )(ue_csm, window, document);\n\n            (function(a) {\n                a.ue_cel || (a.ue_cel = function() {\n                    function m(a, r) {\n                        r ? r.r = u : r = {\n                            r: u,\n                            c: 1\n                        };\n                        D || (!ue_csm.ue_sclog && r.clog && b.clog ? b.clog(a, r.ns || s, r) : r.glog && b.glog ? b.glog(a, r.ns || s, r) : b.log(a, r.ns || s, r))\n                    }\n                    function n(a, b) {\n                        \"function\" === typeof p && p(\"log\", {\n                            schemaId: t + \".RdCSI.1\",\n                            eventType: a,\n                            clientData: b\n                        }, {\n                            ent: {\n                                page: [\"requestId\"]\n                            }\n                        })\n                    }\n                    function c() {\n                        var a = q.length;\n                        if (0 < a) {\n                            for (var r = [], c = 0; c < a; c++) {\n                                var d = q[c].api;\n                                d.ready() ? (d.on({\n                                    ts: b.d,\n                                    ns: s\n                                }),\n                                g.push(q[c]),\n                                m({\n                                    k: \"mso\",\n                                    n: q[c].name,\n                                    t: b.d()\n                                })) : r.push(q[c])\n                            }\n                            q = r\n                        }\n                    }\n                    function f() {\n                        if (!f.executed) {\n                            for (var a = 0; a < g.length; a++)\n                                g[a].api.off && g[a].api.off({\n                                    ts: b.d,\n                                    ns: s\n                                });\n                            B();\n                            m({\n                                k: \"eod\",\n                                t0: b.t0,\n                                t: b.d()\n                            }, {\n                                c: 1,\n                                il: 1\n                            });\n                            f.executed = 1;\n                            for (a = 0; a < g.length; a++)\n                                q.push(g[a]);\n                            g = [];\n                            d(v);\n                            d(A)\n                        }\n                    }\n                    function B(a) {\n                        m({\n                            k: \"hrt\",\n                            t: b.d()\n                        }, {\n                            c: 1,\n                            il: 1,\n                            n: a\n                        });\n                        y = Math.min(w, e * y);\n                        z()\n                    }\n                    function z() {\n                        d(A);\n                        A = k(function() {\n                            B(!0)\n                        }, y)\n                    }\n                    function x() {\n                        f.executed || B()\n                    }\n                    var l = a.window, k = l.setTimeout, d = l.clearTimeout, e = 1.5, w = l.ue_cel_max_hrt || 3E4, t = \"robotdetection\", q = [], g = [], s = a.ue_cel_ns || \"cel\", v, A, b = a.ue, F = a.uet, C = a.uex, u = b.rid, D = a.ue_dsbl_cel, h = l.csa, p, y = l.ue_cel_hrt_int || 3E3, E = l.requestAnimationFrame || function(a) {\n                        a()\n                    }\n                    ;\n                    h && (p = h(\"Events\", {\n                        producerId: t\n                    }));\n                    if (b.isBF)\n                        m({\n                            k: \"bft\",\n                            t: b.d()\n                        });\n                    else {\n                        \"function\" == typeof F && F(\"bb\", \"csmCELLSframework\", {\n                            wb: 1\n                        });\n                        k(c, 0);\n                        b.onunload(f);\n                        if (b.onflush)\n                            b.onflush(x);\n                        v = k(f, 6E5);\n                        z();\n                        \"function\" == typeof C && C(\"ld\", \"csmCELLSframework\", {\n                            wb: 1\n                        });\n                        return {\n                            registerModule: function(a, r) {\n                                q.push({\n                                    name: a,\n                                    api: r\n                                });\n                                m({\n                                    k: \"mrg\",\n                                    n: a,\n                                    t: b.d()\n                                });\n                                c()\n                            },\n                            reset: function(a) {\n                                m({\n                                    k: \"rst\",\n                                    t0: b.t0,\n                                    t: b.d()\n                                });\n                                q = q.concat(g);\n                                g = [];\n                                for (var r = q.length, e = 0; e < r; e++)\n                                    q[e].api.off(),\n                                    q[e].api.reset();\n                                u = a || b.rid;\n                                c();\n                                d(v);\n                                v = k(f, 6E5);\n                                f.executed = 0\n                            },\n                            timeout: function(a, b) {\n                                return k(function() {\n                                    E(function() {\n                                        f.executed || a()\n                                    })\n                                }, b)\n                            },\n                            log: m,\n                            csaEventLog: n,\n                            off: f\n                        }\n                    }\n                }())\n            }\n            )(ue_csm);\n            (function(a) {\n                a.ue_pdm || !a.ue_cel || a.ue.isBF || (a.ue_pdm = function() {\n                    function m() {\n                        try {\n                            var b = d.screen;\n                            if (b) {\n                                var c = {\n                                    w: b.width,\n                                    aw: b.availWidth,\n                                    h: b.height,\n                                    ah: b.availHeight,\n                                    cd: b.colorDepth,\n                                    pd: b.pixelDepth\n                                };\n                                g && g.w === c.w && g.h === c.h && g.aw === c.aw && g.ah === c.ah && g.pd === c.pd && g.cd === c.cd || (g = c,\n                                g.t = t(),\n                                g.k = \"sci\",\n                                F(g),\n                                D && h(\"sci\", {\n                                    h: (g.h || \"0\") + \"\"\n                                }))\n                            }\n                            var k = e.body || {}\n                              , f = e.documentElement || {}\n                              , n = {\n                                w: Math.max(k.scrollWidth || 0, k.offsetWidth || 0, f.clientWidth || 0, f.scrollWidth || 0, f.offsetWidth || 0),\n                                h: Math.max(k.scrollHeight || 0, k.offsetHeight || 0, f.clientHeight || 0, f.scrollHeight || 0, f.offsetHeight || 0)\n                            };\n                            s && s.w === n.w && s.h === n.h || (s = n,\n                            s.t = t(),\n                            s.k = \"doi\",\n                            F(s));\n                            w = a.ue_cel.timeout(m, q);\n                            A += 1\n                        } catch (p) {\n                            d.ueLogError && ueLogError(p, {\n                                attribution: \"csm-cel-page-module\",\n                                logLevel: \"WARN\"\n                            })\n                        }\n                    }\n                    function n() {\n                        x(\"ebl\", \"default\", !1)\n                    }\n                    function c() {\n                        x(\"efo\", \"default\", !0)\n                    }\n                    function f() {\n                        x(\"ebl\", \"app\", !1)\n                    }\n                    function B() {\n                        x(\"efo\", \"app\", !0)\n                    }\n                    function z() {\n                        d.setTimeout(function() {\n                            e[E] ? x(\"ebl\", \"pageviz\", !1) : x(\"efo\", \"pageviz\", !0)\n                        }, 0)\n                    }\n                    function x(a, b, c) {\n                        v !== c && (F({\n                            k: a,\n                            t: t(),\n                            s: b\n                        }, {\n                            ff: !0 === c ? 0 : 1\n                        }),\n                        D && h(a, {\n                            t: (t() || \"0\") + \"\",\n                            s: b\n                        }));\n                        v = c\n                    }\n                    function l() {\n                        b.attach && (p && b.attach(y, z, e),\n                        G && P.when(\"mash\").execute(function(a) {\n                            a && a.addEventListener && (a.addEventListener(\"appPause\", f),\n                            a.addEventListener(\"appResume\", B))\n                        }),\n                        b.attach(\"blur\", n, d),\n                        b.attach(\"focus\", c, d))\n                    }\n                    function k() {\n                        b.detach && (p && b.detach(y, z, e),\n                        G && P.when(\"mash\").execute(function(a) {\n                            a && a.removeEventListener && (a.removeEventListener(\"appPause\", f),\n                            a.removeEventListener(\"appResume\", B))\n                        }),\n                        b.detach(\"blur\", n, d),\n                        b.detach(\"focus\", c, d))\n                    }\n                    var d = a.window, e = a.document, w, t, q, g, s, v = null, A = 0, b = a.ue, F = a.ue_cel.log, C = a.uet, u = a.uex, D = d.csa, h = a.ue_cel.csaEventLog, p = !!b.pageViz, y = p && b.pageViz.event, E = p && b.pageViz.propHid, G = d.P && d.P.when;\n                    \"function\" == typeof C && C(\"bb\", \"csmCELLSpdm\", {\n                        wb: 1\n                    });\n                    return {\n                        on: function(a) {\n                            q = a.timespan || 500;\n                            t = a.ts;\n                            l();\n                            a = d.location;\n                            F({\n                                k: \"pmd\",\n                                o: a.origin,\n                                p: a.pathname,\n                                t: t()\n                            });\n                            m();\n                            \"function\" == typeof u && u(\"ld\", \"csmCELLSpdm\", {\n                                wb: 1\n                            })\n                        },\n                        off: function(a) {\n                            clearTimeout(w);\n                            k();\n                            b.count && b.count(\"cel.PDM.TotalExecutions\", A)\n                        },\n                        ready: function() {\n                            return e.body && a.ue_cel && a.ue_cel.log\n                        },\n                        reset: function() {\n                            g = s = null\n                        }\n                    }\n                }(),\n                a.ue_cel && a.ue_cel.registerModule(\"page module\", a.ue_pdm))\n            }\n            )(ue_csm);\n            (function(a) {\n                a.ue_vpm || !a.ue_cel || a.ue.isBF || (a.ue_vpm = function() {\n                    function m() {\n                        var a = z()\n                          , b = {\n                            w: k.innerWidth,\n                            h: k.innerHeight,\n                            x: k.pageXOffset,\n                            y: k.pageYOffset\n                        };\n                        c && c.w == b.w && c.h == b.h && c.x == b.x && c.y == b.y || (b.t = a,\n                        b.k = \"vpi\",\n                        c = b,\n                        e(c, {\n                            clog: 1\n                        }),\n                        s && v(\"vpi\", {\n                            t: (c.t || \"0\") + \"\",\n                            h: (c.h || \"0\") + \"\",\n                            y: (c.y || \"0\") + \"\",\n                            w: (c.w || \"0\") + \"\",\n                            x: (c.x || \"0\") + \"\"\n                        }));\n                        f = 0;\n                        x = z() - a;\n                        l += 1\n                    }\n                    function n() {\n                        f || (f = a.ue_cel.timeout(m, B))\n                    }\n                    var c, f, B, z, x = 0, l = 0, k = a.window, d = a.ue, e = a.ue_cel.log, w = a.uet, t = a.uex, q = d.attach, g = d.detach, s = k.csa, v = a.ue_cel.csaEventLog;\n                    \"function\" == typeof w && w(\"bb\", \"csmCELLSvpm\", {\n                        wb: 1\n                    });\n                    return {\n                        on: function(a) {\n                            z = a.ts;\n                            B = a.timespan || 100;\n                            m();\n                            q && (q(\"scroll\", n),\n                            q(\"resize\", n));\n                            \"function\" == typeof t && t(\"ld\", \"csmCELLSvpm\", {\n                                wb: 1\n                            })\n                        },\n                        off: function(a) {\n                            clearTimeout(f);\n                            g && (g(\"scroll\", n),\n                            g(\"resize\", n));\n                            d.count && (d.count(\"cel.VPI.TotalExecutions\", l),\n                            d.count(\"cel.VPI.TotalExecutionTime\", x),\n                            d.count(\"cel.VPI.AverageExecutionTime\", x / l))\n                        },\n                        ready: function() {\n                            return a.ue_cel && a.ue_cel.log\n                        },\n                        reset: function() {\n                            c = void 0\n                        },\n                        getVpi: function() {\n                            return c\n                        }\n                    }\n                }(),\n                a.ue_cel && a.ue_cel.registerModule(\"viewport module\", a.ue_vpm))\n            }\n            )(ue_csm);\n            (function(a) {\n                if (!a.ue_fem && a.ue_cel && a.ue_utils) {\n                    var m = a.ue || {}\n                      , n = a.window\n                      , c = n.document;\n                    !m.isBF && !a.ue_fem && c.querySelector && n.getComputedStyle && [].forEach && (a.ue_fem = function() {\n                        function f(a, b) {\n                            return a > b ? 3 > a - b : 3 > b - a\n                        }\n                        function B(a, b) {\n                            var c = n.pageXOffset, d = n.pageYOffset, k;\n                            a: {\n                                try {\n                                    if (a) {\n                                        var e = a.getBoundingClientRect(), g, m = 0 === a.offsetWidth && 0 === a.offsetHeight;\n                                        c: {\n                                            for (var h = a.parentNode, p = e.left || 0, w = e.top || 0, q = e.width || 0, s = e.height || 0; h && h !== document.body; ) {\n                                                var l;\n                                                d: {\n                                                    try {\n                                                        var r = void 0;\n                                                        if (h)\n                                                            var t = h.getBoundingClientRect()\n                                                              , r = {\n                                                                x: t.left || 0,\n                                                                y: t.top || 0,\n                                                                w: t.width || 0,\n                                                                h: t.height || 0\n                                                            };\n                                                        else\n                                                            r = void 0;\n                                                        l = r;\n                                                        break d\n                                                    } catch (I) {}\n                                                    l = void 0\n                                                }\n                                                var u = window.getComputedStyle(h)\n                                                  , v = \"hidden\" === u.overflow\n                                                  , x = v || \"hidden\" === u.overflowX\n                                                  , y = v || \"hidden\" === u.overflowY\n                                                  , z = w + s - 1 < l.y + 1 || w + 1 > l.y + l.h - 1;\n                                                if ((p + q - 1 < l.x + 1 || p + 1 > l.x + l.w - 1) && x || z && y) {\n                                                    g = !0;\n                                                    break c\n                                                }\n                                                h = h.parentNode\n                                            }\n                                            g = !1\n                                        }\n                                        k = {\n                                            x: e.left + c || 0,\n                                            y: e.top + d || 0,\n                                            w: e.width || 0,\n                                            h: e.height || 0,\n                                            d: (m || g) | 0\n                                        }\n                                    } else\n                                        k = void 0;\n                                    break a\n                                } catch (J) {}\n                                k = void 0\n                            }\n                            if (k && !a.cel_b)\n                                a.cel_b = k,\n                                D({\n                                    n: a.getAttribute(A),\n                                    w: a.cel_b.w,\n                                    h: a.cel_b.h,\n                                    d: a.cel_b.d,\n                                    x: a.cel_b.x,\n                                    y: a.cel_b.y,\n                                    t: b,\n                                    k: \"ewi\",\n                                    cl: a.className\n                                }, {\n                                    clog: 1\n                                });\n                            else {\n                                if (c = k)\n                                    c = a.cel_b,\n                                    d = k,\n                                    c = d.d === c.d && 1 === d.d ? !1 : !(f(c.x, d.x) && f(c.y, d.y) && f(c.w, d.w) && f(c.h, d.h) && c.d === d.d);\n                                c && (a.cel_b = k,\n                                D({\n                                    n: a.getAttribute(A),\n                                    w: a.cel_b.w,\n                                    h: a.cel_b.h,\n                                    d: a.cel_b.d,\n                                    x: a.cel_b.x,\n                                    y: a.cel_b.y,\n                                    t: b,\n                                    k: \"ewi\"\n                                }, {\n                                    clog: 1\n                                }))\n                            }\n                        }\n                        function z(d, e) {\n                            var f;\n                            f = d.c ? c.getElementsByClassName(d.c) : d.id ? [c.getElementById(d.id)] : c.querySelectorAll(d.s);\n                            d.w = [];\n                            for (var g = 0; g < f.length; g++) {\n                                var h = f[g];\n                                if (h) {\n                                    if (!h.getAttribute(A)) {\n                                        var l = h.getAttribute(\"cel_widget_id\") || (d.id_gen || u)(h, g) || h.id;\n                                        h.setAttribute(A, l)\n                                    }\n                                    d.w.push(h);\n                                    k(Q, h, e)\n                                }\n                            }\n                            !1 === C && (F++,\n                            F === b.length && (C = !0,\n                            a.ue_utils.notifyWidgetsLabeled()))\n                        }\n                        function x(a, b) {\n                            h.contains(a) || D({\n                                n: a.getAttribute(A),\n                                t: b,\n                                k: \"ewd\"\n                            }, {\n                                clog: 1\n                            })\n                        }\n                        function l(a) {\n                            K.length && ue_cel.timeout(function() {\n                                if (s) {\n                                    for (var b = R(), c = !1; R() - b < g && !c; ) {\n                                        for (c = S; 0 < c-- && 0 < K.length; ) {\n                                            var d = K.shift();\n                                            T[d.type](d.elem, d.time)\n                                        }\n                                        c = 0 === K.length\n                                    }\n                                    U++;\n                                    l(a)\n                                }\n                            }, 0)\n                        }\n                        function k(a, b, c) {\n                            K.push({\n                                type: a,\n                                elem: b,\n                                time: c\n                            })\n                        }\n                        function d(a, c) {\n                            for (var d = 0; d < b.length; d++)\n                                for (var e = b[d].w || [], h = 0; h < e.length; h++)\n                                    k(a, e[h], c)\n                        }\n                        function e() {\n                            M || (M = a.ue_cel.timeout(function() {\n                                M = null;\n                                var c = v();\n                                d(W, c);\n                                for (var e = 0; e < b.length; e++)\n                                    k(X, b[e], c);\n                                0 === b.length && !1 === C && (C = !0,\n                                a.ue_utils.notifyWidgetsLabeled());\n                                l(c)\n                            }, q))\n                        }\n                        function w() {\n                            M || N || (N = a.ue_cel.timeout(function() {\n                                N = null;\n                                var a = v();\n                                d(Q, a);\n                                l(a)\n                            }, q))\n                        }\n                        function t() {\n                            return y && E && h && h.contains && h.getBoundingClientRect && v\n                        }\n                        var q = 50, g = 4.5, s = !1, v, A = \"data-cel-widget\", b = [], F = 0, C = !1, u = function() {}, D = a.ue_cel.log, h, p, y, E, G = n.MutationObserver || n.WebKitMutationObserver || n.MozMutationObserver, r = !!G, H, I, O = \"DOMAttrModified\", L = \"DOMNodeInserted\", J = \"DOMNodeRemoved\", N, M, K = [], U = 0, S = null, W = \"removedWidget\", X = \"updateWidgets\", Q = \"processWidget\", T, V = n.performance || {}, R = V.now && function() {\n                            return V.now()\n                        }\n                        || function() {\n                            return Date.now()\n                        }\n                        ;\n                        \"function\" == typeof uet && uet(\"bb\", \"csmCELLSfem\", {\n                            wb: 1\n                        });\n                        return {\n                            on: function(d) {\n                                function k() {\n                                    if (t()) {\n                                        T = {\n                                            removedWidget: x,\n                                            updateWidgets: z,\n                                            processWidget: B\n                                        };\n                                        if (r) {\n                                            var a = {\n                                                attributes: !0,\n                                                subtree: !0\n                                            };\n                                            H = new G(w);\n                                            I = new G(e);\n                                            H.observe(h, a);\n                                            I.observe(h, {\n                                                childList: !0,\n                                                subtree: !0\n                                            });\n                                            I.observe(p, a)\n                                        } else\n                                            y.call(h, O, w),\n                                            y.call(h, L, e),\n                                            y.call(h, J, e),\n                                            y.call(p, L, w),\n                                            y.call(p, J, w);\n                                        e()\n                                    }\n                                }\n                                h = c.body;\n                                p = c.head;\n                                y = h.addEventListener;\n                                E = h.removeEventListener;\n                                v = d.ts;\n                                b = a.cel_widgets || [];\n                                S = d.bs || 5;\n                                m.deffered ? k() : m.attach && m.attach(\"load\", k);\n                                \"function\" == typeof uex && uex(\"ld\", \"csmCELLSfem\", {\n                                    wb: 1\n                                });\n                                s = !0\n                            },\n                            off: function() {\n                                t() && (I && (I.disconnect(),\n                                I = null),\n                                H && (H.disconnect(),\n                                H = null),\n                                E.call(h, O, w),\n                                E.call(h, L, e),\n                                E.call(h, J, e),\n                                E.call(p, L, w),\n                                E.call(p, J, w));\n                                m.count && m.count(\"cel.widgets.batchesProcessed\", U);\n                                s = !1\n                            },\n                            ready: function() {\n                                return a.ue_cel && a.ue_cel.log\n                            },\n                            reset: function() {\n                                b = a.cel_widgets || []\n                            }\n                        }\n                    }(),\n                    a.ue_cel && a.ue_fem && a.ue_cel.registerModule(\"features module\", a.ue_fem))\n                }\n            }\n            )(ue_csm);\n            (function(a) {\n                !a.ue_mcm && a.ue_cel && a.ue_utils && !a.ue.isBF && (a.ue_mcm = function() {\n                    function m(a, d) {\n                        var e = a.srcElement || a.target || {}\n                          , f = {\n                            k: n,\n                            w: (d || {}).ow || (B.body || {}).scrollWidth,\n                            h: (d || {}).oh || (B.body || {}).scrollHeight,\n                            t: (d || {}).ots || c(),\n                            x: a.pageX,\n                            y: a.pageY,\n                            p: l.getXPath(e),\n                            n: e.nodeName\n                        };\n                        z && \"function\" === typeof z.now && a.timeStamp && (f.dt = (d || {}).odt || z.now() - a.timeStamp,\n                        f.dt = parseFloat(f.dt.toFixed(2)));\n                        a.button && (f.b = a.button);\n                        e.href && (f.r = l.extractStringValue(e.href));\n                        e.id && (f.i = e.id);\n                        e.className && e.className.split && (f.c = e.className.split(/s+/));\n                        x(f, {\n                            c: 1\n                        })\n                    }\n                    var n = \"mcm\", c, f = a.window, B = f.document, z = f.performance, x = a.ue_cel.log, l = a.ue_utils;\n                    return {\n                        on: function(k) {\n                            c = k.ts;\n                            a.ue_cel_stub && a.ue_cel_stub.replayModule(n, m);\n                            f.addEventListener && f.addEventListener(\"mousedown\", m, !0)\n                        },\n                        off: function(a) {\n                            f.addEventListener && f.removeEventListener(\"mousedown\", m, !0)\n                        },\n                        ready: function() {\n                            return a.ue_cel && a.ue_cel.log\n                        },\n                        reset: function() {}\n                    }\n                }(),\n                a.ue_cel && a.ue_cel.registerModule(\"mouse click module\", a.ue_mcm))\n            }\n            )(ue_csm);\n            (function(a) {\n                a.ue_mmm || !a.ue_cel || a.ue.isBF || (a.ue_mmm = function(m) {\n                    function n(a, b) {\n                        var c = {\n                            x: a.pageX || a.x || 0,\n                            y: a.pageY || a.y || 0,\n                            t: l()\n                        };\n                        !b && p && (c.t - p.t < B || c.x == p.x && c.y == p.y) || (p = c,\n                        u.push(c))\n                    }\n                    function c() {\n                        if (u.length) {\n                            F = H.now();\n                            for (var a = 0; a < u.length; a++) {\n                                var c = u[a]\n                                  , d = a;\n                                y = u[h];\n                                E = c;\n                                var e = void 0;\n                                if (!(e = 2 > d)) {\n                                    e = void 0;\n                                    a: if (u[d].t - u[d - 1].t > f)\n                                        e = 0;\n                                    else {\n                                        for (e = h + 1; e < d; e++) {\n                                            var g = y\n                                              , k = E\n                                              , l = u[e];\n                                            G = (k.x - g.x) * (g.y - l.y) - (g.x - l.x) * (k.y - g.y);\n                                            if (G * G / ((k.x - g.x) * (k.x - g.x) + (k.y - g.y) * (k.y - g.y)) > z) {\n                                                e = 0;\n                                                break a\n                                            }\n                                        }\n                                        e = 1\n                                    }\n                                    e = !e\n                                }\n                                (r = e) ? h = d - 1 : D.pop();\n                                D.push(c)\n                            }\n                            C = H.now() - F;\n                            s = Math.min(s, C);\n                            v = Math.max(v, C);\n                            A = (A * b + C) / (b + 1);\n                            b += 1;\n                            q({\n                                k: x,\n                                e: D,\n                                min: Math.floor(1E3 * s),\n                                max: Math.floor(1E3 * v),\n                                avg: Math.floor(1E3 * A)\n                            }, {\n                                c: 1\n                            });\n                            u = [];\n                            D = [];\n                            h = 0\n                        }\n                    }\n                    var f = 100, B = 20, z = 25, x = \"mmm1\", l, k, d = a.window, e = d.document, w = d.setInterval, t = a.ue, q = a.ue_cel.log, g, s = 1E3, v = 0, A = 0, b = 0, F, C, u = [], D = [], h = 0, p, y, E, G, r, H = m && m.now && m || Date.now && Date || {\n                        now: function() {\n                            return (new Date).getTime()\n                        }\n                    };\n                    return {\n                        on: function(a) {\n                            l = a.ts;\n                            k = a.ns;\n                            t.attach && t.attach(\"mousemove\", n, e);\n                            g = w(c, 3E3)\n                        },\n                        off: function(a) {\n                            k && (p && n(p, !0),\n                            c());\n                            clearInterval(g);\n                            t.detach && t.detach(\"mousemove\", n, e)\n                        },\n                        ready: function() {\n                            return a.ue_cel && a.ue_cel.log\n                        },\n                        reset: function() {\n                            u = [];\n                            D = [];\n                            h = 0;\n                            p = null\n                        }\n                    }\n                }(window.performance),\n                a.ue_cel && a.ue_cel.registerModule(\"mouse move module\", a.ue_mmm))\n            }\n            )(ue_csm);\n\n            ue_csm.ue.exec(function(b, c) {\n                var e = function() {}\n                  , f = function() {\n                    return {\n                        send: function(b, d) {\n                            if (d && b) {\n                                var a;\n                                if (c.XDomainRequest)\n                                    a = new XDomainRequest,\n                                    a.onerror = e,\n                                    a.ontimeout = e,\n                                    a.onprogress = e,\n                                    a.onload = e,\n                                    a.timeout = 0;\n                                else if (c.XMLHttpRequest) {\n                                    if (a = new XMLHttpRequest,\n                                    !(\"withCredentials\"in a))\n                                        throw \"\";\n                                } else\n                                    a = void 0;\n                                if (!a)\n                                    throw \"\";\n                                a.open(\"POST\", b, !0);\n                                a.setRequestHeader && a.setRequestHeader(\"Content-type\", \"text/plain\");\n                                a.send(d)\n                            }\n                        },\n                        isSupported: !0\n                    }\n                }()\n                  , g = function() {\n                    return {\n                        send: function(c, d) {\n                            if (c && d)\n                                if (navigator.sendBeacon(c, d))\n                                    b.ue_sbuimp && b.ue && b.ue.ssw && b.ue.ssw(\"eelsts\", \"scs\");\n                                else\n                                    throw \"\";\n                        },\n                        isSupported: !!navigator.sendBeacon && !(c.cordova && c.cordova.platformId && \"ios\" == c.cordova.platformId)\n                    }\n                }();\n                b.ue._ajx = f;\n                b.ue._sBcn = g\n            }, \"Transportation-clients\")(ue_csm, window);\n            ue_csm.ue.exec(function(b, k) {\n                function B() {\n                    for (var a = 0; a < arguments.length; a++) {\n                        var c = arguments[a];\n                        try {\n                            var g;\n                            if (c.isSupported) {\n                                var f = u.buildPayload(l, e);\n                                g = c.send(K, f)\n                            } else\n                                throw dummyException;\n                            return g\n                        } catch (d) {}\n                    }\n                    a = {\n                        m: \"All supported clients failed\",\n                        attribution: \"CSMSushiClient_TRANSPORTATION_FAIL\",\n                        f: \"sushi-client.js\",\n                        logLevel: \"ERROR\"\n                    };\n                    C(a, k.ue_err_chan || \"jserr\");\n                    b.ue_err.buffer && b.ue_err.buffer.push(a)\n                }\n                function m() {\n                    if (e.length) {\n                        for (var a = 0; a < n.length; a++)\n                            n[a]();\n                        B(d._sBcn || {}, d._ajx || {});\n                        e = [];\n                        h = {};\n                        l = {};\n                        v = w = r = x = 0\n                    }\n                }\n                function L() {\n                    var a = new Date\n                      , c = function(a) {\n                        return 10 > a ? \"0\" + a : a\n                    };\n                    return Date.prototype.toISOString ? a.toISOString() : a.getUTCFullYear() + \"-\" + c(a.getUTCMonth() + 1) + \"-\" + c(a.getUTCDate()) + \"T\" + c(a.getUTCHours()) + \":\" + c(a.getUTCMinutes()) + \":\" + c(a.getUTCSeconds()) + \".\" + String((a.getUTCMilliseconds() / 1E3).toFixed(3)).slice(2, 5) + \"Z\"\n                }\n                function y(a) {\n                    try {\n                        return JSON.stringify(a)\n                    } catch (c) {}\n                    return null\n                }\n                function D(a, c, g, f) {\n                    var q = !1;\n                    f = f || {};\n                    s++;\n                    if (s == E) {\n                        var p = {\n                            m: \"Max number of Sushi Logs exceeded\",\n                            f: \"sushi-client.js\",\n                            logLevel: \"ERROR\",\n                            attribution: \"CSMSushiClient_MAX_CALLS\"\n                        };\n                        C(p, k.ue_err_chan || \"jserr\");\n                        b.ue_err.buffer && b.ue_err.buffer.push(p)\n                    }\n                    if (p = !(s >= E))\n                        (p = a && -1 < a.constructor.toString().indexOf(\"Object\") && c && -1 < c.constructor.toString().indexOf(\"String\") && g && -1 < g.constructor.toString().indexOf(\"String\")) || M++;\n                    p && (d.count && d.count(\"Event:\" + g, 1),\n                    a.producerId = a.producerId || c,\n                    a.schemaId = a.schemaId || g,\n                    a.timestamp = L(),\n                    c = Date.now ? Date.now() : +new Date,\n                    g = Math.random().toString().substring(2, 12),\n                    a.messageId = b.ue_id + \"-\" + c + \"-\" + g,\n                    f && !f.ssd && (a.sessionId = a.sessionId || b.ue_sid,\n                    a.requestId = a.requestId || b.ue_id,\n                    a.obfuscatedMarketplaceId = a.obfuscatedMarketplaceId || b.ue_mid),\n                    (c = y(a)) ? (c = c.length,\n                    (e.length == N || r + c > O) && m(),\n                    r += c,\n                    a = {\n                        data: u.compressEvent(a)\n                    },\n                    e.push(a),\n                    (f || {}).n ? 0 === F ? m() : v || (v = k.setTimeout(m, F)) : w || (w = k.setTimeout(m, P)),\n                    q = !0) : q = !1);\n                    !q && b.ue_int && console.error(\"Invalid JS Nexus API call\");\n                    return q\n                }\n                function G() {\n                    if (!H) {\n                        for (var a = 0; a < z.length; a++)\n                            z[a]();\n                        for (a = 0; a < n.length; a++)\n                            n[a]();\n                        e.length && (b.ue_sbuimp && b.ue && b.ue.ssw && (a = y({\n                            dct: l,\n                            evt: e\n                        }),\n                        b.ue.ssw(\"eeldata\", a),\n                        b.ue.ssw(\"eelsts\", \"unk\")),\n                        B(d._sBcn || {}));\n                        H = !0\n                    }\n                }\n                function I(a) {\n                    z.push(a)\n                }\n                function J(a) {\n                    n.push(a)\n                }\n                var E = 1E3\n                  , N = 499\n                  , O = 524288\n                  , t = function() {}\n                  , d = b.ue || {}\n                  , C = d.log || t\n                  , Q = b.uex || t;\n                (b.uet || t)(\"bb\", \"ue_sushi_v1\", {\n                    wb: 1\n                });\n                var K = b.ue_surl || \"https://unagi-na.amazon.com/1/events/com.amazon.csm.nexusclient.gamma\", R = [\"messageId\", \"timestamp\"], A = \"#\", e = [], h = {}, l = {}, r = 0, x = 0, M = 0, s = 0, z = [], n = [], H = !1, v, w, F = void 0 === b.ue_hpsi ? 1E3 : b.ue_hpsi, P = void 0 === b.ue_lpsi ? 1E4 : b.ue_lpsi, u = function() {\n                    function a(a) {\n                        h[a] = A + x++;\n                        l[h[a]] = a;\n                        return h[a]\n                    }\n                    function c(b) {\n                        if (!(b instanceof Function)) {\n                            if (b instanceof Array) {\n                                for (var f = [], d = b.length, e = 0; e < d; e++)\n                                    f[e] = c(b[e]);\n                                return f\n                            }\n                            if (b instanceof Object) {\n                                f = {};\n                                for (d in b)\n                                    b.hasOwnProperty(d) && (f[h[d] ? h[d] : a(d)] = -1 === R.indexOf(d) ? c(b[d]) : b[d]);\n                                return f\n                            }\n                            return \"string\" === typeof b && (b.length > (A + x).length || b.charAt(0) === A) ? h[b] ? h[b] : a(b) : b\n                        }\n                    }\n                    return {\n                        compressEvent: c,\n                        buildPayload: function() {\n                            return y({\n                                cs: {\n                                    dct: l\n                                },\n                                events: e\n                            })\n                        }\n                    }\n                }();\n                (function() {\n                    if (d.event && d.event.isStub) {\n                        if (b.ue_sbuimp && b.ue && b.ue.ssw) {\n                            var a = b.ue.ssw(\"eelsts\").val;\n                            if (a && \"unk\" === a && (a = b.ue.ssw(\"eeldata\").val)) {\n                                var c;\n                                a: {\n                                    try {\n                                        c = JSON.parse(a);\n                                        break a\n                                    } catch (g) {}\n                                    c = null\n                                }\n                                c && c.evt instanceof Array && c.dct instanceof Object && (e = c.evt,\n                                l = c.dct,\n                                e && l && (m(),\n                                b.ue.ssw(\"eeldata\", \"{}\"),\n                                b.ue.ssw(\"eelsts\", \"scs\")))\n                            }\n                        }\n                        d.event.replay(function(a) {\n                            a[3] = a[3] || {};\n                            a[3].n = 1;\n                            D.apply(this, a)\n                        });\n                        d.onSushiUnload.replay(function(a) {\n                            I(a[0])\n                        });\n                        d.onSushiFlush.replay(function(a) {\n                            J(a[0])\n                        })\n                    }\n                }\n                )();\n                d.attach(\"beforeunload\", G);\n                d.attach(\"pagehide\", G);\n                d._cmps = u;\n                d.event = D;\n                d.event.reset = function() {\n                    s = 0\n                }\n                ;\n                d.onSushiUnload = I;\n                d.onSushiFlush = J;\n                try {\n                    k.P && k.P.register && k.P.register(\"sushi-client\", t)\n                } catch (S) {\n                    b.ueLogError(S, {\n                        logLevel: \"WARN\"\n                    })\n                }\n                Q(\"ld\", \"ue_sushi_v1\", {\n                    wb: 1\n                })\n            }, \"Nxs-JS-Client\")(ue_csm, window);\n\n            ue_csm.ue_unrt = 1500;\n            (function(d, b, t) {\n                function u(a, g) {\n                    var c = a.srcElement || a.target || {}\n                      , b = {\n                        k: v,\n                        t: g.t,\n                        dt: g.dt,\n                        x: a.pageX,\n                        y: a.pageY,\n                        p: e.getXPath(c),\n                        n: c.nodeName\n                    };\n                    a.button && (b.b = a.button);\n                    c.type && (b.ty = c.type);\n                    c.href && (b.r = e.extractStringValue(c.href));\n                    c.id && (b.i = c.id);\n                    c.className && c.className.split && (b.c = c.className.split(/s+/));\n                    h += 1;\n                    e.getFirstAscendingWidget(c, function(a) {\n                        b.wd = a;\n                        d.ue.log(b, r)\n                    })\n                }\n                function w(a) {\n                    if (!x(a.srcElement || a.target)) {\n                        m += 1;\n                        n = !0;\n                        var g = f = d.ue.d(), c;\n                        p && \"function\" === typeof p.now && a.timeStamp && (c = p.now() - a.timeStamp,\n                        c = parseFloat(c.toFixed(2)));\n                        s = b.setTimeout(function() {\n                            u(a, {\n                                t: g,\n                                dt: c\n                            })\n                        }, y)\n                    }\n                }\n                function z(a) {\n                    if (a) {\n                        var b = a.filter(A);\n                        a.length !== b.length && (q = !0,\n                        k = d.ue.d(),\n                        n && q && (k && f && d.ue.log({\n                            k: B,\n                            t: f,\n                            m: Math.abs(k - f)\n                        }, r),\n                        l(),\n                        q = !1,\n                        k = 0))\n                    }\n                }\n                function A(a) {\n                    if (!a)\n                        return !1;\n                    var b = \"characterData\" === a.type ? a.target.parentElement : a.target;\n                    if (!b || !b.hasAttributes || !b.attributes)\n                        return !1;\n                    var c = {\n                        \"class\": \"gw-clock gw-clock-aria s-item-container-height-auto feed-carousel using-mouse kfs-inner-container\".split(\" \"),\n                        id: [\"dealClock\", \"deal_expiry_timer\", \"timer\"],\n                        role: [\"timer\"]\n                    }\n                      , d = !1;\n                    Object.keys(c).forEach(function(a) {\n                        var e = b.attributes[a] ? b.attributes[a].value : \"\";\n                        (c[a] || \"\").forEach(function(a) {\n                            -1 !== e.indexOf(a) && (d = !0)\n                        })\n                    });\n                    return d\n                }\n                function x(a) {\n                    if (!a)\n                        return !1;\n                    var b = (e.extractStringValue(a.nodeName) || \"\").toLowerCase()\n                      , c = (e.extractStringValue(a.type) || \"\").toLowerCase()\n                      , d = (e.extractStringValue(a.href) || \"\").toLowerCase();\n                    a = (e.extractStringValue(a.id) || \"\").toLowerCase();\n                    var f = \"checkbox color date datetime-local email file month number password radio range reset search tel text time url week\".split(\" \");\n                    if (-1 !== [\"select\", \"textarea\", \"html\"].indexOf(b) || \"input\" === b && -1 !== f.indexOf(c) || \"a\" === b && -1 !== d.indexOf(\"http\") || -1 !== [\"sitbreaderrightpageturner\", \"sitbreaderleftpageturner\", \"sitbreaderpagecontainer\"].indexOf(a))\n                        return !0\n                }\n                function l() {\n                    n = !1;\n                    f = 0;\n                    b.clearTimeout(s)\n                }\n                function C() {\n                    b.ue.onunload(function() {\n                        ue.count(\"armored-cxguardrails.unresponsive-clicks.violations\", h);\n                        ue.count(\"armored-cxguardrails.unresponsive-clicks.violationRate\", h / m * 100 || 0)\n                    })\n                }\n                if (b.MutationObserver && b.addEventListener && Object.keys && d && d.ue && d.ue.log && d.ue_unrt && d.ue_utils) {\n                    var y = d.ue_unrt\n                      , r = \"cel\"\n                      , v = \"unr_mcm\"\n                      , B = \"res_mcm\"\n                      , p = b.performance\n                      , e = d.ue_utils\n                      , n = !1\n                      , f = 0\n                      , s = 0\n                      , q = !1\n                      , k = 0\n                      , h = 0\n                      , m = 0;\n                    b.addEventListener && (b.addEventListener(\"mousedown\", w, !0),\n                    b.addEventListener(\"beforeunload\", l, !0),\n                    b.addEventListener(\"visibilitychange\", l, !0),\n                    b.addEventListener(\"pagehide\", l, !0));\n                    b.ue && b.ue.event && b.ue.onSushiUnload && b.ue.onunload && C();\n                    (new MutationObserver(z)).observe(t, {\n                        childList: !0,\n                        attributes: !0,\n                        characterData: !0,\n                        subtree: !0\n                    })\n                }\n            }\n            )(ue_csm, window, document);\n\n            ue_csm.ue.exec(function(g, e) {\n                if (e.ue_err) {\n                    var f = \"\";\n                    e.ue_err.errorHandlers || (e.ue_err.errorHandlers = []);\n                    e.ue_err.errorHandlers.push({\n                        name: \"fctx\",\n                        handler: function(a) {\n                            if (!a.logLevel || \"FATAL\" === a.logLevel)\n                                if (f = g.getElementsByTagName(\"html\")[0].innerHTML) {\n                                    var b = f.indexOf(\"var ue_t0=ue_t0||+new Date();\");\n                                    if (-1 !== b) {\n                                        var b = f.substr(0, b).split(String.fromCharCode(10))\n                                          , d = Math.max(b.length - 10 - 1, 0)\n                                          , b = b.slice(d, b.length - 1);\n                                        a.fcsmln = d + b.length + 1;\n                                        a.cinfo = a.cinfo || {};\n                                        for (var c = 0; c < b.length; c++)\n                                            a.cinfo[d + c + 1 + \"\"] = b[c]\n                                    }\n                                    b = f.split(String.fromCharCode(10));\n                                    a.cinfo = a.cinfo || {};\n                                    if (!(a.f || void 0 === a.l || a.l in a.cinfo))\n                                        for (c = +a.l - 1,\n                                        d = Math.max(c - 5, 0),\n                                        c = Math.min(c + 5, b.length - 1); d <= c; d++)\n                                            a.cinfo[d + 1 + \"\"] = b[d]\n                                }\n                        }\n                    })\n                }\n            }, \"fatals-context\")(document, window);\n\n            (function(m, b) {\n                function c(k) {\n                    function f(a) {\n                        a && \"string\" === typeof a && (a = (a = a.match(/^(?:https?:)?//(.*?)(/|$)/i)) && 1 < a.length ? a[1] : null,\n                        a && a && (\"number\" === typeof e[a] ? e[a]++ : e[a] = 1))\n                    }\n                    function d(a) {\n                        var e = 10\n                          , d = +new Date;\n                        a && a.timeRemaining ? e = a.timeRemaining() : a = {\n                            timeRemaining: function() {\n                                return Math.max(0, e - (+new Date - d))\n                            }\n                        };\n                        for (var c = b.performance.getEntries(), k = e; g < c.length && k > n; )\n                            c[g].name && f(c[g].name),\n                            g++,\n                            k = a.timeRemaining();\n                        g >= c.length ? h(!0) : l()\n                    }\n                    function h(a) {\n                        if (!a) {\n                            a = m.scripts;\n                            var c;\n                            if (a)\n                                for (var d = 0; d < a.length; d++)\n                                    (c = a[d].getAttribute(\"src\")) && \"undefined\" !== c && f(c)\n                        }\n                        0 < Object.keys(e).length && (p && ue_csm.ue && ue_csm.ue.event && (a = {\n                            domains: e,\n                            pageType: b.ue_pty || null,\n                            subPageType: b.ue_spty || null,\n                            pageTypeId: b.ue_pti || null\n                        },\n                        ue_csm.ue_sjslob && (a.lob = ue_csm.ue_lob || \"0\"),\n                        ue_csm.ue.event(a, \"csm\", \"csm.CrossOriginDomains.2\")),\n                        b.ue_ext = e)\n                    }\n                    function l() {\n                        !0 === k ? d() : b.requestIdleCallback ? b.requestIdleCallback(d) : b.requestAnimationFrame ? b.requestAnimationFrame(d) : b.setTimeout(d, 100)\n                    }\n                    function c() {\n                        if (b.performance && b.performance.getEntries) {\n                            var a = b.performance.getEntries();\n                            !a || 0 >= a.length ? h(!1) : l()\n                        } else\n                            h(!1)\n                    }\n                    var e = b.ue_ext || {};\n                    b.ue_ext || c();\n                    return e\n                }\n                function q() {\n                    setTimeout(c, r)\n                }\n                var s = b.ue_dserr || !1\n                  , p = !0\n                  , n = 1\n                  , r = 2E3\n                  , g = 0;\n                b.ue_err && s && (b.ue_err.errorHandlers || (b.ue_err.errorHandlers = []),\n                b.ue_err.errorHandlers.push({\n                    name: \"ext\",\n                    handler: function(b) {\n                        if (!b.logLevel || \"FATAL\" === b.logLevel) {\n                            var f = c(!0), d = [], h;\n                            for (h in f) {\n                                var f = h\n                                  , g = f.match(/amazon(.com?)?.w{2,3}$/i);\n                                g && 1 < g.length || -1 !== f.indexOf(\"amazon-adsystem.com\") || -1 !== f.indexOf(\"amazonpay.com\") || -1 !== f.indexOf(\"cloudfront-labs.amazonaws.com\") || d.push(h)\n                            }\n                            b.ext = d\n                        }\n                    }\n                }));\n                b.ue && b.ue.isl ? c() : b.ue && ue.attach && ue.attach(\"load\", q)\n            }\n            )(document, window);\n\n            var ue_wtc_c = 3;\n            ue_csm.ue.exec(function(b, e) {\n                function l() {\n                    for (var a = 0; a < f.length; a++)\n                        a: for (var d = s.replace(A, f[a]) + g[f[a]] + t, c = arguments, b = 0; b < c.length; b++)\n                            try {\n                                c[b].send(d);\n                                break a\n                            } catch (e) {}\n                    g = {};\n                    f = [];\n                    n = 0;\n                    k = p\n                }\n                function u() {\n                    B ? l(q) : l(C, q)\n                }\n                function v(a, m, c) {\n                    r++;\n                    if (r > w)\n                        d.count && 1 == r - w && (d.count(\"WeblabTriggerThresholdReached\", 1),\n                        b.ue_int && console.error(\"Number of max call reached. Data will no longer be send\"));\n                    else {\n                        var h = c || {};\n                        h && -1 < h.constructor.toString().indexOf(D) && a && -1 < a.constructor.toString().indexOf(x) && m && -1 < m.constructor.toString().indexOf(x) ? (h = b.ue_id,\n                        c && c.rid && (h = c.rid),\n                        c = h,\n                        a = encodeURIComponent(\",wl=\" + a + \"/\" + m),\n                        2E3 > a.length + p ? (2E3 < k + a.length && u(),\n                        void 0 === g[c] && (g[c] = \"\",\n                        f.push(c)),\n                        g[c] += a,\n                        k += a.length,\n                        n || (n = e.setTimeout(u, E))) : b.ue_int && console.error(\"Invalid API call. The input provided is over 2000 chars.\")) : d.count && (d.count(\"WeblabTriggerImproperAPICall\", 1),\n                        b.ue_int && console.error(\"Invalid API call. The input provided does not match the API protocol i.e ue.trigger(String, String, Object).\"))\n                    }\n                }\n                function F() {\n                    d.trigger && d.trigger.isStub && d.trigger.replay(function(a) {\n                        v.apply(this, a)\n                    })\n                }\n                function y() {\n                    z || (f.length && l(q),\n                    z = !0)\n                }\n                var t = \":1234\", s = \"//\" + b.ue_furl + \"/1/remote-weblab-triggers/1/OE/\" + b.ue_mid + \":\" + b.ue_sid + \":PLCHLDR_RID$s:wl-client-id%3DCSMTriger\", A = \"PLCHLDR_RID\", E = b.wtt || 1E4, p = s.length + t.length, w = b.mwtc || 2E3, G = 1 === e.ue_wtc_c, B = 3 === e.ue_wtc_c, H = e.XMLHttpRequest && \"withCredentials\"in new e.XMLHttpRequest, x = \"String\", D = \"Object\", d = b.ue, g = {}, f = [], k = p, n, z = !1, r = 0, C = function() {\n                    return {\n                        send: function(a) {\n                            if (H) {\n                                var b = new e.XMLHttpRequest;\n                                b.open(\"GET\", a, !0);\n                                G && (b.withCredentials = !0);\n                                b.send()\n                            } else\n                                throw \"\";\n                        }\n                    }\n                }(), q = function() {\n                    return {\n                        send: function(a) {\n                            (new Image).src = a\n                        }\n                    }\n                }();\n                e.encodeURIComponent && (d.attach && (d.attach(\"beforeunload\", y),\n                d.attach(\"pagehide\", y)),\n                F(),\n                d.trigger = v)\n            }, \"client-wbl-trg\")(ue_csm, window);\n\n            (function(k, d, h) {\n                function f(a, c, b) {\n                    a && a.indexOf && 0 === a.indexOf(\"http\") && 0 !== a.indexOf(\"https\") && l(s, c, a, b)\n                }\n                function g(a, c, b) {\n                    a && a.indexOf && (location.href.split(\"#\")[0] != a && null !== a && \"undefined\" !== typeof a || l(t, c, a, b))\n                }\n                function l(a, c, b, e) {\n                    m[b] || (e = u && e ? n(e) : \"N/A\",\n                    d.ueLogError && d.ueLogError({\n                        message: a + c + \" : \" + b,\n                        logLevel: v,\n                        stack: \"N/A\"\n                    }, {\n                        attribution: e\n                    }),\n                    m[b] = 1,\n                    p++)\n                }\n                function e(a, c) {\n                    if (a && c)\n                        for (var b = 0; b < a.length; b++)\n                            try {\n                                c(a[b])\n                            } catch (d) {}\n                }\n                function q() {\n                    return d.performance && d.performance.getEntriesByType ? d.performance.getEntriesByType(\"resource\") : []\n                }\n                function n(a) {\n                    if (a.id)\n                        return \"//*[@id='\" + a.id + \"']\";\n                    var c;\n                    c = 1;\n                    var b;\n                    for (b = a.previousSibling; b; b = b.previousSibling)\n                        b.nodeName == a.nodeName && (c += 1);\n                    b = a.nodeName;\n                    1 != c && (b += \"[\" + c + \"]\");\n                    a.parentNode && (b = n(a.parentNode) + \"/\" + b);\n                    return b\n                }\n                function w() {\n                    var a = h.images;\n                    a && a.length && e(a, function(a) {\n                        var b = a.getAttribute(\"src\");\n                        f(b, \"img\", a);\n                        g(b, \"img\", a)\n                    })\n                }\n                function x() {\n                    var a = h.scripts;\n                    a && a.length && e(a, function(a) {\n                        var b = a.getAttribute(\"src\");\n                        f(b, \"script\", a);\n                        g(b, \"script\", a)\n                    })\n                }\n                function y() {\n                    var a = h.styleSheets;\n                    a && a.length && e(a, function(a) {\n                        if (a = a.ownerNode) {\n                            var b = a.getAttribute(\"href\");\n                            f(b, \"style\", a);\n                            g(b, \"style\", a)\n                        }\n                    })\n                }\n                function z() {\n                    if (A) {\n                        var a = q();\n                        e(a, function(a) {\n                            f(a.name, a.initiatorType)\n                        })\n                    }\n                }\n                function B() {\n                    e(q(), function(a) {\n                        g(a.name, a.initiatorType)\n                    })\n                }\n                function r() {\n                    var a;\n                    a = d.location && d.location.protocol ? d.location.protocol : void 0;\n                    \"https:\" == a && (z(),\n                    w(),\n                    x(),\n                    y(),\n                    B(),\n                    p < C && setTimeout(r, D))\n                }\n                var s = \"[CSM] Insecure content detected \"\n                  , t = \"[CSM] Ajax request to same page detected \"\n                  , v = \"WARN\"\n                  , m = {}\n                  , p = 0\n                  , D = k.ue_nsip || 1E3\n                  , C = 5\n                  , A = 1 == k.ue_urt\n                  , u = !0;\n                ue_csm.ue_disableNonSecure || (d.performance && d.performance.setResourceTimingBufferSize && d.performance.setResourceTimingBufferSize(300),\n                r())\n            }\n            )(ue_csm, window, document);\n\n            var ue_aa_a = \"\";\n            if (ue.trigger && (ue_aa_a === \"C\" || ue_aa_a === \"T1\")) {\n                ue.trigger(\"UEDATA_AA_SERVERSIDE_ASSIGNMENT_CLIENTSIDE_TRIGGER_190249\", ue_aa_a);\n            }\n            (function(f, b) {\n                function g() {\n                    try {\n                        b.PerformanceObserver && \"function\" === typeof b.PerformanceObserver && (a = new b.PerformanceObserver(function(b) {\n                            c(b.getEntries())\n                        }\n                        ),\n                        a.observe(d))\n                    } catch (h) {\n                        k()\n                    }\n                }\n                function m() {\n                    for (var h = d.entryTypes, a = 0; a < h.length; a++)\n                        c(b.performance.getEntriesByType(h[a]))\n                }\n                function c(a) {\n                    if (a && Array.isArray(a)) {\n                        for (var c = 0, e = 0; e < a.length; e++) {\n                            var d = l.indexOf(a[e].name);\n                            if (-1 !== d) {\n                                var g = Math.round(b.performance.timing.navigationStart + a[e].startTime);\n                                f.uet(n[d], void 0, void 0, g);\n                                c++\n                            }\n                        }\n                        l.length === c && k()\n                    }\n                }\n                function k() {\n                    a && a.disconnect && \"function\" === typeof a.disconnect && a.disconnect()\n                }\n                if (\"function\" === typeof f.uet && b.performance && \"object\" === typeof b.performance && b.performance.getEntriesByType && \"function\" === typeof b.performance.getEntriesByType && b.performance.timing && \"object\" === typeof b.performance.timing && \"number\" === typeof b.performance.timing.navigationStart) {\n                    var d = {\n                        entryTypes: [\"paint\"]\n                    }, l = [\"first-paint\", \"first-contentful-paint\"], n = [\"fp\", \"fcp\"], a;\n                    try {\n                        m(),\n                        g()\n                    } catch (p) {\n                        f.ueLogError(p, {\n                            logLevel: \"ERROR\",\n                            attribution: \"performanceMetrics\"\n                        })\n                    }\n                }\n            }\n            )(ue_csm, window);\n\n            if (window.csa) {\n                csa(\"Events\")(\"setEntity\", {\n                    page: {\n                        pageType: \"VendorRemittanceLibertyApp\",\n                        subPageType: \"RemittanceRegionalVendorView\",\n                        pageTypeId: \"\"\n                    }\n                });\n            }\n            csa.plugin(function(c) {\n                var m = \"transitionStart\"\n                  , n = \"pageVisible\"\n                  , e = \"PageTiming\"\n                  , t = \"visibilitychange\"\n                  , s = \"$latency.visible\"\n                  , i = c.global\n                  , r = (i.performance || {}).timing\n                  , a = [\"navigationStart\", \"unloadEventStart\", \"unloadEventEnd\", \"redirectStart\", \"redirectEnd\", \"fetchStart\", \"domainLookupStart\", \"domainLookupEnd\", \"connectStart\", \"connectEnd\", \"secureConnectionStart\", \"requestStart\", \"responseStart\", \"responseEnd\", \"domLoading\", \"domInteractive\", \"domContentLoadedEventStart\", \"domContentLoadedEventEnd\", \"domComplete\", \"loadEventStart\", \"loadEventEnd\"]\n                  , u = c.config\n                  , o = i.Math\n                  , l = o.max\n                  , g = o.floor\n                  , d = i.document || {}\n                  , f = (r || {}).navigationStart\n                  , v = f\n                  , p = 0\n                  , S = null;\n                if (i.Object.keys && [].forEach && !u[\"KillSwitch.\" + e]) {\n                    if (!r || null === f || f <= 0 || void 0 === f)\n                        return c.error(\"Invalid navigation timing data: \" + f);\n                    S = new E({\n                        schemaId: \"<ns>.PageLatency.6\",\n                        producerId: \"csa\"\n                    }),\n                    \"boolean\" != typeof d.hidden && \"string\" != typeof d.visibilityState || !d.removeEventListener ? c.emit(s) : b() ? (c.emit(s),\n                    I(n, f)) : c.on(d, t, function e() {\n                        b() && (v = c.time(),\n                        d.removeEventListener(t, e),\n                        I(m, v),\n                        I(n, v),\n                        c.emit(s))\n                    }),\n                    c.once(\"$unload\", h),\n                    c.once(\"$load\", h),\n                    c.on(\"$pageTransition\", function() {\n                        v = c.time()\n                    }),\n                    c.register(e, {\n                        mark: I,\n                        instance: function(e) {\n                            return new E(e)\n                        }\n                    })\n                }\n                function E(e) {\n                    var i, r = null, a = e.ent || {\n                        page: [\"pageType\", \"subPageType\", \"requestId\"]\n                    }, o = e.logger || c(\"Events\", {\n                        producerId: e.producerId,\n                        lob: u.lob || \"0\"\n                    });\n                    if (!e || !e.producerId || !e.schemaId)\n                        return c.error(\"The producer id and schema Id must be defined for PageLatencyInstance.\");\n                    function d() {\n                        return i || v\n                    }\n                    function n() {\n                        r = c.UUID()\n                    }\n                    this.mark = function(n, t) {\n                        if (null != n)\n                            return t = t || c.time(),\n                            n === m && (i = t),\n                            c.once(s, function() {\n                                o(\"log\", {\n                                    messageId: r,\n                                    __merge: function(e) {\n                                        e.markers[n] = function(e, n) {\n                                            return l(0, n - (e || v))\n                                        }(d(), t),\n                                        e.markerTimestamps[n] = g(t)\n                                    },\n                                    markers: {},\n                                    markerTimestamps: {},\n                                    navigationStartTimestamp: d() ? new Date(d()).toISOString() : null,\n                                    schemaId: e.schemaId\n                                }, {\n                                    ent: a\n                                })\n                            }),\n                            t\n                    }\n                    ,\n                    n(),\n                    c.on(\"$beforePageTransition\", n)\n                }\n                function I(e, n) {\n                    e === m && (v = n);\n                    var t = S.mark(e, n);\n                    c.emit(\"$timing:\" + e, t)\n                }\n                function h() {\n                    if (!p) {\n                        for (var e = 0; e < a.length; e++)\n                            r[a[e]] && I(a[e], r[a[e]]);\n                        p = 1\n                    }\n                }\n                function b() {\n                    return !d.hidden || \"visible\" === d.visibilityState\n                }\n            });\n            csa.plugin(function(c) {\n                var f, u, l = \"length\", a = \"parentElement\", t = \"target\", i = \"getEntriesByName\", e = null, r = \"_csa_flt\", o = \"_csa_llt\", s = \"previousSibling\", d = \"visuallyLoaded\", n = \"client\", g = \"offset\", h = \"scroll\", m = \"Width\", p = \"Height\", v = n + m, y = n + p, E = g + m, S = g + p, x = h + m, O = h + p, b = \"_osrc\", w = \"_elt\", I = \"_eid\", T = 10, _ = 5, L = 15, N = 100, k = c.global, B = c.timeout, H = k.Math, W = H.max, C = H.floor, F = H.ceil, M = k.document || {}, R = M.body || {}, Y = M.documentElement || {}, P = k.performance || {}, X = (P.timing || {}).navigationStart, $ = Date.now, D = Object.values || (c.types || {}).ovl, J = c(\"PageTiming\"), V = c(\"SpeedIndexBuffers\"), j = [], q = [], z = [], A = [], G = [], K = [], Q = .1, U = .1, Z = 0, ee = 0, ne = !0, te = 0, ie = 0, re = 1 == c.config[\"SpeedIndex.ForceReplay\"], oe = 0, ae = 1, fe = 0, ce = {}, ue = [], le = 0;\n                function se() {\n                    for (var e = $(), n = 0; f; ) {\n                        if (0 !== f[l]) {\n                            if (!1 !== f.h(f[0]) && f.shift(),\n                            n++,\n                            !re && n % T == 0 && $() - e > _)\n                                break\n                        } else\n                            f = f.n\n                    }\n                    Z = 0,\n                    f && (Z || (!0 === M.hidden ? (re = 1,\n                    se()) : c.timeout(se, 0)))\n                }\n                function de(e, n, t, i, r) {\n                    fe = C(e),\n                    j = n,\n                    q = t,\n                    z = i,\n                    K = r;\n                    var o = M.createTreeWalker(M.body, NodeFilter.SHOW_TEXT, null, null)\n                      , a = {\n                        w: k.innerWidth,\n                        h: k.innerHeight,\n                        x: k.pageXOffset,\n                        y: k.pageYOffset\n                    };\n                    M.body[w] = e,\n                    A.push({\n                        w: o,\n                        vp: a\n                    }),\n                    G.push({\n                        img: M.images,\n                        iter: 0\n                    }),\n                    j.h = ge,\n                    (j.n = q).h = he,\n                    (q.n = z).h = me,\n                    (z.n = A).h = pe,\n                    (A.n = G).h = ve,\n                    (G.n = K).h = ye,\n                    f = j,\n                    se()\n                }\n                function ge(e) {\n                    e.m.forEach(function(e) {\n                        for (var n = e; n && (e === n || !n[r] || !n[o]); )\n                            n[r] || (n[r] = e[r]),\n                            n[o] || (n[o] = e[o]),\n                            n[w] = n[r] - X,\n                            n = n[s]\n                    })\n                }\n                function he(e) {\n                    e.m.forEach(function(e) {\n                        var n = e[t];\n                        b in n || (n[b] = e.oldValue)\n                    })\n                }\n                function me(n) {\n                    n.m.forEach(function(e) {\n                        e[t][w] = n.t - X\n                    })\n                }\n                function pe(e) {\n                    for (var n, t = e.vp, i = e.w, r = T; (n = i.nextNode()) && 0 < r; ) {\n                        r -= 1;\n                        var o = (n[a] || {}).nodeName;\n                        \"SCRIPT\" !== o && \"STYLE\" !== o && \"NOSCRIPT\" !== o && \"BODY\" !== o && 0 !== (n.nodeValue || \"\").trim()[l] && be(n[a], Ee(n), t)\n                    }\n                    return !n\n                }\n                function ve(e) {\n                    for (var n = {\n                        w: k.innerWidth,\n                        h: k.innerHeight,\n                        x: k.pageXOffset,\n                        y: k.pageYOffset\n                    }, t = T; e.iter < e.img[l] && 0 < t; ) {\n                        var i, r = e.img[e.iter], o = Oe(r), a = o && Ee(o) || Ee(r);\n                        o ? (o[w] = a,\n                        i = xe(o.querySelector('[aria-posinset=\"1\"] img') || r) || a,\n                        r = o) : i = xe(r) || a,\n                        ie && u < i && (i = a),\n                        be(r, i, n),\n                        e.iter += 1,\n                        t -= 1\n                    }\n                    return e.img[l] <= e.iter\n                }\n                function ye(e) {\n                    var n = []\n                      , i = 0\n                      , r = 0\n                      , o = ee\n                      , t = k.innerHeight || W(R[O] || 0, R[S] || 0, Y[y] || 0, Y[O] || 0, Y[S] || 0)\n                      , a = C(e.y / N)\n                      , f = F((e.y + t) / N);\n                    ue.slice(a, f).forEach(function(e) {\n                        (e.elems || []).forEach(function(e) {\n                            e.lt in n || (n[e.lt] = {}),\n                            e.id in n[e.lt] || (i += (n[e.lt][e.id] = e).a)\n                        })\n                    }),\n                    D(n).forEach(function(e) {\n                        D(e).forEach(function(e) {\n                            var n = 1 - r / i\n                              , t = W(e.lt, o);\n                            le += n * (t - o),\n                            o = t,\n                            function(e, n) {\n                                var t;\n                                for (; Q <= 1 && Q - .01 <= e; )\n                                    we(d + (t = (100 * Q).toFixed(0)), n.lt),\n                                    \"50\" !== t && \"90\" !== t || c(\"Content\", {\n                                        target: n.e\n                                    })(\"mark\", d + t, X + F(n.lt || 0)),\n                                    Q += U\n                            }((r += e.a) / i, e)\n                        })\n                    }),\n                    ee = e.t - X,\n                    K[l] <= 1 && (we(\"speedIndex\", le),\n                    we(d + \"0\", fe)),\n                    ne && (ne = !1,\n                    we(\"atfSpeedIndex\", le))\n                }\n                function Ee(e) {\n                    for (var n = e[a], t = L; n && 0 < t; ) {\n                        if (n[w] || 0 === n[w])\n                            return W(n[w], fe);\n                        n = n.parentElement,\n                        t -= 1\n                    }\n                }\n                function Se(e, n) {\n                    if (e) {\n                        if (!e.indexOf(\"data:\"))\n                            return Ee(n);\n                        var t = P[i](e) || [];\n                        if (0 < t[l])\n                            return W(F(t[0].responseEnd || 0), fe)\n                    }\n                }\n                function xe(e) {\n                    return Se(e[b], e) || Se(e.currentSrc, e) || Se(e.src, e)\n                }\n                function Oe(e) {\n                    for (var n = 10, t = e.parentElement; t && 0 < n; ) {\n                        if (t.classList && t.classList.contains(\"a-carousel-viewport\"))\n                            return t;\n                        t = t.parentElement,\n                        n -= 1\n                    }\n                    return null\n                }\n                function be(e, n, t) {\n                    if ((n || 0 === n) && !e[I]) {\n                        var i = e.getBoundingClientRect()\n                          , r = i.width * i.height\n                          , o = t.w || W(R[x] || 0, R[E] || 0, Y[v] || 0, Y[x] || 0, Y[E] || 0) || i.right\n                          , a = i.width / 2\n                          , f = ae++;\n                        if (0 != r && !(a < i.right - o || i.right < a)) {\n                            for (var c = {\n                                e: e,\n                                lt: n,\n                                a: r,\n                                id: f\n                            }, u = C((i.top + t.y) / N), l = F((i.top + t.y + i.height) / N), s = u; s <= l; s++)\n                                s in ue || (ue[s] = {\n                                    elems: [],\n                                    lt: 0\n                                }),\n                                ue[s].elems.push(c);\n                            e[I] = f\n                        }\n                    }\n                }\n                function we(e, n) {\n                    J(\"mark\", e, X + F((ce[e] = n) || 0))\n                }\n                function Ie(e) {\n                    oe || (V(\"getBuffers\", de),\n                    oe = 1)\n                }\n                X && D && P[i] && (V(\"registerListener\", function() {\n                    ie && (clearTimeout(te),\n                    te = B(Ie.bind(e, \"Mut\"), 2500))\n                }),\n                c.once(\"$unload\", function() {\n                    re = 1,\n                    Ie()\n                }),\n                c.once(\"$load\", function() {\n                    ie = 1,\n                    u = $() - X,\n                    te = B(Ie.bind(e, \"Ld\"), 2500)\n                }),\n                c.once(\"$timing:functional\", Ie.bind(e, \"Fn\")),\n                V(\"replayModuleIsLive\"),\n                c.register(\"SpeedIndex\", {\n                    getMarkers: function(e) {\n                        e && e(JSON.parse(JSON.stringify(ce)))\n                    }\n                }))\n            });\n            csa.plugin(function(e) {\n                var m = !!e.config[\"LCP.elementDedup\"]\n                  , t = !1\n                  , n = e(\"PageTiming\")\n                  , r = e.global.PerformanceObserver\n                  , a = e.global.performance;\n                function i() {\n                    return a.timing.navigationStart\n                }\n                function o() {\n                    t || function(o) {\n                        var l = new r(function(e) {\n                            var t = e.getEntries();\n                            if (0 !== t.length) {\n                                var n = t[t.length - 1];\n                                if (m && \"\" !== n.id && n.element && \"IMG\" === n.element.tagName) {\n                                    for (var r = {}, a = t[0], i = 0; i < t.length; i++)\n                                        t[i].id in r || (\"\" !== t[i].id && (r[t[i].id] = !0),\n                                        a.startTime < t[i].startTime && (a = t[i]));\n                                    n = a\n                                }\n                                l.disconnect(),\n                                o({\n                                    startTime: n.startTime,\n                                    renderTime: n.renderTime,\n                                    loadTime: n.loadTime\n                                })\n                            }\n                        }\n                        );\n                        try {\n                            l.observe({\n                                type: \"largest-contentful-paint\",\n                                buffered: !0\n                            })\n                        } catch (e) {}\n                    }(function(e) {\n                        e && (t = !0,\n                        n(\"mark\", \"largestContentfulPaint\", Math.floor(e.startTime + i())),\n                        e.renderTime && n(\"mark\", \"largestContentfulPaint.render\", Math.floor(e.renderTime + i())),\n                        e.loadTime && n(\"mark\", \"largestContentfulPaint.load\", Math.floor(e.loadTime + i())))\n                    })\n                }\n                r && a && a.timing && (e.once(\"$unload\", o),\n                e.once(\"$load\", o),\n                e.register(\"LargestContentfulPaint\", {}))\n            });\n            csa.plugin(function(r) {\n                var e = r(\"Metrics\", {\n                    producerId: \"csa\"\n                })\n                  , n = r.global.PerformanceObserver;\n                n && (n = new n(function(r) {\n                    var t = r.getEntries();\n                    if (0 === t.length || !t[0].processingStart || !t[0].startTime)\n                        return;\n                    !function(r) {\n                        r = r || 0,\n                        n.disconnect(),\n                        0 <= r ? e(\"recordMetric\", \"firstInputDelay\", r) : e(\"recordMetric\", \"firstInputDelay.invalid\", 1)\n                    }(t[0].processingStart - t[0].startTime)\n                }\n                ),\n                function() {\n                    try {\n                        n.observe({\n                            type: \"first-input\",\n                            buffered: !0\n                        })\n                    } catch (r) {}\n                }())\n            });\n            csa.plugin(function(d) {\n                var e = \"Metrics\"\n                  , g = d.config\n                  , f = 0;\n                function r(i) {\n                    var c, t, e = i.producerId, r = i.logger, o = r || d(\"Events\", {\n                        producerId: e,\n                        lob: g.lob || \"0\"\n                    }), s = (i || {}).dimensions || {}, u = {}, n = -1;\n                    if (!e && !r)\n                        return d.error(\"Either a producer id or custom logger must be defined\");\n                    function a() {\n                        n !== f && (c = d.UUID(),\n                        t = d.UUID(),\n                        u = {},\n                        n = f)\n                    }\n                    this.recordMetric = function(r, n) {\n                        var e = i.logOptions || {\n                            ent: {\n                                page: [\"pageType\", \"subPageType\", \"requestId\"]\n                            }\n                        };\n                        e.debugMetric = i.debugMetric,\n                        a(),\n                        o(\"log\", {\n                            messageId: c,\n                            schemaId: i.schemaId || \"<ns>.Metric.4\",\n                            metrics: {},\n                            dimensions: s,\n                            __merge: function(e) {\n                                e.metrics[r] = n\n                            }\n                        }, e)\n                    }\n                    ,\n                    this.recordCounter = function(r, e) {\n                        var n = i.logOptions || {\n                            ent: {\n                                page: [\"pageType\", \"subPageType\", \"requestId\"]\n                            }\n                        };\n                        if (\"string\" != typeof r || \"number\" != typeof e || !isFinite(e))\n                            return d.error(\"Invalid type given for counter name or counter value: \" + r + \"/\" + e);\n                        a(),\n                        r in u || (u[r] = {});\n                        var c = u[r];\n                        \"f\"in c || (c.f = e),\n                        c.c = (c.c || 0) + 1,\n                        c.s = (c.s || 0) + e,\n                        c.l = e,\n                        o(\"log\", {\n                            messageId: t,\n                            schemaId: i.schemaId || \"<ns>.InternalCounters.3\",\n                            c: {},\n                            __merge: function(e) {\n                                r in e.c || (e.c[r] = {}),\n                                c.fs || (c.fs = 1,\n                                e.c[r].f = c.f),\n                                1 < c.c && (e.c[r].s = c.s,\n                                e.c[r].l = c.l,\n                                e.c[r].c = c.c)\n                            }\n                        }, n)\n                    }\n                }\n                g[\"KillSwitch.\" + e] || (new r({\n                    producerId: \"csa\"\n                }).recordMetric(\"baselineMetricEvent\", 1),\n                d.on(\"$beforePageTransition\", function() {\n                    f++\n                }),\n                d.register(e, {\n                    instance: function(e) {\n                        return new r(e || {})\n                    }\n                }))\n            });\n            csa.plugin(function(s) {\n                var n = s.config\n                  , r = (s.global.performance || {}).timing\n                  , c = (r || {}).navigationStart || s.time()\n                  , g = 0;\n                function e() {\n                    g += 1\n                }\n                function i(i) {\n                    i = i || {};\n                    var o = s.UUID()\n                      , t = g\n                      , r = i.producerId\n                      , e = i.logger\n                      , a = e || s(\"Events\", {\n                        producerId: r,\n                        lob: n.lob || \"0\"\n                    });\n                    if (!r && !e)\n                        return s.error(\"Either a producer id or custom logger must be defined\");\n                    this.mark = function(e, r) {\n                        var n = (void 0 === r ? s.time() : r) - c;\n                        t !== g && (t = g,\n                        o = s.UUID()),\n                        a(\"log\", {\n                            messageId: o,\n                            schemaId: i.schemaId || \"<ns>.Timer.1\",\n                            markers: {},\n                            __merge: function(r) {\n                                r.markers[e] = n\n                            }\n                        }, i.logOptions)\n                    }\n                }\n                r && (e(),\n                s.on(\"$beforePageTransition\", e),\n                s.register(\"Timers\", {\n                    instance: function(r) {\n                        return new i(r || {})\n                    }\n                }))\n            });\n            csa.plugin(function(t) {\n                var e = \"takeRecords\"\n                  , i = \"disconnect\"\n                  , n = \"function\"\n                  , o = t(\"Metrics\", {\n                    producerId: \"csa\"\n                })\n                  , c = t(\"PageTiming\")\n                  , a = t.global\n                  , u = t.timeout\n                  , r = t.on\n                  , f = a.PerformanceObserver\n                  , m = 0\n                  , l = !1\n                  , s = 0\n                  , d = a.performance\n                  , h = a.document\n                  , v = null\n                  , y = !1\n                  , g = t.blank;\n                function p() {\n                    l || (l = !0,\n                    clearTimeout(v),\n                    typeof f[e] === n && f[e](),\n                    typeof f[i] === n && f[i](),\n                    o(\"recordMetric\", \"documentCumulativeLayoutShift\", m),\n                    c(\"mark\", \"cumulativeLayoutShiftLastTimestamp\", Math.floor(s + d.timing.navigationStart)))\n                }\n                f && d && d.timing && h && (f = new f(function(t) {\n                    v && clearTimeout(v);\n                    t.getEntries().forEach(function(t) {\n                        t.hadRecentInput || (m += t.value,\n                        s < t.startTime && (s = t.startTime))\n                    }),\n                    v = u(p, 5e3)\n                }\n                ),\n                function() {\n                    try {\n                        f.observe({\n                            type: \"layout-shift\",\n                            buffered: !0\n                        }),\n                        v = u(p, 5e3)\n                    } catch (t) {}\n                }(),\n                g = r(h, \"click\", function(t) {\n                    y || (y = !0,\n                    o(\"recordMetric\", \"documentCumulativeLayoutShiftToFirstInput\", m),\n                    g())\n                }),\n                r(h, \"visibilitychange\", function() {\n                    \"hidden\" === h.visibilityState && p()\n                }),\n                t.once(\"$unload\", p))\n            });\n            csa.plugin(function(e) {\n                var t, n = e.global, r = n.PerformanceObserver, c = e(\"Metrics\", {\n                    producerId: \"csa\"\n                }), o = 0, i = 0, a = -1, l = n.Math, f = l.max, u = l.ceil;\n                if (r) {\n                    t = new r(function(e) {\n                        e.getEntries().forEach(function(e) {\n                            var t = e.duration;\n                            o += t,\n                            i += t,\n                            a = f(t, a)\n                        })\n                    }\n                    );\n                    try {\n                        t.observe({\n                            type: \"longtask\",\n                            buffered: !0\n                        })\n                    } catch (e) {}\n                    t = new r(function(e) {\n                        0 < e.getEntries().length && (i = 0,\n                        a = -1)\n                    }\n                    );\n                    try {\n                        t.observe({\n                            type: \"largest-contentful-paint\",\n                            buffered: !0\n                        })\n                    } catch (e) {}\n                    e.on(\"$unload\", g),\n                    e.on(\"$beforePageTransition\", g)\n                }\n                function g() {\n                    c(\"recordMetric\", \"totalBlockingTime\", u(i || 0)),\n                    c(\"recordMetric\", \"totalBlockingTimeInclLCP\", u(o || 0)),\n                    c(\"recordMetric\", \"maxBlockingTime\", u(a || 0)),\n                    i = o = 0,\n                    a = -1\n                }\n            });\n            csa.plugin(function(o) {\n                var e = \"CacheDetection\"\n                  , r = \"csa-ctoken-\"\n                  , c = o.store\n                  , t = o.deleteStored\n                  , n = o.config\n                  , i = n[e + \".RequestID\"]\n                  , a = n[e + \".Callback\"]\n                  , s = o.global\n                  , u = s.document || {}\n                  , d = s.Date\n                  , l = o(\"Events\")\n                  , f = o(\"Events\", {\n                    producerId: \"csa\",\n                    lob: n.lob || \"0\"\n                });\n                function p(e) {\n                    try {\n                        var c = u.cookie.match(RegExp(\"(^| )\" + e + \"=([^;]+)\"));\n                        return c && c[2].trim()\n                    } catch (e) {}\n                }\n                n[\"KillSwitch.\" + e] || (function() {\n                    var e = function() {\n                        var e = p(\"cdn-rid\");\n                        if (e)\n                            return {\n                                r: e,\n                                s: \"cdn\"\n                            }\n                    }() || function() {\n                        if (o.store(r + i))\n                            return {\n                                r: o.UUID().toUpperCase().replace(/-/g, \"\").slice(0, 20),\n                                s: \"device\"\n                            }\n                    }() || {}\n                      , c = e.r\n                      , n = e.s;\n                    if (!!c) {\n                        var t = p(\"session-id\");\n                        !function(e, c, n, t) {\n                            l(\"setEntity\", {\n                                page: {\n                                    pageSource: \"cache\",\n                                    requestId: e,\n                                    cacheRequestId: i,\n                                    cacheSource: t\n                                },\n                                session: {\n                                    id: n\n                                }\n                            })\n                        }(c, 0, t, n),\n                        \"device\" === n && f(\"log\", {\n                            schemaId: \"<ns>.CacheImpression.2\"\n                        }, {\n                            ent: \"all\"\n                        }),\n                        a && a(c, t, n)\n                    }\n                }(),\n                c(r + i, d.now() + 36e5),\n                o.once(\"$load\", function() {\n                    var n = d.now();\n                    t(function(e, c) {\n                        return 0 == e.indexOf(r) && parseInt(c) < n\n                    })\n                }))\n            });\n            csa.plugin(function(u) {\n                var i, t = \"Content\", e = \"MutationObserver\", n = \"addedNodes\", a = \"querySelectorAll\", f = \"matches\", r = \"getAttributeNames\", o = \"getAttribute\", s = \"dataset\", c = \"widget\", l = \"producerId\", d = \"slotId\", h = \"iSlotId\", g = {\n                    ent: {\n                        element: 1,\n                        page: [\"pageType\", \"subPageType\", \"requestId\"]\n                    }\n                }, p = 5, m = u.config[t + \".BubbleUp.SearchDepth\"] || 35, y = u.config[t + \".SearchPage\"] || 0, v = \"csaC\", b = v + \"Id\", E = \"logRender\", w = {}, I = u.config, O = I[t + \".Selectors\"] || [], C = I[t + \".WhitelistedAttributes\"] || {\n                    href: 1,\n                    class: 1\n                }, N = I[t + \".EnableContentEntities\"], S = I[\"KillSwitch.ContentRendered\"], k = u.global, A = k.document || {}, U = A.documentElement, L = k.HTMLElement, R = {}, _ = [], j = function(t, e, n, i) {\n                    var o = this\n                      , r = u(\"Events\", {\n                        producerId: t || \"csa\",\n                        lob: I.lob || \"0\"\n                    });\n                    e.type = e.type || c,\n                    o.id = e.id,\n                    o.l = r,\n                    o.e = e,\n                    o.el = n,\n                    o.rt = i,\n                    o.dlo = g,\n                    o.op = W(n, \"csaOp\"),\n                    o.log = function(t, e) {\n                        r(\"log\", t, e || g)\n                    }\n                    ,\n                    o.entities = function(t) {\n                        t(e)\n                    }\n                    ,\n                    e.id && r(\"setEntity\", {\n                        element: e\n                    })\n                }, x = j.prototype;\n                function D(t) {\n                    var e = (t = t || {}).element\n                      , n = t.target;\n                    return e ? function(t, e) {\n                        var n;\n                        n = t instanceof L ? K(t) || Y(e[l], t, z, u.time()) : R[t.id] || H(e[l], 0, t, u.time());\n                        return n\n                    }(e, t) : n ? M(n) : u.error(\"No element or target argument provided.\")\n                }\n                function M(t) {\n                    var e = function(t) {\n                        var e = null\n                          , n = 0;\n                        for (; t && n < m; ) {\n                            if (n++,\n                            P(t, b)) {\n                                e = t;\n                                break\n                            }\n                            t = t.parentElement\n                        }\n                        return e\n                    }(t);\n                    return e ? K(e) : new j(\"csa\",{\n                        id: null\n                    },null,u.time())\n                }\n                function P(t, e) {\n                    if (t && t.dataset)\n                        return t.dataset[e]\n                }\n                function T(t, e, n) {\n                    _.push({\n                        n: n,\n                        e: t,\n                        t: e\n                    }),\n                    B()\n                }\n                function q() {\n                    for (var t = u.time(), e = 0; 0 < _.length; ) {\n                        var n = _.shift();\n                        if (w[n.n](n.e, n.t),\n                        ++e % 10 == 0 && u.time() - t > p)\n                            break\n                    }\n                    i = 0,\n                    _.length && B()\n                }\n                function B() {\n                    i = i || u.raf(q)\n                }\n                function X(t, e, n) {\n                    return {\n                        n: t,\n                        e: e,\n                        t: n\n                    }\n                }\n                function Y(t, e, n, i) {\n                    var o = u.UUID()\n                      , r = {\n                        id: o\n                    }\n                      , c = M(e);\n                    return e[s][b] = o,\n                    n(r, e),\n                    c && c.id && (r.parentId = c.id),\n                    H(t, e, r, i)\n                }\n                function $(t) {\n                    return isNaN(t) ? null : Math.round(t)\n                }\n                function H(t, e, n, i) {\n                    N && (n.schemaId = \"<ns>.ContentEntity.2\"),\n                    n.id = n.id || u.UUID();\n                    var o = new j(t,n,e,i);\n                    return function(t) {\n                        return !S && ((t.op || {}).hasOwnProperty(E) || y)\n                    }(o) && function(t, e) {\n                        var n = {}\n                          , i = u.exec($);\n                        t.el && (n = t.el.getBoundingClientRect()),\n                        t.log({\n                            schemaId: \"<ns>.ContentRender.3\",\n                            timestamp: e,\n                            width: i(n.width),\n                            height: i(n.height),\n                            positionX: i(n.left + k.pageXOffset),\n                            positionY: i(n.top + k.pageYOffset)\n                        })\n                    }(o, i),\n                    u.emit(\"$content.register\", o),\n                    R[n.id] = o\n                }\n                function K(t) {\n                    return R[(t[s] || {})[b]]\n                }\n                function W(n, i) {\n                    var o = {};\n                    return r in (n = n || {}) && Object.keys(n[s]).forEach(function(t) {\n                        if (!t.indexOf(i) && i.length < t.length) {\n                            var e = function(t) {\n                                return (t[0] || \"\").toLowerCase() + t.slice(1)\n                            }(t.slice(i.length));\n                            o[e] = n[s][t]\n                        }\n                    }),\n                    o\n                }\n                function z(t, e) {\n                    r in e && (function(t, e) {\n                        var n = W(t, v);\n                        Object.keys(n).forEach(function(t) {\n                            e[t] = n[t]\n                        })\n                    }(e, t),\n                    d in t && (t[h] = t[d]),\n                    function(e, n) {\n                        (e[r]() || []).forEach(function(t) {\n                            t in C && (n[t] = e[o](t))\n                        })\n                    }(e, t))\n                }\n                U && A[a] && k[e] && (O.push({\n                    selector: \"*[data-csa-c-type]\",\n                    entity: z\n                }),\n                O.push({\n                    selector: \".celwidget\",\n                    entity: function(t, e) {\n                        z(t, e),\n                        t[d] = t[d] || e[o](\"cel_widget_id\") || e.id,\n                        t.legacyId = e[o](\"cel_widget_id\") || e.id,\n                        t.type = t.type || c\n                    }\n                }),\n                w[1] = function(t, e) {\n                    t.forEach(function(t) {\n                        t[n] && t[n].constructor && \"NodeList\" === t[n].constructor.name && Array.prototype.forEach.call(t[n], function(t) {\n                            _.unshift(X(2, t, e))\n                        })\n                    })\n                }\n                ,\n                w[2] = function(r, c) {\n                    a in r && f in r && O.forEach(function(t) {\n                        for (var e = t.selector, n = r[f](e), i = r[a](e), o = i.length - 1; 0 <= o; o--)\n                            _.unshift(X(3, {\n                                e: i[o],\n                                s: t\n                            }, c));\n                        n && _.unshift(X(3, {\n                            e: r,\n                            s: t\n                        }, c))\n                    })\n                }\n                ,\n                w[3] = function(t, e) {\n                    var n = t.e;\n                    K(n) || Y(\"csa\", n, t.s.entity, e)\n                }\n                ,\n                w[4] = function() {\n                    u.register(t, {\n                        instance: D\n                    })\n                }\n                ,\n                new k[e](function(t) {\n                    T(t, u.time(), 1)\n                }\n                ).observe(U, {\n                    childList: !0,\n                    subtree: !0\n                }),\n                T(U, u.time(), 2),\n                T(null, u.time(), 4),\n                u.on(\"$content.export\", function(e) {\n                    Object.keys(e).forEach(function(t) {\n                        x[t] = e[t]\n                    })\n                }))\n            });\n            csa.plugin(function(o) {\n                var i, t = \"ContentImpressions\", e = \"KillSwitch.\", n = \"IntersectionObserver\", r = \"getAttribute\", s = \"dataset\", c = \"intersectionRatio\", a = \"csaCId\", m = 1e3, l = o.global, f = o.config, u = f[e + t], v = f[e + t + \".ContentViews\"], g = ((l.performance || {}).timing || {}).navigationStart || o.time(), d = {};\n                function h(t) {\n                    t && (t.v = 1,\n                    function(t) {\n                        t.vt = o.time(),\n                        t.el.log({\n                            schemaId: \"<ns>.ContentView.4\",\n                            timeToViewed: t.vt - t.el.rt,\n                            pageFirstPaintToElementViewed: t.vt - g\n                        })\n                    }(t))\n                }\n                function I(t) {\n                    t && !t.it && (t.i = o.time() - t.is > m,\n                    function(t) {\n                        t.it = o.time(),\n                        t.el.log({\n                            schemaId: \"<ns>.ContentImpressed.3\",\n                            timeToImpressed: t.it - t.el.rt,\n                            pageFirstPaintToElementImpressed: t.it - g\n                        })\n                    }(t))\n                }\n                !u && l[n] && (i = new l[n](function(t) {\n                    var n = o.time();\n                    t.forEach(function(t) {\n                        var e = function(t) {\n                            if (t && t[r])\n                                return d[t[s][a]]\n                        }(t.target);\n                        if (e) {\n                            o.emit(\"$content.intersection\", {\n                                meta: e.el,\n                                t: n,\n                                e: t\n                            });\n                            var i = t.intersectionRect;\n                            t.isIntersecting && 0 < i.width && 0 < i.height && (v || e.v || h(e),\n                            .5 <= t[c] && !e.is && (e.is = n,\n                            e.timer = o.timeout(function() {\n                                I(e)\n                            }, m))),\n                            t[c] < .5 && !e.it && e.timer && (l.clearTimeout(e.timer),\n                            e.is = 0,\n                            e.timer = 0)\n                        }\n                    })\n                }\n                ,{\n                    threshold: [0, .5, .99]\n                }),\n                o.on(\"$content.register\", function(t) {\n                    var e = t.el;\n                    e && (d[t.id] = {\n                        el: t,\n                        v: 0,\n                        i: 0,\n                        is: 0,\n                        vt: 0,\n                        it: 0\n                    },\n                    i.observe(e))\n                }))\n            });\n            csa.plugin(function(e) {\n                e.config[\"KillSwitch.ContentLatency\"] || e.emit(\"$content.export\", {\n                    mark: function(t, n) {\n                        var o = this;\n                        o.t || (o.t = e(\"Timers\", {\n                            logger: o.l,\n                            schemaId: \"<ns>.ContentLatency.4\",\n                            logOptions: o.dlo\n                        })),\n                        o.t(\"mark\", t, n)\n                    }\n                })\n            });\n            csa.plugin(function(t) {\n                function n(i, e, o) {\n                    var c = {};\n                    function r(t, n, e) {\n                        t in c && o <= n - c[t].s && (function(n, e, i) {\n                            if (!p)\n                                return;\n                            E(function(t) {\n                                T(n, t),\n                                t.w[n][e] = a((t.w[n][e] || 0) + i)\n                            })\n                        }(t, i, n - c[t].d),\n                        c[t].d = n),\n                        e || delete c[t]\n                    }\n                    this.update = function(t, n) {\n                        n.isIntersecting && e <= n.intersectionRatio ? function(t, n) {\n                            t in c || (c[t] = {\n                                s: n,\n                                d: n\n                            })\n                        }(t, u()) : r(t, u())\n                    }\n                    ,\n                    this.stopAll = function(t) {\n                        var n = u();\n                        for (var e in c)\n                            r(e, n, t)\n                    }\n                    ,\n                    this.reset = function() {\n                        var t = u();\n                        for (var n in c)\n                            c[n].s = t,\n                            c[n].d = t\n                    }\n                }\n                var e = t.config\n                  , u = t.time\n                  , i = \"ContentInteractionsSummary\"\n                  , o = e[i + \".FlushInterval\"] || 5e3\n                  , c = e[i + \".FlushBackoff\"] || 1.5\n                  , r = t.global\n                  , s = t.on\n                  , a = Math.floor\n                  , f = (r.document || {}).documentElement || {}\n                  , l = ((r.performance || {}).timing || {}).responseStart || t.time()\n                  , d = o\n                  , m = 0\n                  , p = !0\n                  , v = t.UUID()\n                  , g = t(\"Events\", {\n                    producerId: \"csa\",\n                    lob: e.lob || \"0\"\n                })\n                  , w = new n(\"it0\",0,0)\n                  , I = new n(\"it50\",.5,1e3)\n                  , h = new n(\"it100\",.99,0)\n                  , b = {}\n                  , A = {};\n                function $() {\n                    w.stopAll(!0),\n                    I.stopAll(!0),\n                    h.stopAll(!0),\n                    S()\n                }\n                function C() {\n                    w.reset(),\n                    I.reset(),\n                    h.reset(),\n                    S()\n                }\n                function S() {\n                    d && (clearTimeout(m),\n                    m = t.timeout($, d),\n                    d *= c)\n                }\n                function U(n) {\n                    E(function(t) {\n                        T(n, t),\n                        t.w[n].mc = (t.w[n].mc || 0) + 1\n                    })\n                }\n                function E(t) {\n                    g(\"log\", {\n                        messageId: v,\n                        schemaId: \"<ns>.ContentInteractionsSummary.2\",\n                        w: {},\n                        __merge: t\n                    }, {\n                        ent: {\n                            page: [\"requestId\"]\n                        }\n                    })\n                }\n                function T(t, n) {\n                    t in n.w || (n.w[t] = {})\n                }\n                e[\"KillSwitch.\" + i] || (s(\"$content.intersection\", function(t) {\n                    if (t && t.meta && t.e) {\n                        var n = t.meta.id;\n                        if (n in b) {\n                            var e = t.e.boundingClientRect || {};\n                            e.width < 5 || e.height < 5 || (w.update(n, t.e),\n                            I.update(n, t.e),\n                            h.update(n, t.e),\n                            !t.e.isIntersecting || n in A || (A[n] = 1,\n                            function(n, e) {\n                                E(function(t) {\n                                    T(n, t),\n                                    t.w[n].ttfv = a(e)\n                                })\n                            }(n, u() - l)))\n                        }\n                    }\n                }),\n                s(\"$content.register\", function(t) {\n                    (t.e || {}).slotId && (b[t.id] = {},\n                    function(e) {\n                        E(function(t) {\n                            var n = e.id;\n                            T(n, t),\n                            t.w[n].sid = (e.e || {}).slotId,\n                            t.w[n].cid = (e.e || {}).contentId\n                        })\n                    }(t))\n                }),\n                s(\"$beforePageTransition\", function() {\n                    $(),\n                    C(),\n                    v = t.UUID(),\n                    S()\n                }),\n                s(\"$beforeunload\", function() {\n                    w.stopAll(),\n                    I.stopAll(),\n                    h.stopAll(),\n                    d = null\n                }),\n                s(\"$visible\", function(t) {\n                    t ? C() : ($(),\n                    clearTimeout(m)),\n                    p = t\n                }, {\n                    buffered: 1\n                }),\n                s(f, \"click\", function(t) {\n                    for (var n = t.target, e = 25; n && 0 < e; ) {\n                        var i = (n.dataset || {}).csaCId;\n                        i && U(i),\n                        n = n.parentElement,\n                        e -= 1\n                    }\n                }, {\n                    capture: !0,\n                    passive: !0\n                }),\n                S())\n            });\n            csa.plugin(function(d) {\n                var t, o, e = \"normal\", c = \"reload\", i = \"history\", s = \"new-tab\", n = \"ajax\", r = 1, a = 2, u = \"lastActive\", l = \"lastInteraction\", f = \"used\", p = \"csa-tabbed-browsing\", y = \"visibilityState\", g = \"page\", v = \"experience\", b = \"request\", I = \"initialized\", m = {\n                    \"back-memory-cache\": 1,\n                    \"tab-switch\": 1,\n                    \"history-navigation-page-cache\": 1\n                }, h = \"TabbedBrowsing\", T = \"<ns>.\" + h + \".4\", S = \"visible\", w = d.global, x = d.config, P = d(\"Events\", {\n                    producerId: \"csa\",\n                    lob: x.lob || \"0\"\n                }), q = w.location || {}, z = w.document, A = w.JSON, C = ((w.performance || {}).navigation || {}).type, E = d.store, O = d.on, $ = d.storageSupport(), k = !1, R = {}, j = {}, B = {}, J = {}, K = {}, M = !1, N = !1, D = !1, F = 0, G = x[\"CSA.isRunningInsideMShop\"];\n                function H(e) {\n                    try {\n                        return A.parse(E(p, void 0, {\n                            session: e\n                        }) || \"{}\") || {}\n                    } catch (e) {\n                        d.error('Could not parse storage value for key \"' + p + '\": ' + e)\n                    }\n                    return {}\n                }\n                function L(e, i) {\n                    E(p, A.stringify(i || {}), {\n                        session: e\n                    })\n                }\n                function Q(e) {\n                    var i = j.tid || e.id\n                      , t = {}\n                      , n = R[u] || {};\n                    for (var r in n)\n                        n.hasOwnProperty(r) && (t[r] = n[r]);\n                    !G && t.tid !== i || (t.tid = i,\n                    t.pid = e.id,\n                    t.ent = K),\n                    J = {\n                        pid: e.id,\n                        tid: i,\n                        ent: K,\n                        lastInteraction: j[l] || {},\n                        initialized: !0\n                    },\n                    B = {\n                        lastActive: t,\n                        lastInteraction: R[l] || {},\n                        time: d.time(),\n                        initialized: !0\n                    }\n                }\n                function U(e) {\n                    var i = e === s\n                      , t = z.referrer\n                      , n = !(t && t.length) || !~t.indexOf(q.origin || \"\")\n                      , r = i && !G && n\n                      , a = {\n                        type: e,\n                        toTabId: J.tid,\n                        toPageId: J.pid,\n                        transitTime: d.time() - R.time || null\n                    };\n                    r || function(e, i, t) {\n                        var n = e === c\n                          , r = i || G && !(j[I] && j.ent) ? R[u] || {} : j\n                          , a = R[l] || {}\n                          , d = j[l] || {}\n                          , o = i || G && !(d.id && !d[f]) ? a : d;\n                        t.fromTabId = r.tid,\n                        t.fromPageId = r.pid;\n                        var s = r.ent || {};\n                        s.rid && (t.fromRequestId = s.rid || null),\n                        s.ety && (t.fromExperienceType = s.ety || null),\n                        s.esty && (t.fromExperienceSubType = s.esty || null),\n                        n || !o.id || o[f] || (t.interactionId = o.id || null,\n                        o.sid && (t.interactionSlotId = o.sid || null),\n                        a.id === o.id && (a[f] = !0),\n                        d.id === o.id && (d[f] = !0))\n                    }(e, i, a),\n                    P(\"log\", {\n                        navigation: a,\n                        schemaId: T\n                    }, {\n                        ent: {\n                            page: [\"pageType\", \"subPageType\", \"requestId\"]\n                        }\n                    })\n                }\n                function V(e) {\n                    D = function(e) {\n                        return e && e in m\n                    }(e.transitionType),\n                    function() {\n                        R = H(!1),\n                        j = H(!0);\n                        var e = R[l]\n                          , i = j[l]\n                          , t = !1\n                          , n = !1;\n                        e && i && e.id === i.id && e[f] !== i[f] && (t = !e[f],\n                        n = !i[f],\n                        i[f] = e[f] = !0,\n                        t && L(!1, R),\n                        n && L(!0, j))\n                    }(),\n                    Q(e),\n                    M = !0,\n                    function(e) {\n                        var i, t;\n                        i = X(),\n                        t = Z(!0),\n                        (i || t) && Q(e)\n                    }(e),\n                    F = 1\n                }\n                function W() {\n                    k && !D ? U(n) : (k = !0,\n                    function() {\n                        if (C === a || D)\n                            U(i);\n                        else if (C === r)\n                            U(j[I] ? c : s);\n                        else {\n                            U(j[I] || G && R[I] ? e : s)\n                        }\n                    }())\n                }\n                function X() {\n                    var e = t\n                      , i = {};\n                    return !!(M && e && e.e && e.w) && (e.w(\"entities\", function(e) {\n                        i = e || {}\n                    }),\n                    j[l] = {\n                        id: e.e.messageId,\n                        sid: i.slotId,\n                        used: !(R[l] = {\n                            id: e.e.messageId,\n                            sid: i.slotId,\n                            used: !1\n                        })\n                    },\n                    !(t = null))\n                }\n                function Y(e, i, t, n) {\n                    var r = !1\n                      , a = e[u];\n                    return N ? (!a || a.tid !== J.tid || !a[S] || a.pid !== t || !a.ent && n || n && function(e, i) {\n                        var t = e || {}\n                          , n = i || {};\n                        return t.rid !== n.rid || t.ety !== n.ety || t.esty !== n.esty\n                    }(a.ent, n)) && (e[u] = {\n                        visible: !0,\n                        pid: t,\n                        tid: i,\n                        ent: n\n                    },\n                    r = !0) : !G && a && a.tid === J.tid && a[S] && (r = !(a[S] = !1)),\n                    r\n                }\n                function Z(e) {\n                    var i = !1;\n                    if (N = G && e || z[y] === S,\n                    M) {\n                        var t = R[u] || {};\n                        i = Y(R, j.tid || t.tid || J.tid, j.pid || t.pid || J.pid, j.ent || t.ent || J.ent)\n                    }\n                    return i\n                }\n                x[\"KillSwitch.\" + h] || $.local && $.session && A && z && y in z && (o = function() {\n                    try {\n                        return w.self !== w.top\n                    } catch (e) {\n                        return !0\n                    }\n                }(),\n                O(\"$entities.set\", function(e) {\n                    if (!o && e) {\n                        var i = (e[b] || {}).id || (e[g] || {}).requestId\n                          , t = (e[v] || {}).experienceType || (e[g] || {}).pageType\n                          , n = (e[v] || {}).experienceSubType || (e[g] || {}).subPageType\n                          , r = !K.rid && i || !K.ety && t || !K.esty && n;\n                        if (K.rid = K.rid || i,\n                        K.ety = K.ety || t,\n                        K.esty = K.esty || n,\n                        r && F) {\n                            var a = R[u] || {};\n                            a.tid === j.tid && (a.ent = K,\n                            L(!1, R)),\n                            j.ent = K,\n                            L(!0, j)\n                        }\n                    }\n                }, {\n                    buffered: 1\n                }),\n                O(\"$pageChange\", function(e) {\n                    o || (V(e),\n                    W(),\n                    L(!1, B),\n                    L(!0, J),\n                    j = J,\n                    R = B)\n                }, {\n                    buffered: 1\n                }),\n                O(\"$content.interaction\", function(e) {\n                    t = e,\n                    X() && (L(!1, R),\n                    L(!0, j))\n                }),\n                O(z, \"visibilitychange\", function() {\n                    !o && Z() && L(!1, R)\n                }, {\n                    capture: !1,\n                    passive: !0\n                }))\n            });\n            csa.plugin(function(c) {\n                var e = c(\"Metrics\", {\n                    producerId: \"csa\"\n                });\n                c.on(c.global, \"pageshow\", function(c) {\n                    c && c.persisted && e(\"recordMetric\", \"bfCache\", 1)\n                })\n            });\n            csa.plugin(function(o) {\n                var r, e = \"ResourceLatency\", t = \"clearResourceTimings\", c = [\"xmlhttprequest\", \"fetch\", \"beacon\"], i = {\n                    connectEnd: \"ce\",\n                    connectStart: \"cs\",\n                    decodedBodySize: \"dbs\",\n                    domainLookupEnd: \"dle\",\n                    domainLookupStart: \"dls\",\n                    duration: \"d\",\n                    encodedBodySize: \"ebs\",\n                    entryType: \"et\",\n                    fetchStart: \"fs\",\n                    initiatorType: \"it\",\n                    name: \"n\",\n                    nextHopProtocol: \"nhp\",\n                    redirectEnd: \"re\",\n                    redirectStart: \"rs\",\n                    requestStart: \"rqs\",\n                    responseEnd: \"rpe\",\n                    responseStart: \"rps\",\n                    secureConnectionStart: \"scs\",\n                    startTime: \"st\",\n                    transferSize: \"ts\",\n                    deliveryType: \"dt\",\n                    renderBlockingStatus: \"rbs\"\n                }, a = {\n                    serverTiming: \"srv\"\n                }, n = \"recordMetric\", s = \"resource\", d = \"observe\", u = o.config[e + \".MaxImageLookups\"] || 50, f = o.global, p = f.document, l = f.performance, g = f.PerformanceObserver, y = o.config, m = o.on, v = o(\"Events\", {\n                    producerId: \"csa\",\n                    lob: y.lob || \"0\"\n                }), S = o(\"Metrics\", {\n                    producerId: \"csa\"\n                }), b = 0, h = 0, T = ((l || {}).timing || {}).navigationStart, E = {}, I = 0, L = 0;\n                function x(e) {\n                    e = e.getEntries(),\n                    h += e.length,\n                    e.forEach(function(e) {\n                        var r = e.initiatorType;\n                        if (!(250 <= b || ~c.indexOf(r))) {\n                            var t = function(e, r) {\n                                if (u <= L || \"img\" !== r)\n                                    return;\n                                !function() {\n                                    for (var e = p.images || [], r = I; r < e.length; r++)\n                                        E[e[r].src] = e[r];\n                                    I = e.length\n                                }();\n                                var t = E[e];\n                                t && (L += 1);\n                                return t\n                            }(e.name, r)\n                              , n = function(e) {\n                                var r, t = {\n                                    schemaId: \"<ns>.ResourceLatency.6\",\n                                    ns: T\n                                };\n                                for (var n in e)\n                                    n in i && (t[i[n]] = (\"number\" == typeof (r = e[n]) && (r = Math.floor(r)),\n                                    r)),\n                                    n in a && (t[a[n]] = JSON.stringify(e[n]));\n                                return t\n                            }(e);\n                            t ? o(\"Content\", {\n                                target: t\n                            })(\"log\", n, {\n                                ent: {\n                                    element: [\"slotId\"]\n                                }\n                            }) : v(\"log\", n, {\n                                ent: {\n                                    page: [\"pageType\", \"requestId\"]\n                                }\n                            }),\n                            b++\n                        }\n                    })\n                }\n                function k() {\n                    S(n, \"TotalResourceLatencyCount\", h),\n                    l[t](),\n                    h = b = 0\n                }\n                y[\"KillSwitch.\" + e] || l && l[t] && T && g && o.exec(function() {\n                    r = new g(x);\n                    try {\n                        r[d]({\n                            type: s,\n                            buffered: !0\n                        })\n                    } catch (e) {\n                        try {\n                            r[d]({\n                                entryTypes: [s]\n                            })\n                        } catch (e) {\n                            o.warn(\"PerformanceEntry resource is not supported\")\n                        }\n                    }\n                    m(\"$beforePageTransition\", k),\n                    m(\"$beforeunload\", k)\n                })()\n            });\n            csa.plugin(function(n) {\n                var e, t, i, o, r, a, c, u, f, s, l, d, p, g, m, v, h, b, y = \"hasFocus\", S = \"$app.\", T = \"avail\", $ = \"client\", w = \"document\", I = \"inner\", P = \"offset\", D = \"screen\", C = \"scroll\", E = \"Width\", F = \"Height\", O = T + E, q = T + F, x = $ + E, z = $ + F, H = I + E, K = I + F, M = P + E, W = P + F, X = C + E, Y = C + F, j = \"up\", k = \"down\", A = \"none\", B = 20, G = n.config, J = G[\"KillSwitch.PageInteractionsSummary\"], L = n(\"Events\", {\n                    producerId: \"csa\",\n                    lob: G.lob || \"0\"\n                }), N = 1, Q = n.global || {}, R = n.time, U = n.on, V = n.once, Z = Q[w] || {}, _ = Q[D] || {}, nn = Q.Math || {}, en = nn.abs, tn = nn.max, on = nn.ceil, rn = ((Q.performance || {}).timing || {}).responseStart, an = function() {\n                    return Z[y]()\n                }, cn = 1, un = 100, fn = {}, sn = 1, ln = 0, dn = 0, pn = k, gn = A;\n                function mn() {\n                    c = t = o = r = e,\n                    i = d = 0,\n                    a = u = f = s = l = 0,\n                    pn = k,\n                    gn = A,\n                    dn = ln = 0,\n                    yn(),\n                    bn()\n                }\n                function vn() {\n                    rn && !o && (c = on((o = p) - rn),\n                    sn = 1)\n                }\n                function hn() {\n                    var n = m - i;\n                    (!t || t && t <= p) && (n && (++a,\n                    sn = dn = 1),\n                    i = m,\n                    n),\n                    function() {\n                        if (gn = d < m ? k : j,\n                        pn !== gn) {\n                            var n = en(m - d);\n                            B < n && (++l,\n                            ln && !dn && ++a,\n                            pn = gn,\n                            sn = ln = 1,\n                            d = m,\n                            dn = 0)\n                        } else\n                            dn = 0,\n                            d = m\n                    }(),\n                    t = p + un\n                }\n                function bn() {\n                    u = on(tn(u, m + b)),\n                    g && (f = on(tn(f, g + h))),\n                    sn = 1\n                }\n                function yn() {\n                    p = R(),\n                    g = en(Q.pageXOffset || 0),\n                    m = tn(Q.pageYOffset || 0, 0),\n                    v = 0 < g || 0 < m,\n                    h = Q[H] || 0,\n                    b = Q[K] || 0\n                }\n                function Sn() {\n                    yn(),\n                    vn(),\n                    hn(),\n                    bn()\n                }\n                function Tn() {\n                    if (r) {\n                        var n = on(R() - r);\n                        s += n,\n                        r = e,\n                        sn = 0 < n\n                    }\n                }\n                function $n() {\n                    r = r || R()\n                }\n                function wn(n, e, t, i) {\n                    e[n + E] = on(t || 0),\n                    e[n + F] = on(i || 0)\n                }\n                function In(n) {\n                    var e = n === fn\n                      , t = an();\n                    if (t || sn) {\n                        if (!e) {\n                            if (!N)\n                                return;\n                            N = 0,\n                            t && Tn()\n                        }\n                        var i = function() {\n                            var n = {}\n                              , e = Z.documentElement || {}\n                              , t = Z.body || {};\n                            return wn(\"availableScreen\", n, _[O], _[q]),\n                            wn(w, n, tn(t[X] || 0, t[M] || 0, e[x] || 0, e[X] || 0, e[M] || 0), tn(t[Y] || 0, t[W] || 0, e[z] || 0, e[Y] || 0, e[W] || 0)),\n                            wn(D, n, _.width, _.height),\n                            wn(\"viewport\", n, Q[H], Q[K]),\n                            n\n                        }()\n                          , o = function() {\n                            var n = {\n                                scrollCounts: a,\n                                reachedDepth: u,\n                                horizontalScrollDistance: f,\n                                dwellTime: s,\n                                vScrollDirChanges: l\n                            };\n                            return \"number\" == typeof c && (n.clientTimeToFirstScroll = c),\n                            n\n                        }();\n                        e ? sn = 0 : (mn(),\n                        rn = R(),\n                        t && (r = rn)),\n                        L(\"log\", {\n                            activity: o,\n                            dimensions: i,\n                            schemaId: \"<ns>.PageInteractionsSummary.3\"\n                        }, {\n                            ent: {\n                                page: [\"pageType\", \"subPageType\", \"requestId\"]\n                            }\n                        })\n                    }\n                }\n                function Pn() {\n                    Tn(),\n                    In(fn)\n                }\n                function Dn(n, e) {\n                    return function() {\n                        cn = e,\n                        n()\n                    }\n                }\n                function Cn() {\n                    an = function() {\n                        return cn\n                    }\n                    ,\n                    cn && !r && (r = R())\n                }\n                \"function\" != typeof Z[y] || J || (mn(),\n                v && vn(),\n                U(Q, C, Sn, {\n                    passive: !0\n                }),\n                U(Q, \"blur\", Pn),\n                U(Q, \"focus\", Dn($n, 1)),\n                V(S + \"android\", Cn),\n                V(S + \"ios\", Cn),\n                U(S + \"pause\", Dn(Pn, 0)),\n                U(S + \"resume\", Dn($n, 1)),\n                U(S + \"resign\", Dn(Pn, 0)),\n                U(S + \"active\", Dn($n, 1)),\n                an() && (r = rn || R()),\n                V(\"$beforeunload\", In),\n                U(\"$beforeunload\", In),\n                U(\"$document.hidden\", Pn),\n                U(\"$beforePageTransition\", In),\n                U(\"$afterPageTransition\", function() {\n                    sn = N = 1\n                }))\n            });\n            csa.plugin(function(e) {\n                var o, n, r = \"Navigator\", a = \"<ns>.\" + r + \".5\", i = e.global, c = e.config, d = i.navigator || {}, t = d.connection || {}, l = i.Math.round, u = e(\"Events\", {\n                    producerId: \"csa\",\n                    lob: c.lob || \"0\"\n                });\n                function v() {\n                    o = {\n                        network: {\n                            downlink: void 0,\n                            downlinkMax: void 0,\n                            rtt: void 0,\n                            type: void 0,\n                            effectiveType: void 0,\n                            saveData: void 0\n                        },\n                        language: void 0,\n                        doNotTrack: void 0,\n                        hardwareConcurrency: void 0,\n                        deviceMemory: void 0,\n                        cookieEnabled: void 0,\n                        webdriver: void 0\n                    },\n                    w(),\n                    o.language = d.language || null,\n                    o.doNotTrack = function() {\n                        switch (d.doNotTrack) {\n                        case \"1\":\n                            return \"enabled\";\n                        case \"0\":\n                            return \"disabled\";\n                        case \"unspecified\":\n                            return d.doNotTrack;\n                        default:\n                            return null\n                        }\n                    }(),\n                    o.hardwareConcurrency = \"hardwareConcurrency\"in d ? l(d.hardwareConcurrency || 0) : null,\n                    o.deviceMemory = \"deviceMemory\"in d ? l(d.deviceMemory || 0) : null,\n                    o.cookieEnabled = \"cookieEnabled\"in d ? d.cookieEnabled : null,\n                    o.webdriver = \"webdriver\"in d ? d.webdriver : null\n                }\n                function k() {\n                    u(\"log\", {\n                        network: (n = {},\n                        Object.keys(o.network).forEach(function(e) {\n                            n[e] = o.network[e] + \"\"\n                        }),\n                        n),\n                        language: o.language,\n                        doNotTrack: o.doNotTrack,\n                        hardwareConcurrency: o.hardwareConcurrency,\n                        deviceMemory: o.deviceMemory,\n                        cookieEnabled: o.cookieEnabled,\n                        webdriver: o.webdriver,\n                        schemaId: a\n                    }, {\n                        ent: {\n                            page: [\"pageType\", \"subPageType\", \"requestId\"]\n                        }\n                    })\n                }\n                function w() {\n                    !function(n) {\n                        Object.keys(o.network).forEach(function(e) {\n                            o.network[e] = n[e]\n                        })\n                    }({\n                        downlink: \"downlink\"in t ? l(t.downlink || 0) : null,\n                        downlinkMax: \"downlinkMax\"in t ? l(t.downlinkMax || 0) : null,\n                        rtt: \"rtt\"in t ? (t.rtt || 0).toFixed() : null,\n                        type: t.type || null,\n                        effectiveType: t.effectiveType || null,\n                        saveData: \"saveData\"in t ? t.saveData : null\n                    })\n                }\n                function f() {\n                    w(),\n                    k()\n                }\n                function y() {\n                    v(),\n                    k()\n                }\n                c[\"KillSwitch.\" + r] || (v(),\n                k(),\n                e.on(\"$afterPageTransition\", y),\n                e.on(t, \"change\", f))\n            });\n\n            ue.exec(function(d, c) {\n                function g(e, c) {\n                    e && ue.tag(e + c);\n                    return !!e\n                }\n                function n() {\n                    for (var e = RegExp(\"^https://(.*.(images|ssl-images|media)-amazon.com|\" + c.location.hostname + \")/images/\", \"i\"), d = {}, h = 0, k = c.performance.getEntriesByType(\"resource\"), l = !1, b, a, m, f = 0; f < k.length; f++)\n                        if (a = k[f],\n                        0 < a.transferSize && a.transferSize >= a.encodedBodySize && (b = e.exec(String(a.name))) && 3 === b.length) {\n                            a: {\n                                b = a.serverTiming || [];\n                                for (a = 0; a < b.length; a++)\n                                    if (\"provider\" === b[a].name) {\n                                        b = b[a].description;\n                                        break a\n                                    }\n                                b = void 0\n                            }\n                            b && (l || (l = g(b, \"_cdn_fr\")),\n                            a = d[b] = (d[b] || 0) + 1,\n                            a > h && (m = b,\n                            h = a))\n                        }\n                    g(m, \"_cdn_mp\")\n                }\n                d.ue && \"function\" === typeof d.ue.tag && c.performance && c.location && n()\n            }, \"cdnTagging\")(ue_csm, window);\n\n        }\n\n        /* \u25EC */\n    </script>\n</div>\n<noscript>\n    <img height=\"1\" width=\"1\" style='display:none;visibility:hidden;' src='//fls-eu.amazon.de/1/batch/1/OP/A1PA6795UKMFR9:262-7807958-1059108:280AM2XXY2XR6VP4XMPC$uedata=s:%2Frd%2Fuedata%3Fnoscript%26id%3D280AM2XXY2XR6VP4XMPC:0' alt=\"\"/>\n</noscript>\n<script>\n    window.ue && ue.count && ue.count('CSMLibrarySize', 68043)\n</script>\n</div></body></html>");

/***/ }),

/***/ "95ae":
/***/ (function(module, exports, __webpack_require__) {

var baseRest = __webpack_require__("100e"),
    eq = __webpack_require__("9638"),
    isIterateeCall = __webpack_require__("9aff"),
    keysIn = __webpack_require__("9934");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Assigns own and inherited enumerable string keyed properties of source
 * objects to the destination object for all destination properties that
 * resolve to `undefined`. Source objects are applied from left to right.
 * Once a property is set, additional values of the same property are ignored.
 *
 * **Note:** This method mutates `object`.
 *
 * @static
 * @since 0.1.0
 * @memberOf _
 * @category Object
 * @param {Object} object The destination object.
 * @param {...Object} [sources] The source objects.
 * @returns {Object} Returns `object`.
 * @see _.defaultsDeep
 * @example
 *
 * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
 * // => { 'a': 1, 'b': 2 }
 */
var defaults = baseRest(function(object, sources) {
  object = Object(object);

  var index = -1;
  var length = sources.length;
  var guard = length > 2 ? sources[2] : undefined;

  if (guard && isIterateeCall(sources[0], sources[1], guard)) {
    length = 1;
  }

  while (++index < length) {
    var source = sources[index];
    var props = keysIn(source);
    var propsIndex = -1;
    var propsLength = props.length;

    while (++propsIndex < propsLength) {
      var key = props[propsIndex];
      var value = object[key];

      if (value === undefined ||
          (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) {
        object[key] = source[key];
      }
    }
  }

  return object;
});

module.exports = defaults;


/***/ }),

/***/ "9638":
/***/ (function(module, exports) {

/**
 * Performs a
 * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
 * comparison between two values to determine if they are equivalent.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to compare.
 * @param {*} other The other value to compare.
 * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
 * @example
 *
 * var object = { 'a': 1 };
 * var other = { 'a': 1 };
 *
 * _.eq(object, object);
 * // => true
 *
 * _.eq(object, other);
 * // => false
 *
 * _.eq('a', 'a');
 * // => true
 *
 * _.eq('a', Object('a'));
 * // => false
 *
 * _.eq(NaN, NaN);
 * // => true
 */
function eq(value, other) {
  return value === other || (value !== value && other !== other);
}

module.exports = eq;


/***/ }),

/***/ "966d":
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(process) {

if (typeof process === 'undefined' ||
    !process.version ||
    process.version.indexOf('v0.') === 0 ||
    process.version.indexOf('v1.') === 0 && process.version.indexOf('v1.8.') !== 0) {
  module.exports = { nextTick: nextTick };
} else {
  module.exports = process
}

function nextTick(fn, arg1, arg2, arg3) {
  if (typeof fn !== 'function') {
    throw new TypeError('"callback" argument must be a function');
  }
  var len = arguments.length;
  var args, i;
  switch (len) {
  case 0:
  case 1:
    return process.nextTick(fn);
  case 2:
    return process.nextTick(function afterTickOne() {
      fn.call(null, arg1);
    });
  case 3:
    return process.nextTick(function afterTickTwo() {
      fn.call(null, arg1, arg2);
    });
  case 4:
    return process.nextTick(function afterTickThree() {
      fn.call(null, arg1, arg2, arg3);
    });
  default:
    args = new Array(len - 1);
    i = 0;
    while (i < args.length) {
      args[i++] = arguments[i];
    }
    return process.nextTick(function afterTick() {
      fn.apply(null, args);
    });
  }
}


/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("f28c")))

/***/ }),

/***/ "966f":
/***/ (function(module, exports, __webpack_require__) {

var Stack = __webpack_require__("7e64"),
    baseIsEqual = __webpack_require__("c05f");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1,
    COMPARE_UNORDERED_FLAG = 2;

/**
 * The base implementation of `_.isMatch` without support for iteratee shorthands.
 *
 * @private
 * @param {Object} object The object to inspect.
 * @param {Object} source The object of property values to match.
 * @param {Array} matchData The property names, values, and compare flags to match.
 * @param {Function} [customizer] The function to customize comparisons.
 * @returns {boolean} Returns `true` if `object` is a match, else `false`.
 */
function baseIsMatch(object, source, matchData, customizer) {
  var index = matchData.length,
      length = index,
      noCustomizer = !customizer;

  if (object == null) {
    return !length;
  }
  object = Object(object);
  while (index--) {
    var data = matchData[index];
    if ((noCustomizer && data[2])
          ? data[1] !== object[data[0]]
          : !(data[0] in object)
        ) {
      return false;
    }
  }
  while (++index < length) {
    data = matchData[index];
    var key = data[0],
        objValue = object[key],
        srcValue = data[1];

    if (noCustomizer && data[2]) {
      if (objValue === undefined && !(key in object)) {
        return false;
      }
    } else {
      var stack = new Stack;
      if (customizer) {
        var result = customizer(objValue, srcValue, key, object, source, stack);
      }
      if (!(result === undefined
            ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)
            : result
          )) {
        return false;
      }
    }
  }
  return true;
}

module.exports = baseIsMatch;


/***/ }),

/***/ "96d5":
/***/ (function(module) {

module.exports = JSON.parse("{\"arn\":\"36090292921\",\"asnId\":\"\",\"arnCreationDate\":1747103527623,\"asnCreationDate\":null,\"skuCount\":1,\"unitCount\":1,\"mskuCount\":0,\"quantityUnit\":null,\"cartonCount\":1,\"weight\":10,\"weightUOM\":\"pounds\",\"volume\":1,\"volumeUOM\":\"cuFt\",\"stackedPalletCount\":0,\"unstackedPalletCount\":0,\"carrierScac\":null,\"carrierName\":null,\"shipMode\":null,\"shipFromAddressId\":173680201,\"shipFromLine1\":\"10 Keystone Blvd E\",\"shipFromName\":\"ZNDER\",\"shipFromCity\":\"Pottsville\",\"shipFromState\":\"PA\",\"shipFromZip\":\"17901\",\"shipFromLocalTimeZone\":\"America/New_York\",\"shipFromCountryCode\":\"US\",\"freightReadyDate\":1747249200000,\"pickupTimeStartMilli\":null,\"pickupTimeEndMilli\":null,\"tenderPickupDate\":null,\"scheduledPickupTimeStartMilli\":null,\"scheduledPickupTimeEndMilli\":null,\"estimatedDeliveryDate\":null,\"deliveryDate\":null,\"pickupDate\":null,\"shipDate\":null,\"vendorEstimatedDeliveryDate\":null,\"latestPOShipWindowStartDate\":1747033200000,\"earliestPOShipWindowCloseDate\":1747303200000,\"carrierReferenceNumbers\":null,\"shipToName\":\"Amazon.com Services, Inc.\",\"shipToFC\":\"PHL5\",\"shipToLine1\":\"500 McCarthy Drive\",\"shipToCity\":\"Lewisberry\",\"shipToState\":\"PA\",\"shipToZip\":\"17339-8725\",\"shipToLocalTimeZone\":\"US/Eastern\",\"shipToCountryCode\":\"US\",\"shipmentStatus\":\"PENDING_PICK_UP\",\"poIds\":[\"1N2RFNWK\"],\"items\":[{\"poNumber\":\"1N2RFNWK\",\"unitCount\":1,\"skuCount\":1,\"poOrderDate\":1747032832000,\"poWindowStartDate\":1747033200000,\"poWindowEndDate\":1747303200000,\"poVfcDate\":1748599200000,\"poTimeZone\":\"America/Los_Angeles\",\"asins\":[{\"fnSku\":\"asin_2a\",\"sku\":\"50472RV\",\"externalIdType\":\"Model\",\"modelNumber\":\"50472RV\",\"description\":\"Nilight 15FT 50 Amp RV Extension Cord with Adapter 15Amp to 50Amp 250V Heavy Duty 6/3+8/1 Gauge Pure Copper STW Wire UL ETL Listed 4 Prong 14-50P 14-50R Weatherproof Suit for Generators Camper\",\"quantity\":1,\"imageUrl\":null,\"msku\":null,\"mskuQuantity\":null,\"gtin\":null,\"quantityUnit\":null,\"marketplaceId\":null,\"mcid\":null,\"dcRequiredTemperature\":null}],\"mskuCount\":0,\"marketplaceId\":null}],\"isAsnDraft\":null,\"isExcelDraft\":null,\"canPrintLabels\":false,\"canPrintPalletLabels\":false,\"canMapPallet\":null,\"bolNumber\":null,\"sealNumber\":null,\"frdDMStatus\":null,\"frdDMOrigin\":null,\"frdDMRequestedDate\":null,\"loadDMStatus\":null,\"loadDMOrigin\":null,\"unplanDMStatus\":null,\"unplanDMDate\":null,\"isArnEditable\":true,\"isAsnEditable\":null,\"referenceId\":\"POSH20250513103202651\",\"canPrintCI\":null,\"canCreateCI\":null,\"isFRDEditable\":false,\"isDMEnabledForMarketplace\":true,\"vendorCode\":\"QYJY4\",\"hasSSCC\":null,\"isFLASN\":null,\"canPrintAsnLabel\":null,\"isEdiAsn\":null,\"ruleViolationCount\":null,\"asnRefdocStatus\":null,\"asnMediaFormatId\":null,\"temperature\":null,\"pickupLoadingType\":null,\"trailerId\":null,\"treShipmentStatusWithSummaryList\":null,\"invoiceIds\":null,\"invoiceDetailsVOList\":null,\"is3PCarrierShipment\":true,\"isSmallParcelShipment\":null}");

/***/ }),

/***/ "97d3":
/***/ (function(module, exports, __webpack_require__) {

var baseEach = __webpack_require__("48a0"),
    isArrayLike = __webpack_require__("30c9");

/**
 * The base implementation of `_.map` without support for iteratee shorthands.
 *
 * @private
 * @param {Array|Object} collection The collection to iterate over.
 * @param {Function} iteratee The function invoked per iteration.
 * @returns {Array} Returns the new mapped array.
 */
function baseMap(collection, iteratee) {
  var index = -1,
      result = isArrayLike(collection) ? Array(collection.length) : [];

  baseEach(collection, function(value, key, collection) {
    result[++index] = iteratee(value, key, collection);
  });
  return result;
}

module.exports = baseMap;


/***/ }),

/***/ "9934":
/***/ (function(module, exports, __webpack_require__) {

var arrayLikeKeys = __webpack_require__("6fcd"),
    baseKeysIn = __webpack_require__("41c3"),
    isArrayLike = __webpack_require__("30c9");

/**
 * Creates an array of the own and inherited enumerable property names of `object`.
 *
 * **Note:** Non-object values are coerced to objects.
 *
 * @static
 * @memberOf _
 * @since 3.0.0
 * @category Object
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names.
 * @example
 *
 * function Foo() {
 *   this.a = 1;
 *   this.b = 2;
 * }
 *
 * Foo.prototype.c = 3;
 *
 * _.keysIn(new Foo);
 * // => ['a', 'b', 'c'] (iteration order is not guaranteed)
 */
function keysIn(object) {
  return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
}

module.exports = keysIn;


/***/ }),

/***/ "99bc":
/***/ (function(module, exports, __webpack_require__) {

/*
	pseudo selectors

	---

	they are available in two forms:
	* filters called when the selector
	  is compiled and return a function
	  that needs to return next()
	* pseudos get called on execution
	  they need to return a boolean
*/

var DomUtils    = __webpack_require__("2241"),
    isTag       = DomUtils.isTag,
    getText     = DomUtils.getText,
    getParent   = DomUtils.getParent,
    getChildren = DomUtils.getChildren,
    getSiblings = DomUtils.getSiblings,
    hasAttrib   = DomUtils.hasAttrib,
    getName     = DomUtils.getName,
    getAttribute= DomUtils.getAttributeValue,
    getNCheck   = __webpack_require__("fce2"),
    checkAttrib = __webpack_require__("061b").rules.equals,
    BaseFuncs   = __webpack_require__("99e4"),
    trueFunc    = BaseFuncs.trueFunc,
    falseFunc   = BaseFuncs.falseFunc;

//helper methods
function getFirstElement(elems){
	for(var i = 0; elems && i < elems.length; i++){
		if(isTag(elems[i])) return elems[i];
	}
}

function getAttribFunc(name, value){
	var data = {name: name, value: value};
	return function attribFunc(next){
		return checkAttrib(next, data);
	};
}

function getChildFunc(next){
	return function(elem){
		return !!getParent(elem) && next(elem);
	};
}

var filters = {
	contains: function(next, text){
		return function contains(elem){
			return next(elem) && getText(elem).indexOf(text) >= 0;
		};
	},
	icontains: function(next, text){
		var itext = text.toLowerCase();
		return function icontains(elem){
			return next(elem) &&
				getText(elem).toLowerCase().indexOf(itext) >= 0;
		};
	},

	//location specific methods
	"nth-child": function(next, rule){
		var func = getNCheck(rule);

		if(func === falseFunc) return func;
		if(func === trueFunc)  return getChildFunc(next);

		return function nthChild(elem){
			var siblings = getSiblings(elem);

			for(var i = 0, pos = 0; i < siblings.length; i++){
				if(isTag(siblings[i])){
					if(siblings[i] === elem) break;
					else pos++;
				}
			}

			return func(pos) && next(elem);
		};
	},
	"nth-last-child": function(next, rule){
		var func = getNCheck(rule);

		if(func === falseFunc) return func;
		if(func === trueFunc)  return getChildFunc(next);

		return function nthLastChild(elem){
			var siblings = getSiblings(elem);

			for(var pos = 0, i = siblings.length - 1; i >= 0; i--){
				if(isTag(siblings[i])){
					if(siblings[i] === elem) break;
					else pos++;
				}
			}

			return func(pos) && next(elem);
		};
	},
	"nth-of-type": function(next, rule){
		var func = getNCheck(rule);

		if(func === falseFunc) return func;
		if(func === trueFunc)  return getChildFunc(next);

		return function nthOfType(elem){
			var siblings = getSiblings(elem);

			for(var pos = 0, i = 0; i < siblings.length; i++){
				if(isTag(siblings[i])){
					if(siblings[i] === elem) break;
					if(getName(siblings[i]) === getName(elem)) pos++;
				}
			}

			return func(pos) && next(elem);
		};
	},
	"nth-last-of-type": function(next, rule){
		var func = getNCheck(rule);

		if(func === falseFunc) return func;
		if(func === trueFunc)  return getChildFunc(next);

		return function nthLastOfType(elem){
			var siblings = getSiblings(elem);

			for(var pos = 0, i = siblings.length - 1; i >= 0; i--){
				if(isTag(siblings[i])){
					if(siblings[i] === elem) break;
					if(getName(siblings[i]) === getName(elem)) pos++;
				}
			}

			return func(pos) && next(elem);
		};
	},

    //TODO determine the actual root element
    root: function(next){
        return function(elem){
            return !getParent(elem) && next(elem);
        };
    },

    scope: function(next, rule, options, context){
        if(!context || context.length === 0){
            //equivalent to :root
            return filters.root(next);
        }

        if(context.length === 1){
            //NOTE: can't be unpacked, as :has uses this for side-effects
            return function(elem){
                return context[0] === elem && next(elem);
            };
        }

        return function(elem){
            return context.indexOf(elem) >= 0 && next(elem);
        };
    },

	//jQuery extensions (others follow as pseudos)
	checkbox: getAttribFunc("type", "checkbox"),
	file: getAttribFunc("type", "file"),
	password: getAttribFunc("type", "password"),
	radio: getAttribFunc("type", "radio"),
	reset: getAttribFunc("type", "reset"),
	image: getAttribFunc("type", "image"),
	submit: getAttribFunc("type", "submit")
};

//while filters are precompiled, pseudos get called when they are needed
var pseudos = {
	empty: function(elem){
		return !getChildren(elem).some(function(elem){
			return isTag(elem) || elem.type === "text";
		});
	},

	"first-child": function(elem){
		return getFirstElement(getSiblings(elem)) === elem;
	},
	"last-child": function(elem){
		var siblings = getSiblings(elem);

		for(var i = siblings.length - 1; i >= 0; i--){
			if(siblings[i] === elem) return true;
			if(isTag(siblings[i])) break;
		}

		return false;
	},
	"first-of-type": function(elem){
		var siblings = getSiblings(elem);

		for(var i = 0; i < siblings.length; i++){
			if(isTag(siblings[i])){
				if(siblings[i] === elem) return true;
				if(getName(siblings[i]) === getName(elem)) break;
			}
		}

		return false;
	},
	"last-of-type": function(elem){
		var siblings = getSiblings(elem);

		for(var i = siblings.length-1; i >= 0; i--){
			if(isTag(siblings[i])){
				if(siblings[i] === elem) return true;
				if(getName(siblings[i]) === getName(elem)) break;
			}
		}

		return false;
	},
	"only-of-type": function(elem){
		var siblings = getSiblings(elem);

		for(var i = 0, j = siblings.length; i < j; i++){
			if(isTag(siblings[i])){
				if(siblings[i] === elem) continue;
				if(getName(siblings[i]) === getName(elem)) return false;
			}
		}

		return true;
	},
	"only-child": function(elem){
		var siblings = getSiblings(elem);

		for(var i = 0; i < siblings.length; i++){
			if(isTag(siblings[i]) && siblings[i] !== elem) return false;
		}

		return true;
	},

	//:matches(a, area, link)[href]
	link: function(elem){
		return hasAttrib(elem, "href");
	},
	visited: falseFunc, //seems to be a valid implementation
	//TODO: :any-link once the name is finalized (as an alias of :link)

	//forms
	//to consider: :target

	//:matches([selected], select:not([multiple]):not(> option[selected]) > option:first-of-type)
	selected: function(elem){
		if(hasAttrib(elem, "selected")) return true;
		else if(getName(elem) !== "option") return false;

		//the first <option> in a <select> is also selected
		var parent = getParent(elem);

		if(
			!parent ||
			getName(parent) !== "select" ||
			hasAttrib(parent, "multiple")
		) return false;

		var siblings = getChildren(parent),
			sawElem  = false;

		for(var i = 0; i < siblings.length; i++){
			if(isTag(siblings[i])){
				if(siblings[i] === elem){
					sawElem = true;
				} else if(!sawElem){
					return false;
				} else if(hasAttrib(siblings[i], "selected")){
					return false;
				}
			}
		}

		return sawElem;
	},
	//https://html.spec.whatwg.org/multipage/scripting.html#disabled-elements
	//:matches(
	//  :matches(button, input, select, textarea, menuitem, optgroup, option)[disabled],
	//  optgroup[disabled] > option),
	// fieldset[disabled] * //TODO not child of first <legend>
	//)
	disabled: function(elem){
		return hasAttrib(elem, "disabled");
	},
	enabled: function(elem){
		return !hasAttrib(elem, "disabled");
	},
	//:matches(:matches(:radio, :checkbox)[checked], :selected) (TODO menuitem)
	checked: function(elem){
		return hasAttrib(elem, "checked") || pseudos.selected(elem);
	},
	//:matches(input, select, textarea)[required]
	required: function(elem){
		return hasAttrib(elem, "required");
	},
	//:matches(input, select, textarea):not([required])
	optional: function(elem){
		return !hasAttrib(elem, "required");
	},

	//jQuery extensions

	//:not(:empty)
	parent: function(elem){
		return !pseudos.empty(elem);
	},
	//:matches(h1, h2, h3, h4, h5, h6)
	header: function(elem){
		var name = getName(elem);
		return name === "h1" ||
		       name === "h2" ||
		       name === "h3" ||
		       name === "h4" ||
		       name === "h5" ||
		       name === "h6";
	},

	//:matches(button, input[type=button])
	button: function(elem){
		var name = getName(elem);
		return name === "button" ||
		       name === "input" &&
		       getAttribute(elem, "type") === "button";
	},
	//:matches(input, textarea, select, button)
	input: function(elem){
		var name = getName(elem);
		return name === "input" ||
		       name === "textarea" ||
		       name === "select" ||
		       name === "button";
	},
	//input:matches(:not([type!='']), [type='text' i])
	text: function(elem){
		var attr;
		return getName(elem) === "input" && (
			!(attr = getAttribute(elem, "type")) ||
			attr.toLowerCase() === "text"
		);
	}
};

function verifyArgs(func, name, subselect){
	if(subselect === null){
		if(func.length > 1 && name !== "scope"){
			throw new SyntaxError("pseudo-selector :" + name + " requires an argument");
		}
	} else {
		if(func.length === 1){
			throw new SyntaxError("pseudo-selector :" + name + " doesn't have any arguments");
		}
	}
}

//FIXME this feels hacky
var re_CSS3 = /^(?:(?:nth|last|first|only)-(?:child|of-type)|root|empty|(?:en|dis)abled|checked|not)$/;

module.exports = {
	compile: function(next, data, options, context){
		var name = data.name,
			subselect = data.data;

		if(options && options.strict && !re_CSS3.test(name)){
			throw SyntaxError(":" + name + " isn't part of CSS3");
		}

		if(typeof filters[name] === "function"){
			verifyArgs(filters[name], name,  subselect);
			return filters[name](next, subselect, options, context);
		} else if(typeof pseudos[name] === "function"){
			var func = pseudos[name];
			verifyArgs(func, name, subselect);

			if(next === trueFunc) return func;

			return function pseudoArgs(elem){
				return func(elem, subselect) && next(elem);
			};
		} else {
			throw new SyntaxError("unmatched pseudo-class :" + name);
		}
	},
	filters: filters,
	pseudos: pseudos
};


/***/ }),

/***/ "99cd":
/***/ (function(module, exports) {

/**
 * Creates a base function for methods like `_.forIn` and `_.forOwn`.
 *
 * @private
 * @param {boolean} [fromRight] Specify iterating from right to left.
 * @returns {Function} Returns the new base function.
 */
function createBaseFor(fromRight) {
  return function(object, iteratee, keysFunc) {
    var index = -1,
        iterable = Object(object),
        props = keysFunc(object),
        length = props.length;

    while (length--) {
      var key = props[fromRight ? length : ++index];
      if (iteratee(iterable[key], key, iterable) === false) {
        break;
      }
    }
    return object;
  };
}

module.exports = createBaseFor;


/***/ }),

/***/ "99d3":
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(module) {var freeGlobal = __webpack_require__("585a");

/** Detect free variable `exports`. */
var freeExports =  true && exports && !exports.nodeType && exports;

/** Detect free variable `module`. */
var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;

/** Detect the popular CommonJS extension `module.exports`. */
var moduleExports = freeModule && freeModule.exports === freeExports;

/** Detect free variable `process` from Node.js. */
var freeProcess = moduleExports && freeGlobal.process;

/** Used to access faster Node.js helpers. */
var nodeUtil = (function() {
  try {
    // Use `util.types` for Node.js 10+.
    var types = freeModule && freeModule.require && freeModule.require('util').types;

    if (types) {
      return types;
    }

    // Legacy `process.binding('util')` for Node.js < 10.
    return freeProcess && freeProcess.binding && freeProcess.binding('util');
  } catch (e) {}
}());

module.exports = nodeUtil;

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("62e4")(module)))

/***/ }),

/***/ "99e4":
/***/ (function(module, exports) {

module.exports = {
	trueFunc: function trueFunc(){
		return true;
	},
	falseFunc: function falseFunc(){
		return false;
	}
};

/***/ }),

/***/ "9aff":
/***/ (function(module, exports, __webpack_require__) {

var eq = __webpack_require__("9638"),
    isArrayLike = __webpack_require__("30c9"),
    isIndex = __webpack_require__("c098"),
    isObject = __webpack_require__("1a8c");

/**
 * Checks if the given arguments are from an iteratee call.
 *
 * @private
 * @param {*} value The potential iteratee value argument.
 * @param {*} index The potential iteratee index or key argument.
 * @param {*} object The potential iteratee object argument.
 * @returns {boolean} Returns `true` if the arguments are from an iteratee call,
 *  else `false`.
 */
function isIterateeCall(value, index, object) {
  if (!isObject(object)) {
    return false;
  }
  var type = typeof index;
  if (type == 'number'
        ? (isArrayLike(object) && isIndex(index, object.length))
        : (type == 'string' && index in object)
      ) {
    return eq(object[index], value);
  }
  return false;
}

module.exports = isIterateeCall;


/***/ }),

/***/ "9b02":
/***/ (function(module, exports, __webpack_require__) {

var baseGet = __webpack_require__("656b");

/**
 * Gets the value at `path` of `object`. If the resolved value is
 * `undefined`, the `defaultValue` is returned in its place.
 *
 * @static
 * @memberOf _
 * @since 3.7.0
 * @category Object
 * @param {Object} object The object to query.
 * @param {Array|string} path The path of the property to get.
 * @param {*} [defaultValue] The value returned for `undefined` resolved values.
 * @returns {*} Returns the resolved value.
 * @example
 *
 * var object = { 'a': [{ 'b': { 'c': 3 } }] };
 *
 * _.get(object, 'a[0].b.c');
 * // => 3
 *
 * _.get(object, ['a', '0', 'b', 'c']);
 * // => 3
 *
 * _.get(object, 'a.b.c', 'default');
 * // => 'default'
 */
function get(object, path, defaultValue) {
  var result = object == null ? undefined : baseGet(object, path);
  return result === undefined ? defaultValue : result;
}

module.exports = get;


/***/ }),

/***/ "9cae":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"data\":{\"creator_list_segments\":[{\"time_descriptor\":{\"start_time\":1761984000,\"end_time\":1762070400,\"timezone_offset\":-28800,\"granularity_type\":1},\"creator_performances\":[{\"creator_base\":{\"oec_id\":\"7494004498778720441\",\"handle_name\":\"meowica91\",\"nick_name\":\"monica\",\"avatar\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/ae1083b7015058d5c094cd1562a3cd84~tplv-tiktokx-cropcenter:300:300.webp?dr=9638&refresh_token=97816151&x-expires=1768467600&x-signature=dUxrDR934FVkQhB5ZOIlqKuMdkY%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=19e6c589&idc=useast5\",\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/ae1083b7015058d5c094cd1562a3cd84~tplv-tiktokx-cropcenter:300:300.webp?dr=9638&refresh_token=719a5c0b&x-expires=1768467600&x-signature=aUBPBK1RM3duNKynAy0D1mZpA9o%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=19e6c589&idc=useast5\",\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/ae1083b7015058d5c094cd1562a3cd84~tplv-tiktokx-cropcenter:300:300.jpeg?dr=9638&refresh_token=317a82d2&x-expires=1768467600&x-signature=c3xzdU83%2Fx43C7Ypgs80r7sMbPk%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=19e6c589&idc=useast5\"]},\"follower_cnt\":\"78676\"},\"creator_extra\":{\"creator_quota_info\":{\"creator_id\":\"7494004498778720441\",\"is_connect\":false,\"is_pair_connect\":true},\"shop_creator_crm_status\":1},\"creator_metrics\":{\"creator_gmv\":{\"amount_formatted\":\"$99.98\",\"amount_delimited\":\"99.98\",\"amount\":\"99.98\",\"currency_code\":\"USD\",\"currency_symbol\":\"$\",\"amount_kmb_formatted\":\"$100\"},\"creator_refunded_gmv\":{\"amount_formatted\":\"$0.00\",\"amount_delimited\":\"0.00\",\"amount\":\"0\",\"currency_code\":\"USD\",\"currency_symbol\":\"$\",\"amount_kmb_formatted\":\"$0.00\"},\"creator_estimated_commission\":{\"amount_formatted\":\"$19.50\",\"amount_delimited\":\"19.50\",\"amount\":\"19.5\",\"currency_code\":\"USD\",\"currency_symbol\":\"$\",\"amount_kmb_formatted\":\"$19.5\"},\"creator_orders_cnt\":{\"value\":\"2\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_items_sold_cnt\":{\"value\":\"2\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_refunded_items_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_video_cnt\":{\"value\":\"1\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_live_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_average_order_value\":{\"amount_formatted\":\"$49.99\",\"amount_delimited\":\"49.99\",\"amount\":\"49.99\",\"currency_code\":\"USD\",\"currency_symbol\":\"$\",\"amount_kmb_formatted\":\"$50\"},\"creator_products_with_sales_cnt\":{\"value\":\"1\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_samples_shipped_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"}}}],\"total\":1},{\"time_descriptor\":{\"start_time\":1764576000,\"end_time\":1764662400,\"timezone_offset\":-28800,\"granularity_type\":1},\"creator_performances\":[{\"creator_base\":{\"oec_id\":\"7494030111315168105\",\"handle_name\":\"honeyy_gma2024\",\"nick_name\":\"🐝🍯Honey_2024🍯🐝\",\"avatar\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/6a4d2f8ebb040c77b27c33866da80d8d~tplv-tiktokx-cropcenter:300:300.webp?dr=9638&refresh_token=4a63d470&x-expires=1768467600&x-signature=TS%2Fs%2BhVsOlIcw1YhXPcLSMA366o%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=19e6c589&idc=useast5\",\"https://p19-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/6a4d2f8ebb040c77b27c33866da80d8d~tplv-tiktokx-cropcenter:300:300.webp?dr=9638&refresh_token=80644303&x-expires=1768467600&x-signature=MM%2Bg1SO%2F5tu7sEONpRX%2Bsq1Vqpc%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=19e6c589&idc=useast5\",\"https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/6a4d2f8ebb040c77b27c33866da80d8d~tplv-tiktokx-cropcenter:300:300.jpeg?dr=9638&refresh_token=7a4c1097&x-expires=1768467600&x-signature=Qr70McZLGUCKaN8KjKGh5Vcd4YI%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=19e6c589&idc=useast5\"]},\"follower_cnt\":\"10877\"},\"creator_extra\":{\"creator_quota_info\":{\"creator_id\":\"7494030111315168105\",\"is_connect\":false,\"is_pair_connect\":true},\"shop_creator_crm_status\":1},\"creator_metrics\":{\"creator_gmv\":{\"amount_formatted\":\"$73.98\",\"amount_delimited\":\"73.98\",\"amount\":\"73.98\",\"currency_code\":\"USD\",\"currency_symbol\":\"$\",\"amount_kmb_formatted\":\"$74\"},\"creator_refunded_gmv\":{\"amount_formatted\":\"$0.00\",\"amount_delimited\":\"0.00\",\"amount\":\"0\",\"currency_code\":\"USD\",\"currency_symbol\":\"$\",\"amount_kmb_formatted\":\"$0.00\"},\"creator_estimated_commission\":{\"amount_formatted\":\"$14.42\",\"amount_delimited\":\"14.42\",\"amount\":\"14.42\",\"currency_code\":\"USD\",\"currency_symbol\":\"$\",\"amount_kmb_formatted\":\"$14.4\"},\"creator_orders_cnt\":{\"value\":\"1\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_items_sold_cnt\":{\"value\":\"2\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_refunded_items_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_video_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_live_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_average_order_value\":{\"amount_formatted\":\"$73.98\",\"amount_delimited\":\"73.98\",\"amount\":\"73.98\",\"currency_code\":\"USD\",\"currency_symbol\":\"$\",\"amount_kmb_formatted\":\"$74\"},\"creator_products_with_sales_cnt\":{\"value\":\"1\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"creator_samples_shipped_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"}}}],\"total\":1}],\"product_list_segments\":[{\"time_descriptor\":{\"start_time\":1764576000,\"end_time\":1764662400,\"timezone_offset\":-28800,\"granularity_type\":1},\"product_performances\":[{\"product_base\":{\"id\":\"1731337452994597356\",\"title\":\"GYS Bamboo Viscose Nightgowns for Women Short Sleeve V Neck Night Shirts with Pockets Nightwear Womenswear\",\"cover\":{\"thumb_url_list\":[\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/ef233ab059884d31bee5f1bfc5a0a310~tplv-fhlh96nyum-origin-jpeg.jpeg?dr=12178&from=520841845&idc=useast5&ps=933b5bde&shcp=19e6c589&shp=1f0b6a75&t=555f072d\"]}},\"categories\":[{\"level\":1,\"category_starling_key\":\"magellan_601152\",\"category_id\":\"601152\",\"category_name\":\"女装与女士内衣\"},{\"level\":2,\"category_starling_key\":\"magellan_843016\",\"category_id\":\"843016\",\"category_name\":\"女士睡衣和家居服\"},{\"level\":3,\"category_starling_key\":\"magellan_846088\",\"category_id\":\"846088\",\"category_name\":\"女士睡裙\"}],\"product_metrics\":{\"product_gmv\":{\"amount_formatted\":\"$73.98\",\"amount_delimited\":\"73.98\",\"amount\":\"73.98\",\"currency_code\":\"USD\",\"currency_symbol\":\"$\",\"amount_kmb_formatted\":\"$74\"},\"product_refunded_gmv\":{\"amount_formatted\":\"$0.00\",\"amount_delimited\":\"0.00\",\"amount\":\"0\",\"currency_code\":\"USD\",\"currency_symbol\":\"$\",\"amount_kmb_formatted\":\"$0.00\"},\"product_items_sold_cnt\":{\"value\":\"2\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"product_refunded_items_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"product_estimated_commission\":{\"amount_formatted\":\"$14.42\",\"amount_delimited\":\"14.42\",\"amount\":\"14.42\",\"currency_code\":\"USD\",\"currency_symbol\":\"$\",\"amount_kmb_formatted\":\"$14.4\"},\"product_samples_shipped_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"product_sales_creators_cnt\":{\"value\":\"1\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"product_promoting_creators_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"product_orders_cnt\":{\"value\":\"1\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"product_buyers_cnt\":{\"value\":\"1\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"product_lives_with_sales_cnt\":{\"value\":\"1\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"product_videos_with_sales_cnt\":{\"value\":\"1\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"product_video_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"},\"product_live_cnt\":{\"value\":\"0\",\"value_delimited\":\"\",\"value_kmb_formatted\":\"\"}}}],\"total\":1}]}}");

/***/ }),

/***/ "9db9":
/***/ (function(module, exports, __webpack_require__) {

var parse = __webpack_require__("72ce"),
    $ = __webpack_require__("d116"),
    updateDOM = parse.update,
    evaluate = parse.evaluate,
    utils = __webpack_require__("4a1c"),
    domEach = utils.domEach,
    cloneDom = utils.cloneDom,
    isHtml = utils.isHtml,
    slice = Array.prototype.slice,
    _ = {
      flatten: __webpack_require__("4d8c"),
      bind: __webpack_require__("2696"),
      forEach: __webpack_require__("6cd4")
    };

// Create an array of nodes, recursing into arrays and parsing strings if
// necessary
exports._makeDomArray = function makeDomArray(elem, clone) {
  if (elem == null) {
    return [];
  } else if (elem.cheerio) {
    return clone ? cloneDom(elem.get(), elem.options) : elem.get();
  } else if (Array.isArray(elem)) {
    return _.flatten(elem.map(function(el) {
      return this._makeDomArray(el, clone);
    }, this));
  } else if (typeof elem === 'string') {
    return evaluate(elem, this.options, false);
  } else {
    return clone ? cloneDom([elem]) : [elem];
  }
};

var _insert = function(concatenator) {
  return function() {
    var elems = slice.call(arguments),
        lastIdx = this.length - 1;

    return domEach(this, function(i, el) {
      var dom, domSrc;

      if (typeof elems[0] === 'function') {
        domSrc = elems[0].call(el, i, $.html(el.children));
      } else {
        domSrc = elems;
      }

      dom = this._makeDomArray(domSrc, i < lastIdx);
      concatenator(dom, el.children, el);
    });
  };
};

/*
 * Modify an array in-place, removing some number of elements and adding new
 * elements directly following them.
 *
 * @param {Array} array Target array to splice.
 * @param {Number} spliceIdx Index at which to begin changing the array.
 * @param {Number} spliceCount Number of elements to remove from the array.
 * @param {Array} newElems Elements to insert into the array.
 *
 * @api private
 */
var uniqueSplice = function(array, spliceIdx, spliceCount, newElems, parent) {
  var spliceArgs = [spliceIdx, spliceCount].concat(newElems),
      prev = array[spliceIdx - 1] || null,
      next = array[spliceIdx] || null;
  var idx, len, prevIdx, node, oldParent;

  // Before splicing in new elements, ensure they do not already appear in the
  // current array.
  for (idx = 0, len = newElems.length; idx < len; ++idx) {
    node = newElems[idx];
    oldParent = node.parent || node.root;
    prevIdx = oldParent && oldParent.children.indexOf(newElems[idx]);

    if (oldParent && prevIdx > -1) {
      oldParent.children.splice(prevIdx, 1);
      if (parent === oldParent && spliceIdx > prevIdx) {
        spliceArgs[0]--;
      }
    }

    node.root = null;
    node.parent = parent;

    if (node.prev) {
      node.prev.next = node.next || null;
    }

    if (node.next) {
      node.next.prev = node.prev || null;
    }

    node.prev = newElems[idx - 1] || prev;
    node.next = newElems[idx + 1] || next;
  }

  if (prev) {
    prev.next = newElems[0];
  }
  if (next) {
    next.prev = newElems[newElems.length - 1];
  }
  return array.splice.apply(array, spliceArgs);
};

exports.appendTo = function(target) {
  if (!target.cheerio) {
    target = this.constructor.call(this.constructor, target, null, this._originalRoot);
  }

  target.append(this);

  return this;
};

exports.prependTo = function(target) {
  if (!target.cheerio) {
    target = this.constructor.call(this.constructor, target, null, this._originalRoot);
  }

  target.prepend(this);

  return this;
};

exports.append = _insert(function(dom, children, parent) {
  uniqueSplice(children, children.length, 0, dom, parent);
});

exports.prepend = _insert(function(dom, children, parent) {
  uniqueSplice(children, 0, 0, dom, parent);
});

exports.wrap = function(wrapper) {
  var wrapperFn = typeof wrapper === 'function' && wrapper,
      lastIdx = this.length - 1;

  _.forEach(this, _.bind(function(el, i) {
    var parent = el.parent || el.root,
        siblings = parent.children,
        wrapperDom, elInsertLocation, j, index;

    if (!parent) {
      return;
    }

    if (wrapperFn) {
      wrapper = wrapperFn.call(el, i);
    }

    if (typeof wrapper === 'string' && !isHtml(wrapper)) {
      wrapper = this.parents().last().find(wrapper).clone();
    }

    wrapperDom = this._makeDomArray(wrapper, i < lastIdx).slice(0, 1);
    elInsertLocation = wrapperDom[0];
    // Find the deepest child. Only consider the first tag child of each node
    // (ignore text); stop if no children are found.
    j = 0;

    while (elInsertLocation && elInsertLocation.children) {
      if (j >= elInsertLocation.children.length) {
        break;
      }

      if (elInsertLocation.children[j].type === 'tag') {
        elInsertLocation = elInsertLocation.children[j];
        j=0;
      } else {
        j++;
      }
    }
    index = siblings.indexOf(el);

    updateDOM([el], elInsertLocation);
    // The previous operation removed the current element from the `siblings`
    // array, so the `dom` array can be inserted without removing any
    // additional elements.
    uniqueSplice(siblings, index, 0, wrapperDom, parent);
  }, this));

  return this;
};

exports.after = function() {
  var elems = slice.call(arguments),
      lastIdx = this.length - 1;

  domEach(this, function(i, el) {
    var parent = el.parent || el.root;
    if (!parent) {
      return;
    }

    var siblings = parent.children,
        index = siblings.indexOf(el),
        domSrc, dom;

    // If not found, move on
    if (index < 0) return;

    if (typeof elems[0] === 'function') {
      domSrc = elems[0].call(el, i, $.html(el.children));
    } else {
      domSrc = elems;
    }
    dom = this._makeDomArray(domSrc, i < lastIdx);

    // Add element after `this` element
    uniqueSplice(siblings, index + 1, 0, dom, parent);
  });

  return this;
};

exports.insertAfter = function(target) {
  var clones = [],
      self = this;
  if (typeof target === 'string') {
    target = this.constructor.call(this.constructor, target, null, this._originalRoot);
  }
  target = this._makeDomArray(target);
  self.remove();
  domEach(target, function(i, el) {
    var clonedSelf = self._makeDomArray(self.clone());
    var parent = el.parent || el.root;
    if (!parent) {
      return;
    }

    var siblings = parent.children,
        index = siblings.indexOf(el);

    // If not found, move on
    if (index < 0) return;

    // Add cloned `this` element(s) after target element
    uniqueSplice(siblings, index + 1, 0, clonedSelf, parent);
    clones.push(clonedSelf);
  });
  return this.constructor.call(this.constructor, this._makeDomArray(clones));
};

exports.before = function() {
  var elems = slice.call(arguments),
      lastIdx = this.length - 1;

  domEach(this, function(i, el) {
    var parent = el.parent || el.root;
    if (!parent) {
      return;
    }

    var siblings = parent.children,
        index = siblings.indexOf(el),
        domSrc, dom;

    // If not found, move on
    if (index < 0) return;

    if (typeof elems[0] === 'function') {
      domSrc = elems[0].call(el, i, $.html(el.children));
    } else {
      domSrc = elems;
    }

    dom = this._makeDomArray(domSrc, i < lastIdx);

    // Add element before `el` element
    uniqueSplice(siblings, index, 0, dom, parent);
  });

  return this;
};

exports.insertBefore = function(target) {
  var clones = [],
      self = this;
  if (typeof target === 'string') {
    target = this.constructor.call(this.constructor, target, null, this._originalRoot);
  }
  target = this._makeDomArray(target);
  self.remove();
  domEach(target, function(i, el) {
    var clonedSelf = self._makeDomArray(self.clone());
    var parent = el.parent || el.root;
    if (!parent) {
      return;
    }

    var siblings = parent.children,
        index = siblings.indexOf(el);

    // If not found, move on
    if (index < 0) return;

    // Add cloned `this` element(s) after target element
    uniqueSplice(siblings, index, 0, clonedSelf, parent);
    clones.push(clonedSelf);
  });
  return this.constructor.call(this.constructor, this._makeDomArray(clones));
};

/*
  remove([selector])
*/
exports.remove = function(selector) {
  var elems = this;

  // Filter if we have selector
  if (selector)
    elems = elems.filter(selector);

  domEach(elems, function(i, el) {
    var parent = el.parent || el.root;
    if (!parent) {
      return;
    }

    var siblings = parent.children,
        index = siblings.indexOf(el);

    if (index < 0) return;

    siblings.splice(index, 1);
    if (el.prev) {
      el.prev.next = el.next;
    }
    if (el.next) {
      el.next.prev = el.prev;
    }
    el.prev = el.next = el.parent = el.root = null;
  });

  return this;
};

exports.replaceWith = function(content) {
  var self = this;

  domEach(this, function(i, el) {
    var parent = el.parent || el.root;
    if (!parent) {
      return;
    }

    var siblings = parent.children,
        dom = self._makeDomArray(typeof content === 'function' ? content.call(el, i, el) : content),
        index;

    // In the case that `dom` contains nodes that already exist in other
    // structures, ensure those nodes are properly removed.
    updateDOM(dom, null);

    index = siblings.indexOf(el);

    // Completely remove old element
    uniqueSplice(siblings, index, 1, dom, parent);
    el.parent = el.prev = el.next = el.root = null;
  });

  return this;
};

exports.empty = function() {
  domEach(this, function(i, el) {
    _.forEach(el.children, function(child) {
      child.next = child.prev = child.parent = null;
    });

    el.children.length = 0;
  });
  return this;
};

/**
 * Set/Get the HTML
 */
exports.html = function(str) {
  if (str === undefined) {
    if (!this[0] || !this[0].children) return null;
    return $.html(this[0].children, this.options);
  }

  var opts = this.options;

  domEach(this, function(i, el) {
    _.forEach(el.children, function(child) {
      child.next = child.prev = child.parent = null;
    });

    var content = str.cheerio ? str.clone().get() : evaluate('' + str, opts, false);

    updateDOM(content, el);
  });

  return this;
};

exports.toString = function() {
  return $.html(this, this.options);
};

exports.text = function(str) {
  // If `str` is undefined, act as a "getter"
  if (str === undefined) {
    return $.text(this);
  } else if (typeof str === 'function') {
    // Function support
    return domEach(this, function(i, el) {
      var $el = [el];
      return exports.text.call($el, str.call(el, i, $.text($el)));
    });
  }

  // Append text node to each selected elements
  domEach(this, function(i, el) {
    _.forEach(el.children, function(child) {
      child.next = child.prev = child.parent = null;
    });

    var elem = {
      data: '' + str,
      type: 'text',
      parent: el,
      prev: null,
      next: null,
      children: []
    };

    updateDOM(elem, el);
  });

  return this;
};

exports.clone = function() {
  return this._make(cloneDom(this.get(), this.options));
};


/***/ }),

/***/ "9e69":
/***/ (function(module, exports, __webpack_require__) {

var root = __webpack_require__("2b3e");

/** Built-in value references. */
var Symbol = root.Symbol;

module.exports = Symbol;


/***/ }),

/***/ "9e6a":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("d233");

var has = Object.prototype.hasOwnProperty;

var defaults = {
    allowDots: false,
    allowPrototypes: false,
    arrayLimit: 20,
    decoder: utils.decode,
    delimiter: '&',
    depth: 5,
    parameterLimit: 1000,
    plainObjects: false,
    strictNullHandling: false
};

var parseValues = function parseQueryStringValues(str, options) {
    var obj = {};
    var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\?/, '') : str;
    var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;
    var parts = cleanStr.split(options.delimiter, limit);

    for (var i = 0; i < parts.length; ++i) {
        var part = parts[i];

        var bracketEqualsPos = part.indexOf(']=');
        var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;

        var key, val;
        if (pos === -1) {
            key = options.decoder(part, defaults.decoder);
            val = options.strictNullHandling ? null : '';
        } else {
            key = options.decoder(part.slice(0, pos), defaults.decoder);
            val = options.decoder(part.slice(pos + 1), defaults.decoder);
        }
        if (has.call(obj, key)) {
            obj[key] = [].concat(obj[key]).concat(val);
        } else {
            obj[key] = val;
        }
    }

    return obj;
};

var parseObject = function (chain, val, options) {
    var leaf = val;

    for (var i = chain.length - 1; i >= 0; --i) {
        var obj;
        var root = chain[i];

        if (root === '[]' && options.parseArrays) {
            obj = [].concat(leaf);
        } else {
            obj = options.plainObjects ? Object.create(null) : {};
            var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;
            var index = parseInt(cleanRoot, 10);
            if (!options.parseArrays && cleanRoot === '') {
                obj = { 0: leaf };
            } else if (
                !isNaN(index)
                && root !== cleanRoot
                && String(index) === cleanRoot
                && index >= 0
                && (options.parseArrays && index <= options.arrayLimit)
            ) {
                obj = [];
                obj[index] = leaf;
            } else if (cleanRoot !== '__proto__') {
                obj[cleanRoot] = leaf;
            }
        }

        leaf = obj;
    }

    return leaf;
};

var parseKeys = function parseQueryStringKeys(givenKey, val, options) {
    if (!givenKey) {
        return;
    }

    // Transform dot notation to bracket notation
    var key = options.allowDots ? givenKey.replace(/\.([^.[]+)/g, '[$1]') : givenKey;

    // The regex chunks

    var brackets = /(\[[^[\]]*])/;
    var child = /(\[[^[\]]*])/g;

    // Get the parent

    var segment = brackets.exec(key);
    var parent = segment ? key.slice(0, segment.index) : key;

    // Stash the parent if it exists

    var keys = [];
    if (parent) {
        // If we aren't using plain objects, optionally prefix keys
        // that would overwrite object prototype properties
        if (!options.plainObjects && has.call(Object.prototype, parent)) {
            if (!options.allowPrototypes) {
                return;
            }
        }

        keys.push(parent);
    }

    // Loop through children appending to the array until we hit depth

    var i = 0;
    while ((segment = child.exec(key)) !== null && i < options.depth) {
        i += 1;
        if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {
            if (!options.allowPrototypes) {
                return;
            }
        }
        keys.push(segment[1]);
    }

    // If there's a remainder, just add whatever is left

    if (segment) {
        keys.push('[' + key.slice(segment.index) + ']');
    }

    return parseObject(keys, val, options);
};

module.exports = function (str, opts) {
    var options = opts ? utils.assign({}, opts) : {};

    if (options.decoder !== null && options.decoder !== undefined && typeof options.decoder !== 'function') {
        throw new TypeError('Decoder has to be a function.');
    }

    options.ignoreQueryPrefix = options.ignoreQueryPrefix === true;
    options.delimiter = typeof options.delimiter === 'string' || utils.isRegExp(options.delimiter) ? options.delimiter : defaults.delimiter;
    options.depth = typeof options.depth === 'number' ? options.depth : defaults.depth;
    options.arrayLimit = typeof options.arrayLimit === 'number' ? options.arrayLimit : defaults.arrayLimit;
    options.parseArrays = options.parseArrays !== false;
    options.decoder = typeof options.decoder === 'function' ? options.decoder : defaults.decoder;
    options.allowDots = typeof options.allowDots === 'boolean' ? options.allowDots : defaults.allowDots;
    options.plainObjects = typeof options.plainObjects === 'boolean' ? options.plainObjects : defaults.plainObjects;
    options.allowPrototypes = typeof options.allowPrototypes === 'boolean' ? options.allowPrototypes : defaults.allowPrototypes;
    options.parameterLimit = typeof options.parameterLimit === 'number' ? options.parameterLimit : defaults.parameterLimit;
    options.strictNullHandling = typeof options.strictNullHandling === 'boolean' ? options.strictNullHandling : defaults.strictNullHandling;

    if (str === '' || str === null || typeof str === 'undefined') {
        return options.plainObjects ? Object.create(null) : {};
    }

    var tempObj = typeof str === 'string' ? parseValues(str, options) : str;
    var obj = options.plainObjects ? Object.create(null) : {};

    // Iterate over the keys and setup the new object

    var keys = Object.keys(tempObj);
    for (var i = 0; i < keys.length; ++i) {
        var key = keys[i];
        var newObj = parseKeys(key, tempObj[key], options);
        obj = utils.merge(obj, newObj, options);
    }

    return utils.compact(obj);
};


/***/ }),

/***/ "9f74":
/***/ (function(module, exports, __webpack_require__) {

var baseEach = __webpack_require__("48a0");

/**
 * The base implementation of `_.filter` without support for iteratee shorthands.
 *
 * @private
 * @param {Array|Object} collection The collection to iterate over.
 * @param {Function} predicate The function invoked per iteration.
 * @returns {Array} Returns the new filtered array.
 */
function baseFilter(collection, predicate) {
  var result = [];
  baseEach(collection, function(value, index, collection) {
    if (predicate(value, index, collection)) {
      result.push(value);
    }
  });
  return result;
}

module.exports = baseFilter;


/***/ }),

/***/ "a0ac":
/***/ (function(module, exports) {

/** Error message constants. */
var FUNC_ERROR_TEXT = 'Expected a function';

/**
 * Creates a function that negates the result of the predicate `func`. The
 * `func` predicate is invoked with the `this` binding and arguments of the
 * created function.
 *
 * @static
 * @memberOf _
 * @since 3.0.0
 * @category Function
 * @param {Function} predicate The predicate to negate.
 * @returns {Function} Returns the new negated function.
 * @example
 *
 * function isEven(n) {
 *   return n % 2 == 0;
 * }
 *
 * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));
 * // => [1, 3, 5]
 */
function negate(predicate) {
  if (typeof predicate != 'function') {
    throw new TypeError(FUNC_ERROR_TEXT);
  }
  return function() {
    var args = arguments;
    switch (args.length) {
      case 0: return !predicate.call(this);
      case 1: return !predicate.call(this, args[0]);
      case 2: return !predicate.call(this, args[0], args[1]);
      case 3: return !predicate.call(this, args[0], args[1], args[2]);
    }
    return !predicate.apply(this, args);
  };
}

module.exports = negate;


/***/ }),

/***/ "a1af":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


//NOTE: this file contains auto-generated array mapped radix tree that is used for the named entity references consumption
//(details: https://github.com/inikulin/parse5/tree/master/scripts/generate_named_entity_data/README.md)
module.exports = new Uint16Array([4,52,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,106,303,412,810,1432,1701,1796,1987,2114,2360,2420,2484,3170,3251,4140,4393,4575,4610,5106,5512,5728,6117,6274,6315,6345,6427,6516,7002,7910,8733,9323,9870,10170,10631,10893,11318,11386,11467,12773,13092,14474,14922,15448,15542,16419,17666,18166,18611,19004,19095,19298,19397,4,16,69,77,97,98,99,102,103,108,109,110,111,112,114,115,116,117,140,150,158,169,176,194,199,210,216,222,226,242,256,266,283,294,108,105,103,5,198,1,59,148,1,198,80,5,38,1,59,156,1,38,99,117,116,101,5,193,1,59,167,1,193,114,101,118,101,59,1,258,4,2,105,121,182,191,114,99,5,194,1,59,189,1,194,59,1,1040,114,59,3,55349,56580,114,97,118,101,5,192,1,59,208,1,192,112,104,97,59,1,913,97,99,114,59,1,256,100,59,1,10835,4,2,103,112,232,237,111,110,59,1,260,102,59,3,55349,56632,112,108,121,70,117,110,99,116,105,111,110,59,1,8289,105,110,103,5,197,1,59,264,1,197,4,2,99,115,272,277,114,59,3,55349,56476,105,103,110,59,1,8788,105,108,100,101,5,195,1,59,292,1,195,109,108,5,196,1,59,301,1,196,4,8,97,99,101,102,111,114,115,117,321,350,354,383,388,394,400,405,4,2,99,114,327,336,107,115,108,97,115,104,59,1,8726,4,2,118,119,342,345,59,1,10983,101,100,59,1,8966,121,59,1,1041,4,3,99,114,116,362,369,379,97,117,115,101,59,1,8757,110,111,117,108,108,105,115,59,1,8492,97,59,1,914,114,59,3,55349,56581,112,102,59,3,55349,56633,101,118,101,59,1,728,99,114,59,1,8492,109,112,101,113,59,1,8782,4,14,72,79,97,99,100,101,102,104,105,108,111,114,115,117,442,447,456,504,542,547,569,573,577,616,678,784,790,796,99,121,59,1,1063,80,89,5,169,1,59,454,1,169,4,3,99,112,121,464,470,497,117,116,101,59,1,262,4,2,59,105,476,478,1,8914,116,97,108,68,105,102,102,101,114,101,110,116,105,97,108,68,59,1,8517,108,101,121,115,59,1,8493,4,4,97,101,105,111,514,520,530,535,114,111,110,59,1,268,100,105,108,5,199,1,59,528,1,199,114,99,59,1,264,110,105,110,116,59,1,8752,111,116,59,1,266,4,2,100,110,553,560,105,108,108,97,59,1,184,116,101,114,68,111,116,59,1,183,114,59,1,8493,105,59,1,935,114,99,108,101,4,4,68,77,80,84,591,596,603,609,111,116,59,1,8857,105,110,117,115,59,1,8854,108,117,115,59,1,8853,105,109,101,115,59,1,8855,111,4,2,99,115,623,646,107,119,105,115,101,67,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8754,101,67,117,114,108,121,4,2,68,81,658,671,111,117,98,108,101,81,117,111,116,101,59,1,8221,117,111,116,101,59,1,8217,4,4,108,110,112,117,688,701,736,753,111,110,4,2,59,101,696,698,1,8759,59,1,10868,4,3,103,105,116,709,717,722,114,117,101,110,116,59,1,8801,110,116,59,1,8751,111,117,114,73,110,116,101,103,114,97,108,59,1,8750,4,2,102,114,742,745,59,1,8450,111,100,117,99,116,59,1,8720,110,116,101,114,67,108,111,99,107,119,105,115,101,67,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8755,111,115,115,59,1,10799,99,114,59,3,55349,56478,112,4,2,59,67,803,805,1,8915,97,112,59,1,8781,4,11,68,74,83,90,97,99,101,102,105,111,115,834,850,855,860,865,888,903,916,921,1011,1415,4,2,59,111,840,842,1,8517,116,114,97,104,100,59,1,10513,99,121,59,1,1026,99,121,59,1,1029,99,121,59,1,1039,4,3,103,114,115,873,879,883,103,101,114,59,1,8225,114,59,1,8609,104,118,59,1,10980,4,2,97,121,894,900,114,111,110,59,1,270,59,1,1044,108,4,2,59,116,910,912,1,8711,97,59,1,916,114,59,3,55349,56583,4,2,97,102,927,998,4,2,99,109,933,992,114,105,116,105,99,97,108,4,4,65,68,71,84,950,957,978,985,99,117,116,101,59,1,180,111,4,2,116,117,964,967,59,1,729,98,108,101,65,99,117,116,101,59,1,733,114,97,118,101,59,1,96,105,108,100,101,59,1,732,111,110,100,59,1,8900,102,101,114,101,110,116,105,97,108,68,59,1,8518,4,4,112,116,117,119,1021,1026,1048,1249,102,59,3,55349,56635,4,3,59,68,69,1034,1036,1041,1,168,111,116,59,1,8412,113,117,97,108,59,1,8784,98,108,101,4,6,67,68,76,82,85,86,1065,1082,1101,1189,1211,1236,111,110,116,111,117,114,73,110,116,101,103,114,97,108,59,1,8751,111,4,2,116,119,1089,1092,59,1,168,110,65,114,114,111,119,59,1,8659,4,2,101,111,1107,1141,102,116,4,3,65,82,84,1117,1124,1136,114,114,111,119,59,1,8656,105,103,104,116,65,114,114,111,119,59,1,8660,101,101,59,1,10980,110,103,4,2,76,82,1149,1177,101,102,116,4,2,65,82,1158,1165,114,114,111,119,59,1,10232,105,103,104,116,65,114,114,111,119,59,1,10234,105,103,104,116,65,114,114,111,119,59,1,10233,105,103,104,116,4,2,65,84,1199,1206,114,114,111,119,59,1,8658,101,101,59,1,8872,112,4,2,65,68,1218,1225,114,114,111,119,59,1,8657,111,119,110,65,114,114,111,119,59,1,8661,101,114,116,105,99,97,108,66,97,114,59,1,8741,110,4,6,65,66,76,82,84,97,1264,1292,1299,1352,1391,1408,114,114,111,119,4,3,59,66,85,1276,1278,1283,1,8595,97,114,59,1,10515,112,65,114,114,111,119,59,1,8693,114,101,118,101,59,1,785,101,102,116,4,3,82,84,86,1310,1323,1334,105,103,104,116,86,101,99,116,111,114,59,1,10576,101,101,86,101,99,116,111,114,59,1,10590,101,99,116,111,114,4,2,59,66,1345,1347,1,8637,97,114,59,1,10582,105,103,104,116,4,2,84,86,1362,1373,101,101,86,101,99,116,111,114,59,1,10591,101,99,116,111,114,4,2,59,66,1384,1386,1,8641,97,114,59,1,10583,101,101,4,2,59,65,1399,1401,1,8868,114,114,111,119,59,1,8615,114,114,111,119,59,1,8659,4,2,99,116,1421,1426,114,59,3,55349,56479,114,111,107,59,1,272,4,16,78,84,97,99,100,102,103,108,109,111,112,113,115,116,117,120,1466,1470,1478,1489,1515,1520,1525,1536,1544,1593,1609,1617,1650,1664,1668,1677,71,59,1,330,72,5,208,1,59,1476,1,208,99,117,116,101,5,201,1,59,1487,1,201,4,3,97,105,121,1497,1503,1512,114,111,110,59,1,282,114,99,5,202,1,59,1510,1,202,59,1,1069,111,116,59,1,278,114,59,3,55349,56584,114,97,118,101,5,200,1,59,1534,1,200,101,109,101,110,116,59,1,8712,4,2,97,112,1550,1555,99,114,59,1,274,116,121,4,2,83,86,1563,1576,109,97,108,108,83,113,117,97,114,101,59,1,9723,101,114,121,83,109,97,108,108,83,113,117,97,114,101,59,1,9643,4,2,103,112,1599,1604,111,110,59,1,280,102,59,3,55349,56636,115,105,108,111,110,59,1,917,117,4,2,97,105,1624,1640,108,4,2,59,84,1631,1633,1,10869,105,108,100,101,59,1,8770,108,105,98,114,105,117,109,59,1,8652,4,2,99,105,1656,1660,114,59,1,8496,109,59,1,10867,97,59,1,919,109,108,5,203,1,59,1675,1,203,4,2,105,112,1683,1689,115,116,115,59,1,8707,111,110,101,110,116,105,97,108,69,59,1,8519,4,5,99,102,105,111,115,1713,1717,1722,1762,1791,121,59,1,1060,114,59,3,55349,56585,108,108,101,100,4,2,83,86,1732,1745,109,97,108,108,83,113,117,97,114,101,59,1,9724,101,114,121,83,109,97,108,108,83,113,117,97,114,101,59,1,9642,4,3,112,114,117,1770,1775,1781,102,59,3,55349,56637,65,108,108,59,1,8704,114,105,101,114,116,114,102,59,1,8497,99,114,59,1,8497,4,12,74,84,97,98,99,100,102,103,111,114,115,116,1822,1827,1834,1848,1855,1877,1882,1887,1890,1896,1978,1984,99,121,59,1,1027,5,62,1,59,1832,1,62,109,109,97,4,2,59,100,1843,1845,1,915,59,1,988,114,101,118,101,59,1,286,4,3,101,105,121,1863,1869,1874,100,105,108,59,1,290,114,99,59,1,284,59,1,1043,111,116,59,1,288,114,59,3,55349,56586,59,1,8921,112,102,59,3,55349,56638,101,97,116,101,114,4,6,69,70,71,76,83,84,1915,1933,1944,1953,1959,1971,113,117,97,108,4,2,59,76,1925,1927,1,8805,101,115,115,59,1,8923,117,108,108,69,113,117,97,108,59,1,8807,114,101,97,116,101,114,59,1,10914,101,115,115,59,1,8823,108,97,110,116,69,113,117,97,108,59,1,10878,105,108,100,101,59,1,8819,99,114,59,3,55349,56482,59,1,8811,4,8,65,97,99,102,105,111,115,117,2005,2012,2026,2032,2036,2049,2073,2089,82,68,99,121,59,1,1066,4,2,99,116,2018,2023,101,107,59,1,711,59,1,94,105,114,99,59,1,292,114,59,1,8460,108,98,101,114,116,83,112,97,99,101,59,1,8459,4,2,112,114,2055,2059,102,59,1,8461,105,122,111,110,116,97,108,76,105,110,101,59,1,9472,4,2,99,116,2079,2083,114,59,1,8459,114,111,107,59,1,294,109,112,4,2,68,69,2097,2107,111,119,110,72,117,109,112,59,1,8782,113,117,97,108,59,1,8783,4,14,69,74,79,97,99,100,102,103,109,110,111,115,116,117,2144,2149,2155,2160,2171,2189,2194,2198,2209,2245,2307,2329,2334,2341,99,121,59,1,1045,108,105,103,59,1,306,99,121,59,1,1025,99,117,116,101,5,205,1,59,2169,1,205,4,2,105,121,2177,2186,114,99,5,206,1,59,2184,1,206,59,1,1048,111,116,59,1,304,114,59,1,8465,114,97,118,101,5,204,1,59,2207,1,204,4,3,59,97,112,2217,2219,2238,1,8465,4,2,99,103,2225,2229,114,59,1,298,105,110,97,114,121,73,59,1,8520,108,105,101,115,59,1,8658,4,2,116,118,2251,2281,4,2,59,101,2257,2259,1,8748,4,2,103,114,2265,2271,114,97,108,59,1,8747,115,101,99,116,105,111,110,59,1,8898,105,115,105,98,108,101,4,2,67,84,2293,2300,111,109,109,97,59,1,8291,105,109,101,115,59,1,8290,4,3,103,112,116,2315,2320,2325,111,110,59,1,302,102,59,3,55349,56640,97,59,1,921,99,114,59,1,8464,105,108,100,101,59,1,296,4,2,107,109,2347,2352,99,121,59,1,1030,108,5,207,1,59,2358,1,207,4,5,99,102,111,115,117,2372,2386,2391,2397,2414,4,2,105,121,2378,2383,114,99,59,1,308,59,1,1049,114,59,3,55349,56589,112,102,59,3,55349,56641,4,2,99,101,2403,2408,114,59,3,55349,56485,114,99,121,59,1,1032,107,99,121,59,1,1028,4,7,72,74,97,99,102,111,115,2436,2441,2446,2452,2467,2472,2478,99,121,59,1,1061,99,121,59,1,1036,112,112,97,59,1,922,4,2,101,121,2458,2464,100,105,108,59,1,310,59,1,1050,114,59,3,55349,56590,112,102,59,3,55349,56642,99,114,59,3,55349,56486,4,11,74,84,97,99,101,102,108,109,111,115,116,2508,2513,2520,2562,2585,2981,2986,3004,3011,3146,3167,99,121,59,1,1033,5,60,1,59,2518,1,60,4,5,99,109,110,112,114,2532,2538,2544,2548,2558,117,116,101,59,1,313,98,100,97,59,1,923,103,59,1,10218,108,97,99,101,116,114,102,59,1,8466,114,59,1,8606,4,3,97,101,121,2570,2576,2582,114,111,110,59,1,317,100,105,108,59,1,315,59,1,1051,4,2,102,115,2591,2907,116,4,10,65,67,68,70,82,84,85,86,97,114,2614,2663,2672,2728,2735,2760,2820,2870,2888,2895,4,2,110,114,2620,2633,103,108,101,66,114,97,99,107,101,116,59,1,10216,114,111,119,4,3,59,66,82,2644,2646,2651,1,8592,97,114,59,1,8676,105,103,104,116,65,114,114,111,119,59,1,8646,101,105,108,105,110,103,59,1,8968,111,4,2,117,119,2679,2692,98,108,101,66,114,97,99,107,101,116,59,1,10214,110,4,2,84,86,2699,2710,101,101,86,101,99,116,111,114,59,1,10593,101,99,116,111,114,4,2,59,66,2721,2723,1,8643,97,114,59,1,10585,108,111,111,114,59,1,8970,105,103,104,116,4,2,65,86,2745,2752,114,114,111,119,59,1,8596,101,99,116,111,114,59,1,10574,4,2,101,114,2766,2792,101,4,3,59,65,86,2775,2777,2784,1,8867,114,114,111,119,59,1,8612,101,99,116,111,114,59,1,10586,105,97,110,103,108,101,4,3,59,66,69,2806,2808,2813,1,8882,97,114,59,1,10703,113,117,97,108,59,1,8884,112,4,3,68,84,86,2829,2841,2852,111,119,110,86,101,99,116,111,114,59,1,10577,101,101,86,101,99,116,111,114,59,1,10592,101,99,116,111,114,4,2,59,66,2863,2865,1,8639,97,114,59,1,10584,101,99,116,111,114,4,2,59,66,2881,2883,1,8636,97,114,59,1,10578,114,114,111,119,59,1,8656,105,103,104,116,97,114,114,111,119,59,1,8660,115,4,6,69,70,71,76,83,84,2922,2936,2947,2956,2962,2974,113,117,97,108,71,114,101,97,116,101,114,59,1,8922,117,108,108,69,113,117,97,108,59,1,8806,114,101,97,116,101,114,59,1,8822,101,115,115,59,1,10913,108,97,110,116,69,113,117,97,108,59,1,10877,105,108,100,101,59,1,8818,114,59,3,55349,56591,4,2,59,101,2992,2994,1,8920,102,116,97,114,114,111,119,59,1,8666,105,100,111,116,59,1,319,4,3,110,112,119,3019,3110,3115,103,4,4,76,82,108,114,3030,3058,3070,3098,101,102,116,4,2,65,82,3039,3046,114,114,111,119,59,1,10229,105,103,104,116,65,114,114,111,119,59,1,10231,105,103,104,116,65,114,114,111,119,59,1,10230,101,102,116,4,2,97,114,3079,3086,114,114,111,119,59,1,10232,105,103,104,116,97,114,114,111,119,59,1,10234,105,103,104,116,97,114,114,111,119,59,1,10233,102,59,3,55349,56643,101,114,4,2,76,82,3123,3134,101,102,116,65,114,114,111,119,59,1,8601,105,103,104,116,65,114,114,111,119,59,1,8600,4,3,99,104,116,3154,3158,3161,114,59,1,8466,59,1,8624,114,111,107,59,1,321,59,1,8810,4,8,97,99,101,102,105,111,115,117,3188,3192,3196,3222,3227,3237,3243,3248,112,59,1,10501,121,59,1,1052,4,2,100,108,3202,3213,105,117,109,83,112,97,99,101,59,1,8287,108,105,110,116,114,102,59,1,8499,114,59,3,55349,56592,110,117,115,80,108,117,115,59,1,8723,112,102,59,3,55349,56644,99,114,59,1,8499,59,1,924,4,9,74,97,99,101,102,111,115,116,117,3271,3276,3283,3306,3422,3427,4120,4126,4137,99,121,59,1,1034,99,117,116,101,59,1,323,4,3,97,101,121,3291,3297,3303,114,111,110,59,1,327,100,105,108,59,1,325,59,1,1053,4,3,103,115,119,3314,3380,3415,97,116,105,118,101,4,3,77,84,86,3327,3340,3365,101,100,105,117,109,83,112,97,99,101,59,1,8203,104,105,4,2,99,110,3348,3357,107,83,112,97,99,101,59,1,8203,83,112,97,99,101,59,1,8203,101,114,121,84,104,105,110,83,112,97,99,101,59,1,8203,116,101,100,4,2,71,76,3389,3405,114,101,97,116,101,114,71,114,101,97,116,101,114,59,1,8811,101,115,115,76,101,115,115,59,1,8810,76,105,110,101,59,1,10,114,59,3,55349,56593,4,4,66,110,112,116,3437,3444,3460,3464,114,101,97,107,59,1,8288,66,114,101,97,107,105,110,103,83,112,97,99,101,59,1,160,102,59,1,8469,4,13,59,67,68,69,71,72,76,78,80,82,83,84,86,3492,3494,3517,3536,3578,3657,3685,3784,3823,3860,3915,4066,4107,1,10988,4,2,111,117,3500,3510,110,103,114,117,101,110,116,59,1,8802,112,67,97,112,59,1,8813,111,117,98,108,101,86,101,114,116,105,99,97,108,66,97,114,59,1,8742,4,3,108,113,120,3544,3552,3571,101,109,101,110,116,59,1,8713,117,97,108,4,2,59,84,3561,3563,1,8800,105,108,100,101,59,3,8770,824,105,115,116,115,59,1,8708,114,101,97,116,101,114,4,7,59,69,70,71,76,83,84,3600,3602,3609,3621,3631,3637,3650,1,8815,113,117,97,108,59,1,8817,117,108,108,69,113,117,97,108,59,3,8807,824,114,101,97,116,101,114,59,3,8811,824,101,115,115,59,1,8825,108,97,110,116,69,113,117,97,108,59,3,10878,824,105,108,100,101,59,1,8821,117,109,112,4,2,68,69,3666,3677,111,119,110,72,117,109,112,59,3,8782,824,113,117,97,108,59,3,8783,824,101,4,2,102,115,3692,3724,116,84,114,105,97,110,103,108,101,4,3,59,66,69,3709,3711,3717,1,8938,97,114,59,3,10703,824,113,117,97,108,59,1,8940,115,4,6,59,69,71,76,83,84,3739,3741,3748,3757,3764,3777,1,8814,113,117,97,108,59,1,8816,114,101,97,116,101,114,59,1,8824,101,115,115,59,3,8810,824,108,97,110,116,69,113,117,97,108,59,3,10877,824,105,108,100,101,59,1,8820,101,115,116,101,100,4,2,71,76,3795,3812,114,101,97,116,101,114,71,114,101,97,116,101,114,59,3,10914,824,101,115,115,76,101,115,115,59,3,10913,824,114,101,99,101,100,101,115,4,3,59,69,83,3838,3840,3848,1,8832,113,117,97,108,59,3,10927,824,108,97,110,116,69,113,117,97,108,59,1,8928,4,2,101,105,3866,3881,118,101,114,115,101,69,108,101,109,101,110,116,59,1,8716,103,104,116,84,114,105,97,110,103,108,101,4,3,59,66,69,3900,3902,3908,1,8939,97,114,59,3,10704,824,113,117,97,108,59,1,8941,4,2,113,117,3921,3973,117,97,114,101,83,117,4,2,98,112,3933,3952,115,101,116,4,2,59,69,3942,3945,3,8847,824,113,117,97,108,59,1,8930,101,114,115,101,116,4,2,59,69,3963,3966,3,8848,824,113,117,97,108,59,1,8931,4,3,98,99,112,3981,4000,4045,115,101,116,4,2,59,69,3990,3993,3,8834,8402,113,117,97,108,59,1,8840,99,101,101,100,115,4,4,59,69,83,84,4015,4017,4025,4037,1,8833,113,117,97,108,59,3,10928,824,108,97,110,116,69,113,117,97,108,59,1,8929,105,108,100,101,59,3,8831,824,101,114,115,101,116,4,2,59,69,4056,4059,3,8835,8402,113,117,97,108,59,1,8841,105,108,100,101,4,4,59,69,70,84,4080,4082,4089,4100,1,8769,113,117,97,108,59,1,8772,117,108,108,69,113,117,97,108,59,1,8775,105,108,100,101,59,1,8777,101,114,116,105,99,97,108,66,97,114,59,1,8740,99,114,59,3,55349,56489,105,108,100,101,5,209,1,59,4135,1,209,59,1,925,4,14,69,97,99,100,102,103,109,111,112,114,115,116,117,118,4170,4176,4187,4205,4212,4217,4228,4253,4259,4292,4295,4316,4337,4346,108,105,103,59,1,338,99,117,116,101,5,211,1,59,4185,1,211,4,2,105,121,4193,4202,114,99,5,212,1,59,4200,1,212,59,1,1054,98,108,97,99,59,1,336,114,59,3,55349,56594,114,97,118,101,5,210,1,59,4226,1,210,4,3,97,101,105,4236,4241,4246,99,114,59,1,332,103,97,59,1,937,99,114,111,110,59,1,927,112,102,59,3,55349,56646,101,110,67,117,114,108,121,4,2,68,81,4272,4285,111,117,98,108,101,81,117,111,116,101,59,1,8220,117,111,116,101,59,1,8216,59,1,10836,4,2,99,108,4301,4306,114,59,3,55349,56490,97,115,104,5,216,1,59,4314,1,216,105,4,2,108,109,4323,4332,100,101,5,213,1,59,4330,1,213,101,115,59,1,10807,109,108,5,214,1,59,4344,1,214,101,114,4,2,66,80,4354,4380,4,2,97,114,4360,4364,114,59,1,8254,97,99,4,2,101,107,4372,4375,59,1,9182,101,116,59,1,9140,97,114,101,110,116,104,101,115,105,115,59,1,9180,4,9,97,99,102,104,105,108,111,114,115,4413,4422,4426,4431,4435,4438,4448,4471,4561,114,116,105,97,108,68,59,1,8706,121,59,1,1055,114,59,3,55349,56595,105,59,1,934,59,1,928,117,115,77,105,110,117,115,59,1,177,4,2,105,112,4454,4467,110,99,97,114,101,112,108,97,110,101,59,1,8460,102,59,1,8473,4,4,59,101,105,111,4481,4483,4526,4531,1,10939,99,101,100,101,115,4,4,59,69,83,84,4498,4500,4507,4519,1,8826,113,117,97,108,59,1,10927,108,97,110,116,69,113,117,97,108,59,1,8828,105,108,100,101,59,1,8830,109,101,59,1,8243,4,2,100,112,4537,4543,117,99,116,59,1,8719,111,114,116,105,111,110,4,2,59,97,4555,4557,1,8759,108,59,1,8733,4,2,99,105,4567,4572,114,59,3,55349,56491,59,1,936,4,4,85,102,111,115,4585,4594,4599,4604,79,84,5,34,1,59,4592,1,34,114,59,3,55349,56596,112,102,59,1,8474,99,114,59,3,55349,56492,4,12,66,69,97,99,101,102,104,105,111,114,115,117,4636,4642,4650,4681,4704,4763,4767,4771,5047,5069,5081,5094,97,114,114,59,1,10512,71,5,174,1,59,4648,1,174,4,3,99,110,114,4658,4664,4668,117,116,101,59,1,340,103,59,1,10219,114,4,2,59,116,4675,4677,1,8608,108,59,1,10518,4,3,97,101,121,4689,4695,4701,114,111,110,59,1,344,100,105,108,59,1,342,59,1,1056,4,2,59,118,4710,4712,1,8476,101,114,115,101,4,2,69,85,4722,4748,4,2,108,113,4728,4736,101,109,101,110,116,59,1,8715,117,105,108,105,98,114,105,117,109,59,1,8651,112,69,113,117,105,108,105,98,114,105,117,109,59,1,10607,114,59,1,8476,111,59,1,929,103,104,116,4,8,65,67,68,70,84,85,86,97,4792,4840,4849,4905,4912,4972,5022,5040,4,2,110,114,4798,4811,103,108,101,66,114,97,99,107,101,116,59,1,10217,114,111,119,4,3,59,66,76,4822,4824,4829,1,8594,97,114,59,1,8677,101,102,116,65,114,114,111,119,59,1,8644,101,105,108,105,110,103,59,1,8969,111,4,2,117,119,4856,4869,98,108,101,66,114,97,99,107,101,116,59,1,10215,110,4,2,84,86,4876,4887,101,101,86,101,99,116,111,114,59,1,10589,101,99,116,111,114,4,2,59,66,4898,4900,1,8642,97,114,59,1,10581,108,111,111,114,59,1,8971,4,2,101,114,4918,4944,101,4,3,59,65,86,4927,4929,4936,1,8866,114,114,111,119,59,1,8614,101,99,116,111,114,59,1,10587,105,97,110,103,108,101,4,3,59,66,69,4958,4960,4965,1,8883,97,114,59,1,10704,113,117,97,108,59,1,8885,112,4,3,68,84,86,4981,4993,5004,111,119,110,86,101,99,116,111,114,59,1,10575,101,101,86,101,99,116,111,114,59,1,10588,101,99,116,111,114,4,2,59,66,5015,5017,1,8638,97,114,59,1,10580,101,99,116,111,114,4,2,59,66,5033,5035,1,8640,97,114,59,1,10579,114,114,111,119,59,1,8658,4,2,112,117,5053,5057,102,59,1,8477,110,100,73,109,112,108,105,101,115,59,1,10608,105,103,104,116,97,114,114,111,119,59,1,8667,4,2,99,104,5087,5091,114,59,1,8475,59,1,8625,108,101,68,101,108,97,121,101,100,59,1,10740,4,13,72,79,97,99,102,104,105,109,111,113,115,116,117,5134,5150,5157,5164,5198,5203,5259,5265,5277,5283,5374,5380,5385,4,2,67,99,5140,5146,72,99,121,59,1,1065,121,59,1,1064,70,84,99,121,59,1,1068,99,117,116,101,59,1,346,4,5,59,97,101,105,121,5176,5178,5184,5190,5195,1,10940,114,111,110,59,1,352,100,105,108,59,1,350,114,99,59,1,348,59,1,1057,114,59,3,55349,56598,111,114,116,4,4,68,76,82,85,5216,5227,5238,5250,111,119,110,65,114,114,111,119,59,1,8595,101,102,116,65,114,114,111,119,59,1,8592,105,103,104,116,65,114,114,111,119,59,1,8594,112,65,114,114,111,119,59,1,8593,103,109,97,59,1,931,97,108,108,67,105,114,99,108,101,59,1,8728,112,102,59,3,55349,56650,4,2,114,117,5289,5293,116,59,1,8730,97,114,101,4,4,59,73,83,85,5306,5308,5322,5367,1,9633,110,116,101,114,115,101,99,116,105,111,110,59,1,8851,117,4,2,98,112,5329,5347,115,101,116,4,2,59,69,5338,5340,1,8847,113,117,97,108,59,1,8849,101,114,115,101,116,4,2,59,69,5358,5360,1,8848,113,117,97,108,59,1,8850,110,105,111,110,59,1,8852,99,114,59,3,55349,56494,97,114,59,1,8902,4,4,98,99,109,112,5395,5420,5475,5478,4,2,59,115,5401,5403,1,8912,101,116,4,2,59,69,5411,5413,1,8912,113,117,97,108,59,1,8838,4,2,99,104,5426,5468,101,101,100,115,4,4,59,69,83,84,5440,5442,5449,5461,1,8827,113,117,97,108,59,1,10928,108,97,110,116,69,113,117,97,108,59,1,8829,105,108,100,101,59,1,8831,84,104,97,116,59,1,8715,59,1,8721,4,3,59,101,115,5486,5488,5507,1,8913,114,115,101,116,4,2,59,69,5498,5500,1,8835,113,117,97,108,59,1,8839,101,116,59,1,8913,4,11,72,82,83,97,99,102,104,105,111,114,115,5536,5546,5552,5567,5579,5602,5607,5655,5695,5701,5711,79,82,78,5,222,1,59,5544,1,222,65,68,69,59,1,8482,4,2,72,99,5558,5563,99,121,59,1,1035,121,59,1,1062,4,2,98,117,5573,5576,59,1,9,59,1,932,4,3,97,101,121,5587,5593,5599,114,111,110,59,1,356,100,105,108,59,1,354,59,1,1058,114,59,3,55349,56599,4,2,101,105,5613,5631,4,2,114,116,5619,5627,101,102,111,114,101,59,1,8756,97,59,1,920,4,2,99,110,5637,5647,107,83,112,97,99,101,59,3,8287,8202,83,112,97,99,101,59,1,8201,108,100,101,4,4,59,69,70,84,5668,5670,5677,5688,1,8764,113,117,97,108,59,1,8771,117,108,108,69,113,117,97,108,59,1,8773,105,108,100,101,59,1,8776,112,102,59,3,55349,56651,105,112,108,101,68,111,116,59,1,8411,4,2,99,116,5717,5722,114,59,3,55349,56495,114,111,107,59,1,358,4,14,97,98,99,100,102,103,109,110,111,112,114,115,116,117,5758,5789,5805,5823,5830,5835,5846,5852,5921,5937,6089,6095,6101,6108,4,2,99,114,5764,5774,117,116,101,5,218,1,59,5772,1,218,114,4,2,59,111,5781,5783,1,8607,99,105,114,59,1,10569,114,4,2,99,101,5796,5800,121,59,1,1038,118,101,59,1,364,4,2,105,121,5811,5820,114,99,5,219,1,59,5818,1,219,59,1,1059,98,108,97,99,59,1,368,114,59,3,55349,56600,114,97,118,101,5,217,1,59,5844,1,217,97,99,114,59,1,362,4,2,100,105,5858,5905,101,114,4,2,66,80,5866,5892,4,2,97,114,5872,5876,114,59,1,95,97,99,4,2,101,107,5884,5887,59,1,9183,101,116,59,1,9141,97,114,101,110,116,104,101,115,105,115,59,1,9181,111,110,4,2,59,80,5913,5915,1,8899,108,117,115,59,1,8846,4,2,103,112,5927,5932,111,110,59,1,370,102,59,3,55349,56652,4,8,65,68,69,84,97,100,112,115,5955,5985,5996,6009,6026,6033,6044,6075,114,114,111,119,4,3,59,66,68,5967,5969,5974,1,8593,97,114,59,1,10514,111,119,110,65,114,114,111,119,59,1,8645,111,119,110,65,114,114,111,119,59,1,8597,113,117,105,108,105,98,114,105,117,109,59,1,10606,101,101,4,2,59,65,6017,6019,1,8869,114,114,111,119,59,1,8613,114,114,111,119,59,1,8657,111,119,110,97,114,114,111,119,59,1,8661,101,114,4,2,76,82,6052,6063,101,102,116,65,114,114,111,119,59,1,8598,105,103,104,116,65,114,114,111,119,59,1,8599,105,4,2,59,108,6082,6084,1,978,111,110,59,1,933,105,110,103,59,1,366,99,114,59,3,55349,56496,105,108,100,101,59,1,360,109,108,5,220,1,59,6115,1,220,4,9,68,98,99,100,101,102,111,115,118,6137,6143,6148,6152,6166,6250,6255,6261,6267,97,115,104,59,1,8875,97,114,59,1,10987,121,59,1,1042,97,115,104,4,2,59,108,6161,6163,1,8873,59,1,10982,4,2,101,114,6172,6175,59,1,8897,4,3,98,116,121,6183,6188,6238,97,114,59,1,8214,4,2,59,105,6194,6196,1,8214,99,97,108,4,4,66,76,83,84,6209,6214,6220,6231,97,114,59,1,8739,105,110,101,59,1,124,101,112,97,114,97,116,111,114,59,1,10072,105,108,100,101,59,1,8768,84,104,105,110,83,112,97,99,101,59,1,8202,114,59,3,55349,56601,112,102,59,3,55349,56653,99,114,59,3,55349,56497,100,97,115,104,59,1,8874,4,5,99,101,102,111,115,6286,6292,6298,6303,6309,105,114,99,59,1,372,100,103,101,59,1,8896,114,59,3,55349,56602,112,102,59,3,55349,56654,99,114,59,3,55349,56498,4,4,102,105,111,115,6325,6330,6333,6339,114,59,3,55349,56603,59,1,926,112,102,59,3,55349,56655,99,114,59,3,55349,56499,4,9,65,73,85,97,99,102,111,115,117,6365,6370,6375,6380,6391,6405,6410,6416,6422,99,121,59,1,1071,99,121,59,1,1031,99,121,59,1,1070,99,117,116,101,5,221,1,59,6389,1,221,4,2,105,121,6397,6402,114,99,59,1,374,59,1,1067,114,59,3,55349,56604,112,102,59,3,55349,56656,99,114,59,3,55349,56500,109,108,59,1,376,4,8,72,97,99,100,101,102,111,115,6445,6450,6457,6472,6477,6501,6505,6510,99,121,59,1,1046,99,117,116,101,59,1,377,4,2,97,121,6463,6469,114,111,110,59,1,381,59,1,1047,111,116,59,1,379,4,2,114,116,6483,6497,111,87,105,100,116,104,83,112,97,99,101,59,1,8203,97,59,1,918,114,59,1,8488,112,102,59,1,8484,99,114,59,3,55349,56501,4,16,97,98,99,101,102,103,108,109,110,111,112,114,115,116,117,119,6550,6561,6568,6612,6622,6634,6645,6672,6699,6854,6870,6923,6933,6963,6974,6983,99,117,116,101,5,225,1,59,6559,1,225,114,101,118,101,59,1,259,4,6,59,69,100,105,117,121,6582,6584,6588,6591,6600,6609,1,8766,59,3,8766,819,59,1,8767,114,99,5,226,1,59,6598,1,226,116,101,5,180,1,59,6607,1,180,59,1,1072,108,105,103,5,230,1,59,6620,1,230,4,2,59,114,6628,6630,1,8289,59,3,55349,56606,114,97,118,101,5,224,1,59,6643,1,224,4,2,101,112,6651,6667,4,2,102,112,6657,6663,115,121,109,59,1,8501,104,59,1,8501,104,97,59,1,945,4,2,97,112,6678,6692,4,2,99,108,6684,6688,114,59,1,257,103,59,1,10815,5,38,1,59,6697,1,38,4,2,100,103,6705,6737,4,5,59,97,100,115,118,6717,6719,6724,6727,6734,1,8743,110,100,59,1,10837,59,1,10844,108,111,112,101,59,1,10840,59,1,10842,4,7,59,101,108,109,114,115,122,6753,6755,6758,6762,6814,6835,6848,1,8736,59,1,10660,101,59,1,8736,115,100,4,2,59,97,6770,6772,1,8737,4,8,97,98,99,100,101,102,103,104,6790,6793,6796,6799,6802,6805,6808,6811,59,1,10664,59,1,10665,59,1,10666,59,1,10667,59,1,10668,59,1,10669,59,1,10670,59,1,10671,116,4,2,59,118,6821,6823,1,8735,98,4,2,59,100,6830,6832,1,8894,59,1,10653,4,2,112,116,6841,6845,104,59,1,8738,59,1,197,97,114,114,59,1,9084,4,2,103,112,6860,6865,111,110,59,1,261,102,59,3,55349,56658,4,7,59,69,97,101,105,111,112,6886,6888,6891,6897,6900,6904,6908,1,8776,59,1,10864,99,105,114,59,1,10863,59,1,8778,100,59,1,8779,115,59,1,39,114,111,120,4,2,59,101,6917,6919,1,8776,113,59,1,8778,105,110,103,5,229,1,59,6931,1,229,4,3,99,116,121,6941,6946,6949,114,59,3,55349,56502,59,1,42,109,112,4,2,59,101,6957,6959,1,8776,113,59,1,8781,105,108,100,101,5,227,1,59,6972,1,227,109,108,5,228,1,59,6981,1,228,4,2,99,105,6989,6997,111,110,105,110,116,59,1,8755,110,116,59,1,10769,4,16,78,97,98,99,100,101,102,105,107,108,110,111,112,114,115,117,7036,7041,7119,7135,7149,7155,7219,7224,7347,7354,7463,7489,7786,7793,7814,7866,111,116,59,1,10989,4,2,99,114,7047,7094,107,4,4,99,101,112,115,7058,7064,7073,7080,111,110,103,59,1,8780,112,115,105,108,111,110,59,1,1014,114,105,109,101,59,1,8245,105,109,4,2,59,101,7088,7090,1,8765,113,59,1,8909,4,2,118,119,7100,7105,101,101,59,1,8893,101,100,4,2,59,103,7113,7115,1,8965,101,59,1,8965,114,107,4,2,59,116,7127,7129,1,9141,98,114,107,59,1,9142,4,2,111,121,7141,7146,110,103,59,1,8780,59,1,1073,113,117,111,59,1,8222,4,5,99,109,112,114,116,7167,7181,7188,7193,7199,97,117,115,4,2,59,101,7176,7178,1,8757,59,1,8757,112,116,121,118,59,1,10672,115,105,59,1,1014,110,111,117,59,1,8492,4,3,97,104,119,7207,7210,7213,59,1,946,59,1,8502,101,101,110,59,1,8812,114,59,3,55349,56607,103,4,7,99,111,115,116,117,118,119,7241,7262,7288,7305,7328,7335,7340,4,3,97,105,117,7249,7253,7258,112,59,1,8898,114,99,59,1,9711,112,59,1,8899,4,3,100,112,116,7270,7275,7281,111,116,59,1,10752,108,117,115,59,1,10753,105,109,101,115,59,1,10754,4,2,113,116,7294,7300,99,117,112,59,1,10758,97,114,59,1,9733,114,105,97,110,103,108,101,4,2,100,117,7318,7324,111,119,110,59,1,9661,112,59,1,9651,112,108,117,115,59,1,10756,101,101,59,1,8897,101,100,103,101,59,1,8896,97,114,111,119,59,1,10509,4,3,97,107,111,7362,7436,7458,4,2,99,110,7368,7432,107,4,3,108,115,116,7377,7386,7394,111,122,101,110,103,101,59,1,10731,113,117,97,114,101,59,1,9642,114,105,97,110,103,108,101,4,4,59,100,108,114,7411,7413,7419,7425,1,9652,111,119,110,59,1,9662,101,102,116,59,1,9666,105,103,104,116,59,1,9656,107,59,1,9251,4,2,49,51,7442,7454,4,2,50,52,7448,7451,59,1,9618,59,1,9617,52,59,1,9619,99,107,59,1,9608,4,2,101,111,7469,7485,4,2,59,113,7475,7478,3,61,8421,117,105,118,59,3,8801,8421,116,59,1,8976,4,4,112,116,119,120,7499,7504,7517,7523,102,59,3,55349,56659,4,2,59,116,7510,7512,1,8869,111,109,59,1,8869,116,105,101,59,1,8904,4,12,68,72,85,86,98,100,104,109,112,116,117,118,7549,7571,7597,7619,7655,7660,7682,7708,7715,7721,7728,7750,4,4,76,82,108,114,7559,7562,7565,7568,59,1,9559,59,1,9556,59,1,9558,59,1,9555,4,5,59,68,85,100,117,7583,7585,7588,7591,7594,1,9552,59,1,9574,59,1,9577,59,1,9572,59,1,9575,4,4,76,82,108,114,7607,7610,7613,7616,59,1,9565,59,1,9562,59,1,9564,59,1,9561,4,7,59,72,76,82,104,108,114,7635,7637,7640,7643,7646,7649,7652,1,9553,59,1,9580,59,1,9571,59,1,9568,59,1,9579,59,1,9570,59,1,9567,111,120,59,1,10697,4,4,76,82,108,114,7670,7673,7676,7679,59,1,9557,59,1,9554,59,1,9488,59,1,9484,4,5,59,68,85,100,117,7694,7696,7699,7702,7705,1,9472,59,1,9573,59,1,9576,59,1,9516,59,1,9524,105,110,117,115,59,1,8863,108,117,115,59,1,8862,105,109,101,115,59,1,8864,4,4,76,82,108,114,7738,7741,7744,7747,59,1,9563,59,1,9560,59,1,9496,59,1,9492,4,7,59,72,76,82,104,108,114,7766,7768,7771,7774,7777,7780,7783,1,9474,59,1,9578,59,1,9569,59,1,9566,59,1,9532,59,1,9508,59,1,9500,114,105,109,101,59,1,8245,4,2,101,118,7799,7804,118,101,59,1,728,98,97,114,5,166,1,59,7812,1,166,4,4,99,101,105,111,7824,7829,7834,7846,114,59,3,55349,56503,109,105,59,1,8271,109,4,2,59,101,7841,7843,1,8765,59,1,8909,108,4,3,59,98,104,7855,7857,7860,1,92,59,1,10693,115,117,98,59,1,10184,4,2,108,109,7872,7885,108,4,2,59,101,7879,7881,1,8226,116,59,1,8226,112,4,3,59,69,101,7894,7896,7899,1,8782,59,1,10926,4,2,59,113,7905,7907,1,8783,59,1,8783,4,15,97,99,100,101,102,104,105,108,111,114,115,116,117,119,121,7942,8021,8075,8080,8121,8126,8157,8279,8295,8430,8446,8485,8491,8707,8726,4,3,99,112,114,7950,7956,8007,117,116,101,59,1,263,4,6,59,97,98,99,100,115,7970,7972,7977,7984,7998,8003,1,8745,110,100,59,1,10820,114,99,117,112,59,1,10825,4,2,97,117,7990,7994,112,59,1,10827,112,59,1,10823,111,116,59,1,10816,59,3,8745,65024,4,2,101,111,8013,8017,116,59,1,8257,110,59,1,711,4,4,97,101,105,117,8031,8046,8056,8061,4,2,112,114,8037,8041,115,59,1,10829,111,110,59,1,269,100,105,108,5,231,1,59,8054,1,231,114,99,59,1,265,112,115,4,2,59,115,8069,8071,1,10828,109,59,1,10832,111,116,59,1,267,4,3,100,109,110,8088,8097,8104,105,108,5,184,1,59,8095,1,184,112,116,121,118,59,1,10674,116,5,162,2,59,101,8112,8114,1,162,114,100,111,116,59,1,183,114,59,3,55349,56608,4,3,99,101,105,8134,8138,8154,121,59,1,1095,99,107,4,2,59,109,8146,8148,1,10003,97,114,107,59,1,10003,59,1,967,114,4,7,59,69,99,101,102,109,115,8174,8176,8179,8258,8261,8268,8273,1,9675,59,1,10691,4,3,59,101,108,8187,8189,8193,1,710,113,59,1,8791,101,4,2,97,100,8200,8223,114,114,111,119,4,2,108,114,8210,8216,101,102,116,59,1,8634,105,103,104,116,59,1,8635,4,5,82,83,97,99,100,8235,8238,8241,8246,8252,59,1,174,59,1,9416,115,116,59,1,8859,105,114,99,59,1,8858,97,115,104,59,1,8861,59,1,8791,110,105,110,116,59,1,10768,105,100,59,1,10991,99,105,114,59,1,10690,117,98,115,4,2,59,117,8288,8290,1,9827,105,116,59,1,9827,4,4,108,109,110,112,8305,8326,8376,8400,111,110,4,2,59,101,8313,8315,1,58,4,2,59,113,8321,8323,1,8788,59,1,8788,4,2,109,112,8332,8344,97,4,2,59,116,8339,8341,1,44,59,1,64,4,3,59,102,108,8352,8354,8358,1,8705,110,59,1,8728,101,4,2,109,120,8365,8371,101,110,116,59,1,8705,101,115,59,1,8450,4,2,103,105,8382,8395,4,2,59,100,8388,8390,1,8773,111,116,59,1,10861,110,116,59,1,8750,4,3,102,114,121,8408,8412,8417,59,3,55349,56660,111,100,59,1,8720,5,169,2,59,115,8424,8426,1,169,114,59,1,8471,4,2,97,111,8436,8441,114,114,59,1,8629,115,115,59,1,10007,4,2,99,117,8452,8457,114,59,3,55349,56504,4,2,98,112,8463,8474,4,2,59,101,8469,8471,1,10959,59,1,10961,4,2,59,101,8480,8482,1,10960,59,1,10962,100,111,116,59,1,8943,4,7,100,101,108,112,114,118,119,8507,8522,8536,8550,8600,8697,8702,97,114,114,4,2,108,114,8516,8519,59,1,10552,59,1,10549,4,2,112,115,8528,8532,114,59,1,8926,99,59,1,8927,97,114,114,4,2,59,112,8545,8547,1,8630,59,1,10557,4,6,59,98,99,100,111,115,8564,8566,8573,8587,8592,8596,1,8746,114,99,97,112,59,1,10824,4,2,97,117,8579,8583,112,59,1,10822,112,59,1,10826,111,116,59,1,8845,114,59,1,10821,59,3,8746,65024,4,4,97,108,114,118,8610,8623,8663,8672,114,114,4,2,59,109,8618,8620,1,8631,59,1,10556,121,4,3,101,118,119,8632,8651,8656,113,4,2,112,115,8639,8645,114,101,99,59,1,8926,117,99,99,59,1,8927,101,101,59,1,8910,101,100,103,101,59,1,8911,101,110,5,164,1,59,8670,1,164,101,97,114,114,111,119,4,2,108,114,8684,8690,101,102,116,59,1,8630,105,103,104,116,59,1,8631,101,101,59,1,8910,101,100,59,1,8911,4,2,99,105,8713,8721,111,110,105,110,116,59,1,8754,110,116,59,1,8753,108,99,116,121,59,1,9005,4,19,65,72,97,98,99,100,101,102,104,105,106,108,111,114,115,116,117,119,122,8773,8778,8783,8821,8839,8854,8887,8914,8930,8944,9036,9041,9058,9197,9227,9258,9281,9297,9305,114,114,59,1,8659,97,114,59,1,10597,4,4,103,108,114,115,8793,8799,8805,8809,103,101,114,59,1,8224,101,116,104,59,1,8504,114,59,1,8595,104,4,2,59,118,8816,8818,1,8208,59,1,8867,4,2,107,108,8827,8834,97,114,111,119,59,1,10511,97,99,59,1,733,4,2,97,121,8845,8851,114,111,110,59,1,271,59,1,1076,4,3,59,97,111,8862,8864,8880,1,8518,4,2,103,114,8870,8876,103,101,114,59,1,8225,114,59,1,8650,116,115,101,113,59,1,10871,4,3,103,108,109,8895,8902,8907,5,176,1,59,8900,1,176,116,97,59,1,948,112,116,121,118,59,1,10673,4,2,105,114,8920,8926,115,104,116,59,1,10623,59,3,55349,56609,97,114,4,2,108,114,8938,8941,59,1,8643,59,1,8642,4,5,97,101,103,115,118,8956,8986,8989,8996,9001,109,4,3,59,111,115,8965,8967,8983,1,8900,110,100,4,2,59,115,8975,8977,1,8900,117,105,116,59,1,9830,59,1,9830,59,1,168,97,109,109,97,59,1,989,105,110,59,1,8946,4,3,59,105,111,9009,9011,9031,1,247,100,101,5,247,2,59,111,9020,9022,1,247,110,116,105,109,101,115,59,1,8903,110,120,59,1,8903,99,121,59,1,1106,99,4,2,111,114,9048,9053,114,110,59,1,8990,111,112,59,1,8973,4,5,108,112,116,117,119,9070,9076,9081,9130,9144,108,97,114,59,1,36,102,59,3,55349,56661,4,5,59,101,109,112,115,9093,9095,9109,9116,9122,1,729,113,4,2,59,100,9102,9104,1,8784,111,116,59,1,8785,105,110,117,115,59,1,8760,108,117,115,59,1,8724,113,117,97,114,101,59,1,8865,98,108,101,98,97,114,119,101,100,103,101,59,1,8966,110,4,3,97,100,104,9153,9160,9172,114,114,111,119,59,1,8595,111,119,110,97,114,114,111,119,115,59,1,8650,97,114,112,111,111,110,4,2,108,114,9184,9190,101,102,116,59,1,8643,105,103,104,116,59,1,8642,4,2,98,99,9203,9211,107,97,114,111,119,59,1,10512,4,2,111,114,9217,9222,114,110,59,1,8991,111,112,59,1,8972,4,3,99,111,116,9235,9248,9252,4,2,114,121,9241,9245,59,3,55349,56505,59,1,1109,108,59,1,10742,114,111,107,59,1,273,4,2,100,114,9264,9269,111,116,59,1,8945,105,4,2,59,102,9276,9278,1,9663,59,1,9662,4,2,97,104,9287,9292,114,114,59,1,8693,97,114,59,1,10607,97,110,103,108,101,59,1,10662,4,2,99,105,9311,9315,121,59,1,1119,103,114,97,114,114,59,1,10239,4,18,68,97,99,100,101,102,103,108,109,110,111,112,113,114,115,116,117,120,9361,9376,9398,9439,9444,9447,9462,9495,9531,9585,9598,9614,9659,9755,9771,9792,9808,9826,4,2,68,111,9367,9372,111,116,59,1,10871,116,59,1,8785,4,2,99,115,9382,9392,117,116,101,5,233,1,59,9390,1,233,116,101,114,59,1,10862,4,4,97,105,111,121,9408,9414,9430,9436,114,111,110,59,1,283,114,4,2,59,99,9421,9423,1,8790,5,234,1,59,9428,1,234,108,111,110,59,1,8789,59,1,1101,111,116,59,1,279,59,1,8519,4,2,68,114,9453,9458,111,116,59,1,8786,59,3,55349,56610,4,3,59,114,115,9470,9472,9482,1,10906,97,118,101,5,232,1,59,9480,1,232,4,2,59,100,9488,9490,1,10902,111,116,59,1,10904,4,4,59,105,108,115,9505,9507,9515,9518,1,10905,110,116,101,114,115,59,1,9191,59,1,8467,4,2,59,100,9524,9526,1,10901,111,116,59,1,10903,4,3,97,112,115,9539,9544,9564,99,114,59,1,275,116,121,4,3,59,115,118,9554,9556,9561,1,8709,101,116,59,1,8709,59,1,8709,112,4,2,49,59,9571,9583,4,2,51,52,9577,9580,59,1,8196,59,1,8197,1,8195,4,2,103,115,9591,9594,59,1,331,112,59,1,8194,4,2,103,112,9604,9609,111,110,59,1,281,102,59,3,55349,56662,4,3,97,108,115,9622,9635,9640,114,4,2,59,115,9629,9631,1,8917,108,59,1,10723,117,115,59,1,10865,105,4,3,59,108,118,9649,9651,9656,1,949,111,110,59,1,949,59,1,1013,4,4,99,115,117,118,9669,9686,9716,9747,4,2,105,111,9675,9680,114,99,59,1,8790,108,111,110,59,1,8789,4,2,105,108,9692,9696,109,59,1,8770,97,110,116,4,2,103,108,9705,9710,116,114,59,1,10902,101,115,115,59,1,10901,4,3,97,101,105,9724,9729,9734,108,115,59,1,61,115,116,59,1,8799,118,4,2,59,68,9741,9743,1,8801,68,59,1,10872,112,97,114,115,108,59,1,10725,4,2,68,97,9761,9766,111,116,59,1,8787,114,114,59,1,10609,4,3,99,100,105,9779,9783,9788,114,59,1,8495,111,116,59,1,8784,109,59,1,8770,4,2,97,104,9798,9801,59,1,951,5,240,1,59,9806,1,240,4,2,109,114,9814,9822,108,5,235,1,59,9820,1,235,111,59,1,8364,4,3,99,105,112,9834,9838,9843,108,59,1,33,115,116,59,1,8707,4,2,101,111,9849,9859,99,116,97,116,105,111,110,59,1,8496,110,101,110,116,105,97,108,101,59,1,8519,4,12,97,99,101,102,105,106,108,110,111,112,114,115,9896,9910,9914,9921,9954,9960,9967,9989,9994,10027,10036,10164,108,108,105,110,103,100,111,116,115,101,113,59,1,8786,121,59,1,1092,109,97,108,101,59,1,9792,4,3,105,108,114,9929,9935,9950,108,105,103,59,1,64259,4,2,105,108,9941,9945,103,59,1,64256,105,103,59,1,64260,59,3,55349,56611,108,105,103,59,1,64257,108,105,103,59,3,102,106,4,3,97,108,116,9975,9979,9984,116,59,1,9837,105,103,59,1,64258,110,115,59,1,9649,111,102,59,1,402,4,2,112,114,10000,10005,102,59,3,55349,56663,4,2,97,107,10011,10016,108,108,59,1,8704,4,2,59,118,10022,10024,1,8916,59,1,10969,97,114,116,105,110,116,59,1,10765,4,2,97,111,10042,10159,4,2,99,115,10048,10155,4,6,49,50,51,52,53,55,10062,10102,10114,10135,10139,10151,4,6,50,51,52,53,54,56,10076,10083,10086,10093,10096,10099,5,189,1,59,10081,1,189,59,1,8531,5,188,1,59,10091,1,188,59,1,8533,59,1,8537,59,1,8539,4,2,51,53,10108,10111,59,1,8532,59,1,8534,4,3,52,53,56,10122,10129,10132,5,190,1,59,10127,1,190,59,1,8535,59,1,8540,53,59,1,8536,4,2,54,56,10145,10148,59,1,8538,59,1,8541,56,59,1,8542,108,59,1,8260,119,110,59,1,8994,99,114,59,3,55349,56507,4,17,69,97,98,99,100,101,102,103,105,106,108,110,111,114,115,116,118,10206,10217,10247,10254,10268,10273,10358,10363,10374,10380,10385,10406,10458,10464,10470,10497,10610,4,2,59,108,10212,10214,1,8807,59,1,10892,4,3,99,109,112,10225,10231,10244,117,116,101,59,1,501,109,97,4,2,59,100,10239,10241,1,947,59,1,989,59,1,10886,114,101,118,101,59,1,287,4,2,105,121,10260,10265,114,99,59,1,285,59,1,1075,111,116,59,1,289,4,4,59,108,113,115,10283,10285,10288,10308,1,8805,59,1,8923,4,3,59,113,115,10296,10298,10301,1,8805,59,1,8807,108,97,110,116,59,1,10878,4,4,59,99,100,108,10318,10320,10324,10345,1,10878,99,59,1,10921,111,116,4,2,59,111,10332,10334,1,10880,4,2,59,108,10340,10342,1,10882,59,1,10884,4,2,59,101,10351,10354,3,8923,65024,115,59,1,10900,114,59,3,55349,56612,4,2,59,103,10369,10371,1,8811,59,1,8921,109,101,108,59,1,8503,99,121,59,1,1107,4,4,59,69,97,106,10395,10397,10400,10403,1,8823,59,1,10898,59,1,10917,59,1,10916,4,4,69,97,101,115,10416,10419,10434,10453,59,1,8809,112,4,2,59,112,10426,10428,1,10890,114,111,120,59,1,10890,4,2,59,113,10440,10442,1,10888,4,2,59,113,10448,10450,1,10888,59,1,8809,105,109,59,1,8935,112,102,59,3,55349,56664,97,118,101,59,1,96,4,2,99,105,10476,10480,114,59,1,8458,109,4,3,59,101,108,10489,10491,10494,1,8819,59,1,10894,59,1,10896,5,62,6,59,99,100,108,113,114,10512,10514,10527,10532,10538,10545,1,62,4,2,99,105,10520,10523,59,1,10919,114,59,1,10874,111,116,59,1,8919,80,97,114,59,1,10645,117,101,115,116,59,1,10876,4,5,97,100,101,108,115,10557,10574,10579,10599,10605,4,2,112,114,10563,10570,112,114,111,120,59,1,10886,114,59,1,10616,111,116,59,1,8919,113,4,2,108,113,10586,10592,101,115,115,59,1,8923,108,101,115,115,59,1,10892,101,115,115,59,1,8823,105,109,59,1,8819,4,2,101,110,10616,10626,114,116,110,101,113,113,59,3,8809,65024,69,59,3,8809,65024,4,10,65,97,98,99,101,102,107,111,115,121,10653,10658,10713,10718,10724,10760,10765,10786,10850,10875,114,114,59,1,8660,4,4,105,108,109,114,10668,10674,10678,10684,114,115,112,59,1,8202,102,59,1,189,105,108,116,59,1,8459,4,2,100,114,10690,10695,99,121,59,1,1098,4,3,59,99,119,10703,10705,10710,1,8596,105,114,59,1,10568,59,1,8621,97,114,59,1,8463,105,114,99,59,1,293,4,3,97,108,114,10732,10748,10754,114,116,115,4,2,59,117,10741,10743,1,9829,105,116,59,1,9829,108,105,112,59,1,8230,99,111,110,59,1,8889,114,59,3,55349,56613,115,4,2,101,119,10772,10779,97,114,111,119,59,1,10533,97,114,111,119,59,1,10534,4,5,97,109,111,112,114,10798,10803,10809,10839,10844,114,114,59,1,8703,116,104,116,59,1,8763,107,4,2,108,114,10816,10827,101,102,116,97,114,114,111,119,59,1,8617,105,103,104,116,97,114,114,111,119,59,1,8618,102,59,3,55349,56665,98,97,114,59,1,8213,4,3,99,108,116,10858,10863,10869,114,59,3,55349,56509,97,115,104,59,1,8463,114,111,107,59,1,295,4,2,98,112,10881,10887,117,108,108,59,1,8259,104,101,110,59,1,8208,4,15,97,99,101,102,103,105,106,109,110,111,112,113,115,116,117,10925,10936,10958,10977,10990,11001,11039,11045,11101,11192,11220,11226,11237,11285,11299,99,117,116,101,5,237,1,59,10934,1,237,4,3,59,105,121,10944,10946,10955,1,8291,114,99,5,238,1,59,10953,1,238,59,1,1080,4,2,99,120,10964,10968,121,59,1,1077,99,108,5,161,1,59,10975,1,161,4,2,102,114,10983,10986,59,1,8660,59,3,55349,56614,114,97,118,101,5,236,1,59,10999,1,236,4,4,59,105,110,111,11011,11013,11028,11034,1,8520,4,2,105,110,11019,11024,110,116,59,1,10764,116,59,1,8749,102,105,110,59,1,10716,116,97,59,1,8489,108,105,103,59,1,307,4,3,97,111,112,11053,11092,11096,4,3,99,103,116,11061,11065,11088,114,59,1,299,4,3,101,108,112,11073,11076,11082,59,1,8465,105,110,101,59,1,8464,97,114,116,59,1,8465,104,59,1,305,102,59,1,8887,101,100,59,1,437,4,5,59,99,102,111,116,11113,11115,11121,11136,11142,1,8712,97,114,101,59,1,8453,105,110,4,2,59,116,11129,11131,1,8734,105,101,59,1,10717,100,111,116,59,1,305,4,5,59,99,101,108,112,11154,11156,11161,11179,11186,1,8747,97,108,59,1,8890,4,2,103,114,11167,11173,101,114,115,59,1,8484,99,97,108,59,1,8890,97,114,104,107,59,1,10775,114,111,100,59,1,10812,4,4,99,103,112,116,11202,11206,11211,11216,121,59,1,1105,111,110,59,1,303,102,59,3,55349,56666,97,59,1,953,114,111,100,59,1,10812,117,101,115,116,5,191,1,59,11235,1,191,4,2,99,105,11243,11248,114,59,3,55349,56510,110,4,5,59,69,100,115,118,11261,11263,11266,11271,11282,1,8712,59,1,8953,111,116,59,1,8949,4,2,59,118,11277,11279,1,8948,59,1,8947,59,1,8712,4,2,59,105,11291,11293,1,8290,108,100,101,59,1,297,4,2,107,109,11305,11310,99,121,59,1,1110,108,5,239,1,59,11316,1,239,4,6,99,102,109,111,115,117,11332,11346,11351,11357,11363,11380,4,2,105,121,11338,11343,114,99,59,1,309,59,1,1081,114,59,3,55349,56615,97,116,104,59,1,567,112,102,59,3,55349,56667,4,2,99,101,11369,11374,114,59,3,55349,56511,114,99,121,59,1,1112,107,99,121,59,1,1108,4,8,97,99,102,103,104,106,111,115,11404,11418,11433,11438,11445,11450,11455,11461,112,112,97,4,2,59,118,11413,11415,1,954,59,1,1008,4,2,101,121,11424,11430,100,105,108,59,1,311,59,1,1082,114,59,3,55349,56616,114,101,101,110,59,1,312,99,121,59,1,1093,99,121,59,1,1116,112,102,59,3,55349,56668,99,114,59,3,55349,56512,4,23,65,66,69,72,97,98,99,100,101,102,103,104,106,108,109,110,111,112,114,115,116,117,118,11515,11538,11544,11555,11560,11721,11780,11818,11868,12136,12160,12171,12203,12208,12246,12275,12327,12509,12523,12569,12641,12732,12752,4,3,97,114,116,11523,11528,11532,114,114,59,1,8666,114,59,1,8656,97,105,108,59,1,10523,97,114,114,59,1,10510,4,2,59,103,11550,11552,1,8806,59,1,10891,97,114,59,1,10594,4,9,99,101,103,109,110,112,113,114,116,11580,11586,11594,11600,11606,11624,11627,11636,11694,117,116,101,59,1,314,109,112,116,121,118,59,1,10676,114,97,110,59,1,8466,98,100,97,59,1,955,103,4,3,59,100,108,11615,11617,11620,1,10216,59,1,10641,101,59,1,10216,59,1,10885,117,111,5,171,1,59,11634,1,171,114,4,8,59,98,102,104,108,112,115,116,11655,11657,11669,11673,11677,11681,11685,11690,1,8592,4,2,59,102,11663,11665,1,8676,115,59,1,10527,115,59,1,10525,107,59,1,8617,112,59,1,8619,108,59,1,10553,105,109,59,1,10611,108,59,1,8610,4,3,59,97,101,11702,11704,11709,1,10923,105,108,59,1,10521,4,2,59,115,11715,11717,1,10925,59,3,10925,65024,4,3,97,98,114,11729,11734,11739,114,114,59,1,10508,114,107,59,1,10098,4,2,97,107,11745,11758,99,4,2,101,107,11752,11755,59,1,123,59,1,91,4,2,101,115,11764,11767,59,1,10635,108,4,2,100,117,11774,11777,59,1,10639,59,1,10637,4,4,97,101,117,121,11790,11796,11811,11815,114,111,110,59,1,318,4,2,100,105,11802,11807,105,108,59,1,316,108,59,1,8968,98,59,1,123,59,1,1083,4,4,99,113,114,115,11828,11832,11845,11864,97,59,1,10550,117,111,4,2,59,114,11840,11842,1,8220,59,1,8222,4,2,100,117,11851,11857,104,97,114,59,1,10599,115,104,97,114,59,1,10571,104,59,1,8626,4,5,59,102,103,113,115,11880,11882,12008,12011,12031,1,8804,116,4,5,97,104,108,114,116,11895,11913,11935,11947,11996,114,114,111,119,4,2,59,116,11905,11907,1,8592,97,105,108,59,1,8610,97,114,112,111,111,110,4,2,100,117,11925,11931,111,119,110,59,1,8637,112,59,1,8636,101,102,116,97,114,114,111,119,115,59,1,8647,105,103,104,116,4,3,97,104,115,11959,11974,11984,114,114,111,119,4,2,59,115,11969,11971,1,8596,59,1,8646,97,114,112,111,111,110,115,59,1,8651,113,117,105,103,97,114,114,111,119,59,1,8621,104,114,101,101,116,105,109,101,115,59,1,8907,59,1,8922,4,3,59,113,115,12019,12021,12024,1,8804,59,1,8806,108,97,110,116,59,1,10877,4,5,59,99,100,103,115,12043,12045,12049,12070,12083,1,10877,99,59,1,10920,111,116,4,2,59,111,12057,12059,1,10879,4,2,59,114,12065,12067,1,10881,59,1,10883,4,2,59,101,12076,12079,3,8922,65024,115,59,1,10899,4,5,97,100,101,103,115,12095,12103,12108,12126,12131,112,112,114,111,120,59,1,10885,111,116,59,1,8918,113,4,2,103,113,12115,12120,116,114,59,1,8922,103,116,114,59,1,10891,116,114,59,1,8822,105,109,59,1,8818,4,3,105,108,114,12144,12150,12156,115,104,116,59,1,10620,111,111,114,59,1,8970,59,3,55349,56617,4,2,59,69,12166,12168,1,8822,59,1,10897,4,2,97,98,12177,12198,114,4,2,100,117,12184,12187,59,1,8637,4,2,59,108,12193,12195,1,8636,59,1,10602,108,107,59,1,9604,99,121,59,1,1113,4,5,59,97,99,104,116,12220,12222,12227,12235,12241,1,8810,114,114,59,1,8647,111,114,110,101,114,59,1,8990,97,114,100,59,1,10603,114,105,59,1,9722,4,2,105,111,12252,12258,100,111,116,59,1,320,117,115,116,4,2,59,97,12267,12269,1,9136,99,104,101,59,1,9136,4,4,69,97,101,115,12285,12288,12303,12322,59,1,8808,112,4,2,59,112,12295,12297,1,10889,114,111,120,59,1,10889,4,2,59,113,12309,12311,1,10887,4,2,59,113,12317,12319,1,10887,59,1,8808,105,109,59,1,8934,4,8,97,98,110,111,112,116,119,122,12345,12359,12364,12421,12446,12467,12474,12490,4,2,110,114,12351,12355,103,59,1,10220,114,59,1,8701,114,107,59,1,10214,103,4,3,108,109,114,12373,12401,12409,101,102,116,4,2,97,114,12382,12389,114,114,111,119,59,1,10229,105,103,104,116,97,114,114,111,119,59,1,10231,97,112,115,116,111,59,1,10236,105,103,104,116,97,114,114,111,119,59,1,10230,112,97,114,114,111,119,4,2,108,114,12433,12439,101,102,116,59,1,8619,105,103,104,116,59,1,8620,4,3,97,102,108,12454,12458,12462,114,59,1,10629,59,3,55349,56669,117,115,59,1,10797,105,109,101,115,59,1,10804,4,2,97,98,12480,12485,115,116,59,1,8727,97,114,59,1,95,4,3,59,101,102,12498,12500,12506,1,9674,110,103,101,59,1,9674,59,1,10731,97,114,4,2,59,108,12517,12519,1,40,116,59,1,10643,4,5,97,99,104,109,116,12535,12540,12548,12561,12564,114,114,59,1,8646,111,114,110,101,114,59,1,8991,97,114,4,2,59,100,12556,12558,1,8651,59,1,10605,59,1,8206,114,105,59,1,8895,4,6,97,99,104,105,113,116,12583,12589,12594,12597,12614,12635,113,117,111,59,1,8249,114,59,3,55349,56513,59,1,8624,109,4,3,59,101,103,12606,12608,12611,1,8818,59,1,10893,59,1,10895,4,2,98,117,12620,12623,59,1,91,111,4,2,59,114,12630,12632,1,8216,59,1,8218,114,111,107,59,1,322,5,60,8,59,99,100,104,105,108,113,114,12660,12662,12675,12680,12686,12692,12698,12705,1,60,4,2,99,105,12668,12671,59,1,10918,114,59,1,10873,111,116,59,1,8918,114,101,101,59,1,8907,109,101,115,59,1,8905,97,114,114,59,1,10614,117,101,115,116,59,1,10875,4,2,80,105,12711,12716,97,114,59,1,10646,4,3,59,101,102,12724,12726,12729,1,9667,59,1,8884,59,1,9666,114,4,2,100,117,12739,12746,115,104,97,114,59,1,10570,104,97,114,59,1,10598,4,2,101,110,12758,12768,114,116,110,101,113,113,59,3,8808,65024,69,59,3,8808,65024,4,14,68,97,99,100,101,102,104,105,108,110,111,112,115,117,12803,12809,12893,12908,12914,12928,12933,12937,13011,13025,13032,13049,13052,13069,68,111,116,59,1,8762,4,4,99,108,112,114,12819,12827,12849,12887,114,5,175,1,59,12825,1,175,4,2,101,116,12833,12836,59,1,9794,4,2,59,101,12842,12844,1,10016,115,101,59,1,10016,4,2,59,115,12855,12857,1,8614,116,111,4,4,59,100,108,117,12869,12871,12877,12883,1,8614,111,119,110,59,1,8615,101,102,116,59,1,8612,112,59,1,8613,107,101,114,59,1,9646,4,2,111,121,12899,12905,109,109,97,59,1,10793,59,1,1084,97,115,104,59,1,8212,97,115,117,114,101,100,97,110,103,108,101,59,1,8737,114,59,3,55349,56618,111,59,1,8487,4,3,99,100,110,12945,12954,12985,114,111,5,181,1,59,12952,1,181,4,4,59,97,99,100,12964,12966,12971,12976,1,8739,115,116,59,1,42,105,114,59,1,10992,111,116,5,183,1,59,12983,1,183,117,115,4,3,59,98,100,12995,12997,13000,1,8722,59,1,8863,4,2,59,117,13006,13008,1,8760,59,1,10794,4,2,99,100,13017,13021,112,59,1,10971,114,59,1,8230,112,108,117,115,59,1,8723,4,2,100,112,13038,13044,101,108,115,59,1,8871,102,59,3,55349,56670,59,1,8723,4,2,99,116,13058,13063,114,59,3,55349,56514,112,111,115,59,1,8766,4,3,59,108,109,13077,13079,13087,1,956,116,105,109,97,112,59,1,8888,97,112,59,1,8888,4,24,71,76,82,86,97,98,99,100,101,102,103,104,105,106,108,109,111,112,114,115,116,117,118,119,13142,13165,13217,13229,13247,13330,13359,13414,13420,13508,13513,13579,13602,13626,13631,13762,13767,13855,13936,13995,14214,14285,14312,14432,4,2,103,116,13148,13152,59,3,8921,824,4,2,59,118,13158,13161,3,8811,8402,59,3,8811,824,4,3,101,108,116,13173,13200,13204,102,116,4,2,97,114,13181,13188,114,114,111,119,59,1,8653,105,103,104,116,97,114,114,111,119,59,1,8654,59,3,8920,824,4,2,59,118,13210,13213,3,8810,8402,59,3,8810,824,105,103,104,116,97,114,114,111,119,59,1,8655,4,2,68,100,13235,13241,97,115,104,59,1,8879,97,115,104,59,1,8878,4,5,98,99,110,112,116,13259,13264,13270,13275,13308,108,97,59,1,8711,117,116,101,59,1,324,103,59,3,8736,8402,4,5,59,69,105,111,112,13287,13289,13293,13298,13302,1,8777,59,3,10864,824,100,59,3,8779,824,115,59,1,329,114,111,120,59,1,8777,117,114,4,2,59,97,13316,13318,1,9838,108,4,2,59,115,13325,13327,1,9838,59,1,8469,4,2,115,117,13336,13344,112,5,160,1,59,13342,1,160,109,112,4,2,59,101,13352,13355,3,8782,824,59,3,8783,824,4,5,97,101,111,117,121,13371,13385,13391,13407,13411,4,2,112,114,13377,13380,59,1,10819,111,110,59,1,328,100,105,108,59,1,326,110,103,4,2,59,100,13399,13401,1,8775,111,116,59,3,10861,824,112,59,1,10818,59,1,1085,97,115,104,59,1,8211,4,7,59,65,97,100,113,115,120,13436,13438,13443,13466,13472,13478,13494,1,8800,114,114,59,1,8663,114,4,2,104,114,13450,13454,107,59,1,10532,4,2,59,111,13460,13462,1,8599,119,59,1,8599,111,116,59,3,8784,824,117,105,118,59,1,8802,4,2,101,105,13484,13489,97,114,59,1,10536,109,59,3,8770,824,105,115,116,4,2,59,115,13503,13505,1,8708,59,1,8708,114,59,3,55349,56619,4,4,69,101,115,116,13523,13527,13563,13568,59,3,8807,824,4,3,59,113,115,13535,13537,13559,1,8817,4,3,59,113,115,13545,13547,13551,1,8817,59,3,8807,824,108,97,110,116,59,3,10878,824,59,3,10878,824,105,109,59,1,8821,4,2,59,114,13574,13576,1,8815,59,1,8815,4,3,65,97,112,13587,13592,13597,114,114,59,1,8654,114,114,59,1,8622,97,114,59,1,10994,4,3,59,115,118,13610,13612,13623,1,8715,4,2,59,100,13618,13620,1,8956,59,1,8954,59,1,8715,99,121,59,1,1114,4,7,65,69,97,100,101,115,116,13647,13652,13656,13661,13665,13737,13742,114,114,59,1,8653,59,3,8806,824,114,114,59,1,8602,114,59,1,8229,4,4,59,102,113,115,13675,13677,13703,13725,1,8816,116,4,2,97,114,13684,13691,114,114,111,119,59,1,8602,105,103,104,116,97,114,114,111,119,59,1,8622,4,3,59,113,115,13711,13713,13717,1,8816,59,3,8806,824,108,97,110,116,59,3,10877,824,4,2,59,115,13731,13734,3,10877,824,59,1,8814,105,109,59,1,8820,4,2,59,114,13748,13750,1,8814,105,4,2,59,101,13757,13759,1,8938,59,1,8940,105,100,59,1,8740,4,2,112,116,13773,13778,102,59,3,55349,56671,5,172,3,59,105,110,13787,13789,13829,1,172,110,4,4,59,69,100,118,13800,13802,13806,13812,1,8713,59,3,8953,824,111,116,59,3,8949,824,4,3,97,98,99,13820,13823,13826,59,1,8713,59,1,8951,59,1,8950,105,4,2,59,118,13836,13838,1,8716,4,3,97,98,99,13846,13849,13852,59,1,8716,59,1,8958,59,1,8957,4,3,97,111,114,13863,13892,13899,114,4,4,59,97,115,116,13874,13876,13883,13888,1,8742,108,108,101,108,59,1,8742,108,59,3,11005,8421,59,3,8706,824,108,105,110,116,59,1,10772,4,3,59,99,101,13907,13909,13914,1,8832,117,101,59,1,8928,4,2,59,99,13920,13923,3,10927,824,4,2,59,101,13929,13931,1,8832,113,59,3,10927,824,4,4,65,97,105,116,13946,13951,13971,13982,114,114,59,1,8655,114,114,4,3,59,99,119,13961,13963,13967,1,8603,59,3,10547,824,59,3,8605,824,103,104,116,97,114,114,111,119,59,1,8603,114,105,4,2,59,101,13990,13992,1,8939,59,1,8941,4,7,99,104,105,109,112,113,117,14011,14036,14060,14080,14085,14090,14106,4,4,59,99,101,114,14021,14023,14028,14032,1,8833,117,101,59,1,8929,59,3,10928,824,59,3,55349,56515,111,114,116,4,2,109,112,14045,14050,105,100,59,1,8740,97,114,97,108,108,101,108,59,1,8742,109,4,2,59,101,14067,14069,1,8769,4,2,59,113,14075,14077,1,8772,59,1,8772,105,100,59,1,8740,97,114,59,1,8742,115,117,4,2,98,112,14098,14102,101,59,1,8930,101,59,1,8931,4,3,98,99,112,14114,14157,14171,4,4,59,69,101,115,14124,14126,14130,14133,1,8836,59,3,10949,824,59,1,8840,101,116,4,2,59,101,14141,14144,3,8834,8402,113,4,2,59,113,14151,14153,1,8840,59,3,10949,824,99,4,2,59,101,14164,14166,1,8833,113,59,3,10928,824,4,4,59,69,101,115,14181,14183,14187,14190,1,8837,59,3,10950,824,59,1,8841,101,116,4,2,59,101,14198,14201,3,8835,8402,113,4,2,59,113,14208,14210,1,8841,59,3,10950,824,4,4,103,105,108,114,14224,14228,14238,14242,108,59,1,8825,108,100,101,5,241,1,59,14236,1,241,103,59,1,8824,105,97,110,103,108,101,4,2,108,114,14254,14269,101,102,116,4,2,59,101,14263,14265,1,8938,113,59,1,8940,105,103,104,116,4,2,59,101,14279,14281,1,8939,113,59,1,8941,4,2,59,109,14291,14293,1,957,4,3,59,101,115,14301,14303,14308,1,35,114,111,59,1,8470,112,59,1,8199,4,9,68,72,97,100,103,105,108,114,115,14332,14338,14344,14349,14355,14369,14376,14408,14426,97,115,104,59,1,8877,97,114,114,59,1,10500,112,59,3,8781,8402,97,115,104,59,1,8876,4,2,101,116,14361,14365,59,3,8805,8402,59,3,62,8402,110,102,105,110,59,1,10718,4,3,65,101,116,14384,14389,14393,114,114,59,1,10498,59,3,8804,8402,4,2,59,114,14399,14402,3,60,8402,105,101,59,3,8884,8402,4,2,65,116,14414,14419,114,114,59,1,10499,114,105,101,59,3,8885,8402,105,109,59,3,8764,8402,4,3,65,97,110,14440,14445,14468,114,114,59,1,8662,114,4,2,104,114,14452,14456,107,59,1,10531,4,2,59,111,14462,14464,1,8598,119,59,1,8598,101,97,114,59,1,10535,4,18,83,97,99,100,101,102,103,104,105,108,109,111,112,114,115,116,117,118,14512,14515,14535,14560,14597,14603,14618,14643,14657,14662,14701,14741,14747,14769,14851,14877,14907,14916,59,1,9416,4,2,99,115,14521,14531,117,116,101,5,243,1,59,14529,1,243,116,59,1,8859,4,2,105,121,14541,14557,114,4,2,59,99,14548,14550,1,8858,5,244,1,59,14555,1,244,59,1,1086,4,5,97,98,105,111,115,14572,14577,14583,14587,14591,115,104,59,1,8861,108,97,99,59,1,337,118,59,1,10808,116,59,1,8857,111,108,100,59,1,10684,108,105,103,59,1,339,4,2,99,114,14609,14614,105,114,59,1,10687,59,3,55349,56620,4,3,111,114,116,14626,14630,14640,110,59,1,731,97,118,101,5,242,1,59,14638,1,242,59,1,10689,4,2,98,109,14649,14654,97,114,59,1,10677,59,1,937,110,116,59,1,8750,4,4,97,99,105,116,14672,14677,14693,14698,114,114,59,1,8634,4,2,105,114,14683,14687,114,59,1,10686,111,115,115,59,1,10683,110,101,59,1,8254,59,1,10688,4,3,97,101,105,14709,14714,14719,99,114,59,1,333,103,97,59,1,969,4,3,99,100,110,14727,14733,14736,114,111,110,59,1,959,59,1,10678,117,115,59,1,8854,112,102,59,3,55349,56672,4,3,97,101,108,14755,14759,14764,114,59,1,10679,114,112,59,1,10681,117,115,59,1,8853,4,7,59,97,100,105,111,115,118,14785,14787,14792,14831,14837,14841,14848,1,8744,114,114,59,1,8635,4,4,59,101,102,109,14802,14804,14817,14824,1,10845,114,4,2,59,111,14811,14813,1,8500,102,59,1,8500,5,170,1,59,14822,1,170,5,186,1,59,14829,1,186,103,111,102,59,1,8886,114,59,1,10838,108,111,112,101,59,1,10839,59,1,10843,4,3,99,108,111,14859,14863,14873,114,59,1,8500,97,115,104,5,248,1,59,14871,1,248,108,59,1,8856,105,4,2,108,109,14884,14893,100,101,5,245,1,59,14891,1,245,101,115,4,2,59,97,14901,14903,1,8855,115,59,1,10806,109,108,5,246,1,59,14914,1,246,98,97,114,59,1,9021,4,12,97,99,101,102,104,105,108,109,111,114,115,117,14948,14992,14996,15033,15038,15068,15090,15189,15192,15222,15427,15441,114,4,4,59,97,115,116,14959,14961,14976,14989,1,8741,5,182,2,59,108,14968,14970,1,182,108,101,108,59,1,8741,4,2,105,108,14982,14986,109,59,1,10995,59,1,11005,59,1,8706,121,59,1,1087,114,4,5,99,105,109,112,116,15009,15014,15019,15024,15027,110,116,59,1,37,111,100,59,1,46,105,108,59,1,8240,59,1,8869,101,110,107,59,1,8241,114,59,3,55349,56621,4,3,105,109,111,15046,15057,15063,4,2,59,118,15052,15054,1,966,59,1,981,109,97,116,59,1,8499,110,101,59,1,9742,4,3,59,116,118,15076,15078,15087,1,960,99,104,102,111,114,107,59,1,8916,59,1,982,4,2,97,117,15096,15119,110,4,2,99,107,15103,15115,107,4,2,59,104,15110,15112,1,8463,59,1,8462,118,59,1,8463,115,4,9,59,97,98,99,100,101,109,115,116,15140,15142,15148,15151,15156,15168,15171,15179,15184,1,43,99,105,114,59,1,10787,59,1,8862,105,114,59,1,10786,4,2,111,117,15162,15165,59,1,8724,59,1,10789,59,1,10866,110,5,177,1,59,15177,1,177,105,109,59,1,10790,119,111,59,1,10791,59,1,177,4,3,105,112,117,15200,15208,15213,110,116,105,110,116,59,1,10773,102,59,3,55349,56673,110,100,5,163,1,59,15220,1,163,4,10,59,69,97,99,101,105,110,111,115,117,15244,15246,15249,15253,15258,15334,15347,15367,15416,15421,1,8826,59,1,10931,112,59,1,10935,117,101,59,1,8828,4,2,59,99,15264,15266,1,10927,4,6,59,97,99,101,110,115,15280,15282,15290,15299,15303,15329,1,8826,112,112,114,111,120,59,1,10935,117,114,108,121,101,113,59,1,8828,113,59,1,10927,4,3,97,101,115,15311,15319,15324,112,112,114,111,120,59,1,10937,113,113,59,1,10933,105,109,59,1,8936,105,109,59,1,8830,109,101,4,2,59,115,15342,15344,1,8242,59,1,8473,4,3,69,97,115,15355,15358,15362,59,1,10933,112,59,1,10937,105,109,59,1,8936,4,3,100,102,112,15375,15378,15404,59,1,8719,4,3,97,108,115,15386,15392,15398,108,97,114,59,1,9006,105,110,101,59,1,8978,117,114,102,59,1,8979,4,2,59,116,15410,15412,1,8733,111,59,1,8733,105,109,59,1,8830,114,101,108,59,1,8880,4,2,99,105,15433,15438,114,59,3,55349,56517,59,1,968,110,99,115,112,59,1,8200,4,6,102,105,111,112,115,117,15462,15467,15472,15478,15485,15491,114,59,3,55349,56622,110,116,59,1,10764,112,102,59,3,55349,56674,114,105,109,101,59,1,8279,99,114,59,3,55349,56518,4,3,97,101,111,15499,15520,15534,116,4,2,101,105,15506,15515,114,110,105,111,110,115,59,1,8461,110,116,59,1,10774,115,116,4,2,59,101,15528,15530,1,63,113,59,1,8799,116,5,34,1,59,15540,1,34,4,21,65,66,72,97,98,99,100,101,102,104,105,108,109,110,111,112,114,115,116,117,120,15586,15609,15615,15620,15796,15855,15893,15931,15977,16001,16039,16183,16204,16222,16228,16285,16312,16318,16363,16408,16416,4,3,97,114,116,15594,15599,15603,114,114,59,1,8667,114,59,1,8658,97,105,108,59,1,10524,97,114,114,59,1,10511,97,114,59,1,10596,4,7,99,100,101,110,113,114,116,15636,15651,15656,15664,15687,15696,15770,4,2,101,117,15642,15646,59,3,8765,817,116,101,59,1,341,105,99,59,1,8730,109,112,116,121,118,59,1,10675,103,4,4,59,100,101,108,15675,15677,15680,15683,1,10217,59,1,10642,59,1,10661,101,59,1,10217,117,111,5,187,1,59,15694,1,187,114,4,11,59,97,98,99,102,104,108,112,115,116,119,15721,15723,15727,15739,15742,15746,15750,15754,15758,15763,15767,1,8594,112,59,1,10613,4,2,59,102,15733,15735,1,8677,115,59,1,10528,59,1,10547,115,59,1,10526,107,59,1,8618,112,59,1,8620,108,59,1,10565,105,109,59,1,10612,108,59,1,8611,59,1,8605,4,2,97,105,15776,15781,105,108,59,1,10522,111,4,2,59,110,15788,15790,1,8758,97,108,115,59,1,8474,4,3,97,98,114,15804,15809,15814,114,114,59,1,10509,114,107,59,1,10099,4,2,97,107,15820,15833,99,4,2,101,107,15827,15830,59,1,125,59,1,93,4,2,101,115,15839,15842,59,1,10636,108,4,2,100,117,15849,15852,59,1,10638,59,1,10640,4,4,97,101,117,121,15865,15871,15886,15890,114,111,110,59,1,345,4,2,100,105,15877,15882,105,108,59,1,343,108,59,1,8969,98,59,1,125,59,1,1088,4,4,99,108,113,115,15903,15907,15914,15927,97,59,1,10551,100,104,97,114,59,1,10601,117,111,4,2,59,114,15922,15924,1,8221,59,1,8221,104,59,1,8627,4,3,97,99,103,15939,15966,15970,108,4,4,59,105,112,115,15950,15952,15957,15963,1,8476,110,101,59,1,8475,97,114,116,59,1,8476,59,1,8477,116,59,1,9645,5,174,1,59,15975,1,174,4,3,105,108,114,15985,15991,15997,115,104,116,59,1,10621,111,111,114,59,1,8971,59,3,55349,56623,4,2,97,111,16007,16028,114,4,2,100,117,16014,16017,59,1,8641,4,2,59,108,16023,16025,1,8640,59,1,10604,4,2,59,118,16034,16036,1,961,59,1,1009,4,3,103,110,115,16047,16167,16171,104,116,4,6,97,104,108,114,115,116,16063,16081,16103,16130,16143,16155,114,114,111,119,4,2,59,116,16073,16075,1,8594,97,105,108,59,1,8611,97,114,112,111,111,110,4,2,100,117,16093,16099,111,119,110,59,1,8641,112,59,1,8640,101,102,116,4,2,97,104,16112,16120,114,114,111,119,115,59,1,8644,97,114,112,111,111,110,115,59,1,8652,105,103,104,116,97,114,114,111,119,115,59,1,8649,113,117,105,103,97,114,114,111,119,59,1,8605,104,114,101,101,116,105,109,101,115,59,1,8908,103,59,1,730,105,110,103,100,111,116,115,101,113,59,1,8787,4,3,97,104,109,16191,16196,16201,114,114,59,1,8644,97,114,59,1,8652,59,1,8207,111,117,115,116,4,2,59,97,16214,16216,1,9137,99,104,101,59,1,9137,109,105,100,59,1,10990,4,4,97,98,112,116,16238,16252,16257,16278,4,2,110,114,16244,16248,103,59,1,10221,114,59,1,8702,114,107,59,1,10215,4,3,97,102,108,16265,16269,16273,114,59,1,10630,59,3,55349,56675,117,115,59,1,10798,105,109,101,115,59,1,10805,4,2,97,112,16291,16304,114,4,2,59,103,16298,16300,1,41,116,59,1,10644,111,108,105,110,116,59,1,10770,97,114,114,59,1,8649,4,4,97,99,104,113,16328,16334,16339,16342,113,117,111,59,1,8250,114,59,3,55349,56519,59,1,8625,4,2,98,117,16348,16351,59,1,93,111,4,2,59,114,16358,16360,1,8217,59,1,8217,4,3,104,105,114,16371,16377,16383,114,101,101,59,1,8908,109,101,115,59,1,8906,105,4,4,59,101,102,108,16394,16396,16399,16402,1,9657,59,1,8885,59,1,9656,116,114,105,59,1,10702,108,117,104,97,114,59,1,10600,59,1,8478,4,19,97,98,99,100,101,102,104,105,108,109,111,112,113,114,115,116,117,119,122,16459,16466,16472,16572,16590,16672,16687,16746,16844,16850,16924,16963,16988,17115,17121,17154,17206,17614,17656,99,117,116,101,59,1,347,113,117,111,59,1,8218,4,10,59,69,97,99,101,105,110,112,115,121,16494,16496,16499,16513,16518,16531,16536,16556,16564,16569,1,8827,59,1,10932,4,2,112,114,16505,16508,59,1,10936,111,110,59,1,353,117,101,59,1,8829,4,2,59,100,16524,16526,1,10928,105,108,59,1,351,114,99,59,1,349,4,3,69,97,115,16544,16547,16551,59,1,10934,112,59,1,10938,105,109,59,1,8937,111,108,105,110,116,59,1,10771,105,109,59,1,8831,59,1,1089,111,116,4,3,59,98,101,16582,16584,16587,1,8901,59,1,8865,59,1,10854,4,7,65,97,99,109,115,116,120,16606,16611,16634,16642,16646,16652,16668,114,114,59,1,8664,114,4,2,104,114,16618,16622,107,59,1,10533,4,2,59,111,16628,16630,1,8600,119,59,1,8600,116,5,167,1,59,16640,1,167,105,59,1,59,119,97,114,59,1,10537,109,4,2,105,110,16659,16665,110,117,115,59,1,8726,59,1,8726,116,59,1,10038,114,4,2,59,111,16679,16682,3,55349,56624,119,110,59,1,8994,4,4,97,99,111,121,16697,16702,16716,16739,114,112,59,1,9839,4,2,104,121,16708,16713,99,121,59,1,1097,59,1,1096,114,116,4,2,109,112,16724,16729,105,100,59,1,8739,97,114,97,108,108,101,108,59,1,8741,5,173,1,59,16744,1,173,4,2,103,109,16752,16770,109,97,4,3,59,102,118,16762,16764,16767,1,963,59,1,962,59,1,962,4,8,59,100,101,103,108,110,112,114,16788,16790,16795,16806,16817,16828,16832,16838,1,8764,111,116,59,1,10858,4,2,59,113,16801,16803,1,8771,59,1,8771,4,2,59,69,16812,16814,1,10910,59,1,10912,4,2,59,69,16823,16825,1,10909,59,1,10911,101,59,1,8774,108,117,115,59,1,10788,97,114,114,59,1,10610,97,114,114,59,1,8592,4,4,97,101,105,116,16860,16883,16891,16904,4,2,108,115,16866,16878,108,115,101,116,109,105,110,117,115,59,1,8726,104,112,59,1,10803,112,97,114,115,108,59,1,10724,4,2,100,108,16897,16900,59,1,8739,101,59,1,8995,4,2,59,101,16910,16912,1,10922,4,2,59,115,16918,16920,1,10924,59,3,10924,65024,4,3,102,108,112,16932,16938,16958,116,99,121,59,1,1100,4,2,59,98,16944,16946,1,47,4,2,59,97,16952,16954,1,10692,114,59,1,9023,102,59,3,55349,56676,97,4,2,100,114,16970,16985,101,115,4,2,59,117,16978,16980,1,9824,105,116,59,1,9824,59,1,8741,4,3,99,115,117,16996,17028,17089,4,2,97,117,17002,17015,112,4,2,59,115,17009,17011,1,8851,59,3,8851,65024,112,4,2,59,115,17022,17024,1,8852,59,3,8852,65024,117,4,2,98,112,17035,17062,4,3,59,101,115,17043,17045,17048,1,8847,59,1,8849,101,116,4,2,59,101,17056,17058,1,8847,113,59,1,8849,4,3,59,101,115,17070,17072,17075,1,8848,59,1,8850,101,116,4,2,59,101,17083,17085,1,8848,113,59,1,8850,4,3,59,97,102,17097,17099,17112,1,9633,114,4,2,101,102,17106,17109,59,1,9633,59,1,9642,59,1,9642,97,114,114,59,1,8594,4,4,99,101,109,116,17131,17136,17142,17148,114,59,3,55349,56520,116,109,110,59,1,8726,105,108,101,59,1,8995,97,114,102,59,1,8902,4,2,97,114,17160,17172,114,4,2,59,102,17167,17169,1,9734,59,1,9733,4,2,97,110,17178,17202,105,103,104,116,4,2,101,112,17188,17197,112,115,105,108,111,110,59,1,1013,104,105,59,1,981,115,59,1,175,4,5,98,99,109,110,112,17218,17351,17420,17423,17427,4,9,59,69,100,101,109,110,112,114,115,17238,17240,17243,17248,17261,17267,17279,17285,17291,1,8834,59,1,10949,111,116,59,1,10941,4,2,59,100,17254,17256,1,8838,111,116,59,1,10947,117,108,116,59,1,10945,4,2,69,101,17273,17276,59,1,10955,59,1,8842,108,117,115,59,1,10943,97,114,114,59,1,10617,4,3,101,105,117,17299,17335,17339,116,4,3,59,101,110,17308,17310,17322,1,8834,113,4,2,59,113,17317,17319,1,8838,59,1,10949,101,113,4,2,59,113,17330,17332,1,8842,59,1,10955,109,59,1,10951,4,2,98,112,17345,17348,59,1,10965,59,1,10963,99,4,6,59,97,99,101,110,115,17366,17368,17376,17385,17389,17415,1,8827,112,112,114,111,120,59,1,10936,117,114,108,121,101,113,59,1,8829,113,59,1,10928,4,3,97,101,115,17397,17405,17410,112,112,114,111,120,59,1,10938,113,113,59,1,10934,105,109,59,1,8937,105,109,59,1,8831,59,1,8721,103,59,1,9834,4,13,49,50,51,59,69,100,101,104,108,109,110,112,115,17455,17462,17469,17476,17478,17481,17496,17509,17524,17530,17536,17548,17554,5,185,1,59,17460,1,185,5,178,1,59,17467,1,178,5,179,1,59,17474,1,179,1,8835,59,1,10950,4,2,111,115,17487,17491,116,59,1,10942,117,98,59,1,10968,4,2,59,100,17502,17504,1,8839,111,116,59,1,10948,115,4,2,111,117,17516,17520,108,59,1,10185,98,59,1,10967,97,114,114,59,1,10619,117,108,116,59,1,10946,4,2,69,101,17542,17545,59,1,10956,59,1,8843,108,117,115,59,1,10944,4,3,101,105,117,17562,17598,17602,116,4,3,59,101,110,17571,17573,17585,1,8835,113,4,2,59,113,17580,17582,1,8839,59,1,10950,101,113,4,2,59,113,17593,17595,1,8843,59,1,10956,109,59,1,10952,4,2,98,112,17608,17611,59,1,10964,59,1,10966,4,3,65,97,110,17622,17627,17650,114,114,59,1,8665,114,4,2,104,114,17634,17638,107,59,1,10534,4,2,59,111,17644,17646,1,8601,119,59,1,8601,119,97,114,59,1,10538,108,105,103,5,223,1,59,17664,1,223,4,13,97,98,99,100,101,102,104,105,111,112,114,115,119,17694,17709,17714,17737,17742,17749,17754,17860,17905,17957,17964,18090,18122,4,2,114,117,17700,17706,103,101,116,59,1,8982,59,1,964,114,107,59,1,9140,4,3,97,101,121,17722,17728,17734,114,111,110,59,1,357,100,105,108,59,1,355,59,1,1090,111,116,59,1,8411,108,114,101,99,59,1,8981,114,59,3,55349,56625,4,4,101,105,107,111,17764,17805,17836,17851,4,2,114,116,17770,17786,101,4,2,52,102,17777,17780,59,1,8756,111,114,101,59,1,8756,97,4,3,59,115,118,17795,17797,17802,1,952,121,109,59,1,977,59,1,977,4,2,99,110,17811,17831,107,4,2,97,115,17818,17826,112,112,114,111,120,59,1,8776,105,109,59,1,8764,115,112,59,1,8201,4,2,97,115,17842,17846,112,59,1,8776,105,109,59,1,8764,114,110,5,254,1,59,17858,1,254,4,3,108,109,110,17868,17873,17901,100,101,59,1,732,101,115,5,215,3,59,98,100,17884,17886,17898,1,215,4,2,59,97,17892,17894,1,8864,114,59,1,10801,59,1,10800,116,59,1,8749,4,3,101,112,115,17913,17917,17953,97,59,1,10536,4,4,59,98,99,102,17927,17929,17934,17939,1,8868,111,116,59,1,9014,105,114,59,1,10993,4,2,59,111,17945,17948,3,55349,56677,114,107,59,1,10970,97,59,1,10537,114,105,109,101,59,1,8244,4,3,97,105,112,17972,17977,18082,100,101,59,1,8482,4,7,97,100,101,109,112,115,116,17993,18051,18056,18059,18066,18072,18076,110,103,108,101,4,5,59,100,108,113,114,18009,18011,18017,18032,18035,1,9653,111,119,110,59,1,9663,101,102,116,4,2,59,101,18026,18028,1,9667,113,59,1,8884,59,1,8796,105,103,104,116,4,2,59,101,18045,18047,1,9657,113,59,1,8885,111,116,59,1,9708,59,1,8796,105,110,117,115,59,1,10810,108,117,115,59,1,10809,98,59,1,10701,105,109,101,59,1,10811,101,122,105,117,109,59,1,9186,4,3,99,104,116,18098,18111,18116,4,2,114,121,18104,18108,59,3,55349,56521,59,1,1094,99,121,59,1,1115,114,111,107,59,1,359,4,2,105,111,18128,18133,120,116,59,1,8812,104,101,97,100,4,2,108,114,18143,18154,101,102,116,97,114,114,111,119,59,1,8606,105,103,104,116,97,114,114,111,119,59,1,8608,4,18,65,72,97,98,99,100,102,103,104,108,109,111,112,114,115,116,117,119,18204,18209,18214,18234,18250,18268,18292,18308,18319,18343,18379,18397,18413,18504,18547,18553,18584,18603,114,114,59,1,8657,97,114,59,1,10595,4,2,99,114,18220,18230,117,116,101,5,250,1,59,18228,1,250,114,59,1,8593,114,4,2,99,101,18241,18245,121,59,1,1118,118,101,59,1,365,4,2,105,121,18256,18265,114,99,5,251,1,59,18263,1,251,59,1,1091,4,3,97,98,104,18276,18281,18287,114,114,59,1,8645,108,97,99,59,1,369,97,114,59,1,10606,4,2,105,114,18298,18304,115,104,116,59,1,10622,59,3,55349,56626,114,97,118,101,5,249,1,59,18317,1,249,4,2,97,98,18325,18338,114,4,2,108,114,18332,18335,59,1,8639,59,1,8638,108,107,59,1,9600,4,2,99,116,18349,18374,4,2,111,114,18355,18369,114,110,4,2,59,101,18363,18365,1,8988,114,59,1,8988,111,112,59,1,8975,114,105,59,1,9720,4,2,97,108,18385,18390,99,114,59,1,363,5,168,1,59,18395,1,168,4,2,103,112,18403,18408,111,110,59,1,371,102,59,3,55349,56678,4,6,97,100,104,108,115,117,18427,18434,18445,18470,18475,18494,114,114,111,119,59,1,8593,111,119,110,97,114,114,111,119,59,1,8597,97,114,112,111,111,110,4,2,108,114,18457,18463,101,102,116,59,1,8639,105,103,104,116,59,1,8638,117,115,59,1,8846,105,4,3,59,104,108,18484,18486,18489,1,965,59,1,978,111,110,59,1,965,112,97,114,114,111,119,115,59,1,8648,4,3,99,105,116,18512,18537,18542,4,2,111,114,18518,18532,114,110,4,2,59,101,18526,18528,1,8989,114,59,1,8989,111,112,59,1,8974,110,103,59,1,367,114,105,59,1,9721,99,114,59,3,55349,56522,4,3,100,105,114,18561,18566,18572,111,116,59,1,8944,108,100,101,59,1,361,105,4,2,59,102,18579,18581,1,9653,59,1,9652,4,2,97,109,18590,18595,114,114,59,1,8648,108,5,252,1,59,18601,1,252,97,110,103,108,101,59,1,10663,4,15,65,66,68,97,99,100,101,102,108,110,111,112,114,115,122,18643,18648,18661,18667,18847,18851,18857,18904,18909,18915,18931,18937,18943,18949,18996,114,114,59,1,8661,97,114,4,2,59,118,18656,18658,1,10984,59,1,10985,97,115,104,59,1,8872,4,2,110,114,18673,18679,103,114,116,59,1,10652,4,7,101,107,110,112,114,115,116,18695,18704,18711,18720,18742,18754,18810,112,115,105,108,111,110,59,1,1013,97,112,112,97,59,1,1008,111,116,104,105,110,103,59,1,8709,4,3,104,105,114,18728,18732,18735,105,59,1,981,59,1,982,111,112,116,111,59,1,8733,4,2,59,104,18748,18750,1,8597,111,59,1,1009,4,2,105,117,18760,18766,103,109,97,59,1,962,4,2,98,112,18772,18791,115,101,116,110,101,113,4,2,59,113,18784,18787,3,8842,65024,59,3,10955,65024,115,101,116,110,101,113,4,2,59,113,18803,18806,3,8843,65024,59,3,10956,65024,4,2,104,114,18816,18822,101,116,97,59,1,977,105,97,110,103,108,101,4,2,108,114,18834,18840,101,102,116,59,1,8882,105,103,104,116,59,1,8883,121,59,1,1074,97,115,104,59,1,8866,4,3,101,108,114,18865,18884,18890,4,3,59,98,101,18873,18875,18880,1,8744,97,114,59,1,8891,113,59,1,8794,108,105,112,59,1,8942,4,2,98,116,18896,18901,97,114,59,1,124,59,1,124,114,59,3,55349,56627,116,114,105,59,1,8882,115,117,4,2,98,112,18923,18927,59,3,8834,8402,59,3,8835,8402,112,102,59,3,55349,56679,114,111,112,59,1,8733,116,114,105,59,1,8883,4,2,99,117,18955,18960,114,59,3,55349,56523,4,2,98,112,18966,18981,110,4,2,69,101,18973,18977,59,3,10955,65024,59,3,8842,65024,110,4,2,69,101,18988,18992,59,3,10956,65024,59,3,8843,65024,105,103,122,97,103,59,1,10650,4,7,99,101,102,111,112,114,115,19020,19026,19061,19066,19072,19075,19089,105,114,99,59,1,373,4,2,100,105,19032,19055,4,2,98,103,19038,19043,97,114,59,1,10847,101,4,2,59,113,19050,19052,1,8743,59,1,8793,101,114,112,59,1,8472,114,59,3,55349,56628,112,102,59,3,55349,56680,59,1,8472,4,2,59,101,19081,19083,1,8768,97,116,104,59,1,8768,99,114,59,3,55349,56524,4,14,99,100,102,104,105,108,109,110,111,114,115,117,118,119,19125,19146,19152,19157,19173,19176,19192,19197,19202,19236,19252,19269,19286,19291,4,3,97,105,117,19133,19137,19142,112,59,1,8898,114,99,59,1,9711,112,59,1,8899,116,114,105,59,1,9661,114,59,3,55349,56629,4,2,65,97,19163,19168,114,114,59,1,10234,114,114,59,1,10231,59,1,958,4,2,65,97,19182,19187,114,114,59,1,10232,114,114,59,1,10229,97,112,59,1,10236,105,115,59,1,8955,4,3,100,112,116,19210,19215,19230,111,116,59,1,10752,4,2,102,108,19221,19225,59,3,55349,56681,117,115,59,1,10753,105,109,101,59,1,10754,4,2,65,97,19242,19247,114,114,59,1,10233,114,114,59,1,10230,4,2,99,113,19258,19263,114,59,3,55349,56525,99,117,112,59,1,10758,4,2,112,116,19275,19281,108,117,115,59,1,10756,114,105,59,1,9651,101,101,59,1,8897,101,100,103,101,59,1,8896,4,8,97,99,101,102,105,111,115,117,19316,19335,19349,19357,19362,19367,19373,19379,99,4,2,117,121,19323,19332,116,101,5,253,1,59,19330,1,253,59,1,1103,4,2,105,121,19341,19346,114,99,59,1,375,59,1,1099,110,5,165,1,59,19355,1,165,114,59,3,55349,56630,99,121,59,1,1111,112,102,59,3,55349,56682,99,114,59,3,55349,56526,4,2,99,109,19385,19389,121,59,1,1102,108,5,255,1,59,19395,1,255,4,10,97,99,100,101,102,104,105,111,115,119,19419,19426,19441,19446,19462,19467,19472,19480,19486,19492,99,117,116,101,59,1,378,4,2,97,121,19432,19438,114,111,110,59,1,382,59,1,1079,111,116,59,1,380,4,2,101,116,19452,19458,116,114,102,59,1,8488,97,59,1,950,114,59,3,55349,56631,99,121,59,1,1078,103,114,97,114,114,59,1,8669,112,102,59,3,55349,56683,99,114,59,3,55349,56527,4,2,106,110,19498,19501,59,1,8205,106,59,1,8204]);

/***/ }),

/***/ "a1ca":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var doctype = __webpack_require__("1ff4"),
    DOCUMENT_MODE = __webpack_require__("f30b").DOCUMENT_MODE;


//Conversion tables for DOM Level1 structure emulation
var nodeTypes = {
    element: 1,
    text: 3,
    cdata: 4,
    comment: 8
};

var nodePropertyShorthands = {
    tagName: 'name',
    childNodes: 'children',
    parentNode: 'parent',
    previousSibling: 'prev',
    nextSibling: 'next',
    nodeValue: 'data'
};

//Node
var Node = function (props) {
    for (var key in props) {
        if (props.hasOwnProperty(key))
            this[key] = props[key];
    }
};

Node.prototype = {
    get firstChild() {
        var children = this.children;

        return children && children[0] || null;
    },

    get lastChild() {
        var children = this.children;

        return children && children[children.length - 1] || null;
    },

    get nodeType() {
        return nodeTypes[this.type] || nodeTypes.element;
    }
};

Object.keys(nodePropertyShorthands).forEach(function (key) {
    var shorthand = nodePropertyShorthands[key];

    Object.defineProperty(Node.prototype, key, {
        get: function () {
            return this[shorthand] || null;
        },
        set: function (val) {
            this[shorthand] = val;
            return val;
        }
    });
});


//Node construction
exports.createDocument = function () {
    return new Node({
        type: 'root',
        name: 'root',
        parent: null,
        prev: null,
        next: null,
        children: [],
        'x-mode': DOCUMENT_MODE.NO_QUIRKS
    });
};

exports.createDocumentFragment = function () {
    return new Node({
        type: 'root',
        name: 'root',
        parent: null,
        prev: null,
        next: null,
        children: []
    });
};

exports.createElement = function (tagName, namespaceURI, attrs) {
    var attribs = Object.create(null),
        attribsNamespace = Object.create(null),
        attribsPrefix = Object.create(null);

    for (var i = 0; i < attrs.length; i++) {
        var attrName = attrs[i].name;

        attribs[attrName] = attrs[i].value;
        attribsNamespace[attrName] = attrs[i].namespace;
        attribsPrefix[attrName] = attrs[i].prefix;
    }

    return new Node({
        type: tagName === 'script' || tagName === 'style' ? tagName : 'tag',
        name: tagName,
        namespace: namespaceURI,
        attribs: attribs,
        'x-attribsNamespace': attribsNamespace,
        'x-attribsPrefix': attribsPrefix,
        children: [],
        parent: null,
        prev: null,
        next: null
    });
};

exports.createCommentNode = function (data) {
    return new Node({
        type: 'comment',
        data: data,
        parent: null,
        prev: null,
        next: null
    });
};

var createTextNode = function (value) {
    return new Node({
        type: 'text',
        data: value,
        parent: null,
        prev: null,
        next: null
    });
};


//Tree mutation
var appendChild = exports.appendChild = function (parentNode, newNode) {
    var prev = parentNode.children[parentNode.children.length - 1];

    if (prev) {
        prev.next = newNode;
        newNode.prev = prev;
    }

    parentNode.children.push(newNode);
    newNode.parent = parentNode;
};

var insertBefore = exports.insertBefore = function (parentNode, newNode, referenceNode) {
    var insertionIdx = parentNode.children.indexOf(referenceNode),
        prev = referenceNode.prev;

    if (prev) {
        prev.next = newNode;
        newNode.prev = prev;
    }

    referenceNode.prev = newNode;
    newNode.next = referenceNode;

    parentNode.children.splice(insertionIdx, 0, newNode);
    newNode.parent = parentNode;
};

exports.setTemplateContent = function (templateElement, contentElement) {
    appendChild(templateElement, contentElement);
};

exports.getTemplateContent = function (templateElement) {
    return templateElement.children[0];
};

exports.setDocumentType = function (document, name, publicId, systemId) {
    var data = doctype.serializeContent(name, publicId, systemId),
        doctypeNode = null;

    for (var i = 0; i < document.children.length; i++) {
        if (document.children[i].type === 'directive' && document.children[i].name === '!doctype') {
            doctypeNode = document.children[i];
            break;
        }
    }

    if (doctypeNode) {
        doctypeNode.data = data;
        doctypeNode['x-name'] = name;
        doctypeNode['x-publicId'] = publicId;
        doctypeNode['x-systemId'] = systemId;
    }

    else {
        appendChild(document, new Node({
            type: 'directive',
            name: '!doctype',
            data: data,
            'x-name': name,
            'x-publicId': publicId,
            'x-systemId': systemId
        }));
    }

};

exports.setDocumentMode = function (document, mode) {
    document['x-mode'] = mode;
};

exports.getDocumentMode = function (document) {
    return document['x-mode'];
};

exports.detachNode = function (node) {
    if (node.parent) {
        var idx = node.parent.children.indexOf(node),
            prev = node.prev,
            next = node.next;

        node.prev = null;
        node.next = null;

        if (prev)
            prev.next = next;

        if (next)
            next.prev = prev;

        node.parent.children.splice(idx, 1);
        node.parent = null;
    }
};

exports.insertText = function (parentNode, text) {
    var lastChild = parentNode.children[parentNode.children.length - 1];

    if (lastChild && lastChild.type === 'text')
        lastChild.data += text;
    else
        appendChild(parentNode, createTextNode(text));
};

exports.insertTextBefore = function (parentNode, text, referenceNode) {
    var prevNode = parentNode.children[parentNode.children.indexOf(referenceNode) - 1];

    if (prevNode && prevNode.type === 'text')
        prevNode.data += text;
    else
        insertBefore(parentNode, createTextNode(text), referenceNode);
};

exports.adoptAttributes = function (recipient, attrs) {
    for (var i = 0; i < attrs.length; i++) {
        var attrName = attrs[i].name;

        if (typeof recipient.attribs[attrName] === 'undefined') {
            recipient.attribs[attrName] = attrs[i].value;
            recipient['x-attribsNamespace'][attrName] = attrs[i].namespace;
            recipient['x-attribsPrefix'][attrName] = attrs[i].prefix;
        }
    }
};


//Tree traversing
exports.getFirstChild = function (node) {
    return node.children[0];
};

exports.getChildNodes = function (node) {
    return node.children;
};

exports.getParentNode = function (node) {
    return node.parent;
};

exports.getAttrList = function (element) {
    var attrList = [];

    for (var name in element.attribs) {
        attrList.push({
            name: name,
            value: element.attribs[name],
            namespace: element['x-attribsNamespace'][name],
            prefix: element['x-attribsPrefix'][name]
        });
    }

    return attrList;
};


//Node data
exports.getTagName = function (element) {
    return element.name;
};

exports.getNamespaceURI = function (element) {
    return element.namespace;
};

exports.getTextNodeContent = function (textNode) {
    return textNode.data;
};

exports.getCommentNodeContent = function (commentNode) {
    return commentNode.data;
};

exports.getDocumentTypeNodeName = function (doctypeNode) {
    return doctypeNode['x-name'];
};

exports.getDocumentTypeNodePublicId = function (doctypeNode) {
    return doctypeNode['x-publicId'];
};

exports.getDocumentTypeNodeSystemId = function (doctypeNode) {
    return doctypeNode['x-systemId'];
};


//Node types
exports.isTextNode = function (node) {
    return node.type === 'text';
};

exports.isCommentNode = function (node) {
    return node.type === 'comment';
};

exports.isDocumentTypeNode = function (node) {
    return node.type === 'directive' && node.name === '!doctype';
};

exports.isElementNode = function (node) {
    return !!node.attribs;
};


/***/ }),

/***/ "a1d0":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ multiPlatform; });
__webpack_require__.d(__webpack_exports__, "d", function() { return /* binding */ multiPlatformInit; });
__webpack_require__.d(__webpack_exports__, "f", function() { return /* binding */ common_multiPlatformInitTask; });
__webpack_require__.d(__webpack_exports__, "e", function() { return /* binding */ multiPlatformInitSite; });
__webpack_require__.d(__webpack_exports__, "g", function() { return /* binding */ multiPlatformOnlineSite; });
__webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ multiPlatformChangeSite; });
__webpack_require__.d(__webpack_exports__, "h", function() { return /* binding */ common_multiPlatformTaskClear; });
__webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ common_multiPlatformClear; });

// EXTERNAL MODULE: ./src/data/task.js
var data_task = __webpack_require__("cec6");

// EXTERNAL MODULE: ./src/utils/util.js
var util = __webpack_require__("ca00");

// EXTERNAL MODULE: ./src/data/log.js
var log = __webpack_require__("6b23");

// EXTERNAL MODULE: ./src/utils/event.js
var utils_event = __webpack_require__("42a5");

// EXTERNAL MODULE: ./src/utils/websocket.js
var websocket = __webpack_require__("b2eb");

// EXTERNAL MODULE: ./src/config.js
var config = __webpack_require__("db49");

// EXTERNAL MODULE: ./src/platform/common/newTask.js
var newTask = __webpack_require__("5e61");

// EXTERNAL MODULE: ./src/platform/temu/index.js
var temu = __webpack_require__("c04e");

// EXTERNAL MODULE: ./node_modules/axios/index.js
var axios = __webpack_require__("bc3a");
var axios_default = /*#__PURE__*/__webpack_require__.n(axios);

// EXTERNAL MODULE: ./src/platform/tiktok/utils/index.js
var utils = __webpack_require__("ba27");

// CONCATENATED MODULE: ./src/platform/tiktok/index.js
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }

function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }

function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }





var tiktok = {
  // 跨境账号信息 - 可能有些接口传参会用到
  cbAccountInfo: {},
  // 跨境Host - 商家中心（目前按所有跨境站点域名通用来做）
  cbShopHosts: {
    GLOBAL: 'https://seller.tiktokshopglobalselling.com',
    US: 'https://seller.us.tiktokshopglobalselling.com',
    EU: 'https://seller.eu.tiktokshopglobalselling.com'
  },
  // 跨境host - 联盟中心
  cbUsAffiliateHost: 'https://affiliate.tiktokshopglobalselling.com',
  // 站点区域映射
  siteRegionMap: {
    US: 'US',
    MX: 'US',
    CA: 'US',
    UK: 'EU',
    GB: 'EU',
    DE: 'EU',
    FR: 'EU',
    IT: 'EU',
    ES: 'EU',
    NL: 'EU',
    SE: 'EU',
    PL: 'EU',
    AE: 'EU',
    SA: 'EU',
    TR: 'EU',
    BE: 'EU',
    IE: 'EU',
    EG: 'EU',
    MY: 'GLOBAL',
    JP: 'GLOBAL',
    VN: 'GLOBAL',
    TH: 'GLOBAL',
    SG: 'GLOBAL'
  },
  // 已登录的跨境域名
  isLoginGlobalHost: {},
  // 是否是获取联盟中心数据的任务
  getAffiliateDataTask: [30001, 30002, 30003, 30004, 30005, 30006],

  /**
   * 当前所处跨境站点
   * @property {number} activate_current_todo_step - 当前激活的待办步骤
   * @property {number} business_type - 业务类型
   * @property {string} global_shop_name - 全球店铺名称
   * @property {boolean} is_activate_todo_finish - 激活待办是否完成
   * @property {object} logo - 店铺logo信息
   * @property {string} region_code - 区域代码
   * @property {number} seller_condition - 卖家状态
   * @property {string} seller_id - 卖家ID
   * @property {number} seller_type - 卖家类型
   * @property {string} shop_code - 店铺代码
   * @property {string} shop_name - 店铺名称
   * @property {string} shop_region - 店铺区域
   * @property {number} shop_status - 店铺状态
   * @property {number} status - 状态
   * @property {number} test_flag - 测试标记
   * @property {object} timezone - 时区信息
   */
  currentCbSite: {},

  /**
   * 跨境店铺信息
   * @property {string} is_new - 未知
   * @property {number} region - 站点区域code
   * @property {string} region_name - 国家英文名
   * @property {Array<number>} seller_id - 店铺id
   * @property {object} shop_status - 未知
   * 下面是插件用于展示的字段
   * @property {string} storeType - 店铺类型  跨境
   * @property {boolean} isSemiManagedMall - 是否是半托管
   * @property {string} mallId - 店铺ID
   * @property {string} mallName - 店铺名称
   */
  cbStoreInfo: [],
  // 本土账号信息
  localAccountInfo: {},
  // 本土店铺信息 - 字段与跨境一样
  localStoreInfo: [],
  // 当前所在本土店铺信息 - 字段与跨境一样
  currentLocalSite: {},
  // 本土host
  localHost: {
    US: 'https://seller-us.tiktok.com',
    MX: 'https://seller-mx.tiktok.com',
    BR: 'https://seller-br.tiktok.com',
    PH: 'https://seller-ph.tiktok.com',
    SG: 'https://seller-sg.tiktok.com',
    TH: 'https://seller-th.tiktok.com',
    VN: 'https://seller-vn.tiktok.com',
    ID: 'https://seller-id.tiktok.com',
    MY: 'https://seller-my.tiktok.com',
    JP: 'https://seller-jp.tiktok.com',
    DE: 'https://seller-de.tiktok.com',
    FR: 'https://seller-fr.tiktok.com',
    ES: 'https://seller-es.tiktok.com',
    IE: 'https://seller-ie.tiktok.com',
    IT: 'https://seller-it.tiktok.com',
    UK: 'https://seller-uk.tiktok.com',
    GB: 'https://seller-uk.tiktok.com'
  },
  // 本土联盟中心域名
  localAffiliateHost: {
    US: 'https://affiliate-us.tiktok.com',
    MX: 'https://affiliate.tiktok.com',
    BR: 'https://affiliate.tiktok.com',
    PH: 'https://affiliate.tiktok.com',
    SG: 'https://affiliate.tiktok.com',
    TH: 'https://affiliate.tiktok.com',
    VN: 'https://affiliate.tiktok.com',
    ID: 'https://affiliate.tiktok.com',
    MY: 'https://affiliate.tiktok.com',
    JP: 'https://affiliate.tiktok.com',
    DE: 'https://affiliate.tiktok.com',
    FR: 'https://affiliate.tiktok.com',
    ES: 'https://affiliate.tiktok.com',
    IE: 'https://affiliate.tiktok.com',
    IT: 'https://affiliate.tiktok.com',
    UK: 'https://affiliate.tiktok.com',
    GB: 'https://affiliate.tiktok.com'
  },
  // 已登录的本土域名
  isLoginLocalHost: {}
};
/**
 * @description 清除店铺信息
 */

var clearStoreInfo = function clearStoreInfo() {
  tiktok.cbStoreInfo = [];
  tiktok.isLoginGlobalHost = {};
  tiktok.currentCbSite = {};
  tiktok.cbAccountInfo = {};
  tiktok.localStoreInfo = [];
  tiktok.isLoginLocalHost = {};
  tiktok.currentLocalSite = {};
  tiktok.localAccountInfo = {};
};
/**
 * @description tk检测站点
*/


var tiktokCheckSite = /*#__PURE__*/function () {
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
    var cbStoreInfo, localStoreInfo;
    return _regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            clearStoreInfo();
            _context.next = 4;
            return checkTiktokCbInfo();

          case 4:
            cbStoreInfo = _context.sent;
            _context.next = 7;
            return checkTiktokLocalInfo();

          case 7:
            localStoreInfo = _context.sent;

            if ((cbStoreInfo === null || cbStoreInfo === void 0 ? void 0 : cbStoreInfo.length) > 0) {
              tiktok.cbStoreInfo = Object(util["K" /* unique */])(cbStoreInfo, 'mallId');
            }

            if ((localStoreInfo === null || localStoreInfo === void 0 ? void 0 : localStoreInfo.length) > 0) {
              tiktok.localStoreInfo = Object(util["K" /* unique */])(localStoreInfo, 'mallId');
            }

            return _context.abrupt("return", [].concat(_toConsumableArray(tiktok.cbStoreInfo), _toConsumableArray(tiktok.localStoreInfo)).map(function (_ref2) {
              var mallId = _ref2.mallId;
              return mallId;
            }));

          case 13:
            _context.prev = 13;
            _context.t0 = _context["catch"](0);
            log["a" /* default */].report("tiktok\u68C0\u6D4B\u7AD9\u70B9\u62A5\u9519,\u89C4\u5219\u53EF\u80FD\u5DF2\u6539\u53D8---".concat(Object(util["u" /* isError */])(_context.t0)), 'error');
            return _context.abrupt("return", false);

          case 17:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 13]]);
  }));

  return function tiktokCheckSite() {
    return _ref.apply(this, arguments);
  };
}();
/**
 * @description 检测tiktok跨境信息
 */

var checkTiktokCbInfo = /*#__PURE__*/function () {
  var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
    var _storeInfo$sellerList, accountInfo, storeInfo;

    return _regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;
            _context2.next = 3;
            return getCbAccountInfo();

          case 3:
            accountInfo = _context2.sent;

            if (accountInfo) {
              _context2.next = 7;
              break;
            }

            log["a" /* default */].getLog('获取tiktok跨境账号信息失败');
            return _context2.abrupt("return", false);

          case 7:
            tiktok.cbAccountInfo = accountInfo.data;
            _context2.next = 10;
            return checkTiktokCb(accountInfo.host);

          case 10:
            storeInfo = _context2.sent;

            if (storeInfo) {
              _context2.next = 14;
              break;
            }

            log["a" /* default */].getLog('检测tiktok跨境店铺信息失败');
            return _context2.abrupt("return", false);

          case 14:
            if (!((storeInfo === null || storeInfo === void 0 ? void 0 : (_storeInfo$sellerList = storeInfo.sellerList) === null || _storeInfo$sellerList === void 0 ? void 0 : _storeInfo$sellerList.length) > 0)) {
              _context2.next = 17;
              break;
            }

            tiktok.currentCbSite = storeInfo.seller;
            return _context2.abrupt("return", storeInfo.sellerList.map(function (item) {
              var _storeInfo$seller;

              return _objectSpread(_objectSpread({}, item), {}, {
                mallId: item.seller_id,
                mallName: (_storeInfo$seller = storeInfo.seller) === null || _storeInfo$seller === void 0 ? void 0 : _storeInfo$seller.shop_name,
                isSemiManagedMall: true,
                storeType: '跨境'
              });
            }));

          case 17:
            _context2.next = 23;
            break;

          case 19:
            _context2.prev = 19;
            _context2.t0 = _context2["catch"](0);
            log["a" /* default */].report("\u68C0\u6D4Btiktok\u8DE8\u5883\u5E97\u94FA\u4FE1\u606F\u62A5\u9519---".concat(Object(util["u" /* isError */])(_context2.t0)), 'error');
            return _context2.abrupt("return", false);

          case 23:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 19]]);
  }));

  return function checkTiktokCbInfo() {
    return _ref3.apply(this, arguments);
  };
}();
/**
 * @description 检测跨境店铺是否在线，在线则返回店铺信息
 */


var checkTiktokCb = /*#__PURE__*/function () {
  var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(host) {
    var _yield$axios, data, _data$data, seller, global_seller, errorMsg;

    return _regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return axios_default()({
              url: "".concat(host, "/api/v3/seller/common/get"),
              method: 'get'
            });

          case 3:
            _yield$axios = _context3.sent;
            data = _yield$axios.data;

            if (!(data && data.code === 0)) {
              _context3.next = 8;
              break;
            }

            _data$data = data.data, seller = _data$data.seller, global_seller = _data$data.global_seller; // 暂时只支持获取一个账号店铺

            return _context3.abrupt("return", {
              sellerList: (global_seller === null || global_seller === void 0 ? void 0 : global_seller.seller_map) || [],
              seller: seller
            });

          case 8:
            _context3.next = 14;
            break;

          case 10:
            _context3.prev = 10;
            _context3.t0 = _context3["catch"](0);
            errorMsg = Object(util["u" /* isError */])(_context3.t0);

            if (errorMsg.indexOf('403') > -1) {
              log["a" /* default */].setLog("\u68C0\u6D4Btiktok\u8DE8\u5883\u7AD9\u70B9\u672A\u767B\u5F55");
            } else {
              log["a" /* default */].setLog("\u68C0\u6D4Btiktok\u8DE8\u5883\u7AD9\u70B9\u8BF7\u6C42\u62A5\u9519-----".concat(errorMsg));
            }

          case 14:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 10]]);
  }));

  return function checkTiktokCb(_x) {
    return _ref4.apply(this, arguments);
  };
}();
/**
 * @description 跨境 - 获取账号信息
 */

var getCbAccountInfo = /*#__PURE__*/function () {
  var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
    var _i, _Object$entries, _Object$entries$_i, site, host, _yield$axios2, data, errorMsg;

    return _regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _i = 0, _Object$entries = Object.entries(tiktok.cbShopHosts);

          case 2:
            if (!(_i < _Object$entries.length)) {
              _context4.next = 14;
              break;
            }

            _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2), site = _Object$entries$_i[0], host = _Object$entries$_i[1];
            _context4.next = 6;
            return axios_default()({
              url: "".concat(host, "/passport/account/info/v2/"),
              method: 'get'
            });

          case 6:
            _yield$axios2 = _context4.sent;
            data = _yield$axios2.data;

            if (!(data && data.message === 'success')) {
              _context4.next = 11;
              break;
            }

            // 记录已登录的域名
            tiktok.isLoginGlobalHost[site] = host;
            return _context4.abrupt("return", {
              data: data.data,
              host: host
            });

          case 11:
            _i++;
            _context4.next = 2;
            break;

          case 14:
            _context4.next = 20;
            break;

          case 16:
            _context4.prev = 16;
            _context4.t0 = _context4["catch"](0);
            errorMsg = Object(util["u" /* isError */])(_context4.t0);

            if (errorMsg.indexOf('403') > -1) {
              log["a" /* default */].setLog("\u83B7\u53D6tiktok\u8DE8\u5883\u8D26\u53F7\u4FE1\u606F\u672A\u767B\u5F55");
            } else {
              log["a" /* default */].setLog("\u83B7\u53D6tiktok\u8DE8\u5883\u8D26\u53F7\u4FE1\u606F\u8BF7\u6C42\u62A5\u9519-----".concat(errorMsg));
            }

          case 20:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 16]]);
  }));

  return function getCbAccountInfo() {
    return _ref5.apply(this, arguments);
  };
}();
/**
 * @description 切换站点 - 跨境
 */


var changeCbSite = /*#__PURE__*/function () {
  var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(host, code) {
    var _yield$axios3, data;

    return _regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            _context5.prev = 0;
            _context5.next = 3;
            return axios_default()({
              url: "".concat(host, "?shop_region=").concat(code),
              method: 'get'
            });

          case 3:
            _yield$axios3 = _context5.sent;
            data = _yield$axios3.data;
            return _context5.abrupt("return", true);

          case 8:
            _context5.prev = 8;
            _context5.t0 = _context5["catch"](0);
            log["a" /* default */].setLog("\u5207\u6362tiktok\u8DE8\u5883\u7AD9\u70B9\u8BF7\u6C42\u62A5\u9519-----".concat(Object(util["u" /* isError */])(_context5.t0)));
            return _context5.abrupt("return", false);

          case 12:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[0, 8]]);
  }));

  return function changeCbSite(_x2, _x3) {
    return _ref6.apply(this, arguments);
  };
}();
/**
 * @description 切换语言 - 跨境商家中心
 */


var changeCbLanguage = /*#__PURE__*/function () {
  var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(host) {
    var _yield$axios4, data;

    return _regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.prev = 0;
            _context6.next = 3;
            return axios_default()({
              url: "".concat(host, "/homepage?lng=en"),
              method: 'get'
            });

          case 3:
            _yield$axios4 = _context6.sent;
            data = _yield$axios4.data;
            return _context6.abrupt("return", true);

          case 8:
            _context6.prev = 8;
            _context6.t0 = _context6["catch"](0);
            log["a" /* default */].setLog("\u5207\u6362tiktok\u8DE8\u5883\u8BED\u8A00\u8BF7\u6C42\u62A5\u9519-----".concat(Object(util["u" /* isError */])(_context6.t0)));
            return _context6.abrupt("return", false);

          case 12:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6, null, [[0, 8]]);
  }));

  return function changeCbLanguage(_x4) {
    return _ref7.apply(this, arguments);
  };
}();
/**
 * @description 切换语言 - 跨境联盟中心
 */


var changeCbAffiliateLanguage = /*#__PURE__*/function () {
  var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(task) {
    var query, _yield$tkPost, code, message;

    return _regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            _context7.next = 2;
            return Object(utils["a" /* getQueryString */])(task);

          case 2:
            query = _context7.sent;

            if (query) {
              _context7.next = 5;
              break;
            }

            return _context7.abrupt("return", false);

          case 5:
            _context7.prev = 5;
            _context7.next = 8;
            return Object(utils["c" /* tkPost */])("".concat(tiktok.cbUsAffiliateHost, "/api/v1/seller/account/update"), query, {
              account: {
                default_locale: 'en'
              }
            });

          case 8:
            _yield$tkPost = _context7.sent;
            code = _yield$tkPost.code;
            message = _yield$tkPost.message;

            if (!(code === 0)) {
              _context7.next = 15;
              break;
            }

            return _context7.abrupt("return", true);

          case 15:
            log["a" /* default */].setLog("\u5207\u6362tiktok\u8DE8\u5883\u8054\u76DF\u4E2D\u5FC3\u8BED\u8A00\u5931\u8D25-----".concat(message));

          case 16:
            return _context7.abrupt("return", false);

          case 19:
            _context7.prev = 19;
            _context7.t0 = _context7["catch"](5);
            log["a" /* default */].setLog("\u5207\u6362tiktok\u8DE8\u5883\u8054\u76DF\u4E2D\u5FC3\u8BED\u8A00\u8BF7\u6C42\u62A5\u9519-----".concat(Object(util["u" /* isError */])(_context7.t0)));
            return _context7.abrupt("return", false);

          case 23:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7, null, [[5, 19]]);
  }));

  return function changeCbAffiliateLanguage(_x5) {
    return _ref8.apply(this, arguments);
  };
}();
/**
 * @description 本土 - 获取账号信息
 */


var getLocalAccountInfo = /*#__PURE__*/function () {
  var _ref9 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {
    var _i2, _Object$entries2, _Object$entries2$_i, site, host, _yield$axios5, data, errorMsg;

    return _regeneratorRuntime().wrap(function _callee8$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            _context8.prev = 0;
            _i2 = 0, _Object$entries2 = Object.entries(tiktok.localHost);

          case 2:
            if (!(_i2 < _Object$entries2.length)) {
              _context8.next = 14;
              break;
            }

            _Object$entries2$_i = _slicedToArray(_Object$entries2[_i2], 2), site = _Object$entries2$_i[0], host = _Object$entries2$_i[1];
            _context8.next = 6;
            return axios_default()({
              url: "".concat(host, "/passport/account/info/v2/"),
              method: 'get'
            });

          case 6:
            _yield$axios5 = _context8.sent;
            data = _yield$axios5.data;

            if (!(data && data.message === 'success')) {
              _context8.next = 11;
              break;
            }

            // 记录已登录的域名
            tiktok.isLoginLocalHost[site] = host;
            return _context8.abrupt("return", {
              data: data.data,
              host: host
            });

          case 11:
            _i2++;
            _context8.next = 2;
            break;

          case 14:
            _context8.next = 20;
            break;

          case 16:
            _context8.prev = 16;
            _context8.t0 = _context8["catch"](0);
            errorMsg = Object(util["u" /* isError */])(_context8.t0);

            if (errorMsg.indexOf('403') > -1) {
              log["a" /* default */].setLog("\u83B7\u53D6tiktok\u672C\u571F\u8D26\u53F7\u4FE1\u606F\u672A\u767B\u5F55");
            } else {
              log["a" /* default */].setLog("\u83B7\u53D6tiktok\u672C\u571F\u8D26\u53F7\u4FE1\u606F\u8BF7\u6C42\u62A5\u9519-----".concat(errorMsg));
            }

          case 20:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee8, null, [[0, 16]]);
  }));

  return function getLocalAccountInfo() {
    return _ref9.apply(this, arguments);
  };
}();
/**
 * 检测tiktok本土信息
 */


var checkTiktokLocalInfo = /*#__PURE__*/function () {
  var _ref10 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9() {
    var _storeInfo$sellerList2, accountInfo, storeInfo;

    return _regeneratorRuntime().wrap(function _callee9$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            _context9.prev = 0;
            _context9.next = 3;
            return getLocalAccountInfo();

          case 3:
            accountInfo = _context9.sent;

            if (accountInfo) {
              _context9.next = 7;
              break;
            }

            log["a" /* default */].getLog('获取tiktok本土账号信息失败');
            return _context9.abrupt("return", false);

          case 7:
            tiktok.localAccountInfo = accountInfo.data;
            _context9.next = 10;
            return checkTiktokLocal(accountInfo.host);

          case 10:
            storeInfo = _context9.sent;

            if (storeInfo) {
              _context9.next = 14;
              break;
            }

            log["a" /* default */].getLog('检测tiktok本土店铺信息失败');
            return _context9.abrupt("return", false);

          case 14:
            if (!((storeInfo === null || storeInfo === void 0 ? void 0 : (_storeInfo$sellerList2 = storeInfo.sellerList) === null || _storeInfo$sellerList2 === void 0 ? void 0 : _storeInfo$sellerList2.length) > 0)) {
              _context9.next = 17;
              break;
            }

            tiktok.currentLocalSite = storeInfo.seller;
            return _context9.abrupt("return", storeInfo.sellerList.map(function (item) {
              var _storeInfo$seller2;

              return _objectSpread(_objectSpread({}, item), {}, {
                mallId: item.seller_id,
                mallName: (_storeInfo$seller2 = storeInfo.seller) === null || _storeInfo$seller2 === void 0 ? void 0 : _storeInfo$seller2.shop_name,
                isSemiManagedMall: true,
                storeType: '本土'
              });
            }));

          case 17:
            _context9.next = 23;
            break;

          case 19:
            _context9.prev = 19;
            _context9.t0 = _context9["catch"](0);
            log["a" /* default */].report("\u68C0\u6D4Btiktok\u672C\u571F\u5E97\u94FA\u4FE1\u606F\u62A5\u9519---".concat(Object(util["u" /* isError */])(_context9.t0)), 'error');
            return _context9.abrupt("return", false);

          case 23:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee9, null, [[0, 19]]);
  }));

  return function checkTiktokLocalInfo() {
    return _ref10.apply(this, arguments);
  };
}();
/**
 * @description 检测本土店铺是否在线，在线则返回店铺信息
 */


var checkTiktokLocal = /*#__PURE__*/function () {
  var _ref11 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10(host) {
    var _yield$axios6, data, _data$data2, global_seller, seller, errorMsg;

    return _regeneratorRuntime().wrap(function _callee10$(_context10) {
      while (1) {
        switch (_context10.prev = _context10.next) {
          case 0:
            _context10.prev = 0;
            _context10.next = 3;
            return axios_default()({
              url: "".concat(host, "/api/v3/seller/common/get"),
              method: 'get'
            });

          case 3:
            _yield$axios6 = _context10.sent;
            data = _yield$axios6.data;

            if (!(data && data.code === 0)) {
              _context10.next = 8;
              break;
            }

            _data$data2 = data.data, global_seller = _data$data2.global_seller, seller = _data$data2.seller; // 暂时只支持获取一个账号店铺

            return _context10.abrupt("return", {
              sellerList: (global_seller === null || global_seller === void 0 ? void 0 : global_seller.seller_map) || [],
              seller: seller
            });

          case 8:
            _context10.next = 14;
            break;

          case 10:
            _context10.prev = 10;
            _context10.t0 = _context10["catch"](0);
            errorMsg = Object(util["u" /* isError */])(_context10.t0);

            if (errorMsg.indexOf('403') > -1) {
              log["a" /* default */].setLog("\u68C0\u6D4Btiktok\u672C\u571F\u7AD9\u70B9\u672A\u767B\u5F55");
            } else {
              log["a" /* default */].setLog("\u68C0\u6D4Btiktok\u672C\u571F\u7AD9\u70B9\u8BF7\u6C42\u62A5\u9519-----".concat(errorMsg));
            }

          case 14:
          case "end":
            return _context10.stop();
        }
      }
    }, _callee10, null, [[0, 10]]);
  }));

  return function checkTiktokLocal(_x6) {
    return _ref11.apply(this, arguments);
  };
}();
/**
 * @description 本土 - 切换站点
 */

var changeLocalSite = /*#__PURE__*/function () {
  var _ref12 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11(task) {
    var fp, query, _yield$tkPost2, code, message;

    return _regeneratorRuntime().wrap(function _callee11$(_context11) {
      while (1) {
        switch (_context11.prev = _context11.next) {
          case 0:
            _context11.prev = 0;

            if (!task.isAffiliate) {
              _context11.next = 5;
              break;
            }

            _context11.next = 4;
            return changeLocalAffiliateSite(task);

          case 4:
            return _context11.abrupt("return", _context11.sent);

          case 5:
            _context11.next = 7;
            return Object(util["p" /* getCookies */])({
              url: task.host,
              name: 's_v_web_id'
            });

          case 7:
            fp = _context11.sent;
            _context11.next = 10;
            return Object(utils["a" /* getQueryString */])(task, {
              fp: (fp === null || fp === void 0 ? void 0 : fp.value) || ''
            });

          case 10:
            query = _context11.sent;

            if (query) {
              _context11.next = 13;
              break;
            }

            return _context11.abrupt("return", false);

          case 13:
            _context11.next = 15;
            return Object(utils["c" /* tkPost */])("".concat(task.host, "/api/v1/seller/seller_map/read"), query);

          case 15:
            _yield$tkPost2 = _context11.sent;
            code = _yield$tkPost2.code;
            message = _yield$tkPost2.message;

            if (!(code === 0)) {
              _context11.next = 22;
              break;
            }

            return _context11.abrupt("return", true);

          case 22:
            log["a" /* default */].setLog("tiktok\u672C\u571F\u5207\u6362\u7AD9\u70B9\u5931\u8D25-----".concat(message));

          case 23:
            return _context11.abrupt("return", false);

          case 26:
            _context11.prev = 26;
            _context11.t0 = _context11["catch"](0);
            log["a" /* default */].setLog("\u5207\u6362tiktok\u672C\u571F\u7AD9\u70B9\u8BF7\u6C42\u62A5\u9519-----".concat(Object(util["u" /* isError */])(_context11.t0)));
            return _context11.abrupt("return", false);

          case 30:
          case "end":
            return _context11.stop();
        }
      }
    }, _callee11, null, [[0, 26]]);
  }));

  return function changeLocalSite(_x7) {
    return _ref12.apply(this, arguments);
  };
}();
/**
 * @description 切换本土联盟中心站点
 */


var changeLocalAffiliateSite = /*#__PURE__*/function () {
  var _ref13 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee12(task) {
    var fp, query, _yield$tkGet, code, message;

    return _regeneratorRuntime().wrap(function _callee12$(_context12) {
      while (1) {
        switch (_context12.prev = _context12.next) {
          case 0:
            _context12.prev = 0;
            _context12.next = 3;
            return Object(util["p" /* getCookies */])({
              url: task.host,
              name: 's_v_web_id'
            });

          case 3:
            fp = _context12.sent;
            _context12.next = 6;
            return Object(utils["a" /* getQueryString */])(task, {
              global_seller_id: task.platform_store_id,
              seller_id: task.platform_store_id,
              version: 3,
              fp: (fp === null || fp === void 0 ? void 0 : fp.value) || ''
            });

          case 6:
            query = _context12.sent;

            if (query) {
              _context12.next = 9;
              break;
            }

            return _context12.abrupt("return", false);

          case 9:
            _context12.next = 11;
            return Object(utils["b" /* tkGet */])("".concat(task.host, "/api/v3/seller/common/get"), query);

          case 11:
            _yield$tkGet = _context12.sent;
            code = _yield$tkGet.code;
            message = _yield$tkGet.message;

            if (!(code === 0)) {
              _context12.next = 18;
              break;
            }

            return _context12.abrupt("return", true);

          case 18:
            log["a" /* default */].setLog("\u5207\u6362tiktok\u672C\u571F\u8054\u76DF\u4E2D\u5FC3\u7AD9\u70B9\u5931\u8D25-----".concat(message));

          case 19:
            return _context12.abrupt("return", false);

          case 22:
            _context12.prev = 22;
            _context12.t0 = _context12["catch"](0);
            log["a" /* default */].setLog("\u5207\u6362tiktok\u672C\u571F\u8054\u76DF\u4E2D\u5FC3\u7AD9\u70B9\u8BF7\u6C42\u62A5\u9519-----".concat(Object(util["u" /* isError */])(_context12.t0)));
            return _context12.abrupt("return", false);

          case 26:
          case "end":
            return _context12.stop();
        }
      }
    }, _callee12, null, [[0, 22]]);
  }));

  return function changeLocalAffiliateSite(_x8) {
    return _ref13.apply(this, arguments);
  };
}();
/**
 * @description 切换站点、语言 - 对外
 */


var changeCbSiteAndLanguage = /*#__PURE__*/function () {
  var _ref14 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee13(task) {
    var store_type, site_name, site, _checkRes$seller, _checkRes$seller$shop, changeSiteRes, checkRes, _checkRes$seller2;

    return _regeneratorRuntime().wrap(function _callee13$(_context13) {
      while (1) {
        switch (_context13.prev = _context13.next) {
          case 0:
            // store_type: GLOBAL：跨境  LOCAL：本土；
            // appType：0:非美国站；1：美国本土站（非美籍受益人）；2：美国本土站（美籍受益人）；3、美国跨境站 4 本土欧区
            // site_name: 各国code 美国: US
            // 由于还不知道tk跨境如何切换站点，所以只支持美国跨境店铺
            store_type = task.store_type, site_name = task.site_name;
            site = site_name.toLocaleUpperCase(); // task.isAffiliate = tiktok.getAffiliateDataTask.includes(+task.type_id)

            if (!(store_type === 'GLOBAL')) {
              _context13.next = 9;
              break;
            }

            // task.host = task.isAffiliate ? tiktok.cbUsAffiliateHost : tiktok.cbShopHosts[tiktok.siteRegionMap[site]]
            // if (!task.host) {
            //   task.msg = '当前不支持站点: ' + site
            //   log.setLog(task.msg)
            //   return false
            // }
            // 切换站点
            // log.setLog('开始切换站点')
            // const changeSiteRes = await changeCbSite(task.host, site)
            // if (!changeSiteRes) {
            //   task.msg = '切换tiktok跨境站点失败'
            //   log.setLog(task.msg)
            //   return false
            // }
            // log.setLog(`站点已切换至:${site}`)
            task.timezone_name = tiktok.currentCbSite && tiktok.currentCbSite.timezone.name;
            task.aid = tiktok.cbAccountInfo && tiktok.cbAccountInfo.app_id;
            task.shop_region = site; // 切换语言
            // if (task.isAffiliate) {
            //   await changeCbLanguage(task.host)
            // } else {
            //   await changeCbAffiliateLanguage(task)
            // }

            return _context13.abrupt("return", true);

          case 9:
            // 处理本土店铺
            // task.host = tiktok.isAffiliate ? tiktok.localAffiliateHost : tiktok.localHost[site]
            // if (!task.host) {
            //   task.msg = '当前不支持站点: ' + site
            //   log.setLog(task.msg)
            //   return false
            // }
            // 切换站点
            log["a" /* default */].setLog('开始切换站点');
            _context13.next = 12;
            return changeLocalSite(task);

          case 12:
            changeSiteRes = _context13.sent;

            if (changeSiteRes) {
              _context13.next = 17;
              break;
            }

            task.msg = '切换tiktok本土站点失败';
            log["a" /* default */].setLog(task.msg);
            return _context13.abrupt("return", false);

          case 17:
            log["a" /* default */].setLog("\u7AD9\u70B9\u5DF2\u5207\u6362\u81F3:".concat(site)); // 检测是否切换成功

            _context13.next = 20;
            return checkTiktokLocal(task.host);

          case 20:
            checkRes = _context13.sent;

            if (!(!checkRes || ((_checkRes$seller = checkRes.seller) === null || _checkRes$seller === void 0 ? void 0 : (_checkRes$seller$shop = _checkRes$seller.shop_region) === null || _checkRes$seller$shop === void 0 ? void 0 : _checkRes$seller$shop.toLocaleUpperCase()) !== site)) {
              _context13.next = 25;
              break;
            }

            task.msg = "tiktok\u672C\u571F\u7AD9\u70B9\u672A\u5207\u6362\u6210\u529F\uFF0C\u5F53\u524D\u7AD9\u70B9-".concat((_checkRes$seller2 = checkRes.seller) === null || _checkRes$seller2 === void 0 ? void 0 : _checkRes$seller2.shop_region, ",\u76EE\u6807\u7AD9\u70B9-").concat(site);
            log["a" /* default */].setLog(task.msg);
            return _context13.abrupt("return", false);

          case 25:
            tiktok.currentLocalSite = checkRes.seller;
            task.timezone_name = tiktok.currentLocalSite && tiktok.currentLocalSite.timezone.name;
            task.aid = tiktok.localAccountInfo && tiktok.localAccountInfo.app_id;
            task.shop_region = site;
            return _context13.abrupt("return", true);

          case 30:
          case "end":
            return _context13.stop();
        }
      }
    }, _callee13);
  }));

  return function changeCbSiteAndLanguage(_x9) {
    return _ref14.apply(this, arguments);
  };
}();
// EXTERNAL MODULE: ./src/platform/mercado/index.js
var mercado = __webpack_require__("e38f");

// CONCATENATED MODULE: ./src/platform/common/index.js
function common_typeof(obj) { "@babel/helpers - typeof"; return common_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, common_typeof(obj); }

function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = common_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function common_toConsumableArray(arr) { return common_arrayWithoutHoles(arr) || common_iterableToArray(arr) || common_unsupportedIterableToArray(arr) || common_nonIterableSpread(); }

function common_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function common_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return common_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return common_arrayLikeToArray(o, minLen); }

function common_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function common_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return common_arrayLikeToArray(arr); }

function common_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function common_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ common_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == common_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function common_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function common_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { common_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { common_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }












var multiPlatform = {
  refreshing: false,
  // 店铺信息
  storeInfo: [],
  // 用于显示在弹窗上的店铺信息
  storeInfoOfExhibition: [],
  // 平台code
  platformCode: '',
  // 多平台任务管理实例
  multiPlatformTaskInstance: null,
  // 离线店铺
  offlineSite: [],
  // 任务类型
  taskTypes: [],
  // 任务类型映射
  taskTypesMap: {},
  // 定时任务是否开启
  enableTimerTask: 1,
  // 店铺唯一id Map
  storeIdMap: {},
  // tk轮询定时时长（分）
  tkPollingTime: 1,
  // 其他平台轮询定时时长（分）
  otherPollingTime: 5
};

var getTaskType = /*#__PURE__*/function () {
  var _ref = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee() {
    var _yield$gatePost$catch, code, data;

    return common_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(util["m" /* gatePost */])('api/mp/getTaskTypes', {
              platform_code: multiPlatform.platformCode
            }, 'task').catch(function () {});

          case 3:
            _yield$gatePost$catch = _context.sent;
            code = _yield$gatePost$catch.code;
            data = _yield$gatePost$catch.data;

            if (code === 0) {
              multiPlatform.taskTypes = data.sort(function (a, b) {
                return b.priority - a.priority;
              });
              multiPlatform.taskTypesMap = {};
              multiPlatform.taskTypes.forEach(function (item) {
                item.list = [];
                multiPlatform.taskTypesMap[item.taskTypeId] = item;
              });
            }

            _context.next = 12;
            break;

          case 9:
            _context.prev = 9;
            _context.t0 = _context["catch"](0);
            log["a" /* default */].setLog('获取任务类型失败', Object(util["u" /* isError */])(_context.t0));

          case 12:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 9]]);
  }));

  return function getTaskType() {
    return _ref.apply(this, arguments);
  };
}();

var multiPlatformInit = /*#__PURE__*/function () {
  var _ref2 = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee2() {
    var count,
        status,
        _args2 = arguments;
    return common_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            count = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : 0;
            // 先取消重试定时器，防止用户点击刷新时重复调用
            chrome.alarms.clear('multiPlatformInit'); // 检测版本

            Object(util["c" /* checkVersion */])(); // 检测插件是否可用

            _context2.next = 5;
            return data_task["b" /* default */].checkEnable();

          case 5:
            status = _context2.sent;
            util["y" /* localStorage */].setItem({
              enableObj: {
                status: status
              }
            }); // 检测定时任务是否开启

            checkEnableTimerTask(); // 检测店铺

            _context2.next = 10;
            return multiPlatformInitSite();

          case 10:
            // 获取任务类型
            getTaskType();

            if (multiPlatform.storeInfo && multiPlatform.storeInfo.length) {
              common_multiPlatformInitTask();
            } else if (count < 3) {
              // 未检测到店铺时，重试三次
              util["b" /* alarms */].setTimeout(function () {
                log["a" /* default */].setLog("[\u68C0\u6D4B\u7AD9\u70B9]\u91CD\u8BD5\u7B2C".concat(count + 1, "\u6B21"));
                multiPlatformInit(++count);
              }, 'multiPlatformInit', 10 * 1000);
            }

          case 12:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));

  return function multiPlatformInit() {
    return _ref2.apply(this, arguments);
  };
}();
var common_multiPlatformInitTask = function multiPlatformInitTask() {
  if (multiPlatform.multiPlatformTaskInstance) return; // 连接websocket

  var storeIds = multiPlatform.storeInfo.map(function (item) {
    return "".concat(multiPlatform.platformCode, ":").concat(item);
  }).join(',');
  websocket["a" /* default */].init(storeIds); // 心跳检测

  checkHeartbeat(); // 初始化task实例

  multiPlatform.multiPlatformTaskInstance = new newTask["a" /* default */](); // 监听推送

  Object(utils_event["b" /* monitor */])('ReceivePush', receivePush);
  Object(utils_event["b" /* monitor */])('GoExecuteTemu', goExecuteTemu); // 设置轮询

  setTimerLoop();
};
/**
   * @description 接收推送调度
   */

function receivePush(data) {
  if (multiPlatform.multiPlatformTaskInstance && (!data || !data.content || !data.content.platform_code)) return;
  log["a" /* default */].setLog('[多平台]task.js接收到推送类型', data.type);

  switch (data.type) {
    case 6:
      multiPlatform.multiPlatformTaskInstance.initTaskList([data.content]);
      break;
    // case 8: this.handleDelete(data.content)
    // break

    case 10:
      multiPlatform.multiPlatformTaskInstance.getTaskList();
      break;
    // case 20: if (data.content == 0) task.clearAutoTaskList()
  }
}
/**
 * @description 任务恢复执行
 */


function goExecuteTemu() {
  log["a" /* default */].setLog('GoExecuteTemu');
  multiPlatform.multiPlatformTaskInstance.taskSchedule();
}

var common_getCheckSiteHandle = function getCheckSiteHandle() {
  var platform = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : multiPlatform.platformCode;
  return {
    10022: temu["i" /* temuCheckSite */],
    tiktok: tiktokCheckSite,
    mercado: mercado["d" /* mercadoCheckSite */]
  }[platform]();
};
/**
 * @description 初始化-检测平台所有店铺
 */


var multiPlatformInitSite = /*#__PURE__*/function () {
  var _ref3 = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee3() {
    var _yield$localStorage$g, platform, online;

    return common_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.next = 2;
            return util["y" /* localStorage */].getItem(['platform']);

          case 2:
            _yield$localStorage$g = _context3.sent;
            platform = _yield$localStorage$g.platform;

            if (!multiPlatform.refreshing) {
              _context3.next = 9;
              break;
            }

            log["a" /* default */].setLog('正在检测站点');
            return _context3.abrupt("return", 'refreshing');

          case 9:
            multiPlatform.refreshing = true;

          case 10:
            multiPlatform.platformCode = config["i" /* platformCodeMap */][platform];
            _context3.t0 = platform;
            _context3.next = _context3.t0 === 'temu' ? 14 : _context3.t0 === 'tiktok' ? 22 : _context3.t0 === 'mercado' ? 30 : 38;
            break;

          case 14:
            _context3.next = 16;
            return common_getCheckSiteHandle();

          case 16:
            _context3.t1 = _context3.sent;

            if (_context3.t1) {
              _context3.next = 19;
              break;
            }

            _context3.t1 = [];

          case 19:
            multiPlatform.storeInfo = _context3.t1;
            multiPlatform.storeInfoOfExhibition = [].concat(common_toConsumableArray(temu["h" /* temu */].cbStoreInfo), common_toConsumableArray(temu["h" /* temu */].localStoreInfo));
            return _context3.abrupt("break", 38);

          case 22:
            _context3.next = 24;
            return common_getCheckSiteHandle();

          case 24:
            _context3.t2 = _context3.sent;

            if (_context3.t2) {
              _context3.next = 27;
              break;
            }

            _context3.t2 = [];

          case 27:
            multiPlatform.storeInfo = _context3.t2;
            multiPlatform.storeInfoOfExhibition = [].concat(common_toConsumableArray(tiktok.cbStoreInfo), common_toConsumableArray(tiktok.localStoreInfo));
            return _context3.abrupt("break", 38);

          case 30:
            _context3.next = 32;
            return common_getCheckSiteHandle();

          case 32:
            _context3.t3 = _context3.sent;

            if (_context3.t3) {
              _context3.next = 35;
              break;
            }

            _context3.t3 = [];

          case 35:
            multiPlatform.storeInfo = _context3.t3;
            multiPlatform.storeInfoOfExhibition = [].concat(common_toConsumableArray(mercado["c" /* mercado */].cbStoreInfo), common_toConsumableArray(mercado["c" /* mercado */].localStoreInfo));
            return _context3.abrupt("break", 38);

          case 38:
            // 清除离线店铺
            multiPlatform.offlineSite = [];
            log["a" /* default */].setLog('检测到站点----', JSON.stringify(multiPlatform.storeInfo));
            multiPlatform.refreshing = false;
            online = !!multiPlatform.storeInfo.length;
            return _context3.abrupt("return", online);

          case 43:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));

  return function multiPlatformInitSite() {
    return _ref3.apply(this, arguments);
  };
}();
/**
 * @description 执行任务时 - 检测店铺是否在线
 * @returns onlineSiteStatus: 判断店铺是否在线 1: 在线 2: 离线 3: 店铺id不一致,账号可能已被切换
 * @returns mall 当前检测到的店铺id or 店铺名
 */

var multiPlatformOnlineSite = /*#__PURE__*/function () {
  var _ref4 = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee4(task) {
    var res, _storeInfo$, platform_store_id, storeInfo, find, _storeInfo$2, _storeInfo, _find, _temu$localStoreInfo$, region, taskMallInfo, checkLocalHandle, _storeInfo2, mallInfo, checked, _platform_store_id, store_type, site_name, _region, host, _yield$checkTiktokCb, sellerList, _find2, site, _host, _yield$checkTiktokLoc, _sellerList, _find3, _storeInfo3, _find4, _taskMallInfo, _region2, _storeInfo4, _checked, msg;

    return common_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            res = {};
            _context4.t0 = +task.platform_code;
            _context4.next = _context4.t0 === 10022 ? 5 : _context4.t0 === 10024 ? 14 : _context4.t0 === 10011 ? 53 : _context4.t0 === 10032 ? 82 : _context4.t0 === 10012 ? 84 : 105;
            break;

          case 5:
            platform_store_id = task.platform_store_id;
            task.host = temu["h" /* temu */].globalHostOfTypeId.includes(+task.type_id) ? temu["h" /* temu */].cbGlobalHost : temu["h" /* temu */].cbHost;
            task.real_mall_id = Object(temu["f" /* getRealMallId */])(platform_store_id); // 跨境

            _context4.next = 10;
            return Object(temu["b" /* checkTemuCb */])();

          case 10:
            storeInfo = _context4.sent;
            // 店铺校准
            find = storeInfo && storeInfo.find(function (_ref5) {
              var mallId = _ref5.mallId,
                  uniqueId = _ref5.uniqueId;
              return mallId == platform_store_id || uniqueId == platform_store_id;
            });
            res = {
              onlineSiteStatus: storeInfo ? find ? 1 : 3 : 2,
              storeType: 'global',
              mall: find ? find.mallId : storeInfo === null || storeInfo === void 0 ? void 0 : (_storeInfo$ = storeInfo[0]) === null || _storeInfo$ === void 0 ? void 0 : _storeInfo$.mallId
            };
            return _context4.abrupt("break", 105);

          case 14:
            task.real_mall_id = Object(temu["f" /* getRealMallId */])(task.platform_store_id);

            if (!(task.store_type === 'GLOBAL')) {
              _context4.next = 24;
              break;
            }

            // 跨境
            task.host = temu["h" /* temu */].globalHostOfTypeId.includes(+task.type_id) ? temu["h" /* temu */].cbGlobalHost : temu["h" /* temu */].cbHost;
            _context4.next = 19;
            return Object(temu["b" /* checkTemuCb */])();

          case 19:
            _storeInfo = _context4.sent;
            // 店铺校准
            _find = _storeInfo && _storeInfo.find(function (_ref6) {
              var mallId = _ref6.mallId,
                  uniqueId = _ref6.uniqueId;
              return mallId == task.platform_store_id || uniqueId == task.platform_store_id;
            });
            res = {
              onlineSiteStatus: _storeInfo ? _find ? 1 : 3 : 2,
              storeType: 'global',
              mall: _find ? _find.mallId : _storeInfo === null || _storeInfo === void 0 ? void 0 : (_storeInfo$2 = _storeInfo[0]) === null || _storeInfo$2 === void 0 ? void 0 : _storeInfo$2.mallId
            };
            _context4.next = 52;
            break;

          case 24:
            region = task.area.toLowerCase();

            if (!(task.area === 'GLOBAL')) {
              _context4.next = 34;
              break;
            }

            // 全球其他本土
            taskMallInfo = temu["h" /* temu */].localStoreInfo.find(function (_ref7) {
              var mallId = _ref7.mallId;
              return mallId == task.platform_store_id;
            });

            if (taskMallInfo) {
              _context4.next = 30;
              break;
            }

            log["a" /* default */].setLog("\u672A\u627E\u5230mallId\u4E3A".concat(task.platform_store_id, "\u7684\u5E97\u94FA\u4FE1\u606F"));
            return _context4.abrupt("return", {
              msg: "\u591A\u5E73\u53F0\u68C0\u6D4B\u5E97\u94FA\u662F\u5426\u5728\u7EBF\u5931\u8D25----\u672A\u77E5\u5E97\u94FA:".concat(task.platform_store_id)
            });

          case 30:
            region = taskMallInfo.region;
            task.host = temu["h" /* temu */]["".concat(region, "Host")];
            _context4.next = 44;
            break;

          case 34:
            if (!(task.area === 'US')) {
              _context4.next = 38;
              break;
            }

            task.host = temu["h" /* temu */].usHost;
            _context4.next = 44;
            break;

          case 38:
            if (!(task.area === 'EU')) {
              _context4.next = 42;
              break;
            }

            task.host = temu["h" /* temu */].euHost;
            _context4.next = 44;
            break;

          case 42:
            log["a" /* default */].setLog("\u591A\u5E73\u53F0\u68C0\u6D4B\u5E97\u94FA\u662F\u5426\u5728\u7EBF\u5931\u8D25----\u4E0D\u652F\u6301\u7684temu\u672C\u571Farea:".concat(task.area));
            return _context4.abrupt("return", {
              msg: "\u591A\u5E73\u53F0\u68C0\u6D4B\u5E97\u94FA\u662F\u5426\u5728\u7EBF\u5931\u8D25----\u4E0D\u652F\u6301\u7684temu\u672C\u571Farea:".concat(task.area)
            });

          case 44:
            checkLocalHandle = {
              US: temu["e" /* checkTemuUsLocal */],
              EU: temu["c" /* checkTemuEuLocal */],
              GLOBAL: function GLOBAL() {
                return Object(temu["d" /* checkTemuGlobalLocal */])(region);
              }
            }[task.area];
            _context4.next = 47;
            return checkLocalHandle();

          case 47:
            _storeInfo2 = _context4.sent;
            mallInfo = _storeInfo2 && _storeInfo2.layoutData.mallData && _storeInfo2.layoutData.mallData.mallInfo; // 店铺校准

            checked = temu["h" /* temu */].localStoreInfo.find(function (_ref8) {
              var mallId = _ref8.mallId;
              return mallId == (mallInfo === null || mallInfo === void 0 ? void 0 : mallInfo.mallId);
            });
            task.siteId = (_temu$localStoreInfo$ = temu["h" /* temu */].localStoreInfo.find(function (_ref9) {
              var mallId = _ref9.mallId;
              return mallId == task.platform_store_id;
            })) === null || _temu$localStoreInfo$ === void 0 ? void 0 : _temu$localStoreInfo$.siteId;
            res = {
              onlineSiteStatus: mallInfo ? checked ? 1 : 3 : 2,
              storeType: 'local',
              area: region,
              mall: checked ? checked.mallId : mallInfo === null || mallInfo === void 0 ? void 0 : mallInfo.mallId
            };

          case 52:
            return _context4.abrupt("break", 105);

          case 53:
            _platform_store_id = task.platform_store_id, store_type = task.store_type, site_name = task.site_name;

            if (!(store_type === 'GLOBAL')) {
              _context4.next = 69;
              break;
            }

            // 跨境店铺
            _region = tiktok.siteRegionMap[site_name === null || site_name === void 0 ? void 0 : site_name.toLocaleUpperCase()];
            host = tiktok.cbShopHosts[_region];

            if (host) {
              _context4.next = 59;
              break;
            }

            return _context4.abrupt("return", {
              msg: 'tiktok当前不支持跨境站点: ' + site_name
            });

          case 59:
            task.isAffiliate = tiktok.getAffiliateDataTask.includes(+task.type_id);
            task.host = task.isAffiliate ? tiktok.cbUsAffiliateHost : host;
            _context4.next = 63;
            return checkTiktokCb(host);

          case 63:
            _yield$checkTiktokCb = _context4.sent;
            sellerList = _yield$checkTiktokCb.sellerList;
            // 店铺校准
            _find2 = sellerList === null || sellerList === void 0 ? void 0 : sellerList.find(function (_ref10) {
              var seller_id = _ref10.seller_id;
              return seller_id == _platform_store_id;
            });
            res = {
              onlineSiteStatus: (sellerList === null || sellerList === void 0 ? void 0 : sellerList.length) > 0 ? _find2 ? 1 : 3 : 2,
              storeType: 'global'
            };
            _context4.next = 81;
            break;

          case 69:
            // 本土店铺
            site = site_name === null || site_name === void 0 ? void 0 : site_name.toLocaleUpperCase();
            _host = tiktok.localHost[site];

            if (_host) {
              _context4.next = 73;
              break;
            }

            return _context4.abrupt("return", {
              msg: 'tiktok当前不支持本土站点: ' + site_name
            });

          case 73:
            task.isAffiliate = tiktok.getAffiliateDataTask.includes(+task.type_id);
            task.host = task.isAffiliate ? tiktok.localAffiliateHost[site] : _host;
            _context4.next = 77;
            return checkTiktokLocal(_host);

          case 77:
            _yield$checkTiktokLoc = _context4.sent;
            _sellerList = _yield$checkTiktokLoc.sellerList;
            _find3 = _sellerList === null || _sellerList === void 0 ? void 0 : _sellerList.find(function (_ref11) {
              var seller_id = _ref11.seller_id;
              return seller_id == _platform_store_id;
            });
            res = {
              onlineSiteStatus: (_sellerList === null || _sellerList === void 0 ? void 0 : _sellerList.length) > 0 ? _find3 ? 1 : 3 : 2,
              storeType: 'local'
            };

          case 81:
            return _context4.abrupt("break", 105);

          case 82:
            res = {
              msg: 'tiktok插件目前还不支持全托店铺'
            };
            return _context4.abrupt("break", 105);

          case 84:
            if (!(task.store_type === 'GLOBAL')) {
              _context4.next = 93;
              break;
            }

            _context4.next = 87;
            return Object(mercado["a" /* checkMercadoCb */])();

          case 87:
            _storeInfo3 = _context4.sent;
            // 店铺校准
            _find4 = _storeInfo3 && _storeInfo3.find(function (_ref12) {
              var userId = _ref12.userId;
              return userId == task.platform_store_id;
            });
            res = {
              onlineSiteStatus: _storeInfo3 ? _find4 ? 1 : 3 : 2,
              storeType: 'global'
            };
            task.host = mercado["c" /* mercado */].getPagoTask.includes(+task.type_id) ? mercado["c" /* mercado */].cbPagoHost : mercado["c" /* mercado */].cbHost;
            _context4.next = 104;
            break;

          case 93:
            // 本土
            _taskMallInfo = mercado["c" /* mercado */].localStoreInfo.find(function (_ref13) {
              var mallId = _ref13.mallId;
              return mallId == task.platform_store_id;
            });

            if (_taskMallInfo) {
              _context4.next = 97;
              break;
            }

            log["a" /* default */].setLog("\u672A\u627E\u5230mallId\u4E3A".concat(task.platform_store_id, "\u7684\u5E97\u94FA\u4FE1\u606F"));
            return _context4.abrupt("return", {
              msg: "\u591A\u5E73\u53F0\u68C0\u6D4B\u5E97\u94FA\u662F\u5426\u5728\u7EBF\u5931\u8D25----\u672A\u77E5\u5E97\u94FA:".concat(task.platform_store_id)
            });

          case 97:
            _region2 = _taskMallInfo.region;
            task.host = mercado["c" /* mercado */].getPagoTask.includes(+task.type_id) ? mercado["c" /* mercado */].localPagoHost.find(function (_ref14) {
              var value = _ref14.value;
              return value === _region2;
            }).host : mercado["c" /* mercado */].localHost.find(function (_ref15) {
              var value = _ref15.value;
              return value === _region2;
            }).host;
            _context4.next = 101;
            return Object(mercado["b" /* checkMercadoLocal */])(_region2);

          case 101:
            _storeInfo4 = _context4.sent;
            // 店铺校准
            _checked = mercado["c" /* mercado */].localStoreInfo.find(function (_ref16) {
              var mallId = _ref16.mallId;
              return mallId == _storeInfo4.mallId;
            });
            res = {
              onlineSiteStatus: _storeInfo4 ? _checked ? 1 : 3 : 2,
              storeType: 'local',
              area: _region2
            };

          case 104:
            return _context4.abrupt("break", 105);

          case 105:
            // 记录离线店铺
            recordOfflineSite(res);
            return _context4.abrupt("return", res);

          case 109:
            _context4.prev = 109;
            _context4.t1 = _context4["catch"](0);
            msg = '多平台检测店铺是否在线失败----' + Object(util["u" /* isError */])(_context4.t1);
            log["a" /* default */].setLog(msg);
            return _context4.abrupt("return", {
              msg: msg
            });

          case 114:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 109]]);
  }));

  return function multiPlatformOnlineSite(_x) {
    return _ref4.apply(this, arguments);
  };
}();
/**
 * @description 记录离线店铺
 */

var recordOfflineSite = /*#__PURE__*/function () {
  var _ref18 = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee5(_ref17) {
    var onlineSiteStatus, storeType, area, _yield$localStorage$g2, platform, mallIds;

    return common_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            onlineSiteStatus = _ref17.onlineSiteStatus, storeType = _ref17.storeType, area = _ref17.area;
            _context5.next = 3;
            return util["y" /* localStorage */].getItem(['platform']);

          case 3:
            _yield$localStorage$g2 = _context5.sent;
            platform = _yield$localStorage$g2.platform;
            mallIds = [];
            _context5.t0 = platform;
            _context5.next = _context5.t0 === 'temu' ? 9 : _context5.t0 === 'tiktok' ? 11 : _context5.t0 === 'mercado' ? 13 : 15;
            break;

          case 9:
            mallIds = storeType === 'global' ? temu["h" /* temu */].cbStoreInfo.map(function (_ref19) {
              var mallId = _ref19.mallId;
              return mallId;
            }) : temu["h" /* temu */].localStoreInfo.filter(function (_ref20) {
              var region = _ref20.region;
              return region === area;
            }).map(function (_ref21) {
              var mallId = _ref21.mallId;
              return mallId;
            });
            return _context5.abrupt("break", 15);

          case 11:
            mallIds = tiktok.cbStoreInfo.map(function (_ref22) {
              var global_seller_id = _ref22.global_seller_id;
              return global_seller_id;
            });
            return _context5.abrupt("break", 15);

          case 13:
            mallIds = storeType === 'global' ? mercado["c" /* mercado */].cbStoreInfo.map(function (_ref23) {
              var mallId = _ref23.mallId;
              return mallId;
            }) : mercado["c" /* mercado */].localStoreInfo.filter(function (_ref24) {
              var region = _ref24.region;
              return region === area;
            }).map(function (_ref25) {
              var mallId = _ref25.mallId;
              return mallId;
            });
            return _context5.abrupt("break", 15);

          case 15:
            // 如果离线，则添加到离线店铺中，如果在线，则从离线店铺中移除
            multiPlatform.offlineSite = onlineSiteStatus === 1 ? multiPlatform.offlineSite.filter(function (mallId) {
              return !mallIds.includes(mallId);
            }) : common_toConsumableArray(new Set([].concat(common_toConsumableArray(multiPlatform.offlineSite), common_toConsumableArray(mallIds))));

          case 16:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function recordOfflineSite(_x2) {
    return _ref18.apply(this, arguments);
  };
}();
/**
 * @description 切换站点店铺
 */


var multiPlatformChangeSite = /*#__PURE__*/function () {
  var _ref26 = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee6(task) {
    return common_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.t0 = +task.platform_code;
            _context6.next = _context6.t0 === 10022 ? 3 : _context6.t0 === 10024 ? 3 : _context6.t0 === 10011 ? 6 : _context6.t0 === 10032 ? 7 : _context6.t0 === 10012 ? 10 : 11;
            break;

          case 3:
            _context6.next = 5;
            return Object(temu["a" /* changeLocalMallId */])(task);

          case 5:
            return _context6.abrupt("return", _context6.sent);

          case 6:
            return _context6.abrupt("return", changeCbSiteAndLanguage(task));

          case 7:
            task.msg = 'tiktok插件目前还不支持全托店铺';
            log["a" /* default */].setLog(task.msg);
            return _context6.abrupt("return", false);

          case 10:
            return _context6.abrupt("return", true);

          case 11:
            return _context6.abrupt("return", false);

          case 12:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6);
  }));

  return function multiPlatformChangeSite(_x3) {
    return _ref26.apply(this, arguments);
  };
}();
/**
 * @description 心跳检测
 */

var checkHeartbeat = /*#__PURE__*/function () {
  var _ref27 = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee7() {
    var platform_store_id;
    return common_regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            log["a" /* default */].setLog('多平台心跳检测----', JSON.stringify(multiPlatform.storeInfo)); // const is_pause = await suspend()

            platform_store_id = multiPlatform.storeInfo.filter(function (mallId) {
              return !multiPlatform.offlineSite.includes(mallId);
            });
            _context7.next = 4;
            return Object(util["m" /* gatePost */])('api/mp/reportHeartBeat', {
              // is_pause: !!is_pause,
              platform_code: multiPlatform.platformCode,
              platform_store_id: platform_store_id
            }, 'task').catch(function () {});

          case 4:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7);
  }));

  return function checkHeartbeat() {
    return _ref27.apply(this, arguments);
  };
}();
/**
 * @description 轮询
 */


var setTimerLoop = /*#__PURE__*/function () {
  var _ref28 = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee11() {
    var count;
    return common_regeneratorRuntime().wrap(function _callee11$(_context11) {
      while (1) {
        switch (_context11.prev = _context11.next) {
          case 0:
            count = 0; // 如果是tk平台，单独设置个定时器来查询任务

            if (multiPlatform.platformCode === 'tiktok') {
              util["b" /* alarms */].setInterval( /*#__PURE__*/common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee8() {
                return common_regeneratorRuntime().wrap(function _callee8$(_context8) {
                  while (1) {
                    switch (_context8.prev = _context8.next) {
                      case 0:
                        multiPlatform.multiPlatformTaskInstance.getTaskList();

                      case 1:
                      case "end":
                        return _context8.stop();
                    }
                  }
                }, _callee8);
              })), 'getTiktokTask', multiPlatform.tkPollingTime);
            }

            util["b" /* alarms */].setInterval( /*#__PURE__*/common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee9() {
              var status;
              return common_regeneratorRuntime().wrap(function _callee9$(_context9) {
                while (1) {
                  switch (_context9.prev = _context9.next) {
                    case 0:
                      count++;
                      handlePolling(); // 处理暂停状态（防止非手动暂停后关闭插件使插件永久暂停）

                      handleRestoreSuspend(); // 十分钟执行一次

                      if (!(count === 2)) {
                        _context9.next = 10;
                        break;
                      }

                      // 检测版本
                      Object(util["c" /* checkVersion */])(); // 检测插件是否可用

                      _context9.next = 7;
                      return data_task["b" /* default */].checkEnable();

                    case 7:
                      status = _context9.sent;
                      util["y" /* localStorage */].setItem({
                        enableObj: {
                          status: status
                        }
                      }); // 插件当前是否维护中 status为0：维护中，1：可运行

                      count = 0;

                    case 10:
                      // 执行重复任务
                      multiPlatform.multiPlatformTaskInstance.runRepeat();

                    case 11:
                    case "end":
                      return _context9.stop();
                  }
                }
              }, _callee9);
            })), 'multiPlatformBgLoop', multiPlatform.otherPollingTime); // 站点离线时检测轮询

            util["b" /* alarms */].setInterval( /*#__PURE__*/common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee10() {
              return common_regeneratorRuntime().wrap(function _callee10$(_context10) {
                while (1) {
                  switch (_context10.prev = _context10.next) {
                    case 0:
                      checkSiteOfOfflineTask();

                    case 1:
                    case "end":
                      return _context10.stop();
                  }
                }
              }, _callee10);
            })), 'checkSiteOfOfflineTask', 1);

          case 4:
          case "end":
            return _context11.stop();
        }
      }
    }, _callee11);
  }));

  return function setTimerLoop() {
    return _ref28.apply(this, arguments);
  };
}();
/**
 * @description 定时函数
 */


function handlePolling() {
  return _handlePolling.apply(this, arguments);
}
/**
 * @description 当任务存在站点离线状态，则检测店铺
 */


function _handlePolling() {
  _handlePolling = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee14() {
    var _task;

    return common_regeneratorRuntime().wrap(function _callee14$(_context14) {
      while (1) {
        switch (_context14.prev = _context14.next) {
          case 0:
            if (!(multiPlatform.storeInfo && multiPlatform.storeInfo.length)) {
              _context14.next = 8;
              break;
            }

            _task = multiPlatform.multiPlatformTaskInstance; // 心跳检测

            checkHeartbeat(); // 五分钟请求一次获取任务接口

            if (['tiktok'].includes(multiPlatform.platformCode)) {
              _context14.next = 6;
              break;
            }

            _context14.next = 6;
            return _task.getTaskList();

          case 6:
            // 没有任务类型，则获取任务类型
            if (multiPlatform.taskTypes.length === 0) _task.getTaskType(); // 检测定时任务是否开启

            checkEnableTimerTask();

          case 8:
          case "end":
            return _context14.stop();
        }
      }
    }, _callee14);
  }));
  return _handlePolling.apply(this, arguments);
}

function checkSiteOfOfflineTask() {
  return _checkSiteOfOfflineTask.apply(this, arguments);
}
/**
 * @description 检测定时任务是否开启
 */


function _checkSiteOfOfflineTask() {
  _checkSiteOfOfflineTask = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee15() {
    var multiPlatformTaskInstance, taskGroups, taskList, hasOfflineTask, arr, _iterator, _step, _task2;

    return common_regeneratorRuntime().wrap(function _callee15$(_context15) {
      while (1) {
        switch (_context15.prev = _context15.next) {
          case 0:
            multiPlatformTaskInstance = multiPlatform.multiPlatformTaskInstance;
            taskGroups = multiPlatformTaskInstance && multiPlatformTaskInstance.taskGroups;

            if (!(taskGroups && Object.keys(taskGroups).length)) {
              _context15.next = 36;
              break;
            }

            taskList = Object.values(taskGroups).flatMap(function (group) {
              return group.tasks;
            });
            hasOfflineTask = taskList.find(function (task) {
              return task.status === 11;
            });

            if (!hasOfflineTask) {
              _context15.next = 36;
              break;
            }

            log["a" /* default */].setLog('有离线任务，准备检测站点'); // 有离线任务，准备检测
            // 检测到有店铺，将对应店铺状态为离线的任务错误次数重置成0

            arr = [];
            _iterator = _createForOfIteratorHelper(taskList);
            _context15.prev = 9;

            _iterator.s();

          case 11:
            if ((_step = _iterator.n()).done) {
              _context15.next = 25;
              break;
            }

            _task2 = _step.value;
            _context15.t0 = _task2.status === 11;

            if (!_context15.t0) {
              _context15.next = 19;
              break;
            }

            _context15.next = 17;
            return multiPlatformOnlineSite(_task2);

          case 17:
            _context15.t1 = _context15.sent.onlineSiteStatus;
            _context15.t0 = _context15.t1 === 1;

          case 19:
            if (!_context15.t0) {
              _context15.next = 23;
              break;
            }

            arr.push(_task2.task_id);
            _task2.error_time = 0;
            _task2.status = 0;

          case 23:
            _context15.next = 11;
            break;

          case 25:
            _context15.next = 30;
            break;

          case 27:
            _context15.prev = 27;
            _context15.t2 = _context15["catch"](9);

            _iterator.e(_context15.t2);

          case 30:
            _context15.prev = 30;

            _iterator.f();

            return _context15.finish(30);

          case 33:
            log["a" /* default */].setLog('已重置离线任务', JSON.stringify(arr), '---准备重新调度任务');
            if (arr.length > 0) multiPlatformTaskInstance.taskSchedule(); // 检测一次就可以退出了

            return _context15.abrupt("return");

          case 36:
          case "end":
            return _context15.stop();
        }
      }
    }, _callee15, null, [[9, 27, 30, 33]]);
  }));
  return _checkSiteOfOfflineTask.apply(this, arguments);
}

var checkEnableTimerTask = /*#__PURE__*/function () {
  var _ref32 = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee12() {
    var _yield$gateGet, code, data;

    return common_regeneratorRuntime().wrap(function _callee12$(_context12) {
      while (1) {
        switch (_context12.prev = _context12.next) {
          case 0:
            _context12.prev = 0;
            _context12.next = 3;
            return Object(util["l" /* gateGet */])('api/v1/checkSysJobStatus');

          case 3:
            _yield$gateGet = _context12.sent;
            code = _yield$gateGet.code;
            data = _yield$gateGet.data;

            if (code === 0) {
              multiPlatform.enableTimerTask = data.status;
            }

            _context12.next = 12;
            break;

          case 9:
            _context12.prev = 9;
            _context12.t0 = _context12["catch"](0);
            log["a" /* default */].setLog('检测定时任务是否开启失败----' + Object(util["u" /* isError */])(_context12.t0));

          case 12:
          case "end":
            return _context12.stop();
        }
      }
    }, _callee12, null, [[0, 9]]);
  }));

  return function checkEnableTimerTask() {
    return _ref32.apply(this, arguments);
  };
}();
/**
 * 恢复暂停状态
 * @returns 
 */


var handleRestoreSuspend = /*#__PURE__*/function () {
  var _ref33 = common_asyncToGenerator( /*#__PURE__*/common_regeneratorRuntime().mark(function _callee13() {
    var _yield$localStorage$g3, suspend;

    return common_regeneratorRuntime().wrap(function _callee13$(_context13) {
      while (1) {
        switch (_context13.prev = _context13.next) {
          case 0:
            _context13.next = 2;
            return util["y" /* localStorage */].getItem(['suspend']);

          case 2:
            _yield$localStorage$g3 = _context13.sent;
            suspend = _yield$localStorage$g3.suspend;

            if (suspend) {
              _context13.next = 6;
              break;
            }

            return _context13.abrupt("return");

          case 6:
            if (!(suspend == '99')) {
              _context13.next = 8;
              break;
            }

            return _context13.abrupt("return");

          case 8:
            if (suspend == '1' || Number(suspend) < Date.now()) {
              log["a" /* default */].report("\u3010sellerID:".concat(JSON.stringify(multiPlatform.storeInfo), "\u3011\u4EFB\u52A1\u6062\u590D\u6267\u884C\u3002"), 'info');
              util["y" /* localStorage */].removeItem(['suspend']); // 恢复运行（触发src\platform\common\task.js taskSchedule方法）

              Object(utils_event["a" /* distribute */])('GoExecuteTemu');
            }

          case 9:
          case "end":
            return _context13.stop();
        }
      }
    }, _callee13);
  }));

  return function handleRestoreSuspend() {
    return _ref33.apply(this, arguments);
  };
}();

var common_multiPlatformTaskClear = function multiPlatformTaskClear() {
  multiPlatform.multiPlatformTaskInstance && multiPlatform.multiPlatformTaskInstance.destroyed();
  multiPlatform.multiPlatformTaskInstance = null;
  websocket["a" /* default */] && websocket["a" /* default */].webSocketClose();
  Object(utils_event["c" /* removeMonitor */])('ReceivePush', receivePush);
  Object(utils_event["c" /* removeMonitor */])('GoExecuteTemu', goExecuteTemu); // 清除任务请求轮询定时器

  chrome.alarms.clear('multiPlatformBgLoop');
  chrome.alarms.clear('checkSiteOfOfflineTask');
  chrome.alarms.clear('getTiktokTask');
};
var common_multiPlatformClear = function multiPlatformClear() {
  log["a" /* default */].setLog('----清除多平台登录信息----');
  multiPlatform.storeInfo = [];
  multiPlatform.platformCode = '';
  common_multiPlatformTaskClear();
  Object(util["d" /* clearKeepServiceWorker */])();
  util["y" /* localStorage */].removeItem(['token', 'refresh_token', 'company_id', 'uid', 'username', 'env_key', 'domain', 'platform']);
};

/***/ }),

/***/ "a2be":
/***/ (function(module, exports, __webpack_require__) {

var SetCache = __webpack_require__("d612"),
    arraySome = __webpack_require__("4284"),
    cacheHas = __webpack_require__("c584");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1,
    COMPARE_UNORDERED_FLAG = 2;

/**
 * A specialized version of `baseIsEqualDeep` for arrays with support for
 * partial deep comparisons.
 *
 * @private
 * @param {Array} array The array to compare.
 * @param {Array} other The other array to compare.
 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
 * @param {Function} customizer The function to customize comparisons.
 * @param {Function} equalFunc The function to determine equivalents of values.
 * @param {Object} stack Tracks traversed `array` and `other` objects.
 * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.
 */
function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {
  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
      arrLength = array.length,
      othLength = other.length;

  if (arrLength != othLength && !(isPartial && othLength > arrLength)) {
    return false;
  }
  // Check that cyclic values are equal.
  var arrStacked = stack.get(array);
  var othStacked = stack.get(other);
  if (arrStacked && othStacked) {
    return arrStacked == other && othStacked == array;
  }
  var index = -1,
      result = true,
      seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;

  stack.set(array, other);
  stack.set(other, array);

  // Ignore non-index properties.
  while (++index < arrLength) {
    var arrValue = array[index],
        othValue = other[index];

    if (customizer) {
      var compared = isPartial
        ? customizer(othValue, arrValue, index, other, array, stack)
        : customizer(arrValue, othValue, index, array, other, stack);
    }
    if (compared !== undefined) {
      if (compared) {
        continue;
      }
      result = false;
      break;
    }
    // Recursively compare arrays (susceptible to call stack limits).
    if (seen) {
      if (!arraySome(other, function(othValue, othIndex) {
            if (!cacheHas(seen, othIndex) &&
                (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {
              return seen.push(othIndex);
            }
          })) {
        result = false;
        break;
      }
    } else if (!(
          arrValue === othValue ||
            equalFunc(arrValue, othValue, bitmask, customizer, stack)
        )) {
      result = false;
      break;
    }
  }
  stack['delete'](array);
  stack['delete'](other);
  return result;
}

module.exports = equalArrays;


/***/ }),

/***/ "a454":
/***/ (function(module, exports, __webpack_require__) {

var constant = __webpack_require__("72f0"),
    defineProperty = __webpack_require__("3b4a"),
    identity = __webpack_require__("cd9d");

/**
 * The base implementation of `setToString` without support for hot loop shorting.
 *
 * @private
 * @param {Function} func The function to modify.
 * @param {Function} string The `toString` result.
 * @returns {Function} Returns `func`.
 */
var baseSetToString = !defineProperty ? identity : function(func, string) {
  return defineProperty(func, 'toString', {
    'configurable': true,
    'enumerable': false,
    'value': constant(string),
    'writable': true
  });
};

module.exports = baseSetToString;


/***/ }),

/***/ "a524":
/***/ (function(module, exports, __webpack_require__) {

var getMapData = __webpack_require__("4245");

/**
 * Checks if a map value for `key` exists.
 *
 * @private
 * @name has
 * @memberOf MapCache
 * @param {string} key The key of the entry to check.
 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
 */
function mapCacheHas(key) {
  return getMapData(this, key).has(key);
}

module.exports = mapCacheHas;


/***/ }),

/***/ "a611":
/***/ (function(module, exports) {

// removeSubsets
// Given an array of nodes, remove any member that is contained by another.
exports.removeSubsets = function(nodes) {
	var idx = nodes.length, node, ancestor, replace;

	// Check if each node (or one of its ancestors) is already contained in the
	// array.
	while (--idx > -1) {
		node = ancestor = nodes[idx];

		// Temporarily remove the node under consideration
		nodes[idx] = null;
		replace = true;

		while (ancestor) {
			if (nodes.indexOf(ancestor) > -1) {
				replace = false;
				nodes.splice(idx, 1);
				break;
			}
			ancestor = ancestor.parent;
		}

		// If the node has been found to be unique, re-insert it.
		if (replace) {
			nodes[idx] = node;
		}
	}

	return nodes;
};

// Source: http://dom.spec.whatwg.org/#dom-node-comparedocumentposition
var POSITION = {
	DISCONNECTED: 1,
	PRECEDING: 2,
	FOLLOWING: 4,
	CONTAINS: 8,
	CONTAINED_BY: 16
};

// Compare the position of one node against another node in any other document.
// The return value is a bitmask with the following values:
//
// document order:
// > There is an ordering, document order, defined on all the nodes in the
// > document corresponding to the order in which the first character of the
// > XML representation of each node occurs in the XML representation of the
// > document after expansion of general entities. Thus, the document element
// > node will be the first node. Element nodes occur before their children.
// > Thus, document order orders element nodes in order of the occurrence of
// > their start-tag in the XML (after expansion of entities). The attribute
// > nodes of an element occur after the element and before its children. The
// > relative order of attribute nodes is implementation-dependent./
// Source:
// http://www.w3.org/TR/DOM-Level-3-Core/glossary.html#dt-document-order
//
// @argument {Node} nodaA The first node to use in the comparison
// @argument {Node} nodeB The second node to use in the comparison
//
// @return {Number} A bitmask describing the input nodes' relative position.
//         See http://dom.spec.whatwg.org/#dom-node-comparedocumentposition for
//         a description of these values.
var comparePos = exports.compareDocumentPosition = function(nodeA, nodeB) {
	var aParents = [];
	var bParents = [];
	var current, sharedParent, siblings, aSibling, bSibling, idx;

	if (nodeA === nodeB) {
		return 0;
	}

	current = nodeA;
	while (current) {
		aParents.unshift(current);
		current = current.parent;
	}
	current = nodeB;
	while (current) {
		bParents.unshift(current);
		current = current.parent;
	}

	idx = 0;
	while (aParents[idx] === bParents[idx]) {
		idx++;
	}

	if (idx === 0) {
		return POSITION.DISCONNECTED;
	}

	sharedParent = aParents[idx - 1];
	siblings = sharedParent.children;
	aSibling = aParents[idx];
	bSibling = bParents[idx];

	if (siblings.indexOf(aSibling) > siblings.indexOf(bSibling)) {
		if (sharedParent === nodeB) {
			return POSITION.FOLLOWING | POSITION.CONTAINED_BY;
		}
		return POSITION.FOLLOWING;
	} else {
		if (sharedParent === nodeA) {
			return POSITION.PRECEDING | POSITION.CONTAINS;
		}
		return POSITION.PRECEDING;
	}
};

// Sort an array of nodes based on their relative position in the document and
// remove any duplicate nodes. If the array contains nodes that do not belong
// to the same document, sort order is unspecified.
//
// @argument {Array} nodes Array of DOM nodes
//
// @returns {Array} collection of unique nodes, sorted in document order
exports.uniqueSort = function(nodes) {
	var idx = nodes.length, node, position;

	nodes = nodes.slice();

	while (--idx > -1) {
		node = nodes[idx];
		position = nodes.indexOf(node);
		if (position > -1 && position < idx) {
			nodes.splice(idx, 1);
		}
	}
	nodes.sort(function(a, b) {
		var relative = comparePos(a, b);
		if (relative & POSITION.PRECEDING) {
			return -1;
		} else if (relative & POSITION.FOLLOWING) {
			return 1;
		}
		return 0;
	});

	return nodes;
};


/***/ }),

/***/ "a738":
/***/ (function(module, exports, __webpack_require__) {

var copyArray = __webpack_require__("4359"),
    isIndex = __webpack_require__("c098");

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMin = Math.min;

/**
 * Reorder `array` according to the specified indexes where the element at
 * the first index is assigned as the first element, the element at
 * the second index is assigned as the second element, and so on.
 *
 * @private
 * @param {Array} array The array to reorder.
 * @param {Array} indexes The arranged array indexes.
 * @returns {Array} Returns `array`.
 */
function reorder(array, indexes) {
  var arrLength = array.length,
      length = nativeMin(indexes.length, arrLength),
      oldArray = copyArray(array);

  while (length--) {
    var index = indexes[length];
    array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;
  }
  return array;
}

module.exports = reorder;


/***/ }),

/***/ "a95b":
/***/ (function(module, exports, __webpack_require__) {

var ElementType = __webpack_require__("af98");
var isTag = exports.isTag = ElementType.isTag;

exports.testElement = function(options, element){
	for(var key in options){
		if(!options.hasOwnProperty(key));
		else if(key === "tag_name"){
			if(!isTag(element) || !options.tag_name(element.name)){
				return false;
			}
		} else if(key === "tag_type"){
			if(!options.tag_type(element.type)) return false;
		} else if(key === "tag_contains"){
			if(isTag(element) || !options.tag_contains(element.data)){
				return false;
			}
		} else if(!element.attribs || !options[key](element.attribs[key])){
			return false;
		}
	}
	return true;
};

var Checks = {
	tag_name: function(name){
		if(typeof name === "function"){
			return function(elem){ return isTag(elem) && name(elem.name); };
		} else if(name === "*"){
			return isTag;
		} else {
			return function(elem){ return isTag(elem) && elem.name === name; };
		}
	},
	tag_type: function(type){
		if(typeof type === "function"){
			return function(elem){ return type(elem.type); };
		} else {
			return function(elem){ return elem.type === type; };
		}
	},
	tag_contains: function(data){
		if(typeof data === "function"){
			return function(elem){ return !isTag(elem) && data(elem.data); };
		} else {
			return function(elem){ return !isTag(elem) && elem.data === data; };
		}
	}
};

function getAttribCheck(attrib, value){
	if(typeof value === "function"){
		return function(elem){ return elem.attribs && value(elem.attribs[attrib]); };
	} else {
		return function(elem){ return elem.attribs && elem.attribs[attrib] === value; };
	}
}

function combineFuncs(a, b){
	return function(elem){
		return a(elem) || b(elem);
	};
}

exports.getElements = function(options, element, recurse, limit){
	var funcs = Object.keys(options).map(function(key){
		var value = options[key];
		return key in Checks ? Checks[key](value) : getAttribCheck(key, value);
	});

	return funcs.length === 0 ? [] : this.filter(
		funcs.reduce(combineFuncs),
		element, recurse, limit
	);
};

exports.getElementById = function(id, element, recurse){
	if(!Array.isArray(element)) element = [element];
	return this.findOne(getAttribCheck("id", id), element, recurse !== false);
};

exports.getElementsByTagName = function(name, element, recurse, limit){
	return this.filter(Checks.tag_name(name), element, recurse, limit);
};

exports.getElementsByTagType = function(type, element, recurse, limit){
	return this.filter(Checks.tag_type(type), element, recurse, limit);
};


/***/ }),

/***/ "a994":
/***/ (function(module, exports, __webpack_require__) {

var baseGetAllKeys = __webpack_require__("7d1f"),
    getSymbols = __webpack_require__("32f4"),
    keys = __webpack_require__("ec69");

/**
 * Creates an array of own enumerable property names and symbols of `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names and symbols.
 */
function getAllKeys(object) {
  return baseGetAllKeys(object, keys, getSymbols);
}

module.exports = getAllKeys;


/***/ }),

/***/ "a9b9":
/***/ (function(module, exports, __webpack_require__) {

var copyObject = __webpack_require__("8eeb"),
    createAssigner = __webpack_require__("2ec1"),
    keysIn = __webpack_require__("9934");

/**
 * This method is like `_.assign` except that it iterates over own and
 * inherited source properties.
 *
 * **Note:** This method mutates `object`.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @alias extend
 * @category Object
 * @param {Object} object The destination object.
 * @param {...Object} [sources] The source objects.
 * @returns {Object} Returns `object`.
 * @see _.assign
 * @example
 *
 * function Foo() {
 *   this.a = 1;
 * }
 *
 * function Bar() {
 *   this.c = 3;
 * }
 *
 * Foo.prototype.b = 2;
 * Bar.prototype.d = 4;
 *
 * _.assignIn({ 'a': 0 }, new Foo, new Bar);
 * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 }
 */
var assignIn = createAssigner(function(object, source) {
  copyObject(source, keysIn(source), object);
});

module.exports = assignIn;


/***/ }),

/***/ "ab74":
/***/ (function(module, exports, __webpack_require__) {

var composeArgs = __webpack_require__("cb84"),
    composeArgsRight = __webpack_require__("30c8"),
    replaceHolders = __webpack_require__("e8a9");

/** Used as the internal argument placeholder. */
var PLACEHOLDER = '__lodash_placeholder__';

/** Used to compose bitmasks for function metadata. */
var WRAP_BIND_FLAG = 1,
    WRAP_BIND_KEY_FLAG = 2,
    WRAP_CURRY_BOUND_FLAG = 4,
    WRAP_CURRY_FLAG = 8,
    WRAP_ARY_FLAG = 128,
    WRAP_REARG_FLAG = 256;

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMin = Math.min;

/**
 * Merges the function metadata of `source` into `data`.
 *
 * Merging metadata reduces the number of wrappers used to invoke a function.
 * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`
 * may be applied regardless of execution order. Methods like `_.ary` and
 * `_.rearg` modify function arguments, making the order in which they are
 * executed important, preventing the merging of metadata. However, we make
 * an exception for a safe combined case where curried functions have `_.ary`
 * and or `_.rearg` applied.
 *
 * @private
 * @param {Array} data The destination metadata.
 * @param {Array} source The source metadata.
 * @returns {Array} Returns `data`.
 */
function mergeData(data, source) {
  var bitmask = data[1],
      srcBitmask = source[1],
      newBitmask = bitmask | srcBitmask,
      isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG);

  var isCombo =
    ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) ||
    ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) ||
    ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG));

  // Exit early if metadata can't be merged.
  if (!(isCommon || isCombo)) {
    return data;
  }
  // Use source `thisArg` if available.
  if (srcBitmask & WRAP_BIND_FLAG) {
    data[2] = source[2];
    // Set when currying a bound function.
    newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG;
  }
  // Compose partial arguments.
  var value = source[3];
  if (value) {
    var partials = data[3];
    data[3] = partials ? composeArgs(partials, value, source[4]) : value;
    data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4];
  }
  // Compose partial right arguments.
  value = source[5];
  if (value) {
    partials = data[5];
    data[5] = partials ? composeArgsRight(partials, value, source[6]) : value;
    data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6];
  }
  // Use source `argPos` if available.
  value = source[7];
  if (value) {
    data[7] = value;
  }
  // Use source `ary` if it's smaller.
  if (srcBitmask & WRAP_ARY_FLAG) {
    data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);
  }
  // Use source `arity` if one is not provided.
  if (data[9] == null) {
    data[9] = source[9];
  }
  // Use source `func` and merge bitmasks.
  data[0] = source[0];
  data[1] = newBitmask;

  return data;
}

module.exports = mergeData;


/***/ }),

/***/ "ac41":
/***/ (function(module, exports) {

/**
 * Converts `set` to an array of its values.
 *
 * @private
 * @param {Object} set The set to convert.
 * @returns {Array} Returns the values.
 */
function setToArray(set) {
  var index = -1,
      result = Array(set.size);

  set.forEach(function(value) {
    result[++index] = value;
  });
  return result;
}

module.exports = setToArray;


/***/ }),

/***/ "ad71":
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(global, process) {// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.



/*<replacement>*/

var pna = __webpack_require__("966d");
/*</replacement>*/

module.exports = Readable;

/*<replacement>*/
var isArray = __webpack_require__("e3db");
/*</replacement>*/

/*<replacement>*/
var Duplex;
/*</replacement>*/

Readable.ReadableState = ReadableState;

/*<replacement>*/
var EE = __webpack_require__("faa1").EventEmitter;

var EElistenerCount = function (emitter, type) {
  return emitter.listeners(type).length;
};
/*</replacement>*/

/*<replacement>*/
var Stream = __webpack_require__("429b");
/*</replacement>*/

/*<replacement>*/

var Buffer = __webpack_require__("8707").Buffer;
var OurUint8Array = function () {};
function _uint8ArrayToBuffer(chunk) {
  return Buffer.from(chunk);
}
function _isUint8Array(obj) {
  return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;
}

/*</replacement>*/

/*<replacement>*/
var util = Object.create(__webpack_require__("3a7c"));
util.inherits = __webpack_require__("3fb5");
/*</replacement>*/

/*<replacement>*/
var debugUtil = __webpack_require__(1);
var debug = void 0;
if (debugUtil && debugUtil.debuglog) {
  debug = debugUtil.debuglog('stream');
} else {
  debug = function () {};
}
/*</replacement>*/

var BufferList = __webpack_require__("5e1a");
var destroyImpl = __webpack_require__("4681");
var StringDecoder;

util.inherits(Readable, Stream);

var kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];

function prependListener(emitter, event, fn) {
  // Sadly this is not cacheable as some libraries bundle their own
  // event emitter implementation with them.
  if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn);

  // This is a hack to make sure that our error handler is attached before any
  // userland ones.  NEVER DO THIS. This is here only because this code needs
  // to continue to work with older versions of Node.js that do not include
  // the prependListener() method. The goal is to eventually remove this hack.
  if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];
}

function ReadableState(options, stream) {
  Duplex = Duplex || __webpack_require__("b19a");

  options = options || {};

  // Duplex streams are both readable and writable, but share
  // the same options object.
  // However, some cases require setting options to different
  // values for the readable and the writable sides of the duplex stream.
  // These options can be provided separately as readableXXX and writableXXX.
  var isDuplex = stream instanceof Duplex;

  // object stream flag. Used to make read(n) ignore n and to
  // make all the buffer merging and length checks go away
  this.objectMode = !!options.objectMode;

  if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode;

  // the point at which it stops calling _read() to fill the buffer
  // Note: 0 is a valid value, means "don't call _read preemptively ever"
  var hwm = options.highWaterMark;
  var readableHwm = options.readableHighWaterMark;
  var defaultHwm = this.objectMode ? 16 : 16 * 1024;

  if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (readableHwm || readableHwm === 0)) this.highWaterMark = readableHwm;else this.highWaterMark = defaultHwm;

  // cast to ints.
  this.highWaterMark = Math.floor(this.highWaterMark);

  // A linked list is used to store data chunks instead of an array because the
  // linked list can remove elements from the beginning faster than
  // array.shift()
  this.buffer = new BufferList();
  this.length = 0;
  this.pipes = null;
  this.pipesCount = 0;
  this.flowing = null;
  this.ended = false;
  this.endEmitted = false;
  this.reading = false;

  // a flag to be able to tell if the event 'readable'/'data' is emitted
  // immediately, or on a later tick.  We set this to true at first, because
  // any actions that shouldn't happen until "later" should generally also
  // not happen before the first read call.
  this.sync = true;

  // whenever we return null, then we set a flag to say
  // that we're awaiting a 'readable' event emission.
  this.needReadable = false;
  this.emittedReadable = false;
  this.readableListening = false;
  this.resumeScheduled = false;

  // has it been destroyed
  this.destroyed = false;

  // Crypto is kind of old and crusty.  Historically, its default string
  // encoding is 'binary' so we have to make this configurable.
  // Everything else in the universe uses 'utf8', though.
  this.defaultEncoding = options.defaultEncoding || 'utf8';

  // the number of writers that are awaiting a drain event in .pipe()s
  this.awaitDrain = 0;

  // if true, a maybeReadMore has been scheduled
  this.readingMore = false;

  this.decoder = null;
  this.encoding = null;
  if (options.encoding) {
    if (!StringDecoder) StringDecoder = __webpack_require__("7d72").StringDecoder;
    this.decoder = new StringDecoder(options.encoding);
    this.encoding = options.encoding;
  }
}

function Readable(options) {
  Duplex = Duplex || __webpack_require__("b19a");

  if (!(this instanceof Readable)) return new Readable(options);

  this._readableState = new ReadableState(options, this);

  // legacy
  this.readable = true;

  if (options) {
    if (typeof options.read === 'function') this._read = options.read;

    if (typeof options.destroy === 'function') this._destroy = options.destroy;
  }

  Stream.call(this);
}

Object.defineProperty(Readable.prototype, 'destroyed', {
  get: function () {
    if (this._readableState === undefined) {
      return false;
    }
    return this._readableState.destroyed;
  },
  set: function (value) {
    // we ignore the value if the stream
    // has not been initialized yet
    if (!this._readableState) {
      return;
    }

    // backward compatibility, the user is explicitly
    // managing destroyed
    this._readableState.destroyed = value;
  }
});

Readable.prototype.destroy = destroyImpl.destroy;
Readable.prototype._undestroy = destroyImpl.undestroy;
Readable.prototype._destroy = function (err, cb) {
  this.push(null);
  cb(err);
};

// Manually shove something into the read() buffer.
// This returns true if the highWaterMark has not been hit yet,
// similar to how Writable.write() returns true if you should
// write() some more.
Readable.prototype.push = function (chunk, encoding) {
  var state = this._readableState;
  var skipChunkCheck;

  if (!state.objectMode) {
    if (typeof chunk === 'string') {
      encoding = encoding || state.defaultEncoding;
      if (encoding !== state.encoding) {
        chunk = Buffer.from(chunk, encoding);
        encoding = '';
      }
      skipChunkCheck = true;
    }
  } else {
    skipChunkCheck = true;
  }

  return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);
};

// Unshift should *always* be something directly out of read()
Readable.prototype.unshift = function (chunk) {
  return readableAddChunk(this, chunk, null, true, false);
};

function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {
  var state = stream._readableState;
  if (chunk === null) {
    state.reading = false;
    onEofChunk(stream, state);
  } else {
    var er;
    if (!skipChunkCheck) er = chunkInvalid(state, chunk);
    if (er) {
      stream.emit('error', er);
    } else if (state.objectMode || chunk && chunk.length > 0) {
      if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {
        chunk = _uint8ArrayToBuffer(chunk);
      }

      if (addToFront) {
        if (state.endEmitted) stream.emit('error', new Error('stream.unshift() after end event'));else addChunk(stream, state, chunk, true);
      } else if (state.ended) {
        stream.emit('error', new Error('stream.push() after EOF'));
      } else {
        state.reading = false;
        if (state.decoder && !encoding) {
          chunk = state.decoder.write(chunk);
          if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);
        } else {
          addChunk(stream, state, chunk, false);
        }
      }
    } else if (!addToFront) {
      state.reading = false;
    }
  }

  return needMoreData(state);
}

function addChunk(stream, state, chunk, addToFront) {
  if (state.flowing && state.length === 0 && !state.sync) {
    stream.emit('data', chunk);
    stream.read(0);
  } else {
    // update the buffer info.
    state.length += state.objectMode ? 1 : chunk.length;
    if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);

    if (state.needReadable) emitReadable(stream);
  }
  maybeReadMore(stream, state);
}

function chunkInvalid(state, chunk) {
  var er;
  if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {
    er = new TypeError('Invalid non-string/buffer chunk');
  }
  return er;
}

// if it's past the high water mark, we can push in some more.
// Also, if we have no data yet, we can stand some
// more bytes.  This is to work around cases where hwm=0,
// such as the repl.  Also, if the push() triggered a
// readable event, and the user called read(largeNumber) such that
// needReadable was set, then we ought to push more, so that another
// 'readable' event will be triggered.
function needMoreData(state) {
  return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0);
}

Readable.prototype.isPaused = function () {
  return this._readableState.flowing === false;
};

// backwards compatibility.
Readable.prototype.setEncoding = function (enc) {
  if (!StringDecoder) StringDecoder = __webpack_require__("7d72").StringDecoder;
  this._readableState.decoder = new StringDecoder(enc);
  this._readableState.encoding = enc;
  return this;
};

// Don't raise the hwm > 8MB
var MAX_HWM = 0x800000;
function computeNewHighWaterMark(n) {
  if (n >= MAX_HWM) {
    n = MAX_HWM;
  } else {
    // Get the next highest power of 2 to prevent increasing hwm excessively in
    // tiny amounts
    n--;
    n |= n >>> 1;
    n |= n >>> 2;
    n |= n >>> 4;
    n |= n >>> 8;
    n |= n >>> 16;
    n++;
  }
  return n;
}

// This function is designed to be inlinable, so please take care when making
// changes to the function body.
function howMuchToRead(n, state) {
  if (n <= 0 || state.length === 0 && state.ended) return 0;
  if (state.objectMode) return 1;
  if (n !== n) {
    // Only flow one buffer at a time
    if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;
  }
  // If we're asking for more than the current hwm, then raise the hwm.
  if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);
  if (n <= state.length) return n;
  // Don't have enough
  if (!state.ended) {
    state.needReadable = true;
    return 0;
  }
  return state.length;
}

// you can override either this method, or the async _read(n) below.
Readable.prototype.read = function (n) {
  debug('read', n);
  n = parseInt(n, 10);
  var state = this._readableState;
  var nOrig = n;

  if (n !== 0) state.emittedReadable = false;

  // if we're doing read(0) to trigger a readable event, but we
  // already have a bunch of data in the buffer, then just trigger
  // the 'readable' event and move on.
  if (n === 0 && state.needReadable && (state.length >= state.highWaterMark || state.ended)) {
    debug('read: emitReadable', state.length, state.ended);
    if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);
    return null;
  }

  n = howMuchToRead(n, state);

  // if we've ended, and we're now clear, then finish it up.
  if (n === 0 && state.ended) {
    if (state.length === 0) endReadable(this);
    return null;
  }

  // All the actual chunk generation logic needs to be
  // *below* the call to _read.  The reason is that in certain
  // synthetic stream cases, such as passthrough streams, _read
  // may be a completely synchronous operation which may change
  // the state of the read buffer, providing enough data when
  // before there was *not* enough.
  //
  // So, the steps are:
  // 1. Figure out what the state of things will be after we do
  // a read from the buffer.
  //
  // 2. If that resulting state will trigger a _read, then call _read.
  // Note that this may be asynchronous, or synchronous.  Yes, it is
  // deeply ugly to write APIs this way, but that still doesn't mean
  // that the Readable class should behave improperly, as streams are
  // designed to be sync/async agnostic.
  // Take note if the _read call is sync or async (ie, if the read call
  // has returned yet), so that we know whether or not it's safe to emit
  // 'readable' etc.
  //
  // 3. Actually pull the requested chunks out of the buffer and return.

  // if we need a readable event, then we need to do some reading.
  var doRead = state.needReadable;
  debug('need readable', doRead);

  // if we currently have less than the highWaterMark, then also read some
  if (state.length === 0 || state.length - n < state.highWaterMark) {
    doRead = true;
    debug('length less than watermark', doRead);
  }

  // however, if we've ended, then there's no point, and if we're already
  // reading, then it's unnecessary.
  if (state.ended || state.reading) {
    doRead = false;
    debug('reading or ended', doRead);
  } else if (doRead) {
    debug('do read');
    state.reading = true;
    state.sync = true;
    // if the length is currently zero, then we *need* a readable event.
    if (state.length === 0) state.needReadable = true;
    // call internal read method
    this._read(state.highWaterMark);
    state.sync = false;
    // If _read pushed data synchronously, then `reading` will be false,
    // and we need to re-evaluate how much data we can return to the user.
    if (!state.reading) n = howMuchToRead(nOrig, state);
  }

  var ret;
  if (n > 0) ret = fromList(n, state);else ret = null;

  if (ret === null) {
    state.needReadable = true;
    n = 0;
  } else {
    state.length -= n;
  }

  if (state.length === 0) {
    // If we have nothing in the buffer, then we want to know
    // as soon as we *do* get something into the buffer.
    if (!state.ended) state.needReadable = true;

    // If we tried to read() past the EOF, then emit end on the next tick.
    if (nOrig !== n && state.ended) endReadable(this);
  }

  if (ret !== null) this.emit('data', ret);

  return ret;
};

function onEofChunk(stream, state) {
  if (state.ended) return;
  if (state.decoder) {
    var chunk = state.decoder.end();
    if (chunk && chunk.length) {
      state.buffer.push(chunk);
      state.length += state.objectMode ? 1 : chunk.length;
    }
  }
  state.ended = true;

  // emit 'readable' now to make sure it gets picked up.
  emitReadable(stream);
}

// Don't emit readable right away in sync mode, because this can trigger
// another read() call => stack overflow.  This way, it might trigger
// a nextTick recursion warning, but that's not so bad.
function emitReadable(stream) {
  var state = stream._readableState;
  state.needReadable = false;
  if (!state.emittedReadable) {
    debug('emitReadable', state.flowing);
    state.emittedReadable = true;
    if (state.sync) pna.nextTick(emitReadable_, stream);else emitReadable_(stream);
  }
}

function emitReadable_(stream) {
  debug('emit readable');
  stream.emit('readable');
  flow(stream);
}

// at this point, the user has presumably seen the 'readable' event,
// and called read() to consume some data.  that may have triggered
// in turn another _read(n) call, in which case reading = true if
// it's in progress.
// However, if we're not ended, or reading, and the length < hwm,
// then go ahead and try to read some more preemptively.
function maybeReadMore(stream, state) {
  if (!state.readingMore) {
    state.readingMore = true;
    pna.nextTick(maybeReadMore_, stream, state);
  }
}

function maybeReadMore_(stream, state) {
  var len = state.length;
  while (!state.reading && !state.flowing && !state.ended && state.length < state.highWaterMark) {
    debug('maybeReadMore read 0');
    stream.read(0);
    if (len === state.length)
      // didn't get any data, stop spinning.
      break;else len = state.length;
  }
  state.readingMore = false;
}

// abstract method.  to be overridden in specific implementation classes.
// call cb(er, data) where data is <= n in length.
// for virtual (non-string, non-buffer) streams, "length" is somewhat
// arbitrary, and perhaps not very meaningful.
Readable.prototype._read = function (n) {
  this.emit('error', new Error('_read() is not implemented'));
};

Readable.prototype.pipe = function (dest, pipeOpts) {
  var src = this;
  var state = this._readableState;

  switch (state.pipesCount) {
    case 0:
      state.pipes = dest;
      break;
    case 1:
      state.pipes = [state.pipes, dest];
      break;
    default:
      state.pipes.push(dest);
      break;
  }
  state.pipesCount += 1;
  debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);

  var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;

  var endFn = doEnd ? onend : unpipe;
  if (state.endEmitted) pna.nextTick(endFn);else src.once('end', endFn);

  dest.on('unpipe', onunpipe);
  function onunpipe(readable, unpipeInfo) {
    debug('onunpipe');
    if (readable === src) {
      if (unpipeInfo && unpipeInfo.hasUnpiped === false) {
        unpipeInfo.hasUnpiped = true;
        cleanup();
      }
    }
  }

  function onend() {
    debug('onend');
    dest.end();
  }

  // when the dest drains, it reduces the awaitDrain counter
  // on the source.  This would be more elegant with a .once()
  // handler in flow(), but adding and removing repeatedly is
  // too slow.
  var ondrain = pipeOnDrain(src);
  dest.on('drain', ondrain);

  var cleanedUp = false;
  function cleanup() {
    debug('cleanup');
    // cleanup event handlers once the pipe is broken
    dest.removeListener('close', onclose);
    dest.removeListener('finish', onfinish);
    dest.removeListener('drain', ondrain);
    dest.removeListener('error', onerror);
    dest.removeListener('unpipe', onunpipe);
    src.removeListener('end', onend);
    src.removeListener('end', unpipe);
    src.removeListener('data', ondata);

    cleanedUp = true;

    // if the reader is waiting for a drain event from this
    // specific writer, then it would cause it to never start
    // flowing again.
    // So, if this is awaiting a drain, then we just call it now.
    // If we don't know, then assume that we are waiting for one.
    if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();
  }

  // If the user pushes more data while we're writing to dest then we'll end up
  // in ondata again. However, we only want to increase awaitDrain once because
  // dest will only emit one 'drain' event for the multiple writes.
  // => Introduce a guard on increasing awaitDrain.
  var increasedAwaitDrain = false;
  src.on('data', ondata);
  function ondata(chunk) {
    debug('ondata');
    increasedAwaitDrain = false;
    var ret = dest.write(chunk);
    if (false === ret && !increasedAwaitDrain) {
      // If the user unpiped during `dest.write()`, it is possible
      // to get stuck in a permanently paused state if that write
      // also returned false.
      // => Check whether `dest` is still a piping destination.
      if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {
        debug('false write response, pause', src._readableState.awaitDrain);
        src._readableState.awaitDrain++;
        increasedAwaitDrain = true;
      }
      src.pause();
    }
  }

  // if the dest has an error, then stop piping into it.
  // however, don't suppress the throwing behavior for this.
  function onerror(er) {
    debug('onerror', er);
    unpipe();
    dest.removeListener('error', onerror);
    if (EElistenerCount(dest, 'error') === 0) dest.emit('error', er);
  }

  // Make sure our error handler is attached before userland ones.
  prependListener(dest, 'error', onerror);

  // Both close and finish should trigger unpipe, but only once.
  function onclose() {
    dest.removeListener('finish', onfinish);
    unpipe();
  }
  dest.once('close', onclose);
  function onfinish() {
    debug('onfinish');
    dest.removeListener('close', onclose);
    unpipe();
  }
  dest.once('finish', onfinish);

  function unpipe() {
    debug('unpipe');
    src.unpipe(dest);
  }

  // tell the dest that it's being piped to
  dest.emit('pipe', src);

  // start the flow if it hasn't been started already.
  if (!state.flowing) {
    debug('pipe resume');
    src.resume();
  }

  return dest;
};

function pipeOnDrain(src) {
  return function () {
    var state = src._readableState;
    debug('pipeOnDrain', state.awaitDrain);
    if (state.awaitDrain) state.awaitDrain--;
    if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {
      state.flowing = true;
      flow(src);
    }
  };
}

Readable.prototype.unpipe = function (dest) {
  var state = this._readableState;
  var unpipeInfo = { hasUnpiped: false };

  // if we're not piping anywhere, then do nothing.
  if (state.pipesCount === 0) return this;

  // just one destination.  most common case.
  if (state.pipesCount === 1) {
    // passed in one, but it's not the right one.
    if (dest && dest !== state.pipes) return this;

    if (!dest) dest = state.pipes;

    // got a match.
    state.pipes = null;
    state.pipesCount = 0;
    state.flowing = false;
    if (dest) dest.emit('unpipe', this, unpipeInfo);
    return this;
  }

  // slow case. multiple pipe destinations.

  if (!dest) {
    // remove all.
    var dests = state.pipes;
    var len = state.pipesCount;
    state.pipes = null;
    state.pipesCount = 0;
    state.flowing = false;

    for (var i = 0; i < len; i++) {
      dests[i].emit('unpipe', this, unpipeInfo);
    }return this;
  }

  // try to find the right one.
  var index = indexOf(state.pipes, dest);
  if (index === -1) return this;

  state.pipes.splice(index, 1);
  state.pipesCount -= 1;
  if (state.pipesCount === 1) state.pipes = state.pipes[0];

  dest.emit('unpipe', this, unpipeInfo);

  return this;
};

// set up data events if they are asked for
// Ensure readable listeners eventually get something
Readable.prototype.on = function (ev, fn) {
  var res = Stream.prototype.on.call(this, ev, fn);

  if (ev === 'data') {
    // Start flowing on next tick if stream isn't explicitly paused
    if (this._readableState.flowing !== false) this.resume();
  } else if (ev === 'readable') {
    var state = this._readableState;
    if (!state.endEmitted && !state.readableListening) {
      state.readableListening = state.needReadable = true;
      state.emittedReadable = false;
      if (!state.reading) {
        pna.nextTick(nReadingNextTick, this);
      } else if (state.length) {
        emitReadable(this);
      }
    }
  }

  return res;
};
Readable.prototype.addListener = Readable.prototype.on;

function nReadingNextTick(self) {
  debug('readable nexttick read 0');
  self.read(0);
}

// pause() and resume() are remnants of the legacy readable stream API
// If the user uses them, then switch into old mode.
Readable.prototype.resume = function () {
  var state = this._readableState;
  if (!state.flowing) {
    debug('resume');
    state.flowing = true;
    resume(this, state);
  }
  return this;
};

function resume(stream, state) {
  if (!state.resumeScheduled) {
    state.resumeScheduled = true;
    pna.nextTick(resume_, stream, state);
  }
}

function resume_(stream, state) {
  if (!state.reading) {
    debug('resume read 0');
    stream.read(0);
  }

  state.resumeScheduled = false;
  state.awaitDrain = 0;
  stream.emit('resume');
  flow(stream);
  if (state.flowing && !state.reading) stream.read(0);
}

Readable.prototype.pause = function () {
  debug('call pause flowing=%j', this._readableState.flowing);
  if (false !== this._readableState.flowing) {
    debug('pause');
    this._readableState.flowing = false;
    this.emit('pause');
  }
  return this;
};

function flow(stream) {
  var state = stream._readableState;
  debug('flow', state.flowing);
  while (state.flowing && stream.read() !== null) {}
}

// wrap an old-style stream as the async data source.
// This is *not* part of the readable stream interface.
// It is an ugly unfortunate mess of history.
Readable.prototype.wrap = function (stream) {
  var _this = this;

  var state = this._readableState;
  var paused = false;

  stream.on('end', function () {
    debug('wrapped end');
    if (state.decoder && !state.ended) {
      var chunk = state.decoder.end();
      if (chunk && chunk.length) _this.push(chunk);
    }

    _this.push(null);
  });

  stream.on('data', function (chunk) {
    debug('wrapped data');
    if (state.decoder) chunk = state.decoder.write(chunk);

    // don't skip over falsy values in objectMode
    if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;

    var ret = _this.push(chunk);
    if (!ret) {
      paused = true;
      stream.pause();
    }
  });

  // proxy all the other methods.
  // important when wrapping filters and duplexes.
  for (var i in stream) {
    if (this[i] === undefined && typeof stream[i] === 'function') {
      this[i] = function (method) {
        return function () {
          return stream[method].apply(stream, arguments);
        };
      }(i);
    }
  }

  // proxy certain important events.
  for (var n = 0; n < kProxyEvents.length; n++) {
    stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n]));
  }

  // when we try to consume some more bytes, simply unpause the
  // underlying stream.
  this._read = function (n) {
    debug('wrapped _read', n);
    if (paused) {
      paused = false;
      stream.resume();
    }
  };

  return this;
};

Object.defineProperty(Readable.prototype, 'readableHighWaterMark', {
  // making it explicit this property is not enumerable
  // because otherwise some prototype manipulation in
  // userland will fail
  enumerable: false,
  get: function () {
    return this._readableState.highWaterMark;
  }
});

// exposed for testing purposes only.
Readable._fromList = fromList;

// Pluck off n bytes from an array of buffers.
// Length is the combined lengths of all the buffers in the list.
// This function is designed to be inlinable, so please take care when making
// changes to the function body.
function fromList(n, state) {
  // nothing buffered
  if (state.length === 0) return null;

  var ret;
  if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {
    // read it all, truncate the list
    if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.head.data;else ret = state.buffer.concat(state.length);
    state.buffer.clear();
  } else {
    // read part of list
    ret = fromListPartial(n, state.buffer, state.decoder);
  }

  return ret;
}

// Extracts only enough buffered data to satisfy the amount requested.
// This function is designed to be inlinable, so please take care when making
// changes to the function body.
function fromListPartial(n, list, hasStrings) {
  var ret;
  if (n < list.head.data.length) {
    // slice is the same for buffers and strings
    ret = list.head.data.slice(0, n);
    list.head.data = list.head.data.slice(n);
  } else if (n === list.head.data.length) {
    // first chunk is a perfect match
    ret = list.shift();
  } else {
    // result spans more than one buffer
    ret = hasStrings ? copyFromBufferString(n, list) : copyFromBuffer(n, list);
  }
  return ret;
}

// Copies a specified amount of characters from the list of buffered data
// chunks.
// This function is designed to be inlinable, so please take care when making
// changes to the function body.
function copyFromBufferString(n, list) {
  var p = list.head;
  var c = 1;
  var ret = p.data;
  n -= ret.length;
  while (p = p.next) {
    var str = p.data;
    var nb = n > str.length ? str.length : n;
    if (nb === str.length) ret += str;else ret += str.slice(0, n);
    n -= nb;
    if (n === 0) {
      if (nb === str.length) {
        ++c;
        if (p.next) list.head = p.next;else list.head = list.tail = null;
      } else {
        list.head = p;
        p.data = str.slice(nb);
      }
      break;
    }
    ++c;
  }
  list.length -= c;
  return ret;
}

// Copies a specified amount of bytes from the list of buffered data chunks.
// This function is designed to be inlinable, so please take care when making
// changes to the function body.
function copyFromBuffer(n, list) {
  var ret = Buffer.allocUnsafe(n);
  var p = list.head;
  var c = 1;
  p.data.copy(ret);
  n -= p.data.length;
  while (p = p.next) {
    var buf = p.data;
    var nb = n > buf.length ? buf.length : n;
    buf.copy(ret, ret.length - n, 0, nb);
    n -= nb;
    if (n === 0) {
      if (nb === buf.length) {
        ++c;
        if (p.next) list.head = p.next;else list.head = list.tail = null;
      } else {
        list.head = p;
        p.data = buf.slice(nb);
      }
      break;
    }
    ++c;
  }
  list.length -= c;
  return ret;
}

function endReadable(stream) {
  var state = stream._readableState;

  // If we get here before consuming all the bytes, then that is a
  // bug in node.  Should never happen.
  if (state.length > 0) throw new Error('"endReadable()" called on non-empty stream');

  if (!state.endEmitted) {
    state.ended = true;
    pna.nextTick(endReadableNT, state, stream);
  }
}

function endReadableNT(state, stream) {
  // Check that we didn't get one last unshift.
  if (!state.endEmitted && state.length === 0) {
    state.endEmitted = true;
    stream.readable = false;
    stream.emit('end');
  }
}

function indexOf(xs, x) {
  for (var i = 0, l = xs.length; i < l; i++) {
    if (xs[i] === x) return i;
  }
  return -1;
}
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("c8ba"), __webpack_require__("f28c")))

/***/ }),

/***/ "af98":
/***/ (function(module, exports) {

//Types of elements found in the DOM
module.exports = {
	Text: "text", //Text
	Directive: "directive", //<? ... ?>
	Comment: "comment", //<!-- ... -->
	Script: "script", //<script> tags
	Style: "style", //<style> tags
	Tag: "tag", //Any tag
	CDATA: "cdata", //<![CDATA[ ... ]]>
	Doctype: "doctype",

	isTag: function(elem){
		return elem.type === "tag" || elem.type === "script" || elem.type === "style";
	}
};


/***/ }),

/***/ "b047":
/***/ (function(module, exports) {

/**
 * The base implementation of `_.unary` without support for storing metadata.
 *
 * @private
 * @param {Function} func The function to cap arguments for.
 * @returns {Function} Returns the new capped function.
 */
function baseUnary(func) {
  return function(value) {
    return func(value);
  };
}

module.exports = baseUnary;


/***/ }),

/***/ "b19a":
/***/ (function(module, exports, __webpack_require__) {

"use strict";
// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.

// a duplex stream is just a stream that is both readable and writable.
// Since JS doesn't have multiple prototypal inheritance, this class
// prototypally inherits from Readable, and then parasitically from
// Writable.



/*<replacement>*/

var pna = __webpack_require__("966d");
/*</replacement>*/

/*<replacement>*/
var objectKeys = Object.keys || function (obj) {
  var keys = [];
  for (var key in obj) {
    keys.push(key);
  }return keys;
};
/*</replacement>*/

module.exports = Duplex;

/*<replacement>*/
var util = Object.create(__webpack_require__("3a7c"));
util.inherits = __webpack_require__("3fb5");
/*</replacement>*/

var Readable = __webpack_require__("ad71");
var Writable = __webpack_require__("dc14");

util.inherits(Duplex, Readable);

{
  // avoid scope creep, the keys array can then be collected
  var keys = objectKeys(Writable.prototype);
  for (var v = 0; v < keys.length; v++) {
    var method = keys[v];
    if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];
  }
}

function Duplex(options) {
  if (!(this instanceof Duplex)) return new Duplex(options);

  Readable.call(this, options);
  Writable.call(this, options);

  if (options && options.readable === false) this.readable = false;

  if (options && options.writable === false) this.writable = false;

  this.allowHalfOpen = true;
  if (options && options.allowHalfOpen === false) this.allowHalfOpen = false;

  this.once('end', onend);
}

Object.defineProperty(Duplex.prototype, 'writableHighWaterMark', {
  // making it explicit this property is not enumerable
  // because otherwise some prototype manipulation in
  // userland will fail
  enumerable: false,
  get: function () {
    return this._writableState.highWaterMark;
  }
});

// the no-half-open enforcer
function onend() {
  // if we allow half-open state, or if the writable side ended,
  // then we're ok.
  if (this.allowHalfOpen || this._writableState.ended) return;

  // no more data can be written.
  // But allow more writes to happen in this tick.
  pna.nextTick(onEndNT, this);
}

function onEndNT(self) {
  self.end();
}

Object.defineProperty(Duplex.prototype, 'destroyed', {
  get: function () {
    if (this._readableState === undefined || this._writableState === undefined) {
      return false;
    }
    return this._readableState.destroyed && this._writableState.destroyed;
  },
  set: function (value) {
    // we ignore the value if the stream
    // has not been initialized yet
    if (this._readableState === undefined || this._writableState === undefined) {
      return;
    }

    // backward compatibility, the user is explicitly
    // managing destroyed
    this._readableState.destroyed = value;
    this._writableState.destroyed = value;
  }
});

Duplex.prototype._destroy = function (err, cb) {
  this.push(null);
  this.end();

  pna.nextTick(cb, err);
};

/***/ }),

/***/ "b1dc":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Preprocessor = __webpack_require__("dd9d"),
    UNICODE = __webpack_require__("5182"),
    neTree = __webpack_require__("a1af");

//Aliases
var $ = UNICODE.CODE_POINTS,
    $$ = UNICODE.CODE_POINT_SEQUENCES;

//Replacement code points for numeric entities
var NUMERIC_ENTITY_REPLACEMENTS = {
    0x00: 0xFFFD, 0x0D: 0x000D, 0x80: 0x20AC, 0x81: 0x0081, 0x82: 0x201A, 0x83: 0x0192, 0x84: 0x201E,
    0x85: 0x2026, 0x86: 0x2020, 0x87: 0x2021, 0x88: 0x02C6, 0x89: 0x2030, 0x8A: 0x0160, 0x8B: 0x2039,
    0x8C: 0x0152, 0x8D: 0x008D, 0x8E: 0x017D, 0x8F: 0x008F, 0x90: 0x0090, 0x91: 0x2018, 0x92: 0x2019,
    0x93: 0x201C, 0x94: 0x201D, 0x95: 0x2022, 0x96: 0x2013, 0x97: 0x2014, 0x98: 0x02DC, 0x99: 0x2122,
    0x9A: 0x0161, 0x9B: 0x203A, 0x9C: 0x0153, 0x9D: 0x009D, 0x9E: 0x017E, 0x9F: 0x0178
};

// Named entity tree flags
var HAS_DATA_FLAG = 1 << 0;
var DATA_DUPLET_FLAG = 1 << 1;
var HAS_BRANCHES_FLAG = 1 << 2;
var MAX_BRANCH_MARKER_VALUE = HAS_DATA_FLAG | DATA_DUPLET_FLAG | HAS_BRANCHES_FLAG;


//States
var DATA_STATE = 'DATA_STATE',
    CHARACTER_REFERENCE_IN_DATA_STATE = 'CHARACTER_REFERENCE_IN_DATA_STATE',
    RCDATA_STATE = 'RCDATA_STATE',
    CHARACTER_REFERENCE_IN_RCDATA_STATE = 'CHARACTER_REFERENCE_IN_RCDATA_STATE',
    RAWTEXT_STATE = 'RAWTEXT_STATE',
    SCRIPT_DATA_STATE = 'SCRIPT_DATA_STATE',
    PLAINTEXT_STATE = 'PLAINTEXT_STATE',
    TAG_OPEN_STATE = 'TAG_OPEN_STATE',
    END_TAG_OPEN_STATE = 'END_TAG_OPEN_STATE',
    TAG_NAME_STATE = 'TAG_NAME_STATE',
    RCDATA_LESS_THAN_SIGN_STATE = 'RCDATA_LESS_THAN_SIGN_STATE',
    RCDATA_END_TAG_OPEN_STATE = 'RCDATA_END_TAG_OPEN_STATE',
    RCDATA_END_TAG_NAME_STATE = 'RCDATA_END_TAG_NAME_STATE',
    RAWTEXT_LESS_THAN_SIGN_STATE = 'RAWTEXT_LESS_THAN_SIGN_STATE',
    RAWTEXT_END_TAG_OPEN_STATE = 'RAWTEXT_END_TAG_OPEN_STATE',
    RAWTEXT_END_TAG_NAME_STATE = 'RAWTEXT_END_TAG_NAME_STATE',
    SCRIPT_DATA_LESS_THAN_SIGN_STATE = 'SCRIPT_DATA_LESS_THAN_SIGN_STATE',
    SCRIPT_DATA_END_TAG_OPEN_STATE = 'SCRIPT_DATA_END_TAG_OPEN_STATE',
    SCRIPT_DATA_END_TAG_NAME_STATE = 'SCRIPT_DATA_END_TAG_NAME_STATE',
    SCRIPT_DATA_ESCAPE_START_STATE = 'SCRIPT_DATA_ESCAPE_START_STATE',
    SCRIPT_DATA_ESCAPE_START_DASH_STATE = 'SCRIPT_DATA_ESCAPE_START_DASH_STATE',
    SCRIPT_DATA_ESCAPED_STATE = 'SCRIPT_DATA_ESCAPED_STATE',
    SCRIPT_DATA_ESCAPED_DASH_STATE = 'SCRIPT_DATA_ESCAPED_DASH_STATE',
    SCRIPT_DATA_ESCAPED_DASH_DASH_STATE = 'SCRIPT_DATA_ESCAPED_DASH_DASH_STATE',
    SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE = 'SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE',
    SCRIPT_DATA_ESCAPED_END_TAG_OPEN_STATE = 'SCRIPT_DATA_ESCAPED_END_TAG_OPEN_STATE',
    SCRIPT_DATA_ESCAPED_END_TAG_NAME_STATE = 'SCRIPT_DATA_ESCAPED_END_TAG_NAME_STATE',
    SCRIPT_DATA_DOUBLE_ESCAPE_START_STATE = 'SCRIPT_DATA_DOUBLE_ESCAPE_START_STATE',
    SCRIPT_DATA_DOUBLE_ESCAPED_STATE = 'SCRIPT_DATA_DOUBLE_ESCAPED_STATE',
    SCRIPT_DATA_DOUBLE_ESCAPED_DASH_STATE = 'SCRIPT_DATA_DOUBLE_ESCAPED_DASH_STATE',
    SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH_STATE = 'SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH_STATE',
    SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE = 'SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE',
    SCRIPT_DATA_DOUBLE_ESCAPE_END_STATE = 'SCRIPT_DATA_DOUBLE_ESCAPE_END_STATE',
    BEFORE_ATTRIBUTE_NAME_STATE = 'BEFORE_ATTRIBUTE_NAME_STATE',
    ATTRIBUTE_NAME_STATE = 'ATTRIBUTE_NAME_STATE',
    AFTER_ATTRIBUTE_NAME_STATE = 'AFTER_ATTRIBUTE_NAME_STATE',
    BEFORE_ATTRIBUTE_VALUE_STATE = 'BEFORE_ATTRIBUTE_VALUE_STATE',
    ATTRIBUTE_VALUE_DOUBLE_QUOTED_STATE = 'ATTRIBUTE_VALUE_DOUBLE_QUOTED_STATE',
    ATTRIBUTE_VALUE_SINGLE_QUOTED_STATE = 'ATTRIBUTE_VALUE_SINGLE_QUOTED_STATE',
    ATTRIBUTE_VALUE_UNQUOTED_STATE = 'ATTRIBUTE_VALUE_UNQUOTED_STATE',
    CHARACTER_REFERENCE_IN_ATTRIBUTE_VALUE_STATE = 'CHARACTER_REFERENCE_IN_ATTRIBUTE_VALUE_STATE',
    AFTER_ATTRIBUTE_VALUE_QUOTED_STATE = 'AFTER_ATTRIBUTE_VALUE_QUOTED_STATE',
    SELF_CLOSING_START_TAG_STATE = 'SELF_CLOSING_START_TAG_STATE',
    BOGUS_COMMENT_STATE = 'BOGUS_COMMENT_STATE',
    BOGUS_COMMENT_STATE_CONTINUATION = 'BOGUS_COMMENT_STATE_CONTINUATION',
    MARKUP_DECLARATION_OPEN_STATE = 'MARKUP_DECLARATION_OPEN_STATE',
    COMMENT_START_STATE = 'COMMENT_START_STATE',
    COMMENT_START_DASH_STATE = 'COMMENT_START_DASH_STATE',
    COMMENT_STATE = 'COMMENT_STATE',
    COMMENT_END_DASH_STATE = 'COMMENT_END_DASH_STATE',
    COMMENT_END_STATE = 'COMMENT_END_STATE',
    COMMENT_END_BANG_STATE = 'COMMENT_END_BANG_STATE',
    DOCTYPE_STATE = 'DOCTYPE_STATE',
    DOCTYPE_NAME_STATE = 'DOCTYPE_NAME_STATE',
    AFTER_DOCTYPE_NAME_STATE = 'AFTER_DOCTYPE_NAME_STATE',
    BEFORE_DOCTYPE_PUBLIC_IDENTIFIER_STATE = 'BEFORE_DOCTYPE_PUBLIC_IDENTIFIER_STATE',
    DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED_STATE = 'DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED_STATE',
    DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED_STATE = 'DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED_STATE',
    BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS_STATE = 'BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS_STATE',
    BEFORE_DOCTYPE_SYSTEM_IDENTIFIER_STATE = 'BEFORE_DOCTYPE_SYSTEM_IDENTIFIER_STATE',
    DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE = 'DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE',
    DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE = 'DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE',
    AFTER_DOCTYPE_SYSTEM_IDENTIFIER_STATE = 'AFTER_DOCTYPE_SYSTEM_IDENTIFIER_STATE',
    BOGUS_DOCTYPE_STATE = 'BOGUS_DOCTYPE_STATE',
    CDATA_SECTION_STATE = 'CDATA_SECTION_STATE';

//Utils

//OPTIMIZATION: these utility functions should not be moved out of this module. V8 Crankshaft will not inline
//this functions if they will be situated in another module due to context switch.
//Always perform inlining check before modifying this functions ('node --trace-inlining').
function isWhitespace(cp) {
    return cp === $.SPACE || cp === $.LINE_FEED || cp === $.TABULATION || cp === $.FORM_FEED;
}

function isAsciiDigit(cp) {
    return cp >= $.DIGIT_0 && cp <= $.DIGIT_9;
}

function isAsciiUpper(cp) {
    return cp >= $.LATIN_CAPITAL_A && cp <= $.LATIN_CAPITAL_Z;
}

function isAsciiLower(cp) {
    return cp >= $.LATIN_SMALL_A && cp <= $.LATIN_SMALL_Z;
}

function isAsciiLetter(cp) {
    return isAsciiLower(cp) || isAsciiUpper(cp);
}

function isAsciiAlphaNumeric(cp) {
    return isAsciiLetter(cp) || isAsciiDigit(cp);
}

function isDigit(cp, isHex) {
    return isAsciiDigit(cp) || isHex && (cp >= $.LATIN_CAPITAL_A && cp <= $.LATIN_CAPITAL_F ||
                                         cp >= $.LATIN_SMALL_A && cp <= $.LATIN_SMALL_F);
}

function isReservedCodePoint(cp) {
    return cp >= 0xD800 && cp <= 0xDFFF || cp > 0x10FFFF;
}

function toAsciiLowerCodePoint(cp) {
    return cp + 0x0020;
}

//NOTE: String.fromCharCode() function can handle only characters from BMP subset.
//So, we need to workaround this manually.
//(see: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/fromCharCode#Getting_it_to_work_with_higher_values)
function toChar(cp) {
    if (cp <= 0xFFFF)
        return String.fromCharCode(cp);

    cp -= 0x10000;
    return String.fromCharCode(cp >>> 10 & 0x3FF | 0xD800) + String.fromCharCode(0xDC00 | cp & 0x3FF);
}

function toAsciiLowerChar(cp) {
    return String.fromCharCode(toAsciiLowerCodePoint(cp));
}

function findNamedEntityTreeBranch(nodeIx, cp) {
    var branchCount = neTree[++nodeIx],
        lo = ++nodeIx,
        hi = lo + branchCount - 1;

    while (lo <= hi) {
        var mid = lo + hi >>> 1,
            midCp = neTree[mid];

        if (midCp < cp)
            lo = mid + 1;

        else if (midCp > cp)
            hi = mid - 1;

        else
            return neTree[mid + branchCount];
    }

    return -1;
}


//Tokenizer
var Tokenizer = module.exports = function () {
    this.preprocessor = new Preprocessor();

    this.tokenQueue = [];

    this.allowCDATA = false;

    this.state = DATA_STATE;
    this.returnState = '';

    this.tempBuff = [];
    this.additionalAllowedCp = void 0;
    this.lastStartTagName = '';

    this.consumedAfterSnapshot = -1;
    this.active = false;

    this.currentCharacterToken = null;
    this.currentToken = null;
    this.currentAttr = null;
};

//Token types
Tokenizer.CHARACTER_TOKEN = 'CHARACTER_TOKEN';
Tokenizer.NULL_CHARACTER_TOKEN = 'NULL_CHARACTER_TOKEN';
Tokenizer.WHITESPACE_CHARACTER_TOKEN = 'WHITESPACE_CHARACTER_TOKEN';
Tokenizer.START_TAG_TOKEN = 'START_TAG_TOKEN';
Tokenizer.END_TAG_TOKEN = 'END_TAG_TOKEN';
Tokenizer.COMMENT_TOKEN = 'COMMENT_TOKEN';
Tokenizer.DOCTYPE_TOKEN = 'DOCTYPE_TOKEN';
Tokenizer.EOF_TOKEN = 'EOF_TOKEN';
Tokenizer.HIBERNATION_TOKEN = 'HIBERNATION_TOKEN';

//Tokenizer initial states for different modes
Tokenizer.MODE = {
    DATA: DATA_STATE,
    RCDATA: RCDATA_STATE,
    RAWTEXT: RAWTEXT_STATE,
    SCRIPT_DATA: SCRIPT_DATA_STATE,
    PLAINTEXT: PLAINTEXT_STATE
};

//Static
Tokenizer.getTokenAttr = function (token, attrName) {
    for (var i = token.attrs.length - 1; i >= 0; i--) {
        if (token.attrs[i].name === attrName)
            return token.attrs[i].value;
    }

    return null;
};

//API
Tokenizer.prototype.getNextToken = function () {
    while (!this.tokenQueue.length && this.active) {
        this._hibernationSnapshot();

        var cp = this._consume();

        if (!this._ensureHibernation())
            this[this.state](cp);
    }

    return this.tokenQueue.shift();
};

Tokenizer.prototype.write = function (chunk, isLastChunk) {
    this.active = true;
    this.preprocessor.write(chunk, isLastChunk);
};

Tokenizer.prototype.insertHtmlAtCurrentPos = function (chunk) {
    this.active = true;
    this.preprocessor.insertHtmlAtCurrentPos(chunk);
};

//Hibernation
Tokenizer.prototype._hibernationSnapshot = function () {
    this.consumedAfterSnapshot = 0;
};

Tokenizer.prototype._ensureHibernation = function () {
    if (this.preprocessor.endOfChunkHit) {
        for (; this.consumedAfterSnapshot > 0; this.consumedAfterSnapshot--)
            this.preprocessor.retreat();

        this.active = false;
        this.tokenQueue.push({type: Tokenizer.HIBERNATION_TOKEN});

        return true;
    }

    return false;
};


//Consumption
Tokenizer.prototype._consume = function () {
    this.consumedAfterSnapshot++;
    return this.preprocessor.advance();
};

Tokenizer.prototype._unconsume = function () {
    this.consumedAfterSnapshot--;
    this.preprocessor.retreat();
};

Tokenizer.prototype._unconsumeSeveral = function (count) {
    while (count--)
        this._unconsume();
};

Tokenizer.prototype._reconsumeInState = function (state) {
    this.state = state;
    this._unconsume();
};

Tokenizer.prototype._consumeSubsequentIfMatch = function (pattern, startCp, caseSensitive) {
    var consumedCount = 0,
        isMatch = true,
        patternLength = pattern.length,
        patternPos = 0,
        cp = startCp,
        patternCp = void 0;

    for (; patternPos < patternLength; patternPos++) {
        if (patternPos > 0) {
            cp = this._consume();
            consumedCount++;
        }

        if (cp === $.EOF) {
            isMatch = false;
            break;
        }

        patternCp = pattern[patternPos];

        if (cp !== patternCp && (caseSensitive || cp !== toAsciiLowerCodePoint(patternCp))) {
            isMatch = false;
            break;
        }
    }

    if (!isMatch)
        this._unconsumeSeveral(consumedCount);

    return isMatch;
};

//Lookahead
Tokenizer.prototype._lookahead = function () {
    var cp = this._consume();

    this._unconsume();

    return cp;
};

//Temp buffer
Tokenizer.prototype.isTempBufferEqualToScriptString = function () {
    if (this.tempBuff.length !== $$.SCRIPT_STRING.length)
        return false;

    for (var i = 0; i < this.tempBuff.length; i++) {
        if (this.tempBuff[i] !== $$.SCRIPT_STRING[i])
            return false;
    }

    return true;
};

//Token creation
Tokenizer.prototype._createStartTagToken = function () {
    this.currentToken = {
        type: Tokenizer.START_TAG_TOKEN,
        tagName: '',
        selfClosing: false,
        attrs: []
    };
};

Tokenizer.prototype._createEndTagToken = function () {
    this.currentToken = {
        type: Tokenizer.END_TAG_TOKEN,
        tagName: '',
        attrs: []
    };
};

Tokenizer.prototype._createCommentToken = function () {
    this.currentToken = {
        type: Tokenizer.COMMENT_TOKEN,
        data: ''
    };
};

Tokenizer.prototype._createDoctypeToken = function (initialName) {
    this.currentToken = {
        type: Tokenizer.DOCTYPE_TOKEN,
        name: initialName,
        forceQuirks: false,
        publicId: null,
        systemId: null
    };
};

Tokenizer.prototype._createCharacterToken = function (type, ch) {
    this.currentCharacterToken = {
        type: type,
        chars: ch
    };
};

//Tag attributes
Tokenizer.prototype._createAttr = function (attrNameFirstCh) {
    this.currentAttr = {
        name: attrNameFirstCh,
        value: ''
    };
};

Tokenizer.prototype._isDuplicateAttr = function () {
    return Tokenizer.getTokenAttr(this.currentToken, this.currentAttr.name) !== null;
};

Tokenizer.prototype._leaveAttrName = function (toState) {
    this.state = toState;

    if (!this._isDuplicateAttr())
        this.currentToken.attrs.push(this.currentAttr);
};

Tokenizer.prototype._leaveAttrValue = function (toState) {
    this.state = toState;
};

//Appropriate end tag token
//(see: http://www.whatwg.org/specs/web-apps/current-work/multipage/tokenization.html#appropriate-end-tag-token)
Tokenizer.prototype._isAppropriateEndTagToken = function () {
    return this.lastStartTagName === this.currentToken.tagName;
};

//Token emission
Tokenizer.prototype._emitCurrentToken = function () {
    this._emitCurrentCharacterToken();

    //NOTE: store emited start tag's tagName to determine is the following end tag token is appropriate.
    if (this.currentToken.type === Tokenizer.START_TAG_TOKEN)
        this.lastStartTagName = this.currentToken.tagName;

    this.tokenQueue.push(this.currentToken);
    this.currentToken = null;
};

Tokenizer.prototype._emitCurrentCharacterToken = function () {
    if (this.currentCharacterToken) {
        this.tokenQueue.push(this.currentCharacterToken);
        this.currentCharacterToken = null;
    }
};

Tokenizer.prototype._emitEOFToken = function () {
    this._emitCurrentCharacterToken();
    this.tokenQueue.push({type: Tokenizer.EOF_TOKEN});
};

//Characters emission

//OPTIMIZATION: specification uses only one type of character tokens (one token per character).
//This causes a huge memory overhead and a lot of unnecessary parser loops. parse5 uses 3 groups of characters.
//If we have a sequence of characters that belong to the same group, parser can process it
//as a single solid character token.
//So, there are 3 types of character tokens in parse5:
//1)NULL_CHARACTER_TOKEN - \u0000-character sequences (e.g. '\u0000\u0000\u0000')
//2)WHITESPACE_CHARACTER_TOKEN - any whitespace/new-line character sequences (e.g. '\n  \r\t   \f')
//3)CHARACTER_TOKEN - any character sequence which don't belong to groups 1 and 2 (e.g. 'abcdef1234@@#$%^')
Tokenizer.prototype._appendCharToCurrentCharacterToken = function (type, ch) {
    if (this.currentCharacterToken && this.currentCharacterToken.type !== type)
        this._emitCurrentCharacterToken();

    if (this.currentCharacterToken)
        this.currentCharacterToken.chars += ch;

    else
        this._createCharacterToken(type, ch);
};

Tokenizer.prototype._emitCodePoint = function (cp) {
    var type = Tokenizer.CHARACTER_TOKEN;

    if (isWhitespace(cp))
        type = Tokenizer.WHITESPACE_CHARACTER_TOKEN;

    else if (cp === $.NULL)
        type = Tokenizer.NULL_CHARACTER_TOKEN;

    this._appendCharToCurrentCharacterToken(type, toChar(cp));
};

Tokenizer.prototype._emitSeveralCodePoints = function (codePoints) {
    for (var i = 0; i < codePoints.length; i++)
        this._emitCodePoint(codePoints[i]);
};

//NOTE: used then we emit character explicitly. This is always a non-whitespace and a non-null character.
//So we can avoid additional checks here.
Tokenizer.prototype._emitChar = function (ch) {
    this._appendCharToCurrentCharacterToken(Tokenizer.CHARACTER_TOKEN, ch);
};

//Character reference tokenization
Tokenizer.prototype._consumeNumericEntity = function (isHex) {
    var digits = '',
        nextCp = void 0;

    do {
        digits += toChar(this._consume());
        nextCp = this._lookahead();
    } while (nextCp !== $.EOF && isDigit(nextCp, isHex));

    if (this._lookahead() === $.SEMICOLON)
        this._consume();

    var referencedCp = parseInt(digits, isHex ? 16 : 10),
        replacement = NUMERIC_ENTITY_REPLACEMENTS[referencedCp];

    if (replacement)
        return replacement;

    if (isReservedCodePoint(referencedCp))
        return $.REPLACEMENT_CHARACTER;

    return referencedCp;
};

// NOTE: for the details on this algorithm see
// https://github.com/inikulin/parse5/tree/master/scripts/generate_named_entity_data/README.md
Tokenizer.prototype._consumeNamedEntity = function (inAttr) {
    var referencedCodePoints = null,
        referenceSize = 0,
        cp = null,
        consumedCount = 0,
        semicolonTerminated = false;

    for (var i = 0; i > -1;) {
        var current = neTree[i],
            inNode = current < MAX_BRANCH_MARKER_VALUE,
            nodeWithData = inNode && current & HAS_DATA_FLAG;

        if (nodeWithData) {
            referencedCodePoints = current & DATA_DUPLET_FLAG ? [neTree[++i], neTree[++i]] : [neTree[++i]];
            referenceSize = consumedCount;

            if (cp === $.SEMICOLON) {
                semicolonTerminated = true;
                break;
            }
        }

        cp = this._consume();
        consumedCount++;

        if (cp === $.EOF)
            break;

        if (inNode)
            i = current & HAS_BRANCHES_FLAG ? findNamedEntityTreeBranch(i, cp) : -1;

        else
            i = cp === current ? ++i : -1;
    }


    if (referencedCodePoints) {
        if (!semicolonTerminated) {
            //NOTE: unconsume excess (e.g. 'it' in '&notit')
            this._unconsumeSeveral(consumedCount - referenceSize);

            //NOTE: If the character reference is being consumed as part of an attribute and the next character
            //is either a U+003D EQUALS SIGN character (=) or an alphanumeric ASCII character, then, for historical
            //reasons, all the characters that were matched after the U+0026 AMPERSAND character (&) must be
            //unconsumed, and nothing is returned.
            //However, if this next character is in fact a U+003D EQUALS SIGN character (=), then this is a
            //parse error, because some legacy user agents will misinterpret the markup in those cases.
            //(see: http://www.whatwg.org/specs/web-apps/current-work/multipage/tokenization.html#tokenizing-character-references)
            if (inAttr) {
                var nextCp = this._lookahead();

                if (nextCp === $.EQUALS_SIGN || isAsciiAlphaNumeric(nextCp)) {
                    this._unconsumeSeveral(referenceSize);
                    return null;
                }
            }
        }

        return referencedCodePoints;
    }

    this._unconsumeSeveral(consumedCount);

    return null;
};

Tokenizer.prototype._consumeCharacterReference = function (startCp, inAttr) {
    if (isWhitespace(startCp) || startCp === $.GREATER_THAN_SIGN ||
        startCp === $.AMPERSAND || startCp === this.additionalAllowedCp || startCp === $.EOF) {
        //NOTE: not a character reference. No characters are consumed, and nothing is returned.
        this._unconsume();
        return null;
    }

    if (startCp === $.NUMBER_SIGN) {
        //NOTE: we have a numeric entity candidate, now we should determine if it's hex or decimal
        var isHex = false,
            nextCp = this._lookahead();

        if (nextCp === $.LATIN_SMALL_X || nextCp === $.LATIN_CAPITAL_X) {
            this._consume();
            isHex = true;
        }

        nextCp = this._lookahead();

        //NOTE: if we have at least one digit this is a numeric entity for sure, so we consume it
        if (nextCp !== $.EOF && isDigit(nextCp, isHex))
            return [this._consumeNumericEntity(isHex)];

        //NOTE: otherwise this is a bogus number entity and a parse error. Unconsume the number sign
        //and the 'x'-character if appropriate.
        this._unconsumeSeveral(isHex ? 2 : 1);
        return null;
    }

    this._unconsume();

    return this._consumeNamedEntity(inAttr);
};

//State machine
var _ = Tokenizer.prototype;

//12.2.4.1 Data state
//------------------------------------------------------------------
_[DATA_STATE] = function dataState(cp) {
    this.preprocessor.dropParsedChunk();

    if (cp === $.AMPERSAND)
        this.state = CHARACTER_REFERENCE_IN_DATA_STATE;

    else if (cp === $.LESS_THAN_SIGN)
        this.state = TAG_OPEN_STATE;

    else if (cp === $.NULL)
        this._emitCodePoint(cp);

    else if (cp === $.EOF)
        this._emitEOFToken();

    else
        this._emitCodePoint(cp);
};


//12.2.4.2 Character reference in data state
//------------------------------------------------------------------
_[CHARACTER_REFERENCE_IN_DATA_STATE] = function characterReferenceInDataState(cp) {
    this.additionalAllowedCp = void 0;

    var referencedCodePoints = this._consumeCharacterReference(cp, false);

    if (!this._ensureHibernation()) {
        if (referencedCodePoints)
            this._emitSeveralCodePoints(referencedCodePoints);

        else
            this._emitChar('&');

        this.state = DATA_STATE;
    }
};


//12.2.4.3 RCDATA state
//------------------------------------------------------------------
_[RCDATA_STATE] = function rcdataState(cp) {
    this.preprocessor.dropParsedChunk();

    if (cp === $.AMPERSAND)
        this.state = CHARACTER_REFERENCE_IN_RCDATA_STATE;

    else if (cp === $.LESS_THAN_SIGN)
        this.state = RCDATA_LESS_THAN_SIGN_STATE;

    else if (cp === $.NULL)
        this._emitChar(UNICODE.REPLACEMENT_CHARACTER);

    else if (cp === $.EOF)
        this._emitEOFToken();

    else
        this._emitCodePoint(cp);
};


//12.2.4.4 Character reference in RCDATA state
//------------------------------------------------------------------
_[CHARACTER_REFERENCE_IN_RCDATA_STATE] = function characterReferenceInRcdataState(cp) {
    this.additionalAllowedCp = void 0;

    var referencedCodePoints = this._consumeCharacterReference(cp, false);

    if (!this._ensureHibernation()) {
        if (referencedCodePoints)
            this._emitSeveralCodePoints(referencedCodePoints);

        else
            this._emitChar('&');

        this.state = RCDATA_STATE;
    }
};


//12.2.4.5 RAWTEXT state
//------------------------------------------------------------------
_[RAWTEXT_STATE] = function rawtextState(cp) {
    this.preprocessor.dropParsedChunk();

    if (cp === $.LESS_THAN_SIGN)
        this.state = RAWTEXT_LESS_THAN_SIGN_STATE;

    else if (cp === $.NULL)
        this._emitChar(UNICODE.REPLACEMENT_CHARACTER);

    else if (cp === $.EOF)
        this._emitEOFToken();

    else
        this._emitCodePoint(cp);
};


//12.2.4.6 Script data state
//------------------------------------------------------------------
_[SCRIPT_DATA_STATE] = function scriptDataState(cp) {
    this.preprocessor.dropParsedChunk();

    if (cp === $.LESS_THAN_SIGN)
        this.state = SCRIPT_DATA_LESS_THAN_SIGN_STATE;

    else if (cp === $.NULL)
        this._emitChar(UNICODE.REPLACEMENT_CHARACTER);

    else if (cp === $.EOF)
        this._emitEOFToken();

    else
        this._emitCodePoint(cp);
};


//12.2.4.7 PLAINTEXT state
//------------------------------------------------------------------
_[PLAINTEXT_STATE] = function plaintextState(cp) {
    this.preprocessor.dropParsedChunk();

    if (cp === $.NULL)
        this._emitChar(UNICODE.REPLACEMENT_CHARACTER);

    else if (cp === $.EOF)
        this._emitEOFToken();

    else
        this._emitCodePoint(cp);
};


//12.2.4.8 Tag open state
//------------------------------------------------------------------
_[TAG_OPEN_STATE] = function tagOpenState(cp) {
    if (cp === $.EXCLAMATION_MARK)
        this.state = MARKUP_DECLARATION_OPEN_STATE;

    else if (cp === $.SOLIDUS)
        this.state = END_TAG_OPEN_STATE;

    else if (isAsciiLetter(cp)) {
        this._createStartTagToken();
        this._reconsumeInState(TAG_NAME_STATE);
    }

    else if (cp === $.QUESTION_MARK)
        this._reconsumeInState(BOGUS_COMMENT_STATE);

    else {
        this._emitChar('<');
        this._reconsumeInState(DATA_STATE);
    }
};


//12.2.4.9 End tag open state
//------------------------------------------------------------------
_[END_TAG_OPEN_STATE] = function endTagOpenState(cp) {
    if (isAsciiLetter(cp)) {
        this._createEndTagToken();
        this._reconsumeInState(TAG_NAME_STATE);
    }

    else if (cp === $.GREATER_THAN_SIGN)
        this.state = DATA_STATE;

    else if (cp === $.EOF) {
        this._reconsumeInState(DATA_STATE);
        this._emitChar('<');
        this._emitChar('/');
    }

    else
        this._reconsumeInState(BOGUS_COMMENT_STATE);
};


//12.2.4.10 Tag name state
//------------------------------------------------------------------
_[TAG_NAME_STATE] = function tagNameState(cp) {
    if (isWhitespace(cp))
        this.state = BEFORE_ATTRIBUTE_NAME_STATE;

    else if (cp === $.SOLIDUS)
        this.state = SELF_CLOSING_START_TAG_STATE;

    else if (cp === $.GREATER_THAN_SIGN) {
        this.state = DATA_STATE;
        this._emitCurrentToken();
    }

    else if (isAsciiUpper(cp))
        this.currentToken.tagName += toAsciiLowerChar(cp);

    else if (cp === $.NULL)
        this.currentToken.tagName += UNICODE.REPLACEMENT_CHARACTER;

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else
        this.currentToken.tagName += toChar(cp);
};


//12.2.4.11 RCDATA less-than sign state
//------------------------------------------------------------------
_[RCDATA_LESS_THAN_SIGN_STATE] = function rcdataLessThanSignState(cp) {
    if (cp === $.SOLIDUS) {
        this.tempBuff = [];
        this.state = RCDATA_END_TAG_OPEN_STATE;
    }

    else {
        this._emitChar('<');
        this._reconsumeInState(RCDATA_STATE);
    }
};


//12.2.4.12 RCDATA end tag open state
//------------------------------------------------------------------
_[RCDATA_END_TAG_OPEN_STATE] = function rcdataEndTagOpenState(cp) {
    if (isAsciiLetter(cp)) {
        this._createEndTagToken();
        this._reconsumeInState(RCDATA_END_TAG_NAME_STATE);
    }

    else {
        this._emitChar('<');
        this._emitChar('/');
        this._reconsumeInState(RCDATA_STATE);
    }
};


//12.2.4.13 RCDATA end tag name state
//------------------------------------------------------------------
_[RCDATA_END_TAG_NAME_STATE] = function rcdataEndTagNameState(cp) {
    if (isAsciiUpper(cp)) {
        this.currentToken.tagName += toAsciiLowerChar(cp);
        this.tempBuff.push(cp);
    }

    else if (isAsciiLower(cp)) {
        this.currentToken.tagName += toChar(cp);
        this.tempBuff.push(cp);
    }

    else {
        if (this._isAppropriateEndTagToken()) {
            if (isWhitespace(cp)) {
                this.state = BEFORE_ATTRIBUTE_NAME_STATE;
                return;
            }

            if (cp === $.SOLIDUS) {
                this.state = SELF_CLOSING_START_TAG_STATE;
                return;
            }

            if (cp === $.GREATER_THAN_SIGN) {
                this.state = DATA_STATE;
                this._emitCurrentToken();
                return;
            }
        }

        this._emitChar('<');
        this._emitChar('/');
        this._emitSeveralCodePoints(this.tempBuff);
        this._reconsumeInState(RCDATA_STATE);
    }
};


//12.2.4.14 RAWTEXT less-than sign state
//------------------------------------------------------------------
_[RAWTEXT_LESS_THAN_SIGN_STATE] = function rawtextLessThanSignState(cp) {
    if (cp === $.SOLIDUS) {
        this.tempBuff = [];
        this.state = RAWTEXT_END_TAG_OPEN_STATE;
    }

    else {
        this._emitChar('<');
        this._reconsumeInState(RAWTEXT_STATE);
    }
};


//12.2.4.15 RAWTEXT end tag open state
//------------------------------------------------------------------
_[RAWTEXT_END_TAG_OPEN_STATE] = function rawtextEndTagOpenState(cp) {
    if (isAsciiLetter(cp)) {
        this._createEndTagToken();
        this._reconsumeInState(RAWTEXT_END_TAG_NAME_STATE);
    }

    else {
        this._emitChar('<');
        this._emitChar('/');
        this._reconsumeInState(RAWTEXT_STATE);
    }
};


//12.2.4.16 RAWTEXT end tag name state
//------------------------------------------------------------------
_[RAWTEXT_END_TAG_NAME_STATE] = function rawtextEndTagNameState(cp) {
    if (isAsciiUpper(cp)) {
        this.currentToken.tagName += toAsciiLowerChar(cp);
        this.tempBuff.push(cp);
    }

    else if (isAsciiLower(cp)) {
        this.currentToken.tagName += toChar(cp);
        this.tempBuff.push(cp);
    }

    else {
        if (this._isAppropriateEndTagToken()) {
            if (isWhitespace(cp)) {
                this.state = BEFORE_ATTRIBUTE_NAME_STATE;
                return;
            }

            if (cp === $.SOLIDUS) {
                this.state = SELF_CLOSING_START_TAG_STATE;
                return;
            }

            if (cp === $.GREATER_THAN_SIGN) {
                this._emitCurrentToken();
                this.state = DATA_STATE;
                return;
            }
        }

        this._emitChar('<');
        this._emitChar('/');
        this._emitSeveralCodePoints(this.tempBuff);
        this._reconsumeInState(RAWTEXT_STATE);
    }
};


//12.2.4.17 Script data less-than sign state
//------------------------------------------------------------------
_[SCRIPT_DATA_LESS_THAN_SIGN_STATE] = function scriptDataLessThanSignState(cp) {
    if (cp === $.SOLIDUS) {
        this.tempBuff = [];
        this.state = SCRIPT_DATA_END_TAG_OPEN_STATE;
    }

    else if (cp === $.EXCLAMATION_MARK) {
        this.state = SCRIPT_DATA_ESCAPE_START_STATE;
        this._emitChar('<');
        this._emitChar('!');
    }

    else {
        this._emitChar('<');
        this._reconsumeInState(SCRIPT_DATA_STATE);
    }
};


//12.2.4.18 Script data end tag open state
//------------------------------------------------------------------
_[SCRIPT_DATA_END_TAG_OPEN_STATE] = function scriptDataEndTagOpenState(cp) {
    if (isAsciiLetter(cp)) {
        this._createEndTagToken();
        this._reconsumeInState(SCRIPT_DATA_END_TAG_NAME_STATE);
    }

    else {
        this._emitChar('<');
        this._emitChar('/');
        this._reconsumeInState(SCRIPT_DATA_STATE);
    }
};


//12.2.4.19 Script data end tag name state
//------------------------------------------------------------------
_[SCRIPT_DATA_END_TAG_NAME_STATE] = function scriptDataEndTagNameState(cp) {
    if (isAsciiUpper(cp)) {
        this.currentToken.tagName += toAsciiLowerChar(cp);
        this.tempBuff.push(cp);
    }

    else if (isAsciiLower(cp)) {
        this.currentToken.tagName += toChar(cp);
        this.tempBuff.push(cp);
    }

    else {
        if (this._isAppropriateEndTagToken()) {
            if (isWhitespace(cp)) {
                this.state = BEFORE_ATTRIBUTE_NAME_STATE;
                return;
            }

            else if (cp === $.SOLIDUS) {
                this.state = SELF_CLOSING_START_TAG_STATE;
                return;
            }

            else if (cp === $.GREATER_THAN_SIGN) {
                this._emitCurrentToken();
                this.state = DATA_STATE;
                return;
            }
        }

        this._emitChar('<');
        this._emitChar('/');
        this._emitSeveralCodePoints(this.tempBuff);
        this._reconsumeInState(SCRIPT_DATA_STATE);
    }
};


//12.2.4.20 Script data escape start state
//------------------------------------------------------------------
_[SCRIPT_DATA_ESCAPE_START_STATE] = function scriptDataEscapeStartState(cp) {
    if (cp === $.HYPHEN_MINUS) {
        this.state = SCRIPT_DATA_ESCAPE_START_DASH_STATE;
        this._emitChar('-');
    }

    else
        this._reconsumeInState(SCRIPT_DATA_STATE);
};


//12.2.4.21 Script data escape start dash state
//------------------------------------------------------------------
_[SCRIPT_DATA_ESCAPE_START_DASH_STATE] = function scriptDataEscapeStartDashState(cp) {
    if (cp === $.HYPHEN_MINUS) {
        this.state = SCRIPT_DATA_ESCAPED_DASH_DASH_STATE;
        this._emitChar('-');
    }

    else
        this._reconsumeInState(SCRIPT_DATA_STATE);
};


//12.2.4.22 Script data escaped state
//------------------------------------------------------------------
_[SCRIPT_DATA_ESCAPED_STATE] = function scriptDataEscapedState(cp) {
    if (cp === $.HYPHEN_MINUS) {
        this.state = SCRIPT_DATA_ESCAPED_DASH_STATE;
        this._emitChar('-');
    }

    else if (cp === $.LESS_THAN_SIGN)
        this.state = SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE;

    else if (cp === $.NULL)
        this._emitChar(UNICODE.REPLACEMENT_CHARACTER);

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else
        this._emitCodePoint(cp);
};


//12.2.4.23 Script data escaped dash state
//------------------------------------------------------------------
_[SCRIPT_DATA_ESCAPED_DASH_STATE] = function scriptDataEscapedDashState(cp) {
    if (cp === $.HYPHEN_MINUS) {
        this.state = SCRIPT_DATA_ESCAPED_DASH_DASH_STATE;
        this._emitChar('-');
    }

    else if (cp === $.LESS_THAN_SIGN)
        this.state = SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE;

    else if (cp === $.NULL) {
        this.state = SCRIPT_DATA_ESCAPED_STATE;
        this._emitChar(UNICODE.REPLACEMENT_CHARACTER);
    }

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else {
        this.state = SCRIPT_DATA_ESCAPED_STATE;
        this._emitCodePoint(cp);
    }
};


//12.2.4.24 Script data escaped dash dash state
//------------------------------------------------------------------
_[SCRIPT_DATA_ESCAPED_DASH_DASH_STATE] = function scriptDataEscapedDashDashState(cp) {
    if (cp === $.HYPHEN_MINUS)
        this._emitChar('-');

    else if (cp === $.LESS_THAN_SIGN)
        this.state = SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE;

    else if (cp === $.GREATER_THAN_SIGN) {
        this.state = SCRIPT_DATA_STATE;
        this._emitChar('>');
    }

    else if (cp === $.NULL) {
        this.state = SCRIPT_DATA_ESCAPED_STATE;
        this._emitChar(UNICODE.REPLACEMENT_CHARACTER);
    }

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else {
        this.state = SCRIPT_DATA_ESCAPED_STATE;
        this._emitCodePoint(cp);
    }
};


//12.2.4.25 Script data escaped less-than sign state
//------------------------------------------------------------------
_[SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN_STATE] = function scriptDataEscapedLessThanSignState(cp) {
    if (cp === $.SOLIDUS) {
        this.tempBuff = [];
        this.state = SCRIPT_DATA_ESCAPED_END_TAG_OPEN_STATE;
    }

    else if (isAsciiLetter(cp)) {
        this.tempBuff = [];
        this._emitChar('<');
        this._reconsumeInState(SCRIPT_DATA_DOUBLE_ESCAPE_START_STATE);
    }

    else {
        this._emitChar('<');
        this._reconsumeInState(SCRIPT_DATA_ESCAPED_STATE);
    }
};


//12.2.4.26 Script data escaped end tag open state
//------------------------------------------------------------------
_[SCRIPT_DATA_ESCAPED_END_TAG_OPEN_STATE] = function scriptDataEscapedEndTagOpenState(cp) {
    if (isAsciiLetter(cp)) {
        this._createEndTagToken();
        this._reconsumeInState(SCRIPT_DATA_ESCAPED_END_TAG_NAME_STATE);
    }

    else {
        this._emitChar('<');
        this._emitChar('/');
        this._reconsumeInState(SCRIPT_DATA_ESCAPED_STATE);
    }
};


//12.2.4.27 Script data escaped end tag name state
//------------------------------------------------------------------
_[SCRIPT_DATA_ESCAPED_END_TAG_NAME_STATE] = function scriptDataEscapedEndTagNameState(cp) {
    if (isAsciiUpper(cp)) {
        this.currentToken.tagName += toAsciiLowerChar(cp);
        this.tempBuff.push(cp);
    }

    else if (isAsciiLower(cp)) {
        this.currentToken.tagName += toChar(cp);
        this.tempBuff.push(cp);
    }

    else {
        if (this._isAppropriateEndTagToken()) {
            if (isWhitespace(cp)) {
                this.state = BEFORE_ATTRIBUTE_NAME_STATE;
                return;
            }

            if (cp === $.SOLIDUS) {
                this.state = SELF_CLOSING_START_TAG_STATE;
                return;
            }

            if (cp === $.GREATER_THAN_SIGN) {
                this._emitCurrentToken();
                this.state = DATA_STATE;
                return;
            }
        }

        this._emitChar('<');
        this._emitChar('/');
        this._emitSeveralCodePoints(this.tempBuff);
        this._reconsumeInState(SCRIPT_DATA_ESCAPED_STATE);
    }
};


//12.2.4.28 Script data double escape start state
//------------------------------------------------------------------
_[SCRIPT_DATA_DOUBLE_ESCAPE_START_STATE] = function scriptDataDoubleEscapeStartState(cp) {
    if (isWhitespace(cp) || cp === $.SOLIDUS || cp === $.GREATER_THAN_SIGN) {
        this.state = this.isTempBufferEqualToScriptString() ? SCRIPT_DATA_DOUBLE_ESCAPED_STATE : SCRIPT_DATA_ESCAPED_STATE;
        this._emitCodePoint(cp);
    }

    else if (isAsciiUpper(cp)) {
        this.tempBuff.push(toAsciiLowerCodePoint(cp));
        this._emitCodePoint(cp);
    }

    else if (isAsciiLower(cp)) {
        this.tempBuff.push(cp);
        this._emitCodePoint(cp);
    }

    else
        this._reconsumeInState(SCRIPT_DATA_ESCAPED_STATE);
};


//12.2.4.29 Script data double escaped state
//------------------------------------------------------------------
_[SCRIPT_DATA_DOUBLE_ESCAPED_STATE] = function scriptDataDoubleEscapedState(cp) {
    if (cp === $.HYPHEN_MINUS) {
        this.state = SCRIPT_DATA_DOUBLE_ESCAPED_DASH_STATE;
        this._emitChar('-');
    }

    else if (cp === $.LESS_THAN_SIGN) {
        this.state = SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE;
        this._emitChar('<');
    }

    else if (cp === $.NULL)
        this._emitChar(UNICODE.REPLACEMENT_CHARACTER);

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else
        this._emitCodePoint(cp);
};


//12.2.4.30 Script data double escaped dash state
//------------------------------------------------------------------
_[SCRIPT_DATA_DOUBLE_ESCAPED_DASH_STATE] = function scriptDataDoubleEscapedDashState(cp) {
    if (cp === $.HYPHEN_MINUS) {
        this.state = SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH_STATE;
        this._emitChar('-');
    }

    else if (cp === $.LESS_THAN_SIGN) {
        this.state = SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE;
        this._emitChar('<');
    }

    else if (cp === $.NULL) {
        this.state = SCRIPT_DATA_DOUBLE_ESCAPED_STATE;
        this._emitChar(UNICODE.REPLACEMENT_CHARACTER);
    }

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else {
        this.state = SCRIPT_DATA_DOUBLE_ESCAPED_STATE;
        this._emitCodePoint(cp);
    }
};


//12.2.4.31 Script data double escaped dash dash state
//------------------------------------------------------------------
_[SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH_STATE] = function scriptDataDoubleEscapedDashDashState(cp) {
    if (cp === $.HYPHEN_MINUS)
        this._emitChar('-');

    else if (cp === $.LESS_THAN_SIGN) {
        this.state = SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE;
        this._emitChar('<');
    }

    else if (cp === $.GREATER_THAN_SIGN) {
        this.state = SCRIPT_DATA_STATE;
        this._emitChar('>');
    }

    else if (cp === $.NULL) {
        this.state = SCRIPT_DATA_DOUBLE_ESCAPED_STATE;
        this._emitChar(UNICODE.REPLACEMENT_CHARACTER);
    }

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else {
        this.state = SCRIPT_DATA_DOUBLE_ESCAPED_STATE;
        this._emitCodePoint(cp);
    }
};


//12.2.4.32 Script data double escaped less-than sign state
//------------------------------------------------------------------
_[SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN_STATE] = function scriptDataDoubleEscapedLessThanSignState(cp) {
    if (cp === $.SOLIDUS) {
        this.tempBuff = [];
        this.state = SCRIPT_DATA_DOUBLE_ESCAPE_END_STATE;
        this._emitChar('/');
    }

    else
        this._reconsumeInState(SCRIPT_DATA_DOUBLE_ESCAPED_STATE);
};


//12.2.4.33 Script data double escape end state
//------------------------------------------------------------------
_[SCRIPT_DATA_DOUBLE_ESCAPE_END_STATE] = function scriptDataDoubleEscapeEndState(cp) {
    if (isWhitespace(cp) || cp === $.SOLIDUS || cp === $.GREATER_THAN_SIGN) {
        this.state = this.isTempBufferEqualToScriptString() ? SCRIPT_DATA_ESCAPED_STATE : SCRIPT_DATA_DOUBLE_ESCAPED_STATE;

        this._emitCodePoint(cp);
    }

    else if (isAsciiUpper(cp)) {
        this.tempBuff.push(toAsciiLowerCodePoint(cp));
        this._emitCodePoint(cp);
    }

    else if (isAsciiLower(cp)) {
        this.tempBuff.push(cp);
        this._emitCodePoint(cp);
    }

    else
        this._reconsumeInState(SCRIPT_DATA_DOUBLE_ESCAPED_STATE);
};


//12.2.4.34 Before attribute name state
//------------------------------------------------------------------
_[BEFORE_ATTRIBUTE_NAME_STATE] = function beforeAttributeNameState(cp) {
    if (isWhitespace(cp))
        return;

    if (cp === $.SOLIDUS || cp === $.GREATER_THAN_SIGN || cp === $.EOF)
        this._reconsumeInState(AFTER_ATTRIBUTE_NAME_STATE);

    else if (cp === $.EQUALS_SIGN) {
        this._createAttr('=');
        this.state = ATTRIBUTE_NAME_STATE;
    }

    else {
        this._createAttr('');
        this._reconsumeInState(ATTRIBUTE_NAME_STATE);
    }
};


//12.2.4.35 Attribute name state
//------------------------------------------------------------------
_[ATTRIBUTE_NAME_STATE] = function attributeNameState(cp) {
    if (isWhitespace(cp) || cp === $.SOLIDUS || cp === $.GREATER_THAN_SIGN || cp === $.EOF) {
        this._leaveAttrName(AFTER_ATTRIBUTE_NAME_STATE);
        this._unconsume();
    }

    else if (cp === $.EQUALS_SIGN)
        this._leaveAttrName(BEFORE_ATTRIBUTE_VALUE_STATE);

    else if (isAsciiUpper(cp))
        this.currentAttr.name += toAsciiLowerChar(cp);

    else if (cp === $.QUOTATION_MARK || cp === $.APOSTROPHE || cp === $.LESS_THAN_SIGN)
        this.currentAttr.name += toChar(cp);

    else if (cp === $.NULL)
        this.currentAttr.name += UNICODE.REPLACEMENT_CHARACTER;

    else
        this.currentAttr.name += toChar(cp);
};


//12.2.4.36 After attribute name state
//------------------------------------------------------------------
_[AFTER_ATTRIBUTE_NAME_STATE] = function afterAttributeNameState(cp) {
    if (isWhitespace(cp))
        return;

    if (cp === $.SOLIDUS)
        this.state = SELF_CLOSING_START_TAG_STATE;

    else if (cp === $.EQUALS_SIGN)
        this.state = BEFORE_ATTRIBUTE_VALUE_STATE;

    else if (cp === $.GREATER_THAN_SIGN) {
        this.state = DATA_STATE;
        this._emitCurrentToken();
    }

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else {
        this._createAttr('');
        this._reconsumeInState(ATTRIBUTE_NAME_STATE);
    }
};


//12.2.4.37 Before attribute value state
//------------------------------------------------------------------
_[BEFORE_ATTRIBUTE_VALUE_STATE] = function beforeAttributeValueState(cp) {
    if (isWhitespace(cp))
        return;

    if (cp === $.QUOTATION_MARK)
        this.state = ATTRIBUTE_VALUE_DOUBLE_QUOTED_STATE;

    else if (cp === $.APOSTROPHE)
        this.state = ATTRIBUTE_VALUE_SINGLE_QUOTED_STATE;

    else
        this._reconsumeInState(ATTRIBUTE_VALUE_UNQUOTED_STATE);
};


//12.2.4.38 Attribute value (double-quoted) state
//------------------------------------------------------------------
_[ATTRIBUTE_VALUE_DOUBLE_QUOTED_STATE] = function attributeValueDoubleQuotedState(cp) {
    if (cp === $.QUOTATION_MARK)
        this.state = AFTER_ATTRIBUTE_VALUE_QUOTED_STATE;

    else if (cp === $.AMPERSAND) {
        this.additionalAllowedCp = $.QUOTATION_MARK;
        this.returnState = this.state;
        this.state = CHARACTER_REFERENCE_IN_ATTRIBUTE_VALUE_STATE;
    }

    else if (cp === $.NULL)
        this.currentAttr.value += UNICODE.REPLACEMENT_CHARACTER;

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else
        this.currentAttr.value += toChar(cp);
};


//12.2.4.39 Attribute value (single-quoted) state
//------------------------------------------------------------------
_[ATTRIBUTE_VALUE_SINGLE_QUOTED_STATE] = function attributeValueSingleQuotedState(cp) {
    if (cp === $.APOSTROPHE)
        this.state = AFTER_ATTRIBUTE_VALUE_QUOTED_STATE;

    else if (cp === $.AMPERSAND) {
        this.additionalAllowedCp = $.APOSTROPHE;
        this.returnState = this.state;
        this.state = CHARACTER_REFERENCE_IN_ATTRIBUTE_VALUE_STATE;
    }

    else if (cp === $.NULL)
        this.currentAttr.value += UNICODE.REPLACEMENT_CHARACTER;

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else
        this.currentAttr.value += toChar(cp);
};


//12.2.4.40 Attribute value (unquoted) state
//------------------------------------------------------------------
_[ATTRIBUTE_VALUE_UNQUOTED_STATE] = function attributeValueUnquotedState(cp) {
    if (isWhitespace(cp))
        this._leaveAttrValue(BEFORE_ATTRIBUTE_NAME_STATE);

    else if (cp === $.AMPERSAND) {
        this.additionalAllowedCp = $.GREATER_THAN_SIGN;
        this.returnState = this.state;
        this.state = CHARACTER_REFERENCE_IN_ATTRIBUTE_VALUE_STATE;
    }

    else if (cp === $.GREATER_THAN_SIGN) {
        this._leaveAttrValue(DATA_STATE);
        this._emitCurrentToken();
    }

    else if (cp === $.NULL)
        this.currentAttr.value += UNICODE.REPLACEMENT_CHARACTER;

    else if (cp === $.QUOTATION_MARK || cp === $.APOSTROPHE || cp === $.LESS_THAN_SIGN ||
             cp === $.EQUALS_SIGN || cp === $.GRAVE_ACCENT)
        this.currentAttr.value += toChar(cp);

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else
        this.currentAttr.value += toChar(cp);
};


//12.2.4.41 Character reference in attribute value state
//------------------------------------------------------------------
_[CHARACTER_REFERENCE_IN_ATTRIBUTE_VALUE_STATE] = function characterReferenceInAttributeValueState(cp) {
    var referencedCodePoints = this._consumeCharacterReference(cp, true);

    if (!this._ensureHibernation()) {
        if (referencedCodePoints) {
            for (var i = 0; i < referencedCodePoints.length; i++)
                this.currentAttr.value += toChar(referencedCodePoints[i]);
        }
        else
            this.currentAttr.value += '&';

        this.state = this.returnState;
    }
};


//12.2.4.42 After attribute value (quoted) state
//------------------------------------------------------------------
_[AFTER_ATTRIBUTE_VALUE_QUOTED_STATE] = function afterAttributeValueQuotedState(cp) {
    if (isWhitespace(cp))
        this._leaveAttrValue(BEFORE_ATTRIBUTE_NAME_STATE);

    else if (cp === $.SOLIDUS)
        this._leaveAttrValue(SELF_CLOSING_START_TAG_STATE);

    else if (cp === $.GREATER_THAN_SIGN) {
        this._leaveAttrValue(DATA_STATE);
        this._emitCurrentToken();
    }

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else
        this._reconsumeInState(BEFORE_ATTRIBUTE_NAME_STATE);
};


//12.2.4.43 Self-closing start tag state
//------------------------------------------------------------------
_[SELF_CLOSING_START_TAG_STATE] = function selfClosingStartTagState(cp) {
    if (cp === $.GREATER_THAN_SIGN) {
        this.currentToken.selfClosing = true;
        this.state = DATA_STATE;
        this._emitCurrentToken();
    }

    else if (cp === $.EOF)
        this._reconsumeInState(DATA_STATE);

    else
        this._reconsumeInState(BEFORE_ATTRIBUTE_NAME_STATE);
};


//12.2.4.44 Bogus comment state
//------------------------------------------------------------------
_[BOGUS_COMMENT_STATE] = function bogusCommentState() {
    this._createCommentToken();
    this._reconsumeInState(BOGUS_COMMENT_STATE_CONTINUATION);
};

//HACK: to support streaming and make BOGUS_COMMENT_STATE reentrant we've
//introduced BOGUS_COMMENT_STATE_CONTINUATION state which will not produce
//comment token on each call.
_[BOGUS_COMMENT_STATE_CONTINUATION] = function bogusCommentStateContinuation(cp) {
    while (true) {
        if (cp === $.GREATER_THAN_SIGN) {
            this.state = DATA_STATE;
            break;
        }

        else if (cp === $.EOF) {
            this._reconsumeInState(DATA_STATE);
            break;
        }

        else {
            this.currentToken.data += cp === $.NULL ? UNICODE.REPLACEMENT_CHARACTER : toChar(cp);

            this._hibernationSnapshot();
            cp = this._consume();

            if (this._ensureHibernation())
                return;
        }
    }

    this._emitCurrentToken();
};

//12.2.4.45 Markup declaration open state
//------------------------------------------------------------------
_[MARKUP_DECLARATION_OPEN_STATE] = function markupDeclarationOpenState(cp) {
    var dashDashMatch = this._consumeSubsequentIfMatch($$.DASH_DASH_STRING, cp, true),
        doctypeMatch = !dashDashMatch && this._consumeSubsequentIfMatch($$.DOCTYPE_STRING, cp, false),
        cdataMatch = !dashDashMatch && !doctypeMatch &&
                     this.allowCDATA &&
                     this._consumeSubsequentIfMatch($$.CDATA_START_STRING, cp, true);

    if (!this._ensureHibernation()) {
        if (dashDashMatch) {
            this._createCommentToken();
            this.state = COMMENT_START_STATE;
        }

        else if (doctypeMatch)
            this.state = DOCTYPE_STATE;

        else if (cdataMatch)
            this.state = CDATA_SECTION_STATE;

        else
            this._reconsumeInState(BOGUS_COMMENT_STATE);
    }
};


//12.2.4.46 Comment start state
//------------------------------------------------------------------
_[COMMENT_START_STATE] = function commentStartState(cp) {
    if (cp === $.HYPHEN_MINUS)
        this.state = COMMENT_START_DASH_STATE;

    else if (cp === $.NULL) {
        this.currentToken.data += UNICODE.REPLACEMENT_CHARACTER;
        this.state = COMMENT_STATE;
    }

    else if (cp === $.GREATER_THAN_SIGN) {
        this.state = DATA_STATE;
        this._emitCurrentToken();
    }

    else if (cp === $.EOF) {
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }

    else {
        this.currentToken.data += toChar(cp);
        this.state = COMMENT_STATE;
    }
};


//12.2.4.47 Comment start dash state
//------------------------------------------------------------------
_[COMMENT_START_DASH_STATE] = function commentStartDashState(cp) {
    if (cp === $.HYPHEN_MINUS)
        this.state = COMMENT_END_STATE;

    else if (cp === $.NULL) {
        this.currentToken.data += '-';
        this.currentToken.data += UNICODE.REPLACEMENT_CHARACTER;
        this.state = COMMENT_STATE;
    }

    else if (cp === $.GREATER_THAN_SIGN) {
        this.state = DATA_STATE;
        this._emitCurrentToken();
    }

    else if (cp === $.EOF) {
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }

    else {
        this.currentToken.data += '-';
        this.currentToken.data += toChar(cp);
        this.state = COMMENT_STATE;
    }
};


//12.2.4.48 Comment state
//------------------------------------------------------------------
_[COMMENT_STATE] = function commentState(cp) {
    if (cp === $.HYPHEN_MINUS)
        this.state = COMMENT_END_DASH_STATE;

    else if (cp === $.NULL)
        this.currentToken.data += UNICODE.REPLACEMENT_CHARACTER;

    else if (cp === $.EOF) {
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }

    else
        this.currentToken.data += toChar(cp);
};


//12.2.4.49 Comment end dash state
//------------------------------------------------------------------
_[COMMENT_END_DASH_STATE] = function commentEndDashState(cp) {
    if (cp === $.HYPHEN_MINUS)
        this.state = COMMENT_END_STATE;

    else if (cp === $.NULL) {
        this.currentToken.data += '-';
        this.currentToken.data += UNICODE.REPLACEMENT_CHARACTER;
        this.state = COMMENT_STATE;
    }

    else if (cp === $.EOF) {
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }

    else {
        this.currentToken.data += '-';
        this.currentToken.data += toChar(cp);
        this.state = COMMENT_STATE;
    }
};


//12.2.4.50 Comment end state
//------------------------------------------------------------------
_[COMMENT_END_STATE] = function commentEndState(cp) {
    if (cp === $.GREATER_THAN_SIGN) {
        this.state = DATA_STATE;
        this._emitCurrentToken();
    }

    else if (cp === $.EXCLAMATION_MARK)
        this.state = COMMENT_END_BANG_STATE;

    else if (cp === $.HYPHEN_MINUS)
        this.currentToken.data += '-';

    else if (cp === $.NULL) {
        this.currentToken.data += '--';
        this.currentToken.data += UNICODE.REPLACEMENT_CHARACTER;
        this.state = COMMENT_STATE;
    }

    else if (cp === $.EOF) {
        this._reconsumeInState(DATA_STATE);
        this._emitCurrentToken();
    }

    else {
        this.currentToken.data += '--';
        this.currentToken.data += toChar(cp);
        this.state = COMMENT_STATE;
    }
};


//12.2.4.51 Comment end bang state
//------------------------------------------------------------------
_[COMMENT_END_BANG_STATE] = function commentEndBangState(cp) {
    if (cp === $.HYPHEN_MINUS) {
        this.currentToken.data += '--!';
        this.state = COMMENT_END_DASH_STATE;
    }

    else if (cp === $.GREATER_THAN_SIGN) {
        this.state = DATA_STATE;
        this._emitCurrentToken();
    }

    else if (cp === $.NULL) {
        this.currentToken.data += '--!';
        this.currentToken.data += UNICODE.REPLACEMENT_CHARACTER;
        this.state = COMMENT_STATE;
    }

    else if (cp === $.EOF) {
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }

    else {
        this.currentToken.data += '--!';
        this.currentToken.data += toChar(cp);
        this.state = COMMENT_STATE;
    }
};


//12.2.4.52 DOCTYPE state
//------------------------------------------------------------------
_[DOCTYPE_STATE] = function doctypeState(cp) {
    if (isWhitespace(cp))
        return;

    else if (cp === $.GREATER_THAN_SIGN) {
        this._createDoctypeToken(null);
        this.currentToken.forceQuirks = true;
        this._emitCurrentToken();
        this.state = DATA_STATE;
    }

    else if (cp === $.EOF) {
        this._createDoctypeToken(null);
        this.currentToken.forceQuirks = true;
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }
    else {
        this._createDoctypeToken('');
        this._reconsumeInState(DOCTYPE_NAME_STATE);
    }
};


//12.2.4.54 DOCTYPE name state
//------------------------------------------------------------------
_[DOCTYPE_NAME_STATE] = function doctypeNameState(cp) {
    if (isWhitespace(cp) || cp === $.GREATER_THAN_SIGN || cp === $.EOF)
        this._reconsumeInState(AFTER_DOCTYPE_NAME_STATE);

    else if (isAsciiUpper(cp))
        this.currentToken.name += toAsciiLowerChar(cp);

    else if (cp === $.NULL)
        this.currentToken.name += UNICODE.REPLACEMENT_CHARACTER;

    else
        this.currentToken.name += toChar(cp);
};


//12.2.4.55 After DOCTYPE name state
//------------------------------------------------------------------
_[AFTER_DOCTYPE_NAME_STATE] = function afterDoctypeNameState(cp) {
    if (isWhitespace(cp))
        return;

    if (cp === $.GREATER_THAN_SIGN) {
        this.state = DATA_STATE;
        this._emitCurrentToken();
    }

    else {
        var publicMatch = this._consumeSubsequentIfMatch($$.PUBLIC_STRING, cp, false),
            systemMatch = !publicMatch && this._consumeSubsequentIfMatch($$.SYSTEM_STRING, cp, false);

        if (!this._ensureHibernation()) {
            if (publicMatch)
                this.state = BEFORE_DOCTYPE_PUBLIC_IDENTIFIER_STATE;

            else if (systemMatch)
                this.state = BEFORE_DOCTYPE_SYSTEM_IDENTIFIER_STATE;

            else {
                this.currentToken.forceQuirks = true;
                this.state = BOGUS_DOCTYPE_STATE;
            }
        }
    }
};


//12.2.4.57 Before DOCTYPE public identifier state
//------------------------------------------------------------------
_[BEFORE_DOCTYPE_PUBLIC_IDENTIFIER_STATE] = function beforeDoctypePublicIdentifierState(cp) {
    if (isWhitespace(cp))
        return;

    if (cp === $.QUOTATION_MARK) {
        this.currentToken.publicId = '';
        this.state = DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED_STATE;
    }

    else if (cp === $.APOSTROPHE) {
        this.currentToken.publicId = '';
        this.state = DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED_STATE;
    }

    else {
        this.currentToken.forceQuirks = true;
        this._reconsumeInState(BOGUS_DOCTYPE_STATE);
    }
};


//12.2.4.58 DOCTYPE public identifier (double-quoted) state
//------------------------------------------------------------------
_[DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED_STATE] = function doctypePublicIdentifierDoubleQuotedState(cp) {
    if (cp === $.QUOTATION_MARK)
        this.state = BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS_STATE;

    else if (cp === $.NULL)
        this.currentToken.publicId += UNICODE.REPLACEMENT_CHARACTER;

    else if (cp === $.GREATER_THAN_SIGN) {
        this.currentToken.forceQuirks = true;
        this._emitCurrentToken();
        this.state = DATA_STATE;
    }

    else if (cp === $.EOF) {
        this.currentToken.forceQuirks = true;
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }

    else
        this.currentToken.publicId += toChar(cp);
};


//12.2.4.59 DOCTYPE public identifier (single-quoted) state
//------------------------------------------------------------------
_[DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED_STATE] = function doctypePublicIdentifierSingleQuotedState(cp) {
    if (cp === $.APOSTROPHE)
        this.state = BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS_STATE;

    else if (cp === $.NULL)
        this.currentToken.publicId += UNICODE.REPLACEMENT_CHARACTER;

    else if (cp === $.GREATER_THAN_SIGN) {
        this.currentToken.forceQuirks = true;
        this._emitCurrentToken();
        this.state = DATA_STATE;
    }

    else if (cp === $.EOF) {
        this.currentToken.forceQuirks = true;
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }

    else
        this.currentToken.publicId += toChar(cp);
};


//12.2.4.61 Between DOCTYPE public and system identifiers state
//------------------------------------------------------------------
_[BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS_STATE] = function betweenDoctypePublicAndSystemIdentifiersState(cp) {
    if (isWhitespace(cp))
        return;

    if (cp === $.GREATER_THAN_SIGN) {
        this._emitCurrentToken();
        this.state = DATA_STATE;
    }

    else if (cp === $.QUOTATION_MARK) {
        this.currentToken.systemId = '';
        this.state = DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE;
    }


    else if (cp === $.APOSTROPHE) {
        this.currentToken.systemId = '';
        this.state = DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE;
    }

    else {
        this.currentToken.forceQuirks = true;
        this._reconsumeInState(BOGUS_DOCTYPE_STATE);
    }
};


//12.2.4.63 Before DOCTYPE system identifier state
//------------------------------------------------------------------
_[BEFORE_DOCTYPE_SYSTEM_IDENTIFIER_STATE] = function beforeDoctypeSystemIdentifierState(cp) {
    if (isWhitespace(cp))
        return;

    if (cp === $.QUOTATION_MARK) {
        this.currentToken.systemId = '';
        this.state = DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE;
    }

    else if (cp === $.APOSTROPHE) {
        this.currentToken.systemId = '';
        this.state = DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE;
    }

    else {
        this.currentToken.forceQuirks = true;
        this._reconsumeInState(BOGUS_DOCTYPE_STATE);
    }
};


//12.2.4.64 DOCTYPE system identifier (double-quoted) state
//------------------------------------------------------------------
_[DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED_STATE] = function doctypeSystemIdentifierDoubleQuotedState(cp) {
    if (cp === $.QUOTATION_MARK)
        this.state = AFTER_DOCTYPE_SYSTEM_IDENTIFIER_STATE;

    else if (cp === $.GREATER_THAN_SIGN) {
        this.currentToken.forceQuirks = true;
        this._emitCurrentToken();
        this.state = DATA_STATE;
    }

    else if (cp === $.NULL)
        this.currentToken.systemId += UNICODE.REPLACEMENT_CHARACTER;

    else if (cp === $.EOF) {
        this.currentToken.forceQuirks = true;
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }

    else
        this.currentToken.systemId += toChar(cp);
};


//12.2.4.65 DOCTYPE system identifier (single-quoted) state
//------------------------------------------------------------------
_[DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED_STATE] = function doctypeSystemIdentifierSingleQuotedState(cp) {
    if (cp === $.APOSTROPHE)
        this.state = AFTER_DOCTYPE_SYSTEM_IDENTIFIER_STATE;

    else if (cp === $.GREATER_THAN_SIGN) {
        this.currentToken.forceQuirks = true;
        this._emitCurrentToken();
        this.state = DATA_STATE;
    }

    else if (cp === $.NULL)
        this.currentToken.systemId += UNICODE.REPLACEMENT_CHARACTER;

    else if (cp === $.EOF) {
        this.currentToken.forceQuirks = true;
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }

    else
        this.currentToken.systemId += toChar(cp);
};


//12.2.4.66 After DOCTYPE system identifier state
//------------------------------------------------------------------
_[AFTER_DOCTYPE_SYSTEM_IDENTIFIER_STATE] = function afterDoctypeSystemIdentifierState(cp) {
    if (isWhitespace(cp))
        return;

    if (cp === $.GREATER_THAN_SIGN) {
        this._emitCurrentToken();
        this.state = DATA_STATE;
    }

    else if (cp === $.EOF) {
        this.currentToken.forceQuirks = true;
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }

    else
        this.state = BOGUS_DOCTYPE_STATE;
};


//12.2.4.67 Bogus DOCTYPE state
//------------------------------------------------------------------
_[BOGUS_DOCTYPE_STATE] = function bogusDoctypeState(cp) {
    if (cp === $.GREATER_THAN_SIGN) {
        this._emitCurrentToken();
        this.state = DATA_STATE;
    }

    else if (cp === $.EOF) {
        this._emitCurrentToken();
        this._reconsumeInState(DATA_STATE);
    }
};


//12.2.4.68 CDATA section state
//------------------------------------------------------------------
_[CDATA_SECTION_STATE] = function cdataSectionState(cp) {
    while (true) {
        if (cp === $.EOF) {
            this._reconsumeInState(DATA_STATE);
            break;
        }

        else {
            var cdataEndMatch = this._consumeSubsequentIfMatch($$.CDATA_END_STRING, cp, true);

            if (this._ensureHibernation())
                break;

            if (cdataEndMatch) {
                this.state = DATA_STATE;
                break;
            }

            this._emitCodePoint(cp);

            this._hibernationSnapshot();
            cp = this._consume();

            if (this._ensureHibernation())
                break;
        }
    }
};


/***/ }),

/***/ "b1e5":
/***/ (function(module, exports, __webpack_require__) {

var getAllKeys = __webpack_require__("a994");

/** Used to compose bitmasks for value comparisons. */
var COMPARE_PARTIAL_FLAG = 1;

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * A specialized version of `baseIsEqualDeep` for objects with support for
 * partial deep comparisons.
 *
 * @private
 * @param {Object} object The object to compare.
 * @param {Object} other The other object to compare.
 * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
 * @param {Function} customizer The function to customize comparisons.
 * @param {Function} equalFunc The function to determine equivalents of values.
 * @param {Object} stack Tracks traversed `object` and `other` objects.
 * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
 */
function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {
  var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
      objProps = getAllKeys(object),
      objLength = objProps.length,
      othProps = getAllKeys(other),
      othLength = othProps.length;

  if (objLength != othLength && !isPartial) {
    return false;
  }
  var index = objLength;
  while (index--) {
    var key = objProps[index];
    if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {
      return false;
    }
  }
  // Check that cyclic values are equal.
  var objStacked = stack.get(object);
  var othStacked = stack.get(other);
  if (objStacked && othStacked) {
    return objStacked == other && othStacked == object;
  }
  var result = true;
  stack.set(object, other);
  stack.set(other, object);

  var skipCtor = isPartial;
  while (++index < objLength) {
    key = objProps[index];
    var objValue = object[key],
        othValue = other[key];

    if (customizer) {
      var compared = isPartial
        ? customizer(othValue, objValue, key, other, object, stack)
        : customizer(objValue, othValue, key, object, other, stack);
    }
    // Recursively compare objects (susceptible to call stack limits).
    if (!(compared === undefined
          ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))
          : compared
        )) {
      result = false;
      break;
    }
    skipCtor || (skipCtor = key == 'constructor');
  }
  if (result && !skipCtor) {
    var objCtor = object.constructor,
        othCtor = other.constructor;

    // Non `Object` object instances with different constructors are not equal.
    if (objCtor != othCtor &&
        ('constructor' in object && 'constructor' in other) &&
        !(typeof objCtor == 'function' && objCtor instanceof objCtor &&
          typeof othCtor == 'function' && othCtor instanceof othCtor)) {
      result = false;
    }
  }
  stack['delete'](object);
  stack['delete'](other);
  return result;
}

module.exports = equalObjects;


/***/ }),

/***/ "b218":
/***/ (function(module, exports) {

/** Used as references for various `Number` constants. */
var MAX_SAFE_INTEGER = 9007199254740991;

/**
 * Checks if `value` is a valid array-like length.
 *
 * **Note:** This method is loosely based on
 * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
 * @example
 *
 * _.isLength(3);
 * // => true
 *
 * _.isLength(Number.MIN_VALUE);
 * // => false
 *
 * _.isLength(Infinity);
 * // => false
 *
 * _.isLength('3');
 * // => false
 */
function isLength(value) {
  return typeof value == 'number' &&
    value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
}

module.exports = isLength;


/***/ }),

/***/ "b2eb":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony import */ var _data_log_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("6b23");
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("ca00");
/* harmony import */ var _utils_event__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("42a5");
/* harmony import */ var _data_amazon_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("ef13");
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }





var ws;
var num = 0;
var disconnection = false;
var time = 10000;
var env = '';
var wsToken;
var reconnecting = false;
var lost = 0; // 丢失心跳包次数

var storeIds;
var urlMap = {
  dev: 'wss://notice-t.umaicloud.com?token=',
  test: 'wss://notice-t.lingxingerp.com?token=',
  pro: 'wss://notice-plug.lingxingerp.com?token='
};

function reconnect(token) {
  if (reconnecting) return;
  reconnecting = true; // 没连接上会一直重连，设置延迟避免请求过多

  chrome.alarms.clear('websocketReconnect');
  _utils_util__WEBPACK_IMPORTED_MODULE_1__[/* alarms */ "b"].setTimeout(function () {
    // console.log('执行断线重连...')
    num += 1;
    webSocket.init(token);
    reconnecting = false;

    if (num == 60) {
      // 10分钟后修改为1分钟重连一次
      time = 60000;
    } else if (num == 80) {
      time = 300000; // 30分钟后修改为5分钟重连一次
    }
  }, 'websocketReconnect', time);
} // 心跳检测


var heartCheck = {
  timeout: 1,
  start: function start() {
    chrome.alarms.clear('websocketHeartCheck');
    _utils_util__WEBPACK_IMPORTED_MODULE_1__[/* alarms */ "b"].setInterval(function () {
      ws.send(heartBeatEncode());
      lost++; // 120秒未收到心跳，主动断开，15s后重连

      if (lost >= 2) {
        lost = 0;
        webSocket.webSocketClose(false, 15000);
        _data_log_js__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].report('心跳包丢失，断开连接', 'except');
        return;
      }
    }, 'websocketHeartCheck', this.timeout);
  },
  reset: function reset() {
    chrome.alarms.clear('websocketHeartCheck');
  }
}; // 生成0-255十进制

var toRandomByte = function toRandomByte() {
  var byte = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0xff;
  return Math.floor(Math.random() * byte);
}; // 十进制转十六进制


var toDechex = function toDechex(num) {
  return num.toString(16).padStart(2, '0');
};
/**
 * @description 
 * 加密规则：随机生成四个字节data01-data02-data03-data04，start01取data02&11的结果，start02取data02，end01取start01^start02
 * data01-data04做简单加密处理，每个值^118
 * @returns start01-start02-data01-data02-data03-data04-end01
 */


function heartBeatEncode() {
  // 随机生成头部一个字节
  var tempDataByte = [];
  var start01 = toRandomByte();
  var start02 = toRandomByte();
  tempDataByte[0] = toDechex(start01 & 11);
  tempDataByte[1] = toDechex(start02); // data数据区

  tempDataByte[2] = toDechex(toRandomByte() ^ 118);
  tempDataByte[3] = toDechex(start01 ^ 118);
  tempDataByte[4] = toDechex(start02 ^ 118);
  tempDataByte[5] = toDechex(toRandomByte() ^ 118); // 最后一位校验位

  tempDataByte[6] = toDechex(start01 & 11 ^ start02);
  return tempDataByte.join('');
} // 判断接收到消息是否是心跳


function isHeartCheck(data) {
  if (data == 1) {
    lost = 0;
  }
}

var webSocket = {
  init: function () {
    var _init = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
      var seller_ids,
          _yield$localStorage$g,
          token,
          res,
          _args = arguments;

      return _regeneratorRuntime().wrap(function _callee$(_context) {
        while (1) {
          switch (_context.prev = _context.next) {
            case 0:
              seller_ids = _args.length > 0 && _args[0] !== undefined ? _args[0] : storeIds;
              _context.next = 3;
              return _utils_util__WEBPACK_IMPORTED_MODULE_1__[/* localStorage */ "y"].getItem(['token']);

            case 3:
              _yield$localStorage$g = _context.sent;
              token = _yield$localStorage$g.token;

              if (!(!token || !seller_ids)) {
                _context.next = 7;
                break;
              }

              return _context.abrupt("return");

            case 7:
              storeIds = seller_ids;
              _context.next = 10;
              return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* gateGet */ "l"])('v1/app/getWebAuth', {
                channel_type: 'store_plug',
                seller_ids: seller_ids
              }, 'notice').catch(function (e) {
                _data_log_js__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("getWebAuth error----".concat(JSON.stringify(e)));
              });

            case 10:
              res = _context.sent;

              if (!(res && res.code === 1)) {
                _context.next = 17;
                break;
              }

              wsToken = res.data.token;
              env = res.data.app_env; // 销毁之前的ws实例

              ws && ws.webSocketClose();
              _context.next = 19;
              break;

            case 17:
              // token获取失败,重连
              reconnect();
              return _context.abrupt("return");

            case 19:
              // if ('WebSocket' in window) {
              ws = new WebSocket(urlMap[env] + wsToken); // } else {
              //   log.setLog('您的浏览器不支持 WebSocket!')
              //   return
              // }

              ws.onmessage = function (e) {
                if (e && e.data) {
                  try {
                    var data = JSON.parse(e.data); // log.setLog(`[websocket]接收数据----${JSON.stringify(data)}`)

                    isHeartCheck(data);
                    Object(_utils_event__WEBPACK_IMPORTED_MODULE_2__[/* distribute */ "a"])('ReceivePush', data.data);
                  } catch (error) {
                    var _data = e.data; // log.setLog(`[websocket]接收数据----${e.data}`)

                    isHeartCheck(_data);
                    Object(_utils_event__WEBPACK_IMPORTED_MODULE_2__[/* distribute */ "a"])('ReceivePush', _data.data); // log.setLog(`[websocket]处理接收数据错误----${JSON.stringify(error)}`)
                  }
                }
              };

              ws.onerror = function (e) {
                ws = null;
                _data_log_js__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("[websocket]\u6570\u636E\u4F20\u8F93\u53D1\u751F\u9519\u8BEF----".concat(JSON.stringify(e)));
                heartCheck.reset();
                reconnect();
              };

              ws.onclose = function () {
                ws = null;
                _data_log_js__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].report('[websocket]连接已关闭', 'except');

                if (!disconnection) {
                  heartCheck.reset();
                  reconnect();
                }
              };

              ws.onopen = function () {
                _data_log_js__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog('[websocket]连接成功');
                num = 0;
                time = 10000;
                disconnection = false;
                heartCheck.start();
              };

            case 24:
            case "end":
              return _context.stop();
          }
        }
      }, _callee);
    }));

    function init() {
      return _init.apply(this, arguments);
    }

    return init;
  }(),
  webSocketClose: function webSocketClose() {
    var disConn = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
    var t = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 10000;
    disconnection = disConn;
    heartCheck.reset();
    chrome.alarms.clear('websocketReconnect');
    num = 0;
    time = t;
    ws && ws.close();
  },
  getWebSocket: function getWebSocket() {
    return ws;
  },
  getStatus: function getStatus() {
    if (ws.readyState == 0) {
      return '未连接';
    } else if (ws.readyState == 1) {
      return '已连接';
    } else if (ws.readyState == 2) {
      return '连接正在关闭';
    } else if (ws.readyState == 3) {
      return '连接已关闭';
    }
  }
};
/* harmony default export */ __webpack_exports__["a"] = (webSocket);

/***/ }),

/***/ "b313":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var replace = String.prototype.replace;
var percentTwenties = /%20/g;

module.exports = {
    'default': 'RFC3986',
    formatters: {
        RFC1738: function (value) {
            return replace.call(value, percentTwenties, '+');
        },
        RFC3986: function (value) {
            return String(value);
        }
    },
    RFC1738: 'RFC1738',
    RFC3986: 'RFC3986'
};


/***/ }),

/***/ "b343":
/***/ (function(module, exports, __webpack_require__) {

var identity = __webpack_require__("cd9d"),
    metaMap = __webpack_require__("6b9a");

/**
 * The base implementation of `setData` without support for hot loop shorting.
 *
 * @private
 * @param {Function} func The function to associate metadata with.
 * @param {*} data The metadata.
 * @returns {Function} Returns `func`.
 */
var baseSetData = !metaMap ? identity : function(func, data) {
  metaMap.set(func, data);
  return func;
};

module.exports = baseSetData;


/***/ }),

/***/ "b4b0":
/***/ (function(module, exports, __webpack_require__) {

var baseTrim = __webpack_require__("8d74"),
    isObject = __webpack_require__("1a8c"),
    isSymbol = __webpack_require__("ffd6");

/** Used as references for various `Number` constants. */
var NAN = 0 / 0;

/** Used to detect bad signed hexadecimal string values. */
var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;

/** Used to detect binary string values. */
var reIsBinary = /^0b[01]+$/i;

/** Used to detect octal string values. */
var reIsOctal = /^0o[0-7]+$/i;

/** Built-in method references without a dependency on `root`. */
var freeParseInt = parseInt;

/**
 * Converts `value` to a number.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to process.
 * @returns {number} Returns the number.
 * @example
 *
 * _.toNumber(3.2);
 * // => 3.2
 *
 * _.toNumber(Number.MIN_VALUE);
 * // => 5e-324
 *
 * _.toNumber(Infinity);
 * // => Infinity
 *
 * _.toNumber('3.2');
 * // => 3.2
 */
function toNumber(value) {
  if (typeof value == 'number') {
    return value;
  }
  if (isSymbol(value)) {
    return NAN;
  }
  if (isObject(value)) {
    var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
    value = isObject(other) ? (other + '') : other;
  }
  if (typeof value != 'string') {
    return value === 0 ? value : +value;
  }
  value = baseTrim(value);
  var isBinary = reIsBinary.test(value);
  return (isBinary || reIsOctal.test(value))
    ? freeParseInt(value.slice(2), isBinary ? 2 : 8)
    : (reIsBadHex.test(value) ? NAN : +value);
}

module.exports = toNumber;


/***/ }),

/***/ "b4c0":
/***/ (function(module, exports, __webpack_require__) {

var assocIndexOf = __webpack_require__("cb5a");

/**
 * Gets the list cache value for `key`.
 *
 * @private
 * @name get
 * @memberOf ListCache
 * @param {string} key The key of the value to get.
 * @returns {*} Returns the entry value.
 */
function listCacheGet(key) {
  var data = this.__data__,
      index = assocIndexOf(data, key);

  return index < 0 ? undefined : data[index][1];
}

module.exports = listCacheGet;


/***/ }),

/***/ "b50d":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");
var settle = __webpack_require__("467f");
var buildURL = __webpack_require__("30b5");
var buildFullPath = __webpack_require__("83b9");
var parseHeaders = __webpack_require__("c345");
var isURLSameOrigin = __webpack_require__("3934");
var createError = __webpack_require__("2d83");

module.exports = function xhrAdapter(config) {
  return new Promise(function dispatchXhrRequest(resolve, reject) {
    var requestData = config.data;
    var requestHeaders = config.headers;

    if (utils.isFormData(requestData)) {
      delete requestHeaders['Content-Type']; // Let the browser set it
    }

    var request = new XMLHttpRequest();

    // HTTP basic authentication
    if (config.auth) {
      var username = config.auth.username || '';
      var password = config.auth.password || '';
      requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);
    }

    var fullPath = buildFullPath(config.baseURL, config.url);
    request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);

    // Set the request timeout in MS
    request.timeout = config.timeout;

    // Listen for ready state
    request.onreadystatechange = function handleLoad() {
      if (!request || request.readyState !== 4) {
        return;
      }

      // The request errored out and we didn't get a response, this will be
      // handled by onerror instead
      // With one exception: request that using file: protocol, most browsers
      // will return status as 0 even though it's a successful request
      if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {
        return;
      }

      // Prepare the response
      var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;
      var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;
      var response = {
        data: responseData,
        status: request.status,
        statusText: request.statusText,
        headers: responseHeaders,
        config: config,
        request: request
      };

      settle(resolve, reject, response);

      // Clean up request
      request = null;
    };

    // Handle browser request cancellation (as opposed to a manual cancellation)
    request.onabort = function handleAbort() {
      if (!request) {
        return;
      }

      reject(createError('Request aborted', config, 'ECONNABORTED', request));

      // Clean up request
      request = null;
    };

    // Handle low level network errors
    request.onerror = function handleError() {
      // Real errors are hidden from us by the browser
      // onerror should only fire if it's a network error
      reject(createError('Network Error', config, null, request));

      // Clean up request
      request = null;
    };

    // Handle timeout
    request.ontimeout = function handleTimeout() {
      var timeoutErrorMessage = 'timeout of ' + config.timeout + 'ms exceeded';
      if (config.timeoutErrorMessage) {
        timeoutErrorMessage = config.timeoutErrorMessage;
      }
      reject(createError(timeoutErrorMessage, config, 'ECONNABORTED',
        request));

      // Clean up request
      request = null;
    };

    // Add xsrf header
    // This is only done if running in a standard browser environment.
    // Specifically not if we're in a web worker, or react-native.
    if (utils.isStandardBrowserEnv()) {
      var cookies = __webpack_require__("7aac");

      // Add xsrf header
      var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?
        cookies.read(config.xsrfCookieName) :
        undefined;

      if (xsrfValue) {
        requestHeaders[config.xsrfHeaderName] = xsrfValue;
      }
    }

    // Add headers to the request
    if ('setRequestHeader' in request) {
      utils.forEach(requestHeaders, function setRequestHeader(val, key) {
        if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {
          // Remove Content-Type if data is undefined
          delete requestHeaders[key];
        } else {
          // Otherwise add header to the request
          request.setRequestHeader(key, val);
        }
      });
    }

    // Add withCredentials to request if needed
    if (!utils.isUndefined(config.withCredentials)) {
      request.withCredentials = !!config.withCredentials;
    }

    // Add responseType to request if needed
    if (config.responseType) {
      try {
        request.responseType = config.responseType;
      } catch (e) {
        // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.
        // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.
        if (config.responseType !== 'json') {
          throw e;
        }
      }
    }

    // Handle progress if needed
    if (typeof config.onDownloadProgress === 'function') {
      request.addEventListener('progress', config.onDownloadProgress);
    }

    // Not all browsers support upload events
    if (typeof config.onUploadProgress === 'function' && request.upload) {
      request.upload.addEventListener('progress', config.onUploadProgress);
    }

    if (config.cancelToken) {
      // Handle cancellation
      config.cancelToken.promise.then(function onCanceled(cancel) {
        if (!request) {
          return;
        }

        request.abort();
        reject(cancel);
        // Clean up request
        request = null;
      });
    }

    if (requestData === undefined) {
      requestData = null;
    }

    // Send the request
    request.send(requestData);
  });
};


/***/ }),

/***/ "b5a7":
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__("0b07"),
    root = __webpack_require__("2b3e");

/* Built-in method references that are verified to be native. */
var DataView = getNative(root, 'DataView');

module.exports = DataView;


/***/ }),

/***/ "b5cf":
/***/ (function(module) {

module.exports = JSON.parse("{\"viewModel\":{\"multiParentItemList\":{\"items\":[{\"asin\":\"B07DFKF9SG\",\"sku\":\"test123\",\"productName\":\"Ciwete 8 Quart Stock Pot, Stainless Steel Stock Pot, Soup Pot Cooking Pot with Lid, Induction Pot for Cooking, Stainless Steel Healthy Cookware Stockpots with Cover Dishwasher Safe\",\"detailPageUrl\":\"http://www.amazon.com/dp/B09QSMM9T3\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41UAzfH0DgL._SY500_.jpg\",\"sellerPrice\":\"69.99\",\"sellerQuantity\":319,\"dealPrice\":{\"editable\":true,\"required\":true,\"knownError\":null,\"minValue\":5,\"maxValue\":\"55.99\",\"value\":59.49},\"dealQuantity\":{\"editable\":true,\"required\":true,\"minValue\":21,\"maxValue\":\"200000000\",\"value\":20},\"dealItemQuantitySold\":-1,\"dealItemQuantityWaitlisted\":-1,\"dealItemRevenue\":0,\"ineligibilityReasons\":[\"FAILED_VALIDATION\",\"FAILED_VALIDATION\"],\"itemValidationErrors\":[\"ITEM_QUANTITY_TOO_LOW\",\"ITEM_PRICE_TOO_HIGH\"],\"validationErrorViews\":[],\"listingStatus\":\"MYI_ACTIVE\",\"itemRating\":4.7,\"itemRatingCount\":59,\"included\":true,\"displayZeroRevenue\":true,\"alternateSkus\":[],\"children\":[{\"asin\":\"B08C32VBRM\",\"sku\":\"XGJ0003\",\"productName\":\"Ciwete 8 Quart Stock Pot, Stainless Steel Stock Pot, Soup Pot Cooking Pot with Lid, Induction Pot for Cooking, Stainless Steel Healthy Cookware Stockpots with Cover Dishwasher Safe\",\"detailPageUrl\":\"http://www.amazon.com/dp/B09QSMM9T3\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41UAzfH0DgL._SY500_.jpg\",\"sellerPrice\":69.99,\"sellerQuantity\":319,\"dealPrice\":{\"editable\":true,\"required\":true,\"knownError\":null,\"minValue\":5,\"maxValue\":55.99,\"value\":59.49},\"dealQuantity\":{\"editable\":true,\"required\":true,\"minValue\":21,\"maxValue\":\"200000000\",\"value\":20},\"dealItemQuantitySold\":-1,\"dealItemQuantityWaitlisted\":-1,\"dealItemRevenue\":0,\"ineligibilityReasons\":[\"FAILED_VALIDATION\",\"FAILED_VALIDATION\"],\"itemValidationErrors\":[\"ITEM_QUANTITY_TOO_LOW\",\"ITEM_PRICE_TOO_HIGH\"],\"validationErrorViews\":[],\"listingStatus\":\"MYI_ACTIVE\",\"itemRating\":4.7,\"itemRatingCount\":59,\"included\":true,\"displayZeroRevenue\":true,\"alternateSkus\":[],\"children\":[],\"dcmsSuppressionReasons\":[],\"dealItemFormDataMapByEventId\":null,\"glanceViews\":null,\"amazonFulfilled\":true,\"offerable\":false,\"valid\":false}],\"dcmsSuppressionReasons\":[],\"dealItemFormDataMapByEventId\":null,\"glanceViews\":null,\"amazonFulfilled\":true,\"offerable\":false,\"valid\":false},{\"asin\":\"B08D3MPS2V\",\"sku\":\"7T-2COF-AV9I\",\"productName\":\"Ciwete 8 Quart Stock Pot 3-Ply Whole Clad Stainless Steel Pot with Glass Lid, Soup Pot Cooking Pot Induction Pot for Cooking, Stainless Steel Healthy Cookware Stockpots with Cover Dishwasher Safe\",\"detailPageUrl\":\"http://www.amazon.com/dp/B09YQ3MMBY\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41XrwUtNKDL._SY500_.jpg\",\"sellerPrice\":\"72.99\",\"sellerQuantity\":0,\"dealPrice\":{\"editable\":true,\"required\":true,\"knownError\":null},\"dealQuantity\":{\"editable\":true,\"required\":true,\"minValue\":null,\"maxValue\":\"200000000\",\"value\":30},\"dealItemQuantitySold\":-1,\"dealItemQuantityWaitlisted\":-1,\"dealItemRevenue\":0,\"ineligibilityReasons\":[\"FAILED_VALIDATION\",\"FAILED_VALIDATION\",\"FAILED_VALIDATION\",\"FAILED_VALIDATION\"],\"itemValidationErrors\":[\"NO_REFERENCE_PRICE\"],\"validationErrorViews\":[],\"listingStatus\":\"MYI_INACTIVE\",\"itemRating\":4.7,\"itemRatingCount\":59,\"included\":true,\"displayZeroRevenue\":true,\"alternateSkus\":[],\"children\":[{\"asin\":\"B09335DXBV\",\"sku\":\"BN-Q83M-S7I3\",\"productName\":\"Ciwete 8 Quart Stock Pot 3-Ply Whole Clad Stainless Steel Pot with Glass Lid, Soup Pot Cooking Pot Induction Pot for Cooking, Stainless Steel Healthy Cookware Stockpots with Cover Dishwasher Safe\",\"detailPageUrl\":\"http://www.amazon.com/dp/B09YQ3MMBY\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41XrwUtNKDL._SY500_.jpg\",\"sellerPrice\":\"72.99\",\"sellerQuantity\":0,\"dealPrice\":{\"editable\":true,\"required\":true,\"knownError\":null},\"dealQuantity\":{\"editable\":true,\"required\":true,\"minValue\":null,\"maxValue\":\"200000000\",\"value\":30},\"dealItemQuantitySold\":-1,\"dealItemQuantityWaitlisted\":-1,\"dealItemRevenue\":0,\"ineligibilityReasons\":[\"FAILED_VALIDATION\",\"FAILED_VALIDATION\",\"FAILED_VALIDATION\",\"FAILED_VALIDATION\"],\"itemValidationErrors\":[\"NO_REFERENCE_PRICE\"],\"validationErrorViews\":[],\"listingStatus\":\"MYI_INACTIVE\",\"itemRating\":4.7,\"itemRatingCount\":59,\"included\":true,\"displayZeroRevenue\":true,\"alternateSkus\":[],\"children\":[],\"dcmsSuppressionReasons\":[],\"dealItemFormDataMapByEventId\":null,\"glanceViews\":null,\"amazonFulfilled\":true,\"offerable\":false,\"valid\":false}],\"dcmsSuppressionReasons\":[],\"dealItemFormDataMapByEventId\":null,\"glanceViews\":null,\"amazonFulfilled\":true,\"offerable\":false,\"valid\":false}],\"canAddItems\":true,\"canRemoveItems\":true,\"minNumRequiredItems\":1,\"minPercentageRequiredItems\":0,\"minDealVolume\":null,\"maxDealVolume\":null,\"validationBasis\":\"CALCULATED_VALUES\",\"unitsSold\":null,\"glanceViews\":null,\"sales\":0},\"allowedActions\":[\"SUBMIT\",\"TERMINATE\"],\"campaignStatus\":\"SUPPRESSED\",\"displayName\":\"Ciwete Stainless Steel Stock Pot\",\"egressUrl\":\"https://www.amazon.com/dp/B09YQ3MMBY\",\"featuredAsin\":\"B09YQ3MMBY\",\"imageUrl\":\"https://m.media-amazon.com/images/I/41XrwUtNKDL._SY500_.jpg\",\"merchandisingType\":\"LIGHTNING_DEAL\",\"internalDescription\":{\"editable\":false,\"required\":true,\"minLength\":1,\"maxLength\":200,\"value\":\"Lightning Deal-2022/07/06 1-4-38-312\"},\"scheduleOptions\":{\"editable\":false,\"required\":false,\"values\":[{\"startDateWithLocale\":\"2022-11-21 上午12:00 PST\",\"endDateWithLocale\":\"2022-11-27 下午11:59 PST\",\"validationConfigurationKey\":\"bfcm2022eventweek\",\"event\":{\"id\":\"cb150b94fa1a4d09a7670403c48c2e6f\",\"displayName\":\"黑色星期五活动周\",\"eventName\":\"黑色星期五\",\"eventSchedulingName\":\"黑色星期五活动周\",\"formattedStartDate\":null,\"formattedEndDate\":null,\"formattedBeginSchedulingDate\":null,\"formattedEndSchedulingDate\":null,\"formattedSurfaceScheduleDate\":null,\"schedulingWindowTranslatableNameId\":\"sellermerch_event_window_black_friday_name\",\"dealScheduleSurfaced\":false,\"epochMSStartDate\":0,\"scheduleOptionWindowAvailable\":false,\"scheduleOptionWindowClosed\":true,\"dealScheduleSurfacedAndBeforeEventEnd\":false,\"epochMSEndDate\":0,\"epochMSScheduleSurfaceDate\":0},\"feeRange\":{\"minFee\":300,\"maxFee\":500,\"valid\":true,\"feeOverridden\":false},\"epochMSStartDate\":1669017600000,\"epochMSEndDate\":1669622340000}],\"value\":{\"startDateWithLocale\":\"2022-11-21 上午12:00 PST\",\"endDateWithLocale\":\"2022-11-27 下午11:59 PST\",\"validationConfigurationKey\":\"bfcm2022eventweek\",\"event\":{\"id\":\"cb150b94fa1a4d09a7670403c48c2e6f\",\"displayName\":\"黑色星期五活动周\",\"eventName\":\"黑色星期五\",\"eventSchedulingName\":\"黑色星期五活动周\",\"formattedStartDate\":null,\"formattedEndDate\":null,\"formattedBeginSchedulingDate\":null,\"formattedEndSchedulingDate\":null,\"formattedSurfaceScheduleDate\":null,\"schedulingWindowTranslatableNameId\":\"sellermerch_event_window_black_friday_name\",\"dealScheduleSurfaced\":false,\"epochMSStartDate\":0,\"scheduleOptionWindowAvailable\":false,\"scheduleOptionWindowClosed\":true,\"dealScheduleSurfacedAndBeforeEventEnd\":false,\"epochMSEndDate\":0,\"epochMSScheduleSurfaceDate\":0},\"feeRange\":{\"minFee\":300,\"maxFee\":500,\"valid\":true,\"feeOverridden\":false},\"epochMSStartDate\":1669017600000,\"epochMSEndDate\":1669622340000}},\"dealValidationErrors\":[\"DEAL_ITEM_ERROR\"],\"dealValidationErrorViews\":[\"GENERIC_ERROR\"],\"event\":{\"id\":\"cb150b94fa1a4d09a7670403c48c2e6f\",\"displayName\":\"黑色星期五活动周\",\"eventName\":\"黑色星期五\",\"eventSchedulingName\":\"黑色星期五活动周\",\"formattedStartDate\":null,\"formattedEndDate\":null,\"formattedBeginSchedulingDate\":\"2022-6-1 上午10:30 PDT\",\"formattedEndSchedulingDate\":\"2022-9-2 下午11:59 PDT\",\"formattedSurfaceScheduleDate\":\"2022-11-11 上午12:00 PST\",\"schedulingWindowTranslatableNameId\":\"sellermerch_event_window_black_friday_name\",\"dealScheduleSurfaced\":false,\"epochMSStartDate\":0,\"scheduleOptionWindowAvailable\":false,\"scheduleOptionWindowClosed\":true,\"dealScheduleSurfacedAndBeforeEventEnd\":false,\"epochMSEndDate\":0,\"epochMSScheduleSurfaceDate\":0},\"nudgeId\":\"abfd5f3d-3078-415b-9226-0f268ad4b10e/B09QSMM9T3/SS0101-A\",\"campaignId\":\"acde509f895065ef7f06c251ac79a00e41219687\",\"externalId\":\"76adccd8\",\"version\":5,\"pendingEdits\":false,\"isAdmin\":false},\"error\":null}");

/***/ }),

/***/ "b639":
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(global) {/*!
 * The buffer module from node.js, for the browser.
 *
 * @author   Feross Aboukhadijeh <http://feross.org>
 * @license  MIT
 */
/* eslint-disable no-proto */



var base64 = __webpack_require__("1fb5")
var ieee754 = __webpack_require__("9152")
var isArray = __webpack_require__("e3db")

exports.Buffer = Buffer
exports.SlowBuffer = SlowBuffer
exports.INSPECT_MAX_BYTES = 50

/**
 * If `Buffer.TYPED_ARRAY_SUPPORT`:
 *   === true    Use Uint8Array implementation (fastest)
 *   === false   Use Object implementation (most compatible, even IE6)
 *
 * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,
 * Opera 11.6+, iOS 4.2+.
 *
 * Due to various browser bugs, sometimes the Object implementation will be used even
 * when the browser supports typed arrays.
 *
 * Note:
 *
 *   - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,
 *     See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.
 *
 *   - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.
 *
 *   - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of
 *     incorrect length in some situations.

 * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they
 * get the Object implementation, which is slower but behaves correctly.
 */

  
  Buffer.TYPED_ARRAY_SUPPORT = typedArraySupport()

/*
 * Export kMaxLength after typed array support is determined.
 */
exports.kMaxLength = kMaxLength()

function typedArraySupport () {
  try {
    var arr = new Uint8Array(1)
    arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}
    return arr.foo() === 42 && // typed array instances can be augmented
        typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`
        arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`
  } catch (e) {
    return false
  }
}

function kMaxLength () {
  return Buffer.TYPED_ARRAY_SUPPORT
    ? 0x7fffffff
    : 0x3fffffff
}

function createBuffer (that, length) {
  if (kMaxLength() < length) {
    throw new RangeError('Invalid typed array length')
  }
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    // Return an augmented `Uint8Array` instance, for best performance
    that = new Uint8Array(length)
    that.__proto__ = Buffer.prototype
  } else {
    // Fallback: Return an object instance of the Buffer class
    if (that === null) {
      that = new Buffer(length)
    }
    that.length = length
  }

  return that
}

/**
 * The Buffer constructor returns instances of `Uint8Array` that have their
 * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of
 * `Uint8Array`, so the returned instances will have all the node `Buffer` methods
 * and the `Uint8Array` methods. Square bracket notation works as expected -- it
 * returns a single octet.
 *
 * The `Uint8Array` prototype remains unmodified.
 */

function Buffer (arg, encodingOrOffset, length) {
  if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {
    return new Buffer(arg, encodingOrOffset, length)
  }

  // Common case.
  if (typeof arg === 'number') {
    if (typeof encodingOrOffset === 'string') {
      throw new Error(
        'If encoding is specified then the first argument must be a string'
      )
    }
    return allocUnsafe(this, arg)
  }
  return from(this, arg, encodingOrOffset, length)
}

Buffer.poolSize = 8192 // not used by this implementation

// TODO: Legacy, not needed anymore. Remove in next major version.
Buffer._augment = function (arr) {
  arr.__proto__ = Buffer.prototype
  return arr
}

function from (that, value, encodingOrOffset, length) {
  if (typeof value === 'number') {
    throw new TypeError('"value" argument must not be a number')
  }

  if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {
    return fromArrayBuffer(that, value, encodingOrOffset, length)
  }

  if (typeof value === 'string') {
    return fromString(that, value, encodingOrOffset)
  }

  return fromObject(that, value)
}

/**
 * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError
 * if value is a number.
 * Buffer.from(str[, encoding])
 * Buffer.from(array)
 * Buffer.from(buffer)
 * Buffer.from(arrayBuffer[, byteOffset[, length]])
 **/
Buffer.from = function (value, encodingOrOffset, length) {
  return from(null, value, encodingOrOffset, length)
}

if (Buffer.TYPED_ARRAY_SUPPORT) {
  Buffer.prototype.__proto__ = Uint8Array.prototype
  Buffer.__proto__ = Uint8Array
  if (typeof Symbol !== 'undefined' && Symbol.species &&
      Buffer[Symbol.species] === Buffer) {
    // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97
    Object.defineProperty(Buffer, Symbol.species, {
      value: null,
      configurable: true
    })
  }
}

function assertSize (size) {
  if (typeof size !== 'number') {
    throw new TypeError('"size" argument must be a number')
  } else if (size < 0) {
    throw new RangeError('"size" argument must not be negative')
  }
}

function alloc (that, size, fill, encoding) {
  assertSize(size)
  if (size <= 0) {
    return createBuffer(that, size)
  }
  if (fill !== undefined) {
    // Only pay attention to encoding if it's a string. This
    // prevents accidentally sending in a number that would
    // be interpretted as a start offset.
    return typeof encoding === 'string'
      ? createBuffer(that, size).fill(fill, encoding)
      : createBuffer(that, size).fill(fill)
  }
  return createBuffer(that, size)
}

/**
 * Creates a new filled Buffer instance.
 * alloc(size[, fill[, encoding]])
 **/
Buffer.alloc = function (size, fill, encoding) {
  return alloc(null, size, fill, encoding)
}

function allocUnsafe (that, size) {
  assertSize(size)
  that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)
  if (!Buffer.TYPED_ARRAY_SUPPORT) {
    for (var i = 0; i < size; ++i) {
      that[i] = 0
    }
  }
  return that
}

/**
 * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.
 * */
Buffer.allocUnsafe = function (size) {
  return allocUnsafe(null, size)
}
/**
 * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.
 */
Buffer.allocUnsafeSlow = function (size) {
  return allocUnsafe(null, size)
}

function fromString (that, string, encoding) {
  if (typeof encoding !== 'string' || encoding === '') {
    encoding = 'utf8'
  }

  if (!Buffer.isEncoding(encoding)) {
    throw new TypeError('"encoding" must be a valid string encoding')
  }

  var length = byteLength(string, encoding) | 0
  that = createBuffer(that, length)

  var actual = that.write(string, encoding)

  if (actual !== length) {
    // Writing a hex string, for example, that contains invalid characters will
    // cause everything after the first invalid character to be ignored. (e.g.
    // 'abxxcd' will be treated as 'ab')
    that = that.slice(0, actual)
  }

  return that
}

function fromArrayLike (that, array) {
  var length = array.length < 0 ? 0 : checked(array.length) | 0
  that = createBuffer(that, length)
  for (var i = 0; i < length; i += 1) {
    that[i] = array[i] & 255
  }
  return that
}

function fromArrayBuffer (that, array, byteOffset, length) {
  array.byteLength // this throws if `array` is not a valid ArrayBuffer

  if (byteOffset < 0 || array.byteLength < byteOffset) {
    throw new RangeError('\'offset\' is out of bounds')
  }

  if (array.byteLength < byteOffset + (length || 0)) {
    throw new RangeError('\'length\' is out of bounds')
  }

  if (byteOffset === undefined && length === undefined) {
    array = new Uint8Array(array)
  } else if (length === undefined) {
    array = new Uint8Array(array, byteOffset)
  } else {
    array = new Uint8Array(array, byteOffset, length)
  }

  if (Buffer.TYPED_ARRAY_SUPPORT) {
    // Return an augmented `Uint8Array` instance, for best performance
    that = array
    that.__proto__ = Buffer.prototype
  } else {
    // Fallback: Return an object instance of the Buffer class
    that = fromArrayLike(that, array)
  }
  return that
}

function fromObject (that, obj) {
  if (Buffer.isBuffer(obj)) {
    var len = checked(obj.length) | 0
    that = createBuffer(that, len)

    if (that.length === 0) {
      return that
    }

    obj.copy(that, 0, 0, len)
    return that
  }

  if (obj) {
    if ((typeof ArrayBuffer !== 'undefined' &&
        obj.buffer instanceof ArrayBuffer) || 'length' in obj) {
      if (typeof obj.length !== 'number' || isnan(obj.length)) {
        return createBuffer(that, 0)
      }
      return fromArrayLike(that, obj)
    }

    if (obj.type === 'Buffer' && isArray(obj.data)) {
      return fromArrayLike(that, obj.data)
    }
  }

  throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')
}

function checked (length) {
  // Note: cannot use `length < kMaxLength()` here because that fails when
  // length is NaN (which is otherwise coerced to zero.)
  if (length >= kMaxLength()) {
    throw new RangeError('Attempt to allocate Buffer larger than maximum ' +
                         'size: 0x' + kMaxLength().toString(16) + ' bytes')
  }
  return length | 0
}

function SlowBuffer (length) {
  if (+length != length) { // eslint-disable-line eqeqeq
    length = 0
  }
  return Buffer.alloc(+length)
}

Buffer.isBuffer = function isBuffer (b) {
  return !!(b != null && b._isBuffer)
}

Buffer.compare = function compare (a, b) {
  if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {
    throw new TypeError('Arguments must be Buffers')
  }

  if (a === b) return 0

  var x = a.length
  var y = b.length

  for (var i = 0, len = Math.min(x, y); i < len; ++i) {
    if (a[i] !== b[i]) {
      x = a[i]
      y = b[i]
      break
    }
  }

  if (x < y) return -1
  if (y < x) return 1
  return 0
}

Buffer.isEncoding = function isEncoding (encoding) {
  switch (String(encoding).toLowerCase()) {
    case 'hex':
    case 'utf8':
    case 'utf-8':
    case 'ascii':
    case 'latin1':
    case 'binary':
    case 'base64':
    case 'ucs2':
    case 'ucs-2':
    case 'utf16le':
    case 'utf-16le':
      return true
    default:
      return false
  }
}

Buffer.concat = function concat (list, length) {
  if (!isArray(list)) {
    throw new TypeError('"list" argument must be an Array of Buffers')
  }

  if (list.length === 0) {
    return Buffer.alloc(0)
  }

  var i
  if (length === undefined) {
    length = 0
    for (i = 0; i < list.length; ++i) {
      length += list[i].length
    }
  }

  var buffer = Buffer.allocUnsafe(length)
  var pos = 0
  for (i = 0; i < list.length; ++i) {
    var buf = list[i]
    if (!Buffer.isBuffer(buf)) {
      throw new TypeError('"list" argument must be an Array of Buffers')
    }
    buf.copy(buffer, pos)
    pos += buf.length
  }
  return buffer
}

function byteLength (string, encoding) {
  if (Buffer.isBuffer(string)) {
    return string.length
  }
  if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&
      (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {
    return string.byteLength
  }
  if (typeof string !== 'string') {
    string = '' + string
  }

  var len = string.length
  if (len === 0) return 0

  // Use a for loop to avoid recursion
  var loweredCase = false
  for (;;) {
    switch (encoding) {
      case 'ascii':
      case 'latin1':
      case 'binary':
        return len
      case 'utf8':
      case 'utf-8':
      case undefined:
        return utf8ToBytes(string).length
      case 'ucs2':
      case 'ucs-2':
      case 'utf16le':
      case 'utf-16le':
        return len * 2
      case 'hex':
        return len >>> 1
      case 'base64':
        return base64ToBytes(string).length
      default:
        if (loweredCase) return utf8ToBytes(string).length // assume utf8
        encoding = ('' + encoding).toLowerCase()
        loweredCase = true
    }
  }
}
Buffer.byteLength = byteLength

function slowToString (encoding, start, end) {
  var loweredCase = false

  // No need to verify that "this.length <= MAX_UINT32" since it's a read-only
  // property of a typed array.

  // This behaves neither like String nor Uint8Array in that we set start/end
  // to their upper/lower bounds if the value passed is out of range.
  // undefined is handled specially as per ECMA-262 6th Edition,
  // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.
  if (start === undefined || start < 0) {
    start = 0
  }
  // Return early if start > this.length. Done here to prevent potential uint32
  // coercion fail below.
  if (start > this.length) {
    return ''
  }

  if (end === undefined || end > this.length) {
    end = this.length
  }

  if (end <= 0) {
    return ''
  }

  // Force coersion to uint32. This will also coerce falsey/NaN values to 0.
  end >>>= 0
  start >>>= 0

  if (end <= start) {
    return ''
  }

  if (!encoding) encoding = 'utf8'

  while (true) {
    switch (encoding) {
      case 'hex':
        return hexSlice(this, start, end)

      case 'utf8':
      case 'utf-8':
        return utf8Slice(this, start, end)

      case 'ascii':
        return asciiSlice(this, start, end)

      case 'latin1':
      case 'binary':
        return latin1Slice(this, start, end)

      case 'base64':
        return base64Slice(this, start, end)

      case 'ucs2':
      case 'ucs-2':
      case 'utf16le':
      case 'utf-16le':
        return utf16leSlice(this, start, end)

      default:
        if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
        encoding = (encoding + '').toLowerCase()
        loweredCase = true
    }
  }
}

// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect
// Buffer instances.
Buffer.prototype._isBuffer = true

function swap (b, n, m) {
  var i = b[n]
  b[n] = b[m]
  b[m] = i
}

Buffer.prototype.swap16 = function swap16 () {
  var len = this.length
  if (len % 2 !== 0) {
    throw new RangeError('Buffer size must be a multiple of 16-bits')
  }
  for (var i = 0; i < len; i += 2) {
    swap(this, i, i + 1)
  }
  return this
}

Buffer.prototype.swap32 = function swap32 () {
  var len = this.length
  if (len % 4 !== 0) {
    throw new RangeError('Buffer size must be a multiple of 32-bits')
  }
  for (var i = 0; i < len; i += 4) {
    swap(this, i, i + 3)
    swap(this, i + 1, i + 2)
  }
  return this
}

Buffer.prototype.swap64 = function swap64 () {
  var len = this.length
  if (len % 8 !== 0) {
    throw new RangeError('Buffer size must be a multiple of 64-bits')
  }
  for (var i = 0; i < len; i += 8) {
    swap(this, i, i + 7)
    swap(this, i + 1, i + 6)
    swap(this, i + 2, i + 5)
    swap(this, i + 3, i + 4)
  }
  return this
}

Buffer.prototype.toString = function toString () {
  var length = this.length | 0
  if (length === 0) return ''
  if (arguments.length === 0) return utf8Slice(this, 0, length)
  return slowToString.apply(this, arguments)
}

Buffer.prototype.equals = function equals (b) {
  if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')
  if (this === b) return true
  return Buffer.compare(this, b) === 0
}

Buffer.prototype.inspect = function inspect () {
  var str = ''
  var max = exports.INSPECT_MAX_BYTES
  if (this.length > 0) {
    str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')
    if (this.length > max) str += ' ... '
  }
  return '<Buffer ' + str + '>'
}

Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {
  if (!Buffer.isBuffer(target)) {
    throw new TypeError('Argument must be a Buffer')
  }

  if (start === undefined) {
    start = 0
  }
  if (end === undefined) {
    end = target ? target.length : 0
  }
  if (thisStart === undefined) {
    thisStart = 0
  }
  if (thisEnd === undefined) {
    thisEnd = this.length
  }

  if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {
    throw new RangeError('out of range index')
  }

  if (thisStart >= thisEnd && start >= end) {
    return 0
  }
  if (thisStart >= thisEnd) {
    return -1
  }
  if (start >= end) {
    return 1
  }

  start >>>= 0
  end >>>= 0
  thisStart >>>= 0
  thisEnd >>>= 0

  if (this === target) return 0

  var x = thisEnd - thisStart
  var y = end - start
  var len = Math.min(x, y)

  var thisCopy = this.slice(thisStart, thisEnd)
  var targetCopy = target.slice(start, end)

  for (var i = 0; i < len; ++i) {
    if (thisCopy[i] !== targetCopy[i]) {
      x = thisCopy[i]
      y = targetCopy[i]
      break
    }
  }

  if (x < y) return -1
  if (y < x) return 1
  return 0
}

// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,
// OR the last index of `val` in `buffer` at offset <= `byteOffset`.
//
// Arguments:
// - buffer - a Buffer to search
// - val - a string, Buffer, or number
// - byteOffset - an index into `buffer`; will be clamped to an int32
// - encoding - an optional encoding, relevant is val is a string
// - dir - true for indexOf, false for lastIndexOf
function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {
  // Empty buffer means no match
  if (buffer.length === 0) return -1

  // Normalize byteOffset
  if (typeof byteOffset === 'string') {
    encoding = byteOffset
    byteOffset = 0
  } else if (byteOffset > 0x7fffffff) {
    byteOffset = 0x7fffffff
  } else if (byteOffset < -0x80000000) {
    byteOffset = -0x80000000
  }
  byteOffset = +byteOffset  // Coerce to Number.
  if (isNaN(byteOffset)) {
    // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer
    byteOffset = dir ? 0 : (buffer.length - 1)
  }

  // Normalize byteOffset: negative offsets start from the end of the buffer
  if (byteOffset < 0) byteOffset = buffer.length + byteOffset
  if (byteOffset >= buffer.length) {
    if (dir) return -1
    else byteOffset = buffer.length - 1
  } else if (byteOffset < 0) {
    if (dir) byteOffset = 0
    else return -1
  }

  // Normalize val
  if (typeof val === 'string') {
    val = Buffer.from(val, encoding)
  }

  // Finally, search either indexOf (if dir is true) or lastIndexOf
  if (Buffer.isBuffer(val)) {
    // Special case: looking for empty string/buffer always fails
    if (val.length === 0) {
      return -1
    }
    return arrayIndexOf(buffer, val, byteOffset, encoding, dir)
  } else if (typeof val === 'number') {
    val = val & 0xFF // Search for a byte value [0-255]
    if (Buffer.TYPED_ARRAY_SUPPORT &&
        typeof Uint8Array.prototype.indexOf === 'function') {
      if (dir) {
        return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)
      } else {
        return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)
      }
    }
    return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)
  }

  throw new TypeError('val must be string, number or Buffer')
}

function arrayIndexOf (arr, val, byteOffset, encoding, dir) {
  var indexSize = 1
  var arrLength = arr.length
  var valLength = val.length

  if (encoding !== undefined) {
    encoding = String(encoding).toLowerCase()
    if (encoding === 'ucs2' || encoding === 'ucs-2' ||
        encoding === 'utf16le' || encoding === 'utf-16le') {
      if (arr.length < 2 || val.length < 2) {
        return -1
      }
      indexSize = 2
      arrLength /= 2
      valLength /= 2
      byteOffset /= 2
    }
  }

  function read (buf, i) {
    if (indexSize === 1) {
      return buf[i]
    } else {
      return buf.readUInt16BE(i * indexSize)
    }
  }

  var i
  if (dir) {
    var foundIndex = -1
    for (i = byteOffset; i < arrLength; i++) {
      if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {
        if (foundIndex === -1) foundIndex = i
        if (i - foundIndex + 1 === valLength) return foundIndex * indexSize
      } else {
        if (foundIndex !== -1) i -= i - foundIndex
        foundIndex = -1
      }
    }
  } else {
    if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength
    for (i = byteOffset; i >= 0; i--) {
      var found = true
      for (var j = 0; j < valLength; j++) {
        if (read(arr, i + j) !== read(val, j)) {
          found = false
          break
        }
      }
      if (found) return i
    }
  }

  return -1
}

Buffer.prototype.includes = function includes (val, byteOffset, encoding) {
  return this.indexOf(val, byteOffset, encoding) !== -1
}

Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {
  return bidirectionalIndexOf(this, val, byteOffset, encoding, true)
}

Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {
  return bidirectionalIndexOf(this, val, byteOffset, encoding, false)
}

function hexWrite (buf, string, offset, length) {
  offset = Number(offset) || 0
  var remaining = buf.length - offset
  if (!length) {
    length = remaining
  } else {
    length = Number(length)
    if (length > remaining) {
      length = remaining
    }
  }

  // must be an even number of digits
  var strLen = string.length
  if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')

  if (length > strLen / 2) {
    length = strLen / 2
  }
  for (var i = 0; i < length; ++i) {
    var parsed = parseInt(string.substr(i * 2, 2), 16)
    if (isNaN(parsed)) return i
    buf[offset + i] = parsed
  }
  return i
}

function utf8Write (buf, string, offset, length) {
  return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)
}

function asciiWrite (buf, string, offset, length) {
  return blitBuffer(asciiToBytes(string), buf, offset, length)
}

function latin1Write (buf, string, offset, length) {
  return asciiWrite(buf, string, offset, length)
}

function base64Write (buf, string, offset, length) {
  return blitBuffer(base64ToBytes(string), buf, offset, length)
}

function ucs2Write (buf, string, offset, length) {
  return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)
}

Buffer.prototype.write = function write (string, offset, length, encoding) {
  // Buffer#write(string)
  if (offset === undefined) {
    encoding = 'utf8'
    length = this.length
    offset = 0
  // Buffer#write(string, encoding)
  } else if (length === undefined && typeof offset === 'string') {
    encoding = offset
    length = this.length
    offset = 0
  // Buffer#write(string, offset[, length][, encoding])
  } else if (isFinite(offset)) {
    offset = offset | 0
    if (isFinite(length)) {
      length = length | 0
      if (encoding === undefined) encoding = 'utf8'
    } else {
      encoding = length
      length = undefined
    }
  // legacy write(string, encoding, offset, length) - remove in v0.13
  } else {
    throw new Error(
      'Buffer.write(string, encoding, offset[, length]) is no longer supported'
    )
  }

  var remaining = this.length - offset
  if (length === undefined || length > remaining) length = remaining

  if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {
    throw new RangeError('Attempt to write outside buffer bounds')
  }

  if (!encoding) encoding = 'utf8'

  var loweredCase = false
  for (;;) {
    switch (encoding) {
      case 'hex':
        return hexWrite(this, string, offset, length)

      case 'utf8':
      case 'utf-8':
        return utf8Write(this, string, offset, length)

      case 'ascii':
        return asciiWrite(this, string, offset, length)

      case 'latin1':
      case 'binary':
        return latin1Write(this, string, offset, length)

      case 'base64':
        // Warning: maxLength not taken into account in base64Write
        return base64Write(this, string, offset, length)

      case 'ucs2':
      case 'ucs-2':
      case 'utf16le':
      case 'utf-16le':
        return ucs2Write(this, string, offset, length)

      default:
        if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
        encoding = ('' + encoding).toLowerCase()
        loweredCase = true
    }
  }
}

Buffer.prototype.toJSON = function toJSON () {
  return {
    type: 'Buffer',
    data: Array.prototype.slice.call(this._arr || this, 0)
  }
}

function base64Slice (buf, start, end) {
  if (start === 0 && end === buf.length) {
    return base64.fromByteArray(buf)
  } else {
    return base64.fromByteArray(buf.slice(start, end))
  }
}

function utf8Slice (buf, start, end) {
  end = Math.min(buf.length, end)
  var res = []

  var i = start
  while (i < end) {
    var firstByte = buf[i]
    var codePoint = null
    var bytesPerSequence = (firstByte > 0xEF) ? 4
      : (firstByte > 0xDF) ? 3
      : (firstByte > 0xBF) ? 2
      : 1

    if (i + bytesPerSequence <= end) {
      var secondByte, thirdByte, fourthByte, tempCodePoint

      switch (bytesPerSequence) {
        case 1:
          if (firstByte < 0x80) {
            codePoint = firstByte
          }
          break
        case 2:
          secondByte = buf[i + 1]
          if ((secondByte & 0xC0) === 0x80) {
            tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)
            if (tempCodePoint > 0x7F) {
              codePoint = tempCodePoint
            }
          }
          break
        case 3:
          secondByte = buf[i + 1]
          thirdByte = buf[i + 2]
          if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {
            tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)
            if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {
              codePoint = tempCodePoint
            }
          }
          break
        case 4:
          secondByte = buf[i + 1]
          thirdByte = buf[i + 2]
          fourthByte = buf[i + 3]
          if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {
            tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)
            if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {
              codePoint = tempCodePoint
            }
          }
      }
    }

    if (codePoint === null) {
      // we did not generate a valid codePoint so insert a
      // replacement char (U+FFFD) and advance only 1 byte
      codePoint = 0xFFFD
      bytesPerSequence = 1
    } else if (codePoint > 0xFFFF) {
      // encode to utf16 (surrogate pair dance)
      codePoint -= 0x10000
      res.push(codePoint >>> 10 & 0x3FF | 0xD800)
      codePoint = 0xDC00 | codePoint & 0x3FF
    }

    res.push(codePoint)
    i += bytesPerSequence
  }

  return decodeCodePointsArray(res)
}

// Based on http://stackoverflow.com/a/22747272/680742, the browser with
// the lowest limit is Chrome, with 0x10000 args.
// We go 1 magnitude less, for safety
var MAX_ARGUMENTS_LENGTH = 0x1000

function decodeCodePointsArray (codePoints) {
  var len = codePoints.length
  if (len <= MAX_ARGUMENTS_LENGTH) {
    return String.fromCharCode.apply(String, codePoints) // avoid extra slice()
  }

  // Decode in chunks to avoid "call stack size exceeded".
  var res = ''
  var i = 0
  while (i < len) {
    res += String.fromCharCode.apply(
      String,
      codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)
    )
  }
  return res
}

function asciiSlice (buf, start, end) {
  var ret = ''
  end = Math.min(buf.length, end)

  for (var i = start; i < end; ++i) {
    ret += String.fromCharCode(buf[i] & 0x7F)
  }
  return ret
}

function latin1Slice (buf, start, end) {
  var ret = ''
  end = Math.min(buf.length, end)

  for (var i = start; i < end; ++i) {
    ret += String.fromCharCode(buf[i])
  }
  return ret
}

function hexSlice (buf, start, end) {
  var len = buf.length

  if (!start || start < 0) start = 0
  if (!end || end < 0 || end > len) end = len

  var out = ''
  for (var i = start; i < end; ++i) {
    out += toHex(buf[i])
  }
  return out
}

function utf16leSlice (buf, start, end) {
  var bytes = buf.slice(start, end)
  var res = ''
  for (var i = 0; i < bytes.length; i += 2) {
    res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)
  }
  return res
}

Buffer.prototype.slice = function slice (start, end) {
  var len = this.length
  start = ~~start
  end = end === undefined ? len : ~~end

  if (start < 0) {
    start += len
    if (start < 0) start = 0
  } else if (start > len) {
    start = len
  }

  if (end < 0) {
    end += len
    if (end < 0) end = 0
  } else if (end > len) {
    end = len
  }

  if (end < start) end = start

  var newBuf
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    newBuf = this.subarray(start, end)
    newBuf.__proto__ = Buffer.prototype
  } else {
    var sliceLen = end - start
    newBuf = new Buffer(sliceLen, undefined)
    for (var i = 0; i < sliceLen; ++i) {
      newBuf[i] = this[i + start]
    }
  }

  return newBuf
}

/*
 * Need to make sure that buffer isn't trying to write out of bounds.
 */
function checkOffset (offset, ext, length) {
  if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')
  if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')
}

Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) checkOffset(offset, byteLength, this.length)

  var val = this[offset]
  var mul = 1
  var i = 0
  while (++i < byteLength && (mul *= 0x100)) {
    val += this[offset + i] * mul
  }

  return val
}

Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) {
    checkOffset(offset, byteLength, this.length)
  }

  var val = this[offset + --byteLength]
  var mul = 1
  while (byteLength > 0 && (mul *= 0x100)) {
    val += this[offset + --byteLength] * mul
  }

  return val
}

Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 1, this.length)
  return this[offset]
}

Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 2, this.length)
  return this[offset] | (this[offset + 1] << 8)
}

Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 2, this.length)
  return (this[offset] << 8) | this[offset + 1]
}

Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)

  return ((this[offset]) |
      (this[offset + 1] << 8) |
      (this[offset + 2] << 16)) +
      (this[offset + 3] * 0x1000000)
}

Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)

  return (this[offset] * 0x1000000) +
    ((this[offset + 1] << 16) |
    (this[offset + 2] << 8) |
    this[offset + 3])
}

Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) checkOffset(offset, byteLength, this.length)

  var val = this[offset]
  var mul = 1
  var i = 0
  while (++i < byteLength && (mul *= 0x100)) {
    val += this[offset + i] * mul
  }
  mul *= 0x80

  if (val >= mul) val -= Math.pow(2, 8 * byteLength)

  return val
}

Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) checkOffset(offset, byteLength, this.length)

  var i = byteLength
  var mul = 1
  var val = this[offset + --i]
  while (i > 0 && (mul *= 0x100)) {
    val += this[offset + --i] * mul
  }
  mul *= 0x80

  if (val >= mul) val -= Math.pow(2, 8 * byteLength)

  return val
}

Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 1, this.length)
  if (!(this[offset] & 0x80)) return (this[offset])
  return ((0xff - this[offset] + 1) * -1)
}

Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 2, this.length)
  var val = this[offset] | (this[offset + 1] << 8)
  return (val & 0x8000) ? val | 0xFFFF0000 : val
}

Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 2, this.length)
  var val = this[offset + 1] | (this[offset] << 8)
  return (val & 0x8000) ? val | 0xFFFF0000 : val
}

Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)

  return (this[offset]) |
    (this[offset + 1] << 8) |
    (this[offset + 2] << 16) |
    (this[offset + 3] << 24)
}

Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)

  return (this[offset] << 24) |
    (this[offset + 1] << 16) |
    (this[offset + 2] << 8) |
    (this[offset + 3])
}

Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)
  return ieee754.read(this, offset, true, 23, 4)
}

Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 4, this.length)
  return ieee754.read(this, offset, false, 23, 4)
}

Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 8, this.length)
  return ieee754.read(this, offset, true, 52, 8)
}

Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {
  if (!noAssert) checkOffset(offset, 8, this.length)
  return ieee754.read(this, offset, false, 52, 8)
}

function checkInt (buf, value, offset, ext, max, min) {
  if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance')
  if (value > max || value < min) throw new RangeError('"value" argument is out of bounds')
  if (offset + ext > buf.length) throw new RangeError('Index out of range')
}

Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {
  value = +value
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) {
    var maxBytes = Math.pow(2, 8 * byteLength) - 1
    checkInt(this, value, offset, byteLength, maxBytes, 0)
  }

  var mul = 1
  var i = 0
  this[offset] = value & 0xFF
  while (++i < byteLength && (mul *= 0x100)) {
    this[offset + i] = (value / mul) & 0xFF
  }

  return offset + byteLength
}

Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {
  value = +value
  offset = offset | 0
  byteLength = byteLength | 0
  if (!noAssert) {
    var maxBytes = Math.pow(2, 8 * byteLength) - 1
    checkInt(this, value, offset, byteLength, maxBytes, 0)
  }

  var i = byteLength - 1
  var mul = 1
  this[offset + i] = value & 0xFF
  while (--i >= 0 && (mul *= 0x100)) {
    this[offset + i] = (value / mul) & 0xFF
  }

  return offset + byteLength
}

Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)
  if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)
  this[offset] = (value & 0xff)
  return offset + 1
}

function objectWriteUInt16 (buf, value, offset, littleEndian) {
  if (value < 0) value = 0xffff + value + 1
  for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {
    buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>
      (littleEndian ? i : 1 - i) * 8
  }
}

Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value & 0xff)
    this[offset + 1] = (value >>> 8)
  } else {
    objectWriteUInt16(this, value, offset, true)
  }
  return offset + 2
}

Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value >>> 8)
    this[offset + 1] = (value & 0xff)
  } else {
    objectWriteUInt16(this, value, offset, false)
  }
  return offset + 2
}

function objectWriteUInt32 (buf, value, offset, littleEndian) {
  if (value < 0) value = 0xffffffff + value + 1
  for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {
    buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff
  }
}

Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset + 3] = (value >>> 24)
    this[offset + 2] = (value >>> 16)
    this[offset + 1] = (value >>> 8)
    this[offset] = (value & 0xff)
  } else {
    objectWriteUInt32(this, value, offset, true)
  }
  return offset + 4
}

Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value >>> 24)
    this[offset + 1] = (value >>> 16)
    this[offset + 2] = (value >>> 8)
    this[offset + 3] = (value & 0xff)
  } else {
    objectWriteUInt32(this, value, offset, false)
  }
  return offset + 4
}

Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) {
    var limit = Math.pow(2, 8 * byteLength - 1)

    checkInt(this, value, offset, byteLength, limit - 1, -limit)
  }

  var i = 0
  var mul = 1
  var sub = 0
  this[offset] = value & 0xFF
  while (++i < byteLength && (mul *= 0x100)) {
    if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {
      sub = 1
    }
    this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
  }

  return offset + byteLength
}

Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) {
    var limit = Math.pow(2, 8 * byteLength - 1)

    checkInt(this, value, offset, byteLength, limit - 1, -limit)
  }

  var i = byteLength - 1
  var mul = 1
  var sub = 0
  this[offset + i] = value & 0xFF
  while (--i >= 0 && (mul *= 0x100)) {
    if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {
      sub = 1
    }
    this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
  }

  return offset + byteLength
}

Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)
  if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)
  if (value < 0) value = 0xff + value + 1
  this[offset] = (value & 0xff)
  return offset + 1
}

Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value & 0xff)
    this[offset + 1] = (value >>> 8)
  } else {
    objectWriteUInt16(this, value, offset, true)
  }
  return offset + 2
}

Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value >>> 8)
    this[offset + 1] = (value & 0xff)
  } else {
    objectWriteUInt16(this, value, offset, false)
  }
  return offset + 2
}

Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value & 0xff)
    this[offset + 1] = (value >>> 8)
    this[offset + 2] = (value >>> 16)
    this[offset + 3] = (value >>> 24)
  } else {
    objectWriteUInt32(this, value, offset, true)
  }
  return offset + 4
}

Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {
  value = +value
  offset = offset | 0
  if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
  if (value < 0) value = 0xffffffff + value + 1
  if (Buffer.TYPED_ARRAY_SUPPORT) {
    this[offset] = (value >>> 24)
    this[offset + 1] = (value >>> 16)
    this[offset + 2] = (value >>> 8)
    this[offset + 3] = (value & 0xff)
  } else {
    objectWriteUInt32(this, value, offset, false)
  }
  return offset + 4
}

function checkIEEE754 (buf, value, offset, ext, max, min) {
  if (offset + ext > buf.length) throw new RangeError('Index out of range')
  if (offset < 0) throw new RangeError('Index out of range')
}

function writeFloat (buf, value, offset, littleEndian, noAssert) {
  if (!noAssert) {
    checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)
  }
  ieee754.write(buf, value, offset, littleEndian, 23, 4)
  return offset + 4
}

Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {
  return writeFloat(this, value, offset, true, noAssert)
}

Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {
  return writeFloat(this, value, offset, false, noAssert)
}

function writeDouble (buf, value, offset, littleEndian, noAssert) {
  if (!noAssert) {
    checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)
  }
  ieee754.write(buf, value, offset, littleEndian, 52, 8)
  return offset + 8
}

Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {
  return writeDouble(this, value, offset, true, noAssert)
}

Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {
  return writeDouble(this, value, offset, false, noAssert)
}

// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)
Buffer.prototype.copy = function copy (target, targetStart, start, end) {
  if (!start) start = 0
  if (!end && end !== 0) end = this.length
  if (targetStart >= target.length) targetStart = target.length
  if (!targetStart) targetStart = 0
  if (end > 0 && end < start) end = start

  // Copy 0 bytes; we're done
  if (end === start) return 0
  if (target.length === 0 || this.length === 0) return 0

  // Fatal error conditions
  if (targetStart < 0) {
    throw new RangeError('targetStart out of bounds')
  }
  if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')
  if (end < 0) throw new RangeError('sourceEnd out of bounds')

  // Are we oob?
  if (end > this.length) end = this.length
  if (target.length - targetStart < end - start) {
    end = target.length - targetStart + start
  }

  var len = end - start
  var i

  if (this === target && start < targetStart && targetStart < end) {
    // descending copy from end
    for (i = len - 1; i >= 0; --i) {
      target[i + targetStart] = this[i + start]
    }
  } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {
    // ascending copy from start
    for (i = 0; i < len; ++i) {
      target[i + targetStart] = this[i + start]
    }
  } else {
    Uint8Array.prototype.set.call(
      target,
      this.subarray(start, start + len),
      targetStart
    )
  }

  return len
}

// Usage:
//    buffer.fill(number[, offset[, end]])
//    buffer.fill(buffer[, offset[, end]])
//    buffer.fill(string[, offset[, end]][, encoding])
Buffer.prototype.fill = function fill (val, start, end, encoding) {
  // Handle string cases:
  if (typeof val === 'string') {
    if (typeof start === 'string') {
      encoding = start
      start = 0
      end = this.length
    } else if (typeof end === 'string') {
      encoding = end
      end = this.length
    }
    if (val.length === 1) {
      var code = val.charCodeAt(0)
      if (code < 256) {
        val = code
      }
    }
    if (encoding !== undefined && typeof encoding !== 'string') {
      throw new TypeError('encoding must be a string')
    }
    if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {
      throw new TypeError('Unknown encoding: ' + encoding)
    }
  } else if (typeof val === 'number') {
    val = val & 255
  }

  // Invalid ranges are not set to a default, so can range check early.
  if (start < 0 || this.length < start || this.length < end) {
    throw new RangeError('Out of range index')
  }

  if (end <= start) {
    return this
  }

  start = start >>> 0
  end = end === undefined ? this.length : end >>> 0

  if (!val) val = 0

  var i
  if (typeof val === 'number') {
    for (i = start; i < end; ++i) {
      this[i] = val
    }
  } else {
    var bytes = Buffer.isBuffer(val)
      ? val
      : utf8ToBytes(new Buffer(val, encoding).toString())
    var len = bytes.length
    for (i = 0; i < end - start; ++i) {
      this[i + start] = bytes[i % len]
    }
  }

  return this
}

// HELPER FUNCTIONS
// ================

var INVALID_BASE64_RE = /[^+\/0-9A-Za-z-_]/g

function base64clean (str) {
  // Node strips out invalid characters like \n and \t from the string, base64-js does not
  str = stringtrim(str).replace(INVALID_BASE64_RE, '')
  // Node converts strings with length < 2 to ''
  if (str.length < 2) return ''
  // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not
  while (str.length % 4 !== 0) {
    str = str + '='
  }
  return str
}

function stringtrim (str) {
  if (str.trim) return str.trim()
  return str.replace(/^\s+|\s+$/g, '')
}

function toHex (n) {
  if (n < 16) return '0' + n.toString(16)
  return n.toString(16)
}

function utf8ToBytes (string, units) {
  units = units || Infinity
  var codePoint
  var length = string.length
  var leadSurrogate = null
  var bytes = []

  for (var i = 0; i < length; ++i) {
    codePoint = string.charCodeAt(i)

    // is surrogate component
    if (codePoint > 0xD7FF && codePoint < 0xE000) {
      // last char was a lead
      if (!leadSurrogate) {
        // no lead yet
        if (codePoint > 0xDBFF) {
          // unexpected trail
          if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
          continue
        } else if (i + 1 === length) {
          // unpaired lead
          if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
          continue
        }

        // valid lead
        leadSurrogate = codePoint

        continue
      }

      // 2 leads in a row
      if (codePoint < 0xDC00) {
        if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
        leadSurrogate = codePoint
        continue
      }

      // valid surrogate pair
      codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000
    } else if (leadSurrogate) {
      // valid bmp char, but last char was a lead
      if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
    }

    leadSurrogate = null

    // encode utf8
    if (codePoint < 0x80) {
      if ((units -= 1) < 0) break
      bytes.push(codePoint)
    } else if (codePoint < 0x800) {
      if ((units -= 2) < 0) break
      bytes.push(
        codePoint >> 0x6 | 0xC0,
        codePoint & 0x3F | 0x80
      )
    } else if (codePoint < 0x10000) {
      if ((units -= 3) < 0) break
      bytes.push(
        codePoint >> 0xC | 0xE0,
        codePoint >> 0x6 & 0x3F | 0x80,
        codePoint & 0x3F | 0x80
      )
    } else if (codePoint < 0x110000) {
      if ((units -= 4) < 0) break
      bytes.push(
        codePoint >> 0x12 | 0xF0,
        codePoint >> 0xC & 0x3F | 0x80,
        codePoint >> 0x6 & 0x3F | 0x80,
        codePoint & 0x3F | 0x80
      )
    } else {
      throw new Error('Invalid code point')
    }
  }

  return bytes
}

function asciiToBytes (str) {
  var byteArray = []
  for (var i = 0; i < str.length; ++i) {
    // Node's code seems to be doing this and not & 0x7F..
    byteArray.push(str.charCodeAt(i) & 0xFF)
  }
  return byteArray
}

function utf16leToBytes (str, units) {
  var c, hi, lo
  var byteArray = []
  for (var i = 0; i < str.length; ++i) {
    if ((units -= 2) < 0) break

    c = str.charCodeAt(i)
    hi = c >> 8
    lo = c % 256
    byteArray.push(lo)
    byteArray.push(hi)
  }

  return byteArray
}

function base64ToBytes (str) {
  return base64.toByteArray(base64clean(str))
}

function blitBuffer (src, dst, offset, length) {
  for (var i = 0; i < length; ++i) {
    if ((i + offset >= dst.length) || (i >= src.length)) break
    dst[i + offset] = src[i]
  }
  return i
}

function isnan (val) {
  return val !== val // eslint-disable-line no-self-compare
}

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("c8ba")))

/***/ }),

/***/ "b647":
/***/ (function(module) {

module.exports = JSON.parse("{\"0\":65533,\"128\":8364,\"130\":8218,\"131\":402,\"132\":8222,\"133\":8230,\"134\":8224,\"135\":8225,\"136\":710,\"137\":8240,\"138\":352,\"139\":8249,\"140\":338,\"142\":381,\"145\":8216,\"146\":8217,\"147\":8220,\"148\":8221,\"149\":8226,\"150\":8211,\"151\":8212,\"152\":732,\"153\":8482,\"154\":353,\"155\":8250,\"156\":339,\"158\":382,\"159\":376}");

/***/ }),

/***/ "b760":
/***/ (function(module, exports, __webpack_require__) {

var baseAssignValue = __webpack_require__("872a"),
    eq = __webpack_require__("9638");

/**
 * This function is like `assignValue` except that it doesn't assign
 * `undefined` values.
 *
 * @private
 * @param {Object} object The object to modify.
 * @param {string} key The key of the property to assign.
 * @param {*} value The value to assign.
 */
function assignMergeValue(object, key, value) {
  if ((value !== undefined && !eq(object[key], value)) ||
      (value === undefined && !(key in object))) {
    baseAssignValue(object, key, value);
  }
}

module.exports = assignMergeValue;


/***/ }),

/***/ "b767":
/***/ (function(module, exports) {

/**
 * Gets the number of `placeholder` occurrences in `array`.
 *
 * @private
 * @param {Array} array The array to inspect.
 * @param {*} placeholder The placeholder to search for.
 * @returns {number} Returns the placeholder count.
 */
function countHolders(array, placeholder) {
  var length = array.length,
      result = 0;

  while (length--) {
    if (array[length] === placeholder) {
      ++result;
    }
  }
  return result;
}

module.exports = countHolders;


/***/ }),

/***/ "b7d1":
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(global) {
/**
 * Module exports.
 */

module.exports = deprecate;

/**
 * Mark that a method should not be used.
 * Returns a modified function which warns once by default.
 *
 * If `localStorage.noDeprecation = true` is set, then it is a no-op.
 *
 * If `localStorage.throwDeprecation = true` is set, then deprecated functions
 * will throw an Error when invoked.
 *
 * If `localStorage.traceDeprecation = true` is set, then deprecated functions
 * will invoke `console.trace()` instead of `console.error()`.
 *
 * @param {Function} fn - the function to deprecate
 * @param {String} msg - the string to print to the console when `fn` is invoked
 * @returns {Function} a new "deprecated" version of `fn`
 * @api public
 */

function deprecate (fn, msg) {
  if (config('noDeprecation')) {
    return fn;
  }

  var warned = false;
  function deprecated() {
    if (!warned) {
      if (config('throwDeprecation')) {
        throw new Error(msg);
      } else if (config('traceDeprecation')) {
        console.trace(msg);
      } else {
        console.warn(msg);
      }
      warned = true;
    }
    return fn.apply(this, arguments);
  }

  return deprecated;
}

/**
 * Checks `localStorage` for boolean values for the given `name`.
 *
 * @param {String} name
 * @returns {Boolean}
 * @api private
 */

function config (name) {
  // accessing global.localStorage can trigger a DOMException in sandboxed iframes
  try {
    if (!global.localStorage) return false;
  } catch (_) {
    return false;
  }
  var val = global.localStorage[name];
  if (null == val) return false;
  return String(val).toLowerCase() === 'true';
}

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("c8ba")))

/***/ }),

/***/ "b893":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


module.exports = parse;

var re_name = /^(?:\\.|[\w\-\u00b0-\uFFFF])+/,
    re_escape = /\\([\da-f]{1,6}\s?|(\s)|.)/ig,
    //modified version of https://github.com/jquery/sizzle/blob/master/src/sizzle.js#L87
    re_attr = /^\s*((?:\\.|[\w\u00b0-\uFFFF\-])+)\s*(?:(\S?)=\s*(?:(['"])([^]*?)\3|(#?(?:\\.|[\w\u00b0-\uFFFF\-])*)|)|)\s*(i)?\]/;

var actionTypes = {
	__proto__: null,
	"undefined": "exists",
	"":  "equals",
	"~": "element",
	"^": "start",
	"$": "end",
	"*": "any",
	"!": "not",
	"|": "hyphen"
};

var simpleSelectors = {
	__proto__: null,
	">": "child",
	"<": "parent",
	"~": "sibling",
	"+": "adjacent"
};

var attribSelectors = {
	__proto__: null,
	"#": ["id", "equals"],
	".": ["class", "element"]
};

//pseudos, whose data-property is parsed as well
var unpackPseudos = {
	__proto__: null,
	"has": true,
	"not": true,
	"matches": true
};

var stripQuotesFromPseudos = {
	__proto__: null,
	"contains": true,
	"icontains": true
};

var quotes = {
	__proto__: null,
	"\"": true,
	"'": true
};

//unescape function taken from https://github.com/jquery/sizzle/blob/master/src/sizzle.js#L139
function funescape( _, escaped, escapedWhitespace ) {
	var high = "0x" + escaped - 0x10000;
	// NaN means non-codepoint
	// Support: Firefox
	// Workaround erroneous numeric interpretation of +"0x"
	return high !== high || escapedWhitespace ?
		escaped :
		// BMP codepoint
		high < 0 ?
			String.fromCharCode( high + 0x10000 ) :
			// Supplemental Plane codepoint (surrogate pair)
			String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );
}

function unescapeCSS(str){
	return str.replace(re_escape, funescape);
}

function isWhitespace(c){
	return c === " " || c === "\n" || c === "\t" || c === "\f" || c === "\r";
}

function parse(selector, options){
	var subselects = [];

	selector = parseSelector(subselects, selector + "", options);

	if(selector !== ""){
		throw new SyntaxError("Unmatched selector: " + selector);
	}

	return subselects;
}

function parseSelector(subselects, selector, options){
	var tokens = [],
		sawWS = false,
		data, firstChar, name, quot;

	function getName(){
		var sub = selector.match(re_name)[0];
		selector = selector.substr(sub.length);
		return unescapeCSS(sub);
	}

	function stripWhitespace(start){
		while(isWhitespace(selector.charAt(start))) start++;
		selector = selector.substr(start);
	}

	function isEscaped(pos) {
		var slashCount = 0;

		while (selector.charAt(--pos) === "\\") slashCount++;
		return (slashCount & 1) === 1;
	}

	stripWhitespace(0);

	while(selector !== ""){
		firstChar = selector.charAt(0);

		if(isWhitespace(firstChar)){
			sawWS = true;
			stripWhitespace(1);
		} else if(firstChar in simpleSelectors){
			tokens.push({type: simpleSelectors[firstChar]});
			sawWS = false;

			stripWhitespace(1);
		} else if(firstChar === ","){
			if(tokens.length === 0){
				throw new SyntaxError("empty sub-selector");
			}
			subselects.push(tokens);
			tokens = [];
			sawWS = false;
			stripWhitespace(1);
		} else {
			if(sawWS){
				if(tokens.length > 0){
					tokens.push({type: "descendant"});
				}
				sawWS = false;
			}

			if(firstChar === "*"){
				selector = selector.substr(1);
				tokens.push({type: "universal"});
			} else if(firstChar in attribSelectors){
				selector = selector.substr(1);
				tokens.push({
					type: "attribute",
					name: attribSelectors[firstChar][0],
					action: attribSelectors[firstChar][1],
					value: getName(),
					ignoreCase: false
				});
			} else if(firstChar === "["){
				selector = selector.substr(1);
				data = selector.match(re_attr);
				if(!data){
					throw new SyntaxError("Malformed attribute selector: " + selector);
				}
				selector = selector.substr(data[0].length);
				name = unescapeCSS(data[1]);

				if(
					!options || (
						"lowerCaseAttributeNames" in options ?
							options.lowerCaseAttributeNames :
							!options.xmlMode
					)
				){
					name = name.toLowerCase();
				}

				tokens.push({
					type: "attribute",
					name: name,
					action: actionTypes[data[2]],
					value: unescapeCSS(data[4] || data[5] || ""),
					ignoreCase: !!data[6]
				});

			} else if(firstChar === ":"){
				if(selector.charAt(1) === ":"){
					selector = selector.substr(2);
					tokens.push({type: "pseudo-element", name: getName().toLowerCase()});
					continue;
				}

				selector = selector.substr(1);

				name = getName().toLowerCase();
				data = null;

				if(selector.charAt(0) === "("){
					if(name in unpackPseudos){
						quot = selector.charAt(1);
						var quoted = quot in quotes;

						selector = selector.substr(quoted + 1);

						data = [];
						selector = parseSelector(data, selector, options);

						if(quoted){
							if(selector.charAt(0) !== quot){
								throw new SyntaxError("unmatched quotes in :" + name);
							} else {
								selector = selector.substr(1);
							}
						}

						if(selector.charAt(0) !== ")"){
							throw new SyntaxError("missing closing parenthesis in :" + name + " " + selector);
						}

						selector = selector.substr(1);
					} else {
						var pos = 1, counter = 1;

						for(; counter > 0 && pos < selector.length; pos++){
							if(selector.charAt(pos) === "(" && !isEscaped(pos)) counter++;
							else if(selector.charAt(pos) === ")" && !isEscaped(pos)) counter--;
						}

						if(counter){
							throw new SyntaxError("parenthesis not matched");
						}

						data = selector.substr(1, pos - 2);
						selector = selector.substr(pos);

						if(name in stripQuotesFromPseudos){
							quot = data.charAt(0);

							if(quot === data.slice(-1) && quot in quotes){
								data = data.slice(1, -1);
							}

							data = unescapeCSS(data);
						}
					}
				}

				tokens.push({type: "pseudo", name: name, data: data});
			} else if(re_name.test(selector)){
				name = getName();

				if(!options || ("lowerCaseTags" in options ? options.lowerCaseTags : !options.xmlMode)){
					name = name.toLowerCase();
				}

				tokens.push({type: "tag", name: name});
			} else {
				if(tokens.length && tokens[tokens.length - 1].type === "descendant"){
					tokens.pop();
				}
				addToken(subselects, tokens);
				return selector;
			}
		}
	}

	addToken(subselects, tokens);

	return selector;
}

function addToken(subselects, tokens){
	if(subselects.length > 0 && tokens.length === 0){
		throw new SyntaxError("empty sub-selector");
	}

	subselects.push(tokens);
}


/***/ }),

/***/ "b952":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


//Const
var NOAH_ARK_CAPACITY = 3;

//List of formatting elements
var FormattingElementList = module.exports = function (treeAdapter) {
    this.length = 0;
    this.entries = [];
    this.treeAdapter = treeAdapter;
    this.bookmark = null;
};

//Entry types
FormattingElementList.MARKER_ENTRY = 'MARKER_ENTRY';
FormattingElementList.ELEMENT_ENTRY = 'ELEMENT_ENTRY';

//Noah Ark's condition
//OPTIMIZATION: at first we try to find possible candidates for exclusion using
//lightweight heuristics without thorough attributes check.
FormattingElementList.prototype._getNoahArkConditionCandidates = function (newElement) {
    var candidates = [];

    if (this.length >= NOAH_ARK_CAPACITY) {
        var neAttrsLength = this.treeAdapter.getAttrList(newElement).length,
            neTagName = this.treeAdapter.getTagName(newElement),
            neNamespaceURI = this.treeAdapter.getNamespaceURI(newElement);

        for (var i = this.length - 1; i >= 0; i--) {
            var entry = this.entries[i];

            if (entry.type === FormattingElementList.MARKER_ENTRY)
                break;

            var element = entry.element,
                elementAttrs = this.treeAdapter.getAttrList(element),
                isCandidate = this.treeAdapter.getTagName(element) === neTagName &&
                              this.treeAdapter.getNamespaceURI(element) === neNamespaceURI &&
                              elementAttrs.length === neAttrsLength;

            if (isCandidate)
                candidates.push({idx: i, attrs: elementAttrs});
        }
    }

    return candidates.length < NOAH_ARK_CAPACITY ? [] : candidates;
};

FormattingElementList.prototype._ensureNoahArkCondition = function (newElement) {
    var candidates = this._getNoahArkConditionCandidates(newElement),
        cLength = candidates.length;

    if (cLength) {
        var neAttrs = this.treeAdapter.getAttrList(newElement),
            neAttrsLength = neAttrs.length,
            neAttrsMap = Object.create(null);

        //NOTE: build attrs map for the new element so we can perform fast lookups
        for (var i = 0; i < neAttrsLength; i++) {
            var neAttr = neAttrs[i];

            neAttrsMap[neAttr.name] = neAttr.value;
        }

        for (i = 0; i < neAttrsLength; i++) {
            for (var j = 0; j < cLength; j++) {
                var cAttr = candidates[j].attrs[i];

                if (neAttrsMap[cAttr.name] !== cAttr.value) {
                    candidates.splice(j, 1);
                    cLength--;
                }

                if (candidates.length < NOAH_ARK_CAPACITY)
                    return;
            }
        }

        //NOTE: remove bottommost candidates until Noah's Ark condition will not be met
        for (i = cLength - 1; i >= NOAH_ARK_CAPACITY - 1; i--) {
            this.entries.splice(candidates[i].idx, 1);
            this.length--;
        }
    }
};

//Mutations
FormattingElementList.prototype.insertMarker = function () {
    this.entries.push({type: FormattingElementList.MARKER_ENTRY});
    this.length++;
};

FormattingElementList.prototype.pushElement = function (element, token) {
    this._ensureNoahArkCondition(element);

    this.entries.push({
        type: FormattingElementList.ELEMENT_ENTRY,
        element: element,
        token: token
    });

    this.length++;
};

FormattingElementList.prototype.insertElementAfterBookmark = function (element, token) {
    var bookmarkIdx = this.length - 1;

    for (; bookmarkIdx >= 0; bookmarkIdx--) {
        if (this.entries[bookmarkIdx] === this.bookmark)
            break;
    }

    this.entries.splice(bookmarkIdx + 1, 0, {
        type: FormattingElementList.ELEMENT_ENTRY,
        element: element,
        token: token
    });

    this.length++;
};

FormattingElementList.prototype.removeEntry = function (entry) {
    for (var i = this.length - 1; i >= 0; i--) {
        if (this.entries[i] === entry) {
            this.entries.splice(i, 1);
            this.length--;
            break;
        }
    }
};

FormattingElementList.prototype.clearToLastMarker = function () {
    while (this.length) {
        var entry = this.entries.pop();

        this.length--;

        if (entry.type === FormattingElementList.MARKER_ENTRY)
            break;
    }
};

//Search
FormattingElementList.prototype.getElementEntryInScopeWithTagName = function (tagName) {
    for (var i = this.length - 1; i >= 0; i--) {
        var entry = this.entries[i];

        if (entry.type === FormattingElementList.MARKER_ENTRY)
            return null;

        if (this.treeAdapter.getTagName(entry.element) === tagName)
            return entry;
    }

    return null;
};

FormattingElementList.prototype.getElementEntry = function (element) {
    for (var i = this.length - 1; i >= 0; i--) {
        var entry = this.entries[i];

        if (entry.type === FormattingElementList.ELEMENT_ENTRY && entry.element === element)
            return entry;
    }

    return null;
};


/***/ }),

/***/ "ba27":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getQueryString; });
/* unused harmony export tkNativeRequest */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return tkGet; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return tkPost; });
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("ca00");
/* harmony import */ var _platform_tiktok_xGnarly_inedx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("6a0a");
/* harmony import */ var _data_log__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("6b23");
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }

function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }




/**
 * 构建查询字符串（不编码）
 * @param {object} params - 参数对象
 * @returns {string} 查询字符串
 */

var buildQueryString = function buildQueryString(params) {
  return Object.entries(params).filter(function (_ref) {
    var _ref2 = _slicedToArray(_ref, 2),
        value = _ref2[1];

    return value !== undefined && value !== null;
  }).map(function (_ref3) {
    var _ref4 = _slicedToArray(_ref3, 2),
        key = _ref4[0],
        value = _ref4[1];

    return "".concat(key, "=").concat(value);
  }).join('&');
};
/**
 * 获取query
 */


var getQueryString = /*#__PURE__*/function () {
  var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(task) {
    var ortherQuery,
        host,
        timezone_name,
        platform_store_id,
        shop_region,
        aid,
        _yield$Promise$all,
        _yield$Promise$all2,
        msTokenCookie,
        i18nextCookie,
        msg,
        _args = arguments;

    return _regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            ortherQuery = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
            host = task.host, timezone_name = task.timezone_name, platform_store_id = task.platform_store_id, shop_region = task.shop_region, aid = task.aid;
            _context.prev = 2;
            _context.t0 = Promise;
            _context.t1 = Object(_utils_util__WEBPACK_IMPORTED_MODULE_0__[/* getCookies */ "p"])({
              url: host,
              name: 'msToken'
            });
            _context.next = 7;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_0__[/* getCookies */ "p"])({
              url: host,
              name: 'i18next'
            });

          case 7:
            _context.t2 = _context.sent;
            _context.t3 = [_context.t1, _context.t2];
            _context.next = 11;
            return _context.t0.all.call(_context.t0, _context.t3);

          case 11:
            _yield$Promise$all = _context.sent;
            _yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 2);
            msTokenCookie = _yield$Promise$all2[0];
            i18nextCookie = _yield$Promise$all2[1];
            return _context.abrupt("return", _objectSpread(_objectSpread({}, ortherQuery), {}, {
              user_language: i18nextCookie === null || i18nextCookie === void 0 ? void 0 : i18nextCookie.value,
              aid: aid,
              // 应用标识，i18n_ecom_alliance:联盟中心，i18n_ecom_shop:商家中心，默认联盟中心
              app_name: task.isAffiliate ? 'i18n_ecom_alliance' : 'i18n_ecom_shop',
              // 下面这些写死
              device_id: '0',
              device_platform: 'web',
              cookie_enabled: 'true',
              screen_width: '1920',
              screen_height: '1080',
              browser_language: 'en-US',
              browser_platform: 'Win32',
              browser_name: 'Mozilla',
              browser_version: '5.0+(Windows+NT+6.2%3B+Win32%3B+x86)+AppleWebKit%2F537.36+(KHTML,+like+Gecko)+Chrome%2F109.0.0.0+Safari%2F537.36',
              browser_online: 'true',
              timezone_name: timezone_name,
              oec_seller_id: platform_store_id,
              shop_region: shop_region,
              msToken: msTokenCookie === null || msTokenCookie === void 0 ? void 0 : msTokenCookie.value
            }));

          case 18:
            _context.prev = 18;
            _context.t4 = _context["catch"](2);
            msg = "[getQueryString] \u83B7\u53D6\u67E5\u8BE2\u5B57\u7B26\u4E32\u5931\u8D25: ".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_0__[/* isError */ "u"])(_context.t4));
            _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog(msg);
            task.msg = msg;

          case 23:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[2, 18]]);
  }));

  return function getQueryString(_x) {
    return _ref5.apply(this, arguments);
  };
}();
/**
 * TikTok 原生请求（自动添加 X-Gnarly 签名）
 * @param {object} options - 请求选项
 * @param {string} options.url - 请求 URL（基础路径，不含查询参数）
 * @param {string} options.method - 请求方法：'get' | 'post'
 * @param {object} options.params - URL 查询参数
 * @param {object} options.data - 请求体数据（POST 时使用）
 * @param {string} options.referer - Referer 头（可选，默认使用 url 的 origin）
 * @param {string} options.origin - Origin 头（可选，默认使用 url 的 origin）
 * @param {string} options.responseType - 响应类型
 * @param {boolean} options.addBogus - 是否额外添加 X-Bogus
 * @returns {Promise<object>} 响应数据
 */

var tkNativeRequest = /*#__PURE__*/function () {
  var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(config) {
    var url, _config$params, params, _config$data, data, method, headers, responseType, _config$referer, referer, _config$origin, origin, _config$addBogus, addBogus, urlOrigin, finalReferer, finalOrigin, queryString, unsignedUrl, _headers, signedUrl, bogus, gnarly, response;

    return _regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;
            url = config.url, _config$params = config.params, params = _config$params === void 0 ? {} : _config$params, _config$data = config.data, data = _config$data === void 0 ? null : _config$data, method = config.method, headers = config.headers, responseType = config.responseType, _config$referer = config.referer, referer = _config$referer === void 0 ? '' : _config$referer, _config$origin = config.origin, origin = _config$origin === void 0 ? '' : _config$origin, _config$addBogus = config.addBogus, addBogus = _config$addBogus === void 0 ? false : _config$addBogus; // 从 URL 提取默认 host

            urlOrigin = new URL(url).origin;
            finalReferer = referer || urlOrigin;
            finalOrigin = origin || urlOrigin; // 1.构建完整 URL（不编码）

            queryString = buildQueryString(params);
            unsignedUrl = queryString ? url.includes('?') ? "".concat(url, "&").concat(queryString) : "".concat(url, "?").concat(queryString) : url; // 2. 设置请求头

            _headers = [{
              name: 'Referer',
              value: finalReferer
            }, {
              name: 'Origin',
              value: finalOrigin
            }];
            _context2.next = 10;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_0__[/* setRequestHearder */ "I"])(_headers, "".concat(urlOrigin, "/*"));

          case 10:
            // 3. 获取签名
            signedUrl = unsignedUrl;

            if (!addBogus) {
              _context2.next = 16;
              break;
            }

            _context2.next = 14;
            return Object(_platform_tiktok_xGnarly_inedx__WEBPACK_IMPORTED_MODULE_1__[/* generateXBogus */ "a"])(unsignedUrl);

          case 14:
            bogus = _context2.sent;
            signedUrl += "&X-Bogus=".concat(bogus);

          case 16:
            _context2.next = 18;
            return Object(_platform_tiktok_xGnarly_inedx__WEBPACK_IMPORTED_MODULE_1__[/* generateXGnarly */ "b"])(unsignedUrl, data);

          case 18:
            gnarly = _context2.sent;
            signedUrl += "&X-Gnarly=".concat(gnarly); // 3. 发送请求（签名已包含在 signedUrl 中）

            _context2.next = 22;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_0__[/* nativeRequest */ "z"])(signedUrl, method, data, headers, responseType);

          case 22:
            response = _context2.sent;
            return _context2.abrupt("return", response);

          case 26:
            _context2.prev = 26;
            _context2.t0 = _context2["catch"](0);
            _data_log__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"].setLog("[tkNativeRequest] \u8BF7\u6C42\u5931\u8D25: ".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_0__[/* isError */ "u"])(_context2.t0)));
            throw _context2.t0;

          case 30:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 26]]);
  }));

  return function tkNativeRequest(_x2) {
    return _ref6.apply(this, arguments);
  };
}();
/**
 * TikTok GET 请求（快捷方法）
 * @param {string} url - 请求 URL
 * @param {object} params - URL 查询参数
 * @param {object} options - 其他选项 { referer, origin, responseType, addBogus }
 */

var tkGet = function tkGet(url) {
  var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  return tkNativeRequest(_objectSpread({
    url: url,
    method: 'get',
    params: params
  }, options));
};
/**
 * TikTok POST 请求（快捷方法）
 * @param {string} url - 请求 URL
 * @param {object} params - URL 查询参数
 * @param {object} data - 请求体数据
 * @param {object} options - 其他选项 { referer, origin, responseType, headers, addBogus }
 */

var tkPost = function tkPost(url) {
  var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  var data = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
  var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
  return tkNativeRequest(_objectSpread({
    url: url,
    method: 'post',
    params: params,
    data: data
  }, options));
};
/* unused harmony default export */ var _unused_webpack_default_export = ({
  tkNativeRequest: tkNativeRequest,
  tkGet: tkGet,
  tkPost: tkPost
});

/***/ }),

/***/ "ba51":
/***/ (function(module, exports) {

/** Used to match wrap detail comments. */
var reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/,
    reSplitDetails = /,? & /;

/**
 * Extracts wrapper details from the `source` body comment.
 *
 * @private
 * @param {string} source The source to inspect.
 * @returns {Array} Returns the wrapper details.
 */
function getWrapDetails(source) {
  var match = source.match(reWrapDetails);
  return match ? match[1].split(reSplitDetails) : [];
}

module.exports = getWrapDetails;


/***/ }),

/***/ "badf":
/***/ (function(module, exports, __webpack_require__) {

var baseMatches = __webpack_require__("642a"),
    baseMatchesProperty = __webpack_require__("1838"),
    identity = __webpack_require__("cd9d"),
    isArray = __webpack_require__("6747"),
    property = __webpack_require__("f9ce");

/**
 * The base implementation of `_.iteratee`.
 *
 * @private
 * @param {*} [value=_.identity] The value to convert to an iteratee.
 * @returns {Function} Returns the iteratee.
 */
function baseIteratee(value) {
  // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.
  // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.
  if (typeof value == 'function') {
    return value;
  }
  if (value == null) {
    return identity;
  }
  if (typeof value == 'object') {
    return isArray(value)
      ? baseMatchesProperty(value[0], value[1])
      : baseMatches(value);
  }
  return property(value);
}

module.exports = baseIteratee;


/***/ }),

/***/ "baea":
/***/ (function(module, exports, __webpack_require__) {

var ElementType = __webpack_require__("af98"),
    getOuterHTML = __webpack_require__("1735"),
    isTag = ElementType.isTag;

module.exports = {
	getInnerHTML: getInnerHTML,
	getOuterHTML: getOuterHTML,
	getText: getText
};

function getInnerHTML(elem, opts){
	return elem.children ? elem.children.map(function(elem){
		return getOuterHTML(elem, opts);
	}).join("") : "";
}

function getText(elem){
	if(Array.isArray(elem)) return elem.map(getText).join("");
	if(isTag(elem) || elem.type === ElementType.CDATA) return getText(elem.children);
	if(elem.type === ElementType.Text) return elem.data;
	return "";
}


/***/ }),

/***/ "bbad":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var defaultTreeAdapter = __webpack_require__("bd47"),
    mergeOptions = __webpack_require__("de90"),
    doctype = __webpack_require__("1ff4"),
    HTML = __webpack_require__("f30b");

//Aliases
var $ = HTML.TAG_NAMES,
    NS = HTML.NAMESPACES;

//Default serializer options
var DEFAULT_OPTIONS = {
    treeAdapter: defaultTreeAdapter
};

//Escaping regexes
var AMP_REGEX = /&/g,
    NBSP_REGEX = /\u00a0/g,
    DOUBLE_QUOTE_REGEX = /"/g,
    LT_REGEX = /</g,
    GT_REGEX = />/g;

//Serializer
var Serializer = module.exports = function (node, options) {
    this.options = mergeOptions(DEFAULT_OPTIONS, options);
    this.treeAdapter = this.options.treeAdapter;

    this.html = '';
    this.startNode = node;
};

// NOTE: exported as static method for the testing purposes
Serializer.escapeString = function (str, attrMode) {
    str = str
        .replace(AMP_REGEX, '&amp;')
        .replace(NBSP_REGEX, '&nbsp;');

    if (attrMode)
        str = str.replace(DOUBLE_QUOTE_REGEX, '&quot;');

    else {
        str = str
            .replace(LT_REGEX, '&lt;')
            .replace(GT_REGEX, '&gt;');
    }

    return str;
};


//API
Serializer.prototype.serialize = function () {
    this._serializeChildNodes(this.startNode);

    return this.html;
};


//Internals
Serializer.prototype._serializeChildNodes = function (parentNode) {
    var childNodes = this.treeAdapter.getChildNodes(parentNode);

    if (childNodes) {
        for (var i = 0, cnLength = childNodes.length; i < cnLength; i++) {
            var currentNode = childNodes[i];

            if (this.treeAdapter.isElementNode(currentNode))
                this._serializeElement(currentNode);

            else if (this.treeAdapter.isTextNode(currentNode))
                this._serializeTextNode(currentNode);

            else if (this.treeAdapter.isCommentNode(currentNode))
                this._serializeCommentNode(currentNode);

            else if (this.treeAdapter.isDocumentTypeNode(currentNode))
                this._serializeDocumentTypeNode(currentNode);
        }
    }
};

Serializer.prototype._serializeElement = function (node) {
    var tn = this.treeAdapter.getTagName(node),
        ns = this.treeAdapter.getNamespaceURI(node);

    this.html += '<' + tn;
    this._serializeAttributes(node);
    this.html += '>';

    if (tn !== $.AREA && tn !== $.BASE && tn !== $.BASEFONT && tn !== $.BGSOUND && tn !== $.BR && tn !== $.BR &&
        tn !== $.COL && tn !== $.EMBED && tn !== $.FRAME && tn !== $.HR && tn !== $.IMG && tn !== $.INPUT &&
        tn !== $.KEYGEN && tn !== $.LINK && tn !== $.MENUITEM && tn !== $.META && tn !== $.PARAM && tn !== $.SOURCE &&
        tn !== $.TRACK && tn !== $.WBR) {

        var childNodesHolder = tn === $.TEMPLATE && ns === NS.HTML ?
            this.treeAdapter.getTemplateContent(node) :
            node;

        this._serializeChildNodes(childNodesHolder);
        this.html += '</' + tn + '>';
    }
};

Serializer.prototype._serializeAttributes = function (node) {
    var attrs = this.treeAdapter.getAttrList(node);

    for (var i = 0, attrsLength = attrs.length; i < attrsLength; i++) {
        var attr = attrs[i],
            value = Serializer.escapeString(attr.value, true);

        this.html += ' ';

        if (!attr.namespace)
            this.html += attr.name;

        else if (attr.namespace === NS.XML)
            this.html += 'xml:' + attr.name;

        else if (attr.namespace === NS.XMLNS) {
            if (attr.name !== 'xmlns')
                this.html += 'xmlns:';

            this.html += attr.name;
        }

        else if (attr.namespace === NS.XLINK)
            this.html += 'xlink:' + attr.name;

        else
            this.html += attr.namespace + ':' + attr.name;

        this.html += '="' + value + '"';
    }
};

Serializer.prototype._serializeTextNode = function (node) {
    var content = this.treeAdapter.getTextNodeContent(node),
        parent = this.treeAdapter.getParentNode(node),
        parentTn = void 0;

    if (parent && this.treeAdapter.isElementNode(parent))
        parentTn = this.treeAdapter.getTagName(parent);

    if (parentTn === $.STYLE || parentTn === $.SCRIPT || parentTn === $.XMP || parentTn === $.IFRAME ||
        parentTn === $.NOEMBED || parentTn === $.NOFRAMES || parentTn === $.PLAINTEXT || parentTn === $.NOSCRIPT)

        this.html += content;

    else
        this.html += Serializer.escapeString(content, false);
};

Serializer.prototype._serializeCommentNode = function (node) {
    this.html += '<!--' + this.treeAdapter.getCommentNodeContent(node) + '-->';
};

Serializer.prototype._serializeDocumentTypeNode = function (node) {
    var name = this.treeAdapter.getDocumentTypeNodeName(node);

    this.html += '<' + doctype.serializeContent(name, null, null) + '>';
};


/***/ }),

/***/ "bbc0":
/***/ (function(module, exports, __webpack_require__) {

var nativeCreate = __webpack_require__("6044");

/** Used to stand-in for `undefined` hash values. */
var HASH_UNDEFINED = '__lodash_hash_undefined__';

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Gets the hash value for `key`.
 *
 * @private
 * @name get
 * @memberOf Hash
 * @param {string} key The key of the value to get.
 * @returns {*} Returns the entry value.
 */
function hashGet(key) {
  var data = this.__data__;
  if (nativeCreate) {
    var result = data[key];
    return result === HASH_UNDEFINED ? undefined : result;
  }
  return hasOwnProperty.call(data, key) ? data[key] : undefined;
}

module.exports = hashGet;


/***/ }),

/***/ "bc3a":
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__("cee4");

/***/ }),

/***/ "bcc5":
/***/ (function(module, exports, __webpack_require__) {

module.exports = Stream;

var Parser = __webpack_require__("374e");
var WritableStream = __webpack_require__(0).Writable;
var StringDecoder = __webpack_require__("7d72").StringDecoder;
var Buffer = __webpack_require__("b639").Buffer;

function Stream(cbs, options) {
    var parser = (this._parser = new Parser(cbs, options));
    var decoder = (this._decoder = new StringDecoder());

    WritableStream.call(this, { decodeStrings: false });

    this.once("finish", function() {
        parser.end(decoder.end());
    });
}

__webpack_require__("3fb5")(Stream, WritableStream);

Stream.prototype._write = function(chunk, encoding, cb) {
    if (chunk instanceof Buffer) chunk = this._decoder.write(chunk);
    this._parser.write(chunk);
    cb();
};


/***/ }),

/***/ "bcdf":
/***/ (function(module, exports) {

/**
 * This method returns `undefined`.
 *
 * @static
 * @memberOf _
 * @since 2.3.0
 * @category Util
 * @example
 *
 * _.times(2, _.noop);
 * // => [undefined, undefined]
 */
function noop() {
  // No operation performed.
}

module.exports = noop;


/***/ }),

/***/ "bd47":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var DOCUMENT_MODE = __webpack_require__("f30b").DOCUMENT_MODE;

//Node construction
exports.createDocument = function () {
    return {
        nodeName: '#document',
        mode: DOCUMENT_MODE.NO_QUIRKS,
        childNodes: []
    };
};

exports.createDocumentFragment = function () {
    return {
        nodeName: '#document-fragment',
        childNodes: []
    };
};

exports.createElement = function (tagName, namespaceURI, attrs) {
    return {
        nodeName: tagName,
        tagName: tagName,
        attrs: attrs,
        namespaceURI: namespaceURI,
        childNodes: [],
        parentNode: null
    };
};

exports.createCommentNode = function (data) {
    return {
        nodeName: '#comment',
        data: data,
        parentNode: null
    };
};

var createTextNode = function (value) {
    return {
        nodeName: '#text',
        value: value,
        parentNode: null
    };
};


//Tree mutation
var appendChild = exports.appendChild = function (parentNode, newNode) {
    parentNode.childNodes.push(newNode);
    newNode.parentNode = parentNode;
};

var insertBefore = exports.insertBefore = function (parentNode, newNode, referenceNode) {
    var insertionIdx = parentNode.childNodes.indexOf(referenceNode);

    parentNode.childNodes.splice(insertionIdx, 0, newNode);
    newNode.parentNode = parentNode;
};

exports.setTemplateContent = function (templateElement, contentElement) {
    templateElement.content = contentElement;
};

exports.getTemplateContent = function (templateElement) {
    return templateElement.content;
};

exports.setDocumentType = function (document, name, publicId, systemId) {
    var doctypeNode = null;

    for (var i = 0; i < document.childNodes.length; i++) {
        if (document.childNodes[i].nodeName === '#documentType') {
            doctypeNode = document.childNodes[i];
            break;
        }
    }

    if (doctypeNode) {
        doctypeNode.name = name;
        doctypeNode.publicId = publicId;
        doctypeNode.systemId = systemId;
    }

    else {
        appendChild(document, {
            nodeName: '#documentType',
            name: name,
            publicId: publicId,
            systemId: systemId
        });
    }
};

exports.setDocumentMode = function (document, mode) {
    document.mode = mode;
};

exports.getDocumentMode = function (document) {
    return document.mode;
};

exports.detachNode = function (node) {
    if (node.parentNode) {
        var idx = node.parentNode.childNodes.indexOf(node);

        node.parentNode.childNodes.splice(idx, 1);
        node.parentNode = null;
    }
};

exports.insertText = function (parentNode, text) {
    if (parentNode.childNodes.length) {
        var prevNode = parentNode.childNodes[parentNode.childNodes.length - 1];

        if (prevNode.nodeName === '#text') {
            prevNode.value += text;
            return;
        }
    }

    appendChild(parentNode, createTextNode(text));
};

exports.insertTextBefore = function (parentNode, text, referenceNode) {
    var prevNode = parentNode.childNodes[parentNode.childNodes.indexOf(referenceNode) - 1];

    if (prevNode && prevNode.nodeName === '#text')
        prevNode.value += text;
    else
        insertBefore(parentNode, createTextNode(text), referenceNode);
};

exports.adoptAttributes = function (recipient, attrs) {
    var recipientAttrsMap = [];

    for (var i = 0; i < recipient.attrs.length; i++)
        recipientAttrsMap.push(recipient.attrs[i].name);

    for (var j = 0; j < attrs.length; j++) {
        if (recipientAttrsMap.indexOf(attrs[j].name) === -1)
            recipient.attrs.push(attrs[j]);
    }
};


//Tree traversing
exports.getFirstChild = function (node) {
    return node.childNodes[0];
};

exports.getChildNodes = function (node) {
    return node.childNodes;
};

exports.getParentNode = function (node) {
    return node.parentNode;
};

exports.getAttrList = function (element) {
    return element.attrs;
};

//Node data
exports.getTagName = function (element) {
    return element.tagName;
};

exports.getNamespaceURI = function (element) {
    return element.namespaceURI;
};

exports.getTextNodeContent = function (textNode) {
    return textNode.value;
};

exports.getCommentNodeContent = function (commentNode) {
    return commentNode.data;
};

exports.getDocumentTypeNodeName = function (doctypeNode) {
    return doctypeNode.name;
};

exports.getDocumentTypeNodePublicId = function (doctypeNode) {
    return doctypeNode.publicId;
};

exports.getDocumentTypeNodeSystemId = function (doctypeNode) {
    return doctypeNode.systemId;
};

//Node types
exports.isTextNode = function (node) {
    return node.nodeName === '#text';
};

exports.isCommentNode = function (node) {
    return node.nodeName === '#comment';
};

exports.isDocumentTypeNode = function (node) {
    return node.nodeName === '#documentType';
};

exports.isElementNode = function (node) {
    return !!node.tagName;
};


/***/ }),

/***/ "bd91":
/***/ (function(module) {

module.exports = JSON.parse("{\"success\":true,\"errorCode\":1000000,\"errorMsg\":null,\"result\":{\"total\":10,\"resultList\":[{\"createTime\":\"2026-04-30 20:06:23\",\"transactionTime\":\"2026-04-30 20:06:23\",\"moneyChangeType\":2,\"fundType\":100,\"fundTypeDesc\":\"结算\",\"currencyType\":\"CNY\",\"amount\":\"+¥7.70\",\"amountFormat\":{\"value\":770,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"+\",\"digitalText\":\"7.70\"},\"remark\":\"\",\"remarkPrompt\":null,\"queryId\":\"BFI002604301240200001821013812070086\",\"batchId\":\"PB-BATCH-NGN-CNY-147-2026-04-27-1\",\"originAmount\":770,\"isVisible\":true,\"detailJumpPath\":\"/link-agent-seller?targetUniqueId=eyJ1IjoieWEwa0xZUkx2MWp2RnRRckgwYkk4UT09IiwidiI6MX0%3D&targetUrl=https%3A%2F%2Fagentseller-eu.temu.com%2Flabor%2Fbill-download%3FbizId%3DPB-BATCH-NGN-CNY-147-2026-04-27-1%26createTime%3D2026-04-30%2B20%253A06%253A23%26fundType%3D100&region=2\",\"withdrawProcess\":false,\"transSn\":\"PB-BATCH-NGN-CNY-147-2026-04-27-1\",\"bizType\":\"settle_negative\",\"sourceRegion\":2,\"extraMap\":{}},{\"createTime\":\"2026-04-30 02:29:25\",\"transactionTime\":\"2026-04-30 02:29:25\",\"moneyChangeType\":2,\"fundType\":100,\"fundTypeDesc\":\"结算\",\"currencyType\":\"CNY\",\"amount\":\"+¥28.80\",\"amountFormat\":{\"value\":2880,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"+\",\"digitalText\":\"28.80\"},\"remark\":\"\",\"remarkPrompt\":null,\"queryId\":\"BFI002604291840200001817683028070086\",\"batchId\":\"PB-BATCH-EUR-CNY-32-2026-04-26-1\",\"originAmount\":2880,\"isVisible\":true,\"detailJumpPath\":\"/link-agent-seller?targetUniqueId=eyJ1IjoieWEwa0xZUkx2MWp2RnRRckgwYkk4UT09IiwidiI6MX0%3D&targetUrl=https%3A%2F%2Fagentseller-eu.temu.com%2Flabor%2Fbill-download%3FbizId%3DPB-BATCH-EUR-CNY-32-2026-04-26-1%26createTime%3D2026-04-30%2B02%253A29%253A25%26fundType%3D100&region=2\",\"withdrawProcess\":false,\"transSn\":\"PB-BATCH-EUR-CNY-32-2026-04-26-1\",\"bizType\":\"settle_negative\",\"sourceRegion\":2,\"extraMap\":{}},{\"createTime\":\"2026-04-29 17:42:34\",\"transactionTime\":\"2026-04-29 17:42:34\",\"moneyChangeType\":2,\"fundType\":400,\"fundTypeDesc\":\"支出\",\"currencyType\":\"CNY\",\"amount\":\"+¥11.94\",\"amountFormat\":{\"value\":1194,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"+\",\"digitalText\":\"11.94\"},\"remark\":\"消费者及履约保障-售后问题\",\"remarkPrompt\":null,\"queryId\":\"BFI002604290940000001793779589070086\",\"batchId\":\"BFI002604290940000001793779589070086\",\"originAmount\":1194,\"isVisible\":true,\"detailJumpPath\":\"detail_window\",\"withdrawProcess\":false,\"transSn\":\"159-05716053043833208-D02\",\"bizType\":\"deduct_risk_punish\",\"sourceRegion\":1,\"extraMap\":{}},{\"createTime\":\"2026-04-29 16:35:39\",\"transactionTime\":\"2026-04-29 16:35:39\",\"moneyChangeType\":2,\"fundType\":400,\"fundTypeDesc\":\"支出\",\"currencyType\":\"CNY\",\"amount\":\"+¥236.10\",\"amountFormat\":{\"value\":23610,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"+\",\"digitalText\":\"236.10\"},\"remark\":\"仓储综合服务费\",\"remarkPrompt\":null,\"queryId\":\"BFI002604290840300001786694796070086\",\"batchId\":\"BFI002604290840300001786694796070086\",\"originAmount\":23610,\"isVisible\":true,\"detailJumpPath\":\"/sc-finance/ws/bill-detail?uniqueId=eyJ1IjoieWEwa0xZUkx2MWp2RnRRckgwYkk4UT09IiwidiI6MX0%3D&mallName=LAVAED&transSn=VFMyNjA0Mjk2OTA5MjgxLTItNjIzNTU2MzUxMDE%3D&createTime=2026-04-29+16%3A35%3A39&remark=%E4%BB%93%E5%82%A8%E7%BB%BC%E5%90%88%E6%9C%8D%E5%8A%A1%E8%B4%B9\",\"withdrawProcess\":false,\"transSn\":\"TS2604296909281-2-62355635101\",\"bizType\":\"deduct_storage_service_fee\",\"sourceRegion\":null,\"extraMap\":{}},{\"createTime\":\"2026-04-27 18:36:02\",\"transactionTime\":\"2026-04-27 18:36:02\",\"moneyChangeType\":2,\"fundType\":400,\"fundTypeDesc\":\"支出\",\"currencyType\":\"CNY\",\"amount\":\"+¥34.65\",\"amountFormat\":{\"value\":3465,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"+\",\"digitalText\":\"34.65\"},\"remark\":\"消费者及履约保障-售后问题\",\"remarkPrompt\":null,\"queryId\":\"BFI002604271040100001795794533070086\",\"batchId\":\"BFI002604271040100001795794533070086\",\"originAmount\":3465,\"isVisible\":true,\"detailJumpPath\":\"detail_window\",\"withdrawProcess\":false,\"transSn\":\"162-02748522499191632-D01\",\"bizType\":\"deduct_risk_punish\",\"sourceRegion\":2,\"extraMap\":{}},{\"createTime\":\"2026-04-27 18:33:21\",\"transactionTime\":\"2026-04-27 18:33:21\",\"moneyChangeType\":2,\"fundType\":400,\"fundTypeDesc\":\"支出\",\"currencyType\":\"CNY\",\"amount\":\"+¥6.93\",\"amountFormat\":{\"value\":693,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"+\",\"digitalText\":\"6.93\"},\"remark\":\"消费者及履约保障-售后问题\",\"remarkPrompt\":null,\"queryId\":\"BFI002604271040000001787278807070086\",\"batchId\":\"BFI002604271040000001787278807070086\",\"originAmount\":693,\"isVisible\":true,\"detailJumpPath\":\"detail_window\",\"withdrawProcess\":false,\"transSn\":\"061-13340523044471797-D01\",\"bizType\":\"deduct_risk_punish\",\"sourceRegion\":1,\"extraMap\":{}},{\"createTime\":\"2026-04-27 14:13:59\",\"transactionTime\":\"2026-04-27 14:13:59\",\"moneyChangeType\":2,\"fundType\":400,\"fundTypeDesc\":\"支出\",\"currencyType\":\"CNY\",\"amount\":\"+¥122.75\",\"amountFormat\":{\"value\":12275,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"+\",\"digitalText\":\"122.75\"},\"remark\":\"消费者及履约保障-售后问题\",\"remarkPrompt\":null,\"queryId\":\"BFI002604270640300001778964588070086\",\"batchId\":\"BFI002604270640300001778964588070086\",\"originAmount\":12275,\"isVisible\":true,\"detailJumpPath\":\"detail_window\",\"withdrawProcess\":false,\"transSn\":\"045-06941764383351998-D02\",\"bizType\":\"deduct_risk_punish\",\"sourceRegion\":1,\"extraMap\":{}},{\"createTime\":\"2026-04-27 13:15:22\",\"transactionTime\":\"2026-04-27 13:15:22\",\"moneyChangeType\":2,\"fundType\":400,\"fundTypeDesc\":\"支出\",\"currencyType\":\"CNY\",\"amount\":\"+¥0.18\",\"amountFormat\":{\"value\":18,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"+\",\"digitalText\":\"0.18\"},\"remark\":\"合规EPR物流包装环保费（62355635101_1166_2026-03）\",\"remarkPrompt\":null,\"queryId\":\"BFI002604270540300001779005528070086\",\"batchId\":\"BFI002604270540300001779005528070086\",\"originAmount\":18,\"isVisible\":true,\"detailJumpPath\":\"/link-agent-seller?targetUniqueId=eyJ1IjoieWEwa0xZUkx2MWp2RnRRckgwYkk4UT09IiwidiI6MX0%3D&targetUrl=https%3A%2F%2Fagentseller-eu.temu.com%2Flabor%2Fepr-fee%3Ftab%3Ddeduct%26transSn%3D62355635101_1166_2026-03%26transactionTime%3D2026-04-27%2B13%253A15%253A22%26type%3Dlogistics&region=2\",\"withdrawProcess\":false,\"transSn\":\"62355635101_1166_2026-03\",\"bizType\":\"deduct_epr\",\"sourceRegion\":2,\"extraMap\":{}},{\"createTime\":\"2026-04-27 12:57:02\",\"transactionTime\":\"2026-04-27 12:57:02\",\"moneyChangeType\":2,\"fundType\":100,\"fundTypeDesc\":\"结算\",\"currencyType\":\"CNY\",\"amount\":\"+¥62.37\",\"amountFormat\":{\"value\":6237,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"+\",\"digitalText\":\"62.37\"},\"remark\":\"\",\"remarkPrompt\":null,\"queryId\":\"BFI002604270440300001779225260070086\",\"batchId\":\"PB-BATCH-RSD-CNY-175-2026-04-24-1\",\"originAmount\":6237,\"isVisible\":true,\"detailJumpPath\":\"/link-agent-seller?targetUniqueId=eyJ1IjoieWEwa0xZUkx2MWp2RnRRckgwYkk4UT09IiwidiI6MX0%3D&targetUrl=https%3A%2F%2Fagentseller-eu.temu.com%2Flabor%2Fbill-download%3FbizId%3DPB-BATCH-RSD-CNY-175-2026-04-24-1%26createTime%3D2026-04-27%2B12%253A57%253A02%26fundType%3D100&region=2\",\"withdrawProcess\":false,\"transSn\":\"PB-BATCH-RSD-CNY-175-2026-04-24-1\",\"bizType\":\"settle_negative\",\"sourceRegion\":2,\"extraMap\":{}},{\"createTime\":\"2026-04-27 08:58:06\",\"transactionTime\":\"2026-04-27 08:58:06\",\"moneyChangeType\":2,\"fundType\":400,\"fundTypeDesc\":\"支出\",\"currencyType\":\"CNY\",\"amount\":\"+¥0.29\",\"amountFormat\":{\"value\":29,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"+\",\"digitalText\":\"0.29\"},\"remark\":\"合规EPR物流包装环保费（62355635101_1166_2026-02）\",\"remarkPrompt\":null,\"queryId\":\"BFI002604270040200001809455713070086\",\"batchId\":\"BFI002604270040200001809455713070086\",\"originAmount\":29,\"isVisible\":true,\"detailJumpPath\":\"/link-agent-seller?targetUniqueId=eyJ1IjoieWEwa0xZUkx2MWp2RnRRckgwYkk4UT09IiwidiI6MX0%3D&targetUrl=https%3A%2F%2Fagentseller-eu.temu.com%2Flabor%2Fepr-fee%3Ftab%3Ddeduct%26transSn%3D62355635101_1166_2026-02%26transactionTime%3D2026-04-27%2B08%253A58%253A06%26type%3Dlogistics&region=2\",\"withdrawProcess\":false,\"transSn\":\"62355635101_1166_2026-02\",\"bizType\":\"deduct_epr\",\"sourceRegion\":2,\"extraMap\":{}}],\"incomeAmount\":\"0.00\",\"outcomeAmount\":\"27376.19\",\"incomeBillNumber\":0,\"outcomeBillNumber\":151,\"incomeAmountFormat\":{\"value\":0,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"\",\"digitalText\":\"0.00\"},\"outcomeAmountFormat\":{\"value\":2737619,\"symbol\":\"¥\",\"currencyCode\":\"CNY\",\"sign\":\"+\",\"digitalText\":\"27,376.19\"}}}");

/***/ }),

/***/ "befb":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"data\":{\"invitation\":{\"id\":\"7588049174860465975\",\"name\":\"领星测试接口-1230删\",\"message\":\"Dear {{user_name}},\\nIt's such a pleasure to connect with you! I'm Candice, and I am reaching out to you on behalf of GYS Bamboo Pajamas. We are a sleepwear brand specializing in eco-friendly bamboo viscose products.\\nTo express our sincerity, we would be delighted to provide our products, allowing you to experience them firsthand. We would also love to invite you to create a buyable video showcasing your authentic experience with our products.\\nCandice from GYS\",\"theme_file_id\":\"\",\"contacts_info\":[{\"field\":7,\"value\":\"tk-support@gysbamboo.com\",\"title\":\"\"},{\"field\":46,\"value\":\"\",\"title\":\"\",\"country_code\":\"US#1\"}],\"start_time\":\"1766730378751\",\"end_time\":\"1767167999000\",\"update_time\":\"1766730379000\",\"creator_cnt\":1,\"creator_added_cnt\":0,\"creator_posted_cnt\":0,\"product_cnt\":2,\"theme_url\":\"\",\"free_sample_rule\":{\"has_free_sample\":true,\"is_free_sample_auto_review\":false},\"product_list\":[{\"product_id\":\"1731780092981907948\",\"image\":{\"thumb_url_list\":[\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/c64632e834394756b5f0541fee4dea14~tplv-fhlh96nyum-origin-webp.webp?dr=12180&t=555f072d&ps=933b5bde&shp=f9517c74&shcp=c936a14b&idc=useast5&from=4182867060\"]},\"title\":\"GYS Premium Women's Pajamas Set Soft Comfy V Neck 3/4 Sleeve Top and Cropped Pants 2 Piece Sleepwear\",\"item_sold\":\"0\",\"price\":{\"min_price\":{\"symbol\":\"$\",\"price\":\"79.98\",\"format_price\":\"$79.98\",\"currency\":\"USD\"},\"max_price\":{\"symbol\":\"$\",\"price\":\"79.98\",\"format_price\":\"$79.98\",\"currency\":\"USD\"}},\"target_commission\":100,\"commission_effective_time\":\"1766730378751\",\"open_commission\":1950,\"est_commission\":{\"min_price\":{\"symbol\":\"$\",\"price\":\"0.7998\",\"format_price\":\"$0.80\",\"currency\":\"USD\"},\"max_price\":{\"symbol\":\"$\",\"price\":\"0.7998\",\"format_price\":\"$0.80\",\"currency\":\"USD\"}},\"product_status\":1,\"group_product_status\":0,\"effective_status\":1,\"stock\":\"64\",\"ads_commission_effective_time\":\"0\"},{\"product_id\":\"1731780029042233836\",\"image\":{\"thumb_url_list\":[\"https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/b2a5129bb0d3435d853d797e28322145~tplv-fhlh96nyum-origin-webp.webp?dr=12180&t=555f072d&ps=933b5bde&shp=f9517c74&shcp=c936a14b&idc=useast5&from=4182867060\"]},\"title\":\"GYS Premium Sleeveless Nightgowns for Women Soft Bamboo Viscose Full Slip Spaghetti Strap Camisole Under Dress\",\"item_sold\":\"0\",\"price\":{\"min_price\":{\"symbol\":\"$\",\"price\":\"56.99\",\"format_price\":\"$56.99\",\"currency\":\"USD\"},\"max_price\":{\"symbol\":\"$\",\"price\":\"56.99\",\"format_price\":\"$56.99\",\"currency\":\"USD\"}},\"target_commission\":100,\"commission_effective_time\":\"1766730378751\",\"open_commission\":1950,\"est_commission\":{\"min_price\":{\"symbol\":\"$\",\"price\":\"0.5699\",\"format_price\":\"$0.57\",\"currency\":\"USD\"},\"max_price\":{\"symbol\":\"$\",\"price\":\"0.5699\",\"format_price\":\"$0.57\",\"currency\":\"USD\"}},\"product_status\":1,\"group_product_status\":0,\"effective_status\":1,\"stock\":\"90\",\"ads_commission_effective_time\":\"0\"}],\"creator_id_list\":[{\"base_info\":{\"creator_id\":\"7494014343454820212\",\"nick_name\":\"Valexia85\",\"image\":{\"thumb_url_list\":[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/a4f98c1bbf70e8968940f1708163f83a~tplv-tiktokx-cropcenter:168:168.webp?dr=9638&refresh_token=04a83a9f&x-expires=1767236400&x-signature=%2FsHPf3oN3LfSktTMFYtfDXgHDX4%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=39dffb78&idc=useast5\"]},\"user_name\":\"valexia85\",\"creator_oec_id\":\"7494014343454820212\",\"selection_region\":\"US\",\"permission_tag\":0},\"product_add_cnt\":0,\"group_creator_status\":0,\"effective_status\":1,\"invitation_id\":\"7588049174860482359\"}],\"group_type\":1,\"delivery_requirements\":{\"content_option\":2}}}}");

/***/ }),

/***/ "c04e":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return temu; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return changeLocalMallId; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return temuCheckSite; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return checkTemuCb; });
/* unused harmony export checkTemuCbUS */
/* unused harmony export checkTemuCbTask */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return checkTemuUsLocal; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return checkTemuEuLocal; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return checkTemuGlobalLocal; });
/* unused harmony export changeTemuEuSite */
/* unused harmony export getTemuLocalAccount */
/* unused harmony export changeLanguage */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return loginCb; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return getRealMallId; });
/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("bc3a");
/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _data_log__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("6b23");
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("ca00");
/* harmony import */ var _common__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("a1d0");
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }

function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function _toArray(arr) { return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableRest(); }

function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }

function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }





var temu = {
  // 跨境host
  cbHost: 'https://seller.kuajingmaihuo.com',
  // 跨境全球host
  cbGlobalHost: 'https://agentseller.temu.com',
  // 跨境美区host
  cbUsHost: 'https://agentseller-us.temu.com',
  // 跨境欧区host
  cbEuHost: 'https://agentseller-eu.temu.com',
  // 本土美区host
  usHost: 'https://seller.temu.com',
  // 本土欧区host
  euHost: 'https://seller-eu.temu.com',
  // 本土墨西哥host
  mxHost: 'https://mx.seller.temu.com',
  // 本土韩国host
  krHost: 'https://kr.seller.temu.com',
  // 本土巴西host
  brHost: 'https://br.seller.temu.com',
  // 本土日本host
  jpHost: 'https://jp.seller.temu.com',
  // 本土加拿大host
  caHost: 'https://ca.seller.temu.com',
  // 本土店铺所有国家sitaid，目前为全平台固定值
  siteIds: [],
  // declarativeNetRequest规则集id
  requestHearderIds: [],
  // 需要在cbGlobalHost域名下执行的任务
  globalHostOfTypeId: [22002, 22008, 22001, 22010, 22016, 22011, 22017],

  /**
   * 跨境店铺的信息
   * @param mallId // 店铺id
   * @param mallName // 店铺名
   * @param mallStatus // 店铺状态（目前还不知作用）
   * @param logo
   * @param isSemiManagedMall // 是否是半托管
   * @param storeType // 店铺类型  跨境
   * @param uniqueId // 店铺唯一id
   */
  cbStoreInfo: [],

  /**
   * 本土店铺信息
   * @param mallId // 店铺id
   * @param siteId // 站点id
   * @param mallName // 店铺名
   * @param marketPlaceName // 国家名
   * @param region // 区域
   * @param storeType // 店铺类型  本土
   * @param isSemiManagedMall // 是否是半托管 本土默认全半托管
   */
  localStoreInfo: []
};
var localHostMap = {
  us: temu.usHost,
  eu: temu.euHost,
  mx: temu.mxHost,
  kr: temu.krHost,
  br: temu.brHost,
  jp: temu.jpHost,
  ca: temu.caHost
}; // 为temu所有接口带上Referer、Origin

var initTemuUrlObserve = /*#__PURE__*/function () {
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
    var hostKeys;
    return _regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            // await removeDeclarativeNetRequestRules(temu.requestHearderIds)
            hostKeys = ['cbHost', 'cbUsHost', 'cbEuHost', 'cbGlobalHost', 'usHost', 'euHost', 'mxHost', 'krHost', 'brHost', 'jpHost', 'caHost'];
            _context.next = 3;
            return Promise.all(hostKeys.map(function (hostKey) {
              var host = temu[hostKey];
              return Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* setRequestHearder */ "I"])([{
                name: 'Referer',
                value: host
              }, {
                name: 'Origin',
                value: host
              }], host + '/*');
            }));

          case 3:
            temu.requestHearderIds = _context.sent;

          case 4:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));

  return function initTemuUrlObserve() {
    return _ref.apply(this, arguments);
  };
}(); // 监听请求，店铺cookie带上mailid（切换站点）


var changeLocalMallId = /*#__PURE__*/function () {
  var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(_ref2) {
    var platform_store_id, siteId, host, store_type, _cookie, arr, newCookies, msg;

    return _regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            platform_store_id = _ref2.platform_store_id, siteId = _ref2.siteId, host = _ref2.host, store_type = _ref2.store_type;

            if (!(store_type === 'GLOBAL')) {
              _context2.next = 3;
              break;
            }

            return _context2.abrupt("return", true);

          case 3:
            _context2.prev = 3;

            if (host) {
              _context2.next = 6;
              break;
            }

            return _context2.abrupt("return", false);

          case 6:
            _context2.next = 8;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* getAllCookies */ "o"])({
              url: host
            });

          case 8:
            _cookie = _context2.sent;
            arr = _cookie.map(function (_ref4) {
              var name = _ref4.name,
                  value = _ref4.value;
              if (name === 'MALL_ID') return "MALL_ID=".concat(platform_store_id);
              if (name === 'seller_site') return "seller_site=".concat(siteId);
              return "".concat(name, "=").concat(value);
            });
            newCookies = arr.join(';'); // console.log('changeLocalMallId', `url:${host}---`, 'arr:', arr, '---', '_cookie:', _cookie)
            // 判断是否有修改cookie，有才拦截

            if (!(newCookies === _cookie.map(function (_ref5) {
              var name = _ref5.name,
                  value = _ref5.value;
              return "".concat(name, "=").concat(value);
            }).join(';'))) {
              _context2.next = 14;
              break;
            }

            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("cookie\u672A\u4FEE\u6539\uFF0C\u4E0D\u9700\u8981\u76D1\u542C");
            return _context2.abrupt("return", true);

          case 14:
            return _context2.abrupt("return", Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* setRequestHearder */ "I"])([{
              name: 'Cookie',
              value: newCookies
            }], "".concat(host, "*")));

          case 17:
            _context2.prev = 17;
            _context2.t0 = _context2["catch"](3);
            msg = "\u76D1\u542Ctemu\u8BF7\u6C42\u5E76\u4FEE\u6539cookie\u5931\u8D25,\u5931\u8D25\u539F\u56E0\uFF1A".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context2.t0));
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].report(msg, 'error', platform_store_id);
            return _context2.abrupt("return", false);

          case 22:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[3, 17]]);
  }));

  return function changeLocalMallId(_x) {
    return _ref3.apply(this, arguments);
  };
}();
/**
 * @description 清除店铺信息
 */

var clearStoreInfo = function clearStoreInfo() {
  temu.cbStoreInfo = [];
  temu.localStoreInfo = [];
  _common__WEBPACK_IMPORTED_MODULE_3__[/* multiPlatform */ "a"].storeIdMap = {};
};
/**
 * @description temu检测站点
 */


var temuCheckSite = /*#__PURE__*/function () {
  var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
    var globalLocalRegions, res, storeInfo, _res, cbInfo, usInfo, euInfo, globalLocalInfos, globalLocalRegionMap, localStoreInfos, _iterator, _step, _loop, _ret;

    return _regeneratorRuntime().wrap(function _callee4$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.prev = 0;
            clearStoreInfo();
            _context6.next = 4;
            return initTemuUrlObserve();

          case 4:
            // 全球其他本土站点列表
            globalLocalRegions = ['mx', 'kr', 'br', 'jp', 'ca'];
            _context6.next = 7;
            return Promise.all([checkTemuCb(), checkTemuUsLocal(), checkTemuEuLocal()].concat(_toConsumableArray(globalLocalRegions.map(function (region) {
              return checkTemuGlobalLocal(region);
            }))));

          case 7:
            res = _context6.sent;
            storeInfo = [];
            _res = _toArray(res), cbInfo = _res[0], usInfo = _res[1], euInfo = _res[2], globalLocalInfos = _res.slice(3); // 整理跨境店铺信息

            if (cbInfo) {
              temu.cbStoreInfo = cbInfo.map(function (item) {
                return _objectSpread(_objectSpread({}, item), {}, {
                  mallId: item.mallId || item.uniqueId,
                  storeType: '跨境'
                });
              });
              cbInfo.forEach(function (_ref7) {
                var mallId = _ref7.mallId,
                    uniqueId = _ref7.uniqueId;
                var primaryId = mallId || uniqueId;
                if (!primaryId) return;
                storeInfo.push(primaryId);

                if (mallId) {
                  _common__WEBPACK_IMPORTED_MODULE_3__[/* multiPlatform */ "a"].storeIdMap[mallId] = uniqueId || mallId;
                } else {
                  // 只有 uniqueid 的情况
                  _common__WEBPACK_IMPORTED_MODULE_3__[/* multiPlatform */ "a"].storeIdMap[uniqueId] = '';
                }
              });
            } // 整理us|mx|kr|br|jp|ca本土店铺信息


            globalLocalRegionMap = {
              'mx': '墨西哥',
              'kr': '韩国',
              'br': '巴西',
              'jp': '日本',
              'ca': '加拿大'
            };
            localStoreInfos = [usInfo && _objectSpread(_objectSpread({}, usInfo), {}, {
              _region: 'us',
              marketPlaceName: '美国'
            })].concat(_toConsumableArray(globalLocalRegions.map(function (region, index) {
              var info = globalLocalInfos[index];
              return info && _objectSpread(_objectSpread({}, info), {}, {
                _region: region,
                marketPlaceName: globalLocalRegionMap[region]
              });
            }))).filter(Boolean);

            if (!(localStoreInfos.length > 0)) {
              _context6.next = 33;
              break;
            }

            _iterator = _createForOfIteratorHelper(localStoreInfos);
            _context6.prev = 15;
            _loop = /*#__PURE__*/_regeneratorRuntime().mark(function _loop() {
              var _temu$localStoreInfo;

              var info, allAccounts, localStoreInfo, _info$layoutData$mall, mallId, mallName;

              return _regeneratorRuntime().wrap(function _loop$(_context3) {
                while (1) {
                  switch (_context3.prev = _context3.next) {
                    case 0:
                      info = _step.value;

                      if (!(!info || !info.layoutData || !info.localInfo)) {
                        _context3.next = 3;
                        break;
                      }

                      return _context3.abrupt("return", "continue");

                    case 3:
                      _context3.next = 5;
                      return getTemuLocalAccount(localHostMap[info._region]);

                    case 5:
                      allAccounts = _context3.sent;
                      // 获取当前店铺下所有账号信息
                      localStoreInfo = [];

                      if (allAccounts.length > 0) {
                        localStoreInfo.push.apply(localStoreInfo, _toConsumableArray(allAccounts.map(function (_ref8) {
                          var mall_id = _ref8.mall_id,
                              mall_name = _ref8.mall_name;
                          return {
                            mallId: mall_id,
                            mallName: mall_name,
                            siteId: info.localInfo.site,
                            marketPlaceName: info.marketPlaceName,
                            region: info._region,
                            storeType: '本土',
                            isSemiManagedMall: true
                          };
                        })));
                      } else {
                        // 没有获取到账号信息，则用检测到的店铺信息
                        _info$layoutData$mall = info.layoutData.mallData.mallInfo, mallId = _info$layoutData$mall.mallId, mallName = _info$layoutData$mall.mallName;
                        localStoreInfo.push({
                          mallId: mallId,
                          mallName: mallName,
                          siteId: info.localInfo.site,
                          marketPlaceName: info.marketPlaceName,
                          region: info._region,
                          storeType: '本土',
                          isSemiManagedMall: true
                        });
                      }

                      (_temu$localStoreInfo = temu.localStoreInfo).push.apply(_temu$localStoreInfo, localStoreInfo);

                      storeInfo.push.apply(storeInfo, _toConsumableArray(localStoreInfo.map(function (item) {
                        return item.mallId;
                      })));

                    case 10:
                    case "end":
                      return _context3.stop();
                  }
                }
              }, _loop);
            });

            _iterator.s();

          case 18:
            if ((_step = _iterator.n()).done) {
              _context6.next = 25;
              break;
            }

            return _context6.delegateYield(_loop(), "t0", 20);

          case 20:
            _ret = _context6.t0;

            if (!(_ret === "continue")) {
              _context6.next = 23;
              break;
            }

            return _context6.abrupt("continue", 23);

          case 23:
            _context6.next = 18;
            break;

          case 25:
            _context6.next = 30;
            break;

          case 27:
            _context6.prev = 27;
            _context6.t1 = _context6["catch"](15);

            _iterator.e(_context6.t1);

          case 30:
            _context6.prev = 30;

            _iterator.f();

            return _context6.finish(30);

          case 33:
            if (!euInfo) {
              _context6.next = 35;
              break;
            }

            return _context6.delegateYield( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
              var curMallId, curMallName, curSiteId, curMarketPlaceName, marketPlaceList, allAccounts, infoMap, _iterator2, _step2, _loop2, _ret2, backRes;

              return _regeneratorRuntime().wrap(function _callee3$(_context5) {
                while (1) {
                  switch (_context5.prev = _context5.next) {
                    case 0:
                      curMallId = euInfo.layoutData.mallData.mallInfo.mallId;
                      curMallName = euInfo.layoutData.mallData.mallInfo.mallName;
                      curSiteId = euInfo.layoutData.marketplaceData.currentMarketPlace.siteId;
                      curMarketPlaceName = euInfo.layoutData.marketplaceData.currentMarketPlace.marketPlaceName;
                      marketPlaceList = euInfo.layoutData.marketplaceData.marketPlaceList; // 获取当前店铺下所有账号信息

                      _context5.next = 7;
                      return getTemuLocalAccount(temu.euHost);

                    case 7:
                      allAccounts = _context5.sent;
                      // 站点id映射，key: 店铺id  value: 站点id&店铺名
                      infoMap = {};

                      if (allAccounts.length > 0) {
                        allAccounts.forEach(function (_ref9) {
                          var mall_id = _ref9.mall_id,
                              mall_name = _ref9.mall_name;
                          infoMap[mall_id] = {
                            siteId: curSiteId,
                            marketPlaceName: curMarketPlaceName,
                            mallName: mall_name
                          };
                        });
                      } else infoMap[curMallId] = {
                        siteId: curSiteId,
                        marketPlaceName: curMarketPlaceName,
                        mallName: curMallName
                      }; // 遍历所有站点，获取全部店铺信息


                      _iterator2 = _createForOfIteratorHelper(marketPlaceList);
                      _context5.prev = 11;
                      _loop2 = /*#__PURE__*/_regeneratorRuntime().mark(function _loop2() {
                        var marketPlace, siteId, _res2, _allAccounts, _euInfo, _euInfo$layoutData$ma, _siteId, marketPlaceName, mallName;

                        return _regeneratorRuntime().wrap(function _loop2$(_context4) {
                          while (1) {
                            switch (_context4.prev = _context4.next) {
                              case 0:
                                marketPlace = _step2.value;
                                siteId = marketPlace.siteId;

                                if (!(siteId && siteId !== curSiteId)) {
                                  _context4.next = 23;
                                  break;
                                }

                                _context4.next = 5;
                                return changeTemuEuSite(siteId);

                              case 5:
                                _res2 = _context4.sent;

                                if (_res2) {
                                  _context4.next = 8;
                                  break;
                                }

                                return _context4.abrupt("return", "continue");

                              case 8:
                                _context4.next = 10;
                                return getTemuLocalAccount(temu.euHost);

                              case 10:
                                _allAccounts = _context4.sent;

                                if (!((_allAccounts === null || _allAccounts === void 0 ? void 0 : _allAccounts.length) > 0)) {
                                  _context4.next = 15;
                                  break;
                                }

                                _allAccounts.forEach(function (_ref10) {
                                  var mall_id = _ref10.mall_id,
                                      mall_name = _ref10.mall_name;
                                  infoMap[mall_id] = {
                                    siteId: siteId,
                                    marketPlaceName: marketPlace.marketPlaceName,
                                    mallName: mall_name
                                  };
                                });

                                _context4.next = 23;
                                break;

                              case 15:
                                _context4.next = 17;
                                return checkTemuEuLocal();

                              case 17:
                                _euInfo = _context4.sent;

                                if (_euInfo) {
                                  _context4.next = 20;
                                  break;
                                }

                                return _context4.abrupt("return", "continue");

                              case 20:
                                _euInfo$layoutData$ma = _euInfo.layoutData.marketplaceData.currentMarketPlace, _siteId = _euInfo$layoutData$ma.siteId, marketPlaceName = _euInfo$layoutData$ma.marketPlaceName;
                                mallName = _euInfo.layoutData.mallData.mallInfo.mallName;
                                infoMap[_euInfo.layoutData.mallData.mallInfo.mallId] = {
                                  siteId: _siteId,
                                  marketPlaceName: marketPlaceName,
                                  mallName: mallName
                                };

                              case 23:
                              case "end":
                                return _context4.stop();
                            }
                          }
                        }, _loop2);
                      });

                      _iterator2.s();

                    case 14:
                      if ((_step2 = _iterator2.n()).done) {
                        _context5.next = 21;
                        break;
                      }

                      return _context5.delegateYield(_loop2(), "t0", 16);

                    case 16:
                      _ret2 = _context5.t0;

                      if (!(_ret2 === "continue")) {
                        _context5.next = 19;
                        break;
                      }

                      return _context5.abrupt("continue", 19);

                    case 19:
                      _context5.next = 14;
                      break;

                    case 21:
                      _context5.next = 26;
                      break;

                    case 23:
                      _context5.prev = 23;
                      _context5.t1 = _context5["catch"](11);

                      _iterator2.e(_context5.t1);

                    case 26:
                      _context5.prev = 26;

                      _iterator2.f();

                      return _context5.finish(26);

                    case 29:
                      _context5.next = 31;
                      return changeTemuEuSite(curSiteId);

                    case 31:
                      backRes = _context5.sent;

                      // 没切换回去？看要不要在页面弹窗一下
                      if (!backRes) {// do something
                      }

                      Object.keys(infoMap).forEach(function (key) {
                        var _infoMap$key = infoMap[key],
                            siteId = _infoMap$key.siteId,
                            marketPlaceName = _infoMap$key.marketPlaceName,
                            mallName = _infoMap$key.mallName;
                        storeInfo.push(key);
                        temu.localStoreInfo.push({
                          mallId: key,
                          mallName: mallName,
                          siteId: siteId,
                          marketPlaceName: marketPlaceName,
                          region: 'eu',
                          storeType: '本土',
                          isSemiManagedMall: true
                        });
                      });

                    case 34:
                    case "end":
                      return _context5.stop();
                  }
                }
              }, _callee3, null, [[11, 23, 26, 29]]);
            })(), "t2", 35);

          case 35:
            return _context6.abrupt("return", storeInfo);

          case 38:
            _context6.prev = 38;
            _context6.t3 = _context6["catch"](0);
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].report("temu\u68C0\u6D4B\u7AD9\u70B9\u62A5\u9519,\u89C4\u5219\u53EF\u80FD\u5DF2\u6539\u53D8---".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context6.t3)), 'error');
            return _context6.abrupt("return", false);

          case 42:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee4, null, [[0, 38], [15, 27, 30, 33]]);
  }));

  return function temuCheckSite() {
    return _ref6.apply(this, arguments);
  };
}();
/**
 * @description 检测跨境店铺是否在线，在线则返回店铺信息
 */

var checkTemuCb = /*#__PURE__*/function () {
  var _ref11 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
    var _yield$axios, data, companyList, storeList, errorMsg;

    return _regeneratorRuntime().wrap(function _callee5$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            _context7.prev = 0;
            _context7.next = 3;
            return axios__WEBPACK_IMPORTED_MODULE_0___default()({
              url: "".concat(temu.cbHost, "/bg/quiet/api/mms/userInfo"),
              method: 'post'
            });

          case 3:
            _yield$axios = _context7.sent;
            data = _yield$axios.data;
            companyList = data && data.result && data.result.companyList;

            if (!companyList) {
              _context7.next = 9;
              break;
            }

            storeList = companyList.reduce(function (arr, i) {
              if (i.malInfoList && i.malInfoList.length) {
                arr = arr.concat(i.malInfoList);
              }

              return arr;
            }, []);
            return _context7.abrupt("return", storeList.length > 0 && storeList);

          case 9:
            _context7.next = 15;
            break;

          case 11:
            _context7.prev = 11;
            _context7.t0 = _context7["catch"](0);
            errorMsg = Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context7.t0);

            if (errorMsg.indexOf('403') > -1) {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu\u8DE8\u5883\u7AD9\u70B9\u672A\u767B\u5F55");
            } else {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu\u8DE8\u5883\u7AD9\u70B9\u8BF7\u6C42\u62A5\u9519-----".concat(errorMsg));
            }

          case 15:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee5, null, [[0, 11]]);
  }));

  return function checkTemuCb() {
    return _ref11.apply(this, arguments);
  };
}();
/**
 * @description 检测跨境美区/欧区店铺是否在线
 */

var checkTemuCbUS = /*#__PURE__*/function () {
  var _ref13 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(_ref12) {
    var host, Mallid, _yield$axios2, data, mallList, errorMsg;

    return _regeneratorRuntime().wrap(function _callee6$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            host = _ref12.host, Mallid = _ref12.Mallid;
            _context8.prev = 1;
            _context8.next = 4;
            return axios__WEBPACK_IMPORTED_MODULE_0___default()({
              url: "".concat(host, "/api/seller/auth/userInfo"),
              method: 'post',
              headers: {
                Mallid: Mallid
              }
            });

          case 4:
            _yield$axios2 = _context8.sent;
            data = _yield$axios2.data;
            mallList = data && data.result && data.result.mallList;
            return _context8.abrupt("return", mallList.length > 0 && mallList);

          case 10:
            _context8.prev = 10;
            _context8.t0 = _context8["catch"](1);
            errorMsg = Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context8.t0);

            if (errorMsg.indexOf('403') > -1) {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu".concat(host, "\u8DE8\u5883\u7AD9\u70B9\u672A\u767B\u5F55"));
            } else {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu".concat(host, "\u8DE8\u5883\u7AD9\u70B9\u8BF7\u6C42\u62A5\u9519-----").concat(errorMsg));
            }

          case 14:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee6, null, [[1, 10]]);
  }));

  return function checkTemuCbUS(_x2) {
    return _ref13.apply(this, arguments);
  };
}();
var checkTemuCbTask = /*#__PURE__*/function () {
  var _ref14 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9(id, task, count) {
    return _regeneratorRuntime().wrap(function _callee9$(_context11) {
      while (1) {
        switch (_context11.prev = _context11.next) {
          case 0:
            if (!(count > 40)) {
              _context11.next = 3;
              break;
            }

            chrome.tabs.remove(id);
            return _context11.abrupt("return", {
              code: 13
            });

          case 3:
            return _context11.abrupt("return", new Promise(function (resolve) {
              setTimeout(function () {
                chrome.tabs.get(id, /*#__PURE__*/function () {
                  var _ref15 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(tab) {
                    var r, _yield$getCookies, value, executeFunc;

                    return _regeneratorRuntime().wrap(function _callee8$(_context10) {
                      while (1) {
                        switch (_context10.prev = _context10.next) {
                          case 0:
                            _context10.prev = 0;

                            if (tab) {
                              _context10.next = 7;
                              break;
                            }

                            chrome.tabs.remove(id);
                            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('切换分区站点页面可能已被关闭2');
                            resolve({
                              code: 16
                            });
                            _context10.next = 23;
                            break;

                          case 7:
                            if (!(tab.status == 'loading')) {
                              _context10.next = 14;
                              break;
                            }

                            _context10.next = 10;
                            return checkTemuCbTask(id, task, ++count);

                          case 10:
                            r = _context10.sent;
                            resolve(r);
                            _context10.next = 23;
                            break;

                          case 14:
                            if (!(tab.status == 'complete')) {
                              _context10.next = 23;
                              break;
                            }

                            _context10.next = 17;
                            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* getCookies */ "p"])({
                              url: task.host,
                              name: 'mallid'
                            });

                          case 17:
                            _yield$getCookies = _context10.sent;
                            value = _yield$getCookies.value;
                            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u5F53\u524D\u5E97\u94FAid\uFF1A".concat(value, "\uFF0C\u9700\u8981\u5207\u6362\u5E97\u94FA\uFF1A").concat(task.Mallid));
                            _context10.next = 22;
                            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* delayed */ "h"])(1000);

                          case 22:
                            if (value === task.Mallid) {
                              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('当前店铺id与需要切换店铺id一致，不需要切换店铺'); // chrome.tabs.remove(id)

                              resolve(true);
                            } else {
                              executeFunc = function executeFunc() {
                                try {
                                  // 优化选择器，提高兼容性
                                  var button = document.querySelector('div[data-testid="beast-core-modal-body"] button'); // 如果第一个选择器没找到，尝试备用选择器

                                  if (!button) {
                                    button = document.querySelector('div[data-testid="beast-core-modal-body"] div button');
                                  }

                                  console.log('buttonbuttonbutton', button);

                                  if (button) {
                                    button.click();
                                    return true;
                                  }

                                  return false; // const res = await fetch(`${taskData.host}/api/seller/auth/loginByCode`, {
                                  //   method: 'POST',
                                  //   headers: {
                                  //     'Content-Type': 'application/json'
                                  //   },
                                  //   body: JSON.stringify({
                                  //     code: taskData.code,
                                  //     confirm: true,
                                  //     targetMallId: taskData.Mallid
                                  //   })
                                  // })
                                  // const { success } = await res.json()
                                  // return success
                                } catch (error) {
                                  return false;
                                }
                              }; // 注入脚本


                              chrome.scripting.executeScript({
                                target: {
                                  tabId: id
                                },
                                func: executeFunc
                              }).then( /*#__PURE__*/function () {
                                var _ref16 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(results) {
                                  var result, retryResult;
                                  return _regeneratorRuntime().wrap(function _callee7$(_context9) {
                                    while (1) {
                                      switch (_context9.prev = _context9.next) {
                                        case 0:
                                          if (!(!results || !results[0])) {
                                            _context9.next = 4;
                                            break;
                                          }

                                          _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('脚本执行失败：无返回结果'); // chrome.tabs.remove(id)

                                          resolve(false);
                                          return _context9.abrupt("return");

                                        case 4:
                                          result = results[0].result;

                                          if (!(result === true)) {
                                            _context9.next = 13;
                                            break;
                                          }

                                          _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('切换店铺成功');
                                          _context9.next = 9;
                                          return Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* delayed */ "h"])(1000);

                                        case 9:
                                          chrome.tabs.remove(id);
                                          resolve(true);
                                          _context9.next = 18;
                                          break;

                                        case 13:
                                          _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u7B2C".concat(count + 1, "\u6B21\u67E5\u627E\u6309\u94AE\u5931\u8D25\uFF0C\u7B49\u5F85\u91CD\u8BD5..."));
                                          _context9.next = 16;
                                          return checkTemuCbTask(id, task, ++count);

                                        case 16:
                                          retryResult = _context9.sent;
                                          resolve(retryResult);

                                        case 18:
                                        case "end":
                                          return _context9.stop();
                                      }
                                    }
                                  }, _callee7);
                                }));

                                return function (_x7) {
                                  return _ref16.apply(this, arguments);
                                };
                              }()).catch(function (error) {
                                _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u811A\u672C\u6267\u884C\u5931\u8D25\uFF1A".concat(error.message));
                                chrome.tabs.remove(id);
                                resolve(false);
                              });
                            }
                            /** 页面加载完成 */
                            // const list = await checkTemuCbUS(task)
                            // if(list) {
                            // }else{
                            //   let r = await checkTemuCbTask(id, task, ++count)
                            //   resolve(r)
                            // }


                          case 23:
                            _context10.next = 30;
                            break;

                          case 25:
                            _context10.prev = 25;
                            _context10.t0 = _context10["catch"](0);

                            if (tab) {
                              chrome.tabs.remove(tab.id);
                            }

                            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("checkTemuCbTask error\uFF1A".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context10.t0)));
                            resolve({
                              code: 17,
                              msg: "checkTemuCbTask error".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context10.t0))
                            });

                          case 30:
                          case "end":
                            return _context10.stop();
                        }
                      }
                    }, _callee8, null, [[0, 25]]);
                  }));

                  return function (_x6) {
                    return _ref15.apply(this, arguments);
                  };
                }());
              }, 1000);
            }));

          case 4:
          case "end":
            return _context11.stop();
        }
      }
    }, _callee9);
  }));

  return function checkTemuCbTask(_x3, _x4, _x5) {
    return _ref14.apply(this, arguments);
  };
}();
/**
 * @description 检测美国本土店铺是否在线，在线则返回店铺信息
 */

var checkTemuUsLocal = /*#__PURE__*/function () {
  var _ref17 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {
    var _yield$axios3, data, str, _JSON$parse, store, region, errorMsg;

    return _regeneratorRuntime().wrap(function _callee10$(_context12) {
      while (1) {
        switch (_context12.prev = _context12.next) {
          case 0:
            _context12.prev = 0;
            _context12.next = 3;
            return axios__WEBPACK_IMPORTED_MODULE_0___default()({
              url: temu.usHost + '/home.html',
              method: 'get'
            });

          case 3:
            _yield$axios3 = _context12.sent;
            data = _yield$axios3.data;

            if (!data) {
              _context12.next = 18;
              break;
            }

            _context12.prev = 6;
            str = data.replace(/[\r\n\s]+/g, '');
            _JSON$parse = JSON.parse(str.split('window.rawData=')[1].split(';document')[0]), store = _JSON$parse.store;
            region = JSON.parse(str.split('window.__REGION_CONFIG__=')[1].split(';window.__DOC_SOURCE__="ssr"')[0]); // 记录本土店铺所有国家siteid

            temu.siteIds = region;

            if (!(store.layoutData && store.layoutData.marketplaceData)) {
              _context12.next = 13;
              break;
            }

            return _context12.abrupt("return", store);

          case 13:
            _context12.next = 18;
            break;

          case 15:
            _context12.prev = 15;
            _context12.t0 = _context12["catch"](6);
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].report("temu\u68C0\u6D4B\u7F8E\u533A\u672C\u571F\u5E97\u62A5\u9519\uFF0C\u53EF\u80FD\u89C4\u5219\u5DF2\u6539\u53D8-----".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context12.t0)), 'error');

          case 18:
            _context12.next = 24;
            break;

          case 20:
            _context12.prev = 20;
            _context12.t1 = _context12["catch"](0);
            errorMsg = Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context12.t1);

            if (errorMsg.indexOf('403') > -1) {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu\u7F8E\u533A\u672C\u571F\u7AD9\u70B9\u672A\u767B\u5F55");
            } else {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu\u7F8E\u533A\u672C\u571F\u7AD9\u70B9\u62A5\u9519-----".concat(errorMsg));
            }

          case 24:
          case "end":
            return _context12.stop();
        }
      }
    }, _callee10, null, [[0, 20], [6, 15]]);
  }));

  return function checkTemuUsLocal() {
    return _ref17.apply(this, arguments);
  };
}();
/**
 * @description 检测欧洲本土店铺是否在线，在线则返回店铺信息
 */

var checkTemuEuLocal = /*#__PURE__*/function () {
  var _ref18 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {
    var _yield$axios4, data, str, _JSON$parse2, store, errorMsg;

    return _regeneratorRuntime().wrap(function _callee11$(_context13) {
      while (1) {
        switch (_context13.prev = _context13.next) {
          case 0:
            _context13.prev = 0;
            _context13.next = 3;
            return axios__WEBPACK_IMPORTED_MODULE_0___default()({
              url: temu.euHost + '/home.html',
              method: 'get'
            });

          case 3:
            _yield$axios4 = _context13.sent;
            data = _yield$axios4.data;

            if (!data) {
              _context13.next = 16;
              break;
            }

            _context13.prev = 6;
            str = data.replace(/[\r\n\s]+/g, '');
            _JSON$parse2 = JSON.parse(str.split('window.rawData=')[1].split(';document')[0]), store = _JSON$parse2.store;

            if (!(store.layoutData && store.layoutData.marketplaceData)) {
              _context13.next = 11;
              break;
            }

            return _context13.abrupt("return", store);

          case 11:
            _context13.next = 16;
            break;

          case 13:
            _context13.prev = 13;
            _context13.t0 = _context13["catch"](6);
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].report("temu\u68C0\u6D4B\u6B27\u533A\u672C\u571F\u5E97\u62A5\u9519\uFF0C\u53EF\u80FD\u89C4\u5219\u5DF2\u6539\u53D8-----".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context13.t0)), 'error');

          case 16:
            _context13.next = 22;
            break;

          case 18:
            _context13.prev = 18;
            _context13.t1 = _context13["catch"](0);
            errorMsg = Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context13.t1);

            if (errorMsg.indexOf('403') > -1) {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu\u6B27\u533A\u672C\u571F\u7AD9\u70B9\u672A\u767B\u5F55");
            } else {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu\u6B27\u533A\u672C\u571F\u7AD9\u70B9\u62A5\u9519-----".concat(errorMsg));
            }

          case 22:
          case "end":
            return _context13.stop();
        }
      }
    }, _callee11, null, [[0, 18], [6, 13]]);
  }));

  return function checkTemuEuLocal() {
    return _ref18.apply(this, arguments);
  };
}();
/**
 * @description 检测全球其他本土店铺是否在线，在线则返回店铺信息
 */

var checkTemuGlobalLocal = /*#__PURE__*/function () {
  var _ref19 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee12(region) {
    var HostMap, _yield$axios5, data, str, _JSON$parse3, store, errorMsg;

    return _regeneratorRuntime().wrap(function _callee12$(_context14) {
      while (1) {
        switch (_context14.prev = _context14.next) {
          case 0:
            HostMap = {
              'mx': {
                host: temu.mxHost,
                marketPlaceName: '墨西哥'
              },
              'kr': {
                host: temu.krHost,
                marketPlaceName: '韩国'
              },
              'br': {
                host: temu.brHost,
                marketPlaceName: '巴西'
              },
              'jp': {
                host: temu.jpHost,
                marketPlaceName: '日本'
              },
              'ca': {
                host: temu.caHost,
                marketPlaceName: '加拿大'
              }
            }; // 检查region参数是否有效

            if (HostMap[region]) {
              _context14.next = 4;
              break;
            }

            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu\u5168\u7403\u5176\u4ED6\u672C\u571F\u5E97\u94FA\u5931\u8D25----\u4F20\u5165\u4E0D\u652F\u6301\u7684region\u53C2\u6570: ".concat(region));
            return _context14.abrupt("return", false);

          case 4:
            _context14.prev = 4;
            _context14.next = 7;
            return axios__WEBPACK_IMPORTED_MODULE_0___default()({
              url: HostMap[region].host + '/home.html',
              method: 'get'
            });

          case 7:
            _yield$axios5 = _context14.sent;
            data = _yield$axios5.data;

            if (!data) {
              _context14.next = 20;
              break;
            }

            _context14.prev = 10;
            str = data.replace(/[\r\n\s]+/g, '');
            _JSON$parse3 = JSON.parse(str.split('window.rawData=')[1].split(';document')[0]), store = _JSON$parse3.store;

            if (!(store.layoutData && store.layoutData.marketplaceData)) {
              _context14.next = 15;
              break;
            }

            return _context14.abrupt("return", store);

          case 15:
            _context14.next = 20;
            break;

          case 17:
            _context14.prev = 17;
            _context14.t0 = _context14["catch"](10);
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].report("temu\u68C0\u6D4B".concat(HostMap[region].marketPlaceName, "\u672C\u571F\u5E97\u62A5\u9519\uFF0C\u53EF\u80FD\u89C4\u5219\u5DF2\u6539\u53D8-----").concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context14.t0)), 'error');

          case 20:
            _context14.next = 26;
            break;

          case 22:
            _context14.prev = 22;
            _context14.t1 = _context14["catch"](4);
            errorMsg = Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context14.t1);

            if (errorMsg.indexOf('403') > -1) {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu".concat(HostMap[region].marketPlaceName, "\u672C\u571F\u7AD9\u70B9\u672A\u767B\u5F55"));
            } else {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu".concat(HostMap[region].marketPlaceName, "\u672C\u571F\u7AD9\u70B9\u62A5\u9519-----").concat(errorMsg));
            }

          case 26:
          case "end":
            return _context14.stop();
        }
      }
    }, _callee12, null, [[4, 22], [10, 17]]);
  }));

  return function checkTemuGlobalLocal(_x8) {
    return _ref19.apply(this, arguments);
  };
}();
/**
 * @description 欧区切换站点
 */

var changeTemuEuSite = /*#__PURE__*/function () {
  var _ref20 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee13(siteId) {
    var _yield$axios6, data, errorMsg;

    return _regeneratorRuntime().wrap(function _callee13$(_context15) {
      while (1) {
        switch (_context15.prev = _context15.next) {
          case 0:
            _context15.prev = 0;
            _context15.next = 3;
            return axios__WEBPACK_IMPORTED_MODULE_0___default()({
              url: "".concat(temu.euHost, "/mms/floyd/marketplace/switch"),
              method: 'post',
              data: {
                target_site_id: siteId,
                biz_scene: 0
              }
            });

          case 3:
            _yield$axios6 = _context15.sent;
            data = _yield$axios6.data;

            if (!data.success) {
              _context15.next = 7;
              break;
            }

            return _context15.abrupt("return", true);

          case 7:
            _context15.next = 14;
            break;

          case 9:
            _context15.prev = 9;
            _context15.t0 = _context15["catch"](0);
            errorMsg = Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context15.t0);

            if (errorMsg.indexOf('403') > -1) {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu\u6B27\u533A\u672C\u571F\u7AD9\u70B9\u672A\u767B\u5F55");
            } else {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u68C0\u6D4Btemu\u6B27\u533A\u672C\u571F\u7AD9\u70B9\u62A5\u9519-----".concat(errorMsg));
            }

            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u5207\u6362temu\u6B27\u533A\u7AD9\u70B9\u62A5\u9519-----".concat(errorMsg));

          case 14:
          case "end":
            return _context15.stop();
        }
      }
    }, _callee13, null, [[0, 9]]);
  }));

  return function changeTemuEuSite(_x9) {
    return _ref20.apply(this, arguments);
  };
}();
/**
 * @description 本土获取当前店铺所有账号
 */

var getTemuLocalAccount = /*#__PURE__*/function () {
  var _ref21 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee14(host) {
    var _data$result, _data$result$malls, _yield$axios7, data, errorMsg;

    return _regeneratorRuntime().wrap(function _callee14$(_context16) {
      while (1) {
        switch (_context16.prev = _context16.next) {
          case 0:
            _context16.prev = 0;
            _context16.next = 3;
            return axios__WEBPACK_IMPORTED_MODULE_0___default()({
              url: host + '/mms/holly/mall/manage/list',
              method: 'post',
              data: {}
            });

          case 3:
            _yield$axios7 = _context16.sent;
            data = _yield$axios7.data;

            if (!(data !== null && data !== void 0 && data.success && ((_data$result = data.result) === null || _data$result === void 0 ? void 0 : (_data$result$malls = _data$result.malls) === null || _data$result$malls === void 0 ? void 0 : _data$result$malls.length) > 0)) {
              _context16.next = 9;
              break;
            }

            return _context16.abrupt("return", data.result.malls);

          case 9:
            return _context16.abrupt("return", []);

          case 10:
            _context16.next = 16;
            break;

          case 12:
            _context16.prev = 12;
            _context16.t0 = _context16["catch"](0);
            errorMsg = Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context16.t0);

            if (errorMsg.indexOf('403') > -1) {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u83B7\u53D6temu\u672C\u571F\u5E97\u94FA\u6240\u6709\u8D26\u53F7\u5931\u8D25");
            } else {
              _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u83B7\u53D6temu\u672C\u571F\u5E97\u94FA\u6240\u6709\u8D26\u53F7\u5931\u8D25-----".concat(errorMsg));
            }

          case 16:
          case "end":
            return _context16.stop();
        }
      }
    }, _callee14, null, [[0, 12]]);
  }));

  return function getTemuLocalAccount(_x10) {
    return _ref21.apply(this, arguments);
  };
}();
/**
 * 本土店铺切换语言
 */

var changeLanguage = /*#__PURE__*/function () {
  var _ref22 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee15(type) {
    var host, _yield$Promise$all, _yield$Promise$all2, siteCookie, languageCookie, site_id, lang, store, _yield$axios8, data, setCookieRes;

    return _regeneratorRuntime().wrap(function _callee15$(_context17) {
      while (1) {
        switch (_context17.prev = _context17.next) {
          case 0:
            if (type) {
              _context17.next = 2;
              break;
            }

            return _context17.abrupt("return");

          case 2:
            _context17.prev = 2;
            host = {
              us: temu.usHost,
              eu: temu.euHost
            }[type]; // 通过cookie获取当前站点和语言

            _context17.t0 = Promise;
            _context17.t1 = Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* getCookies */ "p"])({
              url: host,
              name: 'seller_site'
            });
            _context17.next = 8;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* getCookies */ "p"])({
              url: host,
              name: 'seller_language'
            });

          case 8:
            _context17.t2 = _context17.sent;
            _context17.t3 = [_context17.t1, _context17.t2];
            _context17.next = 12;
            return _context17.t0.all.call(_context17.t0, _context17.t3);

          case 12:
            _yield$Promise$all = _context17.sent;
            _yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 2);
            siteCookie = _yield$Promise$all2[0];
            languageCookie = _yield$Promise$all2[1];
            site_id = siteCookie.value;
            lang = languageCookie.value; // 如果通过cookie获取siteid和当前语言失败，则通过接口拿

            if (!(!site_id || !lang)) {
              _context17.next = 26;
              break;
            }

            _context17.next = 21;
            return checkTemuEuLocal();

          case 21:
            store = _context17.sent;

            if (store) {
              _context17.next = 24;
              break;
            }

            return _context17.abrupt("return");

          case 24:
            site_id = store.localInfo.site;
            lang = store.localInfo.language;

          case 26:
            if (!(lang === 'en')) {
              _context17.next = 29;
              break;
            }

            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("[".concat(type, "]\u5F53\u524D\u8BED\u8A00\u4E3Aen\uFF0C\u4E0D\u9700\u8981\u5207\u6362"));
            return _context17.abrupt("return");

          case 29:
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("[".concat(type, "]\u5F53\u524D\u8BED\u8A00").concat(site_id, "\uFF0C\u51C6\u5907\u5207\u6362\u81F3en")); // 此接口作用不知道是啥，但是temu有调，那我们也要调

            _context17.next = 32;
            return axios__WEBPACK_IMPORTED_MODULE_0___default()({
              url: "".concat(host, "/api/bg/christiaan/change/site/lang/report"),
              method: 'post',
              data: {
                before: {
                  site_id: site_id,
                  lang: lang
                },
                after: {
                  site_id: site_id,
                  lang: "en"
                },
                scene: 10000,
                path: "/home.html"
              }
            });

          case 32:
            _yield$axios8 = _context17.sent;
            data = _yield$axios8.data;

            if (data) {
              _context17.next = 37;
              break;
            }

            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("[".concat(type, "]\u8BF7\u6C42\u5207\u6362\u8BED\u8A00\u63A5\u53E3\u5931\u8D25"));
            return _context17.abrupt("return");

          case 37:
            _context17.next = 39;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* setCookies */ "H"])({
              url: host,
              name: 'seller_language',
              value: 'en'
            });

          case 39:
            setCookieRes = _context17.sent;

            if (!(setCookieRes && setCookieRes.value === 'en')) {
              _context17.next = 42;
              break;
            }

            return _context17.abrupt("return", true);

          case 42:
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("[".concat(type, "]\u8BED\u8A00\u5207\u6362\u5931\u8D25"));
            _context17.next = 48;
            break;

          case 45:
            _context17.prev = 45;
            _context17.t4 = _context17["catch"](2);
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("[".concat(type, "]\u5207\u6362temu ").concat(type, "\u7AD9\u70B9\u8BED\u8A00\u62A5\u9519-----").concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context17.t4)));

          case 48:
          case "end":
            return _context17.stop();
        }
      }
    }, _callee15, null, [[2, 45]]);
  }));

  return function changeLanguage(_x11) {
    return _ref22.apply(this, arguments);
  };
}();
var loginCb = /*#__PURE__*/function () {
  var _ref23 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee16(task) {
    var Mallid, redirectUrl, _yield$axios9, data, loginParams, _yield$nativeRequest, errorMsg, success;

    return _regeneratorRuntime().wrap(function _callee16$(_context18) {
      while (1) {
        switch (_context18.prev = _context18.next) {
          case 0:
            _context18.prev = 0;
            Mallid = task.platform_store_id, redirectUrl = task.host;
            _context18.next = 4;
            return axios__WEBPACK_IMPORTED_MODULE_0___default()({
              url: "https://seller.kuajingmaihuo.com/bg/quiet/api/auth/obtainCode",
              method: 'post',
              data: {
                redirectUrl: redirectUrl + '/main/authentication'
              },
              headers: {
                Mallid: Mallid
              }
            });

          case 4:
            _yield$axios9 = _context18.sent;
            data = _yield$axios9.data;

            if (!(data && data.success)) {
              _context18.next = 25;
              break;
            }

            loginParams = {
              code: data.result.code,
              confirm: true
            };

            if (isUniqueId(Mallid)) {
              loginParams.targetUniqueId = Mallid;
            } else {
              loginParams.targetMallId = Mallid;
            }

            _context18.next = 11;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* nativeRequest */ "z"])("".concat(redirectUrl, "/api/seller/auth/loginByCode"), 'post', loginParams);

          case 11:
            _yield$nativeRequest = _context18.sent;
            errorMsg = _yield$nativeRequest.errorMsg;
            success = _yield$nativeRequest.success;

            if (!success) {
              _context18.next = 21;
              break;
            }

            _context18.next = 17;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* setCookies */ "H"])({
              url: redirectUrl,
              name: 'mallid',
              value: String(Mallid)
            });

          case 17:
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('切换temu分区站点成功');
            return _context18.abrupt("return", true);

          case 21:
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].report("\u5207\u6362temu\u5206\u533A\u7AD9\u70B9\u62A5\u9519\uFF0CloginByCode\u8BF7\u6C42\u5931\u8D25-----".concat(errorMsg));
            return _context18.abrupt("return", false);

          case 23:
            _context18.next = 27;
            break;

          case 25:
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u5207\u6362temu\u5206\u533A\u7AD9\u70B9\u62A5\u9519-----errorMsg: ".concat(data ? data.errorMsg : '', "----errorCode:").concat(data ? data.errorCode : ''));
            return _context18.abrupt("return", false);

          case 27:
            _context18.next = 33;
            break;

          case 29:
            _context18.prev = 29;
            _context18.t0 = _context18["catch"](0);
            _data_log__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u5207\u6362temu\u5206\u533A\u7AD9\u70B9\u62A5\u9519-----".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_2__[/* isError */ "u"])(_context18.t0, task)));
            return _context18.abrupt("return", false);

          case 33:
          case "end":
            return _context18.stop();
        }
      }
    }, _callee16, null, [[0, 29]]);
  }));

  return function loginCb(_x12) {
    return _ref23.apply(this, arguments);
  };
}(); // window.testUs = async () => {
//   const res = await loginCb(634418215364437, temu.cbEuHost)
//   log.setLog('testUs', res)
// }

/**
 * @description 优先返回 mallId（为了兼容mallid与uniqueid同时存在时，后端下发uniqueid，但temu接口仍需要传mallid的场景）
 * @param {string} id 店铺ID
 * @returns {string} 真正的 mallId
 */

var getRealMallId = function getRealMallId(id) {
  var storeIdMap = _common__WEBPACK_IMPORTED_MODULE_3__[/* multiPlatform */ "a"].storeIdMap || {}; // 1. 如果 id 本身就是 mallId (存在于 map 的 key 中)，且对应的 value 有值，说明它确实是 mallId

  if (Object.prototype.hasOwnProperty.call(storeIdMap, id) && storeIdMap[id] !== '') {
    return id;
  } // 2. 如果 id 是 uniqueId (存在于 map 的 value 中)，则反向查找其对应的 mallId (key)


  var foundEntry = Object.entries(storeIdMap).find(function (_ref24) {
    var _ref25 = _slicedToArray(_ref24, 2),
        mId = _ref25[0],
        uId = _ref25[1];

    return uId == id;
  });

  if (foundEntry) {
    return foundEntry[0]; // 返回 key，即 mallId
  } // 3. 如果在 map 中完全找不到（可能是只有 uniqueId 或未关联上），则保留原始 ID


  return id;
};
/**
 * @description 判断是否是 uniqueId
 * @param {string} Mallid 店铺ID
 * @returns {boolean} 是否是 uniqueId
 */

var isUniqueId = function isUniqueId(Mallid) {
  var id = String(Mallid);
  var map = _common__WEBPACK_IMPORTED_MODULE_3__[/* multiPlatform */ "a"].storeIdMap || {}; // 1.存在于values中，是uniqueid

  var isInValues = Object.values(map).some(function (v) {
    return String(v) === id;
  }); // 2. 存在于 keys 中且对应的 value 为 ""，也为uniqueid

  var isKeyWithEmptyValue = Object.prototype.hasOwnProperty.call(map, id) && map[id] === "";
  return isInValues || isKeyWithEmptyValue;
};

/***/ }),

/***/ "c05f":
/***/ (function(module, exports, __webpack_require__) {

var baseIsEqualDeep = __webpack_require__("7b97"),
    isObjectLike = __webpack_require__("1310");

/**
 * The base implementation of `_.isEqual` which supports partial comparisons
 * and tracks traversed objects.
 *
 * @private
 * @param {*} value The value to compare.
 * @param {*} other The other value to compare.
 * @param {boolean} bitmask The bitmask flags.
 *  1 - Unordered comparison
 *  2 - Partial comparison
 * @param {Function} [customizer] The function to customize comparisons.
 * @param {Object} [stack] Tracks traversed `value` and `other` objects.
 * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
 */
function baseIsEqual(value, other, bitmask, customizer, stack) {
  if (value === other) {
    return true;
  }
  if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {
    return value !== value && other !== other;
  }
  return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);
}

module.exports = baseIsEqual;


/***/ }),

/***/ "c098":
/***/ (function(module, exports) {

/** Used as references for various `Number` constants. */
var MAX_SAFE_INTEGER = 9007199254740991;

/** Used to detect unsigned integer values. */
var reIsUint = /^(?:0|[1-9]\d*)$/;

/**
 * Checks if `value` is a valid array-like index.
 *
 * @private
 * @param {*} value The value to check.
 * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
 * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
 */
function isIndex(value, length) {
  var type = typeof value;
  length = length == null ? MAX_SAFE_INTEGER : length;

  return !!length &&
    (type == 'number' ||
      (type != 'symbol' && reIsUint.test(value))) &&
        (value > -1 && value % 1 == 0 && value < length);
}

module.exports = isIndex;


/***/ }),

/***/ "c1c9":
/***/ (function(module, exports, __webpack_require__) {

var baseSetToString = __webpack_require__("a454"),
    shortOut = __webpack_require__("f3c1");

/**
 * Sets the `toString` method of `func` to return `string`.
 *
 * @private
 * @param {Function} func The function to modify.
 * @param {Function} string The `toString` result.
 * @returns {Function} Returns `func`.
 */
var setToString = shortOut(baseSetToString);

module.exports = setToString;


/***/ }),

/***/ "c1df":
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(module) {var require;//! moment.js
//! version : 2.30.1
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
//! license : MIT
//! momentjs.com

;(function (global, factory) {
     true ? module.exports = factory() :
    undefined
}(this, (function () { 'use strict';

    var hookCallback;

    function hooks() {
        return hookCallback.apply(null, arguments);
    }

    // This is done to register the method called with moment()
    // without creating circular dependencies.
    function setHookCallback(callback) {
        hookCallback = callback;
    }

    function isArray(input) {
        return (
            input instanceof Array ||
            Object.prototype.toString.call(input) === '[object Array]'
        );
    }

    function isObject(input) {
        // IE8 will treat undefined and null as object if it wasn't for
        // input != null
        return (
            input != null &&
            Object.prototype.toString.call(input) === '[object Object]'
        );
    }

    function hasOwnProp(a, b) {
        return Object.prototype.hasOwnProperty.call(a, b);
    }

    function isObjectEmpty(obj) {
        if (Object.getOwnPropertyNames) {
            return Object.getOwnPropertyNames(obj).length === 0;
        } else {
            var k;
            for (k in obj) {
                if (hasOwnProp(obj, k)) {
                    return false;
                }
            }
            return true;
        }
    }

    function isUndefined(input) {
        return input === void 0;
    }

    function isNumber(input) {
        return (
            typeof input === 'number' ||
            Object.prototype.toString.call(input) === '[object Number]'
        );
    }

    function isDate(input) {
        return (
            input instanceof Date ||
            Object.prototype.toString.call(input) === '[object Date]'
        );
    }

    function map(arr, fn) {
        var res = [],
            i,
            arrLen = arr.length;
        for (i = 0; i < arrLen; ++i) {
            res.push(fn(arr[i], i));
        }
        return res;
    }

    function extend(a, b) {
        for (var i in b) {
            if (hasOwnProp(b, i)) {
                a[i] = b[i];
            }
        }

        if (hasOwnProp(b, 'toString')) {
            a.toString = b.toString;
        }

        if (hasOwnProp(b, 'valueOf')) {
            a.valueOf = b.valueOf;
        }

        return a;
    }

    function createUTC(input, format, locale, strict) {
        return createLocalOrUTC(input, format, locale, strict, true).utc();
    }

    function defaultParsingFlags() {
        // We need to deep clone this object.
        return {
            empty: false,
            unusedTokens: [],
            unusedInput: [],
            overflow: -2,
            charsLeftOver: 0,
            nullInput: false,
            invalidEra: null,
            invalidMonth: null,
            invalidFormat: false,
            userInvalidated: false,
            iso: false,
            parsedDateParts: [],
            era: null,
            meridiem: null,
            rfc2822: false,
            weekdayMismatch: false,
        };
    }

    function getParsingFlags(m) {
        if (m._pf == null) {
            m._pf = defaultParsingFlags();
        }
        return m._pf;
    }

    var some;
    if (Array.prototype.some) {
        some = Array.prototype.some;
    } else {
        some = function (fun) {
            var t = Object(this),
                len = t.length >>> 0,
                i;

            for (i = 0; i < len; i++) {
                if (i in t && fun.call(this, t[i], i, t)) {
                    return true;
                }
            }

            return false;
        };
    }

    function isValid(m) {
        var flags = null,
            parsedParts = false,
            isNowValid = m._d && !isNaN(m._d.getTime());
        if (isNowValid) {
            flags = getParsingFlags(m);
            parsedParts = some.call(flags.parsedDateParts, function (i) {
                return i != null;
            });
            isNowValid =
                flags.overflow < 0 &&
                !flags.empty &&
                !flags.invalidEra &&
                !flags.invalidMonth &&
                !flags.invalidWeekday &&
                !flags.weekdayMismatch &&
                !flags.nullInput &&
                !flags.invalidFormat &&
                !flags.userInvalidated &&
                (!flags.meridiem || (flags.meridiem && parsedParts));
            if (m._strict) {
                isNowValid =
                    isNowValid &&
                    flags.charsLeftOver === 0 &&
                    flags.unusedTokens.length === 0 &&
                    flags.bigHour === undefined;
            }
        }
        if (Object.isFrozen == null || !Object.isFrozen(m)) {
            m._isValid = isNowValid;
        } else {
            return isNowValid;
        }
        return m._isValid;
    }

    function createInvalid(flags) {
        var m = createUTC(NaN);
        if (flags != null) {
            extend(getParsingFlags(m), flags);
        } else {
            getParsingFlags(m).userInvalidated = true;
        }

        return m;
    }

    // Plugins that add properties should also add the key here (null value),
    // so we can properly clone ourselves.
    var momentProperties = (hooks.momentProperties = []),
        updateInProgress = false;

    function copyConfig(to, from) {
        var i,
            prop,
            val,
            momentPropertiesLen = momentProperties.length;

        if (!isUndefined(from._isAMomentObject)) {
            to._isAMomentObject = from._isAMomentObject;
        }
        if (!isUndefined(from._i)) {
            to._i = from._i;
        }
        if (!isUndefined(from._f)) {
            to._f = from._f;
        }
        if (!isUndefined(from._l)) {
            to._l = from._l;
        }
        if (!isUndefined(from._strict)) {
            to._strict = from._strict;
        }
        if (!isUndefined(from._tzm)) {
            to._tzm = from._tzm;
        }
        if (!isUndefined(from._isUTC)) {
            to._isUTC = from._isUTC;
        }
        if (!isUndefined(from._offset)) {
            to._offset = from._offset;
        }
        if (!isUndefined(from._pf)) {
            to._pf = getParsingFlags(from);
        }
        if (!isUndefined(from._locale)) {
            to._locale = from._locale;
        }

        if (momentPropertiesLen > 0) {
            for (i = 0; i < momentPropertiesLen; i++) {
                prop = momentProperties[i];
                val = from[prop];
                if (!isUndefined(val)) {
                    to[prop] = val;
                }
            }
        }

        return to;
    }

    // Moment prototype object
    function Moment(config) {
        copyConfig(this, config);
        this._d = new Date(config._d != null ? config._d.getTime() : NaN);
        if (!this.isValid()) {
            this._d = new Date(NaN);
        }
        // Prevent infinite loop in case updateOffset creates new moment
        // objects.
        if (updateInProgress === false) {
            updateInProgress = true;
            hooks.updateOffset(this);
            updateInProgress = false;
        }
    }

    function isMoment(obj) {
        return (
            obj instanceof Moment || (obj != null && obj._isAMomentObject != null)
        );
    }

    function warn(msg) {
        if (
            hooks.suppressDeprecationWarnings === false &&
            typeof console !== 'undefined' &&
            console.warn
        ) {
            console.warn('Deprecation warning: ' + msg);
        }
    }

    function deprecate(msg, fn) {
        var firstTime = true;

        return extend(function () {
            if (hooks.deprecationHandler != null) {
                hooks.deprecationHandler(null, msg);
            }
            if (firstTime) {
                var args = [],
                    arg,
                    i,
                    key,
                    argLen = arguments.length;
                for (i = 0; i < argLen; i++) {
                    arg = '';
                    if (typeof arguments[i] === 'object') {
                        arg += '\n[' + i + '] ';
                        for (key in arguments[0]) {
                            if (hasOwnProp(arguments[0], key)) {
                                arg += key + ': ' + arguments[0][key] + ', ';
                            }
                        }
                        arg = arg.slice(0, -2); // Remove trailing comma and space
                    } else {
                        arg = arguments[i];
                    }
                    args.push(arg);
                }
                warn(
                    msg +
                        '\nArguments: ' +
                        Array.prototype.slice.call(args).join('') +
                        '\n' +
                        new Error().stack
                );
                firstTime = false;
            }
            return fn.apply(this, arguments);
        }, fn);
    }

    var deprecations = {};

    function deprecateSimple(name, msg) {
        if (hooks.deprecationHandler != null) {
            hooks.deprecationHandler(name, msg);
        }
        if (!deprecations[name]) {
            warn(msg);
            deprecations[name] = true;
        }
    }

    hooks.suppressDeprecationWarnings = false;
    hooks.deprecationHandler = null;

    function isFunction(input) {
        return (
            (typeof Function !== 'undefined' && input instanceof Function) ||
            Object.prototype.toString.call(input) === '[object Function]'
        );
    }

    function set(config) {
        var prop, i;
        for (i in config) {
            if (hasOwnProp(config, i)) {
                prop = config[i];
                if (isFunction(prop)) {
                    this[i] = prop;
                } else {
                    this['_' + i] = prop;
                }
            }
        }
        this._config = config;
        // Lenient ordinal parsing accepts just a number in addition to
        // number + (possibly) stuff coming from _dayOfMonthOrdinalParse.
        // TODO: Remove "ordinalParse" fallback in next major release.
        this._dayOfMonthOrdinalParseLenient = new RegExp(
            (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) +
                '|' +
                /\d{1,2}/.source
        );
    }

    function mergeConfigs(parentConfig, childConfig) {
        var res = extend({}, parentConfig),
            prop;
        for (prop in childConfig) {
            if (hasOwnProp(childConfig, prop)) {
                if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) {
                    res[prop] = {};
                    extend(res[prop], parentConfig[prop]);
                    extend(res[prop], childConfig[prop]);
                } else if (childConfig[prop] != null) {
                    res[prop] = childConfig[prop];
                } else {
                    delete res[prop];
                }
            }
        }
        for (prop in parentConfig) {
            if (
                hasOwnProp(parentConfig, prop) &&
                !hasOwnProp(childConfig, prop) &&
                isObject(parentConfig[prop])
            ) {
                // make sure changes to properties don't modify parent config
                res[prop] = extend({}, res[prop]);
            }
        }
        return res;
    }

    function Locale(config) {
        if (config != null) {
            this.set(config);
        }
    }

    var keys;

    if (Object.keys) {
        keys = Object.keys;
    } else {
        keys = function (obj) {
            var i,
                res = [];
            for (i in obj) {
                if (hasOwnProp(obj, i)) {
                    res.push(i);
                }
            }
            return res;
        };
    }

    var defaultCalendar = {
        sameDay: '[Today at] LT',
        nextDay: '[Tomorrow at] LT',
        nextWeek: 'dddd [at] LT',
        lastDay: '[Yesterday at] LT',
        lastWeek: '[Last] dddd [at] LT',
        sameElse: 'L',
    };

    function calendar(key, mom, now) {
        var output = this._calendar[key] || this._calendar['sameElse'];
        return isFunction(output) ? output.call(mom, now) : output;
    }

    function zeroFill(number, targetLength, forceSign) {
        var absNumber = '' + Math.abs(number),
            zerosToFill = targetLength - absNumber.length,
            sign = number >= 0;
        return (
            (sign ? (forceSign ? '+' : '') : '-') +
            Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) +
            absNumber
        );
    }

    var formattingTokens =
            /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,
        localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,
        formatFunctions = {},
        formatTokenFunctions = {};

    // token:    'M'
    // padded:   ['MM', 2]
    // ordinal:  'Mo'
    // callback: function () { this.month() + 1 }
    function addFormatToken(token, padded, ordinal, callback) {
        var func = callback;
        if (typeof callback === 'string') {
            func = function () {
                return this[callback]();
            };
        }
        if (token) {
            formatTokenFunctions[token] = func;
        }
        if (padded) {
            formatTokenFunctions[padded[0]] = function () {
                return zeroFill(func.apply(this, arguments), padded[1], padded[2]);
            };
        }
        if (ordinal) {
            formatTokenFunctions[ordinal] = function () {
                return this.localeData().ordinal(
                    func.apply(this, arguments),
                    token
                );
            };
        }
    }

    function removeFormattingTokens(input) {
        if (input.match(/\[[\s\S]/)) {
            return input.replace(/^\[|\]$/g, '');
        }
        return input.replace(/\\/g, '');
    }

    function makeFormatFunction(format) {
        var array = format.match(formattingTokens),
            i,
            length;

        for (i = 0, length = array.length; i < length; i++) {
            if (formatTokenFunctions[array[i]]) {
                array[i] = formatTokenFunctions[array[i]];
            } else {
                array[i] = removeFormattingTokens(array[i]);
            }
        }

        return function (mom) {
            var output = '',
                i;
            for (i = 0; i < length; i++) {
                output += isFunction(array[i])
                    ? array[i].call(mom, format)
                    : array[i];
            }
            return output;
        };
    }

    // format date using native date object
    function formatMoment(m, format) {
        if (!m.isValid()) {
            return m.localeData().invalidDate();
        }

        format = expandFormat(format, m.localeData());
        formatFunctions[format] =
            formatFunctions[format] || makeFormatFunction(format);

        return formatFunctions[format](m);
    }

    function expandFormat(format, locale) {
        var i = 5;

        function replaceLongDateFormatTokens(input) {
            return locale.longDateFormat(input) || input;
        }

        localFormattingTokens.lastIndex = 0;
        while (i >= 0 && localFormattingTokens.test(format)) {
            format = format.replace(
                localFormattingTokens,
                replaceLongDateFormatTokens
            );
            localFormattingTokens.lastIndex = 0;
            i -= 1;
        }

        return format;
    }

    var defaultLongDateFormat = {
        LTS: 'h:mm:ss A',
        LT: 'h:mm A',
        L: 'MM/DD/YYYY',
        LL: 'MMMM D, YYYY',
        LLL: 'MMMM D, YYYY h:mm A',
        LLLL: 'dddd, MMMM D, YYYY h:mm A',
    };

    function longDateFormat(key) {
        var format = this._longDateFormat[key],
            formatUpper = this._longDateFormat[key.toUpperCase()];

        if (format || !formatUpper) {
            return format;
        }

        this._longDateFormat[key] = formatUpper
            .match(formattingTokens)
            .map(function (tok) {
                if (
                    tok === 'MMMM' ||
                    tok === 'MM' ||
                    tok === 'DD' ||
                    tok === 'dddd'
                ) {
                    return tok.slice(1);
                }
                return tok;
            })
            .join('');

        return this._longDateFormat[key];
    }

    var defaultInvalidDate = 'Invalid date';

    function invalidDate() {
        return this._invalidDate;
    }

    var defaultOrdinal = '%d',
        defaultDayOfMonthOrdinalParse = /\d{1,2}/;

    function ordinal(number) {
        return this._ordinal.replace('%d', number);
    }

    var defaultRelativeTime = {
        future: 'in %s',
        past: '%s ago',
        s: 'a few seconds',
        ss: '%d seconds',
        m: 'a minute',
        mm: '%d minutes',
        h: 'an hour',
        hh: '%d hours',
        d: 'a day',
        dd: '%d days',
        w: 'a week',
        ww: '%d weeks',
        M: 'a month',
        MM: '%d months',
        y: 'a year',
        yy: '%d years',
    };

    function relativeTime(number, withoutSuffix, string, isFuture) {
        var output = this._relativeTime[string];
        return isFunction(output)
            ? output(number, withoutSuffix, string, isFuture)
            : output.replace(/%d/i, number);
    }

    function pastFuture(diff, output) {
        var format = this._relativeTime[diff > 0 ? 'future' : 'past'];
        return isFunction(format) ? format(output) : format.replace(/%s/i, output);
    }

    var aliases = {
        D: 'date',
        dates: 'date',
        date: 'date',
        d: 'day',
        days: 'day',
        day: 'day',
        e: 'weekday',
        weekdays: 'weekday',
        weekday: 'weekday',
        E: 'isoWeekday',
        isoweekdays: 'isoWeekday',
        isoweekday: 'isoWeekday',
        DDD: 'dayOfYear',
        dayofyears: 'dayOfYear',
        dayofyear: 'dayOfYear',
        h: 'hour',
        hours: 'hour',
        hour: 'hour',
        ms: 'millisecond',
        milliseconds: 'millisecond',
        millisecond: 'millisecond',
        m: 'minute',
        minutes: 'minute',
        minute: 'minute',
        M: 'month',
        months: 'month',
        month: 'month',
        Q: 'quarter',
        quarters: 'quarter',
        quarter: 'quarter',
        s: 'second',
        seconds: 'second',
        second: 'second',
        gg: 'weekYear',
        weekyears: 'weekYear',
        weekyear: 'weekYear',
        GG: 'isoWeekYear',
        isoweekyears: 'isoWeekYear',
        isoweekyear: 'isoWeekYear',
        w: 'week',
        weeks: 'week',
        week: 'week',
        W: 'isoWeek',
        isoweeks: 'isoWeek',
        isoweek: 'isoWeek',
        y: 'year',
        years: 'year',
        year: 'year',
    };

    function normalizeUnits(units) {
        return typeof units === 'string'
            ? aliases[units] || aliases[units.toLowerCase()]
            : undefined;
    }

    function normalizeObjectUnits(inputObject) {
        var normalizedInput = {},
            normalizedProp,
            prop;

        for (prop in inputObject) {
            if (hasOwnProp(inputObject, prop)) {
                normalizedProp = normalizeUnits(prop);
                if (normalizedProp) {
                    normalizedInput[normalizedProp] = inputObject[prop];
                }
            }
        }

        return normalizedInput;
    }

    var priorities = {
        date: 9,
        day: 11,
        weekday: 11,
        isoWeekday: 11,
        dayOfYear: 4,
        hour: 13,
        millisecond: 16,
        minute: 14,
        month: 8,
        quarter: 7,
        second: 15,
        weekYear: 1,
        isoWeekYear: 1,
        week: 5,
        isoWeek: 5,
        year: 1,
    };

    function getPrioritizedUnits(unitsObj) {
        var units = [],
            u;
        for (u in unitsObj) {
            if (hasOwnProp(unitsObj, u)) {
                units.push({ unit: u, priority: priorities[u] });
            }
        }
        units.sort(function (a, b) {
            return a.priority - b.priority;
        });
        return units;
    }

    var match1 = /\d/, //       0 - 9
        match2 = /\d\d/, //      00 - 99
        match3 = /\d{3}/, //     000 - 999
        match4 = /\d{4}/, //    0000 - 9999
        match6 = /[+-]?\d{6}/, // -999999 - 999999
        match1to2 = /\d\d?/, //       0 - 99
        match3to4 = /\d\d\d\d?/, //     999 - 9999
        match5to6 = /\d\d\d\d\d\d?/, //   99999 - 999999
        match1to3 = /\d{1,3}/, //       0 - 999
        match1to4 = /\d{1,4}/, //       0 - 9999
        match1to6 = /[+-]?\d{1,6}/, // -999999 - 999999
        matchUnsigned = /\d+/, //       0 - inf
        matchSigned = /[+-]?\d+/, //    -inf - inf
        matchOffset = /Z|[+-]\d\d:?\d\d/gi, // +00:00 -00:00 +0000 -0000 or Z
        matchShortOffset = /Z|[+-]\d\d(?::?\d\d)?/gi, // +00 -00 +00:00 -00:00 +0000 -0000 or Z
        matchTimestamp = /[+-]?\d+(\.\d{1,3})?/, // 123456789 123456789.123
        // any word (or two) characters or numbers including two/three word month in arabic.
        // includes scottish gaelic two word and hyphenated months
        matchWord =
            /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,
        match1to2NoLeadingZero = /^[1-9]\d?/, //         1-99
        match1to2HasZero = /^([1-9]\d|\d)/, //           0-99
        regexes;

    regexes = {};

    function addRegexToken(token, regex, strictRegex) {
        regexes[token] = isFunction(regex)
            ? regex
            : function (isStrict, localeData) {
                  return isStrict && strictRegex ? strictRegex : regex;
              };
    }

    function getParseRegexForToken(token, config) {
        if (!hasOwnProp(regexes, token)) {
            return new RegExp(unescapeFormat(token));
        }

        return regexes[token](config._strict, config._locale);
    }

    // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript
    function unescapeFormat(s) {
        return regexEscape(
            s
                .replace('\\', '')
                .replace(
                    /\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,
                    function (matched, p1, p2, p3, p4) {
                        return p1 || p2 || p3 || p4;
                    }
                )
        );
    }

    function regexEscape(s) {
        return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
    }

    function absFloor(number) {
        if (number < 0) {
            // -0 -> 0
            return Math.ceil(number) || 0;
        } else {
            return Math.floor(number);
        }
    }

    function toInt(argumentForCoercion) {
        var coercedNumber = +argumentForCoercion,
            value = 0;

        if (coercedNumber !== 0 && isFinite(coercedNumber)) {
            value = absFloor(coercedNumber);
        }

        return value;
    }

    var tokens = {};

    function addParseToken(token, callback) {
        var i,
            func = callback,
            tokenLen;
        if (typeof token === 'string') {
            token = [token];
        }
        if (isNumber(callback)) {
            func = function (input, array) {
                array[callback] = toInt(input);
            };
        }
        tokenLen = token.length;
        for (i = 0; i < tokenLen; i++) {
            tokens[token[i]] = func;
        }
    }

    function addWeekParseToken(token, callback) {
        addParseToken(token, function (input, array, config, token) {
            config._w = config._w || {};
            callback(input, config._w, config, token);
        });
    }

    function addTimeToArrayFromToken(token, input, config) {
        if (input != null && hasOwnProp(tokens, token)) {
            tokens[token](input, config._a, config, token);
        }
    }

    function isLeapYear(year) {
        return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;
    }

    var YEAR = 0,
        MONTH = 1,
        DATE = 2,
        HOUR = 3,
        MINUTE = 4,
        SECOND = 5,
        MILLISECOND = 6,
        WEEK = 7,
        WEEKDAY = 8;

    // FORMATTING

    addFormatToken('Y', 0, 0, function () {
        var y = this.year();
        return y <= 9999 ? zeroFill(y, 4) : '+' + y;
    });

    addFormatToken(0, ['YY', 2], 0, function () {
        return this.year() % 100;
    });

    addFormatToken(0, ['YYYY', 4], 0, 'year');
    addFormatToken(0, ['YYYYY', 5], 0, 'year');
    addFormatToken(0, ['YYYYYY', 6, true], 0, 'year');

    // PARSING

    addRegexToken('Y', matchSigned);
    addRegexToken('YY', match1to2, match2);
    addRegexToken('YYYY', match1to4, match4);
    addRegexToken('YYYYY', match1to6, match6);
    addRegexToken('YYYYYY', match1to6, match6);

    addParseToken(['YYYYY', 'YYYYYY'], YEAR);
    addParseToken('YYYY', function (input, array) {
        array[YEAR] =
            input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input);
    });
    addParseToken('YY', function (input, array) {
        array[YEAR] = hooks.parseTwoDigitYear(input);
    });
    addParseToken('Y', function (input, array) {
        array[YEAR] = parseInt(input, 10);
    });

    // HELPERS

    function daysInYear(year) {
        return isLeapYear(year) ? 366 : 365;
    }

    // HOOKS

    hooks.parseTwoDigitYear = function (input) {
        return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);
    };

    // MOMENTS

    var getSetYear = makeGetSet('FullYear', true);

    function getIsLeapYear() {
        return isLeapYear(this.year());
    }

    function makeGetSet(unit, keepTime) {
        return function (value) {
            if (value != null) {
                set$1(this, unit, value);
                hooks.updateOffset(this, keepTime);
                return this;
            } else {
                return get(this, unit);
            }
        };
    }

    function get(mom, unit) {
        if (!mom.isValid()) {
            return NaN;
        }

        var d = mom._d,
            isUTC = mom._isUTC;

        switch (unit) {
            case 'Milliseconds':
                return isUTC ? d.getUTCMilliseconds() : d.getMilliseconds();
            case 'Seconds':
                return isUTC ? d.getUTCSeconds() : d.getSeconds();
            case 'Minutes':
                return isUTC ? d.getUTCMinutes() : d.getMinutes();
            case 'Hours':
                return isUTC ? d.getUTCHours() : d.getHours();
            case 'Date':
                return isUTC ? d.getUTCDate() : d.getDate();
            case 'Day':
                return isUTC ? d.getUTCDay() : d.getDay();
            case 'Month':
                return isUTC ? d.getUTCMonth() : d.getMonth();
            case 'FullYear':
                return isUTC ? d.getUTCFullYear() : d.getFullYear();
            default:
                return NaN; // Just in case
        }
    }

    function set$1(mom, unit, value) {
        var d, isUTC, year, month, date;

        if (!mom.isValid() || isNaN(value)) {
            return;
        }

        d = mom._d;
        isUTC = mom._isUTC;

        switch (unit) {
            case 'Milliseconds':
                return void (isUTC
                    ? d.setUTCMilliseconds(value)
                    : d.setMilliseconds(value));
            case 'Seconds':
                return void (isUTC ? d.setUTCSeconds(value) : d.setSeconds(value));
            case 'Minutes':
                return void (isUTC ? d.setUTCMinutes(value) : d.setMinutes(value));
            case 'Hours':
                return void (isUTC ? d.setUTCHours(value) : d.setHours(value));
            case 'Date':
                return void (isUTC ? d.setUTCDate(value) : d.setDate(value));
            // case 'Day': // Not real
            //    return void (isUTC ? d.setUTCDay(value) : d.setDay(value));
            // case 'Month': // Not used because we need to pass two variables
            //     return void (isUTC ? d.setUTCMonth(value) : d.setMonth(value));
            case 'FullYear':
                break; // See below ...
            default:
                return; // Just in case
        }

        year = value;
        month = mom.month();
        date = mom.date();
        date = date === 29 && month === 1 && !isLeapYear(year) ? 28 : date;
        void (isUTC
            ? d.setUTCFullYear(year, month, date)
            : d.setFullYear(year, month, date));
    }

    // MOMENTS

    function stringGet(units) {
        units = normalizeUnits(units);
        if (isFunction(this[units])) {
            return this[units]();
        }
        return this;
    }

    function stringSet(units, value) {
        if (typeof units === 'object') {
            units = normalizeObjectUnits(units);
            var prioritized = getPrioritizedUnits(units),
                i,
                prioritizedLen = prioritized.length;
            for (i = 0; i < prioritizedLen; i++) {
                this[prioritized[i].unit](units[prioritized[i].unit]);
            }
        } else {
            units = normalizeUnits(units);
            if (isFunction(this[units])) {
                return this[units](value);
            }
        }
        return this;
    }

    function mod(n, x) {
        return ((n % x) + x) % x;
    }

    var indexOf;

    if (Array.prototype.indexOf) {
        indexOf = Array.prototype.indexOf;
    } else {
        indexOf = function (o) {
            // I know
            var i;
            for (i = 0; i < this.length; ++i) {
                if (this[i] === o) {
                    return i;
                }
            }
            return -1;
        };
    }

    function daysInMonth(year, month) {
        if (isNaN(year) || isNaN(month)) {
            return NaN;
        }
        var modMonth = mod(month, 12);
        year += (month - modMonth) / 12;
        return modMonth === 1
            ? isLeapYear(year)
                ? 29
                : 28
            : 31 - ((modMonth % 7) % 2);
    }

    // FORMATTING

    addFormatToken('M', ['MM', 2], 'Mo', function () {
        return this.month() + 1;
    });

    addFormatToken('MMM', 0, 0, function (format) {
        return this.localeData().monthsShort(this, format);
    });

    addFormatToken('MMMM', 0, 0, function (format) {
        return this.localeData().months(this, format);
    });

    // PARSING

    addRegexToken('M', match1to2, match1to2NoLeadingZero);
    addRegexToken('MM', match1to2, match2);
    addRegexToken('MMM', function (isStrict, locale) {
        return locale.monthsShortRegex(isStrict);
    });
    addRegexToken('MMMM', function (isStrict, locale) {
        return locale.monthsRegex(isStrict);
    });

    addParseToken(['M', 'MM'], function (input, array) {
        array[MONTH] = toInt(input) - 1;
    });

    addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {
        var month = config._locale.monthsParse(input, token, config._strict);
        // if we didn't find a month name, mark the date as invalid.
        if (month != null) {
            array[MONTH] = month;
        } else {
            getParsingFlags(config).invalidMonth = input;
        }
    });

    // LOCALES

    var defaultLocaleMonths =
            'January_February_March_April_May_June_July_August_September_October_November_December'.split(
                '_'
            ),
        defaultLocaleMonthsShort =
            'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
        MONTHS_IN_FORMAT = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,
        defaultMonthsShortRegex = matchWord,
        defaultMonthsRegex = matchWord;

    function localeMonths(m, format) {
        if (!m) {
            return isArray(this._months)
                ? this._months
                : this._months['standalone'];
        }
        return isArray(this._months)
            ? this._months[m.month()]
            : this._months[
                  (this._months.isFormat || MONTHS_IN_FORMAT).test(format)
                      ? 'format'
                      : 'standalone'
              ][m.month()];
    }

    function localeMonthsShort(m, format) {
        if (!m) {
            return isArray(this._monthsShort)
                ? this._monthsShort
                : this._monthsShort['standalone'];
        }
        return isArray(this._monthsShort)
            ? this._monthsShort[m.month()]
            : this._monthsShort[
                  MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone'
              ][m.month()];
    }

    function handleStrictParse(monthName, format, strict) {
        var i,
            ii,
            mom,
            llc = monthName.toLocaleLowerCase();
        if (!this._monthsParse) {
            // this is not used
            this._monthsParse = [];
            this._longMonthsParse = [];
            this._shortMonthsParse = [];
            for (i = 0; i < 12; ++i) {
                mom = createUTC([2000, i]);
                this._shortMonthsParse[i] = this.monthsShort(
                    mom,
                    ''
                ).toLocaleLowerCase();
                this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase();
            }
        }

        if (strict) {
            if (format === 'MMM') {
                ii = indexOf.call(this._shortMonthsParse, llc);
                return ii !== -1 ? ii : null;
            } else {
                ii = indexOf.call(this._longMonthsParse, llc);
                return ii !== -1 ? ii : null;
            }
        } else {
            if (format === 'MMM') {
                ii = indexOf.call(this._shortMonthsParse, llc);
                if (ii !== -1) {
                    return ii;
                }
                ii = indexOf.call(this._longMonthsParse, llc);
                return ii !== -1 ? ii : null;
            } else {
                ii = indexOf.call(this._longMonthsParse, llc);
                if (ii !== -1) {
                    return ii;
                }
                ii = indexOf.call(this._shortMonthsParse, llc);
                return ii !== -1 ? ii : null;
            }
        }
    }

    function localeMonthsParse(monthName, format, strict) {
        var i, mom, regex;

        if (this._monthsParseExact) {
            return handleStrictParse.call(this, monthName, format, strict);
        }

        if (!this._monthsParse) {
            this._monthsParse = [];
            this._longMonthsParse = [];
            this._shortMonthsParse = [];
        }

        // TODO: add sorting
        // Sorting makes sure if one month (or abbr) is a prefix of another
        // see sorting in computeMonthsParse
        for (i = 0; i < 12; i++) {
            // make the regex if we don't have it already
            mom = createUTC([2000, i]);
            if (strict && !this._longMonthsParse[i]) {
                this._longMonthsParse[i] = new RegExp(
                    '^' + this.months(mom, '').replace('.', '') + '$',
                    'i'
                );
                this._shortMonthsParse[i] = new RegExp(
                    '^' + this.monthsShort(mom, '').replace('.', '') + '$',
                    'i'
                );
            }
            if (!strict && !this._monthsParse[i]) {
                regex =
                    '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');
                this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');
            }
            // test the regex
            if (
                strict &&
                format === 'MMMM' &&
                this._longMonthsParse[i].test(monthName)
            ) {
                return i;
            } else if (
                strict &&
                format === 'MMM' &&
                this._shortMonthsParse[i].test(monthName)
            ) {
                return i;
            } else if (!strict && this._monthsParse[i].test(monthName)) {
                return i;
            }
        }
    }

    // MOMENTS

    function setMonth(mom, value) {
        if (!mom.isValid()) {
            // No op
            return mom;
        }

        if (typeof value === 'string') {
            if (/^\d+$/.test(value)) {
                value = toInt(value);
            } else {
                value = mom.localeData().monthsParse(value);
                // TODO: Another silent failure?
                if (!isNumber(value)) {
                    return mom;
                }
            }
        }

        var month = value,
            date = mom.date();

        date = date < 29 ? date : Math.min(date, daysInMonth(mom.year(), month));
        void (mom._isUTC
            ? mom._d.setUTCMonth(month, date)
            : mom._d.setMonth(month, date));
        return mom;
    }

    function getSetMonth(value) {
        if (value != null) {
            setMonth(this, value);
            hooks.updateOffset(this, true);
            return this;
        } else {
            return get(this, 'Month');
        }
    }

    function getDaysInMonth() {
        return daysInMonth(this.year(), this.month());
    }

    function monthsShortRegex(isStrict) {
        if (this._monthsParseExact) {
            if (!hasOwnProp(this, '_monthsRegex')) {
                computeMonthsParse.call(this);
            }
            if (isStrict) {
                return this._monthsShortStrictRegex;
            } else {
                return this._monthsShortRegex;
            }
        } else {
            if (!hasOwnProp(this, '_monthsShortRegex')) {
                this._monthsShortRegex = defaultMonthsShortRegex;
            }
            return this._monthsShortStrictRegex && isStrict
                ? this._monthsShortStrictRegex
                : this._monthsShortRegex;
        }
    }

    function monthsRegex(isStrict) {
        if (this._monthsParseExact) {
            if (!hasOwnProp(this, '_monthsRegex')) {
                computeMonthsParse.call(this);
            }
            if (isStrict) {
                return this._monthsStrictRegex;
            } else {
                return this._monthsRegex;
            }
        } else {
            if (!hasOwnProp(this, '_monthsRegex')) {
                this._monthsRegex = defaultMonthsRegex;
            }
            return this._monthsStrictRegex && isStrict
                ? this._monthsStrictRegex
                : this._monthsRegex;
        }
    }

    function computeMonthsParse() {
        function cmpLenRev(a, b) {
            return b.length - a.length;
        }

        var shortPieces = [],
            longPieces = [],
            mixedPieces = [],
            i,
            mom,
            shortP,
            longP;
        for (i = 0; i < 12; i++) {
            // make the regex if we don't have it already
            mom = createUTC([2000, i]);
            shortP = regexEscape(this.monthsShort(mom, ''));
            longP = regexEscape(this.months(mom, ''));
            shortPieces.push(shortP);
            longPieces.push(longP);
            mixedPieces.push(longP);
            mixedPieces.push(shortP);
        }
        // Sorting makes sure if one month (or abbr) is a prefix of another it
        // will match the longer piece.
        shortPieces.sort(cmpLenRev);
        longPieces.sort(cmpLenRev);
        mixedPieces.sort(cmpLenRev);

        this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');
        this._monthsShortRegex = this._monthsRegex;
        this._monthsStrictRegex = new RegExp(
            '^(' + longPieces.join('|') + ')',
            'i'
        );
        this._monthsShortStrictRegex = new RegExp(
            '^(' + shortPieces.join('|') + ')',
            'i'
        );
    }

    function createDate(y, m, d, h, M, s, ms) {
        // can't just apply() to create a date:
        // https://stackoverflow.com/q/181348
        var date;
        // the date constructor remaps years 0-99 to 1900-1999
        if (y < 100 && y >= 0) {
            // preserve leap years using a full 400 year cycle, then reset
            date = new Date(y + 400, m, d, h, M, s, ms);
            if (isFinite(date.getFullYear())) {
                date.setFullYear(y);
            }
        } else {
            date = new Date(y, m, d, h, M, s, ms);
        }

        return date;
    }

    function createUTCDate(y) {
        var date, args;
        // the Date.UTC function remaps years 0-99 to 1900-1999
        if (y < 100 && y >= 0) {
            args = Array.prototype.slice.call(arguments);
            // preserve leap years using a full 400 year cycle, then reset
            args[0] = y + 400;
            date = new Date(Date.UTC.apply(null, args));
            if (isFinite(date.getUTCFullYear())) {
                date.setUTCFullYear(y);
            }
        } else {
            date = new Date(Date.UTC.apply(null, arguments));
        }

        return date;
    }

    // start-of-first-week - start-of-year
    function firstWeekOffset(year, dow, doy) {
        var // first-week day -- which january is always in the first week (4 for iso, 1 for other)
            fwd = 7 + dow - doy,
            // first-week day local weekday -- which local weekday is fwd
            fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7;

        return -fwdlw + fwd - 1;
    }

    // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday
    function dayOfYearFromWeeks(year, week, weekday, dow, doy) {
        var localWeekday = (7 + weekday - dow) % 7,
            weekOffset = firstWeekOffset(year, dow, doy),
            dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset,
            resYear,
            resDayOfYear;

        if (dayOfYear <= 0) {
            resYear = year - 1;
            resDayOfYear = daysInYear(resYear) + dayOfYear;
        } else if (dayOfYear > daysInYear(year)) {
            resYear = year + 1;
            resDayOfYear = dayOfYear - daysInYear(year);
        } else {
            resYear = year;
            resDayOfYear = dayOfYear;
        }

        return {
            year: resYear,
            dayOfYear: resDayOfYear,
        };
    }

    function weekOfYear(mom, dow, doy) {
        var weekOffset = firstWeekOffset(mom.year(), dow, doy),
            week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1,
            resWeek,
            resYear;

        if (week < 1) {
            resYear = mom.year() - 1;
            resWeek = week + weeksInYear(resYear, dow, doy);
        } else if (week > weeksInYear(mom.year(), dow, doy)) {
            resWeek = week - weeksInYear(mom.year(), dow, doy);
            resYear = mom.year() + 1;
        } else {
            resYear = mom.year();
            resWeek = week;
        }

        return {
            week: resWeek,
            year: resYear,
        };
    }

    function weeksInYear(year, dow, doy) {
        var weekOffset = firstWeekOffset(year, dow, doy),
            weekOffsetNext = firstWeekOffset(year + 1, dow, doy);
        return (daysInYear(year) - weekOffset + weekOffsetNext) / 7;
    }

    // FORMATTING

    addFormatToken('w', ['ww', 2], 'wo', 'week');
    addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');

    // PARSING

    addRegexToken('w', match1to2, match1to2NoLeadingZero);
    addRegexToken('ww', match1to2, match2);
    addRegexToken('W', match1to2, match1to2NoLeadingZero);
    addRegexToken('WW', match1to2, match2);

    addWeekParseToken(
        ['w', 'ww', 'W', 'WW'],
        function (input, week, config, token) {
            week[token.substr(0, 1)] = toInt(input);
        }
    );

    // HELPERS

    // LOCALES

    function localeWeek(mom) {
        return weekOfYear(mom, this._week.dow, this._week.doy).week;
    }

    var defaultLocaleWeek = {
        dow: 0, // Sunday is the first day of the week.
        doy: 6, // The week that contains Jan 6th is the first week of the year.
    };

    function localeFirstDayOfWeek() {
        return this._week.dow;
    }

    function localeFirstDayOfYear() {
        return this._week.doy;
    }

    // MOMENTS

    function getSetWeek(input) {
        var week = this.localeData().week(this);
        return input == null ? week : this.add((input - week) * 7, 'd');
    }

    function getSetISOWeek(input) {
        var week = weekOfYear(this, 1, 4).week;
        return input == null ? week : this.add((input - week) * 7, 'd');
    }

    // FORMATTING

    addFormatToken('d', 0, 'do', 'day');

    addFormatToken('dd', 0, 0, function (format) {
        return this.localeData().weekdaysMin(this, format);
    });

    addFormatToken('ddd', 0, 0, function (format) {
        return this.localeData().weekdaysShort(this, format);
    });

    addFormatToken('dddd', 0, 0, function (format) {
        return this.localeData().weekdays(this, format);
    });

    addFormatToken('e', 0, 0, 'weekday');
    addFormatToken('E', 0, 0, 'isoWeekday');

    // PARSING

    addRegexToken('d', match1to2);
    addRegexToken('e', match1to2);
    addRegexToken('E', match1to2);
    addRegexToken('dd', function (isStrict, locale) {
        return locale.weekdaysMinRegex(isStrict);
    });
    addRegexToken('ddd', function (isStrict, locale) {
        return locale.weekdaysShortRegex(isStrict);
    });
    addRegexToken('dddd', function (isStrict, locale) {
        return locale.weekdaysRegex(isStrict);
    });

    addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) {
        var weekday = config._locale.weekdaysParse(input, token, config._strict);
        // if we didn't get a weekday name, mark the date as invalid
        if (weekday != null) {
            week.d = weekday;
        } else {
            getParsingFlags(config).invalidWeekday = input;
        }
    });

    addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {
        week[token] = toInt(input);
    });

    // HELPERS

    function parseWeekday(input, locale) {
        if (typeof input !== 'string') {
            return input;
        }

        if (!isNaN(input)) {
            return parseInt(input, 10);
        }

        input = locale.weekdaysParse(input);
        if (typeof input === 'number') {
            return input;
        }

        return null;
    }

    function parseIsoWeekday(input, locale) {
        if (typeof input === 'string') {
            return locale.weekdaysParse(input) % 7 || 7;
        }
        return isNaN(input) ? null : input;
    }

    // LOCALES
    function shiftWeekdays(ws, n) {
        return ws.slice(n, 7).concat(ws.slice(0, n));
    }

    var defaultLocaleWeekdays =
            'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),
        defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
        defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
        defaultWeekdaysRegex = matchWord,
        defaultWeekdaysShortRegex = matchWord,
        defaultWeekdaysMinRegex = matchWord;

    function localeWeekdays(m, format) {
        var weekdays = isArray(this._weekdays)
            ? this._weekdays
            : this._weekdays[
                  m && m !== true && this._weekdays.isFormat.test(format)
                      ? 'format'
                      : 'standalone'
              ];
        return m === true
            ? shiftWeekdays(weekdays, this._week.dow)
            : m
              ? weekdays[m.day()]
              : weekdays;
    }

    function localeWeekdaysShort(m) {
        return m === true
            ? shiftWeekdays(this._weekdaysShort, this._week.dow)
            : m
              ? this._weekdaysShort[m.day()]
              : this._weekdaysShort;
    }

    function localeWeekdaysMin(m) {
        return m === true
            ? shiftWeekdays(this._weekdaysMin, this._week.dow)
            : m
              ? this._weekdaysMin[m.day()]
              : this._weekdaysMin;
    }

    function handleStrictParse$1(weekdayName, format, strict) {
        var i,
            ii,
            mom,
            llc = weekdayName.toLocaleLowerCase();
        if (!this._weekdaysParse) {
            this._weekdaysParse = [];
            this._shortWeekdaysParse = [];
            this._minWeekdaysParse = [];

            for (i = 0; i < 7; ++i) {
                mom = createUTC([2000, 1]).day(i);
                this._minWeekdaysParse[i] = this.weekdaysMin(
                    mom,
                    ''
                ).toLocaleLowerCase();
                this._shortWeekdaysParse[i] = this.weekdaysShort(
                    mom,
                    ''
                ).toLocaleLowerCase();
                this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase();
            }
        }

        if (strict) {
            if (format === 'dddd') {
                ii = indexOf.call(this._weekdaysParse, llc);
                return ii !== -1 ? ii : null;
            } else if (format === 'ddd') {
                ii = indexOf.call(this._shortWeekdaysParse, llc);
                return ii !== -1 ? ii : null;
            } else {
                ii = indexOf.call(this._minWeekdaysParse, llc);
                return ii !== -1 ? ii : null;
            }
        } else {
            if (format === 'dddd') {
                ii = indexOf.call(this._weekdaysParse, llc);
                if (ii !== -1) {
                    return ii;
                }
                ii = indexOf.call(this._shortWeekdaysParse, llc);
                if (ii !== -1) {
                    return ii;
                }
                ii = indexOf.call(this._minWeekdaysParse, llc);
                return ii !== -1 ? ii : null;
            } else if (format === 'ddd') {
                ii = indexOf.call(this._shortWeekdaysParse, llc);
                if (ii !== -1) {
                    return ii;
                }
                ii = indexOf.call(this._weekdaysParse, llc);
                if (ii !== -1) {
                    return ii;
                }
                ii = indexOf.call(this._minWeekdaysParse, llc);
                return ii !== -1 ? ii : null;
            } else {
                ii = indexOf.call(this._minWeekdaysParse, llc);
                if (ii !== -1) {
                    return ii;
                }
                ii = indexOf.call(this._weekdaysParse, llc);
                if (ii !== -1) {
                    return ii;
                }
                ii = indexOf.call(this._shortWeekdaysParse, llc);
                return ii !== -1 ? ii : null;
            }
        }
    }

    function localeWeekdaysParse(weekdayName, format, strict) {
        var i, mom, regex;

        if (this._weekdaysParseExact) {
            return handleStrictParse$1.call(this, weekdayName, format, strict);
        }

        if (!this._weekdaysParse) {
            this._weekdaysParse = [];
            this._minWeekdaysParse = [];
            this._shortWeekdaysParse = [];
            this._fullWeekdaysParse = [];
        }

        for (i = 0; i < 7; i++) {
            // make the regex if we don't have it already

            mom = createUTC([2000, 1]).day(i);
            if (strict && !this._fullWeekdaysParse[i]) {
                this._fullWeekdaysParse[i] = new RegExp(
                    '^' + this.weekdays(mom, '').replace('.', '\\.?') + '$',
                    'i'
                );
                this._shortWeekdaysParse[i] = new RegExp(
                    '^' + this.weekdaysShort(mom, '').replace('.', '\\.?') + '$',
                    'i'
                );
                this._minWeekdaysParse[i] = new RegExp(
                    '^' + this.weekdaysMin(mom, '').replace('.', '\\.?') + '$',
                    'i'
                );
            }
            if (!this._weekdaysParse[i]) {
                regex =
                    '^' +
                    this.weekdays(mom, '') +
                    '|^' +
                    this.weekdaysShort(mom, '') +
                    '|^' +
                    this.weekdaysMin(mom, '');
                this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');
            }
            // test the regex
            if (
                strict &&
                format === 'dddd' &&
                this._fullWeekdaysParse[i].test(weekdayName)
            ) {
                return i;
            } else if (
                strict &&
                format === 'ddd' &&
                this._shortWeekdaysParse[i].test(weekdayName)
            ) {
                return i;
            } else if (
                strict &&
                format === 'dd' &&
                this._minWeekdaysParse[i].test(weekdayName)
            ) {
                return i;
            } else if (!strict && this._weekdaysParse[i].test(weekdayName)) {
                return i;
            }
        }
    }

    // MOMENTS

    function getSetDayOfWeek(input) {
        if (!this.isValid()) {
            return input != null ? this : NaN;
        }

        var day = get(this, 'Day');
        if (input != null) {
            input = parseWeekday(input, this.localeData());
            return this.add(input - day, 'd');
        } else {
            return day;
        }
    }

    function getSetLocaleDayOfWeek(input) {
        if (!this.isValid()) {
            return input != null ? this : NaN;
        }
        var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;
        return input == null ? weekday : this.add(input - weekday, 'd');
    }

    function getSetISODayOfWeek(input) {
        if (!this.isValid()) {
            return input != null ? this : NaN;
        }

        // behaves the same as moment#day except
        // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)
        // as a setter, sunday should belong to the previous week.

        if (input != null) {
            var weekday = parseIsoWeekday(input, this.localeData());
            return this.day(this.day() % 7 ? weekday : weekday - 7);
        } else {
            return this.day() || 7;
        }
    }

    function weekdaysRegex(isStrict) {
        if (this._weekdaysParseExact) {
            if (!hasOwnProp(this, '_weekdaysRegex')) {
                computeWeekdaysParse.call(this);
            }
            if (isStrict) {
                return this._weekdaysStrictRegex;
            } else {
                return this._weekdaysRegex;
            }
        } else {
            if (!hasOwnProp(this, '_weekdaysRegex')) {
                this._weekdaysRegex = defaultWeekdaysRegex;
            }
            return this._weekdaysStrictRegex && isStrict
                ? this._weekdaysStrictRegex
                : this._weekdaysRegex;
        }
    }

    function weekdaysShortRegex(isStrict) {
        if (this._weekdaysParseExact) {
            if (!hasOwnProp(this, '_weekdaysRegex')) {
                computeWeekdaysParse.call(this);
            }
            if (isStrict) {
                return this._weekdaysShortStrictRegex;
            } else {
                return this._weekdaysShortRegex;
            }
        } else {
            if (!hasOwnProp(this, '_weekdaysShortRegex')) {
                this._weekdaysShortRegex = defaultWeekdaysShortRegex;
            }
            return this._weekdaysShortStrictRegex && isStrict
                ? this._weekdaysShortStrictRegex
                : this._weekdaysShortRegex;
        }
    }

    function weekdaysMinRegex(isStrict) {
        if (this._weekdaysParseExact) {
            if (!hasOwnProp(this, '_weekdaysRegex')) {
                computeWeekdaysParse.call(this);
            }
            if (isStrict) {
                return this._weekdaysMinStrictRegex;
            } else {
                return this._weekdaysMinRegex;
            }
        } else {
            if (!hasOwnProp(this, '_weekdaysMinRegex')) {
                this._weekdaysMinRegex = defaultWeekdaysMinRegex;
            }
            return this._weekdaysMinStrictRegex && isStrict
                ? this._weekdaysMinStrictRegex
                : this._weekdaysMinRegex;
        }
    }

    function computeWeekdaysParse() {
        function cmpLenRev(a, b) {
            return b.length - a.length;
        }

        var minPieces = [],
            shortPieces = [],
            longPieces = [],
            mixedPieces = [],
            i,
            mom,
            minp,
            shortp,
            longp;
        for (i = 0; i < 7; i++) {
            // make the regex if we don't have it already
            mom = createUTC([2000, 1]).day(i);
            minp = regexEscape(this.weekdaysMin(mom, ''));
            shortp = regexEscape(this.weekdaysShort(mom, ''));
            longp = regexEscape(this.weekdays(mom, ''));
            minPieces.push(minp);
            shortPieces.push(shortp);
            longPieces.push(longp);
            mixedPieces.push(minp);
            mixedPieces.push(shortp);
            mixedPieces.push(longp);
        }
        // Sorting makes sure if one weekday (or abbr) is a prefix of another it
        // will match the longer piece.
        minPieces.sort(cmpLenRev);
        shortPieces.sort(cmpLenRev);
        longPieces.sort(cmpLenRev);
        mixedPieces.sort(cmpLenRev);

        this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');
        this._weekdaysShortRegex = this._weekdaysRegex;
        this._weekdaysMinRegex = this._weekdaysRegex;

        this._weekdaysStrictRegex = new RegExp(
            '^(' + longPieces.join('|') + ')',
            'i'
        );
        this._weekdaysShortStrictRegex = new RegExp(
            '^(' + shortPieces.join('|') + ')',
            'i'
        );
        this._weekdaysMinStrictRegex = new RegExp(
            '^(' + minPieces.join('|') + ')',
            'i'
        );
    }

    // FORMATTING

    function hFormat() {
        return this.hours() % 12 || 12;
    }

    function kFormat() {
        return this.hours() || 24;
    }

    addFormatToken('H', ['HH', 2], 0, 'hour');
    addFormatToken('h', ['hh', 2], 0, hFormat);
    addFormatToken('k', ['kk', 2], 0, kFormat);

    addFormatToken('hmm', 0, 0, function () {
        return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2);
    });

    addFormatToken('hmmss', 0, 0, function () {
        return (
            '' +
            hFormat.apply(this) +
            zeroFill(this.minutes(), 2) +
            zeroFill(this.seconds(), 2)
        );
    });

    addFormatToken('Hmm', 0, 0, function () {
        return '' + this.hours() + zeroFill(this.minutes(), 2);
    });

    addFormatToken('Hmmss', 0, 0, function () {
        return (
            '' +
            this.hours() +
            zeroFill(this.minutes(), 2) +
            zeroFill(this.seconds(), 2)
        );
    });

    function meridiem(token, lowercase) {
        addFormatToken(token, 0, 0, function () {
            return this.localeData().meridiem(
                this.hours(),
                this.minutes(),
                lowercase
            );
        });
    }

    meridiem('a', true);
    meridiem('A', false);

    // PARSING

    function matchMeridiem(isStrict, locale) {
        return locale._meridiemParse;
    }

    addRegexToken('a', matchMeridiem);
    addRegexToken('A', matchMeridiem);
    addRegexToken('H', match1to2, match1to2HasZero);
    addRegexToken('h', match1to2, match1to2NoLeadingZero);
    addRegexToken('k', match1to2, match1to2NoLeadingZero);
    addRegexToken('HH', match1to2, match2);
    addRegexToken('hh', match1to2, match2);
    addRegexToken('kk', match1to2, match2);

    addRegexToken('hmm', match3to4);
    addRegexToken('hmmss', match5to6);
    addRegexToken('Hmm', match3to4);
    addRegexToken('Hmmss', match5to6);

    addParseToken(['H', 'HH'], HOUR);
    addParseToken(['k', 'kk'], function (input, array, config) {
        var kInput = toInt(input);
        array[HOUR] = kInput === 24 ? 0 : kInput;
    });
    addParseToken(['a', 'A'], function (input, array, config) {
        config._isPm = config._locale.isPM(input);
        config._meridiem = input;
    });
    addParseToken(['h', 'hh'], function (input, array, config) {
        array[HOUR] = toInt(input);
        getParsingFlags(config).bigHour = true;
    });
    addParseToken('hmm', function (input, array, config) {
        var pos = input.length - 2;
        array[HOUR] = toInt(input.substr(0, pos));
        array[MINUTE] = toInt(input.substr(pos));
        getParsingFlags(config).bigHour = true;
    });
    addParseToken('hmmss', function (input, array, config) {
        var pos1 = input.length - 4,
            pos2 = input.length - 2;
        array[HOUR] = toInt(input.substr(0, pos1));
        array[MINUTE] = toInt(input.substr(pos1, 2));
        array[SECOND] = toInt(input.substr(pos2));
        getParsingFlags(config).bigHour = true;
    });
    addParseToken('Hmm', function (input, array, config) {
        var pos = input.length - 2;
        array[HOUR] = toInt(input.substr(0, pos));
        array[MINUTE] = toInt(input.substr(pos));
    });
    addParseToken('Hmmss', function (input, array, config) {
        var pos1 = input.length - 4,
            pos2 = input.length - 2;
        array[HOUR] = toInt(input.substr(0, pos1));
        array[MINUTE] = toInt(input.substr(pos1, 2));
        array[SECOND] = toInt(input.substr(pos2));
    });

    // LOCALES

    function localeIsPM(input) {
        // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays
        // Using charAt should be more compatible.
        return (input + '').toLowerCase().charAt(0) === 'p';
    }

    var defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i,
        // Setting the hour should keep the time, because the user explicitly
        // specified which hour they want. So trying to maintain the same hour (in
        // a new timezone) makes sense. Adding/subtracting hours does not follow
        // this rule.
        getSetHour = makeGetSet('Hours', true);

    function localeMeridiem(hours, minutes, isLower) {
        if (hours > 11) {
            return isLower ? 'pm' : 'PM';
        } else {
            return isLower ? 'am' : 'AM';
        }
    }

    var baseConfig = {
        calendar: defaultCalendar,
        longDateFormat: defaultLongDateFormat,
        invalidDate: defaultInvalidDate,
        ordinal: defaultOrdinal,
        dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse,
        relativeTime: defaultRelativeTime,

        months: defaultLocaleMonths,
        monthsShort: defaultLocaleMonthsShort,

        week: defaultLocaleWeek,

        weekdays: defaultLocaleWeekdays,
        weekdaysMin: defaultLocaleWeekdaysMin,
        weekdaysShort: defaultLocaleWeekdaysShort,

        meridiemParse: defaultLocaleMeridiemParse,
    };

    // internal storage for locale config files
    var locales = {},
        localeFamilies = {},
        globalLocale;

    function commonPrefix(arr1, arr2) {
        var i,
            minl = Math.min(arr1.length, arr2.length);
        for (i = 0; i < minl; i += 1) {
            if (arr1[i] !== arr2[i]) {
                return i;
            }
        }
        return minl;
    }

    function normalizeLocale(key) {
        return key ? key.toLowerCase().replace('_', '-') : key;
    }

    // pick the locale from the array
    // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each
    // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root
    function chooseLocale(names) {
        var i = 0,
            j,
            next,
            locale,
            split;

        while (i < names.length) {
            split = normalizeLocale(names[i]).split('-');
            j = split.length;
            next = normalizeLocale(names[i + 1]);
            next = next ? next.split('-') : null;
            while (j > 0) {
                locale = loadLocale(split.slice(0, j).join('-'));
                if (locale) {
                    return locale;
                }
                if (
                    next &&
                    next.length >= j &&
                    commonPrefix(split, next) >= j - 1
                ) {
                    //the next array item is better than a shallower substring of this one
                    break;
                }
                j--;
            }
            i++;
        }
        return globalLocale;
    }

    function isLocaleNameSane(name) {
        // Prevent names that look like filesystem paths, i.e contain '/' or '\'
        // Ensure name is available and function returns boolean
        return !!(name && name.match('^[^/\\\\]*$'));
    }

    function loadLocale(name) {
        var oldLocale = null,
            aliasedRequire;
        // TODO: Find a better way to register and load all the locales in Node
        if (
            locales[name] === undefined &&
            typeof module !== 'undefined' &&
            module &&
            module.exports &&
            isLocaleNameSane(name)
        ) {
            try {
                oldLocale = globalLocale._abbr;
                aliasedRequire = require;
                !(function webpackMissingModule() { var e = new Error("Cannot find module 'undefined'"); e.code = 'MODULE_NOT_FOUND'; throw e; }());
                getSetGlobalLocale(oldLocale);
            } catch (e) {
                // mark as not found to avoid repeating expensive file require call causing high CPU
                // when trying to find en-US, en_US, en-us for every format call
                locales[name] = null; // null means not found
            }
        }
        return locales[name];
    }

    // This function will load locale and then set the global locale.  If
    // no arguments are passed in, it will simply return the current global
    // locale key.
    function getSetGlobalLocale(key, values) {
        var data;
        if (key) {
            if (isUndefined(values)) {
                data = getLocale(key);
            } else {
                data = defineLocale(key, values);
            }

            if (data) {
                // moment.duration._locale = moment._locale = data;
                globalLocale = data;
            } else {
                if (typeof console !== 'undefined' && console.warn) {
                    //warn user if arguments are passed but the locale could not be set
                    console.warn(
                        'Locale ' + key + ' not found. Did you forget to load it?'
                    );
                }
            }
        }

        return globalLocale._abbr;
    }

    function defineLocale(name, config) {
        if (config !== null) {
            var locale,
                parentConfig = baseConfig;
            config.abbr = name;
            if (locales[name] != null) {
                deprecateSimple(
                    'defineLocaleOverride',
                    'use moment.updateLocale(localeName, config) to change ' +
                        'an existing locale. moment.defineLocale(localeName, ' +
                        'config) should only be used for creating a new locale ' +
                        'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.'
                );
                parentConfig = locales[name]._config;
            } else if (config.parentLocale != null) {
                if (locales[config.parentLocale] != null) {
                    parentConfig = locales[config.parentLocale]._config;
                } else {
                    locale = loadLocale(config.parentLocale);
                    if (locale != null) {
                        parentConfig = locale._config;
                    } else {
                        if (!localeFamilies[config.parentLocale]) {
                            localeFamilies[config.parentLocale] = [];
                        }
                        localeFamilies[config.parentLocale].push({
                            name: name,
                            config: config,
                        });
                        return null;
                    }
                }
            }
            locales[name] = new Locale(mergeConfigs(parentConfig, config));

            if (localeFamilies[name]) {
                localeFamilies[name].forEach(function (x) {
                    defineLocale(x.name, x.config);
                });
            }

            // backwards compat for now: also set the locale
            // make sure we set the locale AFTER all child locales have been
            // created, so we won't end up with the child locale set.
            getSetGlobalLocale(name);

            return locales[name];
        } else {
            // useful for testing
            delete locales[name];
            return null;
        }
    }

    function updateLocale(name, config) {
        if (config != null) {
            var locale,
                tmpLocale,
                parentConfig = baseConfig;

            if (locales[name] != null && locales[name].parentLocale != null) {
                // Update existing child locale in-place to avoid memory-leaks
                locales[name].set(mergeConfigs(locales[name]._config, config));
            } else {
                // MERGE
                tmpLocale = loadLocale(name);
                if (tmpLocale != null) {
                    parentConfig = tmpLocale._config;
                }
                config = mergeConfigs(parentConfig, config);
                if (tmpLocale == null) {
                    // updateLocale is called for creating a new locale
                    // Set abbr so it will have a name (getters return
                    // undefined otherwise).
                    config.abbr = name;
                }
                locale = new Locale(config);
                locale.parentLocale = locales[name];
                locales[name] = locale;
            }

            // backwards compat for now: also set the locale
            getSetGlobalLocale(name);
        } else {
            // pass null for config to unupdate, useful for tests
            if (locales[name] != null) {
                if (locales[name].parentLocale != null) {
                    locales[name] = locales[name].parentLocale;
                    if (name === getSetGlobalLocale()) {
                        getSetGlobalLocale(name);
                    }
                } else if (locales[name] != null) {
                    delete locales[name];
                }
            }
        }
        return locales[name];
    }

    // returns locale data
    function getLocale(key) {
        var locale;

        if (key && key._locale && key._locale._abbr) {
            key = key._locale._abbr;
        }

        if (!key) {
            return globalLocale;
        }

        if (!isArray(key)) {
            //short-circuit everything else
            locale = loadLocale(key);
            if (locale) {
                return locale;
            }
            key = [key];
        }

        return chooseLocale(key);
    }

    function listLocales() {
        return keys(locales);
    }

    function checkOverflow(m) {
        var overflow,
            a = m._a;

        if (a && getParsingFlags(m).overflow === -2) {
            overflow =
                a[MONTH] < 0 || a[MONTH] > 11
                    ? MONTH
                    : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH])
                      ? DATE
                      : a[HOUR] < 0 ||
                          a[HOUR] > 24 ||
                          (a[HOUR] === 24 &&
                              (a[MINUTE] !== 0 ||
                                  a[SECOND] !== 0 ||
                                  a[MILLISECOND] !== 0))
                        ? HOUR
                        : a[MINUTE] < 0 || a[MINUTE] > 59
                          ? MINUTE
                          : a[SECOND] < 0 || a[SECOND] > 59
                            ? SECOND
                            : a[MILLISECOND] < 0 || a[MILLISECOND] > 999
                              ? MILLISECOND
                              : -1;

            if (
                getParsingFlags(m)._overflowDayOfYear &&
                (overflow < YEAR || overflow > DATE)
            ) {
                overflow = DATE;
            }
            if (getParsingFlags(m)._overflowWeeks && overflow === -1) {
                overflow = WEEK;
            }
            if (getParsingFlags(m)._overflowWeekday && overflow === -1) {
                overflow = WEEKDAY;
            }

            getParsingFlags(m).overflow = overflow;
        }

        return m;
    }

    // iso 8601 regex
    // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)
    var extendedIsoRegex =
            /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,
        basicIsoRegex =
            /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,
        tzRegex = /Z|[+-]\d\d(?::?\d\d)?/,
        isoDates = [
            ['YYYYYY-MM-DD', /[+-]\d{6}-\d\d-\d\d/],
            ['YYYY-MM-DD', /\d{4}-\d\d-\d\d/],
            ['GGGG-[W]WW-E', /\d{4}-W\d\d-\d/],
            ['GGGG-[W]WW', /\d{4}-W\d\d/, false],
            ['YYYY-DDD', /\d{4}-\d{3}/],
            ['YYYY-MM', /\d{4}-\d\d/, false],
            ['YYYYYYMMDD', /[+-]\d{10}/],
            ['YYYYMMDD', /\d{8}/],
            ['GGGG[W]WWE', /\d{4}W\d{3}/],
            ['GGGG[W]WW', /\d{4}W\d{2}/, false],
            ['YYYYDDD', /\d{7}/],
            ['YYYYMM', /\d{6}/, false],
            ['YYYY', /\d{4}/, false],
        ],
        // iso time formats and regexes
        isoTimes = [
            ['HH:mm:ss.SSSS', /\d\d:\d\d:\d\d\.\d+/],
            ['HH:mm:ss,SSSS', /\d\d:\d\d:\d\d,\d+/],
            ['HH:mm:ss', /\d\d:\d\d:\d\d/],
            ['HH:mm', /\d\d:\d\d/],
            ['HHmmss.SSSS', /\d\d\d\d\d\d\.\d+/],
            ['HHmmss,SSSS', /\d\d\d\d\d\d,\d+/],
            ['HHmmss', /\d\d\d\d\d\d/],
            ['HHmm', /\d\d\d\d/],
            ['HH', /\d\d/],
        ],
        aspNetJsonRegex = /^\/?Date\((-?\d+)/i,
        // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3
        rfc2822 =
            /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,
        obsOffsets = {
            UT: 0,
            GMT: 0,
            EDT: -4 * 60,
            EST: -5 * 60,
            CDT: -5 * 60,
            CST: -6 * 60,
            MDT: -6 * 60,
            MST: -7 * 60,
            PDT: -7 * 60,
            PST: -8 * 60,
        };

    // date from iso format
    function configFromISO(config) {
        var i,
            l,
            string = config._i,
            match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string),
            allowTime,
            dateFormat,
            timeFormat,
            tzFormat,
            isoDatesLen = isoDates.length,
            isoTimesLen = isoTimes.length;

        if (match) {
            getParsingFlags(config).iso = true;
            for (i = 0, l = isoDatesLen; i < l; i++) {
                if (isoDates[i][1].exec(match[1])) {
                    dateFormat = isoDates[i][0];
                    allowTime = isoDates[i][2] !== false;
                    break;
                }
            }
            if (dateFormat == null) {
                config._isValid = false;
                return;
            }
            if (match[3]) {
                for (i = 0, l = isoTimesLen; i < l; i++) {
                    if (isoTimes[i][1].exec(match[3])) {
                        // match[2] should be 'T' or space
                        timeFormat = (match[2] || ' ') + isoTimes[i][0];
                        break;
                    }
                }
                if (timeFormat == null) {
                    config._isValid = false;
                    return;
                }
            }
            if (!allowTime && timeFormat != null) {
                config._isValid = false;
                return;
            }
            if (match[4]) {
                if (tzRegex.exec(match[4])) {
                    tzFormat = 'Z';
                } else {
                    config._isValid = false;
                    return;
                }
            }
            config._f = dateFormat + (timeFormat || '') + (tzFormat || '');
            configFromStringAndFormat(config);
        } else {
            config._isValid = false;
        }
    }

    function extractFromRFC2822Strings(
        yearStr,
        monthStr,
        dayStr,
        hourStr,
        minuteStr,
        secondStr
    ) {
        var result = [
            untruncateYear(yearStr),
            defaultLocaleMonthsShort.indexOf(monthStr),
            parseInt(dayStr, 10),
            parseInt(hourStr, 10),
            parseInt(minuteStr, 10),
        ];

        if (secondStr) {
            result.push(parseInt(secondStr, 10));
        }

        return result;
    }

    function untruncateYear(yearStr) {
        var year = parseInt(yearStr, 10);
        if (year <= 49) {
            return 2000 + year;
        } else if (year <= 999) {
            return 1900 + year;
        }
        return year;
    }

    function preprocessRFC2822(s) {
        // Remove comments and folding whitespace and replace multiple-spaces with a single space
        return s
            .replace(/\([^()]*\)|[\n\t]/g, ' ')
            .replace(/(\s\s+)/g, ' ')
            .replace(/^\s\s*/, '')
            .replace(/\s\s*$/, '');
    }

    function checkWeekday(weekdayStr, parsedInput, config) {
        if (weekdayStr) {
            // TODO: Replace the vanilla JS Date object with an independent day-of-week check.
            var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr),
                weekdayActual = new Date(
                    parsedInput[0],
                    parsedInput[1],
                    parsedInput[2]
                ).getDay();
            if (weekdayProvided !== weekdayActual) {
                getParsingFlags(config).weekdayMismatch = true;
                config._isValid = false;
                return false;
            }
        }
        return true;
    }

    function calculateOffset(obsOffset, militaryOffset, numOffset) {
        if (obsOffset) {
            return obsOffsets[obsOffset];
        } else if (militaryOffset) {
            // the only allowed military tz is Z
            return 0;
        } else {
            var hm = parseInt(numOffset, 10),
                m = hm % 100,
                h = (hm - m) / 100;
            return h * 60 + m;
        }
    }

    // date and time from ref 2822 format
    function configFromRFC2822(config) {
        var match = rfc2822.exec(preprocessRFC2822(config._i)),
            parsedArray;
        if (match) {
            parsedArray = extractFromRFC2822Strings(
                match[4],
                match[3],
                match[2],
                match[5],
                match[6],
                match[7]
            );
            if (!checkWeekday(match[1], parsedArray, config)) {
                return;
            }

            config._a = parsedArray;
            config._tzm = calculateOffset(match[8], match[9], match[10]);

            config._d = createUTCDate.apply(null, config._a);
            config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);

            getParsingFlags(config).rfc2822 = true;
        } else {
            config._isValid = false;
        }
    }

    // date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict
    function configFromString(config) {
        var matched = aspNetJsonRegex.exec(config._i);
        if (matched !== null) {
            config._d = new Date(+matched[1]);
            return;
        }

        configFromISO(config);
        if (config._isValid === false) {
            delete config._isValid;
        } else {
            return;
        }

        configFromRFC2822(config);
        if (config._isValid === false) {
            delete config._isValid;
        } else {
            return;
        }

        if (config._strict) {
            config._isValid = false;
        } else {
            // Final attempt, use Input Fallback
            hooks.createFromInputFallback(config);
        }
    }

    hooks.createFromInputFallback = deprecate(
        'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' +
            'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' +
            'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.',
        function (config) {
            config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));
        }
    );

    // Pick the first defined of two or three arguments.
    function defaults(a, b, c) {
        if (a != null) {
            return a;
        }
        if (b != null) {
            return b;
        }
        return c;
    }

    function currentDateArray(config) {
        // hooks is actually the exported moment object
        var nowValue = new Date(hooks.now());
        if (config._useUTC) {
            return [
                nowValue.getUTCFullYear(),
                nowValue.getUTCMonth(),
                nowValue.getUTCDate(),
            ];
        }
        return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()];
    }

    // convert an array to a date.
    // the array should mirror the parameters below
    // note: all values past the year are optional and will default to the lowest possible value.
    // [year, month, day , hour, minute, second, millisecond]
    function configFromArray(config) {
        var i,
            date,
            input = [],
            currentDate,
            expectedWeekday,
            yearToUse;

        if (config._d) {
            return;
        }

        currentDate = currentDateArray(config);

        //compute day of the year from weeks and weekdays
        if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {
            dayOfYearFromWeekInfo(config);
        }

        //if the day of the year is set, figure out what it is
        if (config._dayOfYear != null) {
            yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);

            if (
                config._dayOfYear > daysInYear(yearToUse) ||
                config._dayOfYear === 0
            ) {
                getParsingFlags(config)._overflowDayOfYear = true;
            }

            date = createUTCDate(yearToUse, 0, config._dayOfYear);
            config._a[MONTH] = date.getUTCMonth();
            config._a[DATE] = date.getUTCDate();
        }

        // Default to current date.
        // * if no year, month, day of month are given, default to today
        // * if day of month is given, default month and year
        // * if month is given, default only year
        // * if year is given, don't default anything
        for (i = 0; i < 3 && config._a[i] == null; ++i) {
            config._a[i] = input[i] = currentDate[i];
        }

        // Zero out whatever was not defaulted, including time
        for (; i < 7; i++) {
            config._a[i] = input[i] =
                config._a[i] == null ? (i === 2 ? 1 : 0) : config._a[i];
        }

        // Check for 24:00:00.000
        if (
            config._a[HOUR] === 24 &&
            config._a[MINUTE] === 0 &&
            config._a[SECOND] === 0 &&
            config._a[MILLISECOND] === 0
        ) {
            config._nextDay = true;
            config._a[HOUR] = 0;
        }

        config._d = (config._useUTC ? createUTCDate : createDate).apply(
            null,
            input
        );
        expectedWeekday = config._useUTC
            ? config._d.getUTCDay()
            : config._d.getDay();

        // Apply timezone offset from input. The actual utcOffset can be changed
        // with parseZone.
        if (config._tzm != null) {
            config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);
        }

        if (config._nextDay) {
            config._a[HOUR] = 24;
        }

        // check for mismatching day of week
        if (
            config._w &&
            typeof config._w.d !== 'undefined' &&
            config._w.d !== expectedWeekday
        ) {
            getParsingFlags(config).weekdayMismatch = true;
        }
    }

    function dayOfYearFromWeekInfo(config) {
        var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek;

        w = config._w;
        if (w.GG != null || w.W != null || w.E != null) {
            dow = 1;
            doy = 4;

            // TODO: We need to take the current isoWeekYear, but that depends on
            // how we interpret now (local, utc, fixed offset). So create
            // a now version of current config (take local/utc/offset flags, and
            // create now).
            weekYear = defaults(
                w.GG,
                config._a[YEAR],
                weekOfYear(createLocal(), 1, 4).year
            );
            week = defaults(w.W, 1);
            weekday = defaults(w.E, 1);
            if (weekday < 1 || weekday > 7) {
                weekdayOverflow = true;
            }
        } else {
            dow = config._locale._week.dow;
            doy = config._locale._week.doy;

            curWeek = weekOfYear(createLocal(), dow, doy);

            weekYear = defaults(w.gg, config._a[YEAR], curWeek.year);

            // Default to current week.
            week = defaults(w.w, curWeek.week);

            if (w.d != null) {
                // weekday -- low day numbers are considered next week
                weekday = w.d;
                if (weekday < 0 || weekday > 6) {
                    weekdayOverflow = true;
                }
            } else if (w.e != null) {
                // local weekday -- counting starts from beginning of week
                weekday = w.e + dow;
                if (w.e < 0 || w.e > 6) {
                    weekdayOverflow = true;
                }
            } else {
                // default to beginning of week
                weekday = dow;
            }
        }
        if (week < 1 || week > weeksInYear(weekYear, dow, doy)) {
            getParsingFlags(config)._overflowWeeks = true;
        } else if (weekdayOverflow != null) {
            getParsingFlags(config)._overflowWeekday = true;
        } else {
            temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy);
            config._a[YEAR] = temp.year;
            config._dayOfYear = temp.dayOfYear;
        }
    }

    // constant that refers to the ISO standard
    hooks.ISO_8601 = function () {};

    // constant that refers to the RFC 2822 form
    hooks.RFC_2822 = function () {};

    // date from string and format string
    function configFromStringAndFormat(config) {
        // TODO: Move this to another part of the creation flow to prevent circular deps
        if (config._f === hooks.ISO_8601) {
            configFromISO(config);
            return;
        }
        if (config._f === hooks.RFC_2822) {
            configFromRFC2822(config);
            return;
        }
        config._a = [];
        getParsingFlags(config).empty = true;

        // This array is used to make a Date, either with `new Date` or `Date.UTC`
        var string = '' + config._i,
            i,
            parsedInput,
            tokens,
            token,
            skipped,
            stringLength = string.length,
            totalParsedInputLength = 0,
            era,
            tokenLen;

        tokens =
            expandFormat(config._f, config._locale).match(formattingTokens) || [];
        tokenLen = tokens.length;
        for (i = 0; i < tokenLen; i++) {
            token = tokens[i];
            parsedInput = (string.match(getParseRegexForToken(token, config)) ||
                [])[0];
            if (parsedInput) {
                skipped = string.substr(0, string.indexOf(parsedInput));
                if (skipped.length > 0) {
                    getParsingFlags(config).unusedInput.push(skipped);
                }
                string = string.slice(
                    string.indexOf(parsedInput) + parsedInput.length
                );
                totalParsedInputLength += parsedInput.length;
            }
            // don't parse if it's not a known token
            if (formatTokenFunctions[token]) {
                if (parsedInput) {
                    getParsingFlags(config).empty = false;
                } else {
                    getParsingFlags(config).unusedTokens.push(token);
                }
                addTimeToArrayFromToken(token, parsedInput, config);
            } else if (config._strict && !parsedInput) {
                getParsingFlags(config).unusedTokens.push(token);
            }
        }

        // add remaining unparsed input length to the string
        getParsingFlags(config).charsLeftOver =
            stringLength - totalParsedInputLength;
        if (string.length > 0) {
            getParsingFlags(config).unusedInput.push(string);
        }

        // clear _12h flag if hour is <= 12
        if (
            config._a[HOUR] <= 12 &&
            getParsingFlags(config).bigHour === true &&
            config._a[HOUR] > 0
        ) {
            getParsingFlags(config).bigHour = undefined;
        }

        getParsingFlags(config).parsedDateParts = config._a.slice(0);
        getParsingFlags(config).meridiem = config._meridiem;
        // handle meridiem
        config._a[HOUR] = meridiemFixWrap(
            config._locale,
            config._a[HOUR],
            config._meridiem
        );

        // handle era
        era = getParsingFlags(config).era;
        if (era !== null) {
            config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]);
        }

        configFromArray(config);
        checkOverflow(config);
    }

    function meridiemFixWrap(locale, hour, meridiem) {
        var isPm;

        if (meridiem == null) {
            // nothing to do
            return hour;
        }
        if (locale.meridiemHour != null) {
            return locale.meridiemHour(hour, meridiem);
        } else if (locale.isPM != null) {
            // Fallback
            isPm = locale.isPM(meridiem);
            if (isPm && hour < 12) {
                hour += 12;
            }
            if (!isPm && hour === 12) {
                hour = 0;
            }
            return hour;
        } else {
            // this is not supposed to happen
            return hour;
        }
    }

    // date from string and array of format strings
    function configFromStringAndArray(config) {
        var tempConfig,
            bestMoment,
            scoreToBeat,
            i,
            currentScore,
            validFormatFound,
            bestFormatIsValid = false,
            configfLen = config._f.length;

        if (configfLen === 0) {
            getParsingFlags(config).invalidFormat = true;
            config._d = new Date(NaN);
            return;
        }

        for (i = 0; i < configfLen; i++) {
            currentScore = 0;
            validFormatFound = false;
            tempConfig = copyConfig({}, config);
            if (config._useUTC != null) {
                tempConfig._useUTC = config._useUTC;
            }
            tempConfig._f = config._f[i];
            configFromStringAndFormat(tempConfig);

            if (isValid(tempConfig)) {
                validFormatFound = true;
            }

            // if there is any input that was not parsed add a penalty for that format
            currentScore += getParsingFlags(tempConfig).charsLeftOver;

            //or tokens
            currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;

            getParsingFlags(tempConfig).score = currentScore;

            if (!bestFormatIsValid) {
                if (
                    scoreToBeat == null ||
                    currentScore < scoreToBeat ||
                    validFormatFound
                ) {
                    scoreToBeat = currentScore;
                    bestMoment = tempConfig;
                    if (validFormatFound) {
                        bestFormatIsValid = true;
                    }
                }
            } else {
                if (currentScore < scoreToBeat) {
                    scoreToBeat = currentScore;
                    bestMoment = tempConfig;
                }
            }
        }

        extend(config, bestMoment || tempConfig);
    }

    function configFromObject(config) {
        if (config._d) {
            return;
        }

        var i = normalizeObjectUnits(config._i),
            dayOrDate = i.day === undefined ? i.date : i.day;
        config._a = map(
            [i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond],
            function (obj) {
                return obj && parseInt(obj, 10);
            }
        );

        configFromArray(config);
    }

    function createFromConfig(config) {
        var res = new Moment(checkOverflow(prepareConfig(config)));
        if (res._nextDay) {
            // Adding is smart enough around DST
            res.add(1, 'd');
            res._nextDay = undefined;
        }

        return res;
    }

    function prepareConfig(config) {
        var input = config._i,
            format = config._f;

        config._locale = config._locale || getLocale(config._l);

        if (input === null || (format === undefined && input === '')) {
            return createInvalid({ nullInput: true });
        }

        if (typeof input === 'string') {
            config._i = input = config._locale.preparse(input);
        }

        if (isMoment(input)) {
            return new Moment(checkOverflow(input));
        } else if (isDate(input)) {
            config._d = input;
        } else if (isArray(format)) {
            configFromStringAndArray(config);
        } else if (format) {
            configFromStringAndFormat(config);
        } else {
            configFromInput(config);
        }

        if (!isValid(config)) {
            config._d = null;
        }

        return config;
    }

    function configFromInput(config) {
        var input = config._i;
        if (isUndefined(input)) {
            config._d = new Date(hooks.now());
        } else if (isDate(input)) {
            config._d = new Date(input.valueOf());
        } else if (typeof input === 'string') {
            configFromString(config);
        } else if (isArray(input)) {
            config._a = map(input.slice(0), function (obj) {
                return parseInt(obj, 10);
            });
            configFromArray(config);
        } else if (isObject(input)) {
            configFromObject(config);
        } else if (isNumber(input)) {
            // from milliseconds
            config._d = new Date(input);
        } else {
            hooks.createFromInputFallback(config);
        }
    }

    function createLocalOrUTC(input, format, locale, strict, isUTC) {
        var c = {};

        if (format === true || format === false) {
            strict = format;
            format = undefined;
        }

        if (locale === true || locale === false) {
            strict = locale;
            locale = undefined;
        }

        if (
            (isObject(input) && isObjectEmpty(input)) ||
            (isArray(input) && input.length === 0)
        ) {
            input = undefined;
        }
        // object construction must be done this way.
        // https://github.com/moment/moment/issues/1423
        c._isAMomentObject = true;
        c._useUTC = c._isUTC = isUTC;
        c._l = locale;
        c._i = input;
        c._f = format;
        c._strict = strict;

        return createFromConfig(c);
    }

    function createLocal(input, format, locale, strict) {
        return createLocalOrUTC(input, format, locale, strict, false);
    }

    var prototypeMin = deprecate(
            'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/',
            function () {
                var other = createLocal.apply(null, arguments);
                if (this.isValid() && other.isValid()) {
                    return other < this ? this : other;
                } else {
                    return createInvalid();
                }
            }
        ),
        prototypeMax = deprecate(
            'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/',
            function () {
                var other = createLocal.apply(null, arguments);
                if (this.isValid() && other.isValid()) {
                    return other > this ? this : other;
                } else {
                    return createInvalid();
                }
            }
        );

    // Pick a moment m from moments so that m[fn](other) is true for all
    // other. This relies on the function fn to be transitive.
    //
    // moments should either be an array of moment objects or an array, whose
    // first element is an array of moment objects.
    function pickBy(fn, moments) {
        var res, i;
        if (moments.length === 1 && isArray(moments[0])) {
            moments = moments[0];
        }
        if (!moments.length) {
            return createLocal();
        }
        res = moments[0];
        for (i = 1; i < moments.length; ++i) {
            if (!moments[i].isValid() || moments[i][fn](res)) {
                res = moments[i];
            }
        }
        return res;
    }

    // TODO: Use [].sort instead?
    function min() {
        var args = [].slice.call(arguments, 0);

        return pickBy('isBefore', args);
    }

    function max() {
        var args = [].slice.call(arguments, 0);

        return pickBy('isAfter', args);
    }

    var now = function () {
        return Date.now ? Date.now() : +new Date();
    };

    var ordering = [
        'year',
        'quarter',
        'month',
        'week',
        'day',
        'hour',
        'minute',
        'second',
        'millisecond',
    ];

    function isDurationValid(m) {
        var key,
            unitHasDecimal = false,
            i,
            orderLen = ordering.length;
        for (key in m) {
            if (
                hasOwnProp(m, key) &&
                !(
                    indexOf.call(ordering, key) !== -1 &&
                    (m[key] == null || !isNaN(m[key]))
                )
            ) {
                return false;
            }
        }

        for (i = 0; i < orderLen; ++i) {
            if (m[ordering[i]]) {
                if (unitHasDecimal) {
                    return false; // only allow non-integers for smallest unit
                }
                if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) {
                    unitHasDecimal = true;
                }
            }
        }

        return true;
    }

    function isValid$1() {
        return this._isValid;
    }

    function createInvalid$1() {
        return createDuration(NaN);
    }

    function Duration(duration) {
        var normalizedInput = normalizeObjectUnits(duration),
            years = normalizedInput.year || 0,
            quarters = normalizedInput.quarter || 0,
            months = normalizedInput.month || 0,
            weeks = normalizedInput.week || normalizedInput.isoWeek || 0,
            days = normalizedInput.day || 0,
            hours = normalizedInput.hour || 0,
            minutes = normalizedInput.minute || 0,
            seconds = normalizedInput.second || 0,
            milliseconds = normalizedInput.millisecond || 0;

        this._isValid = isDurationValid(normalizedInput);

        // representation for dateAddRemove
        this._milliseconds =
            +milliseconds +
            seconds * 1e3 + // 1000
            minutes * 6e4 + // 1000 * 60
            hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978
        // Because of dateAddRemove treats 24 hours as different from a
        // day when working around DST, we need to store them separately
        this._days = +days + weeks * 7;
        // It is impossible to translate months into days without knowing
        // which months you are are talking about, so we have to store
        // it separately.
        this._months = +months + quarters * 3 + years * 12;

        this._data = {};

        this._locale = getLocale();

        this._bubble();
    }

    function isDuration(obj) {
        return obj instanceof Duration;
    }

    function absRound(number) {
        if (number < 0) {
            return Math.round(-1 * number) * -1;
        } else {
            return Math.round(number);
        }
    }

    // compare two arrays, return the number of differences
    function compareArrays(array1, array2, dontConvert) {
        var len = Math.min(array1.length, array2.length),
            lengthDiff = Math.abs(array1.length - array2.length),
            diffs = 0,
            i;
        for (i = 0; i < len; i++) {
            if (
                (dontConvert && array1[i] !== array2[i]) ||
                (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))
            ) {
                diffs++;
            }
        }
        return diffs + lengthDiff;
    }

    // FORMATTING

    function offset(token, separator) {
        addFormatToken(token, 0, 0, function () {
            var offset = this.utcOffset(),
                sign = '+';
            if (offset < 0) {
                offset = -offset;
                sign = '-';
            }
            return (
                sign +
                zeroFill(~~(offset / 60), 2) +
                separator +
                zeroFill(~~offset % 60, 2)
            );
        });
    }

    offset('Z', ':');
    offset('ZZ', '');

    // PARSING

    addRegexToken('Z', matchShortOffset);
    addRegexToken('ZZ', matchShortOffset);
    addParseToken(['Z', 'ZZ'], function (input, array, config) {
        config._useUTC = true;
        config._tzm = offsetFromString(matchShortOffset, input);
    });

    // HELPERS

    // timezone chunker
    // '+10:00' > ['10',  '00']
    // '-1530'  > ['-15', '30']
    var chunkOffset = /([\+\-]|\d\d)/gi;

    function offsetFromString(matcher, string) {
        var matches = (string || '').match(matcher),
            chunk,
            parts,
            minutes;

        if (matches === null) {
            return null;
        }

        chunk = matches[matches.length - 1] || [];
        parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];
        minutes = +(parts[1] * 60) + toInt(parts[2]);

        return minutes === 0 ? 0 : parts[0] === '+' ? minutes : -minutes;
    }

    // Return a moment from input, that is local/utc/zone equivalent to model.
    function cloneWithOffset(input, model) {
        var res, diff;
        if (model._isUTC) {
            res = model.clone();
            diff =
                (isMoment(input) || isDate(input)
                    ? input.valueOf()
                    : createLocal(input).valueOf()) - res.valueOf();
            // Use low-level api, because this fn is low-level api.
            res._d.setTime(res._d.valueOf() + diff);
            hooks.updateOffset(res, false);
            return res;
        } else {
            return createLocal(input).local();
        }
    }

    function getDateOffset(m) {
        // On Firefox.24 Date#getTimezoneOffset returns a floating point.
        // https://github.com/moment/moment/pull/1871
        return -Math.round(m._d.getTimezoneOffset());
    }

    // HOOKS

    // This function will be called whenever a moment is mutated.
    // It is intended to keep the offset in sync with the timezone.
    hooks.updateOffset = function () {};

    // MOMENTS

    // keepLocalTime = true means only change the timezone, without
    // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->
    // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset
    // +0200, so we adjust the time as needed, to be valid.
    //
    // Keeping the time actually adds/subtracts (one hour)
    // from the actual represented time. That is why we call updateOffset
    // a second time. In case it wants us to change the offset again
    // _changeInProgress == true case, then we have to adjust, because
    // there is no such time in the given timezone.
    function getSetOffset(input, keepLocalTime, keepMinutes) {
        var offset = this._offset || 0,
            localAdjust;
        if (!this.isValid()) {
            return input != null ? this : NaN;
        }
        if (input != null) {
            if (typeof input === 'string') {
                input = offsetFromString(matchShortOffset, input);
                if (input === null) {
                    return this;
                }
            } else if (Math.abs(input) < 16 && !keepMinutes) {
                input = input * 60;
            }
            if (!this._isUTC && keepLocalTime) {
                localAdjust = getDateOffset(this);
            }
            this._offset = input;
            this._isUTC = true;
            if (localAdjust != null) {
                this.add(localAdjust, 'm');
            }
            if (offset !== input) {
                if (!keepLocalTime || this._changeInProgress) {
                    addSubtract(
                        this,
                        createDuration(input - offset, 'm'),
                        1,
                        false
                    );
                } else if (!this._changeInProgress) {
                    this._changeInProgress = true;
                    hooks.updateOffset(this, true);
                    this._changeInProgress = null;
                }
            }
            return this;
        } else {
            return this._isUTC ? offset : getDateOffset(this);
        }
    }

    function getSetZone(input, keepLocalTime) {
        if (input != null) {
            if (typeof input !== 'string') {
                input = -input;
            }

            this.utcOffset(input, keepLocalTime);

            return this;
        } else {
            return -this.utcOffset();
        }
    }

    function setOffsetToUTC(keepLocalTime) {
        return this.utcOffset(0, keepLocalTime);
    }

    function setOffsetToLocal(keepLocalTime) {
        if (this._isUTC) {
            this.utcOffset(0, keepLocalTime);
            this._isUTC = false;

            if (keepLocalTime) {
                this.subtract(getDateOffset(this), 'm');
            }
        }
        return this;
    }

    function setOffsetToParsedOffset() {
        if (this._tzm != null) {
            this.utcOffset(this._tzm, false, true);
        } else if (typeof this._i === 'string') {
            var tZone = offsetFromString(matchOffset, this._i);
            if (tZone != null) {
                this.utcOffset(tZone);
            } else {
                this.utcOffset(0, true);
            }
        }
        return this;
    }

    function hasAlignedHourOffset(input) {
        if (!this.isValid()) {
            return false;
        }
        input = input ? createLocal(input).utcOffset() : 0;

        return (this.utcOffset() - input) % 60 === 0;
    }

    function isDaylightSavingTime() {
        return (
            this.utcOffset() > this.clone().month(0).utcOffset() ||
            this.utcOffset() > this.clone().month(5).utcOffset()
        );
    }

    function isDaylightSavingTimeShifted() {
        if (!isUndefined(this._isDSTShifted)) {
            return this._isDSTShifted;
        }

        var c = {},
            other;

        copyConfig(c, this);
        c = prepareConfig(c);

        if (c._a) {
            other = c._isUTC ? createUTC(c._a) : createLocal(c._a);
            this._isDSTShifted =
                this.isValid() && compareArrays(c._a, other.toArray()) > 0;
        } else {
            this._isDSTShifted = false;
        }

        return this._isDSTShifted;
    }

    function isLocal() {
        return this.isValid() ? !this._isUTC : false;
    }

    function isUtcOffset() {
        return this.isValid() ? this._isUTC : false;
    }

    function isUtc() {
        return this.isValid() ? this._isUTC && this._offset === 0 : false;
    }

    // ASP.NET json date format regex
    var aspNetRegex = /^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,
        // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html
        // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere
        // and further modified to allow for strings containing both week and day
        isoRegex =
            /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;

    function createDuration(input, key) {
        var duration = input,
            // matching against regexp is expensive, do it on demand
            match = null,
            sign,
            ret,
            diffRes;

        if (isDuration(input)) {
            duration = {
                ms: input._milliseconds,
                d: input._days,
                M: input._months,
            };
        } else if (isNumber(input) || !isNaN(+input)) {
            duration = {};
            if (key) {
                duration[key] = +input;
            } else {
                duration.milliseconds = +input;
            }
        } else if ((match = aspNetRegex.exec(input))) {
            sign = match[1] === '-' ? -1 : 1;
            duration = {
                y: 0,
                d: toInt(match[DATE]) * sign,
                h: toInt(match[HOUR]) * sign,
                m: toInt(match[MINUTE]) * sign,
                s: toInt(match[SECOND]) * sign,
                ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign, // the millisecond decimal point is included in the match
            };
        } else if ((match = isoRegex.exec(input))) {
            sign = match[1] === '-' ? -1 : 1;
            duration = {
                y: parseIso(match[2], sign),
                M: parseIso(match[3], sign),
                w: parseIso(match[4], sign),
                d: parseIso(match[5], sign),
                h: parseIso(match[6], sign),
                m: parseIso(match[7], sign),
                s: parseIso(match[8], sign),
            };
        } else if (duration == null) {
            // checks for null or undefined
            duration = {};
        } else if (
            typeof duration === 'object' &&
            ('from' in duration || 'to' in duration)
        ) {
            diffRes = momentsDifference(
                createLocal(duration.from),
                createLocal(duration.to)
            );

            duration = {};
            duration.ms = diffRes.milliseconds;
            duration.M = diffRes.months;
        }

        ret = new Duration(duration);

        if (isDuration(input) && hasOwnProp(input, '_locale')) {
            ret._locale = input._locale;
        }

        if (isDuration(input) && hasOwnProp(input, '_isValid')) {
            ret._isValid = input._isValid;
        }

        return ret;
    }

    createDuration.fn = Duration.prototype;
    createDuration.invalid = createInvalid$1;

    function parseIso(inp, sign) {
        // We'd normally use ~~inp for this, but unfortunately it also
        // converts floats to ints.
        // inp may be undefined, so careful calling replace on it.
        var res = inp && parseFloat(inp.replace(',', '.'));
        // apply sign while we're at it
        return (isNaN(res) ? 0 : res) * sign;
    }

    function positiveMomentsDifference(base, other) {
        var res = {};

        res.months =
            other.month() - base.month() + (other.year() - base.year()) * 12;
        if (base.clone().add(res.months, 'M').isAfter(other)) {
            --res.months;
        }

        res.milliseconds = +other - +base.clone().add(res.months, 'M');

        return res;
    }

    function momentsDifference(base, other) {
        var res;
        if (!(base.isValid() && other.isValid())) {
            return { milliseconds: 0, months: 0 };
        }

        other = cloneWithOffset(other, base);
        if (base.isBefore(other)) {
            res = positiveMomentsDifference(base, other);
        } else {
            res = positiveMomentsDifference(other, base);
            res.milliseconds = -res.milliseconds;
            res.months = -res.months;
        }

        return res;
    }

    // TODO: remove 'name' arg after deprecation is removed
    function createAdder(direction, name) {
        return function (val, period) {
            var dur, tmp;
            //invert the arguments, but complain about it
            if (period !== null && !isNaN(+period)) {
                deprecateSimple(
                    name,
                    'moment().' +
                        name +
                        '(period, number) is deprecated. Please use moment().' +
                        name +
                        '(number, period). ' +
                        'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.'
                );
                tmp = val;
                val = period;
                period = tmp;
            }

            dur = createDuration(val, period);
            addSubtract(this, dur, direction);
            return this;
        };
    }

    function addSubtract(mom, duration, isAdding, updateOffset) {
        var milliseconds = duration._milliseconds,
            days = absRound(duration._days),
            months = absRound(duration._months);

        if (!mom.isValid()) {
            // No op
            return;
        }

        updateOffset = updateOffset == null ? true : updateOffset;

        if (months) {
            setMonth(mom, get(mom, 'Month') + months * isAdding);
        }
        if (days) {
            set$1(mom, 'Date', get(mom, 'Date') + days * isAdding);
        }
        if (milliseconds) {
            mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding);
        }
        if (updateOffset) {
            hooks.updateOffset(mom, days || months);
        }
    }

    var add = createAdder(1, 'add'),
        subtract = createAdder(-1, 'subtract');

    function isString(input) {
        return typeof input === 'string' || input instanceof String;
    }

    // type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined
    function isMomentInput(input) {
        return (
            isMoment(input) ||
            isDate(input) ||
            isString(input) ||
            isNumber(input) ||
            isNumberOrStringArray(input) ||
            isMomentInputObject(input) ||
            input === null ||
            input === undefined
        );
    }

    function isMomentInputObject(input) {
        var objectTest = isObject(input) && !isObjectEmpty(input),
            propertyTest = false,
            properties = [
                'years',
                'year',
                'y',
                'months',
                'month',
                'M',
                'days',
                'day',
                'd',
                'dates',
                'date',
                'D',
                'hours',
                'hour',
                'h',
                'minutes',
                'minute',
                'm',
                'seconds',
                'second',
                's',
                'milliseconds',
                'millisecond',
                'ms',
            ],
            i,
            property,
            propertyLen = properties.length;

        for (i = 0; i < propertyLen; i += 1) {
            property = properties[i];
            propertyTest = propertyTest || hasOwnProp(input, property);
        }

        return objectTest && propertyTest;
    }

    function isNumberOrStringArray(input) {
        var arrayTest = isArray(input),
            dataTypeTest = false;
        if (arrayTest) {
            dataTypeTest =
                input.filter(function (item) {
                    return !isNumber(item) && isString(input);
                }).length === 0;
        }
        return arrayTest && dataTypeTest;
    }

    function isCalendarSpec(input) {
        var objectTest = isObject(input) && !isObjectEmpty(input),
            propertyTest = false,
            properties = [
                'sameDay',
                'nextDay',
                'lastDay',
                'nextWeek',
                'lastWeek',
                'sameElse',
            ],
            i,
            property;

        for (i = 0; i < properties.length; i += 1) {
            property = properties[i];
            propertyTest = propertyTest || hasOwnProp(input, property);
        }

        return objectTest && propertyTest;
    }

    function getCalendarFormat(myMoment, now) {
        var diff = myMoment.diff(now, 'days', true);
        return diff < -6
            ? 'sameElse'
            : diff < -1
              ? 'lastWeek'
              : diff < 0
                ? 'lastDay'
                : diff < 1
                  ? 'sameDay'
                  : diff < 2
                    ? 'nextDay'
                    : diff < 7
                      ? 'nextWeek'
                      : 'sameElse';
    }

    function calendar$1(time, formats) {
        // Support for single parameter, formats only overload to the calendar function
        if (arguments.length === 1) {
            if (!arguments[0]) {
                time = undefined;
                formats = undefined;
            } else if (isMomentInput(arguments[0])) {
                time = arguments[0];
                formats = undefined;
            } else if (isCalendarSpec(arguments[0])) {
                formats = arguments[0];
                time = undefined;
            }
        }
        // We want to compare the start of today, vs this.
        // Getting start-of-today depends on whether we're local/utc/offset or not.
        var now = time || createLocal(),
            sod = cloneWithOffset(now, this).startOf('day'),
            format = hooks.calendarFormat(this, sod) || 'sameElse',
            output =
                formats &&
                (isFunction(formats[format])
                    ? formats[format].call(this, now)
                    : formats[format]);

        return this.format(
            output || this.localeData().calendar(format, this, createLocal(now))
        );
    }

    function clone() {
        return new Moment(this);
    }

    function isAfter(input, units) {
        var localInput = isMoment(input) ? input : createLocal(input);
        if (!(this.isValid() && localInput.isValid())) {
            return false;
        }
        units = normalizeUnits(units) || 'millisecond';
        if (units === 'millisecond') {
            return this.valueOf() > localInput.valueOf();
        } else {
            return localInput.valueOf() < this.clone().startOf(units).valueOf();
        }
    }

    function isBefore(input, units) {
        var localInput = isMoment(input) ? input : createLocal(input);
        if (!(this.isValid() && localInput.isValid())) {
            return false;
        }
        units = normalizeUnits(units) || 'millisecond';
        if (units === 'millisecond') {
            return this.valueOf() < localInput.valueOf();
        } else {
            return this.clone().endOf(units).valueOf() < localInput.valueOf();
        }
    }

    function isBetween(from, to, units, inclusivity) {
        var localFrom = isMoment(from) ? from : createLocal(from),
            localTo = isMoment(to) ? to : createLocal(to);
        if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) {
            return false;
        }
        inclusivity = inclusivity || '()';
        return (
            (inclusivity[0] === '('
                ? this.isAfter(localFrom, units)
                : !this.isBefore(localFrom, units)) &&
            (inclusivity[1] === ')'
                ? this.isBefore(localTo, units)
                : !this.isAfter(localTo, units))
        );
    }

    function isSame(input, units) {
        var localInput = isMoment(input) ? input : createLocal(input),
            inputMs;
        if (!(this.isValid() && localInput.isValid())) {
            return false;
        }
        units = normalizeUnits(units) || 'millisecond';
        if (units === 'millisecond') {
            return this.valueOf() === localInput.valueOf();
        } else {
            inputMs = localInput.valueOf();
            return (
                this.clone().startOf(units).valueOf() <= inputMs &&
                inputMs <= this.clone().endOf(units).valueOf()
            );
        }
    }

    function isSameOrAfter(input, units) {
        return this.isSame(input, units) || this.isAfter(input, units);
    }

    function isSameOrBefore(input, units) {
        return this.isSame(input, units) || this.isBefore(input, units);
    }

    function diff(input, units, asFloat) {
        var that, zoneDelta, output;

        if (!this.isValid()) {
            return NaN;
        }

        that = cloneWithOffset(input, this);

        if (!that.isValid()) {
            return NaN;
        }

        zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4;

        units = normalizeUnits(units);

        switch (units) {
            case 'year':
                output = monthDiff(this, that) / 12;
                break;
            case 'month':
                output = monthDiff(this, that);
                break;
            case 'quarter':
                output = monthDiff(this, that) / 3;
                break;
            case 'second':
                output = (this - that) / 1e3;
                break; // 1000
            case 'minute':
                output = (this - that) / 6e4;
                break; // 1000 * 60
            case 'hour':
                output = (this - that) / 36e5;
                break; // 1000 * 60 * 60
            case 'day':
                output = (this - that - zoneDelta) / 864e5;
                break; // 1000 * 60 * 60 * 24, negate dst
            case 'week':
                output = (this - that - zoneDelta) / 6048e5;
                break; // 1000 * 60 * 60 * 24 * 7, negate dst
            default:
                output = this - that;
        }

        return asFloat ? output : absFloor(output);
    }

    function monthDiff(a, b) {
        if (a.date() < b.date()) {
            // end-of-month calculations work correct when the start month has more
            // days than the end month.
            return -monthDiff(b, a);
        }
        // difference in months
        var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()),
            // b is in (anchor - 1 month, anchor + 1 month)
            anchor = a.clone().add(wholeMonthDiff, 'months'),
            anchor2,
            adjust;

        if (b - anchor < 0) {
            anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');
            // linear across the month
            adjust = (b - anchor) / (anchor - anchor2);
        } else {
            anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');
            // linear across the month
            adjust = (b - anchor) / (anchor2 - anchor);
        }

        //check for negative zero, return zero if negative zero
        return -(wholeMonthDiff + adjust) || 0;
    }

    hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';
    hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]';

    function toString() {
        return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');
    }

    function toISOString(keepOffset) {
        if (!this.isValid()) {
            return null;
        }
        var utc = keepOffset !== true,
            m = utc ? this.clone().utc() : this;
        if (m.year() < 0 || m.year() > 9999) {
            return formatMoment(
                m,
                utc
                    ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'
                    : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ'
            );
        }
        if (isFunction(Date.prototype.toISOString)) {
            // native implementation is ~50x faster, use it when we can
            if (utc) {
                return this.toDate().toISOString();
            } else {
                return new Date(this.valueOf() + this.utcOffset() * 60 * 1000)
                    .toISOString()
                    .replace('Z', formatMoment(m, 'Z'));
            }
        }
        return formatMoment(
            m,
            utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'
        );
    }

    /**
     * Return a human readable representation of a moment that can
     * also be evaluated to get a new moment which is the same
     *
     * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects
     */
    function inspect() {
        if (!this.isValid()) {
            return 'moment.invalid(/* ' + this._i + ' */)';
        }
        var func = 'moment',
            zone = '',
            prefix,
            year,
            datetime,
            suffix;
        if (!this.isLocal()) {
            func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone';
            zone = 'Z';
        }
        prefix = '[' + func + '("]';
        year = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY';
        datetime = '-MM-DD[T]HH:mm:ss.SSS';
        suffix = zone + '[")]';

        return this.format(prefix + year + datetime + suffix);
    }

    function format(inputString) {
        if (!inputString) {
            inputString = this.isUtc()
                ? hooks.defaultFormatUtc
                : hooks.defaultFormat;
        }
        var output = formatMoment(this, inputString);
        return this.localeData().postformat(output);
    }

    function from(time, withoutSuffix) {
        if (
            this.isValid() &&
            ((isMoment(time) && time.isValid()) || createLocal(time).isValid())
        ) {
            return createDuration({ to: this, from: time })
                .locale(this.locale())
                .humanize(!withoutSuffix);
        } else {
            return this.localeData().invalidDate();
        }
    }

    function fromNow(withoutSuffix) {
        return this.from(createLocal(), withoutSuffix);
    }

    function to(time, withoutSuffix) {
        if (
            this.isValid() &&
            ((isMoment(time) && time.isValid()) || createLocal(time).isValid())
        ) {
            return createDuration({ from: this, to: time })
                .locale(this.locale())
                .humanize(!withoutSuffix);
        } else {
            return this.localeData().invalidDate();
        }
    }

    function toNow(withoutSuffix) {
        return this.to(createLocal(), withoutSuffix);
    }

    // If passed a locale key, it will set the locale for this
    // instance.  Otherwise, it will return the locale configuration
    // variables for this instance.
    function locale(key) {
        var newLocaleData;

        if (key === undefined) {
            return this._locale._abbr;
        } else {
            newLocaleData = getLocale(key);
            if (newLocaleData != null) {
                this._locale = newLocaleData;
            }
            return this;
        }
    }

    var lang = deprecate(
        'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',
        function (key) {
            if (key === undefined) {
                return this.localeData();
            } else {
                return this.locale(key);
            }
        }
    );

    function localeData() {
        return this._locale;
    }

    var MS_PER_SECOND = 1000,
        MS_PER_MINUTE = 60 * MS_PER_SECOND,
        MS_PER_HOUR = 60 * MS_PER_MINUTE,
        MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR;

    // actual modulo - handles negative numbers (for dates before 1970):
    function mod$1(dividend, divisor) {
        return ((dividend % divisor) + divisor) % divisor;
    }

    function localStartOfDate(y, m, d) {
        // the date constructor remaps years 0-99 to 1900-1999
        if (y < 100 && y >= 0) {
            // preserve leap years using a full 400 year cycle, then reset
            return new Date(y + 400, m, d) - MS_PER_400_YEARS;
        } else {
            return new Date(y, m, d).valueOf();
        }
    }

    function utcStartOfDate(y, m, d) {
        // Date.UTC remaps years 0-99 to 1900-1999
        if (y < 100 && y >= 0) {
            // preserve leap years using a full 400 year cycle, then reset
            return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS;
        } else {
            return Date.UTC(y, m, d);
        }
    }

    function startOf(units) {
        var time, startOfDate;
        units = normalizeUnits(units);
        if (units === undefined || units === 'millisecond' || !this.isValid()) {
            return this;
        }

        startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;

        switch (units) {
            case 'year':
                time = startOfDate(this.year(), 0, 1);
                break;
            case 'quarter':
                time = startOfDate(
                    this.year(),
                    this.month() - (this.month() % 3),
                    1
                );
                break;
            case 'month':
                time = startOfDate(this.year(), this.month(), 1);
                break;
            case 'week':
                time = startOfDate(
                    this.year(),
                    this.month(),
                    this.date() - this.weekday()
                );
                break;
            case 'isoWeek':
                time = startOfDate(
                    this.year(),
                    this.month(),
                    this.date() - (this.isoWeekday() - 1)
                );
                break;
            case 'day':
            case 'date':
                time = startOfDate(this.year(), this.month(), this.date());
                break;
            case 'hour':
                time = this._d.valueOf();
                time -= mod$1(
                    time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),
                    MS_PER_HOUR
                );
                break;
            case 'minute':
                time = this._d.valueOf();
                time -= mod$1(time, MS_PER_MINUTE);
                break;
            case 'second':
                time = this._d.valueOf();
                time -= mod$1(time, MS_PER_SECOND);
                break;
        }

        this._d.setTime(time);
        hooks.updateOffset(this, true);
        return this;
    }

    function endOf(units) {
        var time, startOfDate;
        units = normalizeUnits(units);
        if (units === undefined || units === 'millisecond' || !this.isValid()) {
            return this;
        }

        startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate;

        switch (units) {
            case 'year':
                time = startOfDate(this.year() + 1, 0, 1) - 1;
                break;
            case 'quarter':
                time =
                    startOfDate(
                        this.year(),
                        this.month() - (this.month() % 3) + 3,
                        1
                    ) - 1;
                break;
            case 'month':
                time = startOfDate(this.year(), this.month() + 1, 1) - 1;
                break;
            case 'week':
                time =
                    startOfDate(
                        this.year(),
                        this.month(),
                        this.date() - this.weekday() + 7
                    ) - 1;
                break;
            case 'isoWeek':
                time =
                    startOfDate(
                        this.year(),
                        this.month(),
                        this.date() - (this.isoWeekday() - 1) + 7
                    ) - 1;
                break;
            case 'day':
            case 'date':
                time = startOfDate(this.year(), this.month(), this.date() + 1) - 1;
                break;
            case 'hour':
                time = this._d.valueOf();
                time +=
                    MS_PER_HOUR -
                    mod$1(
                        time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE),
                        MS_PER_HOUR
                    ) -
                    1;
                break;
            case 'minute':
                time = this._d.valueOf();
                time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1;
                break;
            case 'second':
                time = this._d.valueOf();
                time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1;
                break;
        }

        this._d.setTime(time);
        hooks.updateOffset(this, true);
        return this;
    }

    function valueOf() {
        return this._d.valueOf() - (this._offset || 0) * 60000;
    }

    function unix() {
        return Math.floor(this.valueOf() / 1000);
    }

    function toDate() {
        return new Date(this.valueOf());
    }

    function toArray() {
        var m = this;
        return [
            m.year(),
            m.month(),
            m.date(),
            m.hour(),
            m.minute(),
            m.second(),
            m.millisecond(),
        ];
    }

    function toObject() {
        var m = this;
        return {
            years: m.year(),
            months: m.month(),
            date: m.date(),
            hours: m.hours(),
            minutes: m.minutes(),
            seconds: m.seconds(),
            milliseconds: m.milliseconds(),
        };
    }

    function toJSON() {
        // new Date(NaN).toJSON() === null
        return this.isValid() ? this.toISOString() : null;
    }

    function isValid$2() {
        return isValid(this);
    }

    function parsingFlags() {
        return extend({}, getParsingFlags(this));
    }

    function invalidAt() {
        return getParsingFlags(this).overflow;
    }

    function creationData() {
        return {
            input: this._i,
            format: this._f,
            locale: this._locale,
            isUTC: this._isUTC,
            strict: this._strict,
        };
    }

    addFormatToken('N', 0, 0, 'eraAbbr');
    addFormatToken('NN', 0, 0, 'eraAbbr');
    addFormatToken('NNN', 0, 0, 'eraAbbr');
    addFormatToken('NNNN', 0, 0, 'eraName');
    addFormatToken('NNNNN', 0, 0, 'eraNarrow');

    addFormatToken('y', ['y', 1], 'yo', 'eraYear');
    addFormatToken('y', ['yy', 2], 0, 'eraYear');
    addFormatToken('y', ['yyy', 3], 0, 'eraYear');
    addFormatToken('y', ['yyyy', 4], 0, 'eraYear');

    addRegexToken('N', matchEraAbbr);
    addRegexToken('NN', matchEraAbbr);
    addRegexToken('NNN', matchEraAbbr);
    addRegexToken('NNNN', matchEraName);
    addRegexToken('NNNNN', matchEraNarrow);

    addParseToken(
        ['N', 'NN', 'NNN', 'NNNN', 'NNNNN'],
        function (input, array, config, token) {
            var era = config._locale.erasParse(input, token, config._strict);
            if (era) {
                getParsingFlags(config).era = era;
            } else {
                getParsingFlags(config).invalidEra = input;
            }
        }
    );

    addRegexToken('y', matchUnsigned);
    addRegexToken('yy', matchUnsigned);
    addRegexToken('yyy', matchUnsigned);
    addRegexToken('yyyy', matchUnsigned);
    addRegexToken('yo', matchEraYearOrdinal);

    addParseToken(['y', 'yy', 'yyy', 'yyyy'], YEAR);
    addParseToken(['yo'], function (input, array, config, token) {
        var match;
        if (config._locale._eraYearOrdinalRegex) {
            match = input.match(config._locale._eraYearOrdinalRegex);
        }

        if (config._locale.eraYearOrdinalParse) {
            array[YEAR] = config._locale.eraYearOrdinalParse(input, match);
        } else {
            array[YEAR] = parseInt(input, 10);
        }
    });

    function localeEras(m, format) {
        var i,
            l,
            date,
            eras = this._eras || getLocale('en')._eras;
        for (i = 0, l = eras.length; i < l; ++i) {
            switch (typeof eras[i].since) {
                case 'string':
                    // truncate time
                    date = hooks(eras[i].since).startOf('day');
                    eras[i].since = date.valueOf();
                    break;
            }

            switch (typeof eras[i].until) {
                case 'undefined':
                    eras[i].until = +Infinity;
                    break;
                case 'string':
                    // truncate time
                    date = hooks(eras[i].until).startOf('day').valueOf();
                    eras[i].until = date.valueOf();
                    break;
            }
        }
        return eras;
    }

    function localeErasParse(eraName, format, strict) {
        var i,
            l,
            eras = this.eras(),
            name,
            abbr,
            narrow;
        eraName = eraName.toUpperCase();

        for (i = 0, l = eras.length; i < l; ++i) {
            name = eras[i].name.toUpperCase();
            abbr = eras[i].abbr.toUpperCase();
            narrow = eras[i].narrow.toUpperCase();

            if (strict) {
                switch (format) {
                    case 'N':
                    case 'NN':
                    case 'NNN':
                        if (abbr === eraName) {
                            return eras[i];
                        }
                        break;

                    case 'NNNN':
                        if (name === eraName) {
                            return eras[i];
                        }
                        break;

                    case 'NNNNN':
                        if (narrow === eraName) {
                            return eras[i];
                        }
                        break;
                }
            } else if ([name, abbr, narrow].indexOf(eraName) >= 0) {
                return eras[i];
            }
        }
    }

    function localeErasConvertYear(era, year) {
        var dir = era.since <= era.until ? +1 : -1;
        if (year === undefined) {
            return hooks(era.since).year();
        } else {
            return hooks(era.since).year() + (year - era.offset) * dir;
        }
    }

    function getEraName() {
        var i,
            l,
            val,
            eras = this.localeData().eras();
        for (i = 0, l = eras.length; i < l; ++i) {
            // truncate time
            val = this.clone().startOf('day').valueOf();

            if (eras[i].since <= val && val <= eras[i].until) {
                return eras[i].name;
            }
            if (eras[i].until <= val && val <= eras[i].since) {
                return eras[i].name;
            }
        }

        return '';
    }

    function getEraNarrow() {
        var i,
            l,
            val,
            eras = this.localeData().eras();
        for (i = 0, l = eras.length; i < l; ++i) {
            // truncate time
            val = this.clone().startOf('day').valueOf();

            if (eras[i].since <= val && val <= eras[i].until) {
                return eras[i].narrow;
            }
            if (eras[i].until <= val && val <= eras[i].since) {
                return eras[i].narrow;
            }
        }

        return '';
    }

    function getEraAbbr() {
        var i,
            l,
            val,
            eras = this.localeData().eras();
        for (i = 0, l = eras.length; i < l; ++i) {
            // truncate time
            val = this.clone().startOf('day').valueOf();

            if (eras[i].since <= val && val <= eras[i].until) {
                return eras[i].abbr;
            }
            if (eras[i].until <= val && val <= eras[i].since) {
                return eras[i].abbr;
            }
        }

        return '';
    }

    function getEraYear() {
        var i,
            l,
            dir,
            val,
            eras = this.localeData().eras();
        for (i = 0, l = eras.length; i < l; ++i) {
            dir = eras[i].since <= eras[i].until ? +1 : -1;

            // truncate time
            val = this.clone().startOf('day').valueOf();

            if (
                (eras[i].since <= val && val <= eras[i].until) ||
                (eras[i].until <= val && val <= eras[i].since)
            ) {
                return (
                    (this.year() - hooks(eras[i].since).year()) * dir +
                    eras[i].offset
                );
            }
        }

        return this.year();
    }

    function erasNameRegex(isStrict) {
        if (!hasOwnProp(this, '_erasNameRegex')) {
            computeErasParse.call(this);
        }
        return isStrict ? this._erasNameRegex : this._erasRegex;
    }

    function erasAbbrRegex(isStrict) {
        if (!hasOwnProp(this, '_erasAbbrRegex')) {
            computeErasParse.call(this);
        }
        return isStrict ? this._erasAbbrRegex : this._erasRegex;
    }

    function erasNarrowRegex(isStrict) {
        if (!hasOwnProp(this, '_erasNarrowRegex')) {
            computeErasParse.call(this);
        }
        return isStrict ? this._erasNarrowRegex : this._erasRegex;
    }

    function matchEraAbbr(isStrict, locale) {
        return locale.erasAbbrRegex(isStrict);
    }

    function matchEraName(isStrict, locale) {
        return locale.erasNameRegex(isStrict);
    }

    function matchEraNarrow(isStrict, locale) {
        return locale.erasNarrowRegex(isStrict);
    }

    function matchEraYearOrdinal(isStrict, locale) {
        return locale._eraYearOrdinalRegex || matchUnsigned;
    }

    function computeErasParse() {
        var abbrPieces = [],
            namePieces = [],
            narrowPieces = [],
            mixedPieces = [],
            i,
            l,
            erasName,
            erasAbbr,
            erasNarrow,
            eras = this.eras();

        for (i = 0, l = eras.length; i < l; ++i) {
            erasName = regexEscape(eras[i].name);
            erasAbbr = regexEscape(eras[i].abbr);
            erasNarrow = regexEscape(eras[i].narrow);

            namePieces.push(erasName);
            abbrPieces.push(erasAbbr);
            narrowPieces.push(erasNarrow);
            mixedPieces.push(erasName);
            mixedPieces.push(erasAbbr);
            mixedPieces.push(erasNarrow);
        }

        this._erasRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i');
        this._erasNameRegex = new RegExp('^(' + namePieces.join('|') + ')', 'i');
        this._erasAbbrRegex = new RegExp('^(' + abbrPieces.join('|') + ')', 'i');
        this._erasNarrowRegex = new RegExp(
            '^(' + narrowPieces.join('|') + ')',
            'i'
        );
    }

    // FORMATTING

    addFormatToken(0, ['gg', 2], 0, function () {
        return this.weekYear() % 100;
    });

    addFormatToken(0, ['GG', 2], 0, function () {
        return this.isoWeekYear() % 100;
    });

    function addWeekYearFormatToken(token, getter) {
        addFormatToken(0, [token, token.length], 0, getter);
    }

    addWeekYearFormatToken('gggg', 'weekYear');
    addWeekYearFormatToken('ggggg', 'weekYear');
    addWeekYearFormatToken('GGGG', 'isoWeekYear');
    addWeekYearFormatToken('GGGGG', 'isoWeekYear');

    // ALIASES

    // PARSING

    addRegexToken('G', matchSigned);
    addRegexToken('g', matchSigned);
    addRegexToken('GG', match1to2, match2);
    addRegexToken('gg', match1to2, match2);
    addRegexToken('GGGG', match1to4, match4);
    addRegexToken('gggg', match1to4, match4);
    addRegexToken('GGGGG', match1to6, match6);
    addRegexToken('ggggg', match1to6, match6);

    addWeekParseToken(
        ['gggg', 'ggggg', 'GGGG', 'GGGGG'],
        function (input, week, config, token) {
            week[token.substr(0, 2)] = toInt(input);
        }
    );

    addWeekParseToken(['gg', 'GG'], function (input, week, config, token) {
        week[token] = hooks.parseTwoDigitYear(input);
    });

    // MOMENTS

    function getSetWeekYear(input) {
        return getSetWeekYearHelper.call(
            this,
            input,
            this.week(),
            this.weekday() + this.localeData()._week.dow,
            this.localeData()._week.dow,
            this.localeData()._week.doy
        );
    }

    function getSetISOWeekYear(input) {
        return getSetWeekYearHelper.call(
            this,
            input,
            this.isoWeek(),
            this.isoWeekday(),
            1,
            4
        );
    }

    function getISOWeeksInYear() {
        return weeksInYear(this.year(), 1, 4);
    }

    function getISOWeeksInISOWeekYear() {
        return weeksInYear(this.isoWeekYear(), 1, 4);
    }

    function getWeeksInYear() {
        var weekInfo = this.localeData()._week;
        return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);
    }

    function getWeeksInWeekYear() {
        var weekInfo = this.localeData()._week;
        return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy);
    }

    function getSetWeekYearHelper(input, week, weekday, dow, doy) {
        var weeksTarget;
        if (input == null) {
            return weekOfYear(this, dow, doy).year;
        } else {
            weeksTarget = weeksInYear(input, dow, doy);
            if (week > weeksTarget) {
                week = weeksTarget;
            }
            return setWeekAll.call(this, input, week, weekday, dow, doy);
        }
    }

    function setWeekAll(weekYear, week, weekday, dow, doy) {
        var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy),
            date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear);

        this.year(date.getUTCFullYear());
        this.month(date.getUTCMonth());
        this.date(date.getUTCDate());
        return this;
    }

    // FORMATTING

    addFormatToken('Q', 0, 'Qo', 'quarter');

    // PARSING

    addRegexToken('Q', match1);
    addParseToken('Q', function (input, array) {
        array[MONTH] = (toInt(input) - 1) * 3;
    });

    // MOMENTS

    function getSetQuarter(input) {
        return input == null
            ? Math.ceil((this.month() + 1) / 3)
            : this.month((input - 1) * 3 + (this.month() % 3));
    }

    // FORMATTING

    addFormatToken('D', ['DD', 2], 'Do', 'date');

    // PARSING

    addRegexToken('D', match1to2, match1to2NoLeadingZero);
    addRegexToken('DD', match1to2, match2);
    addRegexToken('Do', function (isStrict, locale) {
        // TODO: Remove "ordinalParse" fallback in next major release.
        return isStrict
            ? locale._dayOfMonthOrdinalParse || locale._ordinalParse
            : locale._dayOfMonthOrdinalParseLenient;
    });

    addParseToken(['D', 'DD'], DATE);
    addParseToken('Do', function (input, array) {
        array[DATE] = toInt(input.match(match1to2)[0]);
    });

    // MOMENTS

    var getSetDayOfMonth = makeGetSet('Date', true);

    // FORMATTING

    addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');

    // PARSING

    addRegexToken('DDD', match1to3);
    addRegexToken('DDDD', match3);
    addParseToken(['DDD', 'DDDD'], function (input, array, config) {
        config._dayOfYear = toInt(input);
    });

    // HELPERS

    // MOMENTS

    function getSetDayOfYear(input) {
        var dayOfYear =
            Math.round(
                (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5
            ) + 1;
        return input == null ? dayOfYear : this.add(input - dayOfYear, 'd');
    }

    // FORMATTING

    addFormatToken('m', ['mm', 2], 0, 'minute');

    // PARSING

    addRegexToken('m', match1to2, match1to2HasZero);
    addRegexToken('mm', match1to2, match2);
    addParseToken(['m', 'mm'], MINUTE);

    // MOMENTS

    var getSetMinute = makeGetSet('Minutes', false);

    // FORMATTING

    addFormatToken('s', ['ss', 2], 0, 'second');

    // PARSING

    addRegexToken('s', match1to2, match1to2HasZero);
    addRegexToken('ss', match1to2, match2);
    addParseToken(['s', 'ss'], SECOND);

    // MOMENTS

    var getSetSecond = makeGetSet('Seconds', false);

    // FORMATTING

    addFormatToken('S', 0, 0, function () {
        return ~~(this.millisecond() / 100);
    });

    addFormatToken(0, ['SS', 2], 0, function () {
        return ~~(this.millisecond() / 10);
    });

    addFormatToken(0, ['SSS', 3], 0, 'millisecond');
    addFormatToken(0, ['SSSS', 4], 0, function () {
        return this.millisecond() * 10;
    });
    addFormatToken(0, ['SSSSS', 5], 0, function () {
        return this.millisecond() * 100;
    });
    addFormatToken(0, ['SSSSSS', 6], 0, function () {
        return this.millisecond() * 1000;
    });
    addFormatToken(0, ['SSSSSSS', 7], 0, function () {
        return this.millisecond() * 10000;
    });
    addFormatToken(0, ['SSSSSSSS', 8], 0, function () {
        return this.millisecond() * 100000;
    });
    addFormatToken(0, ['SSSSSSSSS', 9], 0, function () {
        return this.millisecond() * 1000000;
    });

    // PARSING

    addRegexToken('S', match1to3, match1);
    addRegexToken('SS', match1to3, match2);
    addRegexToken('SSS', match1to3, match3);

    var token, getSetMillisecond;
    for (token = 'SSSS'; token.length <= 9; token += 'S') {
        addRegexToken(token, matchUnsigned);
    }

    function parseMs(input, array) {
        array[MILLISECOND] = toInt(('0.' + input) * 1000);
    }

    for (token = 'S'; token.length <= 9; token += 'S') {
        addParseToken(token, parseMs);
    }

    getSetMillisecond = makeGetSet('Milliseconds', false);

    // FORMATTING

    addFormatToken('z', 0, 0, 'zoneAbbr');
    addFormatToken('zz', 0, 0, 'zoneName');

    // MOMENTS

    function getZoneAbbr() {
        return this._isUTC ? 'UTC' : '';
    }

    function getZoneName() {
        return this._isUTC ? 'Coordinated Universal Time' : '';
    }

    var proto = Moment.prototype;

    proto.add = add;
    proto.calendar = calendar$1;
    proto.clone = clone;
    proto.diff = diff;
    proto.endOf = endOf;
    proto.format = format;
    proto.from = from;
    proto.fromNow = fromNow;
    proto.to = to;
    proto.toNow = toNow;
    proto.get = stringGet;
    proto.invalidAt = invalidAt;
    proto.isAfter = isAfter;
    proto.isBefore = isBefore;
    proto.isBetween = isBetween;
    proto.isSame = isSame;
    proto.isSameOrAfter = isSameOrAfter;
    proto.isSameOrBefore = isSameOrBefore;
    proto.isValid = isValid$2;
    proto.lang = lang;
    proto.locale = locale;
    proto.localeData = localeData;
    proto.max = prototypeMax;
    proto.min = prototypeMin;
    proto.parsingFlags = parsingFlags;
    proto.set = stringSet;
    proto.startOf = startOf;
    proto.subtract = subtract;
    proto.toArray = toArray;
    proto.toObject = toObject;
    proto.toDate = toDate;
    proto.toISOString = toISOString;
    proto.inspect = inspect;
    if (typeof Symbol !== 'undefined' && Symbol.for != null) {
        proto[Symbol.for('nodejs.util.inspect.custom')] = function () {
            return 'Moment<' + this.format() + '>';
        };
    }
    proto.toJSON = toJSON;
    proto.toString = toString;
    proto.unix = unix;
    proto.valueOf = valueOf;
    proto.creationData = creationData;
    proto.eraName = getEraName;
    proto.eraNarrow = getEraNarrow;
    proto.eraAbbr = getEraAbbr;
    proto.eraYear = getEraYear;
    proto.year = getSetYear;
    proto.isLeapYear = getIsLeapYear;
    proto.weekYear = getSetWeekYear;
    proto.isoWeekYear = getSetISOWeekYear;
    proto.quarter = proto.quarters = getSetQuarter;
    proto.month = getSetMonth;
    proto.daysInMonth = getDaysInMonth;
    proto.week = proto.weeks = getSetWeek;
    proto.isoWeek = proto.isoWeeks = getSetISOWeek;
    proto.weeksInYear = getWeeksInYear;
    proto.weeksInWeekYear = getWeeksInWeekYear;
    proto.isoWeeksInYear = getISOWeeksInYear;
    proto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear;
    proto.date = getSetDayOfMonth;
    proto.day = proto.days = getSetDayOfWeek;
    proto.weekday = getSetLocaleDayOfWeek;
    proto.isoWeekday = getSetISODayOfWeek;
    proto.dayOfYear = getSetDayOfYear;
    proto.hour = proto.hours = getSetHour;
    proto.minute = proto.minutes = getSetMinute;
    proto.second = proto.seconds = getSetSecond;
    proto.millisecond = proto.milliseconds = getSetMillisecond;
    proto.utcOffset = getSetOffset;
    proto.utc = setOffsetToUTC;
    proto.local = setOffsetToLocal;
    proto.parseZone = setOffsetToParsedOffset;
    proto.hasAlignedHourOffset = hasAlignedHourOffset;
    proto.isDST = isDaylightSavingTime;
    proto.isLocal = isLocal;
    proto.isUtcOffset = isUtcOffset;
    proto.isUtc = isUtc;
    proto.isUTC = isUtc;
    proto.zoneAbbr = getZoneAbbr;
    proto.zoneName = getZoneName;
    proto.dates = deprecate(
        'dates accessor is deprecated. Use date instead.',
        getSetDayOfMonth
    );
    proto.months = deprecate(
        'months accessor is deprecated. Use month instead',
        getSetMonth
    );
    proto.years = deprecate(
        'years accessor is deprecated. Use year instead',
        getSetYear
    );
    proto.zone = deprecate(
        'moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/',
        getSetZone
    );
    proto.isDSTShifted = deprecate(
        'isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information',
        isDaylightSavingTimeShifted
    );

    function createUnix(input) {
        return createLocal(input * 1000);
    }

    function createInZone() {
        return createLocal.apply(null, arguments).parseZone();
    }

    function preParsePostFormat(string) {
        return string;
    }

    var proto$1 = Locale.prototype;

    proto$1.calendar = calendar;
    proto$1.longDateFormat = longDateFormat;
    proto$1.invalidDate = invalidDate;
    proto$1.ordinal = ordinal;
    proto$1.preparse = preParsePostFormat;
    proto$1.postformat = preParsePostFormat;
    proto$1.relativeTime = relativeTime;
    proto$1.pastFuture = pastFuture;
    proto$1.set = set;
    proto$1.eras = localeEras;
    proto$1.erasParse = localeErasParse;
    proto$1.erasConvertYear = localeErasConvertYear;
    proto$1.erasAbbrRegex = erasAbbrRegex;
    proto$1.erasNameRegex = erasNameRegex;
    proto$1.erasNarrowRegex = erasNarrowRegex;

    proto$1.months = localeMonths;
    proto$1.monthsShort = localeMonthsShort;
    proto$1.monthsParse = localeMonthsParse;
    proto$1.monthsRegex = monthsRegex;
    proto$1.monthsShortRegex = monthsShortRegex;
    proto$1.week = localeWeek;
    proto$1.firstDayOfYear = localeFirstDayOfYear;
    proto$1.firstDayOfWeek = localeFirstDayOfWeek;

    proto$1.weekdays = localeWeekdays;
    proto$1.weekdaysMin = localeWeekdaysMin;
    proto$1.weekdaysShort = localeWeekdaysShort;
    proto$1.weekdaysParse = localeWeekdaysParse;

    proto$1.weekdaysRegex = weekdaysRegex;
    proto$1.weekdaysShortRegex = weekdaysShortRegex;
    proto$1.weekdaysMinRegex = weekdaysMinRegex;

    proto$1.isPM = localeIsPM;
    proto$1.meridiem = localeMeridiem;

    function get$1(format, index, field, setter) {
        var locale = getLocale(),
            utc = createUTC().set(setter, index);
        return locale[field](utc, format);
    }

    function listMonthsImpl(format, index, field) {
        if (isNumber(format)) {
            index = format;
            format = undefined;
        }

        format = format || '';

        if (index != null) {
            return get$1(format, index, field, 'month');
        }

        var i,
            out = [];
        for (i = 0; i < 12; i++) {
            out[i] = get$1(format, i, field, 'month');
        }
        return out;
    }

    // ()
    // (5)
    // (fmt, 5)
    // (fmt)
    // (true)
    // (true, 5)
    // (true, fmt, 5)
    // (true, fmt)
    function listWeekdaysImpl(localeSorted, format, index, field) {
        if (typeof localeSorted === 'boolean') {
            if (isNumber(format)) {
                index = format;
                format = undefined;
            }

            format = format || '';
        } else {
            format = localeSorted;
            index = format;
            localeSorted = false;

            if (isNumber(format)) {
                index = format;
                format = undefined;
            }

            format = format || '';
        }

        var locale = getLocale(),
            shift = localeSorted ? locale._week.dow : 0,
            i,
            out = [];

        if (index != null) {
            return get$1(format, (index + shift) % 7, field, 'day');
        }

        for (i = 0; i < 7; i++) {
            out[i] = get$1(format, (i + shift) % 7, field, 'day');
        }
        return out;
    }

    function listMonths(format, index) {
        return listMonthsImpl(format, index, 'months');
    }

    function listMonthsShort(format, index) {
        return listMonthsImpl(format, index, 'monthsShort');
    }

    function listWeekdays(localeSorted, format, index) {
        return listWeekdaysImpl(localeSorted, format, index, 'weekdays');
    }

    function listWeekdaysShort(localeSorted, format, index) {
        return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort');
    }

    function listWeekdaysMin(localeSorted, format, index) {
        return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin');
    }

    getSetGlobalLocale('en', {
        eras: [
            {
                since: '0001-01-01',
                until: +Infinity,
                offset: 1,
                name: 'Anno Domini',
                narrow: 'AD',
                abbr: 'AD',
            },
            {
                since: '0000-12-31',
                until: -Infinity,
                offset: 1,
                name: 'Before Christ',
                narrow: 'BC',
                abbr: 'BC',
            },
        ],
        dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/,
        ordinal: function (number) {
            var b = number % 10,
                output =
                    toInt((number % 100) / 10) === 1
                        ? 'th'
                        : b === 1
                          ? 'st'
                          : b === 2
                            ? 'nd'
                            : b === 3
                              ? 'rd'
                              : 'th';
            return number + output;
        },
    });

    // Side effect imports

    hooks.lang = deprecate(
        'moment.lang is deprecated. Use moment.locale instead.',
        getSetGlobalLocale
    );
    hooks.langData = deprecate(
        'moment.langData is deprecated. Use moment.localeData instead.',
        getLocale
    );

    var mathAbs = Math.abs;

    function abs() {
        var data = this._data;

        this._milliseconds = mathAbs(this._milliseconds);
        this._days = mathAbs(this._days);
        this._months = mathAbs(this._months);

        data.milliseconds = mathAbs(data.milliseconds);
        data.seconds = mathAbs(data.seconds);
        data.minutes = mathAbs(data.minutes);
        data.hours = mathAbs(data.hours);
        data.months = mathAbs(data.months);
        data.years = mathAbs(data.years);

        return this;
    }

    function addSubtract$1(duration, input, value, direction) {
        var other = createDuration(input, value);

        duration._milliseconds += direction * other._milliseconds;
        duration._days += direction * other._days;
        duration._months += direction * other._months;

        return duration._bubble();
    }

    // supports only 2.0-style add(1, 's') or add(duration)
    function add$1(input, value) {
        return addSubtract$1(this, input, value, 1);
    }

    // supports only 2.0-style subtract(1, 's') or subtract(duration)
    function subtract$1(input, value) {
        return addSubtract$1(this, input, value, -1);
    }

    function absCeil(number) {
        if (number < 0) {
            return Math.floor(number);
        } else {
            return Math.ceil(number);
        }
    }

    function bubble() {
        var milliseconds = this._milliseconds,
            days = this._days,
            months = this._months,
            data = this._data,
            seconds,
            minutes,
            hours,
            years,
            monthsFromDays;

        // if we have a mix of positive and negative values, bubble down first
        // check: https://github.com/moment/moment/issues/2166
        if (
            !(
                (milliseconds >= 0 && days >= 0 && months >= 0) ||
                (milliseconds <= 0 && days <= 0 && months <= 0)
            )
        ) {
            milliseconds += absCeil(monthsToDays(months) + days) * 864e5;
            days = 0;
            months = 0;
        }

        // The following code bubbles up values, see the tests for
        // examples of what that means.
        data.milliseconds = milliseconds % 1000;

        seconds = absFloor(milliseconds / 1000);
        data.seconds = seconds % 60;

        minutes = absFloor(seconds / 60);
        data.minutes = minutes % 60;

        hours = absFloor(minutes / 60);
        data.hours = hours % 24;

        days += absFloor(hours / 24);

        // convert days to months
        monthsFromDays = absFloor(daysToMonths(days));
        months += monthsFromDays;
        days -= absCeil(monthsToDays(monthsFromDays));

        // 12 months -> 1 year
        years = absFloor(months / 12);
        months %= 12;

        data.days = days;
        data.months = months;
        data.years = years;

        return this;
    }

    function daysToMonths(days) {
        // 400 years have 146097 days (taking into account leap year rules)
        // 400 years have 12 months === 4800
        return (days * 4800) / 146097;
    }

    function monthsToDays(months) {
        // the reverse of daysToMonths
        return (months * 146097) / 4800;
    }

    function as(units) {
        if (!this.isValid()) {
            return NaN;
        }
        var days,
            months,
            milliseconds = this._milliseconds;

        units = normalizeUnits(units);

        if (units === 'month' || units === 'quarter' || units === 'year') {
            days = this._days + milliseconds / 864e5;
            months = this._months + daysToMonths(days);
            switch (units) {
                case 'month':
                    return months;
                case 'quarter':
                    return months / 3;
                case 'year':
                    return months / 12;
            }
        } else {
            // handle milliseconds separately because of floating point math errors (issue #1867)
            days = this._days + Math.round(monthsToDays(this._months));
            switch (units) {
                case 'week':
                    return days / 7 + milliseconds / 6048e5;
                case 'day':
                    return days + milliseconds / 864e5;
                case 'hour':
                    return days * 24 + milliseconds / 36e5;
                case 'minute':
                    return days * 1440 + milliseconds / 6e4;
                case 'second':
                    return days * 86400 + milliseconds / 1000;
                // Math.floor prevents floating point math errors here
                case 'millisecond':
                    return Math.floor(days * 864e5) + milliseconds;
                default:
                    throw new Error('Unknown unit ' + units);
            }
        }
    }

    function makeAs(alias) {
        return function () {
            return this.as(alias);
        };
    }

    var asMilliseconds = makeAs('ms'),
        asSeconds = makeAs('s'),
        asMinutes = makeAs('m'),
        asHours = makeAs('h'),
        asDays = makeAs('d'),
        asWeeks = makeAs('w'),
        asMonths = makeAs('M'),
        asQuarters = makeAs('Q'),
        asYears = makeAs('y'),
        valueOf$1 = asMilliseconds;

    function clone$1() {
        return createDuration(this);
    }

    function get$2(units) {
        units = normalizeUnits(units);
        return this.isValid() ? this[units + 's']() : NaN;
    }

    function makeGetter(name) {
        return function () {
            return this.isValid() ? this._data[name] : NaN;
        };
    }

    var milliseconds = makeGetter('milliseconds'),
        seconds = makeGetter('seconds'),
        minutes = makeGetter('minutes'),
        hours = makeGetter('hours'),
        days = makeGetter('days'),
        months = makeGetter('months'),
        years = makeGetter('years');

    function weeks() {
        return absFloor(this.days() / 7);
    }

    var round = Math.round,
        thresholds = {
            ss: 44, // a few seconds to seconds
            s: 45, // seconds to minute
            m: 45, // minutes to hour
            h: 22, // hours to day
            d: 26, // days to month/week
            w: null, // weeks to month
            M: 11, // months to year
        };

    // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize
    function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {
        return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);
    }

    function relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) {
        var duration = createDuration(posNegDuration).abs(),
            seconds = round(duration.as('s')),
            minutes = round(duration.as('m')),
            hours = round(duration.as('h')),
            days = round(duration.as('d')),
            months = round(duration.as('M')),
            weeks = round(duration.as('w')),
            years = round(duration.as('y')),
            a =
                (seconds <= thresholds.ss && ['s', seconds]) ||
                (seconds < thresholds.s && ['ss', seconds]) ||
                (minutes <= 1 && ['m']) ||
                (minutes < thresholds.m && ['mm', minutes]) ||
                (hours <= 1 && ['h']) ||
                (hours < thresholds.h && ['hh', hours]) ||
                (days <= 1 && ['d']) ||
                (days < thresholds.d && ['dd', days]);

        if (thresholds.w != null) {
            a =
                a ||
                (weeks <= 1 && ['w']) ||
                (weeks < thresholds.w && ['ww', weeks]);
        }
        a = a ||
            (months <= 1 && ['M']) ||
            (months < thresholds.M && ['MM', months]) ||
            (years <= 1 && ['y']) || ['yy', years];

        a[2] = withoutSuffix;
        a[3] = +posNegDuration > 0;
        a[4] = locale;
        return substituteTimeAgo.apply(null, a);
    }

    // This function allows you to set the rounding function for relative time strings
    function getSetRelativeTimeRounding(roundingFunction) {
        if (roundingFunction === undefined) {
            return round;
        }
        if (typeof roundingFunction === 'function') {
            round = roundingFunction;
            return true;
        }
        return false;
    }

    // This function allows you to set a threshold for relative time strings
    function getSetRelativeTimeThreshold(threshold, limit) {
        if (thresholds[threshold] === undefined) {
            return false;
        }
        if (limit === undefined) {
            return thresholds[threshold];
        }
        thresholds[threshold] = limit;
        if (threshold === 's') {
            thresholds.ss = limit - 1;
        }
        return true;
    }

    function humanize(argWithSuffix, argThresholds) {
        if (!this.isValid()) {
            return this.localeData().invalidDate();
        }

        var withSuffix = false,
            th = thresholds,
            locale,
            output;

        if (typeof argWithSuffix === 'object') {
            argThresholds = argWithSuffix;
            argWithSuffix = false;
        }
        if (typeof argWithSuffix === 'boolean') {
            withSuffix = argWithSuffix;
        }
        if (typeof argThresholds === 'object') {
            th = Object.assign({}, thresholds, argThresholds);
            if (argThresholds.s != null && argThresholds.ss == null) {
                th.ss = argThresholds.s - 1;
            }
        }

        locale = this.localeData();
        output = relativeTime$1(this, !withSuffix, th, locale);

        if (withSuffix) {
            output = locale.pastFuture(+this, output);
        }

        return locale.postformat(output);
    }

    var abs$1 = Math.abs;

    function sign(x) {
        return (x > 0) - (x < 0) || +x;
    }

    function toISOString$1() {
        // for ISO strings we do not use the normal bubbling rules:
        //  * milliseconds bubble up until they become hours
        //  * days do not bubble at all
        //  * months bubble up until they become years
        // This is because there is no context-free conversion between hours and days
        // (think of clock changes)
        // and also not between days and months (28-31 days per month)
        if (!this.isValid()) {
            return this.localeData().invalidDate();
        }

        var seconds = abs$1(this._milliseconds) / 1000,
            days = abs$1(this._days),
            months = abs$1(this._months),
            minutes,
            hours,
            years,
            s,
            total = this.asSeconds(),
            totalSign,
            ymSign,
            daysSign,
            hmsSign;

        if (!total) {
            // this is the same as C#'s (Noda) and python (isodate)...
            // but not other JS (goog.date)
            return 'P0D';
        }

        // 3600 seconds -> 60 minutes -> 1 hour
        minutes = absFloor(seconds / 60);
        hours = absFloor(minutes / 60);
        seconds %= 60;
        minutes %= 60;

        // 12 months -> 1 year
        years = absFloor(months / 12);
        months %= 12;

        // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js
        s = seconds ? seconds.toFixed(3).replace(/\.?0+$/, '') : '';

        totalSign = total < 0 ? '-' : '';
        ymSign = sign(this._months) !== sign(total) ? '-' : '';
        daysSign = sign(this._days) !== sign(total) ? '-' : '';
        hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : '';

        return (
            totalSign +
            'P' +
            (years ? ymSign + years + 'Y' : '') +
            (months ? ymSign + months + 'M' : '') +
            (days ? daysSign + days + 'D' : '') +
            (hours || minutes || seconds ? 'T' : '') +
            (hours ? hmsSign + hours + 'H' : '') +
            (minutes ? hmsSign + minutes + 'M' : '') +
            (seconds ? hmsSign + s + 'S' : '')
        );
    }

    var proto$2 = Duration.prototype;

    proto$2.isValid = isValid$1;
    proto$2.abs = abs;
    proto$2.add = add$1;
    proto$2.subtract = subtract$1;
    proto$2.as = as;
    proto$2.asMilliseconds = asMilliseconds;
    proto$2.asSeconds = asSeconds;
    proto$2.asMinutes = asMinutes;
    proto$2.asHours = asHours;
    proto$2.asDays = asDays;
    proto$2.asWeeks = asWeeks;
    proto$2.asMonths = asMonths;
    proto$2.asQuarters = asQuarters;
    proto$2.asYears = asYears;
    proto$2.valueOf = valueOf$1;
    proto$2._bubble = bubble;
    proto$2.clone = clone$1;
    proto$2.get = get$2;
    proto$2.milliseconds = milliseconds;
    proto$2.seconds = seconds;
    proto$2.minutes = minutes;
    proto$2.hours = hours;
    proto$2.days = days;
    proto$2.weeks = weeks;
    proto$2.months = months;
    proto$2.years = years;
    proto$2.humanize = humanize;
    proto$2.toISOString = toISOString$1;
    proto$2.toString = toISOString$1;
    proto$2.toJSON = toISOString$1;
    proto$2.locale = locale;
    proto$2.localeData = localeData;

    proto$2.toIsoString = deprecate(
        'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)',
        toISOString$1
    );
    proto$2.lang = lang;

    // FORMATTING

    addFormatToken('X', 0, 0, 'unix');
    addFormatToken('x', 0, 0, 'valueOf');

    // PARSING

    addRegexToken('x', matchSigned);
    addRegexToken('X', matchTimestamp);
    addParseToken('X', function (input, array, config) {
        config._d = new Date(parseFloat(input) * 1000);
    });
    addParseToken('x', function (input, array, config) {
        config._d = new Date(toInt(input));
    });

    //! moment.js

    hooks.version = '2.30.1';

    setHookCallback(createLocal);

    hooks.fn = proto;
    hooks.min = min;
    hooks.max = max;
    hooks.now = now;
    hooks.utc = createUTC;
    hooks.unix = createUnix;
    hooks.months = listMonths;
    hooks.isDate = isDate;
    hooks.locale = getSetGlobalLocale;
    hooks.invalid = createInvalid;
    hooks.duration = createDuration;
    hooks.isMoment = isMoment;
    hooks.weekdays = listWeekdays;
    hooks.parseZone = createInZone;
    hooks.localeData = getLocale;
    hooks.isDuration = isDuration;
    hooks.monthsShort = listMonthsShort;
    hooks.weekdaysMin = listWeekdaysMin;
    hooks.defineLocale = defineLocale;
    hooks.updateLocale = updateLocale;
    hooks.locales = listLocales;
    hooks.weekdaysShort = listWeekdaysShort;
    hooks.normalizeUnits = normalizeUnits;
    hooks.relativeTimeRounding = getSetRelativeTimeRounding;
    hooks.relativeTimeThreshold = getSetRelativeTimeThreshold;
    hooks.calendarFormat = getCalendarFormat;
    hooks.prototype = proto;

    // currently HTML5 input type only supports 24-hour formats
    hooks.HTML5_FMT = {
        DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // <input type="datetime-local" />
        DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // <input type="datetime-local" step="1" />
        DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // <input type="datetime-local" step="0.001" />
        DATE: 'YYYY-MM-DD', // <input type="date" />
        TIME: 'HH:mm', // <input type="time" />
        TIME_SECONDS: 'HH:mm:ss', // <input type="time" step="1" />
        TIME_MS: 'HH:mm:ss.SSS', // <input type="time" step="0.001" />
        WEEK: 'GGGG-[W]WW', // <input type="week" />
        MONTH: 'YYYY-MM', // <input type="month" />
    };

    return hooks;

})));

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("62e4")(module)))

/***/ }),

/***/ "c266":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"data\":{}}");

/***/ }),

/***/ "c2ae":
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__("e372").PassThrough


/***/ }),

/***/ "c345":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");

// Headers whose duplicates are ignored by node
// c.f. https://nodejs.org/api/http.html#http_message_headers
var ignoreDuplicateOf = [
  'age', 'authorization', 'content-length', 'content-type', 'etag',
  'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',
  'last-modified', 'location', 'max-forwards', 'proxy-authorization',
  'referer', 'retry-after', 'user-agent'
];

/**
 * Parse headers into an object
 *
 * ```
 * Date: Wed, 27 Aug 2014 08:58:49 GMT
 * Content-Type: application/json
 * Connection: keep-alive
 * Transfer-Encoding: chunked
 * ```
 *
 * @param {String} headers Headers needing to be parsed
 * @returns {Object} Headers parsed into an object
 */
module.exports = function parseHeaders(headers) {
  var parsed = {};
  var key;
  var val;
  var i;

  if (!headers) { return parsed; }

  utils.forEach(headers.split('\n'), function parser(line) {
    i = line.indexOf(':');
    key = utils.trim(line.substr(0, i)).toLowerCase();
    val = utils.trim(line.substr(i + 1));

    if (key) {
      if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {
        return;
      }
      if (key === 'set-cookie') {
        parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);
      } else {
        parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;
      }
    }
  });

  return parsed;
};


/***/ }),

/***/ "c401":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");

/**
 * Transform the data for a request or a response
 *
 * @param {Object|String} data The data to be transformed
 * @param {Array} headers The headers for the request or response
 * @param {Array|Function} fns A single function or Array of functions
 * @returns {*} The resulting transformed data
 */
module.exports = function transformData(data, headers, fns) {
  /*eslint no-param-reassign:0*/
  utils.forEach(fns, function transform(fn) {
    data = fn(data, headers);
  });

  return data;
};


/***/ }),

/***/ "c437":
/***/ (function(module, exports, __webpack_require__) {

var rng = __webpack_require__("e1f4");
var bytesToUuid = __webpack_require__("2366");

// **`v1()` - Generate time-based UUID**
//
// Inspired by https://github.com/LiosK/UUID.js
// and http://docs.python.org/library/uuid.html

var _nodeId;
var _clockseq;

// Previous uuid creation time
var _lastMSecs = 0;
var _lastNSecs = 0;

// See https://github.com/uuidjs/uuid for API details
function v1(options, buf, offset) {
  var i = buf && offset || 0;
  var b = buf || [];

  options = options || {};
  var node = options.node || _nodeId;
  var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq;

  // node and clockseq need to be initialized to random values if they're not
  // specified.  We do this lazily to minimize issues related to insufficient
  // system entropy.  See #189
  if (node == null || clockseq == null) {
    var seedBytes = rng();
    if (node == null) {
      // Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)
      node = _nodeId = [
        seedBytes[0] | 0x01,
        seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]
      ];
    }
    if (clockseq == null) {
      // Per 4.2.2, randomize (14 bit) clockseq
      clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff;
    }
  }

  // UUID timestamps are 100 nano-second units since the Gregorian epoch,
  // (1582-10-15 00:00).  JSNumbers aren't precise enough for this, so
  // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'
  // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.
  var msecs = options.msecs !== undefined ? options.msecs : new Date().getTime();

  // Per 4.2.1.2, use count of uuid's generated during the current clock
  // cycle to simulate higher resolution clock
  var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1;

  // Time since last uuid creation (in msecs)
  var dt = (msecs - _lastMSecs) + (nsecs - _lastNSecs)/10000;

  // Per 4.2.1.2, Bump clockseq on clock regression
  if (dt < 0 && options.clockseq === undefined) {
    clockseq = clockseq + 1 & 0x3fff;
  }

  // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new
  // time interval
  if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) {
    nsecs = 0;
  }

  // Per 4.2.1.2 Throw error if too many uuids are requested
  if (nsecs >= 10000) {
    throw new Error('uuid.v1(): Can\'t create more than 10M uuids/sec');
  }

  _lastMSecs = msecs;
  _lastNSecs = nsecs;
  _clockseq = clockseq;

  // Per 4.1.4 - Convert from unix epoch to Gregorian epoch
  msecs += 12219292800000;

  // `time_low`
  var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;
  b[i++] = tl >>> 24 & 0xff;
  b[i++] = tl >>> 16 & 0xff;
  b[i++] = tl >>> 8 & 0xff;
  b[i++] = tl & 0xff;

  // `time_mid`
  var tmh = (msecs / 0x100000000 * 10000) & 0xfffffff;
  b[i++] = tmh >>> 8 & 0xff;
  b[i++] = tmh & 0xff;

  // `time_high_and_version`
  b[i++] = tmh >>> 24 & 0xf | 0x10; // include version
  b[i++] = tmh >>> 16 & 0xff;

  // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)
  b[i++] = clockseq >>> 8 | 0x80;

  // `clock_seq_low`
  b[i++] = clockseq & 0xff;

  // `node`
  for (var n = 0; n < 6; ++n) {
    b[i + n] = node[n];
  }

  return buf ? buf : bytesToUuid(b);
}

module.exports = v1;


/***/ }),

/***/ "c452":
/***/ (function(module, exports, __webpack_require__) {

var LazyWrapper = __webpack_require__("6286"),
    LodashWrapper = __webpack_require__("e9a7"),
    copyArray = __webpack_require__("4359");

/**
 * Creates a clone of `wrapper`.
 *
 * @private
 * @param {Object} wrapper The wrapper to clone.
 * @returns {Object} Returns the cloned wrapper.
 */
function wrapperClone(wrapper) {
  if (wrapper instanceof LazyWrapper) {
    return wrapper.clone();
  }
  var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__);
  result.__actions__ = copyArray(wrapper.__actions__);
  result.__index__  = wrapper.__index__;
  result.__values__ = wrapper.__values__;
  return result;
}

module.exports = wrapperClone;


/***/ }),

/***/ "c461":
/***/ (function(module) {

module.exports = JSON.parse("{\"Aacute\":\"Á\",\"aacute\":\"á\",\"Acirc\":\"Â\",\"acirc\":\"â\",\"acute\":\"´\",\"AElig\":\"Æ\",\"aelig\":\"æ\",\"Agrave\":\"À\",\"agrave\":\"à\",\"amp\":\"&\",\"AMP\":\"&\",\"Aring\":\"Å\",\"aring\":\"å\",\"Atilde\":\"Ã\",\"atilde\":\"ã\",\"Auml\":\"Ä\",\"auml\":\"ä\",\"brvbar\":\"¦\",\"Ccedil\":\"Ç\",\"ccedil\":\"ç\",\"cedil\":\"¸\",\"cent\":\"¢\",\"copy\":\"©\",\"COPY\":\"©\",\"curren\":\"¤\",\"deg\":\"°\",\"divide\":\"÷\",\"Eacute\":\"É\",\"eacute\":\"é\",\"Ecirc\":\"Ê\",\"ecirc\":\"ê\",\"Egrave\":\"È\",\"egrave\":\"è\",\"ETH\":\"Ð\",\"eth\":\"ð\",\"Euml\":\"Ë\",\"euml\":\"ë\",\"frac12\":\"½\",\"frac14\":\"¼\",\"frac34\":\"¾\",\"gt\":\">\",\"GT\":\">\",\"Iacute\":\"Í\",\"iacute\":\"í\",\"Icirc\":\"Î\",\"icirc\":\"î\",\"iexcl\":\"¡\",\"Igrave\":\"Ì\",\"igrave\":\"ì\",\"iquest\":\"¿\",\"Iuml\":\"Ï\",\"iuml\":\"ï\",\"laquo\":\"«\",\"lt\":\"<\",\"LT\":\"<\",\"macr\":\"¯\",\"micro\":\"µ\",\"middot\":\"·\",\"nbsp\":\" \",\"not\":\"¬\",\"Ntilde\":\"Ñ\",\"ntilde\":\"ñ\",\"Oacute\":\"Ó\",\"oacute\":\"ó\",\"Ocirc\":\"Ô\",\"ocirc\":\"ô\",\"Ograve\":\"Ò\",\"ograve\":\"ò\",\"ordf\":\"ª\",\"ordm\":\"º\",\"Oslash\":\"Ø\",\"oslash\":\"ø\",\"Otilde\":\"Õ\",\"otilde\":\"õ\",\"Ouml\":\"Ö\",\"ouml\":\"ö\",\"para\":\"¶\",\"plusmn\":\"±\",\"pound\":\"£\",\"quot\":\"\\\"\",\"QUOT\":\"\\\"\",\"raquo\":\"»\",\"reg\":\"®\",\"REG\":\"®\",\"sect\":\"§\",\"shy\":\"­\",\"sup1\":\"¹\",\"sup2\":\"²\",\"sup3\":\"³\",\"szlig\":\"ß\",\"THORN\":\"Þ\",\"thorn\":\"þ\",\"times\":\"×\",\"Uacute\":\"Ú\",\"uacute\":\"ú\",\"Ucirc\":\"Û\",\"ucirc\":\"û\",\"Ugrave\":\"Ù\",\"ugrave\":\"ù\",\"uml\":\"¨\",\"Uuml\":\"Ü\",\"uuml\":\"ü\",\"Yacute\":\"Ý\",\"yacute\":\"ý\",\"yen\":\"¥\",\"yuml\":\"ÿ\"}");

/***/ }),

/***/ "c4e3":
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(Buffer, global) {var require;var require;/*!

JSZip v3.9.1 - A JavaScript class for generating and reading zip files
<http://stuartk.com/jszip>

(c) 2009-2016 Stuart Knightley <stuart [at] stuartk.com>
Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/master/LICENSE.markdown.

JSZip uses the library pako released under the MIT license :
https://github.com/nodeca/pako/blob/master/LICENSE
*/

!function(t){if(true)module.exports=t();else {}}(function(){return function s(a,o,h){function u(r,t){if(!o[r]){if(!a[r]){var e="function"==typeof require&&require;if(!t&&e)return require(r,!0);if(l)return l(r,!0);var i=new Error("Cannot find module '"+r+"'");throw i.code="MODULE_NOT_FOUND",i}var n=o[r]={exports:{}};a[r][0].call(n.exports,function(t){var e=a[r][1][t];return u(e||t)},n,n.exports,s,a,o,h)}return o[r].exports}for(var l="function"==typeof require&&require,t=0;t<h.length;t++)u(h[t]);return u}({1:[function(t,e,r){"use strict";var c=t("./utils"),d=t("./support"),p="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";r.encode=function(t){for(var e,r,i,n,s,a,o,h=[],u=0,l=t.length,f=l,d="string"!==c.getTypeOf(t);u<t.length;)f=l-u,i=d?(e=t[u++],r=u<l?t[u++]:0,u<l?t[u++]:0):(e=t.charCodeAt(u++),r=u<l?t.charCodeAt(u++):0,u<l?t.charCodeAt(u++):0),n=e>>2,s=(3&e)<<4|r>>4,a=1<f?(15&r)<<2|i>>6:64,o=2<f?63&i:64,h.push(p.charAt(n)+p.charAt(s)+p.charAt(a)+p.charAt(o));return h.join("")},r.decode=function(t){var e,r,i,n,s,a,o=0,h=0,u="data:";if(t.substr(0,u.length)===u)throw new Error("Invalid base64 input, it looks like a data url.");var l,f=3*(t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"")).length/4;if(t.charAt(t.length-1)===p.charAt(64)&&f--,t.charAt(t.length-2)===p.charAt(64)&&f--,f%1!=0)throw new Error("Invalid base64 input, bad content length.");for(l=d.uint8array?new Uint8Array(0|f):new Array(0|f);o<t.length;)e=p.indexOf(t.charAt(o++))<<2|(n=p.indexOf(t.charAt(o++)))>>4,r=(15&n)<<4|(s=p.indexOf(t.charAt(o++)))>>2,i=(3&s)<<6|(a=p.indexOf(t.charAt(o++))),l[h++]=e,64!==s&&(l[h++]=r),64!==a&&(l[h++]=i);return l}},{"./support":30,"./utils":32}],2:[function(t,e,r){"use strict";var i=t("./external"),n=t("./stream/DataWorker"),s=t("./stream/Crc32Probe"),a=t("./stream/DataLengthProbe");function o(t,e,r,i,n){this.compressedSize=t,this.uncompressedSize=e,this.crc32=r,this.compression=i,this.compressedContent=n}o.prototype={getContentWorker:function(){var t=new n(i.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new a("data_length")),e=this;return t.on("end",function(){if(this.streamInfo.data_length!==e.uncompressedSize)throw new Error("Bug : uncompressed data size mismatch")}),t},getCompressedWorker:function(){return new n(i.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize",this.compressedSize).withStreamInfo("uncompressedSize",this.uncompressedSize).withStreamInfo("crc32",this.crc32).withStreamInfo("compression",this.compression)}},o.createWorkerFrom=function(t,e,r){return t.pipe(new s).pipe(new a("uncompressedSize")).pipe(e.compressWorker(r)).pipe(new a("compressedSize")).withStreamInfo("compression",e)},e.exports=o},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(t,e,r){"use strict";var i=t("./stream/GenericWorker");r.STORE={magic:"\0\0",compressWorker:function(t){return new i("STORE compression")},uncompressWorker:function(){return new i("STORE decompression")}},r.DEFLATE=t("./flate")},{"./flate":7,"./stream/GenericWorker":28}],4:[function(t,e,r){"use strict";var i=t("./utils");var o=function(){for(var t,e=[],r=0;r<256;r++){t=r;for(var i=0;i<8;i++)t=1&t?3988292384^t>>>1:t>>>1;e[r]=t}return e}();e.exports=function(t,e){return void 0!==t&&t.length?"string"!==i.getTypeOf(t)?function(t,e,r,i){var n=o,s=i+r;t^=-1;for(var a=i;a<s;a++)t=t>>>8^n[255&(t^e[a])];return-1^t}(0|e,t,t.length,0):function(t,e,r,i){var n=o,s=i+r;t^=-1;for(var a=i;a<s;a++)t=t>>>8^n[255&(t^e.charCodeAt(a))];return-1^t}(0|e,t,t.length,0):0}},{"./utils":32}],5:[function(t,e,r){"use strict";r.base64=!1,r.binary=!1,r.dir=!1,r.createFolders=!0,r.date=null,r.compression=null,r.compressionOptions=null,r.comment=null,r.unixPermissions=null,r.dosPermissions=null},{}],6:[function(t,e,r){"use strict";var i=null;i="undefined"!=typeof Promise?Promise:t("lie"),e.exports={Promise:i}},{lie:37}],7:[function(t,e,r){"use strict";var i="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,n=t("pako"),s=t("./utils"),a=t("./stream/GenericWorker"),o=i?"uint8array":"array";function h(t,e){a.call(this,"FlateWorker/"+t),this._pako=null,this._pakoAction=t,this._pakoOptions=e,this.meta={}}r.magic="\b\0",s.inherits(h,a),h.prototype.processChunk=function(t){this.meta=t.meta,null===this._pako&&this._createPako(),this._pako.push(s.transformTo(o,t.data),!1)},h.prototype.flush=function(){a.prototype.flush.call(this),null===this._pako&&this._createPako(),this._pako.push([],!0)},h.prototype.cleanUp=function(){a.prototype.cleanUp.call(this),this._pako=null},h.prototype._createPako=function(){this._pako=new n[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},r.compressWorker=function(t){return new h("Deflate",t)},r.uncompressWorker=function(){return new h("Inflate",{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(t,e,r){"use strict";function A(t,e){var r,i="";for(r=0;r<e;r++)i+=String.fromCharCode(255&t),t>>>=8;return i}function i(t,e,r,i,n,s){var a,o,h=t.file,u=t.compression,l=s!==O.utf8encode,f=I.transformTo("string",s(h.name)),d=I.transformTo("string",O.utf8encode(h.name)),c=h.comment,p=I.transformTo("string",s(c)),m=I.transformTo("string",O.utf8encode(c)),_=d.length!==h.name.length,g=m.length!==c.length,b="",v="",y="",w=h.dir,k=h.date,x={crc32:0,compressedSize:0,uncompressedSize:0};e&&!r||(x.crc32=t.crc32,x.compressedSize=t.compressedSize,x.uncompressedSize=t.uncompressedSize);var S=0;e&&(S|=8),l||!_&&!g||(S|=2048);var z=0,C=0;w&&(z|=16),"UNIX"===n?(C=798,z|=function(t,e){var r=t;return t||(r=e?16893:33204),(65535&r)<<16}(h.unixPermissions,w)):(C=20,z|=function(t){return 63&(t||0)}(h.dosPermissions)),a=k.getUTCHours(),a<<=6,a|=k.getUTCMinutes(),a<<=5,a|=k.getUTCSeconds()/2,o=k.getUTCFullYear()-1980,o<<=4,o|=k.getUTCMonth()+1,o<<=5,o|=k.getUTCDate(),_&&(v=A(1,1)+A(B(f),4)+d,b+="up"+A(v.length,2)+v),g&&(y=A(1,1)+A(B(p),4)+m,b+="uc"+A(y.length,2)+y);var E="";return E+="\n\0",E+=A(S,2),E+=u.magic,E+=A(a,2),E+=A(o,2),E+=A(x.crc32,4),E+=A(x.compressedSize,4),E+=A(x.uncompressedSize,4),E+=A(f.length,2),E+=A(b.length,2),{fileRecord:R.LOCAL_FILE_HEADER+E+f+b,dirRecord:R.CENTRAL_FILE_HEADER+A(C,2)+E+A(p.length,2)+"\0\0\0\0"+A(z,4)+A(i,4)+f+b+p}}var I=t("../utils"),n=t("../stream/GenericWorker"),O=t("../utf8"),B=t("../crc32"),R=t("../signature");function s(t,e,r,i){n.call(this,"ZipFileWorker"),this.bytesWritten=0,this.zipComment=e,this.zipPlatform=r,this.encodeFileName=i,this.streamFiles=t,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}I.inherits(s,n),s.prototype.push=function(t){var e=t.meta.percent||0,r=this.entriesCount,i=this._sources.length;this.accumulate?this.contentBuffer.push(t):(this.bytesWritten+=t.data.length,n.prototype.push.call(this,{data:t.data,meta:{currentFile:this.currentFile,percent:r?(e+100*(r-i-1))/r:100}}))},s.prototype.openedSource=function(t){this.currentSourceOffset=this.bytesWritten,this.currentFile=t.file.name;var e=this.streamFiles&&!t.file.dir;if(e){var r=i(t,e,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:r.fileRecord,meta:{percent:0}})}else this.accumulate=!0},s.prototype.closedSource=function(t){this.accumulate=!1;var e=this.streamFiles&&!t.file.dir,r=i(t,e,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(r.dirRecord),e)this.push({data:function(t){return R.DATA_DESCRIPTOR+A(t.crc32,4)+A(t.compressedSize,4)+A(t.uncompressedSize,4)}(t),meta:{percent:100}});else for(this.push({data:r.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},s.prototype.flush=function(){for(var t=this.bytesWritten,e=0;e<this.dirRecords.length;e++)this.push({data:this.dirRecords[e],meta:{percent:100}});var r=this.bytesWritten-t,i=function(t,e,r,i,n){var s=I.transformTo("string",n(i));return R.CENTRAL_DIRECTORY_END+"\0\0\0\0"+A(t,2)+A(t,2)+A(e,4)+A(r,4)+A(s.length,2)+s}(this.dirRecords.length,r,t,this.zipComment,this.encodeFileName);this.push({data:i,meta:{percent:100}})},s.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},s.prototype.registerPrevious=function(t){this._sources.push(t);var e=this;return t.on("data",function(t){e.processChunk(t)}),t.on("end",function(){e.closedSource(e.previous.streamInfo),e._sources.length?e.prepareNextSource():e.end()}),t.on("error",function(t){e.error(t)}),this},s.prototype.resume=function(){return!!n.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},s.prototype.error=function(t){var e=this._sources;if(!n.prototype.error.call(this,t))return!1;for(var r=0;r<e.length;r++)try{e[r].error(t)}catch(t){}return!0},s.prototype.lock=function(){n.prototype.lock.call(this);for(var t=this._sources,e=0;e<t.length;e++)t[e].lock()},e.exports=s},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(t,e,r){"use strict";var u=t("../compressions"),i=t("./ZipFileWorker");r.generateWorker=function(t,a,e){var o=new i(a.streamFiles,e,a.platform,a.encodeFileName),h=0;try{t.forEach(function(t,e){h++;var r=function(t,e){var r=t||e,i=u[r];if(!i)throw new Error(r+" is not a valid compression method !");return i}(e.options.compression,a.compression),i=e.options.compressionOptions||a.compressionOptions||{},n=e.dir,s=e.date;e._compressWorker(r,i).withStreamInfo("file",{name:t,dir:n,date:s,comment:e.comment||"",unixPermissions:e.unixPermissions,dosPermissions:e.dosPermissions}).pipe(o)}),o.entriesCount=h}catch(t){o.error(t)}return o}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(t,e,r){"use strict";function i(){if(!(this instanceof i))return new i;if(arguments.length)throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");this.files=Object.create(null),this.comment=null,this.root="",this.clone=function(){var t=new i;for(var e in this)"function"!=typeof this[e]&&(t[e]=this[e]);return t}}(i.prototype=t("./object")).loadAsync=t("./load"),i.support=t("./support"),i.defaults=t("./defaults"),i.version="3.9.1",i.loadAsync=function(t,e){return(new i).loadAsync(t,e)},i.external=t("./external"),e.exports=i},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(t,e,r){"use strict";var u=t("./utils"),n=t("./external"),i=t("./utf8"),s=t("./zipEntries"),a=t("./stream/Crc32Probe"),l=t("./nodejsUtils");function f(i){return new n.Promise(function(t,e){var r=i.decompressed.getContentWorker().pipe(new a);r.on("error",function(t){e(t)}).on("end",function(){r.streamInfo.crc32!==i.decompressed.crc32?e(new Error("Corrupted zip : CRC32 mismatch")):t()}).resume()})}e.exports=function(t,o){var h=this;return o=u.extend(o||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:i.utf8decode}),l.isNode&&l.isStream(t)?n.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")):u.prepareContent("the loaded zip file",t,!0,o.optimizedBinaryString,o.base64).then(function(t){var e=new s(o);return e.load(t),e}).then(function(t){var e=[n.Promise.resolve(t)],r=t.files;if(o.checkCRC32)for(var i=0;i<r.length;i++)e.push(f(r[i]));return n.Promise.all(e)}).then(function(t){for(var e=t.shift(),r=e.files,i=0;i<r.length;i++){var n=r[i],s=n.fileNameStr,a=u.resolve(n.fileNameStr);h.file(a,n.decompressed,{binary:!0,optimizedBinaryString:!0,date:n.date,dir:n.dir,comment:n.fileCommentStr.length?n.fileCommentStr:null,unixPermissions:n.unixPermissions,dosPermissions:n.dosPermissions,createFolders:o.createFolders}),n.dir||(h.file(a).unsafeOriginalName=s)}return e.zipComment.length&&(h.comment=e.zipComment),h})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(t,e,r){"use strict";var i=t("../utils"),n=t("../stream/GenericWorker");function s(t,e){n.call(this,"Nodejs stream input adapter for "+t),this._upstreamEnded=!1,this._bindStream(e)}i.inherits(s,n),s.prototype._bindStream=function(t){var e=this;(this._stream=t).pause(),t.on("data",function(t){e.push({data:t,meta:{percent:0}})}).on("error",function(t){e.isPaused?this.generatedError=t:e.error(t)}).on("end",function(){e.isPaused?e._upstreamEnded=!0:e.end()})},s.prototype.pause=function(){return!!n.prototype.pause.call(this)&&(this._stream.pause(),!0)},s.prototype.resume=function(){return!!n.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},e.exports=s},{"../stream/GenericWorker":28,"../utils":32}],13:[function(t,e,r){"use strict";var n=t("readable-stream").Readable;function i(t,e,r){n.call(this,e),this._helper=t;var i=this;t.on("data",function(t,e){i.push(t)||i._helper.pause(),r&&r(e)}).on("error",function(t){i.emit("error",t)}).on("end",function(){i.push(null)})}t("../utils").inherits(i,n),i.prototype._read=function(){this._helper.resume()},e.exports=i},{"../utils":32,"readable-stream":16}],14:[function(t,e,r){"use strict";e.exports={isNode:"undefined"!=typeof Buffer,newBufferFrom:function(t,e){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(t,e);if("number"==typeof t)throw new Error('The "data" argument must not be a number');return new Buffer(t,e)},allocBuffer:function(t){if(Buffer.alloc)return Buffer.alloc(t);var e=new Buffer(t);return e.fill(0),e},isBuffer:function(t){return Buffer.isBuffer(t)},isStream:function(t){return t&&"function"==typeof t.on&&"function"==typeof t.pause&&"function"==typeof t.resume}}},{}],15:[function(t,e,r){"use strict";function s(t,e,r){var i,n=u.getTypeOf(e),s=u.extend(r||{},f);s.date=s.date||new Date,null!==s.compression&&(s.compression=s.compression.toUpperCase()),"string"==typeof s.unixPermissions&&(s.unixPermissions=parseInt(s.unixPermissions,8)),s.unixPermissions&&16384&s.unixPermissions&&(s.dir=!0),s.dosPermissions&&16&s.dosPermissions&&(s.dir=!0),s.dir&&(t=g(t)),s.createFolders&&(i=_(t))&&b.call(this,i,!0);var a="string"===n&&!1===s.binary&&!1===s.base64;r&&void 0!==r.binary||(s.binary=!a),(e instanceof d&&0===e.uncompressedSize||s.dir||!e||0===e.length)&&(s.base64=!1,s.binary=!0,e="",s.compression="STORE",n="string");var o=null;o=e instanceof d||e instanceof l?e:p.isNode&&p.isStream(e)?new m(t,e):u.prepareContent(t,e,s.binary,s.optimizedBinaryString,s.base64);var h=new c(t,o,s);this.files[t]=h}var n=t("./utf8"),u=t("./utils"),l=t("./stream/GenericWorker"),a=t("./stream/StreamHelper"),f=t("./defaults"),d=t("./compressedObject"),c=t("./zipObject"),o=t("./generate"),p=t("./nodejsUtils"),m=t("./nodejs/NodejsStreamInputAdapter"),_=function(t){"/"===t.slice(-1)&&(t=t.substring(0,t.length-1));var e=t.lastIndexOf("/");return 0<e?t.substring(0,e):""},g=function(t){return"/"!==t.slice(-1)&&(t+="/"),t},b=function(t,e){return e=void 0!==e?e:f.createFolders,t=g(t),this.files[t]||s.call(this,t,null,{dir:!0,createFolders:e}),this.files[t]};function h(t){return"[object RegExp]"===Object.prototype.toString.call(t)}var i={load:function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},forEach:function(t){var e,r,i;for(e in this.files)i=this.files[e],(r=e.slice(this.root.length,e.length))&&e.slice(0,this.root.length)===this.root&&t(r,i)},filter:function(r){var i=[];return this.forEach(function(t,e){r(t,e)&&i.push(e)}),i},file:function(t,e,r){if(1!==arguments.length)return t=this.root+t,s.call(this,t,e,r),this;if(h(t)){var i=t;return this.filter(function(t,e){return!e.dir&&i.test(t)})}var n=this.files[this.root+t];return n&&!n.dir?n:null},folder:function(r){if(!r)return this;if(h(r))return this.filter(function(t,e){return e.dir&&r.test(t)});var t=this.root+r,e=b.call(this,t),i=this.clone();return i.root=e.name,i},remove:function(r){r=this.root+r;var t=this.files[r];if(t||("/"!==r.slice(-1)&&(r+="/"),t=this.files[r]),t&&!t.dir)delete this.files[r];else for(var e=this.filter(function(t,e){return e.name.slice(0,r.length)===r}),i=0;i<e.length;i++)delete this.files[e[i].name];return this},generate:function(t){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},generateInternalStream:function(t){var e,r={};try{if((r=u.extend(t||{},{streamFiles:!1,compression:"STORE",compressionOptions:null,type:"",platform:"DOS",comment:null,mimeType:"application/zip",encodeFileName:n.utf8encode})).type=r.type.toLowerCase(),r.compression=r.compression.toUpperCase(),"binarystring"===r.type&&(r.type="string"),!r.type)throw new Error("No output type specified.");u.checkSupport(r.type),"darwin"!==r.platform&&"freebsd"!==r.platform&&"linux"!==r.platform&&"sunos"!==r.platform||(r.platform="UNIX"),"win32"===r.platform&&(r.platform="DOS");var i=r.comment||this.comment||"";e=o.generateWorker(this,r,i)}catch(t){(e=new l("error")).error(t)}return new a(e,r.type||"string",r.mimeType)},generateAsync:function(t,e){return this.generateInternalStream(t).accumulate(e)},generateNodeStream:function(t,e){return(t=t||{}).type||(t.type="nodebuffer"),this.generateInternalStream(t).toNodejsStream(e)}};e.exports=i},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(t,e,r){e.exports=t("stream")},{stream:void 0}],17:[function(t,e,r){"use strict";var i=t("./DataReader");function n(t){i.call(this,t);for(var e=0;e<this.data.length;e++)t[e]=255&t[e]}t("../utils").inherits(n,i),n.prototype.byteAt=function(t){return this.data[this.zero+t]},n.prototype.lastIndexOfSignature=function(t){for(var e=t.charCodeAt(0),r=t.charCodeAt(1),i=t.charCodeAt(2),n=t.charCodeAt(3),s=this.length-4;0<=s;--s)if(this.data[s]===e&&this.data[s+1]===r&&this.data[s+2]===i&&this.data[s+3]===n)return s-this.zero;return-1},n.prototype.readAndCheckSignature=function(t){var e=t.charCodeAt(0),r=t.charCodeAt(1),i=t.charCodeAt(2),n=t.charCodeAt(3),s=this.readData(4);return e===s[0]&&r===s[1]&&i===s[2]&&n===s[3]},n.prototype.readData=function(t){if(this.checkOffset(t),0===t)return[];var e=this.data.slice(this.zero+this.index,this.zero+this.index+t);return this.index+=t,e},e.exports=n},{"../utils":32,"./DataReader":18}],18:[function(t,e,r){"use strict";var i=t("../utils");function n(t){this.data=t,this.length=t.length,this.index=0,this.zero=0}n.prototype={checkOffset:function(t){this.checkIndex(this.index+t)},checkIndex:function(t){if(this.length<this.zero+t||t<0)throw new Error("End of data reached (data length = "+this.length+", asked index = "+t+"). Corrupted zip ?")},setIndex:function(t){this.checkIndex(t),this.index=t},skip:function(t){this.setIndex(this.index+t)},byteAt:function(t){},readInt:function(t){var e,r=0;for(this.checkOffset(t),e=this.index+t-1;e>=this.index;e--)r=(r<<8)+this.byteAt(e);return this.index+=t,r},readString:function(t){return i.transformTo("string",this.readData(t))},readData:function(t){},lastIndexOfSignature:function(t){},readAndCheckSignature:function(t){},readDate:function(){var t=this.readInt(4);return new Date(Date.UTC(1980+(t>>25&127),(t>>21&15)-1,t>>16&31,t>>11&31,t>>5&63,(31&t)<<1))}},e.exports=n},{"../utils":32}],19:[function(t,e,r){"use strict";var i=t("./Uint8ArrayReader");function n(t){i.call(this,t)}t("../utils").inherits(n,i),n.prototype.readData=function(t){this.checkOffset(t);var e=this.data.slice(this.zero+this.index,this.zero+this.index+t);return this.index+=t,e},e.exports=n},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(t,e,r){"use strict";var i=t("./DataReader");function n(t){i.call(this,t)}t("../utils").inherits(n,i),n.prototype.byteAt=function(t){return this.data.charCodeAt(this.zero+t)},n.prototype.lastIndexOfSignature=function(t){return this.data.lastIndexOf(t)-this.zero},n.prototype.readAndCheckSignature=function(t){return t===this.readData(4)},n.prototype.readData=function(t){this.checkOffset(t);var e=this.data.slice(this.zero+this.index,this.zero+this.index+t);return this.index+=t,e},e.exports=n},{"../utils":32,"./DataReader":18}],21:[function(t,e,r){"use strict";var i=t("./ArrayReader");function n(t){i.call(this,t)}t("../utils").inherits(n,i),n.prototype.readData=function(t){if(this.checkOffset(t),0===t)return new Uint8Array(0);var e=this.data.subarray(this.zero+this.index,this.zero+this.index+t);return this.index+=t,e},e.exports=n},{"../utils":32,"./ArrayReader":17}],22:[function(t,e,r){"use strict";var i=t("../utils"),n=t("../support"),s=t("./ArrayReader"),a=t("./StringReader"),o=t("./NodeBufferReader"),h=t("./Uint8ArrayReader");e.exports=function(t){var e=i.getTypeOf(t);return i.checkSupport(e),"string"!==e||n.uint8array?"nodebuffer"===e?new o(t):n.uint8array?new h(i.transformTo("uint8array",t)):new s(i.transformTo("array",t)):new a(t)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(t,e,r){"use strict";r.LOCAL_FILE_HEADER="PK",r.CENTRAL_FILE_HEADER="PK",r.CENTRAL_DIRECTORY_END="PK",r.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",r.ZIP64_CENTRAL_DIRECTORY_END="PK",r.DATA_DESCRIPTOR="PK\b"},{}],24:[function(t,e,r){"use strict";var i=t("./GenericWorker"),n=t("../utils");function s(t){i.call(this,"ConvertWorker to "+t),this.destType=t}n.inherits(s,i),s.prototype.processChunk=function(t){this.push({data:n.transformTo(this.destType,t.data),meta:t.meta})},e.exports=s},{"../utils":32,"./GenericWorker":28}],25:[function(t,e,r){"use strict";var i=t("./GenericWorker"),n=t("../crc32");function s(){i.call(this,"Crc32Probe"),this.withStreamInfo("crc32",0)}t("../utils").inherits(s,i),s.prototype.processChunk=function(t){this.streamInfo.crc32=n(t.data,this.streamInfo.crc32||0),this.push(t)},e.exports=s},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(t,e,r){"use strict";var i=t("../utils"),n=t("./GenericWorker");function s(t){n.call(this,"DataLengthProbe for "+t),this.propName=t,this.withStreamInfo(t,0)}i.inherits(s,n),s.prototype.processChunk=function(t){if(t){var e=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=e+t.data.length}n.prototype.processChunk.call(this,t)},e.exports=s},{"../utils":32,"./GenericWorker":28}],27:[function(t,e,r){"use strict";var i=t("../utils"),n=t("./GenericWorker");function s(t){n.call(this,"DataWorker");var e=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type="",this._tickScheduled=!1,t.then(function(t){e.dataIsReady=!0,e.data=t,e.max=t&&t.length||0,e.type=i.getTypeOf(t),e.isPaused||e._tickAndRepeat()},function(t){e.error(t)})}i.inherits(s,n),s.prototype.cleanUp=function(){n.prototype.cleanUp.call(this),this.data=null},s.prototype.resume=function(){return!!n.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,i.delay(this._tickAndRepeat,[],this)),!0)},s.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(i.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},s.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var t=null,e=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case"string":t=this.data.substring(this.index,e);break;case"uint8array":t=this.data.subarray(this.index,e);break;case"array":case"nodebuffer":t=this.data.slice(this.index,e)}return this.index=e,this.push({data:t,meta:{percent:this.max?this.index/this.max*100:0}})},e.exports=s},{"../utils":32,"./GenericWorker":28}],28:[function(t,e,r){"use strict";function i(t){this.name=t||"default",this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}i.prototype={push:function(t){this.emit("data",t)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit("end"),this.cleanUp(),this.isFinished=!0}catch(t){this.emit("error",t)}return!0},error:function(t){return!this.isFinished&&(this.isPaused?this.generatedError=t:(this.isFinished=!0,this.emit("error",t),this.previous&&this.previous.error(t),this.cleanUp()),!0)},on:function(t,e){return this._listeners[t].push(e),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(t,e){if(this._listeners[t])for(var r=0;r<this._listeners[t].length;r++)this._listeners[t][r].call(this,e)},pipe:function(t){return t.registerPrevious(this)},registerPrevious:function(t){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.streamInfo=t.streamInfo,this.mergeStreamInfo(),this.previous=t;var e=this;return t.on("data",function(t){e.processChunk(t)}),t.on("end",function(){e.end()}),t.on("error",function(t){e.error(t)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var t=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),t=!0),this.previous&&this.previous.resume(),!t},flush:function(){},processChunk:function(t){this.push(t)},withStreamInfo:function(t,e){return this.extraStreamInfo[t]=e,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var t in this.extraStreamInfo)this.extraStreamInfo.hasOwnProperty(t)&&(this.streamInfo[t]=this.extraStreamInfo[t])},lock:function(){if(this.isLocked)throw new Error("The stream '"+this+"' has already been used.");this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var t="Worker "+this.name;return this.previous?this.previous+" -> "+t:t}},e.exports=i},{}],29:[function(t,e,r){"use strict";var h=t("../utils"),n=t("./ConvertWorker"),s=t("./GenericWorker"),u=t("../base64"),i=t("../support"),a=t("../external"),o=null;if(i.nodestream)try{o=t("../nodejs/NodejsStreamOutputAdapter")}catch(t){}function l(t,o){return new a.Promise(function(e,r){var i=[],n=t._internalType,s=t._outputType,a=t._mimeType;t.on("data",function(t,e){i.push(t),o&&o(e)}).on("error",function(t){i=[],r(t)}).on("end",function(){try{var t=function(t,e,r){switch(t){case"blob":return h.newBlob(h.transformTo("arraybuffer",e),r);case"base64":return u.encode(e);default:return h.transformTo(t,e)}}(s,function(t,e){var r,i=0,n=null,s=0;for(r=0;r<e.length;r++)s+=e[r].length;switch(t){case"string":return e.join("");case"array":return Array.prototype.concat.apply([],e);case"uint8array":for(n=new Uint8Array(s),r=0;r<e.length;r++)n.set(e[r],i),i+=e[r].length;return n;case"nodebuffer":return Buffer.concat(e);default:throw new Error("concat : unsupported type '"+t+"'")}}(n,i),a);e(t)}catch(t){r(t)}i=[]}).resume()})}function f(t,e,r){var i=e;switch(e){case"blob":case"arraybuffer":i="uint8array";break;case"base64":i="string"}try{this._internalType=i,this._outputType=e,this._mimeType=r,h.checkSupport(i),this._worker=t.pipe(new n(i)),t.lock()}catch(t){this._worker=new s("error"),this._worker.error(t)}}f.prototype={accumulate:function(t){return l(this,t)},on:function(t,e){var r=this;return"data"===t?this._worker.on(t,function(t){e.call(r,t.data,t.meta)}):this._worker.on(t,function(){h.delay(e,arguments,r)}),this},resume:function(){return h.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(t){if(h.checkSupport("nodestream"),"nodebuffer"!==this._outputType)throw new Error(this._outputType+" is not supported by this method");return new o(this,{objectMode:"nodebuffer"!==this._outputType},t)}},e.exports=f},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(t,e,r){"use strict";if(r.base64=!0,r.array=!0,r.string=!0,r.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,r.nodebuffer="undefined"!=typeof Buffer,r.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)r.blob=!1;else{var i=new ArrayBuffer(0);try{r.blob=0===new Blob([i],{type:"application/zip"}).size}catch(t){try{var n=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);n.append(i),r.blob=0===n.getBlob("application/zip").size}catch(t){r.blob=!1}}}try{r.nodestream=!!t("readable-stream").Readable}catch(t){r.nodestream=!1}},{"readable-stream":16}],31:[function(t,e,s){"use strict";for(var o=t("./utils"),h=t("./support"),r=t("./nodejsUtils"),i=t("./stream/GenericWorker"),u=new Array(256),n=0;n<256;n++)u[n]=252<=n?6:248<=n?5:240<=n?4:224<=n?3:192<=n?2:1;u[254]=u[254]=1;function a(){i.call(this,"utf-8 decode"),this.leftOver=null}function l(){i.call(this,"utf-8 encode")}s.utf8encode=function(t){return h.nodebuffer?r.newBufferFrom(t,"utf-8"):function(t){var e,r,i,n,s,a=t.length,o=0;for(n=0;n<a;n++)55296==(64512&(r=t.charCodeAt(n)))&&n+1<a&&56320==(64512&(i=t.charCodeAt(n+1)))&&(r=65536+(r-55296<<10)+(i-56320),n++),o+=r<128?1:r<2048?2:r<65536?3:4;for(e=h.uint8array?new Uint8Array(o):new Array(o),n=s=0;s<o;n++)55296==(64512&(r=t.charCodeAt(n)))&&n+1<a&&56320==(64512&(i=t.charCodeAt(n+1)))&&(r=65536+(r-55296<<10)+(i-56320),n++),r<128?e[s++]=r:(r<2048?e[s++]=192|r>>>6:(r<65536?e[s++]=224|r>>>12:(e[s++]=240|r>>>18,e[s++]=128|r>>>12&63),e[s++]=128|r>>>6&63),e[s++]=128|63&r);return e}(t)},s.utf8decode=function(t){return h.nodebuffer?o.transformTo("nodebuffer",t).toString("utf-8"):function(t){var e,r,i,n,s=t.length,a=new Array(2*s);for(e=r=0;e<s;)if((i=t[e++])<128)a[r++]=i;else if(4<(n=u[i]))a[r++]=65533,e+=n-1;else{for(i&=2===n?31:3===n?15:7;1<n&&e<s;)i=i<<6|63&t[e++],n--;1<n?a[r++]=65533:i<65536?a[r++]=i:(i-=65536,a[r++]=55296|i>>10&1023,a[r++]=56320|1023&i)}return a.length!==r&&(a.subarray?a=a.subarray(0,r):a.length=r),o.applyFromCharCode(a)}(t=o.transformTo(h.uint8array?"uint8array":"array",t))},o.inherits(a,i),a.prototype.processChunk=function(t){var e=o.transformTo(h.uint8array?"uint8array":"array",t.data);if(this.leftOver&&this.leftOver.length){if(h.uint8array){var r=e;(e=new Uint8Array(r.length+this.leftOver.length)).set(this.leftOver,0),e.set(r,this.leftOver.length)}else e=this.leftOver.concat(e);this.leftOver=null}var i=function(t,e){var r;for((e=e||t.length)>t.length&&(e=t.length),r=e-1;0<=r&&128==(192&t[r]);)r--;return r<0?e:0===r?e:r+u[t[r]]>e?r:e}(e),n=e;i!==e.length&&(h.uint8array?(n=e.subarray(0,i),this.leftOver=e.subarray(i,e.length)):(n=e.slice(0,i),this.leftOver=e.slice(i,e.length))),this.push({data:s.utf8decode(n),meta:t.meta})},a.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:s.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},s.Utf8DecodeWorker=a,o.inherits(l,i),l.prototype.processChunk=function(t){this.push({data:s.utf8encode(t.data),meta:t.meta})},s.Utf8EncodeWorker=l},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(t,e,a){"use strict";var o=t("./support"),h=t("./base64"),r=t("./nodejsUtils"),i=t("set-immediate-shim"),u=t("./external");function n(t){return t}function l(t,e){for(var r=0;r<t.length;++r)e[r]=255&t.charCodeAt(r);return e}a.newBlob=function(e,r){a.checkSupport("blob");try{return new Blob([e],{type:r})}catch(t){try{var i=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return i.append(e),i.getBlob(r)}catch(t){throw new Error("Bug : can't construct the Blob.")}}};var s={stringifyByChunk:function(t,e,r){var i=[],n=0,s=t.length;if(s<=r)return String.fromCharCode.apply(null,t);for(;n<s;)"array"===e||"nodebuffer"===e?i.push(String.fromCharCode.apply(null,t.slice(n,Math.min(n+r,s)))):i.push(String.fromCharCode.apply(null,t.subarray(n,Math.min(n+r,s)))),n+=r;return i.join("")},stringifyByChar:function(t){for(var e="",r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},applyCanBeUsed:{uint8array:function(){try{return o.uint8array&&1===String.fromCharCode.apply(null,new Uint8Array(1)).length}catch(t){return!1}}(),nodebuffer:function(){try{return o.nodebuffer&&1===String.fromCharCode.apply(null,r.allocBuffer(1)).length}catch(t){return!1}}()}};function f(t){var e=65536,r=a.getTypeOf(t),i=!0;if("uint8array"===r?i=s.applyCanBeUsed.uint8array:"nodebuffer"===r&&(i=s.applyCanBeUsed.nodebuffer),i)for(;1<e;)try{return s.stringifyByChunk(t,r,e)}catch(t){e=Math.floor(e/2)}return s.stringifyByChar(t)}function d(t,e){for(var r=0;r<t.length;r++)e[r]=t[r];return e}a.applyFromCharCode=f;var c={};c.string={string:n,array:function(t){return l(t,new Array(t.length))},arraybuffer:function(t){return c.string.uint8array(t).buffer},uint8array:function(t){return l(t,new Uint8Array(t.length))},nodebuffer:function(t){return l(t,r.allocBuffer(t.length))}},c.array={string:f,array:n,arraybuffer:function(t){return new Uint8Array(t).buffer},uint8array:function(t){return new Uint8Array(t)},nodebuffer:function(t){return r.newBufferFrom(t)}},c.arraybuffer={string:function(t){return f(new Uint8Array(t))},array:function(t){return d(new Uint8Array(t),new Array(t.byteLength))},arraybuffer:n,uint8array:function(t){return new Uint8Array(t)},nodebuffer:function(t){return r.newBufferFrom(new Uint8Array(t))}},c.uint8array={string:f,array:function(t){return d(t,new Array(t.length))},arraybuffer:function(t){return t.buffer},uint8array:n,nodebuffer:function(t){return r.newBufferFrom(t)}},c.nodebuffer={string:f,array:function(t){return d(t,new Array(t.length))},arraybuffer:function(t){return c.nodebuffer.uint8array(t).buffer},uint8array:function(t){return d(t,new Uint8Array(t.length))},nodebuffer:n},a.transformTo=function(t,e){if(e=e||"",!t)return e;a.checkSupport(t);var r=a.getTypeOf(e);return c[r][t](e)},a.resolve=function(t){for(var e=t.split("/"),r=[],i=0;i<e.length;i++){var n=e[i];"."===n||""===n&&0!==i&&i!==e.length-1||(".."===n?r.pop():r.push(n))}return r.join("/")},a.getTypeOf=function(t){return"string"==typeof t?"string":"[object Array]"===Object.prototype.toString.call(t)?"array":o.nodebuffer&&r.isBuffer(t)?"nodebuffer":o.uint8array&&t instanceof Uint8Array?"uint8array":o.arraybuffer&&t instanceof ArrayBuffer?"arraybuffer":void 0},a.checkSupport=function(t){if(!o[t.toLowerCase()])throw new Error(t+" is not supported by this platform")},a.MAX_VALUE_16BITS=65535,a.MAX_VALUE_32BITS=-1,a.pretty=function(t){var e,r,i="";for(r=0;r<(t||"").length;r++)i+="\\x"+((e=t.charCodeAt(r))<16?"0":"")+e.toString(16).toUpperCase();return i},a.delay=function(t,e,r){i(function(){t.apply(r||null,e||[])})},a.inherits=function(t,e){function r(){}r.prototype=e.prototype,t.prototype=new r},a.extend=function(){var t,e,r={};for(t=0;t<arguments.length;t++)for(e in arguments[t])arguments[t].hasOwnProperty(e)&&void 0===r[e]&&(r[e]=arguments[t][e]);return r},a.prepareContent=function(r,t,i,n,s){return u.Promise.resolve(t).then(function(i){return o.blob&&(i instanceof Blob||-1!==["[object File]","[object Blob]"].indexOf(Object.prototype.toString.call(i)))&&"undefined"!=typeof FileReader?new u.Promise(function(e,r){var t=new FileReader;t.onload=function(t){e(t.target.result)},t.onerror=function(t){r(t.target.error)},t.readAsArrayBuffer(i)}):i}).then(function(t){var e=a.getTypeOf(t);return e?("arraybuffer"===e?t=a.transformTo("uint8array",t):"string"===e&&(s?t=h.decode(t):i&&!0!==n&&(t=function(t){return l(t,o.uint8array?new Uint8Array(t.length):new Array(t.length))}(t))),t):u.Promise.reject(new Error("Can't read the data of '"+r+"'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,"set-immediate-shim":54}],33:[function(t,e,r){"use strict";var i=t("./reader/readerFor"),n=t("./utils"),s=t("./signature"),a=t("./zipEntry"),o=(t("./utf8"),t("./support"));function h(t){this.files=[],this.loadOptions=t}h.prototype={checkSignature:function(t){if(!this.reader.readAndCheckSignature(t)){this.reader.index-=4;var e=this.reader.readString(4);throw new Error("Corrupted zip or bug: unexpected signature ("+n.pretty(e)+", expected "+n.pretty(t)+")")}},isSignature:function(t,e){var r=this.reader.index;this.reader.setIndex(t);var i=this.reader.readString(4)===e;return this.reader.setIndex(r),i},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var t=this.reader.readData(this.zipCommentLength),e=o.uint8array?"uint8array":"array",r=n.transformTo(e,t);this.zipComment=this.loadOptions.decodeFileName(r)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var t,e,r,i=this.zip64EndOfCentralSize-44;0<i;)t=this.reader.readInt(2),e=this.reader.readInt(4),r=this.reader.readData(e),this.zip64ExtensibleData[t]={id:t,length:e,value:r}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var t,e;for(t=0;t<this.files.length;t++)e=this.files[t],this.reader.setIndex(e.localHeaderOffset),this.checkSignature(s.LOCAL_FILE_HEADER),e.readLocalPart(this.reader),e.handleUTF8(),e.processAttributes()},readCentralDir:function(){var t;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(s.CENTRAL_FILE_HEADER);)(t=new a({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(t);if(this.centralDirRecords!==this.files.length&&0!==this.centralDirRecords&&0===this.files.length)throw new Error("Corrupted zip or bug: expected "+this.centralDirRecords+" records in central dir, got "+this.files.length)},readEndOfCentral:function(){var t=this.reader.lastIndexOfSignature(s.CENTRAL_DIRECTORY_END);if(t<0)throw!this.isSignature(0,s.LOCAL_FILE_HEADER)?new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html"):new Error("Corrupted zip: can't find end of central directory");this.reader.setIndex(t);var e=t;if(this.checkSignature(s.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===n.MAX_VALUE_16BITS||this.diskWithCentralDirStart===n.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===n.MAX_VALUE_16BITS||this.centralDirRecords===n.MAX_VALUE_16BITS||this.centralDirSize===n.MAX_VALUE_32BITS||this.centralDirOffset===n.MAX_VALUE_32BITS){if(this.zip64=!0,(t=this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");if(this.reader.setIndex(t),this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,s.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var r=this.centralDirOffset+this.centralDirSize;this.zip64&&(r+=20,r+=12+this.zip64EndOfCentralSize);var i=e-r;if(0<i)this.isSignature(e,s.CENTRAL_FILE_HEADER)||(this.reader.zero=i);else if(i<0)throw new Error("Corrupted zip: missing "+Math.abs(i)+" bytes.")},prepareReader:function(t){this.reader=i(t)},load:function(t){this.prepareReader(t),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},e.exports=h},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utf8":31,"./utils":32,"./zipEntry":34}],34:[function(t,e,r){"use strict";var i=t("./reader/readerFor"),s=t("./utils"),n=t("./compressedObject"),a=t("./crc32"),o=t("./utf8"),h=t("./compressions"),u=t("./support");function l(t,e){this.options=t,this.loadOptions=e}l.prototype={isEncrypted:function(){return 1==(1&this.bitFlag)},useUTF8:function(){return 2048==(2048&this.bitFlag)},readLocalPart:function(t){var e,r;if(t.skip(22),this.fileNameLength=t.readInt(2),r=t.readInt(2),this.fileName=t.readData(this.fileNameLength),t.skip(r),-1===this.compressedSize||-1===this.uncompressedSize)throw new Error("Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)");if(null===(e=function(t){for(var e in h)if(h.hasOwnProperty(e)&&h[e].magic===t)return h[e];return null}(this.compressionMethod)))throw new Error("Corrupted zip : compression "+s.pretty(this.compressionMethod)+" unknown (inner file : "+s.transformTo("string",this.fileName)+")");this.decompressed=new n(this.compressedSize,this.uncompressedSize,this.crc32,e,t.readData(this.compressedSize))},readCentralPart:function(t){this.versionMadeBy=t.readInt(2),t.skip(2),this.bitFlag=t.readInt(2),this.compressionMethod=t.readString(2),this.date=t.readDate(),this.crc32=t.readInt(4),this.compressedSize=t.readInt(4),this.uncompressedSize=t.readInt(4);var e=t.readInt(2);if(this.extraFieldsLength=t.readInt(2),this.fileCommentLength=t.readInt(2),this.diskNumberStart=t.readInt(2),this.internalFileAttributes=t.readInt(2),this.externalFileAttributes=t.readInt(4),this.localHeaderOffset=t.readInt(4),this.isEncrypted())throw new Error("Encrypted zip are not supported");t.skip(e),this.readExtraFields(t),this.parseZIP64ExtraField(t),this.fileComment=t.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var t=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),0==t&&(this.dosPermissions=63&this.externalFileAttributes),3==t&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||"/"!==this.fileNameStr.slice(-1)||(this.dir=!0)},parseZIP64ExtraField:function(t){if(this.extraFields[1]){var e=i(this.extraFields[1].value);this.uncompressedSize===s.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===s.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===s.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===s.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(t){var e,r,i,n=t.index+this.extraFieldsLength;for(this.extraFields||(this.extraFields={});t.index+4<n;)e=t.readInt(2),r=t.readInt(2),i=t.readData(r),this.extraFields[e]={id:e,length:r,value:i};t.setIndex(n)},handleUTF8:function(){var t=u.uint8array?"uint8array":"array";if(this.useUTF8())this.fileNameStr=o.utf8decode(this.fileName),this.fileCommentStr=o.utf8decode(this.fileComment);else{var e=this.findExtraFieldUnicodePath();if(null!==e)this.fileNameStr=e;else{var r=s.transformTo(t,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(r)}var i=this.findExtraFieldUnicodeComment();if(null!==i)this.fileCommentStr=i;else{var n=s.transformTo(t,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(n)}}},findExtraFieldUnicodePath:function(){var t=this.extraFields[28789];if(t){var e=i(t.value);return 1!==e.readInt(1)?null:a(this.fileName)!==e.readInt(4)?null:o.utf8decode(e.readData(t.length-5))}return null},findExtraFieldUnicodeComment:function(){var t=this.extraFields[25461];if(t){var e=i(t.value);return 1!==e.readInt(1)?null:a(this.fileComment)!==e.readInt(4)?null:o.utf8decode(e.readData(t.length-5))}return null}},e.exports=l},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(t,e,r){"use strict";function i(t,e,r){this.name=t,this.dir=r.dir,this.date=r.date,this.comment=r.comment,this.unixPermissions=r.unixPermissions,this.dosPermissions=r.dosPermissions,this._data=e,this._dataBinary=r.binary,this.options={compression:r.compression,compressionOptions:r.compressionOptions}}var s=t("./stream/StreamHelper"),n=t("./stream/DataWorker"),a=t("./utf8"),o=t("./compressedObject"),h=t("./stream/GenericWorker");i.prototype={internalStream:function(t){var e=null,r="string";try{if(!t)throw new Error("No output type specified.");var i="string"===(r=t.toLowerCase())||"text"===r;"binarystring"!==r&&"text"!==r||(r="string"),e=this._decompressWorker();var n=!this._dataBinary;n&&!i&&(e=e.pipe(new a.Utf8EncodeWorker)),!n&&i&&(e=e.pipe(new a.Utf8DecodeWorker))}catch(t){(e=new h("error")).error(t)}return new s(e,r,"")},async:function(t,e){return this.internalStream(t).accumulate(e)},nodeStream:function(t,e){return this.internalStream(t||"nodebuffer").toNodejsStream(e)},_compressWorker:function(t,e){if(this._data instanceof o&&this._data.compression.magic===t.magic)return this._data.getCompressedWorker();var r=this._decompressWorker();return this._dataBinary||(r=r.pipe(new a.Utf8EncodeWorker)),o.createWorkerFrom(r,t,e)},_decompressWorker:function(){return this._data instanceof o?this._data.getContentWorker():this._data instanceof h?this._data:new n(this._data)}};for(var u=["asText","asBinary","asNodeBuffer","asUint8Array","asArrayBuffer"],l=function(){throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.")},f=0;f<u.length;f++)i.prototype[u[f]]=l;e.exports=i},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(t,l,e){(function(e){"use strict";var r,i,t=e.MutationObserver||e.WebKitMutationObserver;if(t){var n=0,s=new t(u),a=e.document.createTextNode("");s.observe(a,{characterData:!0}),r=function(){a.data=n=++n%2}}else if(e.setImmediate||void 0===e.MessageChannel)r="document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){u(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(u,0)};else{var o=new e.MessageChannel;o.port1.onmessage=u,r=function(){o.port2.postMessage(0)}}var h=[];function u(){var t,e;i=!0;for(var r=h.length;r;){for(e=h,h=[],t=-1;++t<r;)e[t]();r=h.length}i=!1}l.exports=function(t){1!==h.push(t)||i||r()}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],37:[function(t,e,r){"use strict";var n=t("immediate");function u(){}var l={},s=["REJECTED"],a=["FULFILLED"],i=["PENDING"];function o(t){if("function"!=typeof t)throw new TypeError("resolver must be a function");this.state=i,this.queue=[],this.outcome=void 0,t!==u&&c(this,t)}function h(t,e,r){this.promise=t,"function"==typeof e&&(this.onFulfilled=e,this.callFulfilled=this.otherCallFulfilled),"function"==typeof r&&(this.onRejected=r,this.callRejected=this.otherCallRejected)}function f(e,r,i){n(function(){var t;try{t=r(i)}catch(t){return l.reject(e,t)}t===e?l.reject(e,new TypeError("Cannot resolve promise with itself")):l.resolve(e,t)})}function d(t){var e=t&&t.then;if(t&&("object"==typeof t||"function"==typeof t)&&"function"==typeof e)return function(){e.apply(t,arguments)}}function c(e,t){var r=!1;function i(t){r||(r=!0,l.reject(e,t))}function n(t){r||(r=!0,l.resolve(e,t))}var s=p(function(){t(n,i)});"error"===s.status&&i(s.value)}function p(t,e){var r={};try{r.value=t(e),r.status="success"}catch(t){r.status="error",r.value=t}return r}(e.exports=o).prototype.finally=function(e){if("function"!=typeof e)return this;var r=this.constructor;return this.then(function(t){return r.resolve(e()).then(function(){return t})},function(t){return r.resolve(e()).then(function(){throw t})})},o.prototype.catch=function(t){return this.then(null,t)},o.prototype.then=function(t,e){if("function"!=typeof t&&this.state===a||"function"!=typeof e&&this.state===s)return this;var r=new this.constructor(u);this.state!==i?f(r,this.state===a?t:e,this.outcome):this.queue.push(new h(r,t,e));return r},h.prototype.callFulfilled=function(t){l.resolve(this.promise,t)},h.prototype.otherCallFulfilled=function(t){f(this.promise,this.onFulfilled,t)},h.prototype.callRejected=function(t){l.reject(this.promise,t)},h.prototype.otherCallRejected=function(t){f(this.promise,this.onRejected,t)},l.resolve=function(t,e){var r=p(d,e);if("error"===r.status)return l.reject(t,r.value);var i=r.value;if(i)c(t,i);else{t.state=a,t.outcome=e;for(var n=-1,s=t.queue.length;++n<s;)t.queue[n].callFulfilled(e)}return t},l.reject=function(t,e){t.state=s,t.outcome=e;for(var r=-1,i=t.queue.length;++r<i;)t.queue[r].callRejected(e);return t},o.resolve=function(t){if(t instanceof this)return t;return l.resolve(new this(u),t)},o.reject=function(t){var e=new this(u);return l.reject(e,t)},o.all=function(t){var r=this;if("[object Array]"!==Object.prototype.toString.call(t))return this.reject(new TypeError("must be an array"));var i=t.length,n=!1;if(!i)return this.resolve([]);var s=new Array(i),a=0,e=-1,o=new this(u);for(;++e<i;)h(t[e],e);return o;function h(t,e){r.resolve(t).then(function(t){s[e]=t,++a!==i||n||(n=!0,l.resolve(o,s))},function(t){n||(n=!0,l.reject(o,t))})}},o.race=function(t){var e=this;if("[object Array]"!==Object.prototype.toString.call(t))return this.reject(new TypeError("must be an array"));var r=t.length,i=!1;if(!r)return this.resolve([]);var n=-1,s=new this(u);for(;++n<r;)a=t[n],e.resolve(a).then(function(t){i||(i=!0,l.resolve(s,t))},function(t){i||(i=!0,l.reject(s,t))});var a;return s}},{immediate:36}],38:[function(t,e,r){"use strict";var i={};(0,t("./lib/utils/common").assign)(i,t("./lib/deflate"),t("./lib/inflate"),t("./lib/zlib/constants")),e.exports=i},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(t,e,r){"use strict";var a=t("./zlib/deflate"),o=t("./utils/common"),h=t("./utils/strings"),n=t("./zlib/messages"),s=t("./zlib/zstream"),u=Object.prototype.toString,l=0,f=-1,d=0,c=8;function p(t){if(!(this instanceof p))return new p(t);this.options=o.assign({level:f,method:c,chunkSize:16384,windowBits:15,memLevel:8,strategy:d,to:""},t||{});var e=this.options;e.raw&&0<e.windowBits?e.windowBits=-e.windowBits:e.gzip&&0<e.windowBits&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new s,this.strm.avail_out=0;var r=a.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(r!==l)throw new Error(n[r]);if(e.header&&a.deflateSetHeader(this.strm,e.header),e.dictionary){var i;if(i="string"==typeof e.dictionary?h.string2buf(e.dictionary):"[object ArrayBuffer]"===u.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,(r=a.deflateSetDictionary(this.strm,i))!==l)throw new Error(n[r]);this._dict_set=!0}}function i(t,e){var r=new p(e);if(r.push(t,!0),r.err)throw r.msg||n[r.err];return r.result}p.prototype.push=function(t,e){var r,i,n=this.strm,s=this.options.chunkSize;if(this.ended)return!1;i=e===~~e?e:!0===e?4:0,"string"==typeof t?n.input=h.string2buf(t):"[object ArrayBuffer]"===u.call(t)?n.input=new Uint8Array(t):n.input=t,n.next_in=0,n.avail_in=n.input.length;do{if(0===n.avail_out&&(n.output=new o.Buf8(s),n.next_out=0,n.avail_out=s),1!==(r=a.deflate(n,i))&&r!==l)return this.onEnd(r),!(this.ended=!0);0!==n.avail_out&&(0!==n.avail_in||4!==i&&2!==i)||("string"===this.options.to?this.onData(h.buf2binstring(o.shrinkBuf(n.output,n.next_out))):this.onData(o.shrinkBuf(n.output,n.next_out)))}while((0<n.avail_in||0===n.avail_out)&&1!==r);return 4===i?(r=a.deflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===l):2!==i||(this.onEnd(l),!(n.avail_out=0))},p.prototype.onData=function(t){this.chunks.push(t)},p.prototype.onEnd=function(t){t===l&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=o.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},r.Deflate=p,r.deflate=i,r.deflateRaw=function(t,e){return(e=e||{}).raw=!0,i(t,e)},r.gzip=function(t,e){return(e=e||{}).gzip=!0,i(t,e)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(t,e,r){"use strict";var d=t("./zlib/inflate"),c=t("./utils/common"),p=t("./utils/strings"),m=t("./zlib/constants"),i=t("./zlib/messages"),n=t("./zlib/zstream"),s=t("./zlib/gzheader"),_=Object.prototype.toString;function a(t){if(!(this instanceof a))return new a(t);this.options=c.assign({chunkSize:16384,windowBits:0,to:""},t||{});var e=this.options;e.raw&&0<=e.windowBits&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(0<=e.windowBits&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),15<e.windowBits&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new n,this.strm.avail_out=0;var r=d.inflateInit2(this.strm,e.windowBits);if(r!==m.Z_OK)throw new Error(i[r]);this.header=new s,d.inflateGetHeader(this.strm,this.header)}function o(t,e){var r=new a(e);if(r.push(t,!0),r.err)throw r.msg||i[r.err];return r.result}a.prototype.push=function(t,e){var r,i,n,s,a,o,h=this.strm,u=this.options.chunkSize,l=this.options.dictionary,f=!1;if(this.ended)return!1;i=e===~~e?e:!0===e?m.Z_FINISH:m.Z_NO_FLUSH,"string"==typeof t?h.input=p.binstring2buf(t):"[object ArrayBuffer]"===_.call(t)?h.input=new Uint8Array(t):h.input=t,h.next_in=0,h.avail_in=h.input.length;do{if(0===h.avail_out&&(h.output=new c.Buf8(u),h.next_out=0,h.avail_out=u),(r=d.inflate(h,m.Z_NO_FLUSH))===m.Z_NEED_DICT&&l&&(o="string"==typeof l?p.string2buf(l):"[object ArrayBuffer]"===_.call(l)?new Uint8Array(l):l,r=d.inflateSetDictionary(this.strm,o)),r===m.Z_BUF_ERROR&&!0===f&&(r=m.Z_OK,f=!1),r!==m.Z_STREAM_END&&r!==m.Z_OK)return this.onEnd(r),!(this.ended=!0);h.next_out&&(0!==h.avail_out&&r!==m.Z_STREAM_END&&(0!==h.avail_in||i!==m.Z_FINISH&&i!==m.Z_SYNC_FLUSH)||("string"===this.options.to?(n=p.utf8border(h.output,h.next_out),s=h.next_out-n,a=p.buf2string(h.output,n),h.next_out=s,h.avail_out=u-s,s&&c.arraySet(h.output,h.output,n,s,0),this.onData(a)):this.onData(c.shrinkBuf(h.output,h.next_out)))),0===h.avail_in&&0===h.avail_out&&(f=!0)}while((0<h.avail_in||0===h.avail_out)&&r!==m.Z_STREAM_END);return r===m.Z_STREAM_END&&(i=m.Z_FINISH),i===m.Z_FINISH?(r=d.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,r===m.Z_OK):i!==m.Z_SYNC_FLUSH||(this.onEnd(m.Z_OK),!(h.avail_out=0))},a.prototype.onData=function(t){this.chunks.push(t)},a.prototype.onEnd=function(t){t===m.Z_OK&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=c.flattenChunks(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg},r.Inflate=a,r.inflate=o,r.inflateRaw=function(t,e){return(e=e||{}).raw=!0,o(t,e)},r.ungzip=o},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(t,e,r){"use strict";var i="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;r.assign=function(t){for(var e=Array.prototype.slice.call(arguments,1);e.length;){var r=e.shift();if(r){if("object"!=typeof r)throw new TypeError(r+"must be non-object");for(var i in r)r.hasOwnProperty(i)&&(t[i]=r[i])}}return t},r.shrinkBuf=function(t,e){return t.length===e?t:t.subarray?t.subarray(0,e):(t.length=e,t)};var n={arraySet:function(t,e,r,i,n){if(e.subarray&&t.subarray)t.set(e.subarray(r,r+i),n);else for(var s=0;s<i;s++)t[n+s]=e[r+s]},flattenChunks:function(t){var e,r,i,n,s,a;for(e=i=0,r=t.length;e<r;e++)i+=t[e].length;for(a=new Uint8Array(i),e=n=0,r=t.length;e<r;e++)s=t[e],a.set(s,n),n+=s.length;return a}},s={arraySet:function(t,e,r,i,n){for(var s=0;s<i;s++)t[n+s]=e[r+s]},flattenChunks:function(t){return[].concat.apply([],t)}};r.setTyped=function(t){t?(r.Buf8=Uint8Array,r.Buf16=Uint16Array,r.Buf32=Int32Array,r.assign(r,n)):(r.Buf8=Array,r.Buf16=Array,r.Buf32=Array,r.assign(r,s))},r.setTyped(i)},{}],42:[function(t,e,r){"use strict";var h=t("./common"),n=!0,s=!0;try{String.fromCharCode.apply(null,[0])}catch(t){n=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){s=!1}for(var u=new h.Buf8(256),i=0;i<256;i++)u[i]=252<=i?6:248<=i?5:240<=i?4:224<=i?3:192<=i?2:1;function l(t,e){if(e<65537&&(t.subarray&&s||!t.subarray&&n))return String.fromCharCode.apply(null,h.shrinkBuf(t,e));for(var r="",i=0;i<e;i++)r+=String.fromCharCode(t[i]);return r}u[254]=u[254]=1,r.string2buf=function(t){var e,r,i,n,s,a=t.length,o=0;for(n=0;n<a;n++)55296==(64512&(r=t.charCodeAt(n)))&&n+1<a&&56320==(64512&(i=t.charCodeAt(n+1)))&&(r=65536+(r-55296<<10)+(i-56320),n++),o+=r<128?1:r<2048?2:r<65536?3:4;for(e=new h.Buf8(o),n=s=0;s<o;n++)55296==(64512&(r=t.charCodeAt(n)))&&n+1<a&&56320==(64512&(i=t.charCodeAt(n+1)))&&(r=65536+(r-55296<<10)+(i-56320),n++),r<128?e[s++]=r:(r<2048?e[s++]=192|r>>>6:(r<65536?e[s++]=224|r>>>12:(e[s++]=240|r>>>18,e[s++]=128|r>>>12&63),e[s++]=128|r>>>6&63),e[s++]=128|63&r);return e},r.buf2binstring=function(t){return l(t,t.length)},r.binstring2buf=function(t){for(var e=new h.Buf8(t.length),r=0,i=e.length;r<i;r++)e[r]=t.charCodeAt(r);return e},r.buf2string=function(t,e){var r,i,n,s,a=e||t.length,o=new Array(2*a);for(r=i=0;r<a;)if((n=t[r++])<128)o[i++]=n;else if(4<(s=u[n]))o[i++]=65533,r+=s-1;else{for(n&=2===s?31:3===s?15:7;1<s&&r<a;)n=n<<6|63&t[r++],s--;1<s?o[i++]=65533:n<65536?o[i++]=n:(n-=65536,o[i++]=55296|n>>10&1023,o[i++]=56320|1023&n)}return l(o,i)},r.utf8border=function(t,e){var r;for((e=e||t.length)>t.length&&(e=t.length),r=e-1;0<=r&&128==(192&t[r]);)r--;return r<0?e:0===r?e:r+u[t[r]]>e?r:e}},{"./common":41}],43:[function(t,e,r){"use strict";e.exports=function(t,e,r,i){for(var n=65535&t|0,s=t>>>16&65535|0,a=0;0!==r;){for(r-=a=2e3<r?2e3:r;s=s+(n=n+e[i++]|0)|0,--a;);n%=65521,s%=65521}return n|s<<16|0}},{}],44:[function(t,e,r){"use strict";e.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],45:[function(t,e,r){"use strict";var o=function(){for(var t,e=[],r=0;r<256;r++){t=r;for(var i=0;i<8;i++)t=1&t?3988292384^t>>>1:t>>>1;e[r]=t}return e}();e.exports=function(t,e,r,i){var n=o,s=i+r;t^=-1;for(var a=i;a<s;a++)t=t>>>8^n[255&(t^e[a])];return-1^t}},{}],46:[function(t,e,r){"use strict";var h,d=t("../utils/common"),u=t("./trees"),c=t("./adler32"),p=t("./crc32"),i=t("./messages"),l=0,f=4,m=0,_=-2,g=-1,b=4,n=2,v=8,y=9,s=286,a=30,o=19,w=2*s+1,k=15,x=3,S=258,z=S+x+1,C=42,E=113,A=1,I=2,O=3,B=4;function R(t,e){return t.msg=i[e],e}function T(t){return(t<<1)-(4<t?9:0)}function D(t){for(var e=t.length;0<=--e;)t[e]=0}function F(t){var e=t.state,r=e.pending;r>t.avail_out&&(r=t.avail_out),0!==r&&(d.arraySet(t.output,e.pending_buf,e.pending_out,r,t.next_out),t.next_out+=r,e.pending_out+=r,t.total_out+=r,t.avail_out-=r,e.pending-=r,0===e.pending&&(e.pending_out=0))}function N(t,e){u._tr_flush_block(t,0<=t.block_start?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,F(t.strm)}function U(t,e){t.pending_buf[t.pending++]=e}function P(t,e){t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e}function L(t,e){var r,i,n=t.max_chain_length,s=t.strstart,a=t.prev_length,o=t.nice_match,h=t.strstart>t.w_size-z?t.strstart-(t.w_size-z):0,u=t.window,l=t.w_mask,f=t.prev,d=t.strstart+S,c=u[s+a-1],p=u[s+a];t.prev_length>=t.good_match&&(n>>=2),o>t.lookahead&&(o=t.lookahead);do{if(u[(r=e)+a]===p&&u[r+a-1]===c&&u[r]===u[s]&&u[++r]===u[s+1]){s+=2,r++;do{}while(u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&u[++s]===u[++r]&&s<d);if(i=S-(d-s),s=d-S,a<i){if(t.match_start=e,o<=(a=i))break;c=u[s+a-1],p=u[s+a]}}}while((e=f[e&l])>h&&0!=--n);return a<=t.lookahead?a:t.lookahead}function j(t){var e,r,i,n,s,a,o,h,u,l,f=t.w_size;do{if(n=t.window_size-t.lookahead-t.strstart,t.strstart>=f+(f-z)){for(d.arraySet(t.window,t.window,f,f,0),t.match_start-=f,t.strstart-=f,t.block_start-=f,e=r=t.hash_size;i=t.head[--e],t.head[e]=f<=i?i-f:0,--r;);for(e=r=f;i=t.prev[--e],t.prev[e]=f<=i?i-f:0,--r;);n+=f}if(0===t.strm.avail_in)break;if(a=t.strm,o=t.window,h=t.strstart+t.lookahead,u=n,l=void 0,l=a.avail_in,u<l&&(l=u),r=0===l?0:(a.avail_in-=l,d.arraySet(o,a.input,a.next_in,l,h),1===a.state.wrap?a.adler=c(a.adler,o,l,h):2===a.state.wrap&&(a.adler=p(a.adler,o,l,h)),a.next_in+=l,a.total_in+=l,l),t.lookahead+=r,t.lookahead+t.insert>=x)for(s=t.strstart-t.insert,t.ins_h=t.window[s],t.ins_h=(t.ins_h<<t.hash_shift^t.window[s+1])&t.hash_mask;t.insert&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[s+x-1])&t.hash_mask,t.prev[s&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=s,s++,t.insert--,!(t.lookahead+t.insert<x)););}while(t.lookahead<z&&0!==t.strm.avail_in)}function Z(t,e){for(var r,i;;){if(t.lookahead<z){if(j(t),t.lookahead<z&&e===l)return A;if(0===t.lookahead)break}if(r=0,t.lookahead>=x&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+x-1])&t.hash_mask,r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==r&&t.strstart-r<=t.w_size-z&&(t.match_length=L(t,r)),t.match_length>=x)if(i=u._tr_tally(t,t.strstart-t.match_start,t.match_length-x),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=x){for(t.match_length--;t.strstart++,t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+x-1])&t.hash_mask,r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart,0!=--t.match_length;);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+1])&t.hash_mask;else i=u._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(i&&(N(t,!1),0===t.strm.avail_out))return A}return t.insert=t.strstart<x-1?t.strstart:x-1,e===f?(N(t,!0),0===t.strm.avail_out?O:B):t.last_lit&&(N(t,!1),0===t.strm.avail_out)?A:I}function W(t,e){for(var r,i,n;;){if(t.lookahead<z){if(j(t),t.lookahead<z&&e===l)return A;if(0===t.lookahead)break}if(r=0,t.lookahead>=x&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+x-1])&t.hash_mask,r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=x-1,0!==r&&t.prev_length<t.max_lazy_match&&t.strstart-r<=t.w_size-z&&(t.match_length=L(t,r),t.match_length<=5&&(1===t.strategy||t.match_length===x&&4096<t.strstart-t.match_start)&&(t.match_length=x-1)),t.prev_length>=x&&t.match_length<=t.prev_length){for(n=t.strstart+t.lookahead-x,i=u._tr_tally(t,t.strstart-1-t.prev_match,t.prev_length-x),t.lookahead-=t.prev_length-1,t.prev_length-=2;++t.strstart<=n&&(t.ins_h=(t.ins_h<<t.hash_shift^t.window[t.strstart+x-1])&t.hash_mask,r=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!=--t.prev_length;);if(t.match_available=0,t.match_length=x-1,t.strstart++,i&&(N(t,!1),0===t.strm.avail_out))return A}else if(t.match_available){if((i=u._tr_tally(t,0,t.window[t.strstart-1]))&&N(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return A}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(i=u._tr_tally(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<x-1?t.strstart:x-1,e===f?(N(t,!0),0===t.strm.avail_out?O:B):t.last_lit&&(N(t,!1),0===t.strm.avail_out)?A:I}function M(t,e,r,i,n){this.good_length=t,this.max_lazy=e,this.nice_length=r,this.max_chain=i,this.func=n}function H(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=v,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new d.Buf16(2*w),this.dyn_dtree=new d.Buf16(2*(2*a+1)),this.bl_tree=new d.Buf16(2*(2*o+1)),D(this.dyn_ltree),D(this.dyn_dtree),D(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new d.Buf16(k+1),this.heap=new d.Buf16(2*s+1),D(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new d.Buf16(2*s+1),D(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function G(t){var e;return t&&t.state?(t.total_in=t.total_out=0,t.data_type=n,(e=t.state).pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=e.wrap?C:E,t.adler=2===e.wrap?0:1,e.last_flush=l,u._tr_init(e),m):R(t,_)}function K(t){var e=G(t);return e===m&&function(t){t.window_size=2*t.w_size,D(t.head),t.max_lazy_match=h[t.level].max_lazy,t.good_match=h[t.level].good_length,t.nice_match=h[t.level].nice_length,t.max_chain_length=h[t.level].max_chain,t.strstart=0,t.block_start=0,t.lookahead=0,t.insert=0,t.match_length=t.prev_length=x-1,t.match_available=0,t.ins_h=0}(t.state),e}function Y(t,e,r,i,n,s){if(!t)return _;var a=1;if(e===g&&(e=6),i<0?(a=0,i=-i):15<i&&(a=2,i-=16),n<1||y<n||r!==v||i<8||15<i||e<0||9<e||s<0||b<s)return R(t,_);8===i&&(i=9);var o=new H;return(t.state=o).strm=t,o.wrap=a,o.gzhead=null,o.w_bits=i,o.w_size=1<<o.w_bits,o.w_mask=o.w_size-1,o.hash_bits=n+7,o.hash_size=1<<o.hash_bits,o.hash_mask=o.hash_size-1,o.hash_shift=~~((o.hash_bits+x-1)/x),o.window=new d.Buf8(2*o.w_size),o.head=new d.Buf16(o.hash_size),o.prev=new d.Buf16(o.w_size),o.lit_bufsize=1<<n+6,o.pending_buf_size=4*o.lit_bufsize,o.pending_buf=new d.Buf8(o.pending_buf_size),o.d_buf=1*o.lit_bufsize,o.l_buf=3*o.lit_bufsize,o.level=e,o.strategy=s,o.method=r,K(t)}h=[new M(0,0,0,0,function(t,e){var r=65535;for(r>t.pending_buf_size-5&&(r=t.pending_buf_size-5);;){if(t.lookahead<=1){if(j(t),0===t.lookahead&&e===l)return A;if(0===t.lookahead)break}t.strstart+=t.lookahead,t.lookahead=0;var i=t.block_start+r;if((0===t.strstart||t.strstart>=i)&&(t.lookahead=t.strstart-i,t.strstart=i,N(t,!1),0===t.strm.avail_out))return A;if(t.strstart-t.block_start>=t.w_size-z&&(N(t,!1),0===t.strm.avail_out))return A}return t.insert=0,e===f?(N(t,!0),0===t.strm.avail_out?O:B):(t.strstart>t.block_start&&(N(t,!1),t.strm.avail_out),A)}),new M(4,4,8,4,Z),new M(4,5,16,8,Z),new M(4,6,32,32,Z),new M(4,4,16,16,W),new M(8,16,32,32,W),new M(8,16,128,128,W),new M(8,32,128,256,W),new M(32,128,258,1024,W),new M(32,258,258,4096,W)],r.deflateInit=function(t,e){return Y(t,e,v,15,8,0)},r.deflateInit2=Y,r.deflateReset=K,r.deflateResetKeep=G,r.deflateSetHeader=function(t,e){return t&&t.state?2!==t.state.wrap?_:(t.state.gzhead=e,m):_},r.deflate=function(t,e){var r,i,n,s;if(!t||!t.state||5<e||e<0)return t?R(t,_):_;if(i=t.state,!t.output||!t.input&&0!==t.avail_in||666===i.status&&e!==f)return R(t,0===t.avail_out?-5:_);if(i.strm=t,r=i.last_flush,i.last_flush=e,i.status===C)if(2===i.wrap)t.adler=0,U(i,31),U(i,139),U(i,8),i.gzhead?(U(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),U(i,255&i.gzhead.time),U(i,i.gzhead.time>>8&255),U(i,i.gzhead.time>>16&255),U(i,i.gzhead.time>>24&255),U(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),U(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(U(i,255&i.gzhead.extra.length),U(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(t.adler=p(t.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(U(i,0),U(i,0),U(i,0),U(i,0),U(i,0),U(i,9===i.level?2:2<=i.strategy||i.level<2?4:0),U(i,3),i.status=E);else{var a=v+(i.w_bits-8<<4)<<8;a|=(2<=i.strategy||i.level<2?0:i.level<6?1:6===i.level?2:3)<<6,0!==i.strstart&&(a|=32),a+=31-a%31,i.status=E,P(i,a),0!==i.strstart&&(P(i,t.adler>>>16),P(i,65535&t.adler)),t.adler=1}if(69===i.status)if(i.gzhead.extra){for(n=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>n&&(t.adler=p(t.adler,i.pending_buf,i.pending-n,n)),F(t),n=i.pending,i.pending!==i.pending_buf_size));)U(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>n&&(t.adler=p(t.adler,i.pending_buf,i.pending-n,n)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(73===i.status)if(i.gzhead.name){n=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>n&&(t.adler=p(t.adler,i.pending_buf,i.pending-n,n)),F(t),n=i.pending,i.pending===i.pending_buf_size)){s=1;break}s=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,U(i,s)}while(0!==s);i.gzhead.hcrc&&i.pending>n&&(t.adler=p(t.adler,i.pending_buf,i.pending-n,n)),0===s&&(i.gzindex=0,i.status=91)}else i.status=91;if(91===i.status)if(i.gzhead.comment){n=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>n&&(t.adler=p(t.adler,i.pending_buf,i.pending-n,n)),F(t),n=i.pending,i.pending===i.pending_buf_size)){s=1;break}s=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,U(i,s)}while(0!==s);i.gzhead.hcrc&&i.pending>n&&(t.adler=p(t.adler,i.pending_buf,i.pending-n,n)),0===s&&(i.status=103)}else i.status=103;if(103===i.status&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&F(t),i.pending+2<=i.pending_buf_size&&(U(i,255&t.adler),U(i,t.adler>>8&255),t.adler=0,i.status=E)):i.status=E),0!==i.pending){if(F(t),0===t.avail_out)return i.last_flush=-1,m}else if(0===t.avail_in&&T(e)<=T(r)&&e!==f)return R(t,-5);if(666===i.status&&0!==t.avail_in)return R(t,-5);if(0!==t.avail_in||0!==i.lookahead||e!==l&&666!==i.status){var o=2===i.strategy?function(t,e){for(var r;;){if(0===t.lookahead&&(j(t),0===t.lookahead)){if(e===l)return A;break}if(t.match_length=0,r=u._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,r&&(N(t,!1),0===t.strm.avail_out))return A}return t.insert=0,e===f?(N(t,!0),0===t.strm.avail_out?O:B):t.last_lit&&(N(t,!1),0===t.strm.avail_out)?A:I}(i,e):3===i.strategy?function(t,e){for(var r,i,n,s,a=t.window;;){if(t.lookahead<=S){if(j(t),t.lookahead<=S&&e===l)return A;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=x&&0<t.strstart&&(i=a[n=t.strstart-1])===a[++n]&&i===a[++n]&&i===a[++n]){s=t.strstart+S;do{}while(i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&i===a[++n]&&n<s);t.match_length=S-(s-n),t.match_length>t.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=x?(r=u._tr_tally(t,1,t.match_length-x),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(r=u._tr_tally(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),r&&(N(t,!1),0===t.strm.avail_out))return A}return t.insert=0,e===f?(N(t,!0),0===t.strm.avail_out?O:B):t.last_lit&&(N(t,!1),0===t.strm.avail_out)?A:I}(i,e):h[i.level].func(i,e);if(o!==O&&o!==B||(i.status=666),o===A||o===O)return 0===t.avail_out&&(i.last_flush=-1),m;if(o===I&&(1===e?u._tr_align(i):5!==e&&(u._tr_stored_block(i,0,0,!1),3===e&&(D(i.head),0===i.lookahead&&(i.strstart=0,i.block_start=0,i.insert=0))),F(t),0===t.avail_out))return i.last_flush=-1,m}return e!==f?m:i.wrap<=0?1:(2===i.wrap?(U(i,255&t.adler),U(i,t.adler>>8&255),U(i,t.adler>>16&255),U(i,t.adler>>24&255),U(i,255&t.total_in),U(i,t.total_in>>8&255),U(i,t.total_in>>16&255),U(i,t.total_in>>24&255)):(P(i,t.adler>>>16),P(i,65535&t.adler)),F(t),0<i.wrap&&(i.wrap=-i.wrap),0!==i.pending?m:1)},r.deflateEnd=function(t){var e;return t&&t.state?(e=t.state.status)!==C&&69!==e&&73!==e&&91!==e&&103!==e&&e!==E&&666!==e?R(t,_):(t.state=null,e===E?R(t,-3):m):_},r.deflateSetDictionary=function(t,e){var r,i,n,s,a,o,h,u,l=e.length;if(!t||!t.state)return _;if(2===(s=(r=t.state).wrap)||1===s&&r.status!==C||r.lookahead)return _;for(1===s&&(t.adler=c(t.adler,e,l,0)),r.wrap=0,l>=r.w_size&&(0===s&&(D(r.head),r.strstart=0,r.block_start=0,r.insert=0),u=new d.Buf8(r.w_size),d.arraySet(u,e,l-r.w_size,r.w_size,0),e=u,l=r.w_size),a=t.avail_in,o=t.next_in,h=t.input,t.avail_in=l,t.next_in=0,t.input=e,j(r);r.lookahead>=x;){for(i=r.strstart,n=r.lookahead-(x-1);r.ins_h=(r.ins_h<<r.hash_shift^r.window[i+x-1])&r.hash_mask,r.prev[i&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=i,i++,--n;);r.strstart=i,r.lookahead=x-1,j(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=x-1,r.match_available=0,t.next_in=o,t.input=h,t.avail_in=a,r.wrap=s,m},r.deflateInfo="pako deflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(t,e,r){"use strict";e.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}},{}],48:[function(t,e,r){"use strict";e.exports=function(t,e){var r,i,n,s,a,o,h,u,l,f,d,c,p,m,_,g,b,v,y,w,k,x,S,z,C;r=t.state,i=t.next_in,z=t.input,n=i+(t.avail_in-5),s=t.next_out,C=t.output,a=s-(e-t.avail_out),o=s+(t.avail_out-257),h=r.dmax,u=r.wsize,l=r.whave,f=r.wnext,d=r.window,c=r.hold,p=r.bits,m=r.lencode,_=r.distcode,g=(1<<r.lenbits)-1,b=(1<<r.distbits)-1;t:do{p<15&&(c+=z[i++]<<p,p+=8,c+=z[i++]<<p,p+=8),v=m[c&g];e:for(;;){if(c>>>=y=v>>>24,p-=y,0===(y=v>>>16&255))C[s++]=65535&v;else{if(!(16&y)){if(0==(64&y)){v=m[(65535&v)+(c&(1<<y)-1)];continue e}if(32&y){r.mode=12;break t}t.msg="invalid literal/length code",r.mode=30;break t}w=65535&v,(y&=15)&&(p<y&&(c+=z[i++]<<p,p+=8),w+=c&(1<<y)-1,c>>>=y,p-=y),p<15&&(c+=z[i++]<<p,p+=8,c+=z[i++]<<p,p+=8),v=_[c&b];r:for(;;){if(c>>>=y=v>>>24,p-=y,!(16&(y=v>>>16&255))){if(0==(64&y)){v=_[(65535&v)+(c&(1<<y)-1)];continue r}t.msg="invalid distance code",r.mode=30;break t}if(k=65535&v,p<(y&=15)&&(c+=z[i++]<<p,(p+=8)<y&&(c+=z[i++]<<p,p+=8)),h<(k+=c&(1<<y)-1)){t.msg="invalid distance too far back",r.mode=30;break t}if(c>>>=y,p-=y,(y=s-a)<k){if(l<(y=k-y)&&r.sane){t.msg="invalid distance too far back",r.mode=30;break t}if(S=d,(x=0)===f){if(x+=u-y,y<w){for(w-=y;C[s++]=d[x++],--y;);x=s-k,S=C}}else if(f<y){if(x+=u+f-y,(y-=f)<w){for(w-=y;C[s++]=d[x++],--y;);if(x=0,f<w){for(w-=y=f;C[s++]=d[x++],--y;);x=s-k,S=C}}}else if(x+=f-y,y<w){for(w-=y;C[s++]=d[x++],--y;);x=s-k,S=C}for(;2<w;)C[s++]=S[x++],C[s++]=S[x++],C[s++]=S[x++],w-=3;w&&(C[s++]=S[x++],1<w&&(C[s++]=S[x++]))}else{for(x=s-k;C[s++]=C[x++],C[s++]=C[x++],C[s++]=C[x++],2<(w-=3););w&&(C[s++]=C[x++],1<w&&(C[s++]=C[x++]))}break}}break}}while(i<n&&s<o);i-=w=p>>3,c&=(1<<(p-=w<<3))-1,t.next_in=i,t.next_out=s,t.avail_in=i<n?n-i+5:5-(i-n),t.avail_out=s<o?o-s+257:257-(s-o),r.hold=c,r.bits=p}},{}],49:[function(t,e,r){"use strict";var I=t("../utils/common"),O=t("./adler32"),B=t("./crc32"),R=t("./inffast"),T=t("./inftrees"),D=1,F=2,N=0,U=-2,P=1,i=852,n=592;function L(t){return(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24)}function s(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new I.Buf16(320),this.work=new I.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function a(t){var e;return t&&t.state?(e=t.state,t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=P,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new I.Buf32(i),e.distcode=e.distdyn=new I.Buf32(n),e.sane=1,e.back=-1,N):U}function o(t){var e;return t&&t.state?((e=t.state).wsize=0,e.whave=0,e.wnext=0,a(t)):U}function h(t,e){var r,i;return t&&t.state?(i=t.state,e<0?(r=0,e=-e):(r=1+(e>>4),e<48&&(e&=15)),e&&(e<8||15<e)?U:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=r,i.wbits=e,o(t))):U}function u(t,e){var r,i;return t?(i=new s,(t.state=i).window=null,(r=h(t,e))!==N&&(t.state=null),r):U}var l,f,d=!0;function j(t){if(d){var e;for(l=new I.Buf32(512),f=new I.Buf32(32),e=0;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(T(D,t.lens,0,288,l,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;T(F,t.lens,0,32,f,0,t.work,{bits:5}),d=!1}t.lencode=l,t.lenbits=9,t.distcode=f,t.distbits=5}function Z(t,e,r,i){var n,s=t.state;return null===s.window&&(s.wsize=1<<s.wbits,s.wnext=0,s.whave=0,s.window=new I.Buf8(s.wsize)),i>=s.wsize?(I.arraySet(s.window,e,r-s.wsize,s.wsize,0),s.wnext=0,s.whave=s.wsize):(i<(n=s.wsize-s.wnext)&&(n=i),I.arraySet(s.window,e,r-i,n,s.wnext),(i-=n)?(I.arraySet(s.window,e,r-i,i,0),s.wnext=i,s.whave=s.wsize):(s.wnext+=n,s.wnext===s.wsize&&(s.wnext=0),s.whave<s.wsize&&(s.whave+=n))),0}r.inflateReset=o,r.inflateReset2=h,r.inflateResetKeep=a,r.inflateInit=function(t){return u(t,15)},r.inflateInit2=u,r.inflate=function(t,e){var r,i,n,s,a,o,h,u,l,f,d,c,p,m,_,g,b,v,y,w,k,x,S,z,C=0,E=new I.Buf8(4),A=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!t||!t.state||!t.output||!t.input&&0!==t.avail_in)return U;12===(r=t.state).mode&&(r.mode=13),a=t.next_out,n=t.output,h=t.avail_out,s=t.next_in,i=t.input,o=t.avail_in,u=r.hold,l=r.bits,f=o,d=h,x=N;t:for(;;)switch(r.mode){case P:if(0===r.wrap){r.mode=13;break}for(;l<16;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}if(2&r.wrap&&35615===u){E[r.check=0]=255&u,E[1]=u>>>8&255,r.check=B(r.check,E,2,0),l=u=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&u)<<8)+(u>>8))%31){t.msg="incorrect header check",r.mode=30;break}if(8!=(15&u)){t.msg="unknown compression method",r.mode=30;break}if(l-=4,k=8+(15&(u>>>=4)),0===r.wbits)r.wbits=k;else if(k>r.wbits){t.msg="invalid window size",r.mode=30;break}r.dmax=1<<k,t.adler=r.check=1,r.mode=512&u?10:12,l=u=0;break;case 2:for(;l<16;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}if(r.flags=u,8!=(255&r.flags)){t.msg="unknown compression method",r.mode=30;break}if(57344&r.flags){t.msg="unknown header flags set",r.mode=30;break}r.head&&(r.head.text=u>>8&1),512&r.flags&&(E[0]=255&u,E[1]=u>>>8&255,r.check=B(r.check,E,2,0)),l=u=0,r.mode=3;case 3:for(;l<32;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}r.head&&(r.head.time=u),512&r.flags&&(E[0]=255&u,E[1]=u>>>8&255,E[2]=u>>>16&255,E[3]=u>>>24&255,r.check=B(r.check,E,4,0)),l=u=0,r.mode=4;case 4:for(;l<16;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}r.head&&(r.head.xflags=255&u,r.head.os=u>>8),512&r.flags&&(E[0]=255&u,E[1]=u>>>8&255,r.check=B(r.check,E,2,0)),l=u=0,r.mode=5;case 5:if(1024&r.flags){for(;l<16;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}r.length=u,r.head&&(r.head.extra_len=u),512&r.flags&&(E[0]=255&u,E[1]=u>>>8&255,r.check=B(r.check,E,2,0)),l=u=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(o<(c=r.length)&&(c=o),c&&(r.head&&(k=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Array(r.head.extra_len)),I.arraySet(r.head.extra,i,s,c,k)),512&r.flags&&(r.check=B(r.check,i,c,s)),o-=c,s+=c,r.length-=c),r.length))break t;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===o)break t;for(c=0;k=i[s+c++],r.head&&k&&r.length<65536&&(r.head.name+=String.fromCharCode(k)),k&&c<o;);if(512&r.flags&&(r.check=B(r.check,i,c,s)),o-=c,s+=c,k)break t}else r.head&&(r.head.name=null);r.length=0,r.mode=8;case 8:if(4096&r.flags){if(0===o)break t;for(c=0;k=i[s+c++],r.head&&k&&r.length<65536&&(r.head.comment+=String.fromCharCode(k)),k&&c<o;);if(512&r.flags&&(r.check=B(r.check,i,c,s)),o-=c,s+=c,k)break t}else r.head&&(r.head.comment=null);r.mode=9;case 9:if(512&r.flags){for(;l<16;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}if(u!==(65535&r.check)){t.msg="header crc mismatch",r.mode=30;break}l=u=0}r.head&&(r.head.hcrc=r.flags>>9&1,r.head.done=!0),t.adler=r.check=0,r.mode=12;break;case 10:for(;l<32;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}t.adler=r.check=L(u),l=u=0,r.mode=11;case 11:if(0===r.havedict)return t.next_out=a,t.avail_out=h,t.next_in=s,t.avail_in=o,r.hold=u,r.bits=l,2;t.adler=r.check=1,r.mode=12;case 12:if(5===e||6===e)break t;case 13:if(r.last){u>>>=7&l,l-=7&l,r.mode=27;break}for(;l<3;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}switch(r.last=1&u,l-=1,3&(u>>>=1)){case 0:r.mode=14;break;case 1:if(j(r),r.mode=20,6!==e)break;u>>>=2,l-=2;break t;case 2:r.mode=17;break;case 3:t.msg="invalid block type",r.mode=30}u>>>=2,l-=2;break;case 14:for(u>>>=7&l,l-=7&l;l<32;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}if((65535&u)!=(u>>>16^65535)){t.msg="invalid stored block lengths",r.mode=30;break}if(r.length=65535&u,l=u=0,r.mode=15,6===e)break t;case 15:r.mode=16;case 16:if(c=r.length){if(o<c&&(c=o),h<c&&(c=h),0===c)break t;I.arraySet(n,i,s,c,a),o-=c,s+=c,h-=c,a+=c,r.length-=c;break}r.mode=12;break;case 17:for(;l<14;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}if(r.nlen=257+(31&u),u>>>=5,l-=5,r.ndist=1+(31&u),u>>>=5,l-=5,r.ncode=4+(15&u),u>>>=4,l-=4,286<r.nlen||30<r.ndist){t.msg="too many length or distance symbols",r.mode=30;break}r.have=0,r.mode=18;case 18:for(;r.have<r.ncode;){for(;l<3;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}r.lens[A[r.have++]]=7&u,u>>>=3,l-=3}for(;r.have<19;)r.lens[A[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,S={bits:r.lenbits},x=T(0,r.lens,0,19,r.lencode,0,r.work,S),r.lenbits=S.bits,x){t.msg="invalid code lengths set",r.mode=30;break}r.have=0,r.mode=19;case 19:for(;r.have<r.nlen+r.ndist;){for(;g=(C=r.lencode[u&(1<<r.lenbits)-1])>>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}if(b<16)u>>>=_,l-=_,r.lens[r.have++]=b;else{if(16===b){for(z=_+2;l<z;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}if(u>>>=_,l-=_,0===r.have){t.msg="invalid bit length repeat",r.mode=30;break}k=r.lens[r.have-1],c=3+(3&u),u>>>=2,l-=2}else if(17===b){for(z=_+3;l<z;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}l-=_,k=0,c=3+(7&(u>>>=_)),u>>>=3,l-=3}else{for(z=_+7;l<z;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}l-=_,k=0,c=11+(127&(u>>>=_)),u>>>=7,l-=7}if(r.have+c>r.nlen+r.ndist){t.msg="invalid bit length repeat",r.mode=30;break}for(;c--;)r.lens[r.have++]=k}}if(30===r.mode)break;if(0===r.lens[256]){t.msg="invalid code -- missing end-of-block",r.mode=30;break}if(r.lenbits=9,S={bits:r.lenbits},x=T(D,r.lens,0,r.nlen,r.lencode,0,r.work,S),r.lenbits=S.bits,x){t.msg="invalid literal/lengths set",r.mode=30;break}if(r.distbits=6,r.distcode=r.distdyn,S={bits:r.distbits},x=T(F,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,S),r.distbits=S.bits,x){t.msg="invalid distances set",r.mode=30;break}if(r.mode=20,6===e)break t;case 20:r.mode=21;case 21:if(6<=o&&258<=h){t.next_out=a,t.avail_out=h,t.next_in=s,t.avail_in=o,r.hold=u,r.bits=l,R(t,d),a=t.next_out,n=t.output,h=t.avail_out,s=t.next_in,i=t.input,o=t.avail_in,u=r.hold,l=r.bits,12===r.mode&&(r.back=-1);break}for(r.back=0;g=(C=r.lencode[u&(1<<r.lenbits)-1])>>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}if(g&&0==(240&g)){for(v=_,y=g,w=b;g=(C=r.lencode[w+((u&(1<<v+y)-1)>>v)])>>>16&255,b=65535&C,!(v+(_=C>>>24)<=l);){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}u>>>=v,l-=v,r.back+=v}if(u>>>=_,l-=_,r.back+=_,r.length=b,0===g){r.mode=26;break}if(32&g){r.back=-1,r.mode=12;break}if(64&g){t.msg="invalid literal/length code",r.mode=30;break}r.extra=15&g,r.mode=22;case 22:if(r.extra){for(z=r.extra;l<z;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}r.length+=u&(1<<r.extra)-1,u>>>=r.extra,l-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;g=(C=r.distcode[u&(1<<r.distbits)-1])>>>16&255,b=65535&C,!((_=C>>>24)<=l);){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}if(0==(240&g)){for(v=_,y=g,w=b;g=(C=r.distcode[w+((u&(1<<v+y)-1)>>v)])>>>16&255,b=65535&C,!(v+(_=C>>>24)<=l);){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}u>>>=v,l-=v,r.back+=v}if(u>>>=_,l-=_,r.back+=_,64&g){t.msg="invalid distance code",r.mode=30;break}r.offset=b,r.extra=15&g,r.mode=24;case 24:if(r.extra){for(z=r.extra;l<z;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}r.offset+=u&(1<<r.extra)-1,u>>>=r.extra,l-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){t.msg="invalid distance too far back",r.mode=30;break}r.mode=25;case 25:if(0===h)break t;if(c=d-h,r.offset>c){if((c=r.offset-c)>r.whave&&r.sane){t.msg="invalid distance too far back",r.mode=30;break}p=c>r.wnext?(c-=r.wnext,r.wsize-c):r.wnext-c,c>r.length&&(c=r.length),m=r.window}else m=n,p=a-r.offset,c=r.length;for(h<c&&(c=h),h-=c,r.length-=c;n[a++]=m[p++],--c;);0===r.length&&(r.mode=21);break;case 26:if(0===h)break t;n[a++]=r.length,h--,r.mode=21;break;case 27:if(r.wrap){for(;l<32;){if(0===o)break t;o--,u|=i[s++]<<l,l+=8}if(d-=h,t.total_out+=d,r.total+=d,d&&(t.adler=r.check=r.flags?B(r.check,n,d,a-d):O(r.check,n,d,a-d)),d=h,(r.flags?u:L(u))!==r.check){t.msg="incorrect data check",r.mode=30;break}l=u=0}r.mode=28;case 28:if(r.wrap&&r.flags){for(;l<32;){if(0===o)break t;o--,u+=i[s++]<<l,l+=8}if(u!==(4294967295&r.total)){t.msg="incorrect length check",r.mode=30;break}l=u=0}r.mode=29;case 29:x=1;break t;case 30:x=-3;break t;case 31:return-4;case 32:default:return U}return t.next_out=a,t.avail_out=h,t.next_in=s,t.avail_in=o,r.hold=u,r.bits=l,(r.wsize||d!==t.avail_out&&r.mode<30&&(r.mode<27||4!==e))&&Z(t,t.output,t.next_out,d-t.avail_out)?(r.mode=31,-4):(f-=t.avail_in,d-=t.avail_out,t.total_in+=f,t.total_out+=d,r.total+=d,r.wrap&&d&&(t.adler=r.check=r.flags?B(r.check,n,d,t.next_out-d):O(r.check,n,d,t.next_out-d)),t.data_type=r.bits+(r.last?64:0)+(12===r.mode?128:0)+(20===r.mode||15===r.mode?256:0),(0==f&&0===d||4===e)&&x===N&&(x=-5),x)},r.inflateEnd=function(t){if(!t||!t.state)return U;var e=t.state;return e.window&&(e.window=null),t.state=null,N},r.inflateGetHeader=function(t,e){var r;return t&&t.state?0==(2&(r=t.state).wrap)?U:((r.head=e).done=!1,N):U},r.inflateSetDictionary=function(t,e){var r,i=e.length;return t&&t.state?0!==(r=t.state).wrap&&11!==r.mode?U:11===r.mode&&O(1,e,i,0)!==r.check?-3:Z(t,e,i,i)?(r.mode=31,-4):(r.havedict=1,N):U},r.inflateInfo="pako inflate (from Nodeca project)"},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(t,e,r){"use strict";var D=t("../utils/common"),F=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],N=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],U=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],P=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];e.exports=function(t,e,r,i,n,s,a,o){var h,u,l,f,d,c,p,m,_,g=o.bits,b=0,v=0,y=0,w=0,k=0,x=0,S=0,z=0,C=0,E=0,A=null,I=0,O=new D.Buf16(16),B=new D.Buf16(16),R=null,T=0;for(b=0;b<=15;b++)O[b]=0;for(v=0;v<i;v++)O[e[r+v]]++;for(k=g,w=15;1<=w&&0===O[w];w--);if(w<k&&(k=w),0===w)return n[s++]=20971520,n[s++]=20971520,o.bits=1,0;for(y=1;y<w&&0===O[y];y++);for(k<y&&(k=y),b=z=1;b<=15;b++)if(z<<=1,(z-=O[b])<0)return-1;if(0<z&&(0===t||1!==w))return-1;for(B[1]=0,b=1;b<15;b++)B[b+1]=B[b]+O[b];for(v=0;v<i;v++)0!==e[r+v]&&(a[B[e[r+v]]++]=v);if(c=0===t?(A=R=a,19):1===t?(A=F,I-=257,R=N,T-=257,256):(A=U,R=P,-1),b=y,d=s,S=v=E=0,l=-1,f=(C=1<<(x=k))-1,1===t&&852<C||2===t&&592<C)return 1;for(;;){for(p=b-S,_=a[v]<c?(m=0,a[v]):a[v]>c?(m=R[T+a[v]],A[I+a[v]]):(m=96,0),h=1<<b-S,y=u=1<<x;n[d+(E>>S)+(u-=h)]=p<<24|m<<16|_|0,0!==u;);for(h=1<<b-1;E&h;)h>>=1;if(0!==h?(E&=h-1,E+=h):E=0,v++,0==--O[b]){if(b===w)break;b=e[r+a[v]]}if(k<b&&(E&f)!==l){for(0===S&&(S=k),d+=y,z=1<<(x=b-S);x+S<w&&!((z-=O[x+S])<=0);)x++,z<<=1;if(C+=1<<x,1===t&&852<C||2===t&&592<C)return 1;n[l=E&f]=k<<24|x<<16|d-s|0}}return 0!==E&&(n[d+E]=b-S<<24|64<<16|0),o.bits=k,0}},{"../utils/common":41}],51:[function(t,e,r){"use strict";e.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],52:[function(t,e,r){"use strict";var n=t("../utils/common"),o=0,h=1;function i(t){for(var e=t.length;0<=--e;)t[e]=0}var s=0,a=29,u=256,l=u+1+a,f=30,d=19,_=2*l+1,g=15,c=16,p=7,m=256,b=16,v=17,y=18,w=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],k=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],x=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],S=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],z=new Array(2*(l+2));i(z);var C=new Array(2*f);i(C);var E=new Array(512);i(E);var A=new Array(256);i(A);var I=new Array(a);i(I);var O,B,R,T=new Array(f);function D(t,e,r,i,n){this.static_tree=t,this.extra_bits=e,this.extra_base=r,this.elems=i,this.max_length=n,this.has_stree=t&&t.length}function F(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}function N(t){return t<256?E[t]:E[256+(t>>>7)]}function U(t,e){t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255}function P(t,e,r){t.bi_valid>c-r?(t.bi_buf|=e<<t.bi_valid&65535,U(t,t.bi_buf),t.bi_buf=e>>c-t.bi_valid,t.bi_valid+=r-c):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=r)}function L(t,e,r){P(t,r[2*e],r[2*e+1])}function j(t,e){for(var r=0;r|=1&t,t>>>=1,r<<=1,0<--e;);return r>>>1}function Z(t,e,r){var i,n,s=new Array(g+1),a=0;for(i=1;i<=g;i++)s[i]=a=a+r[i-1]<<1;for(n=0;n<=e;n++){var o=t[2*n+1];0!==o&&(t[2*n]=j(s[o]++,o))}}function W(t){var e;for(e=0;e<l;e++)t.dyn_ltree[2*e]=0;for(e=0;e<f;e++)t.dyn_dtree[2*e]=0;for(e=0;e<d;e++)t.bl_tree[2*e]=0;t.dyn_ltree[2*m]=1,t.opt_len=t.static_len=0,t.last_lit=t.matches=0}function M(t){8<t.bi_valid?U(t,t.bi_buf):0<t.bi_valid&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0}function H(t,e,r,i){var n=2*e,s=2*r;return t[n]<t[s]||t[n]===t[s]&&i[e]<=i[r]}function G(t,e,r){for(var i=t.heap[r],n=r<<1;n<=t.heap_len&&(n<t.heap_len&&H(e,t.heap[n+1],t.heap[n],t.depth)&&n++,!H(e,i,t.heap[n],t.depth));)t.heap[r]=t.heap[n],r=n,n<<=1;t.heap[r]=i}function K(t,e,r){var i,n,s,a,o=0;if(0!==t.last_lit)for(;i=t.pending_buf[t.d_buf+2*o]<<8|t.pending_buf[t.d_buf+2*o+1],n=t.pending_buf[t.l_buf+o],o++,0===i?L(t,n,e):(L(t,(s=A[n])+u+1,e),0!==(a=w[s])&&P(t,n-=I[s],a),L(t,s=N(--i),r),0!==(a=k[s])&&P(t,i-=T[s],a)),o<t.last_lit;);L(t,m,e)}function Y(t,e){var r,i,n,s=e.dyn_tree,a=e.stat_desc.static_tree,o=e.stat_desc.has_stree,h=e.stat_desc.elems,u=-1;for(t.heap_len=0,t.heap_max=_,r=0;r<h;r++)0!==s[2*r]?(t.heap[++t.heap_len]=u=r,t.depth[r]=0):s[2*r+1]=0;for(;t.heap_len<2;)s[2*(n=t.heap[++t.heap_len]=u<2?++u:0)]=1,t.depth[n]=0,t.opt_len--,o&&(t.static_len-=a[2*n+1]);for(e.max_code=u,r=t.heap_len>>1;1<=r;r--)G(t,s,r);for(n=h;r=t.heap[1],t.heap[1]=t.heap[t.heap_len--],G(t,s,1),i=t.heap[1],t.heap[--t.heap_max]=r,t.heap[--t.heap_max]=i,s[2*n]=s[2*r]+s[2*i],t.depth[n]=(t.depth[r]>=t.depth[i]?t.depth[r]:t.depth[i])+1,s[2*r+1]=s[2*i+1]=n,t.heap[1]=n++,G(t,s,1),2<=t.heap_len;);t.heap[--t.heap_max]=t.heap[1],function(t,e){var r,i,n,s,a,o,h=e.dyn_tree,u=e.max_code,l=e.stat_desc.static_tree,f=e.stat_desc.has_stree,d=e.stat_desc.extra_bits,c=e.stat_desc.extra_base,p=e.stat_desc.max_length,m=0;for(s=0;s<=g;s++)t.bl_count[s]=0;for(h[2*t.heap[t.heap_max]+1]=0,r=t.heap_max+1;r<_;r++)p<(s=h[2*h[2*(i=t.heap[r])+1]+1]+1)&&(s=p,m++),h[2*i+1]=s,u<i||(t.bl_count[s]++,a=0,c<=i&&(a=d[i-c]),o=h[2*i],t.opt_len+=o*(s+a),f&&(t.static_len+=o*(l[2*i+1]+a)));if(0!==m){do{for(s=p-1;0===t.bl_count[s];)s--;t.bl_count[s]--,t.bl_count[s+1]+=2,t.bl_count[p]--,m-=2}while(0<m);for(s=p;0!==s;s--)for(i=t.bl_count[s];0!==i;)u<(n=t.heap[--r])||(h[2*n+1]!==s&&(t.opt_len+=(s-h[2*n+1])*h[2*n],h[2*n+1]=s),i--)}}(t,e),Z(s,u,t.bl_count)}function X(t,e,r){var i,n,s=-1,a=e[1],o=0,h=7,u=4;for(0===a&&(h=138,u=3),e[2*(r+1)+1]=65535,i=0;i<=r;i++)n=a,a=e[2*(i+1)+1],++o<h&&n===a||(o<u?t.bl_tree[2*n]+=o:0!==n?(n!==s&&t.bl_tree[2*n]++,t.bl_tree[2*b]++):o<=10?t.bl_tree[2*v]++:t.bl_tree[2*y]++,s=n,u=(o=0)===a?(h=138,3):n===a?(h=6,3):(h=7,4))}function V(t,e,r){var i,n,s=-1,a=e[1],o=0,h=7,u=4;for(0===a&&(h=138,u=3),i=0;i<=r;i++)if(n=a,a=e[2*(i+1)+1],!(++o<h&&n===a)){if(o<u)for(;L(t,n,t.bl_tree),0!=--o;);else 0!==n?(n!==s&&(L(t,n,t.bl_tree),o--),L(t,b,t.bl_tree),P(t,o-3,2)):o<=10?(L(t,v,t.bl_tree),P(t,o-3,3)):(L(t,y,t.bl_tree),P(t,o-11,7));s=n,u=(o=0)===a?(h=138,3):n===a?(h=6,3):(h=7,4)}}i(T);var q=!1;function J(t,e,r,i){P(t,(s<<1)+(i?1:0),3),function(t,e,r,i){M(t),i&&(U(t,r),U(t,~r)),n.arraySet(t.pending_buf,t.window,e,r,t.pending),t.pending+=r}(t,e,r,!0)}r._tr_init=function(t){q||(function(){var t,e,r,i,n,s=new Array(g+1);for(i=r=0;i<a-1;i++)for(I[i]=r,t=0;t<1<<w[i];t++)A[r++]=i;for(A[r-1]=i,i=n=0;i<16;i++)for(T[i]=n,t=0;t<1<<k[i];t++)E[n++]=i;for(n>>=7;i<f;i++)for(T[i]=n<<7,t=0;t<1<<k[i]-7;t++)E[256+n++]=i;for(e=0;e<=g;e++)s[e]=0;for(t=0;t<=143;)z[2*t+1]=8,t++,s[8]++;for(;t<=255;)z[2*t+1]=9,t++,s[9]++;for(;t<=279;)z[2*t+1]=7,t++,s[7]++;for(;t<=287;)z[2*t+1]=8,t++,s[8]++;for(Z(z,l+1,s),t=0;t<f;t++)C[2*t+1]=5,C[2*t]=j(t,5);O=new D(z,w,u+1,l,g),B=new D(C,k,0,f,g),R=new D(new Array(0),x,0,d,p)}(),q=!0),t.l_desc=new F(t.dyn_ltree,O),t.d_desc=new F(t.dyn_dtree,B),t.bl_desc=new F(t.bl_tree,R),t.bi_buf=0,t.bi_valid=0,W(t)},r._tr_stored_block=J,r._tr_flush_block=function(t,e,r,i){var n,s,a=0;0<t.level?(2===t.strm.data_type&&(t.strm.data_type=function(t){var e,r=4093624447;for(e=0;e<=31;e++,r>>>=1)if(1&r&&0!==t.dyn_ltree[2*e])return o;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return h;for(e=32;e<u;e++)if(0!==t.dyn_ltree[2*e])return h;return o}(t)),Y(t,t.l_desc),Y(t,t.d_desc),a=function(t){var e;for(X(t,t.dyn_ltree,t.l_desc.max_code),X(t,t.dyn_dtree,t.d_desc.max_code),Y(t,t.bl_desc),e=d-1;3<=e&&0===t.bl_tree[2*S[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e}(t),n=t.opt_len+3+7>>>3,(s=t.static_len+3+7>>>3)<=n&&(n=s)):n=s=r+5,r+4<=n&&-1!==e?J(t,e,r,i):4===t.strategy||s===n?(P(t,2+(i?1:0),3),K(t,z,C)):(P(t,4+(i?1:0),3),function(t,e,r,i){var n;for(P(t,e-257,5),P(t,r-1,5),P(t,i-4,4),n=0;n<i;n++)P(t,t.bl_tree[2*S[n]+1],3);V(t,t.dyn_ltree,e-1),V(t,t.dyn_dtree,r-1)}(t,t.l_desc.max_code+1,t.d_desc.max_code+1,a+1),K(t,t.dyn_ltree,t.dyn_dtree)),W(t),i&&M(t)},r._tr_tally=function(t,e,r){return t.pending_buf[t.d_buf+2*t.last_lit]=e>>>8&255,t.pending_buf[t.d_buf+2*t.last_lit+1]=255&e,t.pending_buf[t.l_buf+t.last_lit]=255&r,t.last_lit++,0===e?t.dyn_ltree[2*r]++:(t.matches++,e--,t.dyn_ltree[2*(A[r]+u+1)]++,t.dyn_dtree[2*N(e)]++),t.last_lit===t.lit_bufsize-1},r._tr_align=function(t){P(t,2,3),L(t,m,z),function(t){16===t.bi_valid?(U(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):8<=t.bi_valid&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)}(t)}},{"../utils/common":41}],53:[function(t,e,r){"use strict";e.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(t,e,r){"use strict";e.exports="function"==typeof setImmediate?setImmediate:function(){var t=[].slice.apply(arguments);t.splice(1,0,0),setTimeout.apply(null,t)}},{}]},{},[10])(10)});
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("b639").Buffer, __webpack_require__("c8ba")))

/***/ }),

/***/ "c532":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var bind = __webpack_require__("1d2b");

/*global toString:true*/

// utils is a library of generic helper functions non-specific to axios

var toString = Object.prototype.toString;

/**
 * Determine if a value is an Array
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is an Array, otherwise false
 */
function isArray(val) {
  return toString.call(val) === '[object Array]';
}

/**
 * Determine if a value is undefined
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if the value is undefined, otherwise false
 */
function isUndefined(val) {
  return typeof val === 'undefined';
}

/**
 * Determine if a value is a Buffer
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Buffer, otherwise false
 */
function isBuffer(val) {
  return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)
    && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);
}

/**
 * Determine if a value is an ArrayBuffer
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is an ArrayBuffer, otherwise false
 */
function isArrayBuffer(val) {
  return toString.call(val) === '[object ArrayBuffer]';
}

/**
 * Determine if a value is a FormData
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is an FormData, otherwise false
 */
function isFormData(val) {
  return (typeof FormData !== 'undefined') && (val instanceof FormData);
}

/**
 * Determine if a value is a view on an ArrayBuffer
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false
 */
function isArrayBufferView(val) {
  var result;
  if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {
    result = ArrayBuffer.isView(val);
  } else {
    result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);
  }
  return result;
}

/**
 * Determine if a value is a String
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a String, otherwise false
 */
function isString(val) {
  return typeof val === 'string';
}

/**
 * Determine if a value is a Number
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Number, otherwise false
 */
function isNumber(val) {
  return typeof val === 'number';
}

/**
 * Determine if a value is an Object
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is an Object, otherwise false
 */
function isObject(val) {
  return val !== null && typeof val === 'object';
}

/**
 * Determine if a value is a Date
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Date, otherwise false
 */
function isDate(val) {
  return toString.call(val) === '[object Date]';
}

/**
 * Determine if a value is a File
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a File, otherwise false
 */
function isFile(val) {
  return toString.call(val) === '[object File]';
}

/**
 * Determine if a value is a Blob
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Blob, otherwise false
 */
function isBlob(val) {
  return toString.call(val) === '[object Blob]';
}

/**
 * Determine if a value is a Function
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Function, otherwise false
 */
function isFunction(val) {
  return toString.call(val) === '[object Function]';
}

/**
 * Determine if a value is a Stream
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a Stream, otherwise false
 */
function isStream(val) {
  return isObject(val) && isFunction(val.pipe);
}

/**
 * Determine if a value is a URLSearchParams object
 *
 * @param {Object} val The value to test
 * @returns {boolean} True if value is a URLSearchParams object, otherwise false
 */
function isURLSearchParams(val) {
  return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;
}

/**
 * Trim excess whitespace off the beginning and end of a string
 *
 * @param {String} str The String to trim
 * @returns {String} The String freed of excess whitespace
 */
function trim(str) {
  return str.replace(/^\s*/, '').replace(/\s*$/, '');
}

/**
 * Determine if we're running in a standard browser environment
 *
 * This allows axios to run in a web worker, and react-native.
 * Both environments support XMLHttpRequest, but not fully standard globals.
 *
 * web workers:
 *  typeof window -> undefined
 *  typeof document -> undefined
 *
 * react-native:
 *  navigator.product -> 'ReactNative'
 * nativescript
 *  navigator.product -> 'NativeScript' or 'NS'
 */
function isStandardBrowserEnv() {
  if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||
                                           navigator.product === 'NativeScript' ||
                                           navigator.product === 'NS')) {
    return false;
  }
  return (
    typeof window !== 'undefined' &&
    typeof document !== 'undefined'
  );
}

/**
 * Iterate over an Array or an Object invoking a function for each item.
 *
 * If `obj` is an Array callback will be called passing
 * the value, index, and complete array for each item.
 *
 * If 'obj' is an Object callback will be called passing
 * the value, key, and complete object for each property.
 *
 * @param {Object|Array} obj The object to iterate
 * @param {Function} fn The callback to invoke for each item
 */
function forEach(obj, fn) {
  // Don't bother if no value provided
  if (obj === null || typeof obj === 'undefined') {
    return;
  }

  // Force an array if not already something iterable
  if (typeof obj !== 'object') {
    /*eslint no-param-reassign:0*/
    obj = [obj];
  }

  if (isArray(obj)) {
    // Iterate over array values
    for (var i = 0, l = obj.length; i < l; i++) {
      fn.call(null, obj[i], i, obj);
    }
  } else {
    // Iterate over object keys
    for (var key in obj) {
      if (Object.prototype.hasOwnProperty.call(obj, key)) {
        fn.call(null, obj[key], key, obj);
      }
    }
  }
}

/**
 * Accepts varargs expecting each argument to be an object, then
 * immutably merges the properties of each object and returns result.
 *
 * When multiple objects contain the same key the later object in
 * the arguments list will take precedence.
 *
 * Example:
 *
 * ```js
 * var result = merge({foo: 123}, {foo: 456});
 * console.log(result.foo); // outputs 456
 * ```
 *
 * @param {Object} obj1 Object to merge
 * @returns {Object} Result of all merge properties
 */
function merge(/* obj1, obj2, obj3, ... */) {
  var result = {};
  function assignValue(val, key) {
    if (typeof result[key] === 'object' && typeof val === 'object') {
      result[key] = merge(result[key], val);
    } else {
      result[key] = val;
    }
  }

  for (var i = 0, l = arguments.length; i < l; i++) {
    forEach(arguments[i], assignValue);
  }
  return result;
}

/**
 * Function equal to merge with the difference being that no reference
 * to original objects is kept.
 *
 * @see merge
 * @param {Object} obj1 Object to merge
 * @returns {Object} Result of all merge properties
 */
function deepMerge(/* obj1, obj2, obj3, ... */) {
  var result = {};
  function assignValue(val, key) {
    if (typeof result[key] === 'object' && typeof val === 'object') {
      result[key] = deepMerge(result[key], val);
    } else if (typeof val === 'object') {
      result[key] = deepMerge({}, val);
    } else {
      result[key] = val;
    }
  }

  for (var i = 0, l = arguments.length; i < l; i++) {
    forEach(arguments[i], assignValue);
  }
  return result;
}

/**
 * Extends object a by mutably adding to it the properties of object b.
 *
 * @param {Object} a The object to be extended
 * @param {Object} b The object to copy properties from
 * @param {Object} thisArg The object to bind function to
 * @return {Object} The resulting value of object a
 */
function extend(a, b, thisArg) {
  forEach(b, function assignValue(val, key) {
    if (thisArg && typeof val === 'function') {
      a[key] = bind(val, thisArg);
    } else {
      a[key] = val;
    }
  });
  return a;
}

module.exports = {
  isArray: isArray,
  isArrayBuffer: isArrayBuffer,
  isBuffer: isBuffer,
  isFormData: isFormData,
  isArrayBufferView: isArrayBufferView,
  isString: isString,
  isNumber: isNumber,
  isObject: isObject,
  isUndefined: isUndefined,
  isDate: isDate,
  isFile: isFile,
  isBlob: isBlob,
  isFunction: isFunction,
  isStream: isStream,
  isURLSearchParams: isURLSearchParams,
  isStandardBrowserEnv: isStandardBrowserEnv,
  forEach: forEach,
  merge: merge,
  deepMerge: deepMerge,
  extend: extend,
  trim: trim
};


/***/ }),

/***/ "c584":
/***/ (function(module, exports) {

/**
 * Checks if a `cache` value for `key` exists.
 *
 * @private
 * @param {Object} cache The cache to query.
 * @param {string} key The key of the entry to check.
 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
 */
function cacheHas(cache, key) {
  return cache.has(key);
}

module.exports = cacheHas;


/***/ }),

/***/ "c5a2":
/***/ (function(module, exports, __webpack_require__) {

var arrayReduce = __webpack_require__("6ac0"),
    baseEach = __webpack_require__("48a0"),
    baseIteratee = __webpack_require__("badf"),
    baseReduce = __webpack_require__("58f7"),
    isArray = __webpack_require__("6747");

/**
 * Reduces `collection` to a value which is the accumulated result of running
 * each element in `collection` thru `iteratee`, where each successive
 * invocation is supplied the return value of the previous. If `accumulator`
 * is not given, the first element of `collection` is used as the initial
 * value. The iteratee is invoked with four arguments:
 * (accumulator, value, index|key, collection).
 *
 * Many lodash methods are guarded to work as iteratees for methods like
 * `_.reduce`, `_.reduceRight`, and `_.transform`.
 *
 * The guarded methods are:
 * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,
 * and `sortBy`
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Collection
 * @param {Array|Object} collection The collection to iterate over.
 * @param {Function} [iteratee=_.identity] The function invoked per iteration.
 * @param {*} [accumulator] The initial value.
 * @returns {*} Returns the accumulated value.
 * @see _.reduceRight
 * @example
 *
 * _.reduce([1, 2], function(sum, n) {
 *   return sum + n;
 * }, 0);
 * // => 3
 *
 * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {
 *   (result[value] || (result[value] = [])).push(key);
 *   return result;
 * }, {});
 * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)
 */
function reduce(collection, iteratee, accumulator) {
  var func = isArray(collection) ? arrayReduce : baseReduce,
      initAccum = arguments.length < 3;

  return func(collection, baseIteratee(iteratee, 4), accumulator, initAccum, baseEach);
}

module.exports = reduce;


/***/ }),

/***/ "c5ae":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"data\":{\"seller\":{\"status\":2,\"seller_type\":1,\"business_type\":2,\"shop_name\":\"GYS Bamboo\",\"seller_id\":\"7495810204148795111\",\"shop_code\":\"CNUSCBYMELRA\",\"region_code\":\"CN\",\"logo\":{\"height\":3360,\"width\":3360,\"url_list\":[\"https://p16-oec-general.ttcdn-us.com/tos-alisg-i-aphluv4xwc-sg/2daf08cdabbe41c784ba127ccb69a590~tplv-fhlh96nyum-origin-jpeg.jpeg?dr=12178&from=1345521523&idc=useast5&ps=933b5bde&shcp=8dd14051&shp=50330773&t=555f072d\",\"https://p19-oec-general.ttcdn-us.com/tos-alisg-i-aphluv4xwc-sg/2daf08cdabbe41c784ba127ccb69a590~tplv-fhlh96nyum-origin-jpeg.jpeg?dr=12178&from=1345521523&idc=useast5&ps=933b5bde&shcp=8dd14051&shp=50330773&t=555f072d\"]},\"seller_condition\":5,\"activate_current_todo_step\":1,\"is_activate_todo_finish\":false,\"timezone\":{\"name\":\"America/Los_Angeles\"},\"global_shop_name\":\"GYS Bamboo\",\"shop_region\":\"US\",\"test_flag\":0,\"shop_status\":2},\"account_id\":\"7496219652883581828\",\"phone_verified\":false,\"email_verified\":true,\"is_sub_account\":true,\"verified_documents\":3,\"conflict\":false,\"global_seller\":{\"global_seller_id\":\"7495810204148795111\",\"seller_map\":[{\"seller_id\":\"8647380309835487922\",\"region\":\"DE\",\"region_name\":\"Germany\",\"is_new\":false,\"shop_status\":2},{\"seller_id\":\"8647364830337014450\",\"region\":\"ES\",\"region_name\":\"Spain\",\"is_new\":false,\"shop_status\":2},{\"seller_id\":\"8647365018478877362\",\"region\":\"FR\",\"region_name\":\"France\",\"is_new\":false,\"shop_status\":2},{\"seller_id\":\"7495810204148795112\",\"region\":\"GB\",\"region_name\":\"United Kingdom of Great Britain and Northern Ireland\",\"is_new\":false,\"shop_status\":2},{\"seller_id\":\"8647363840724605618\",\"region\":\"IT\",\"region_name\":\"Italy\",\"is_new\":false,\"shop_status\":2},{\"seller_id\":\"7495810204148795111\",\"region\":\"US\",\"region_name\":\"United States of America\",\"is_new\":false,\"shop_status\":2}],\"status\":2,\"timezone\":{\"name\":\"Asia/Shanghai\"},\"base_geo_id0\":\"1814991\",\"seller_type\":1,\"partnerChannel\":1,\"ubo_region\":\"\",\"base_region\":\"CN\",\"biz_type\":0,\"create_time\":\"1748593683954\"},\"markets\":[{\"greater_market_region\":1,\"selling_countries\":[{\"country_code\":\"GB\",\"status\":0,\"shop_status\":0}]},{\"greater_market_region\":2,\"selling_countries\":[{\"country_code\":\"TH\",\"status\":0,\"shop_status\":0},{\"country_code\":\"VN\",\"status\":0,\"shop_status\":0},{\"country_code\":\"MY\",\"status\":0,\"shop_status\":0},{\"country_code\":\"PH\",\"status\":0,\"shop_status\":0},{\"country_code\":\"SG\",\"status\":0,\"shop_status\":0}]},{\"greater_market_region\":3,\"selling_countries\":[{\"country_code\":\"US\",\"status\":2,\"shop_status\":2}]}],\"has_step_task\":true,\"delegation_mode\":{\"seller_center_delegation_switch_on\":false,\"affiliate_delegation_mode_switch_on\":false,\"delegation_identity\":2,\"delegation_protocol_signed\":false},\"uid_test_flag\":2,\"check_ddq_passed\":true,\"ubo_region\":\"\",\"base_region\":\"CN\",\"global_seller_tags\":[16],\"tenant_id\":\"200\",\"company_name\":\"青岛货通天下电子商务有限公司\",\"tenant_id_number\":200,\"all_global_sellers\":[{\"global_seller_id\":\"7495810204148795111\",\"seller_map\":[{\"seller_id\":\"8647380309835487922\",\"region\":\"DE\",\"region_name\":\"Germany\",\"is_new\":false,\"shop_status\":2},{\"seller_id\":\"8647364830337014450\",\"region\":\"ES\",\"region_name\":\"Spain\",\"is_new\":false,\"shop_status\":2},{\"seller_id\":\"8647365018478877362\",\"region\":\"FR\",\"region_name\":\"France\",\"is_new\":false,\"shop_status\":2},{\"seller_id\":\"7495810204148795112\",\"region\":\"GB\",\"region_name\":\"United Kingdom of Great Britain and Northern Ireland\",\"is_new\":false,\"shop_status\":2},{\"seller_id\":\"8647363840724605618\",\"region\":\"IT\",\"region_name\":\"Italy\",\"is_new\":false,\"shop_status\":2},{\"seller_id\":\"7495810204148795111\",\"region\":\"US\",\"region_name\":\"United States of America\",\"is_new\":false,\"shop_status\":2}],\"status\":2,\"seller_type\":1,\"base_region\":\"CN\",\"seller_name\":\"GYS Bamboo\",\"global_seller_tags\":[16],\"biz_type\":0,\"logo\":{\"height\":3360,\"width\":3360,\"uri\":\"tos-alisg-i-aphluv4xwc-sg/2daf08cdabbe41c784ba127ccb69a590\",\"url_list\":[\"https://p16-oec-general.ttcdn-us.com/tos-alisg-i-aphluv4xwc-sg/2daf08cdabbe41c784ba127ccb69a590~tplv-fhlh96nyum-origin-jpeg.jpeg?dr=12178&from=1345521523&idc=useast5&ps=933b5bde&shcp=b770d80c&shp=50330773&t=555f072d\",\"https://p19-oec-general.ttcdn-us.com/tos-alisg-i-aphluv4xwc-sg/2daf08cdabbe41c784ba127ccb69a590~tplv-fhlh96nyum-origin-jpeg.jpeg?dr=12178&from=1345521523&idc=useast5&ps=933b5bde&shcp=b770d80c&shp=50330773&t=555f072d\"]}}],\"is_unified_seller\":false,\"seller_hit_gray\":{\"is_migrate_global_platform\":true,\"support_seller_bind\":false}}}");

/***/ }),

/***/ "c64e":
/***/ (function(module, exports, __webpack_require__) {

var rng = __webpack_require__("e1f4");
var bytesToUuid = __webpack_require__("2366");

function v4(options, buf, offset) {
  var i = buf && offset || 0;

  if (typeof(options) == 'string') {
    buf = options === 'binary' ? new Array(16) : null;
    options = null;
  }
  options = options || {};

  var rnds = options.random || (options.rng || rng)();

  // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
  rnds[6] = (rnds[6] & 0x0f) | 0x40;
  rnds[8] = (rnds[8] & 0x3f) | 0x80;

  // Copy bytes to buffer, if provided
  if (buf) {
    for (var ii = 0; ii < 16; ++ii) {
      buf[i + ii] = rnds[ii];
    }
  }

  return buf || bytesToUuid(rnds);
}

module.exports = v4;


/***/ }),

/***/ "c66d":
/***/ (function(module, exports, __webpack_require__) {

var decodeMap = __webpack_require__("b647");

module.exports = decodeCodePoint;

// modified version of https://github.com/mathiasbynens/he/blob/master/src/he.js#L94-L119
function decodeCodePoint(codePoint) {
    if ((codePoint >= 0xd800 && codePoint <= 0xdfff) || codePoint > 0x10ffff) {
        return "\uFFFD";
    }

    if (codePoint in decodeMap) {
        codePoint = decodeMap[codePoint];
    }

    var output = "";

    if (codePoint > 0xffff) {
        codePoint -= 0x10000;
        output += String.fromCharCode(((codePoint >>> 10) & 0x3ff) | 0xd800);
        codePoint = 0xdc00 | (codePoint & 0x3ff);
    }

    output += String.fromCharCode(codePoint);
    return output;
}


/***/ }),

/***/ "c68e":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var ReadableStream = __webpack_require__("d485").Readable,
    inherits = __webpack_require__("3022").inherits,
    Serializer = __webpack_require__("bbad");

var SerializerStream = module.exports = function (node, options) {
    ReadableStream.call(this);

    this.serializer = new Serializer(node, options);

    Object.defineProperty(this.serializer, 'html', {
        //NOTE: To make `+=` concat operator work properly we define
        //getter which always returns empty string
        get: function () {
            return '';
        },
        set: this.push.bind(this)
    });
};

inherits(SerializerStream, ReadableStream);

//Readable stream implementation
SerializerStream.prototype._read = function () {
    this.serializer.serialize();
    this.push(null);
};


/***/ }),

/***/ "c6cf":
/***/ (function(module, exports, __webpack_require__) {

var flatten = __webpack_require__("4d8c"),
    overRest = __webpack_require__("2286"),
    setToString = __webpack_require__("c1c9");

/**
 * A specialized version of `baseRest` which flattens the rest array.
 *
 * @private
 * @param {Function} func The function to apply a rest parameter to.
 * @returns {Function} Returns the new function.
 */
function flatRest(func) {
  return setToString(overRest(func, undefined, flatten), func + '');
}

module.exports = flatRest;


/***/ }),

/***/ "c7b2":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXPORTS
__webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ cores; });
__webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ taskHandleMap; });

// EXTERNAL MODULE: ./src/data/amazon.js + 1 modules
var amazon = __webpack_require__("ef13");

// EXTERNAL MODULE: ./src/data/log.js
var log = __webpack_require__("6b23");

// EXTERNAL MODULE: ./src/utils/event.js
var utils_event = __webpack_require__("42a5");

// EXTERNAL MODULE: ./src/utils/util.js
var util = __webpack_require__("ca00");

// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("c1df");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);

// EXTERNAL MODULE: ./node_modules/jszip/dist/jszip.min.js
var jszip_min = __webpack_require__("c4e3");
var jszip_min_default = /*#__PURE__*/__webpack_require__.n(jszip_min);

// EXTERNAL MODULE: ./src/utils/fetch.js
var fetch = __webpack_require__("1c1e");

// EXTERNAL MODULE: ./node_modules/axios/index.js
var axios = __webpack_require__("bc3a");
var axios_default = /*#__PURE__*/__webpack_require__.n(axios);

// CONCATENATED MODULE: ./src/core/getFinance.js
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }







 // 生成报表

function generateReport(_x) {
  return _generateReport.apply(this, arguments);
} // 获取报表报表列表


function _generateReport() {
  _generateReport = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(task) {
    var startDate, endDate, res;
    return _regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            startDate = new Date(task.report_custom_date_start + ' 00:00:00').getTime();
            endDate = new Date(task.report_custom_date_end + ' 23:59:59').getTime();
            _context.next = 5;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/payments/reports/api/request-report"), 'post', {
              accountType: task.accountType,
              endDate: endDate,
              endDateISO: moment_default()(endDate).format('YYYY-MM-DDTHH:mm:ssZ'),
              reportType: {
                11: 1,
                13: 1,
                15: 1,
                17: 1
              }[task.report_type] ? 'SELLER_TRANSACTION_DATE_RANGE' : 'SELLER_SUMMARY_DATE_RANGE',
              startDate: startDate,
              startDateISO: moment_default()(startDate).format('YYYY-MM-DDTHH:mm:ssZ'),
              timeRangeType: task.report_date_type === 'custom' ? 'CUSTOM' : 'MONTHLY'
            });

          case 5:
            res = _context.sent;

            if (!(res && res.reportId)) {
              _context.next = 12;
              break;
            }

            log["a" /* default */].setLog('报表生成成功，reportId：' + res.reportId);
            task.reportId = res.reportId;
            return _context.abrupt("return", true);

          case 12:
            task.status = 3;
            task.msg = "[\u8D22\u52A1\u62A5\u8868]\u751F\u6210\u5931\u8D25\uFF0C\u4E9A\u9A6C\u900A\u89C4\u5219\u53EF\u80FD\u6539\u53D8";
            log["a" /* default */].setLog(task.msg);

          case 15:
            _context.next = 22;
            break;

          case 17:
            _context.prev = 17;
            _context.t0 = _context["catch"](0);
            task.status = 3;
            task.msg = "[\u8D22\u52A1\u62A5\u8868]\u751F\u6210\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context.t0));
            log["a" /* default */].setLog(task.msg);

          case 22:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 17]]);
  }));
  return _generateReport.apply(this, arguments);
}

function getReportList(_x2) {
  return _getReportList.apply(this, arguments);
} // 查询报表生成状态


function _getReportList() {
  _getReportList = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(task_id) {
    var res;
    return _regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;
            _context2.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/payments/reports/api/reports"), 'get', {
              sortOrderByRequestDate: 'DESC',
              resultsPerPage: 500,
              pageNum: 1
            });

          case 3:
            res = _context2.sent;

            if (!(res && res.reportResponse)) {
              _context2.next = 8;
              break;
            }

            return _context2.abrupt("return", res.reportResponse);

          case 8:
            // 此处上报状态
            log["a" /* default */].report('[财务报表]获取财务报表列表失败,亚马逊规则可能改变', 'error', task_id);

          case 9:
            _context2.next = 14;
            break;

          case 11:
            _context2.prev = 11;
            _context2.t0 = _context2["catch"](0);
            log["a" /* default */].setLog("[\u8D22\u52A1\u62A5\u8868]\u83B7\u53D6\u8D22\u52A1\u62A5\u8868\u5217\u8868\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context2.t0)));

          case 14:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 11]]);
  }));
  return _getReportList.apply(this, arguments);
}

function awaitReportDownload(_x3) {
  return _awaitReportDownload.apply(this, arguments);
} // 下载报表


function _awaitReportDownload() {
  _awaitReportDownload = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(task) {
    var count,
        res,
        _args3 = arguments;
    return _regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            count = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : 0;
            _context3.prev = 1;

            if (!(count >= 5)) {
              _context3.next = 8;
              break;
            }

            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
            task.run_time = 0;
            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D";
            task.status = 6;
            return _context3.abrupt("return", false);

          case 8:
            _context3.next = 10;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/payments/reports/api/report"), 'get', {
              reportId: task.reportId
            });

          case 10:
            res = _context3.sent;

            if (!(res && res.status)) {
              _context3.next = 35;
              break;
            }

            _context3.t0 = res.status;
            _context3.next = _context3.t0 === 'DOWNLOADABLE' ? 15 : _context3.t0 === 'SCHEDULED' ? 17 : _context3.t0 === 'Refresh' ? 25 : 25;
            break;

          case 15:
            task.status = 2;
            return _context3.abrupt("return", true);

          case 17:
            // 计划中报表直接kill掉（算了，部分还未生成的也是计划中的，暂时不kill掉）
            // task.error_time = 10
            task.status = 10;
            task.msg = '该月报表可能计划中';
            log["a" /* default */].setLog(task.msg);
            _context3.next = 22;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 22:
            _context3.next = 24;
            return awaitReportDownload(task, ++count);

          case 24:
            return _context3.abrupt("return", _context3.sent);

          case 25:
            task.status = 6;
            task.msg = '文件正在生成中';
            log["a" /* default */].setLog(task.msg, "\u5F53\u524D\u91CD\u8BD5\u6B21\u6570-".concat(count));
            _context3.next = 30;
            return Object(util["h" /* delayed */])(30 * 1000);

          case 30:
            _context3.next = 32;
            return awaitReportDownload(task, ++count);

          case 32:
            return _context3.abrupt("return", _context3.sent);

          case 33:
            _context3.next = 38;
            break;

          case 35:
            task.status = 6;
            task.msg = "[\u8D22\u52A1\u62A5\u8868]\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25\uFF0C\u4E9A\u9A6C\u900A\u89C4\u5219\u53EF\u80FD\u6539\u53D8";
            log["a" /* default */].setLog(task.msg);

          case 38:
            _context3.next = 45;
            break;

          case 40:
            _context3.prev = 40;
            _context3.t1 = _context3["catch"](1);
            task.status = 6;
            task.msg = "[\u8D22\u52A1\u62A5\u8868]\u67E5\u8BE2\u62A5\u8868\u751F\u6210\u72B6\u6001\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context3.t1));
            log["a" /* default */].setLog(task.msg);

          case 45:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[1, 40]]);
  }));
  return _awaitReportDownload.apply(this, arguments);
}

function downloadReport(_x4) {
  return _downloadReport.apply(this, arguments);
} // 检查后台是否有对应报表类型


function _downloadReport() {
  _downloadReport = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(task) {
    var res, name, oFile, fileRes, zip;
    return _regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return axios_default()({
              method: 'GET',
              url: "".concat(amazon["a" /* default */].host, "/payments/reports/api/download-report"),
              responseType: 'arrayBuffer',
              params: {
                reportId: task.reportId
              },
              adapter: fetch["b" /* default */]
            });

          case 3:
            res = _context4.sent;

            if (!(res && res.data)) {
              _context4.next = 16;
              break;
            }

            name = task.report_custom_date_start + '~' + task.report_custom_date_end + ({
              11: 1,
              13: 1,
              15: 1,
              17: 1
            }[task.report_type] ? 'SELLER_TRANSACTION_DATE_RANGE.csv' : 'SELLER_SUMMARY_DATE_RANGE.pdf');
            oFile = new File([res.data], name);
            // 文件压缩
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, res.data, {
              binary: true
            });
            _context4.next = 12;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"));
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = {
                file: cFile
              };
            }).catch(function (e) {
              log["a" /* default */].setLog('财务报表压缩失败', Object(util["u" /* isError */])(e));
              fileRes = {
                file: oFile
              };
            });

          case 12:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context4.abrupt("return", fileRes);

          case 16:
            _context4.next = 23;
            break;

          case 18:
            _context4.prev = 18;
            _context4.t0 = _context4["catch"](0);
            task.status = 5;
            task.msg = "[\u8D22\u52A1\u62A5\u8868]\u4E0B\u8F7D\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context4.t0));
            log["a" /* default */].setLog(task.msg);

          case 23:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 18]]);
  }));
  return _downloadReport.apply(this, arguments);
}

function checkTransactionType(_x5) {
  return _checkTransactionType.apply(this, arguments);
} // 检测当前站点


function _checkTransactionType() {
  _checkTransactionType = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(task) {
    var res, msg, _msg;

    return _regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            _context5.prev = 0;
            _context5.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/payments/reports/api/account-types"), 'get');

          case 3:
            res = _context5.sent;

            if (!(res && res.displayableAccountTypes && res.displayableAccountTypes.length > 0)) {
              _context5.next = 14;
              break;
            }

            if (!res.displayableAccountTypes.find(function (_ref) {
              var accountType = _ref.accountType;
              return task.accountType === accountType;
            })) {
              _context5.next = 9;
              break;
            }

            return _context5.abrupt("return", true);

          case 9:
            task.hide = true;
            task.status = 8;
            task.msg = ' 类型不存在';

          case 12:
            _context5.next = 18;
            break;

          case 14:
            msg = '检测报表类型失败----亚马逊规则可能改变';
            task.msg = msg;
            log["a" /* default */].setLog(msg);
            log["a" /* default */].report(msg, 'except', task.task_id);

          case 18:
            _context5.next = 26;
            break;

          case 20:
            _context5.prev = 20;
            _context5.t0 = _context5["catch"](0);
            _msg = '检测报表类型失败----' + Object(util["u" /* isError */])(_context5.t0);
            task.msg = _msg;
            log["a" /* default */].setLog(_msg);
            log["a" /* default */].report(_msg, 'error', task.task_id);

          case 26:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[0, 20]]);
  }));
  return _checkTransactionType.apply(this, arguments);
}

function onlyCheckSite(_x6) {
  return _onlyCheckSite.apply(this, arguments);
}

function _onlyCheckSite() {
  _onlyCheckSite = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(task) {
    var checkFlag;
    return _regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.next = 2;
            return amazon["a" /* default */].onlyCheckSite(task.market_code, task);

          case 2:
            checkFlag = _context6.sent;

            if (checkFlag) {
              _context6.next = 8;
              break;
            }

            log["a" /* default */].setLog('匹配财务报表时站点不一致，终止此任务');
            return _context6.abrupt("return", false);

          case 8:
            return _context6.abrupt("return", true);

          case 9:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6);
  }));
  return _onlyCheckSite.apply(this, arguments);
}

function getFinance(_x7) {
  return _getFinance.apply(this, arguments);
}

function _getFinance() {
  _getFinance = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(task) {
    return _regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            // accountType映射
            task.accountType = {
              11: 'PAYABLE',
              12: 'PAYABLE',
              13: 'INVOICING',
              14: 'INVOICING',
              15: 'NODAL',
              16: 'NODAL',
              17: 'PAYABLE',
              18: 'PAYABLE'
            }[task.report_type]; // 先从历史记录找对应日期类型的报表
            // const reportList = await getReportList(task)
            // let report
            // if (reportList) {
            //   try {
            //     report = reportList.find(({ startDate, endDate, reportType, accountType, marketplaceTimeZoneShortName }) => {
            //       const { report_custom_date_start, report_custom_date_end, report_type } = task
            //       const taskReportType = ({11: 1, 13: 1, 15: 1, 17: 1})[report_type]
            //       ? 'SELLER_TRANSACTION_DATE_RANGE'
            //       : 'SELLER_SUMMARY_DATE_RANGE'
            //       const taskAccountType = ({ 11: 1, 12: 1, 15: 1, 16: 1  })[report_type] ? 'PAYABLE' : 'INVOICE'
            //       // 匹配日期
            //       const startDateFlag = moment(startDate).format('YYYY-MM-DD') === moment(report_custom_date_start + ' 00:00:00 ' + marketplaceTimeZoneShortName).format('YYYY-MM-DD')
            //       const endDateFlag = moment(endDate).format('YYYY-MM-DD') === moment(report_custom_date_end + ' 23:59:59 ' + marketplaceTimeZoneShortName).format('YYYY-MM-DD')
            //       const reportTypeFlag = reportType === taskReportType
            //       const accountTypeFlag = taskAccountType === accountType
            //       console.log('getFinance', startDateFlag, endDateFlag, reportTypeFlag, accountTypeFlag, endDate, report_custom_date_end)
            //       if (startDateFlag && endDateFlag && reportTypeFlag && accountTypeFlag) return true
            //     })
            //   } catch (e) {
            //     log.setLog(`[财务报表]历史记录匹配失败---${e}`)
            //   }
            // }
            // if (report && report.status === 'DOWNLOADABLE') {
            //   // 历史记录已有可下载报表，反手直接下
            //   task.reportId = report.reportId
            //   return await downloadReport(task) 
            // } else if (report && report.status === 'REFRESH' || task.reportId) {
            //   // 有记录reportId或历史记录有匹配报表，但是刷新中，等!
            //   if (!await awaitReportDownload()) return false
            //   // 直接下载报表返回
            //   return await downloadReport(task)
            // }
            // 判断是否有当前类型报表

            _context7.next = 3;
            return checkTransactionType(task);

          case 3:
            if (_context7.sent) {
              _context7.next = 5;
              break;
            }

            return _context7.abrupt("return", false);

          case 5:
            _context7.next = 7;
            return generateReport(task);

          case 7:
            if (_context7.sent) {
              _context7.next = 9;
              break;
            }

            return _context7.abrupt("return", false);

          case 9:
            _context7.next = 11;
            return awaitReportDownload(task);

          case 11:
            if (_context7.sent) {
              _context7.next = 13;
              break;
            }

            return _context7.abrupt("return", false);

          case 13:
            _context7.next = 15;
            return onlyCheckSite(task);

          case 15:
            if (_context7.sent) {
              _context7.next = 17;
              break;
            }

            return _context7.abrupt("return", false);

          case 17:
            _context7.next = 19;
            return downloadReport(task);

          case 19:
            return _context7.abrupt("return", _context7.sent);

          case 20:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7);
  }));
  return _getFinance.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/getReport.js
function getReport_typeof(obj) { "@babel/helpers - typeof"; return getReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getReport_typeof(obj); }

function getReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }






/**
 * @description 获取报表任务status对应状态
 * 0:'获取中',
 * 1:'文件生成中',
 * 2:'文件已生成',
 * 3:'文件生成失败',
 * 4:'下载成功',
 * 5:'下载失败',
 * 6:'已上传',
 * 7:'上传失败',
 * 8:'无B2B类型',
 * 9:'提示下载失败[超过次数]'
 * 10:'文件未找到'
 * 11:'站点离线'
 * 12:'无访问权限'
 * 13:'页面异常'
 * 99:'任务中断'
 */

/**
 * @description 上传截图
 */

function uploadScreenshot(_x, _x2) {
  return _uploadScreenshot.apply(this, arguments);
}

function _uploadScreenshot() {
  _uploadScreenshot = getReport_asyncToGenerator( /*#__PURE__*/getReport_regeneratorRuntime().mark(function _callee2(task_id, report_file) {
    var formData, res;
    return getReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            formData = new FormData();
            formData.append('task_id', task_id);
            formData.append('report_file', report_file);
            _context2.next = 5;
            return Object(util["m" /* gatePost */])('api/v1/uploadFile', formData).catch(function (e) {
              log["a" /* default */].setLog('上传错误', JSON.stringify(e));
            });

          case 5:
            res = _context2.sent;
            return _context2.abrupt("return", res);

          case 7:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return _uploadScreenshot.apply(this, arguments);
}

function getTaskFile(task) {
  if ([11, 12, 13, 14, 15, 16, 17, 18].includes(task.report_type)) {
    return getFinance(task);
  } else return amazon["a" /* default */].getTaskFile(task);
}

var getReport = /*#__PURE__*/function () {
  var _ref = getReport_asyncToGenerator( /*#__PURE__*/getReport_regeneratorRuntime().mark(function _callee(task) {
    var param, isSucc, res, uploadRes;
    return getReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            // 默认参数
            param = {
              type_id: task.type_id,
              seller_id: task.seller_id,
              result: null,
              code: 0,
              msg: null
            };

            if (task.data) {
              _context.next = 6;
              break;
            }

            task.isDelete = true;
            task.hide = true;
            log["a" /* default */].setLog('[财务任务]任务不合法！');
            return _context.abrupt("return", _objectSpread(_objectSpread({}, param), {}, {
              code: 1,
              msg: '[财务任务]任务不合法！'
            }));

          case 6:
            amazon["a" /* default */].clearErrorTime();
            _context.next = 9;
            return amazon["a" /* default */].checkSite(task.market_code, task, task.type_id != 21);

          case 9:
            isSucc = _context.sent;

            if (!(!isSucc || !amazon["a" /* default */].host)) {
              _context.next = 16;
              break;
            }

            _context.next = 13;
            return Object(util["J" /* suspend */])();

          case 13:
            if (_context.sent) {
              _context.next = 15;
              break;
            }

            task.error_time++;

          case 15:
            return _context.abrupt("return", _objectSpread(_objectSpread({}, param), {}, {
              code: 2,
              msg: task.msg
            }));

          case 16:
            _context.next = 18;
            return getTaskFile(task);

          case 18:
            res = _context.sent;

            if (!(res && res.file)) {
              _context.next = 35;
              break;
            }

            if (!(task.type_id === 21)) {
              _context.next = 26;
              break;
            }

            _context.next = 23;
            return uploadScreenshot(task.task_id, res.file);

          case 23:
            _context.t0 = _context.sent;
            _context.next = 29;
            break;

          case 26:
            _context.next = 28;
            return Object(util["L" /* uploadFile */])(res.file);

          case 28:
            _context.t0 = _context.sent;

          case 29:
            uploadRes = _context.t0;

            if (!(uploadRes && (task.type_id === 21 && uploadRes.code === 0 || uploadRes.code === 1))) {
              _context.next = 32;
              break;
            }

            return _context.abrupt("return", _objectSpread(_objectSpread({}, param), {}, {
              result: {
                report_file: uploadRes.data,
                run_start_time: Math.floor(task.run_start_time / 1000),
                report_request_time: Math.floor(task.report_request_time / 1000),
                report_create_time: Math.floor(task.report_request_time / 1000),
                run_end_time: Math.floor(Date.now() / 1000),
                payments_summary_total_balance: res.balance
              }
            }));

          case 32:
            // 上传失败
            task.status = 7;
            task.msg = '文件上传cos失败';
            param.result = {
              requestId: uploadRes.requestId,
              msg: uploadRes.msg
            };

          case 35:
            if (![8, 12].includes(task.status)) {
              _context.next = 38;
              break;
            }

            task.isDelete = true;
            return _context.abrupt("return", _objectSpread(_objectSpread({}, param), {}, {
              msg: task.msg,
              code: task.status === 8 ? 3 : 1
            }));

          case 38:
            // 任务状态不为1,2,6，错误次数+1
            if ([1, 2, 6].indexOf(task.status) < 0) {
              task.error_time++;
            } // 文件生成中（status == 6），上报code=4


            return _context.abrupt("return", _objectSpread(_objectSpread({}, param), {}, {
              code: task.status === 6 ? 4 : 2,
              msg: task.msg
            }));

          case 40:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));

  return function getReport(_x3) {
    return _ref.apply(this, arguments);
  };
}(); // 订阅抓取报表事件

Object(utils_event["b" /* monitor */])('TASK_GETREPORT', getReport);
// EXTERNAL MODULE: ./node_modules/qs/lib/index.js
var lib = __webpack_require__("4328");
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);

// CONCATENATED MODULE: ./src/core/getEmailNew.js
function getEmailNew_typeof(obj) { "@babel/helpers - typeof"; return getEmailNew_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getEmailNew_typeof(obj); }

function getEmailNew_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getEmailNew_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getEmailNew_ownKeys(Object(source), !0).forEach(function (key) { getEmailNew_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getEmailNew_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getEmailNew_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function getEmailNew_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getEmailNew_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getEmailNew_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }

function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function getEmailNew_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getEmailNew_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getEmailNew_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getEmailNew_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }







var email = {
  threadList: [],
  // 邮件列表
  detailList: [],
  // 邮件详情列表
  host: "",
  // 当前使用的host

  /**
   * @description 统一的错误上报处理方法
   */
  handleError: function handleError(task, status, msg) {
    log["a" /* default */].setLog("[\u540C\u6B65\u7AD9\u5185\u4FE1]".concat(msg));
    task.status = status;
    task.error_msg = msg;
  },

  /**
   * @description 获取第一个可用host
   */
  checkHost: function checkHost(task) {
    var _this = this;

    return getEmailNew_asyncToGenerator( /*#__PURE__*/getEmailNew_regeneratorRuntime().mark(function _callee() {
      var hostObj, _i, _Object$entries, _Object$entries$_i, country, url, res;

      return getEmailNew_regeneratorRuntime().wrap(function _callee$(_context) {
        while (1) {
          switch (_context.prev = _context.next) {
            case 0:
              hostObj = amazon["a" /* default */].hostObj;
              _i = 0, _Object$entries = Object.entries(hostObj);

            case 2:
              if (!(_i < _Object$entries.length)) {
                _context.next = 21;
                break;
              }

              _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2), country = _Object$entries$_i[0], url = _Object$entries$_i[1];

              if (url) {
                _context.next = 6;
                break;
              }

              return _context.abrupt("continue", 18);

            case 6:
              _context.prev = 6;
              _context.next = 9;
              return amazon["a" /* default */].getUrl("".concat(url, "/home"));

            case 9:
              res = _context.sent;

              if (!(res && res !== -999)) {
                _context.next = 13;
                break;
              }

              _this.host = url;
              return _context.abrupt("return", url);

            case 13:
              _context.next = 18;
              break;

            case 15:
              _context.prev = 15;
              _context.t0 = _context["catch"](6);
              log["a" /* default */].setLog("[\u540C\u6B65\u7AD9\u5185\u4FE1]\u7AD9\u70B9\u83B7\u53D6\u5931\u8D25\uFF01".concat(country, ": ").concat(Object(util["u" /* isError */])(_context.t0)));

            case 18:
              _i++;
              _context.next = 2;
              break;

            case 21:
              _this.handleError(task, 11, "".concat(task.market_code, "\u5E97\u94FA\u4E0D\u5B58\u5728"));

              return _context.abrupt("return", false);

            case 23:
            case "end":
              return _context.stop();
          }
        }
      }, _callee, null, [[6, 15]]);
    }))();
  },

  /**
   * @description 执行抓取邮箱列表任务
   */
  runThreadsTask: function runThreadsTask(task) {
    var _this2 = this;

    return getEmailNew_asyncToGenerator( /*#__PURE__*/getEmailNew_regeneratorRuntime().mark(function _callee2() {
      var threadPage;
      return getEmailNew_regeneratorRuntime().wrap(function _callee2$(_context2) {
        while (1) {
          switch (_context2.prev = _context2.next) {
            case 0:
              _context2.prev = 0;
              _context2.next = 3;
              return _this2.checkHost(task);

            case 3:
              amazon["a" /* default */].host = _context2.sent;

              if (_this2.host) {
                _context2.next = 6;
                break;
              }

              return _context2.abrupt("return", false);

            case 6:
              _context2.next = 8;
              return _this2.getThreads(task);

            case 8:
              threadPage = _context2.sent;

              if (!(threadPage && threadPage.length > 0)) {
                _context2.next = 11;
                break;
              }

              return _context2.abrupt("return", threadPage);

            case 11:
              log["a" /* default */].setLog("[\u540C\u6B65\u7AD9\u5185\u4FE1]\u6293\u53D6\u5230\u90AE\u7BB1\u5217\u8868\uFF0C\u90AE\u7BB1\u6570\u91CF\uFF1A".concat(threadPage ? threadPage.length : 0, ",\u7AD9\u70B9\uFF1A").concat(task.market_code));
              _context2.next = 17;
              break;

            case 14:
              _context2.prev = 14;
              _context2.t0 = _context2["catch"](0);
              log["a" /* default */].setLog("[\u540C\u6B65\u7AD9\u5185\u4FE1]\u6293\u53D6\u90AE\u4EF6\u5217\u8868\u62A5\u9519----".concat(Object(util["u" /* isError */])(_context2.t0)));

            case 17:
            case "end":
              return _context2.stop();
          }
        }
      }, _callee2, null, [[0, 14]]);
    }))();
  },

  /**
   * @description 执行抓取message任务
   */
  runMessageTask: function runMessageTask(threads, task) {
    var _this3 = this;

    return getEmailNew_asyncToGenerator( /*#__PURE__*/getEmailNew_regeneratorRuntime().mark(function _callee3() {
      var detailList, _iterator, _step, item, detailTask, detailPage, hasCaseArtifacts;

      return getEmailNew_regeneratorRuntime().wrap(function _callee3$(_context3) {
        while (1) {
          switch (_context3.prev = _context3.next) {
            case 0:
              if (Object(util["i" /* executable */])("email")) {
                _context3.next = 2;
                break;
              }

              return _context3.abrupt("return", false);

            case 2:
              detailList = [];
              /** 遍历获取到邮箱的所有店铺 */

              _iterator = _createForOfIteratorHelper(threads);
              _context3.prev = 4;

              _iterator.s();

            case 6:
              if ((_step = _iterator.n()).done) {
                _context3.next = 31;
                break;
              }

              item = _step.value;

              if (_this3.host) {
                _context3.next = 10;
                break;
              }

              return _context3.abrupt("continue", 29);

            case 10:
              _context3.prev = 10;
              _context3.next = 13;
              return _this3.checkHost(task);

            case 13:
              _this3.host = _context3.sent;
              // 创建任务
              detailTask = {
                task_id: task.task_id,
                seller_id: task.seller_id,
                market_code: task.market_code,
                marketplace_id: amazon["a" /* default */].MarketplaceObj[task.market_code],
                thread_id: item.caseId,
                start_date: task.start_date,
                end_date: task.end_date
              };
              log["a" /* default */].setLog("\u8BE6\u60C5\u4EFB\u52A1-".concat(JSON.stringify(detailTask))); // 获取详情

              _context3.next = 18;
              return _this3.getMessages(detailTask);

            case 18:
              detailPage = _context3.sent;

              if (!(Array.isArray(detailPage) && detailPage.length === 0)) {
                _context3.next = 21;
                break;
              }

              return _context3.abrupt("continue", 29);

            case 21:
              hasCaseArtifacts = detailPage && detailPage.partyCase && detailPage.partyCase.caseArtifacts.length > 0;

              if (hasCaseArtifacts) {
                detailList.push(detailPage.partyCase);
              }

              log["a" /* default */].setLog("[\u540C\u6B65\u7AD9\u5185\u4FE1]\u6293\u53D6\u5230\u8BE6\u60C5\u5217\u8868\uFF0C\u4F1A\u8BDD\u6570\u91CF\uFF1A".concat(hasCaseArtifacts ? detailPage.partyCase.caseArtifacts.length : 0, ",\u7AD9\u70B9\uFF1A").concat(task.market_code));
              _context3.next = 29;
              break;

            case 26:
              _context3.prev = 26;
              _context3.t0 = _context3["catch"](10);
              log["a" /* default */].setLog("[\u540C\u6B65\u7AD9\u5185\u4FE1]\u6293\u53D6\u90AE\u4EF6\u8BE6\u60C5\u62A5\u9519----".concat(Object(util["u" /* isError */])(_context3.t0)));

            case 29:
              _context3.next = 6;
              break;

            case 31:
              _context3.next = 36;
              break;

            case 33:
              _context3.prev = 33;
              _context3.t1 = _context3["catch"](4);

              _iterator.e(_context3.t1);

            case 36:
              _context3.prev = 36;

              _iterator.f();

              return _context3.finish(36);

            case 39:
              return _context3.abrupt("return", detailList);

            case 40:
            case "end":
              return _context3.stop();
          }
        }
      }, _callee3, null, [[4, 33, 36, 39], [10, 26]]);
    }))();
  },

  /**
   * @description 获取邮箱列表threads
   */
  getThreads: function getThreads(task) {
    var _arguments = arguments,
        _this4 = this;

    return getEmailNew_asyncToGenerator( /*#__PURE__*/getEmailNew_regeneratorRuntime().mark(function _callee4() {
      var nextToken, threads, errCount, params, headers, timeZone, res;
      return getEmailNew_regeneratorRuntime().wrap(function _callee4$(_context4) {
        while (1) {
          switch (_context4.prev = _context4.next) {
            case 0:
              nextToken = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : null;
              threads = _arguments.length > 2 && _arguments[2] !== undefined ? _arguments[2] : [];
              errCount = _arguments.length > 3 && _arguments[3] !== undefined ? _arguments[3] : 0;
              params = {
                filterList: ["MARKETPLACE", "DATE"],
                marketplaceIdList: amazon["a" /* default */].MarketplaceObj[task.market_code],
                startDate: moment_default()(task.start_date).utc().toISOString(),
                endDate: moment_default()(task.end_date).utc().toISOString(),
                sortDirection: "DESCENDING" // 模拟数据：美国站点
                // marketplaceIdList: "ATVPDKIKX0DER",
                // startDate: "2024-08-22T16:00:00.000Z",
                // endDate: '2024-08-24T16:00:00.000Z',

              };

              if (nextToken) {
                params.nextToken = nextToken;
              }

              _context4.prev = 5;
              headers = {};
              timeZone = amazon["a" /* default */].IANA[task.market_code.toUpperCase()];

              if (timeZone) {
                headers['X-Browser-Time-Zone'] = timeZone;
              }

              _context4.next = 11;
              return axios_default()({
                url: _this4.host + "/messaging/api/global/cases",
                method: "GET",
                params: params,
                headers: headers,
                paramsSerializer: function paramsSerializer(params) {
                  return lib_default.a.stringify(params, {
                    arrayFormat: "repeat"
                  });
                }
              });

            case 11:
              res = _context4.sent;
              threads = threads.concat(res.data.cases || []);

              if (!res.data.nextToken) {
                _context4.next = 19;
                break;
              }

              _context4.next = 16;
              return _this4.getThreads(task, res.data.nextToken, threads);

            case 16:
              return _context4.abrupt("return", _context4.sent);

            case 19:
              log["a" /* default */].setLog("[".concat(task.task_id, "] \u7AD9\u5185\u4FE1\u5217\u8868\u6293\u53D6\u6210\u529F\uFF0C\u5171").concat(threads.length, "\u6761\u6D88\u606F"));
              return _context4.abrupt("return", threads);

            case 21:
              _context4.next = 36;
              break;

            case 23:
              _context4.prev = 23;
              _context4.t0 = _context4["catch"](5);

              if (!(errCount < 2)) {
                _context4.next = 34;
                break;
              }

              log["a" /* default */].setLog("[".concat(task.task_id, "] \u7AD9\u5185\u4FE1\u5217\u8868\u83B7\u53D6\u5931\u8D25----").concat(Object(util["u" /* isError */])(_context4.t0), "\uFF0C\u5373\u5C06\u91CD\u8BD5\u7B2C ").concat(errCount + 1, " \u6B21"));
              _context4.next = 29;
              return Object(util["h" /* delayed */])(3000);

            case 29:
              _context4.next = 31;
              return _this4.getThreads(task, nextToken, threads, ++errCount);

            case 31:
              return _context4.abrupt("return", _context4.sent);

            case 34:
              _this4.handleError(task, 14, "[".concat(task.task_id, "] \u90AE\u7BB1\u5217\u8868\u83B7\u53D6\u5931\u8D25----\u53EF\u80FD\u662F\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25\u5BFC\u81F4"));

              return _context4.abrupt("return", threads);

            case 36:
            case "end":
              return _context4.stop();
          }
        }
      }, _callee4, null, [[5, 23]]);
    }))();
  },

  /**
   * @description 获取邮件详情
   */
  getMessages: function getMessages(task) {
    var _arguments2 = arguments,
        _this5 = this;

    return getEmailNew_asyncToGenerator( /*#__PURE__*/getEmailNew_regeneratorRuntime().mark(function _callee5() {
      var nextPageToken, details, count, params, res, incomingPartyCase, caseArtifacts, taskStartDate, storage, lastStoredTimestamp, lastStoredDate, newArtifacts, i, artifact, artifactDate, newNextPageToken, firstArtifact, firstCreatedDate, startDate, lastArtifact, utcTimestamp;
      return getEmailNew_regeneratorRuntime().wrap(function _callee5$(_context5) {
        while (1) {
          switch (_context5.prev = _context5.next) {
            case 0:
              nextPageToken = _arguments2.length > 1 && _arguments2[1] !== undefined ? _arguments2[1] : null;
              details = _arguments2.length > 2 && _arguments2[2] !== undefined ? _arguments2[2] : {};
              count = _arguments2.length > 3 && _arguments2[3] !== undefined ? _arguments2[3] : 0;
              params = {
                marketplaceId: task.marketplace_id
              };

              if (nextPageToken) {
                params.nextPageToken = nextPageToken;
              }

              _context5.prev = 5;
              _context5.next = 8;
              return axios_default()({
                url: "".concat(_this5.host, "/messaging/api/global/cases/").concat(task.thread_id),
                method: "GET",
                params: params
              });

            case 8:
              res = _context5.sent;

              if (!(!res.data || !res.data.partyCase)) {
                _context5.next = 12;
                break;
              }

              _this5.handleError(task, 15, "\u62C9\u53D6\u90AE\u4EF6\u8BE6\u60C5\u5931\u8D25\uFF0C\u53EF\u80FD\u662F\u8BF7\u6C42\u62A5\u9519\u5BFC\u81F4\u3002\u72B6\u6001\u7801: ".concat(res.status));

              return _context5.abrupt("return", []);

            case 12:
              // 增量更新邮件详情
              incomingPartyCase = res.data.partyCase;
              caseArtifacts = incomingPartyCase.caseArtifacts;
              taskStartDate = moment_default()(task.start_date).utc().toDate();
              _context5.next = 17;
              return util["y" /* localStorage */].getItem(["".concat(task.seller_id, "_").concat(task.thread_id)]);

            case 17:
              storage = _context5.sent;
              lastStoredTimestamp = storage["".concat(task.seller_id, "_").concat(task.thread_id)];
              lastStoredDate = lastStoredTimestamp ? moment_default()(parseInt(lastStoredTimestamp)).utc().toDate() : null;
              newArtifacts = [];
              i = caseArtifacts.length - 1;

            case 22:
              if (!(i >= 0)) {
                _context5.next = 33;
                break;
              }

              artifact = caseArtifacts[i];
              artifactDate = moment_default()(artifact.createdDate).utc().toDate(); // 如果邮件创建时间大于任务开始时间且大于上次存储的时间，则将其添加到新邮件列表中

              if (!(artifactDate > taskStartDate && (!lastStoredDate || artifactDate > lastStoredDate))) {
                _context5.next = 29;
                break;
              }

              newArtifacts.unshift(artifact);
              _context5.next = 30;
              break;

            case 29:
              return _context5.abrupt("break", 33);

            case 30:
              i--;
              _context5.next = 22;
              break;

            case 33:
              if (!(newArtifacts.length === 0)) {
                _context5.next = 36;
                break;
              }

              log["a" /* default */].setLog("[task_id=".concat(task.task_id, "] \u4F1A\u8BDD\u8BE6\u60C5\u83B7\u53D6\u5B8C\u6BD5\uFF0C\u6CA1\u6709\u65B0\u7684\u6D88\u606F\u3002\u6700\u65B0\u65F6\u95F4\u6233\uFF1A").concat(new Date(lastStoredTimestamp)));
              return _context5.abrupt("return", []);

            case 36:
              // 合并新的消息到 details
              if (!details.partyCase) {
                details.partyCase = getEmailNew_objectSpread(getEmailNew_objectSpread({}, incomingPartyCase), {}, {
                  caseArtifacts: newArtifacts
                });
              } else {
                details.partyCase.caseArtifacts = newArtifacts.concat(details.partyCase.caseArtifacts);
              } // 判断是否需要继续翻页


              newNextPageToken = res.data.nextPageToken;
              firstArtifact = caseArtifacts[0];
              firstCreatedDate = new Date(firstArtifact.createdDate);
              startDate = new Date(task.start_date);

              if (!(firstCreatedDate >= startDate && newNextPageToken)) {
                _context5.next = 45;
                break;
              }

              _context5.next = 44;
              return _this5.getMessages(task, newNextPageToken, details);

            case 44:
              return _context5.abrupt("return", _context5.sent);

            case 45:
              // 存储最后一条消息的时间戳到 localStorage
              lastArtifact = newArtifacts[newArtifacts.length - 1];
              utcTimestamp = moment_default()(lastArtifact.createdDate).utc().valueOf();
              util["y" /* localStorage */].setItem(getEmailNew_defineProperty({}, "".concat(task.seller_id, "_").concat(task.thread_id), utcTimestamp));
              _context5.next = 60;
              break;

            case 50:
              _context5.prev = 50;
              _context5.t0 = _context5["catch"](5);

              if (!(count < 2)) {
                _context5.next = 59;
                break;
              }

              console.error("\u62C9\u53D6\u90AE\u4EF6\u8BE6\u60C5\u5931\u8D25\uFF0C\u5373\u5C06\u91CD\u8BD5\u7B2C".concat(count++, "\u6B21 \u2014\u2014").concat(Object(util["u" /* isError */])(_context5.t0)));
              _context5.next = 56;
              return Object(util["h" /* delayed */])(3000);

            case 56:
              _context5.next = 58;
              return _this5.getMessages(task, nextPageToken, details, ++count);

            case 58:
              return _context5.abrupt("return", _context5.sent);

            case 59:
              _this5.handleError(task, 15, "\u62C9\u53D6\u90AE\u4EF6\u8BE6\u60C5\u5931\u8D25\uFF0C\u5DF2\u8FBE\u6700\u5927\u91CD\u8BD5\u6B21\u6570\u3002");

            case 60:
              return _context5.abrupt("return", details);

            case 61:
            case "end":
              return _context5.stop();
          }
        }
      }, _callee5, null, [[5, 50]]);
    }))();
  }
};
var getEmail = /*#__PURE__*/function () {
  var _ref = getEmailNew_asyncToGenerator( /*#__PURE__*/getEmailNew_regeneratorRuntime().mark(function _callee6(task) {
    var threadList, detailList, data;
    return getEmailNew_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            if (Object(util["i" /* executable */])("email")) {
              _context6.next = 2;
              break;
            }

            return _context6.abrupt("return", false);

          case 2:
            _context6.next = 4;
            return email.runThreadsTask(task);

          case 4:
            threadList = _context6.sent;
            _context6.next = 7;
            return email.runMessageTask(threadList || [], task);

          case 7:
            detailList = _context6.sent;

            if (!(!detailList || detailList.length === 0)) {
              _context6.next = 12;
              break;
            }

            log["a" /* default */].setLog("detailList为空，没有邮件可获取。");
            task.isDelete = true;
            return _context6.abrupt("return", false);

          case 12:
            // 需要上报的数据
            data = {
              type_id: task.type_id,
              seller_id: task.seller_id,
              code: 0,
              result: {
                threadList: threadList,
                detailList: detailList
              }
            }; // console.log(data, "data=============");

            return _context6.abrupt("return", data);

          case 14:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6);
  }));

  return function getEmail(_x) {
    return _ref.apply(this, arguments);
  };
}();
// EXTERNAL MODULE: ./src/config.js
var config = __webpack_require__("db49");

// EXTERNAL MODULE: ./src/data/task.js
var data_task = __webpack_require__("cec6");

// CONCATENATED MODULE: ./src/core/getReferenceId.js
function getReferenceId_typeof(obj) { "@babel/helpers - typeof"; return getReferenceId_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getReferenceId_typeof(obj); }

function getReferenceId_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = getReferenceId_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function getReferenceId_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getReferenceId_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getReferenceId_arrayLikeToArray(o, minLen); }

function getReferenceId_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getReferenceId_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getReferenceId_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getReferenceId_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getReferenceId_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getReferenceId_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getReferenceId_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getReferenceId_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }









/**
 * 任务status对应状态
 * 0: 获取中
 * 1: 获取成功
 * 11: 站点离线
 * 13: 页面加载超时
 * 14: 货件不存在
 * 15: 获取失败，亚马逊规则可能改变
 * 16: 货件详情页面可能已被关闭
 * 17: code error
 */

var reference = {
  // 是否是调试模式
  'process.env': '',
  // 总任务列表
  taskList: [],
  // 当前执行任务
  task: null,
  statusMap: {
    0: '获取中',
    1: '获取成功',
    11: '站点离线',
    13: '页面加载超时',
    14: '货件不存在',
    15: '获取失败，亚马逊规则可能改变',
    16: '货件详情页面可能已被关闭',
    17: '页面加载失败',
    18: '未获取到poId，请检查此货件是否有referenceid'
  },
  // 获取任务
  postTask: function postTask() {
    var _this = this;

    return getReferenceId_asyncToGenerator( /*#__PURE__*/getReferenceId_regeneratorRuntime().mark(function _callee() {
      var data, i, formData, res;
      return getReferenceId_regeneratorRuntime().wrap(function _callee$(_context) {
        while (1) {
          switch (_context.prev = _context.next) {
            case 0:
              if (!(_this['process.env'] === 'dev')) {
                _context.next = 2;
                break;
              }

              return _context.abrupt("return", [{
                task_id: 'TI20210420333231410',
                seller_id: 'A303OEQ77COZA8',
                market_code: 'US',
                shipment_id_list: [{
                  shipment_id: 'FBA16H7L6XB0'
                }, {
                  shipment_id: 'FBA16H7PWSJS'
                }, {
                  shipment_id: 'FBA16H7R0F7Y'
                }, {
                  shipment_id: 'FBA16H88YJWC'
                }]
              }]);

            case 2:
              // 整理接口传参
              data = [];

              for (i in amazon["a" /* default */].onlineSite) {
                amazon["a" /* default */].onlineSite[i].forEach(function (item) {
                  data.push({
                    seller_id: item.sellerId,
                    market_code: item.site
                  });
                });
              }

              formData = new FormData();
              formData.append('data', JSON.stringify(data));
              _context.next = 8;
              return _this.request(formData, 'fba_get_shipment_list');

            case 8:
              res = _context.sent;
              log["a" /* default */].setLog('reference任务:', JSON.stringify(res));

              if (!(res.code === 1)) {
                _context.next = 12;
                break;
              }

              return _context.abrupt("return", _this.arrangeTak(res.list));

            case 12:
              return _context.abrupt("return", []);

            case 13:
            case "end":
              return _context.stop();
          }
        }
      }, _callee);
    }))();
  },

  /**
   * 整理任务队列
   * 过滤货件单号为空的任务，添加code、status、error_msg字段
   * @param {*} list
   */
  arrangeTak: function arrangeTak(list) {
    var arr = list.filter(function (item) {
      if (item.shipment_id_list.length === 0) return false;
      item.code = 666;

      var _iterator = getReferenceId_createForOfIteratorHelper(item.shipment_id_list),
          _step;

      try {
        for (_iterator.s(); !(_step = _iterator.n()).done;) {
          var shipment = _step.value;
          shipment.status = 0;
          shipment.error_msg = '';
        }
      } catch (err) {
        _iterator.e(err);
      } finally {
        _iterator.f();
      }

      return item;
    });
    return arr;
  },
  // 上传任务
  updateTask: function updateTask() {
    var _this2 = this;

    return getReferenceId_asyncToGenerator( /*#__PURE__*/getReferenceId_regeneratorRuntime().mark(function _callee2() {
      var formData, res;
      return getReferenceId_regeneratorRuntime().wrap(function _callee2$(_context2) {
        while (1) {
          switch (_context2.prev = _context2.next) {
            case 0:
              if (!(_this2.task.length === 0)) {
                _context2.next = 2;
                break;
              }

              return _context2.abrupt("return");

            case 2:
              /** 调用上传接口 */
              formData = new FormData();
              formData.append('data', JSON.stringify(_this2.task));
              _context2.next = 6;
              return _this2.request(formData, 'fba_handle_shipment');

            case 6:
              res = _context2.sent;

              /** 上传状态 */
              _this2.task = _this2.task.map(function (item) {
                item.code = res.code;
                return item;
              });
              log["a" /* default */].setLog('reference上传结果', JSON.stringify(res));

            case 9:
            case "end":
              return _context2.stop();
          }
        }
      }, _callee2);
    }))();
  },
  request: function request(data, header) {
    return new Promise(function (resolve) {
      axios_default()({
        url: config["f" /* api */] + 'proxy',
        method: 'POST',
        data: data,
        headers: {
          // 'Ak-Domain': localStorage.getItem('domain') || 'erp',
          'Ak-Version': config["m" /* version */],
          'Ak-Client-Type': 'plugin',
          // 'Ak-Mac': localStorage.getItem('uuid'),
          // 'Auth-Token': localStorage.getItem('token'),
          'Ak-Business': header,
          'Content-Type': 'x-www-form-urlencoded'
        },
        adapter: fetch["b" /* default */]
      }).then(function (res) {
        resolve(res.data);
      }).catch(function (e) {
        resolve(e);
      });
    });
  },
  getReferenceId: function getReferenceId(info) {
    var _this3 = this;

    return getReferenceId_asyncToGenerator( /*#__PURE__*/getReferenceId_regeneratorRuntime().mark(function _callee3() {
      var existSite, _iterator2, _step2, item, checkFlag, res;

      return getReferenceId_regeneratorRuntime().wrap(function _callee3$(_context3) {
        while (1) {
          switch (_context3.prev = _context3.next) {
            case 0:
              _context3.next = 2;
              return amazon["a" /* default */].checkSite(info.market_code, info);

            case 2:
              existSite = _context3.sent;

              /** 循环获取Reference Id */
              _iterator2 = getReferenceId_createForOfIteratorHelper(info.shipment_id_list);
              _context3.prev = 4;

              _iterator2.s();

            case 6:
              if ((_step2 = _iterator2.n()).done) {
                _context3.next = 32;
                break;
              }

              item = _step2.value;
              _context3.next = 10;
              return amazon["a" /* default */].onlyCheckSite(info.market_code, info);

            case 10:
              checkFlag = _context3.sent;

              if (!(!checkFlag || !existSite || !amazon["a" /* default */].host)) {
                _context3.next = 20;
                break;
              }

              _context3.next = 14;
              return Object(util["J" /* suspend */])();

            case 14:
              if (!_context3.sent) {
                _context3.next = 17;
                break;
              }

              info.code = -1;
              return _context3.abrupt("return", false);

            case 17:
              item.error_msg = _this3.statusMap[info.status];
              item.status = info.status;
              return _context3.abrupt("continue", 30);

            case 20:
              _context3.next = 22;
              return _this3.getReferenceIdByApi(item.shipment_id);

            case 22:
              res = _context3.sent;
              _context3.t0 = res;

              if (_context3.t0) {
                _context3.next = 28;
                break;
              }

              _context3.next = 27;
              return _this3.createNewTabs("".concat(amazon["a" /* default */].host, "/fba/inbound-shipment/summary/").concat(item.shipment_id, "/tracking"));

            case 27:
              res = _context3.sent;

            case 28:
              /** 获取结果 */
              if (res.data) item.reference_id = res.data;else item.error_msg = res.msg ? res.msg : _this3.statusMap[res.code];
              item.status = res.code;

            case 30:
              _context3.next = 6;
              break;

            case 32:
              _context3.next = 37;
              break;

            case 34:
              _context3.prev = 34;
              _context3.t1 = _context3["catch"](4);

              _iterator2.e(_context3.t1);

            case 37:
              _context3.prev = 37;

              _iterator2.f();

              return _context3.finish(37);

            case 40:
              return _context3.abrupt("return", true);

            case 41:
            case "end":
              return _context3.stop();
          }
        }
      }, _callee3, null, [[4, 34, 37, 40]]);
    }))();
  },
  // 爬取亚马逊后台货件追踪编码--通过谷歌api用新的tab打开页面，等页面加载完毕拿到dom获取数据
  createNewTabs: function createNewTabs(url) {
    var _this4 = this;

    return new Promise(function (resolve) {
      chrome.tabs.create({
        url: url,
        active: false
      }, /*#__PURE__*/function () {
        var _ref = getReferenceId_asyncToGenerator( /*#__PURE__*/getReferenceId_regeneratorRuntime().mark(function _callee4(tab) {
          var res;
          return getReferenceId_regeneratorRuntime().wrap(function _callee4$(_context4) {
            while (1) {
              switch (_context4.prev = _context4.next) {
                case 0:
                  if (tab) {
                    _context4.next = 4;
                    break;
                  }

                  log["a" /* default */].setLog('货件详情页面可能已被关闭1');
                  resolve({
                    code: 16
                  });
                  return _context4.abrupt("return");

                case 4:
                  _context4.next = 6;
                  return _this4.getInfo(tab.id, 1);

                case 6:
                  res = _context4.sent;
                  resolve(res);

                case 8:
                case "end":
                  return _context4.stop();
              }
            }
          }, _callee4);
        }));

        return function (_x) {
          return _ref.apply(this, arguments);
        };
      }());
    });
  },
  // 发送指令获取，获取referenceID
  getInfo: function getInfo(tabId, count) {
    var _this5 = this;

    return getReferenceId_asyncToGenerator( /*#__PURE__*/getReferenceId_regeneratorRuntime().mark(function _callee6() {
      return getReferenceId_regeneratorRuntime().wrap(function _callee6$(_context6) {
        while (1) {
          switch (_context6.prev = _context6.next) {
            case 0:
              if (!(count > 40)) {
                _context6.next = 3;
                break;
              }

              chrome.tabs.remove(tabId);
              return _context6.abrupt("return", {
                code: 13
              });

            case 3:
              return _context6.abrupt("return", new Promise(function (resolve) {
                util["b" /* alarms */].setTimeout(function () {
                  chrome.tabs.get(tabId, /*#__PURE__*/function () {
                    var _ref2 = getReferenceId_asyncToGenerator( /*#__PURE__*/getReferenceId_regeneratorRuntime().mark(function _callee5(tab) {
                      var r, port, status;
                      return getReferenceId_regeneratorRuntime().wrap(function _callee5$(_context5) {
                        while (1) {
                          switch (_context5.prev = _context5.next) {
                            case 0:
                              _context5.prev = 0;

                              if (tab) {
                                _context5.next = 7;
                                break;
                              }

                              chrome.tabs.remove(tabId);
                              log["a" /* default */].setLog('货件详情页面可能已被关闭2');
                              resolve({
                                code: 16
                              });
                              _context5.next = 15;
                              break;

                            case 7:
                              if (!(tab.status == 'loading')) {
                                _context5.next = 14;
                                break;
                              }

                              _context5.next = 10;
                              return _this5.getInfo(tabId, ++count);

                            case 10:
                              r = _context5.sent;
                              resolve(r);
                              _context5.next = 15;
                              break;

                            case 14:
                              if (tab.status == 'complete') {
                                /** 页面加载完成 */
                                port = chrome.tabs.connect(tab.id, {
                                  name: 'get-referenceId'
                                });
                                status = false;
                                port.postMessage({
                                  cmd: 'reference'
                                });
                                port.onMessage.addListener(function (info) {
                                  chrome.tabs.remove(tab.id);
                                  status = true;
                                  resolve(info);
                                  chrome.alarms.clear('referenceRemovePage');
                                });
                                /** 如果用户在这一步手动关掉页面，Promise状态就会一直padding，需要给个时限，30秒 */

                                util["b" /* alarms */].setTimeout(function () {
                                  if (!status) {
                                    chrome.tabs.remove(tabId);
                                    resolve({
                                      code: 16
                                    });
                                    log["a" /* default */].setLog('货件详情页面可能已被关闭3');
                                  }
                                }, 'referenceRemovePage', 20 * 1000);
                              }

                            case 15:
                              _context5.next = 22;
                              break;

                            case 17:
                              _context5.prev = 17;
                              _context5.t0 = _context5["catch"](0);

                              if (tab) {
                                chrome.tabs.remove(tab.id);
                              }

                              log["a" /* default */].setLog("getInfo error\uFF1A".concat(Object(util["u" /* isError */])(_context5.t0)));
                              resolve({
                                code: 17,
                                msg: "getInfo error".concat(Object(util["u" /* isError */])(_context5.t0))
                              });

                            case 22:
                            case "end":
                              return _context5.stop();
                          }
                        }
                      }, _callee5, null, [[0, 17]]);
                    }));

                    return function (_x2) {
                      return _ref2.apply(this, arguments);
                    };
                  }());
                }, 'referenceGetInfo', 1000);
              }));

            case 4:
            case "end":
              return _context6.stop();
          }
        }
      }, _callee6);
    }))();
  },
  // 爬取亚马逊后台货件追踪编号--通过接口（页面爬下来的csrf_token无效）
  // async requestShipmentAPI (item, csrf_token) {
  //   const formData = new FormData()
  //   formData.append('method', 'GET')
  //   formData.append('model', `{"shipmentId":${item.shipment_id},"hasCartonContentsTreatment":1}`)
  //   formData.append('modelAttributes', `{"CSRF_token":${csrf_token}}`)
  //   let smsShipment = await nativeRequest(`${amazon.host}/gp/fba/core/data/models/sms-shipment.html`, 'POST', formData).catch((e) => {
  //     if (`${e}`.indexOf('403') !== -1) {
  //       log.setLog('无权限访问')
  //       item.error_msg = '无权限访问'
  //     } else {
  //       log.setLog(`sms-shipment api error:${e}`)
  //       item.error_msg = `sms-shipment api error:${e}`
  //     }
  //   })
  //   if (!smsShipment) {
  //     smsShipment = await nativeRequest(`${amazon.host}/gp/fba/core/data/models/shipment.html`, 'POST', formData).catch((e) => {
  //       if (`${e}`.indexOf('403') !== -1) {
  //         log.setLog('无权限访问')
  //         item.error_msg = '无权限访问'
  //       } else {
  //         log.setLog(`sms-shipment api error:${e}`)
  //         item.error_msg = `sms-shipment api error:${e}`
  //       }
  //     })
  //   }
  //   log.setLog('smsShipment', smsShipment)
  // },
  // 爬取亚马逊货件详情页面csrf_token
  // async getCSRF_token (item) {
  //   return new Promise((resolve) => {
  //     axios({
  //       methods: 'get',
  //       url: `${amazon.host}/gp/fba/inbound-shipment-workflow/index.html/ref=ag_fbaisw_name_fbasqs#${item.shipment_id}/summary/tracking`
  //     }).then((res) => {
  //       try {
  //         if (!res.data) {
  //           log.setLog('货件详情页面未返回数据')
  //           item.error_msg = '货件详情页面未返回数据'
  //           resolve(false)
  //           return
  //         }
  //         const str = res.data.split("'CSRF_token', '")[1]
  //         const csrf_token = str && str.split("');")[0]
  //         if (!csrf_token) {
  //           log.setLog(`获取csrf_token节点失败，亚马逊规则可能有变化`)
  //           item.error_msg = `获取csrf_token节点失败，亚马逊规则可能有变化`
  //           resolve(false)
  //           return
  //         }
  //         resolve(csrf_token)
  //       } catch (e) {
  //         log.setLog(`getCSRF_token：${JSON.stringify(e)}`)
  //         item.error_msg = `getCSRF_token：${JSON.stringify(e)}`
  //         resolve(false)
  //       }
  //     }).catch((e) => {
  //       if (`${e}`.indexOf('403') !== -1) {
  //         log.setLog('无权限访问')
  //         item.error_msg = '无权限访问'
  //       }
  //       log.setLog(`货件详情页面加载失败，${JSON.stringify(e)}`)
  //       item.error_msg = `货件详情页面加载失败，${JSON.stringify(e)}`
  //       resolve(false)
  //     })
  //   })
  // }
  // 通过接口获取referenceid
  getReferenceIdByApi: function getReferenceIdByApi(shipmentId) {
    return getReferenceId_asyncToGenerator( /*#__PURE__*/getReferenceId_regeneratorRuntime().mark(function _callee7() {
      var res;
      return getReferenceId_regeneratorRuntime().wrap(function _callee7$(_context7) {
        while (1) {
          switch (_context7.prev = _context7.next) {
            case 0:
              _context7.prev = 0;
              _context7.next = 3;
              return Object(util["z" /* nativeRequest */])(amazon["a" /* default */].host + '/fba/shippingqueue/api/v1/shipment/queryShipment', 'GET', {
                t2pLaunched: true,
                shipmentId: shipmentId
              });

            case 3:
              res = _context7.sent;

              if (!(res && res.poId)) {
                _context7.next = 9;
                break;
              }

              log["a" /* default */].setLog('接口获取referenceid成功');
              return _context7.abrupt("return", {
                data: res.poId,
                code: 1
              });

            case 9:
              if (!res) {
                _context7.next = 11;
                break;
              }

              return _context7.abrupt("return", {
                msg: '未获取到poId，请检查此货件是否有referenceid',
                code: 18
              });

            case 11:
              _context7.next = 16;
              break;

            case 13:
              _context7.prev = 13;
              _context7.t0 = _context7["catch"](0);
              log["a" /* default */].setLog('接口获取referenceid失败', Object(util["u" /* isError */])(_context7.t0));

            case 16:
            case "end":
              return _context7.stop();
          }
        }
      }, _callee7, null, [[0, 13]]);
    }))();
  }
};
function getReference(_x3) {
  return _getReference.apply(this, arguments);
} // 订阅抓取报表事件

function _getReference() {
  _getReference = getReferenceId_asyncToGenerator( /*#__PURE__*/getReferenceId_regeneratorRuntime().mark(function _callee8(task) {
    var res;
    return getReferenceId_regeneratorRuntime().wrap(function _callee8$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            if (!(task.status === 7)) {
              _context8.next = 2;
              break;
            }

            return _context8.abrupt("return", {
              type_id: task.type_id,
              seller_id: task.seller_id,
              code: 0,
              result: task.shipment_id_list
            });

          case 2:
            _context8.next = 4;
            return reference.getReferenceId(task);

          case 4:
            res = _context8.sent;

            if (!res) {
              _context8.next = 7;
              break;
            }

            return _context8.abrupt("return", {
              type_id: task.type_id,
              seller_id: task.seller_id,
              code: 0,
              result: task.shipment_id_list
            });

          case 7:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee8);
  }));
  return _getReference.apply(this, arguments);
}

Object(utils_event["b" /* monitor */])('TASK_GETREFERENCE', getReference);
// EXTERNAL MODULE: ./node_modules/cheerio/index.js
var cheerio = __webpack_require__("02cc");
var cheerio_default = /*#__PURE__*/__webpack_require__.n(cheerio);

// CONCATENATED MODULE: ./src/core/replyQA.js
function replyQA_typeof(obj) { "@babel/helpers - typeof"; return replyQA_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, replyQA_typeof(obj); }

function replyQA_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ replyQA_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == replyQA_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function replyQA_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function replyQA_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { replyQA_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { replyQA_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }







var siteToUrl = {
  // 北美地区
  US: 'https://www.amazon.com',
  CA: 'https://www.amazon.ca',
  MX: 'https://www.amazon.com.mx',
  BR: 'https://www.amazon.com.br',
  // 欧洲地区
  UK: 'https://www.amazon.co.uk',
  DE: 'https://www.amazon.de',
  ES: 'https://www.amazon.es',
  IT: 'https://www.amazon.it',
  FR: 'https://www.amazon.fr',
  NL: 'https://www.amazon.nl',
  SE: 'https://www.amazon.se',
  IN: 'https://www.amazon.in',
  AE: 'https://www.amazon.ae',
  SA: 'https://www.amazon.sa',
  PL: 'https://www.amazon.pl',
  TR: 'https://www.amazon.com.tr',
  BE: 'https://www.amazon.com.be',
  IE: 'https://www.amazon.ie',
  EG: 'https://www.amazon.eg',
  // 远东地区
  SG: 'https://www.amazon.sg',
  JP: 'https://www.amazon.co.jp',
  AU: 'https://www.amazon.com.au'
};
var host;

function run(_x, _x2) {
  return _run.apply(this, arguments);
}
/**
 * ##### 产品说asin下所有店铺都能回复，这个暂时注释掉 #####
 * @description 店铺能否回复此问题（上架问题对应商品的店铺才可回复）
 * @return 0：可回复 1：此店铺不能回复 2：没有获取到sellerId，可能是亚马逊规则改变 3：商品页面加载失败
 */
// async function judgeQuestionExist (seller_id, asin, market_code) {
//   const res = await nativeRequest(`${siteToUrl[market_code]}/dp/${asin}`,
//     'get'
//   ).catch((e) => {
//     log.setLog('商品页面加载失败', e)
//   })
//   if (res) {
//     const $ = cheerio.load(res)
//     const quesSellerId = $('#merchantID').attr('value')
//     if (!quesSellerId) return { reply: false, msg: '没有获取到sellerId，可能是亚马逊规则改变' }
//     return quesSellerId === seller_id ? { reply: true } : { reply: false, msg: '此店铺不能回复' }
//   }
//   return { reply: false, msg: '商品页面加载失败' }
// }

/**
 * @description 切换亚马逊前台语言为中文，如果没中文，则使用本国语言
 */


function _run() {
  _run = replyQA_asyncToGenerator( /*#__PURE__*/replyQA_regeneratorRuntime().mark(function _callee(taskData, task_id) {
    var url, question_id, answer, __token_, asin, tokenRes, $, arr, param;

    return replyQA_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            url = taskData.url, question_id = taskData.question_id, answer = taskData.answer; // 先获取__token_、asin，因为QA任务列表需要展示asin

            _context.next = 3;
            return Object(util["z" /* nativeRequest */])(url, 'get').catch(function (e) {
              log["a" /* default */].setLog('加载token页面失败', Object(util["u" /* isError */])(e));
            });

          case 3:
            tokenRes = _context.sent;

            if (tokenRes) {
              $ = cheerio_default.a.load(tokenRes);
              __token_ = $('input[name="__token_"]') && $('input[name="__token_"]').attr('value');
              asin = taskData.asin = $("#askPostAnswerForm-".concat(question_id, " input[name=\"asin\"]")) && $("#askPostAnswerForm-".concat(question_id, " input[name=\"asin\"]")).attr('value');
              log["a" /* default */].setLog('__token_', __token_);
              log["a" /* default */].setLog('asin', asin);
            }

            if (__token_) {
              _context.next = 7;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: '回复页面token获取失败'
            });

          case 7:
            if (asin) {
              _context.next = 9;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: 'asin获取失败'
            });

          case 9:
            _context.prev = 9;
            _context.next = 12;
            return Promise.all([Object(util["p" /* getCookies */])({
              url: url,
              name: 'at-main'
            }), Object(util["p" /* getCookies */])({
              url: url,
              name: 'at-acbit'
            }), Object(util["p" /* getCookies */])({
              url: 'https://www.amazon.com',
              name: 'at-main'
            })]);

          case 12:
            arr = _context.sent;

            if (arr.find(function (item) {
              return item && item.value;
            })) {
              _context.next = 15;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: '当前站点的亚马逊买家页面未登录'
            });

          case 15:
            _context.next = 20;
            break;

          case 17:
            _context.prev = 17;
            _context.t0 = _context["catch"](9);
            log["a" /* default */].setLog('没有cookies访问权限');

          case 20:
            _context.next = 22;
            return switchLanguage();

          case 22:
            param = {
              __token_: __token_,
              asin: asin,
              destinationPageTypeString: 'SINGLE_ANSWER_PAGE',
              postAnswerSource: 'allAnswersPage',
              askErrorUrl: "/ask/questions/".concat(question_id, "/?responseType=postAnswer"),
              answerSolicitationSourceTypeString: 'NONE',
              mediaStagingUrl: '',
              mediaStagingId: '',
              answer: answer
            };
            param = lib_default.a.stringify(param);
            _context.next = 26;
            return requestReplyQA(param, question_id, task_id);

          case 26:
            return _context.abrupt("return", _context.sent);

          case 27:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[9, 17]]);
  }));
  return _run.apply(this, arguments);
}

function switchLanguage() {
  return _switchLanguage.apply(this, arguments);
}
/**
 * @description 请求回复接口
 * @param {Object} 请求参数
 * @param {String} 问题ID
 */


function _switchLanguage() {
  _switchLanguage = replyQA_asyncToGenerator( /*#__PURE__*/replyQA_regeneratorRuntime().mark(function _callee2() {
    return replyQA_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.next = 2;
            return Object(util["z" /* nativeRequest */])("".concat(host, "/-/zh/ref=nav_logo?language=zh_CN"), 'get').catch(function (e) {
              log["a" /* default */].setLog('[QA回复]切换语言失败', Object(util["u" /* isError */])(e));
            });

          case 2:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return _switchLanguage.apply(this, arguments);
}

function requestReplyQA(_x3, _x4, _x5) {
  return _requestReplyQA.apply(this, arguments);
}

function _requestReplyQA() {
  _requestReplyQA = replyQA_asyncToGenerator( /*#__PURE__*/replyQA_regeneratorRuntime().mark(function _callee3(data, question_id, task_id) {
    var replyRes, $, isLogin, successDom, errorDom, replyName;
    return replyQA_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.next = 2;
            return axios_default()({
              method: 'post',
              url: "".concat(host, "/ask/questions/").concat(question_id, "/answers/create"),
              data: data,
              headers: {
                'content-type': 'application/x-www-form-urlencoded'
              },
              adapter: fetch["b" /* default */]
            }).catch(function (e) {
              log["a" /* default */].setLog('回复异常，亚马逊接口报错', Object(util["u" /* isError */])(e));
            });

          case 2:
            replyRes = _context3.sent;

            if (!(!replyRes || !replyRes.data)) {
              _context3.next = 5;
              break;
            }

            return _context3.abrupt("return", {
              code: 1,
              msg: '回复异常，亚马逊接口报错'
            });

          case 5:
            // 以防cookie出问题，再次判断登录状态
            $ = cheerio_default.a.load(replyRes.data);
            isLogin = $('.a-section form') && $('.a-section form').attr('name');

            if (!(isLogin === 'signIn')) {
              _context3.next = 9;
              break;
            }

            return _context3.abrupt("return", {
              code: 2,
              msg: '当前站点的亚马逊买家页面未登录'
            });

          case 9:
            successDom = $('.a-alert-success .a-alert-heading') && $('.a-alert-success .a-alert-heading').text();
            errorDom = $('.a-alert-error .a-alert-content') && $('.a-alert-error .a-alert-content').text();
            replyName = $('.a-profile-name') && $('.a-profile-name').text();
            if (!replyName) log["a" /* default */].report('获取不到回复人姓名，亚马逊规则可能改变', 'error', task_id);

            if (!successDom) {
              _context3.next = 15;
              break;
            }

            return _context3.abrupt("return", {
              code: 0,
              msg: successDom,
              replyName: replyName
            });

          case 15:
            if (!errorDom) {
              _context3.next = 17;
              break;
            }

            return _context3.abrupt("return", {
              code: 2,
              msg: errorDom
            });

          case 17:
            // 如果successDom和errorDom都没有，可能是亚马逊规则改变
            log["a" /* default */].report('获取不到回复结果，亚马逊规则可能改变', 'error', task_id);
            return _context3.abrupt("return", {
              code: 1,
              msg: '获取不到回复结果，亚马逊规则可能改变'
            });

          case 19:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));
  return _requestReplyQA.apply(this, arguments);
}

function replyQA(_x6) {
  return _replyQA.apply(this, arguments);
}

function _replyQA() {
  _replyQA = replyQA_asyncToGenerator( /*#__PURE__*/replyQA_regeneratorRuntime().mark(function _callee4(task) {
    var _yield$run, code, msg, replyName;

    return replyQA_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            // 如果已经执行过，则不在执行，直接上传
            host = siteToUrl[task.market_code];
            _context4.next = 3;
            return run(task.data, task.task_id);

          case 3:
            _yield$run = _context4.sent;
            code = _yield$run.code;
            msg = _yield$run.msg;
            replyName = _yield$run.replyName;
            log["a" /* default */].setLog('回复QA结果', msg);
            task.error_time = 10; // task.isDelete = true
            // 执行状态

            task.run_status = code + 1;
            return _context4.abrupt("return", {
              type_id: task.type_id,
              seller_id: task.seller_id,
              code: code,
              msg: msg,
              result: replyName ? {
                replyName: replyName
              } : null
            });

          case 11:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));
  return _replyQA.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/getIpi.js
function getIpi_typeof(obj) { "@babel/helpers - typeof"; return getIpi_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getIpi_typeof(obj); }

function getIpi_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getIpi_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getIpi_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getIpi_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = getIpi_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function getIpi_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getIpi_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getIpi_arrayLikeToArray(o, minLen); }

function getIpi_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getIpi_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getIpi_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getIpi_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getIpi_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }





/**
 * 任务状态
 */

var IPI = {
  // 是否是调试模式
  'process.env': '',
  // 需要执行的任务列表
  task: [],
  // 历史任务列表-用于展示
  taskMap: {},
  statusMap: {
    0: '获取中',
    666: '已抓取',
    11: '站点离线',
    13: '页面加载超时',
    14: '补货限制页面可能已被关闭',
    15: '页面加载失败'
  },
  // 初始化
  onInit: function onInit(force) {
    var _this = this;

    return getIpi_asyncToGenerator( /*#__PURE__*/getIpi_regeneratorRuntime().mark(function _callee() {
      var map, start, _iterator, _step, info, res, end;

      return getIpi_regeneratorRuntime().wrap(function _callee$(_context) {
        while (1) {
          switch (_context.prev = _context.next) {
            case 0:
              _context.next = 2;
              return _this.postTask(force);

            case 2:
              _this.task = _context.sent;

              if (!(_this.task.length === 0)) {
                _context.next = 6;
                break;
              }

              Object(data_task["a" /* TaskStatus */])(0);
              return _context.abrupt("return", {
                code: 0,
                msg: '没有数据可获取'
              });

            case 6:
              /** 更新页面任务状态 */
              map = Object.keys(_this.taskMap).length > 0 ? _this.taskMap : {};

              _this.task.forEach(function (item) {
                item.code = 0;
                map[item.market_code] = item;
              });
              /** 定义一个中间对象是为了解决第一次获取ipi任务时，视图不渲染问题 */


              _this.taskMap = map;
              /** 如果是火狐，通知pop更新数据 */

              chrome.runtime.sendMessage({
                type: 'updateBgData'
              }, function (response) {});
              _context.prev = 10;

              if (!Object(data_task["a" /* TaskStatus */])()) {
                _context.next = 14;
                break;
              }

              log["a" /* default */].setLog("\u56E0\u5F53\u524D\u6B63\u5728\u6267\u884C".concat(Object(data_task["a" /* TaskStatus */])('task'), "\uFF0C\u6545\u672C\u6B21\u4EFB\u52A1\u4E2D\u6B62"));
              return _context.abrupt("return", {
                code: 0,
                msg: '当前正在执行其他任务，请稍后再试'
              });

            case 14:
              _context.next = 20;
              break;

            case 16:
              _context.prev = 16;
              _context.t0 = _context["catch"](10);
              log["a" /* default */].setLog('ipi error', Object(util["u" /* isError */])(_context.t0));
              return _context.abrupt("return", {
                code: 0,
                msg: 'ipi error'
              });

            case 20:
              _context.next = 22;
              return Object(util["J" /* suspend */])();

            case 22:
              if (!_context.sent) {
                _context.next = 24;
                break;
              }

              return _context.abrupt("return", {
                code: 0,
                msg: '已中断执行'
              });

            case 24:
              _context.next = 26;
              return Object(util["i" /* executable */])();

            case 26:
              if (_context.sent) {
                _context.next = 28;
                break;
              }

              return _context.abrupt("return", {
                code: 0,
                msg: '当前时间不可执行任务'
              });

            case 28:
              /** 切换任务执行状态 */
              Object(data_task["a" /* TaskStatus */])(5);
              log["a" /* default */].setLog('开始获取ipi数据');
              /** run */

              start = new Date().getTime();
              _iterator = getIpi_createForOfIteratorHelper(_this.task);
              _context.prev = 32;

              _iterator.s();

            case 34:
              if ((_step = _iterator.n()).done) {
                _context.next = 53;
                break;
              }

              info = _step.value;
              _context.next = 38;
              return Object(util["i" /* executable */])();

            case 38:
              _context.t1 = !_context.sent;

              if (_context.t1) {
                _context.next = 43;
                break;
              }

              _context.next = 42;
              return Object(util["J" /* suspend */])();

            case 42:
              _context.t1 = _context.sent;

            case 43:
              if (!_context.t1) {
                _context.next = 46;
                break;
              }

              Object(data_task["a" /* TaskStatus */])(0);
              return _context.abrupt("return", {
                code: 0,
                msg: '当前时间不可执行任务'
              });

            case 46:
              _context.next = 48;
              return _this.getData(info);

            case 48:
              res = _context.sent;

              /** 获取结果 */
              if (res.data) {
                Object.assign(info, res.data, {
                  code: res.code
                });
              } else {
                info.task_message = res.msg ? res.msg : _this.statusMap[res.code];
                info.code = res.code;
              }
              /** 更新时间 */


              info.updateTime = Object(util["f" /* customizeFormatDate */])(new Date());

            case 51:
              _context.next = 34;
              break;

            case 53:
              _context.next = 58;
              break;

            case 55:
              _context.prev = 55;
              _context.t2 = _context["catch"](32);

              _iterator.e(_context.t2);

            case 58:
              _context.prev = 58;

              _iterator.f();

              return _context.finish(58);

            case 61:
              end = new Date().getTime();
              log["a" /* default */].setLog('获取完毕', "\u8017\u65F6:".concat(end - start));
              /** 上传 */

              if (!(_this.task.length > 0)) {
                _context.next = 66;
                break;
              }

              _context.next = 66;
              return _this.uploadTask();

            case 66:
              // 执行完毕，切换空闲状态
              Object(data_task["a" /* TaskStatus */])(0);
              return _context.abrupt("return", {
                code: 1,
                msg: '获取成功'
              });

            case 68:
            case "end":
              return _context.stop();
          }
        }
      }, _callee, null, [[10, 16], [32, 55, 58, 61]]);
    }))();
  },
  postTask: function postTask(not_check) {
    var _this2 = this;

    return getIpi_asyncToGenerator( /*#__PURE__*/getIpi_regeneratorRuntime().mark(function _callee2() {
      var res;
      return getIpi_regeneratorRuntime().wrap(function _callee2$(_context2) {
        while (1) {
          switch (_context2.prev = _context2.next) {
            case 0:
              if (!(_this2['process.env'] === 'dev')) {
                _context2.next = 2;
                break;
              }

              return _context2.abrupt("return", [{
                task_id: 'TI20210420333231410',
                seller_id: 'A303OEQ77COZA8',
                market_code: 'US'
              }, {
                task_id: 'TI20210420333231411',
                seller_id: 'A303OEQ77COZA8',
                market_code: 'CA'
              }, {
                task_id: 'TI20210420333231412',
                seller_id: 'A303OEQ77COZA8',
                market_code: 'MX'
              }]);

            case 2:
              _context2.next = 4;
              return Object(util["E" /* requestProxy */])({
                method: 'get',
                headers: {
                  'Ak-Business': 'fba_limit_get_auth_seller'
                },
                params: {
                  seller_ids: amazon["a" /* default */].sellerId,
                  not_check: not_check
                }
              });

            case 4:
              res = _context2.sent;

              if (!(res && res.code === 1)) {
                _context2.next = 9;
                break;
              }

              return _context2.abrupt("return", res.data || []);

            case 9:
              log["a" /* default */].setLog(res.msg);

            case 10:
              return _context2.abrupt("return", []);

            case 11:
            case "end":
              return _context2.stop();
          }
        }
      }, _callee2);
    }))();
  },

  /** 上传ipi数据 */
  uploadTask: function uploadTask() {
    var _this3 = this;

    return getIpi_asyncToGenerator( /*#__PURE__*/getIpi_regeneratorRuntime().mark(function _callee3() {
      var formData, error, uploadRes;
      return getIpi_regeneratorRuntime().wrap(function _callee3$(_context3) {
        while (1) {
          switch (_context3.prev = _context3.next) {
            case 0:
              formData = new FormData();
              formData.append('list', JSON.stringify(_this3.task));
              _context3.next = 4;
              return Object(util["E" /* requestProxy */])({
                data: formData,
                method: 'post',
                headers: {
                  'Ak-Business': 'fba_limit_update_ipi'
                }
              }).catch(function (e) {
                error = Object(util["u" /* isError */])(e);
              });

            case 4:
              uploadRes = _context3.sent;

              if (uploadRes.code === 1) {
                log["a" /* default */].setLog('****上传成功****');
              } else {
                log["a" /* default */].report("xxxx\u4E0A\u4F20ipi\u6570\u636E\u5931\u8D25xxxx\u539F\u56E0\uFF1A".concat(error || uploadRes.msg), 'except', _this3.task.task_id);
              }

            case 6:
            case "end":
              return _context3.stop();
          }
        }
      }, _callee3);
    }))();
  },
  getData: function getData(info) {
    var _this4 = this;

    return getIpi_asyncToGenerator( /*#__PURE__*/getIpi_regeneratorRuntime().mark(function _callee4() {
      var existSite, res, _oldRes, _oldRes$data, excess_inventory_rate, excess_inventory_color, sell_through_rate, sell_through_color, stranded_inventory_rate, stranded_inventory_color, in_stock_rate, in_stock_color, oldRes;

      return getIpi_regeneratorRuntime().wrap(function _callee4$(_context4) {
        while (1) {
          switch (_context4.prev = _context4.next) {
            case 0:
              _context4.next = 2;
              return amazon["a" /* default */].checkSite(info.market_code, info, true);

            case 2:
              existSite = _context4.sent;

              if (existSite) {
                _context4.next = 5;
                break;
              }

              return _context4.abrupt("return", {
                code: info.status
              });

            case 5:
              if (!['UK', 'US', 'DE', 'FR', 'IT', 'ES', 'CA', 'JP', 'AU'].includes(info.market_code.toLocaleUpperCase())) {
                _context4.next = 14;
                break;
              }

              _context4.next = 8;
              return _this4.getNewIpi(info);

            case 8:
              res = _context4.sent;
              _context4.next = 11;
              return _this4.createNewTabs(info);

            case 11:
              _oldRes = _context4.sent;

              if (res.code === 666) {
                if (_oldRes.data) {
                  _oldRes$data = _oldRes.data, excess_inventory_rate = _oldRes$data.excess_inventory_rate, excess_inventory_color = _oldRes$data.excess_inventory_color, sell_through_rate = _oldRes$data.sell_through_rate, sell_through_color = _oldRes$data.sell_through_color, stranded_inventory_rate = _oldRes$data.stranded_inventory_rate, stranded_inventory_color = _oldRes$data.stranded_inventory_color, in_stock_rate = _oldRes$data.in_stock_rate, in_stock_color = _oldRes$data.in_stock_color;
                  res.data.ipi = _oldRes.data.ipi;
                  res.data.statistics = {
                    excess_inventory_rate: excess_inventory_rate,
                    excess_inventory_color: excess_inventory_color,
                    sell_through_rate: sell_through_rate,
                    sell_through_color: sell_through_color,
                    stranded_inventory_rate: stranded_inventory_rate,
                    stranded_inventory_color: stranded_inventory_color,
                    in_stock_rate: in_stock_rate,
                    in_stock_color: in_stock_color
                  };
                }

                res.data.type = 1;
                res.data = JSON.stringify(res.data);
              }

              return _context4.abrupt("return", res);

            case 14:
              _context4.next = 16;
              return _this4.createNewTabs(info);

            case 16:
              oldRes = _context4.sent;

              if (oldRes.code === 666 && oldRes.data) {
                oldRes.data.type = 0;
                oldRes.data = JSON.stringify(oldRes.data);
              }

              return _context4.abrupt("return", oldRes);

            case 19:
            case "end":
              return _context4.stop();
          }
        }
      }, _callee4);
    }))();
  },
  // 爬取亚马逊后台库存绩效--通过谷歌api用新的tab打开页面，等页面加载完毕拿到dom获取数据
  createNewTabs: function createNewTabs() {
    var _this5 = this;

    return new Promise(function (resolve) {
      chrome.tabs.create({
        url: "".concat(amazon["a" /* default */].host, "/inventory-performance/dashboard"),
        active: false
      }, /*#__PURE__*/function () {
        var _ref = getIpi_asyncToGenerator( /*#__PURE__*/getIpi_regeneratorRuntime().mark(function _callee5(tab) {
          var res;
          return getIpi_regeneratorRuntime().wrap(function _callee5$(_context5) {
            while (1) {
              switch (_context5.prev = _context5.next) {
                case 0:
                  if (tab) {
                    _context5.next = 4;
                    break;
                  }

                  log["a" /* default */].setLog('库存绩效页面可能已被关闭1');
                  resolve({
                    code: 14
                  });
                  return _context5.abrupt("return");

                case 4:
                  _context5.next = 6;
                  return _this5.getInfo(tab.id, 1);

                case 6:
                  res = _context5.sent;
                  resolve(res);

                case 8:
                case "end":
                  return _context5.stop();
              }
            }
          }, _callee5);
        }));

        return function (_x) {
          return _ref.apply(this, arguments);
        };
      }());
    });
  },
  // 向页面发送指令，抓取数据
  getInfo: function getInfo(tabId, count) {
    var _this6 = this;

    return getIpi_asyncToGenerator( /*#__PURE__*/getIpi_regeneratorRuntime().mark(function _callee7() {
      return getIpi_regeneratorRuntime().wrap(function _callee7$(_context7) {
        while (1) {
          switch (_context7.prev = _context7.next) {
            case 0:
              if (!(count > 40)) {
                _context7.next = 3;
                break;
              }

              chrome.tabs.remove(tabId);
              return _context7.abrupt("return", {
                code: 13
              });

            case 3:
              return _context7.abrupt("return", new Promise(function (resolve) {
                util["b" /* alarms */].setTimeout(function () {
                  chrome.tabs.get(tabId, /*#__PURE__*/function () {
                    var _ref2 = getIpi_asyncToGenerator( /*#__PURE__*/getIpi_regeneratorRuntime().mark(function _callee6(tab) {
                      var r, port, status;
                      return getIpi_regeneratorRuntime().wrap(function _callee6$(_context6) {
                        while (1) {
                          switch (_context6.prev = _context6.next) {
                            case 0:
                              _context6.prev = 0;

                              if (tab) {
                                _context6.next = 7;
                                break;
                              }

                              chrome.tabs.remove(tabId);
                              log["a" /* default */].setLog('库存绩效页面可能已被关闭2');
                              resolve({
                                code: 14
                              });
                              _context6.next = 15;
                              break;

                            case 7:
                              if (!(tab.status == 'loading')) {
                                _context6.next = 14;
                                break;
                              }

                              _context6.next = 10;
                              return _this6.getInfo(tabId, ++count);

                            case 10:
                              r = _context6.sent;
                              resolve(r);
                              _context6.next = 15;
                              break;

                            case 14:
                              if (tab.status == 'complete') {
                                /** 页面加载完成 */
                                port = chrome.tabs.connect(tab.id, {
                                  name: 'get-ipi'
                                });
                                status = false;
                                port.postMessage({
                                  cmd: 'ipi'
                                });
                                port.onMessage.addListener(function (info) {
                                  chrome.tabs.remove(tab.id);
                                  status = true;
                                  resolve(info);
                                  chrome.alarms.clear('ipiRemovePage');
                                });
                                /** 如果用户在这一步手动关掉页面，Promise状态就会一直padding，需要给个时限，20秒 */

                                util["b" /* alarms */].setTimeout(function () {
                                  if (!status) {
                                    chrome.tabs.remove(tabId);
                                    resolve({
                                      code: 14
                                    });
                                    log["a" /* default */].setLog('库存绩效页面可能已被关闭3');
                                  }
                                }, 'ipiRemovePage', 20 * 1000);
                              }

                            case 15:
                              _context6.next = 22;
                              break;

                            case 17:
                              _context6.prev = 17;
                              _context6.t0 = _context6["catch"](0);

                              if (tab) {
                                chrome.tabs.remove(tab.id);
                              }

                              log["a" /* default */].setLog("getInfo error\uFF1A".concat(Object(util["u" /* isError */])(_context6.t0)));
                              resolve({
                                code: 15,
                                msg: "getInfo error".concat(Object(util["u" /* isError */])(_context6.t0))
                              });

                            case 22:
                            case "end":
                              return _context6.stop();
                          }
                        }
                      }, _callee6, null, [[0, 17]]);
                    }));

                    return function (_x2) {
                      return _ref2.apply(this, arguments);
                    };
                  }());
                }, 'ipiGetInfo', 1000);
              }));

            case 4:
            case "end":
              return _context7.stop();
          }
        }
      }, _callee7);
    }))();
  },
  // 新仓储类型获取
  getNewIpi: function getNewIpi() {
    return getIpi_asyncToGenerator( /*#__PURE__*/getIpi_regeneratorRuntime().mark(function _callee8() {
      var rqError, res, result, volumeUtilizationByStorageTypeVOs, periodInformationVOs, ipiData;
      return getIpi_regeneratorRuntime().wrap(function _callee8$(_context8) {
        while (1) {
          switch (_context8.prev = _context8.next) {
            case 0:
              _context8.prev = 0;
              rqError = '';
              _context8.next = 4;
              return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/inventory-storage/storage-request/backend/limit-increase/get-config-v2"), 'GET').catch(function (e) {
                rqError = "\u8BF7\u6C42\u65B0\u7248\u8865\u8D27\u9650\u5236\u63A5\u53E3\u62A5\u9519\uFF1A".concat(Object(util["u" /* isError */])(e));
                log["a" /* default */].setLog('请求新版补货限制接口报错：', Object(util["u" /* isError */])(e));
              });

            case 4:
              res = _context8.sent;
              result = res && res.result;

              if (!result) {
                _context8.next = 15;
                break;
              }

              volumeUtilizationByStorageTypeVOs = result.volumeUtilizationByStorageTypeVOs || [];
              periodInformationVOs = result.periodInformationVOs || [];
              rqError += "".concat(volumeUtilizationByStorageTypeVOs.length > 0 ? '' : 'volumeUtilizationByStorageTypeVOs为空----') + "".concat(periodInformationVOs.length > 0 ? '' : 'periodInformationVOs为空----');
              ipiData = {
                code: 666,
                data: {
                  volumeUtilizationByStorageTypeVOs: volumeUtilizationByStorageTypeVOs,
                  displayUnit: result.displayUnit,
                  // 体积单位 CUBIC_FEET 立方英尺;CUBIC_METER 立方米（待确定） 
                  periodInformationVOs: periodInformationVOs.map(function (item) {
                    return {
                      startDate: item.startDate,
                      // 开始时间，年月日
                      endDate: item.endDate,
                      //  结束时间，年月日
                      fbaAllocationType: item.fbaAllocationType,
                      // 颜色 Confirmed = 确定值 Guidance = 估计值
                      volumeAllocationByStorageTypeVOs: item.volumeAllocationByStorageTypeVOs // 限制增加容量、已批准请求、提前发放、待处理请求字段未知...

                    };
                  })
                }
              };
              log["a" /* default */].setLog('新版ipi获取结果', rqError ? rqError : '成功');
              return _context8.abrupt("return", ipiData);

            case 15:
              return _context8.abrupt("return", {
                code: 3,
                msg: "\u83B7\u53D6\u5931\u8D25\uFF1A".concat(rqError)
              });

            case 16:
              _context8.next = 22;
              break;

            case 18:
              _context8.prev = 18;
              _context8.t0 = _context8["catch"](0);
              log["a" /* default */].setLog('获取新版补货限制getNewIpi报错 ', Object(util["u" /* isError */])(_context8.t0));
              return _context8.abrupt("return", {
                code: 3,
                msg: '获取新版补货限制getNewIpi报错' + Object(util["u" /* isError */])(_context8.t0)
              });

            case 22:
            case "end":
              return _context8.stop();
          }
        }
      }, _callee8, null, [[0, 18]]);
    }))();
  }
};
function getIpi(_x3) {
  return _getIpi.apply(this, arguments);
}

function _getIpi() {
  _getIpi = getIpi_asyncToGenerator( /*#__PURE__*/getIpi_regeneratorRuntime().mark(function _callee9(task) {
    var res, data;
    return getIpi_regeneratorRuntime().wrap(function _callee9$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            _context9.next = 2;
            return IPI.getData(task);

          case 2:
            res = _context9.sent;
            task.status = res.code;
            task.updateTime = Object(util["f" /* customizeFormatDate */])(new Date());
            data = {
              type_id: task.type_id,
              seller_id: task.seller_id,
              code: 0,
              result: null
            };

            if (res.code === 666) {
              data.result = {
                data: res.data || null,
                msg: res.msg ? res.msg : IPI.statusMap[res.code]
              };
            } else {
              data.msg = res.msg ? res.msg : IPI.statusMap[res.code];
              data.code = 1;
            } // 提前获取新版补货限制数据
            // if (['UK', 'US', 'DE', 'FR', 'IT', 'ES'].includes(task.market_code.toLocaleUpperCase())) {
            //   try {
            //     const newIpiData = await nativeRequest(`${amazon.host}/inventory-storage/storage-request/backend/limit-increase/get-config-v2`, 'GET').catch(() => {})
            //     recordLog(`新版补货限制数据`, 'info', JSON.stringify(newIpiData))
            //   } catch (e) {}
            // }


            return _context9.abrupt("return", data);

          case 8:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee9);
  }));
  return _getIpi.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/getMoney.js
function getMoney_typeof(obj) { "@babel/helpers - typeof"; return getMoney_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getMoney_typeof(obj); }

function getMoney_slicedToArray(arr, i) { return getMoney_arrayWithHoles(arr) || getMoney_iterableToArrayLimit(arr, i) || getMoney_unsupportedIterableToArray(arr, i) || getMoney_nonIterableRest(); }

function getMoney_nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getMoney_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getMoney_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getMoney_arrayLikeToArray(o, minLen); }

function getMoney_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getMoney_iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function getMoney_arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function getMoney_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getMoney_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getMoney_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getMoney_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getMoney_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getMoney_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getMoney_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/** 提现 */





var onBeforeSendHeadersUrls = ["https://sellercentral.amazon.com/payouts/api/*", "https://sellercentral.amazon.co.uk/payouts/api/*", "https://sellercentral-japan.amazon.com/payouts/api/*", "https://sellercentral.amazon.ca/payouts/api/*", "https://sellercentral.amazon.de/payouts/api/*", "https://sellercentral.amazon.fr/payouts/api/*", "https://sellercentral.amazon.it/payouts/api/*", "https://sellercentral.amazon.es/payouts/api/*", "https://sellercentral.amazon.com.mx/payouts/api/*", "https://sellercentral.amazon.in/payouts/api/*", "https://sellercentral.amazon.cn/payouts/api/*", "https://sellercentral.amazon.com.au/payouts/api/*", "https://apac.account.amazon.com/ap/payouts/api/*", "https://na.account.amazon.com/ap/payouts/api/*", "https://eu.account.amazon.com/ap/payouts/api/*", "https://sellercentral-europe.amazon.com/payouts/api/*", "https://sellercentral.amazon.co.jp/payouts/api/*", "https://sellercentral.amazon.nl/payouts/api/*", "https://sellercentral.amazon.ae/payouts/api/*", "https://sellercentral.amazon.sa/payouts/api/*", "https://sellercentral.amazon.se/payouts/api/*", "https://sellercentral.amazon.sg/payouts/api/*", "https://sellercentral.amazon.com.br/payouts/api/*"];

function getMoney_run(_x) {
  return core_getMoney_run.apply(this, arguments);
}

function core_getMoney_run() {
  core_getMoney_run = getMoney_asyncToGenerator( /*#__PURE__*/getMoney_regeneratorRuntime().mark(function _callee2(task) {
    var existSite, rqError, requestHearderId, tokenRes, _i, _Object$entries, _Object$entries$_i, key, value, disbursenowRes, res;

    return getMoney_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.next = 2;
            return amazon["a" /* default */].checkSite(task.market_code, task, true);

          case 2:
            existSite = _context2.sent;

            if (existSite) {
              _context2.next = 5;
              break;
            }

            return _context2.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 5:
            _context2.next = 7;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'referer',
              value: "".concat(amazon["a" /* default */].host, "/payments/disburse/details?accountType=PAYABLE")
            }, {
              name: 'origin',
              value: amazon["a" /* default */].host
            }, {
              name: 'sec-fetch-site',
              value: 'same-origin'
            }], 'https://sellercentral*^payouts/api/*');

          case 7:
            requestHearderId = _context2.sent;
            _context2.next = 10;
            return axios_default()({
              method: 'get',
              url: amazon["a" /* default */].host + '/payouts/api/eligibility?accountType=PAYABLE',
              adapter: fetch["b" /* default */]
            }).catch(function (e) {
              rqError = "\u83B7\u53D6csrftoken\u5931\u8D25\uFF1A\u8BF7\u91CD\u8BD5\u4EFB\u52A1 + ".concat(Object(util["u" /* isError */])(e));
              log["a" /* default */].setLog('获取csrftoken失败：请重试任务' + Object(util["u" /* isError */])(e));
            });

          case 10:
            tokenRes = _context2.sent;
            console.log('tokenRestokenRes', tokenRes); // 判断是否可以提现

            if (!(!tokenRes.data || !tokenRes.data.eligibilityMapper || !tokenRes.data.eligibilityMapper)) {
              _context2.next = 19;
              break;
            }

            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);
            _context2.next = 16;
            return getMoney_createNewTabs(task);

          case 16:
            return _context2.abrupt("return", _context2.sent);

          case 19:
            _i = 0, _Object$entries = Object.entries(tokenRes.data.eligibilityMapper);

          case 20:
            if (!(_i < _Object$entries.length)) {
              _context2.next = 30;
              break;
            }

            _Object$entries$_i = getMoney_slicedToArray(_Object$entries[_i], 2), key = _Object$entries$_i[0], value = _Object$entries$_i[1];

            if (!(!value || !value.allowDisburse)) {
              _context2.next = 27;
              break;
            }

            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);
            _context2.next = 26;
            return getMoney_createNewTabs(task);

          case 26:
            return _context2.abrupt("return", _context2.sent);

          case 27:
            _i++;
            _context2.next = 20;
            break;

          case 30:
            if (tokenRes.headers['anti-csrftoken-a2z']) {
              _context2.next = 33;
              break;
            }

            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);
            return _context2.abrupt("return", {
              code: 2,
              msg: rqError || '没获取到anti-csrftoken-a2z'
            });

          case 33:
            _context2.next = 35;
            return axios_default()({
              url: amazon["a" /* default */].host + '/payouts/api/disbursenow?accountType=PAYABLE',
              method: 'post',
              data: {
                requesterType: 'SellingPartner'
              },
              headers: {
                'anti-csrftoken-a2z': tokenRes.headers['anti-csrftoken-a2z']
              },
              adapter: fetch["b" /* default */]
            }).catch(function (e) {
              // rqError = `请求disbursenow报错：${JSON.stringify(e)},请重试`
              log["a" /* default */].setLog('请求提现接口失败', Object(util["u" /* isError */])(e));
            });

          case 35:
            disbursenowRes = _context2.sent;
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

            if (!disbursenowRes) {
              _context2.next = 39;
              break;
            }

            return _context2.abrupt("return", {
              code: 0,
              msg: '提现成功'
            });

          case 39:
            _context2.next = 41;
            return getMoney_createNewTabs(task);

          case 41:
            res = _context2.sent;
            return _context2.abrupt("return", res);

          case 43:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return core_getMoney_run.apply(this, arguments);
}

function getMoney_createNewTabs() {
  return new Promise(function (resolve) {
    chrome.tabs.create({
      url: "".concat(amazon["a" /* default */].host, "/payments/disburse/details?accountType=PAYABLE"),
      active: false
    }, /*#__PURE__*/function () {
      var _ref = getMoney_asyncToGenerator( /*#__PURE__*/getMoney_regeneratorRuntime().mark(function _callee(tab) {
        var res;
        return getMoney_regeneratorRuntime().wrap(function _callee$(_context) {
          while (1) {
            switch (_context.prev = _context.next) {
              case 0:
                if (tab) {
                  _context.next = 4;
                  break;
                }

                log["a" /* default */].setLog('提现详情页面可能已被关闭');
                resolve({
                  code: 2,
                  msg: '提现详情页面可能已被关闭1'
                });
                return _context.abrupt("return");

              case 4:
                _context.next = 6;
                return getMoney_getInfo(tab.id, 1);

              case 6:
                res = _context.sent;
                resolve(res);

              case 8:
              case "end":
                return _context.stop();
            }
          }
        }, _callee);
      }));

      return function (_x2) {
        return _ref.apply(this, arguments);
      };
    }());
  });
} // 向页面发送指令，抓取数据


function getMoney_getInfo(_x3, _x4) {
  return _getInfo.apply(this, arguments);
}

function _getInfo() {
  _getInfo = getMoney_asyncToGenerator( /*#__PURE__*/getMoney_regeneratorRuntime().mark(function _callee4(tabId, count) {
    return getMoney_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            if (!(count > 40)) {
              _context4.next = 3;
              break;
            }

            chrome.tabs.remove(tabId);
            return _context4.abrupt("return", {
              code: 2,
              msg: '提现详情页面未能加载'
            });

          case 3:
            return _context4.abrupt("return", new Promise(function (resolve) {
              util["b" /* alarms */].setTimeout(function () {
                chrome.tabs.get(tabId, /*#__PURE__*/function () {
                  var _ref2 = getMoney_asyncToGenerator( /*#__PURE__*/getMoney_regeneratorRuntime().mark(function _callee3(tab) {
                    var r, port, status;
                    return getMoney_regeneratorRuntime().wrap(function _callee3$(_context3) {
                      while (1) {
                        switch (_context3.prev = _context3.next) {
                          case 0:
                            _context3.prev = 0;

                            if (tab) {
                              _context3.next = 7;
                              break;
                            }

                            chrome.tabs.remove(tabId);
                            log["a" /* default */].setLog('提现详情页面可能已被关闭2');
                            resolve({
                              code: 2,
                              msg: '提现详情页面可能已被关闭2'
                            });
                            _context3.next = 15;
                            break;

                          case 7:
                            if (!(tab.status == 'loading')) {
                              _context3.next = 14;
                              break;
                            }

                            _context3.next = 10;
                            return getMoney_getInfo(tabId, ++count);

                          case 10:
                            r = _context3.sent;
                            resolve(r);
                            _context3.next = 15;
                            break;

                          case 14:
                            if (tab.status == 'complete') {
                              /** 页面加载完成 */
                              port = chrome.tabs.connect(tab.id, {
                                name: 'get-money'
                              });
                              status = false;
                              port.postMessage({
                                cmd: 'money'
                              });
                              port.onMessage.addListener(function (info) {
                                chrome.tabs.remove(tab.id);
                                status = true;
                                resolve(info);
                                chrome.alarms.clear('moneyRemovePage');
                              });
                              /** 如果用户在这一步手动关掉页面，Promise状态就会一直padding，需要给个时限，20秒 */

                              util["b" /* alarms */].setTimeout(function () {
                                if (!status) {
                                  chrome.tabs.remove(tabId);
                                  resolve({
                                    code: 2,
                                    msg: '提现详情页面可能已被关闭2'
                                  });
                                  log["a" /* default */].setLog('提现详情页面可能已被关闭3');
                                }
                              }, 'moneyRemovePage', 20 * 1000);
                            }

                          case 15:
                            _context3.next = 22;
                            break;

                          case 17:
                            _context3.prev = 17;
                            _context3.t0 = _context3["catch"](0);

                            if (tab) {
                              chrome.tabs.remove(tab.id);
                            }

                            log["a" /* default */].setLog("getInfo error\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0)));
                            resolve({
                              code: 2,
                              msg: "getInfo error".concat(Object(util["u" /* isError */])(_context3.t0))
                            });

                          case 22:
                          case "end":
                            return _context3.stop();
                        }
                      }
                    }, _callee3, null, [[0, 17]]);
                  }));

                  return function (_x6) {
                    return _ref2.apply(this, arguments);
                  };
                }());
              }, 'moneyGetInfo', 1000);
            }));

          case 4:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));
  return _getInfo.apply(this, arguments);
}

function getMoney(_x5) {
  return _getMoney.apply(this, arguments);
}

function _getMoney() {
  _getMoney = getMoney_asyncToGenerator( /*#__PURE__*/getMoney_regeneratorRuntime().mark(function _callee5(task) {
    var _yield$run, code, msg;

    return getMoney_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            _context5.next = 2;
            return getMoney_run(task);

          case 2:
            _yield$run = _context5.sent;
            code = _yield$run.code;
            msg = _yield$run.msg;
            task.error_time = 10; // task.isDelete = true
            // 执行状态

            task.run_status = code + 1;
            return _context5.abrupt("return", {
              type_id: task.type_id,
              seller_id: task.seller_id,
              code: code,
              msg: '',
              result: {
                msg: msg && msg.replace(/(^\s*)|(\s*$)/g, "")
              }
            });

          case 8:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));
  return _getMoney.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/getSettlements.js
function getSettlements_typeof(obj) { "@babel/helpers - typeof"; return getSettlements_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getSettlements_typeof(obj); }

function getSettlements_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getSettlements_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getSettlements_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getSettlements_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getSettlements_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getSettlements_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getSettlements_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }





function getSettlements_run(_x) {
  return core_getSettlements_run.apply(this, arguments);
}

function core_getSettlements_run() {
  core_getSettlements_run = getSettlements_asyncToGenerator( /*#__PURE__*/getSettlements_regeneratorRuntime().mark(function _callee(task) {
    var existSite, reqError, result, data;
    return getSettlements_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return amazon["a" /* default */].checkSite(task.market_code, task, true);

          case 2:
            existSite = _context.sent;

            if (existSite) {
              _context.next = 5;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 5:
            reqError = ''; // 请求数据，由于该接口被亚马逊限制最大只能获取20条，所以改成获取5页20条共100条数据

            _context.next = 8;
            return batchRequestSettlements(Array.apply(null, {
              length: 5
            }).map(function (item, key) {
              return requestSettlements(key + 1);
            }));

          case 8:
            result = _context.sent;
            data = result.reduce(function (arr, item, key) {
              if (item.status === 'fulfilled') arr = arr.concat(item.value && item.value.financialEventGroups ? item.value.financialEventGroups : []);else reqError += "\u7B2C".concat(key + 1, "\u9875\u6570\u636E\u83B7\u53D6\u5931\u8D25---").concat(item.reason, ";");
              return arr;
            }, []);

            if (!(data && data.length > 0 || !reqError)) {
              _context.next = 12;
              break;
            }

            return _context.abrupt("return", {
              code: 0,
              data: data,
              msg: reqError
            });

          case 12:
            return _context.abrupt("return", {
              code: 2,
              msg: reqError
            });

          case 13:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));
  return core_getSettlements_run.apply(this, arguments);
}

function requestSettlements(offset) {
  return Object(util["z" /* nativeRequest */])(amazon["a" /* default */].host + '/payments/api/groups/', 'get', {
    includeReportsInformation: true,
    includeSummaryWithoutFundTransfer: true,
    limit: 20,
    offset: offset
  });
} // 通过Promise.allSettled批量获取数据，如果有一项失败则重试，最大重试三次


function batchRequestSettlements(_x2) {
  return _batchRequestSettlements.apply(this, arguments);
}

function _batchRequestSettlements() {
  _batchRequestSettlements = getSettlements_asyncToGenerator( /*#__PURE__*/getSettlements_regeneratorRuntime().mark(function _callee2(arr) {
    var count,
        fail,
        result,
        _args2 = arguments;
    return getSettlements_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            count = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 1;
            _context2.next = 3;
            return Promise.allSettled(arr);

          case 3:
            result = _context2.sent;

            if (!(count > 3)) {
              _context2.next = 6;
              break;
            }

            return _context2.abrupt("return", result);

          case 6:
            // 如果有获取失败，则继续封装成promise请求重试
            arr = result.map(function (item, key) {
              if (item.status === 'rejected') {
                fail = true;
                return requestSettlements(key + 1);
              } else return item;
            }); // 全都获取成功，退出

            if (fail) {
              _context2.next = 9;
              break;
            }

            return _context2.abrupt("return", result);

          case 9:
            _context2.next = 11;
            return batchRequestSettlements(arr, ++count);

          case 11:
            return _context2.abrupt("return", _context2.sent);

          case 12:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return _batchRequestSettlements.apply(this, arguments);
}

function getSettlements(_x3) {
  return _getSettlements.apply(this, arguments);
}

function _getSettlements() {
  _getSettlements = getSettlements_asyncToGenerator( /*#__PURE__*/getSettlements_regeneratorRuntime().mark(function _callee3(task) {
    var res;
    return getSettlements_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.next = 2;
            return getSettlements_run(task);

          case 2:
            res = _context3.sent;
            return _context3.abrupt("return", {
              type_id: task.type_id,
              seller_id: task.seller_id,
              code: res.code,
              msg: res.msg || '',
              result: {
                data: res.data
              }
            });

          case 4:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));
  return _getSettlements.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/ComplexTasks/index.js
function ComplexTasks_typeof(obj) { "@babel/helpers - typeof"; return ComplexTasks_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, ComplexTasks_typeof(obj); }

function ComplexTasks_slicedToArray(arr, i) { return ComplexTasks_arrayWithHoles(arr) || ComplexTasks_iterableToArrayLimit(arr, i) || ComplexTasks_unsupportedIterableToArray(arr, i) || ComplexTasks_nonIterableRest(); }

function ComplexTasks_nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function ComplexTasks_iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function ComplexTasks_arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function ComplexTasks_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = ComplexTasks_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function ComplexTasks_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function ComplexTasks_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ComplexTasks_ownKeys(Object(source), !0).forEach(function (key) { ComplexTasks_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ComplexTasks_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function ComplexTasks_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function ComplexTasks_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ ComplexTasks_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == ComplexTasks_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || ComplexTasks_unsupportedIterableToArray(arr) || _nonIterableSpread(); }

function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function ComplexTasks_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return ComplexTasks_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return ComplexTasks_arrayLikeToArray(o, minLen); }

function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return ComplexTasks_arrayLikeToArray(arr); }

function ComplexTasks_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function ComplexTasks_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function ComplexTasks_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { ComplexTasks_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { ComplexTasks_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/**
 * 获取专项折扣
 */










var urlMap = {
  list: {
    53: 'plugin/upload/promotion/list',
    54: 'plugin/upload/promotion/list',
    55: 'plugin/upload/promotion/list',
    56: 'plugin/upload/promotion/list',
    57: 'voc/plugin/upload/lists'
  },
  detail: {
    53: 'plugin/upload/promotion/detail',
    54: 'plugin/upload/promotion/detail',
    55: 'plugin/upload/promotion/detail',
    56: 'plugin/upload/promotion/detail',
    62: 'plugin/upload/promotion/detail',
    63: 'plugin/upload/promotion/detail',
    64: 'plugin/upload/promotion/detail',
    65: 'plugin/upload/promotion/detail',
    57: 'voc/plugin/upload/detail'
  },
  purchasedItems: {
    56: 'plugin/upload/listing/series'
  },
  kpi: {
    57: 'voc/plugin/upload/lists'
  }
};
var serviceName = {
  53: 'promotion',
  54: 'promotion',
  55: 'promotion',
  56: 'promotion',
  62: 'promotion',
  63: 'promotion',
  64: 'promotion',
  65: 'promotion',
  57: 'voc'
};
var DATE_LIMIT = 90 * 24 * 60 * 60 * 1000; // 90天

var NINE_DAYS_LIMIT = 9 * 24 * 60 * 60 * 1000; // 9天

var NINE_DAYS_LIMIT_COMPANYID = ['901516547719525376', '901113391274684416', '90136119593861120']; // 使用前后9天时间限制的客户

var taskParam;
var isNineDaysCustomer = false; // 是否为前后9天时间限制客户

var isNineLimitAndNoDate = false; // 是否为前后9天时间限制客户且首次执行任务（查询时无时间限制）

function ComplexTasks_run(_x) {
  return core_ComplexTasks_run.apply(this, arguments);
} // 获取单个详情任务

function core_ComplexTasks_run() {
  core_ComplexTasks_run = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee(param) {
    var maxCount, res, _yield$localStorage$g, company_id;

    return ComplexTasks_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            taskParam = param;
            console.log('run', taskParam);
            maxCount = 0;
            _context.next = 5;
            return util["y" /* localStorage */].getItem(['company_id']);

          case 5:
            _yield$localStorage$g = _context.sent;
            company_id = _yield$localStorage$g.company_id;
            isNineDaysCustomer = NINE_DAYS_LIMIT_COMPANYID.indexOf(company_id) >= 0;
            isNineLimitAndNoDate = isNineDaysCustomer && !taskParam.date;

          case 9:
            if (!(maxCount < 6)) {
              _context.next = 28;
              break;
            }

            _context.next = 12;
            return Object(data_task["c" /* discontinue */])();

          case 12:
            if (!_context.sent) {
              _context.next = 14;
              break;
            }

            return _context.abrupt("return", {});

          case 14:
            log["a" /* default */].setLog("maxCount: ".concat(maxCount)); // 任务执行中，进度上传到任务中心

            if (!(res && res.code === 4)) {
              _context.next = 18;
              break;
            }

            _context.next = 18;
            return upload(uploadParams(res), 'task');

          case 18:
            _context.next = 20;
            return Object(util["h" /* delayed */])(5 * 1000, 'promotionRun');

          case 20:
            _context.next = 22;
            return ComplexTasks_getData();

          case 22:
            res = _context.sent;

            if (!res.complete) {
              _context.next = 25;
              break;
            }

            return _context.abrupt("break", 28);

          case 25:
            if (res.code === 1 || res.code === 2) maxCount++;
            _context.next = 9;
            break;

          case 28:
            if (!(taskParam.failDetail.length > 0)) {
              _context.next = 31;
              break;
            }

            _context.next = 31;
            return handleDealFailDetail(_toConsumableArray(new Set(taskParam.failDetail)));

          case 31:
            _context.t0 = taskParam.type_id === 56;

            if (!_context.t0) {
              _context.next = 36;
              break;
            }

            _context.next = 35;
            return amazon["a" /* default */].checkLanguage(taskParam.market_code, taskParam);

          case 35:
            _context.t0 = _context.sent;

          case 36:
            if (!_context.t0) {
              _context.next = 39;
              break;
            }

            _context.next = 39;
            return handleDealPurchasedItems();

          case 39:
            // 因为本轮执行过程中已重试6次，任务循环只循环两次就好，故重试次数error_time直接+5
            taskParam.error_time += 5; // 状态变更为获取失败

            res.code === 1 || res.code === 2 && (taskParam.status = 14);
            return _context.abrupt("return", uploadParams(res));

          case 42:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));
  return core_ComplexTasks_run.apply(this, arguments);
}

function getDetails(_x2) {
  return _getDetails.apply(this, arguments);
} // 整理任务执行进度等参数

function _getDetails() {
  _getDetails = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee2(param) {
    var checkFlag, existSite, list, code, msg, failDetailMap;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            taskParam = param;

            if (!(!taskParam.data || taskParam.data.length === 0)) {
              _context2.next = 3;
              break;
            }

            return _context2.abrupt("return", {
              code: 1,
              msg: '不存在data或data为空'
            });

          case 3:
            _context2.next = 5;
            return amazon["a" /* default */].onlyCheckSite(taskParam.market_code, taskParam);

          case 5:
            checkFlag = _context2.sent;
            _context2.t0 = !checkFlag;

            if (!_context2.t0) {
              _context2.next = 11;
              break;
            }

            _context2.next = 10;
            return Object(util["J" /* suspend */])();

          case 10:
            _context2.t0 = !_context2.sent;

          case 11:
            if (!_context2.t0) {
              _context2.next = 18;
              break;
            }

            taskParam.status = 0;
            _context2.next = 15;
            return changeSite();

          case 15:
            existSite = _context2.sent;

            if (existSite) {
              _context2.next = 18;
              break;
            }

            return _context2.abrupt("return", {
              code: 2,
              msg: taskParam.msg
            });

          case 18:
            _context2.next = 20;
            return amazon["a" /* default */].checkLanguage(taskParam.market_code, taskParam);

          case 20:
            if (_context2.sent) {
              _context2.next = 22;
              break;
            }

            return _context2.abrupt("return", {
              code: 2,
              msg: taskParam.msg
            });

          case 22:
            !taskParam.failDetail && (taskParam.failDetail = []);
            list = taskParam.data.map(function (_ref4) {
              var id = _ref4.id;
              return {
                parentId: id
              };
            }).filter(function (_ref5) {
              var parentId = _ref5.parentId;
              return parentId;
            }); // 任务无id，失败

            if (!(list.length === 0)) {
              _context2.next = 27;
              break;
            }

            taskParam.status = 2;
            return _context2.abrupt("return", {
              type_id: taskParam.type_id,
              seller_id: taskParam.seller_id,
              msg: '任务无promotionid，请在促销管理页面重试',
              code: 1
            });

          case 27:
            code = 0;
            _context2.next = 30;
            return handleDealDetail(list);

          case 30:
            if (!list.every(function (_ref6) {
              var details = _ref6.details;
              return !details || details.length === 0;
            })) {
              _context2.next = 33;
              break;
            }

            taskParam.status = 2;
            return _context2.abrupt("return", {
              type_id: taskParam.type_id,
              seller_id: taskParam.seller_id,
              msg: '详情无数据或详情接口请求失败',
              code: 1
            });

          case 33:
            _context2.next = 35;
            return upload(list, 'detail');

          case 35:
            if (!_context2.sent) {
              _context2.next = 43;
              break;
            }

            failDetailMap = {};
            taskParam.failDetail.forEach(function (id) {
              return failDetailMap[id] = 1;
            });
            taskParam.data = taskParam.data.filter(function (_ref7) {
              var parentId = _ref7.parentId;
              return failDetailMap[parentId];
            });
            taskParam.data.length > 0 && (code = 4);
            taskParam.failDetail = [];
            _context2.next = 44;
            break;

          case 43:
            code = 4;

          case 44:
            code !== 0 && taskParam.error_time++; // 获取商品系列,语言检测失败则退出，等待下次获取

            _context2.t1 = taskParam.type_id === 56;

            if (!_context2.t1) {
              _context2.next = 50;
              break;
            }

            _context2.next = 49;
            return amazon["a" /* default */].checkLanguage(taskParam.market_code, taskParam);

          case 49:
            _context2.t1 = _context2.sent;

          case 50:
            if (!_context2.t1) {
              _context2.next = 53;
              break;
            }

            _context2.next = 53;
            return handleDealPurchasedItems();

          case 53:
            // 超过重试10次，上报失败状态
            if (taskParam.error_time >= 10) {
              code = 1;
              msg = '数据获取失败，可能是亚马逊接口异常，请在促销管理页面重试';
            }

            taskParam.status = code + 1; // 执行状态上报任务中心

            return _context2.abrupt("return", {
              type_id: taskParam.type_id,
              seller_id: taskParam.seller_id,
              msg: msg,
              code: code,
              data: code === 4 && taskParam.data
            });

          case 56:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return _getDetails.apply(this, arguments);
}

function uploadParams(_ref) {
  var code = _ref.code,
      msg = _ref.msg;
  var _taskParam = taskParam,
      date = _taskParam.date,
      failDetail = _taskParam.failDetail,
      purchasedItems = _taskParam.purchasedItems,
      type_id = _taskParam.type_id,
      seller_id = _taskParam.seller_id,
      paginator = _taskParam.paginator;
  return {
    type_id: type_id,
    seller_id: seller_id,
    msg: msg,
    code: code,
    result: {
      date: date,
      failDetail: failDetail,
      paginator: paginator,
      purchasedItems: purchasedItems
    }
  };
} // 获取列表、详情数据


function ComplexTasks_getData() {
  return _getData.apply(this, arguments);
} // 过滤已抓取、开始时间超过90天


function _getData() {
  _getData = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee3() {
    var checkFlag, existSite, list, count, msg, code, curPaginator, pageNum, _yield$getListData, paginator, _yield$getListData$da, data, errorMsg, filterData, lastEndDate, details, _count, arr;

    return ComplexTasks_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.next = 2;
            return amazon["a" /* default */].onlyCheckSite(taskParam.market_code, taskParam);

          case 2:
            checkFlag = _context3.sent;
            _context3.t0 = !checkFlag;

            if (!_context3.t0) {
              _context3.next = 8;
              break;
            }

            _context3.next = 7;
            return Object(util["J" /* suspend */])();

          case 7:
            _context3.t0 = !_context3.sent;

          case 8:
            if (!_context3.t0) {
              _context3.next = 15;
              break;
            }

            taskParam.status = 0;
            _context3.next = 12;
            return changeSite();

          case 12:
            existSite = _context3.sent;

            if (existSite) {
              _context3.next = 15;
              break;
            }

            return _context3.abrupt("return", {
              code: 2,
              msg: taskParam.msg
            });

          case 15:
            _context3.next = 17;
            return amazon["a" /* default */].checkLanguage(taskParam.market_code, taskParam);

          case 17:
            if (_context3.sent) {
              _context3.next = 19;
              break;
            }

            return _context3.abrupt("return", {
              code: 2,
              msg: taskParam.msg
            });

          case 19:
            /**
             *
             * 获取列表
             */
            list = [];
            count = 1;
            pageNum = taskParam.pageNum; // 从最后修改日期>=date开始抓，单次最大抓取三页有效列表数据 ****因数据库限制6w字符，暂时控制成一页一页获取

          case 22:
            if (!count) {
              _context3.next = 55;
              break;
            }

            _context3.next = 25;
            return getListData();

          case 25:
            _yield$getListData = _context3.sent;
            paginator = _yield$getListData.paginator;
            _yield$getListData$da = _yield$getListData.data;
            data = _yield$getListData$da === void 0 ? [] : _yield$getListData$da;
            errorMsg = _yield$getListData.errorMsg;
            _context3.prev = 30;

            if (!errorMsg) {
              _context3.next = 33;
              break;
            }

            return _context3.abrupt("return", {
              code: 1,
              msg: errorMsg
            });

          case 33:
            if (!(taskParam.type_id !== 56)) {
              _context3.next = 39;
              break;
            }

            _context3.next = 36;
            return handleDealList(data);

          case 36:
            _context3.t1 = _context3.sent;
            _context3.next = 40;
            break;

          case 39:
            _context3.t1 = data;

          case 40:
            filterData = _context3.t1;
            filterData.length > 0 && count--;
            list = list.concat(filterData);
            curPaginator = taskParam.paginator = ComplexTasks_objectSpread(ComplexTasks_objectSpread({}, paginator), {}, {
              realityCurItems: (taskParam.paginator.realityCurItems || 0) + filterData.length
            });

            if (!(curPaginator.curItems >= curPaginator.totalItems)) {
              _context3.next = 46;
              break;
            }

            return _context3.abrupt("break", 55);

          case 46:
            taskParam.pageNum++;
            _context3.next = 53;
            break;

          case 49:
            _context3.prev = 49;
            _context3.t2 = _context3["catch"](30);
            log["a" /* default */].setLog('xxx', Object(util["u" /* isError */])(_context3.t2));
            return _context3.abrupt("break", 55);

          case 53:
            _context3.next = 22;
            break;

          case 55:
            if (!(list.length > 0)) {
              _context3.next = 75;
              break;
            }

            _context3.next = 58;
            return upload(list, 'list');

          case 58:
            if (_context3.sent) {
              _context3.next = 61;
              break;
            }

            taskParam.pageNum = pageNum;
            return _context3.abrupt("return", {
              code: 2,
              msg: '列表上传失败'
            });

          case 61:
            // 保存最后一条数据的更改/结束时间，促销管理需要特殊处理，如果是特殊日期，则需要转成可解析时间在存
            if (taskParam.type_id !== 56) {
              lastEndDate = list[list.length - 1][taskParam.dateField];
              taskParam.date = taskParam.dmyFormat ? moment_default()(lastEndDate, taskParam.dmyFormat).format(taskParam.mdyFormat) : lastEndDate;
            } else {
              // 如果已完成，取dateArr最大时间，否则取最小时间
              if (curPaginator.curItems >= curPaginator.totalItems) {
                taskParam.dateArr = Object(util["A" /* quickSort */])(taskParam.dateArr, function (a, b) {
                  return taskParam.dmyFormat ? new Date(moment_default()(a, taskParam.dmyFormat)) > new Date(moment_default()(b, taskParam.dmyFormat)) : new Date(a) > new Date(b);
                });
              } else {
                taskParam.dateArr = Object(util["A" /* quickSort */])(taskParam.dateArr, function (a, b) {
                  return taskParam.dmyFormat ? new Date(moment_default()(a, taskParam.dmyFormat)) < new Date(moment_default()(b, taskParam.dmyFormat)) : new Date(a) < new Date(b);
                });
              }

              taskParam.date = taskParam.dateArr.shift();
              taskParam.date = moment_default()(taskParam.date, taskParam.dmyFormat ? taskParam.dmyFormat : taskParam.mdyFormat).format(taskParam.mdyFormat);
            }
            /**
             *
             * 获取详情
             *
             */


            details = dealDetails(list); // 详情超出100条分批上传，100条一批（目前只有优惠券单次会超出300）****因数据库限制6w字符，暂时控制成100条

            _count = 0;

          case 64:
            if (!(_count < Math.ceil(details.length / 100))) {
              _context3.next = 75;
              break;
            }

            arr = details.slice(_count * 100, (_count + 1) * 100);
            _context3.next = 68;
            return handleDealDetail(arr);

          case 68:
            _context3.next = 70;
            return upload(arr, 'detail');

          case 70:
            if (_context3.sent) {
              _context3.next = 72;
              break;
            }

            taskParam.failDetail = taskParam.failDetail.concat(arr.map(function (item) {
              return item.parentId;
            }));

          case 72:
            _count++;
            _context3.next = 64;
            break;

          case 75:
            if (!(curPaginator.curItems >= curPaginator.totalItems)) {
              _context3.next = 77;
              break;
            }

            return _context3.abrupt("return", {
              code: 0,
              msg: '获取完毕',
              complete: curPaginator.curItems >= curPaginator.totalItems
            });

          case 77:
            return _context3.abrupt("return", {
              code: code || 4,
              msg: msg,
              complete: curPaginator.curItems >= curPaginator.totalItems
            });

          case 78:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[30, 49]]);
  }));
  return _getData.apply(this, arguments);
}

function handleDealList(_x3) {
  return _handleDealList.apply(this, arguments);
} // 如果不是第一次抓取，则详情不抓取已结束、已过期的数据


function _handleDealList() {
  _handleDealList = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee4(rows) {
    var res, currentTime, list;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.next = 2;
            return Object(util["l" /* gateGet */])('api/v1/baseInfos', {}, 'task').catch(function () {});

          case 2:
            res = _context4.sent;
            currentTime = res && res.data && res.data.time_format ? new Date(res && res.data && res.data.time_format).getTime() : Date.now();
            list = rows.filter(function (item) {
              var date = item[taskParam.dateField];
              var startDate = item[taskParam.startDateField];
              var formatDate, formatStartDate;

              if (taskParam.hasTimeZone) {
                // 促销管理不管是不是特殊日期都的转一下，主要是消除时区带来的影响
                formatDate = new Date(moment_default()(date, taskParam.dmyFormat ? taskParam.dmyFormat : taskParam.mdyFormat));
                formatStartDate = new Date(moment_default()(startDate, taskParam.dmyFormat ? taskParam.dmyFormat : taskParam.mdyFormat));
              } else {
                formatDate = new Date(taskParam.dmyFormat ? moment_default()(date, taskParam.dmyFormat) : date);
                formatStartDate = new Date(taskParam.dmyFormat ? moment_default()(startDate, taskParam.dmyFormat) : startDate);
              } // 如果更新时间不为时间格式，则默认当前时间


              if ("".concat(formatDate.getTime()) == 'NaN' || !taskParam.date || !date) formatDate = currentTime;
              var currentLimit = isNineDaysCustomer && taskParam.date ? NINE_DAYS_LIMIT : DATE_LIMIT;
              return formatDate >= new Date(taskParam.date || 0) && (isNineLimitAndNoDate || !startDate || formatStartDate >= currentTime - currentLimit);
            });
            return _context4.abrupt("return", list);

          case 6:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));
  return _handleDealList.apply(this, arguments);
}

function dealDetails(list) {
  var statusArr = {
    53: ['expired', 'canceled'],
    54: ['ended', 'cancelled', 'rejected'],
    55: ['expired'],
    56: ['expired']
  }[taskParam.type_id] || [];
  var StatusFiled = {
    53: 'status',
    54: 'campaignStatus',
    55: 'status',
    56: 'promotionStatus'
  }[taskParam.type_id];
  return list.filter(function (item) {
    // const status = item[StatusFiled].toLocaleLowerCase()
    // let statusFlag = !taskParam.date || statusArr.indexOf(status) < 0
    // return statusFlag && item.id
    return item.id;
  }).map(function (_ref2) {
    var id = _ref2.id;
    return {
      parentId: id
    };
  });
} // 获取详情，十个一组批量获取


function handleDealDetail(_x4) {
  return _handleDealDetail.apply(this, arguments);
} // 处理获取失败的详情

function _handleDealDetail() {
  _handleDealDetail = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee5(list) {
    var count, batch;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            _context5.prev = 0;
            count = 0;

          case 2:
            if (!(count < Math.ceil(list.length / 10))) {
              _context5.next = 12;
              break;
            }

            batch = list.slice(count * 10, (count + 1) * 10); // 获取前检测语言，不是英文则切换

            log["a" /* default */].setLog("\u5373\u5C06\u83B7\u53D6\u7B2C".concat(count * 10 + 1, "-").concat((count + 1) * 10, "\u6761\u8BE6\u60C5")); // if (!await amazon.checkLanguage(taskParam.market_code, taskParam)) {
            //   taskParam.failDetail = taskParam.failDetail.concat(batch.map(item => item.parentId))
            //   log.setLog('[获取详情]检测语言失败')
            //   continue
            // }

            _context5.next = 7;
            return Object(util["h" /* delayed */])(10 * 1000, 'promotionDealDetail');

          case 7:
            _context5.next = 9;
            return Promise.allSettled(batch.map(function (item) {
              return getDetailData(item.parentId).then(function (res) {
                return item.details = res;
              });
            }));

          case 9:
            count++;
            _context5.next = 2;
            break;

          case 12:
            _context5.next = 17;
            break;

          case 14:
            _context5.prev = 14;
            _context5.t0 = _context5["catch"](0);
            log["a" /* default */].setLog('handleDealDetail失败-', Object(util["u" /* isError */])(_context5.t0));

          case 17:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[0, 14]]);
  }));
  return _handleDealDetail.apply(this, arguments);
}

function handleDealFailDetail(_x5) {
  return _handleDealFailDetail.apply(this, arguments);
} // 获取商品系列，十个一组批量获取


function _handleDealFailDetail() {
  _handleDealFailDetail = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee6(details) {
    var failDetailMap, count, arr;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            failDetailMap = details.map(function (parentId) {
              return {
                parentId: parentId
              };
            });
            taskParam.failDetail = []; // 详情超出300条分批上传，300条一批（目前只有优惠券单次会超出300）****因数据库限制6w字符，暂时控制成100条

            count = 0;

          case 3:
            if (!(count < Math.ceil(failDetailMap.length / 100))) {
              _context6.next = 14;
              break;
            }

            arr = failDetailMap.slice(count * 100, (count + 1) * 100);
            _context6.next = 7;
            return handleDealDetail(arr);

          case 7:
            _context6.next = 9;
            return upload(arr, 'detail');

          case 9:
            if (_context6.sent) {
              _context6.next = 11;
              break;
            }

            taskParam.failDetail = taskParam.failDetail.concat(arr.map(function (item) {
              return item.parentId;
            }));

          case 11:
            count++;
            _context6.next = 3;
            break;

          case 14:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6);
  }));
  return _handleDealFailDetail.apply(this, arguments);
}

function handleDealPurchasedItems() {
  return _handleDealPurchasedItems.apply(this, arguments);
} // 获取商品系列


function _handleDealPurchasedItems() {
  _handleDealPurchasedItems = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee8() {
    return ComplexTasks_regeneratorRuntime().wrap(function _callee8$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            _context8.prev = 0;
            return _context8.delegateYield( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee7() {
              var purchasedItems, arr, count;
              return ComplexTasks_regeneratorRuntime().wrap(function _callee7$(_context7) {
                while (1) {
                  switch (_context7.prev = _context7.next) {
                    case 0:
                      purchasedItems = _toConsumableArray(taskParam.purchasedItems);
                      arr = [];
                      taskParam.purchasedItems.clear();
                      count = 0;

                    case 4:
                      if (!(count < Math.ceil(purchasedItems.length / 10))) {
                        _context7.next = 12;
                        break;
                      }

                      _context7.next = 7;
                      return Object(util["h" /* delayed */])(10 * 1000, 'promotionDealPurchasedItems');

                    case 7:
                      _context7.next = 9;
                      return Promise.allSettled(purchasedItems.slice(count * 10, (count + 1) * 10).map(function (item) {
                        return gePurchasedItems(item).then(function (res) {
                          return res && arr.push(res);
                        });
                      }));

                    case 9:
                      count++;
                      _context7.next = 4;
                      break;

                    case 12:
                      _context7.next = 14;
                      return upload(arr, 'purchasedItems');

                    case 14:
                    case "end":
                      return _context7.stop();
                  }
                }
              }, _callee7);
            })(), "t0", 2);

          case 2:
            _context8.next = 7;
            break;

          case 4:
            _context8.prev = 4;
            _context8.t1 = _context8["catch"](0);
            log["a" /* default */].setLog('handleDealPurchasedItems失败-', Object(util["u" /* isError */])(_context8.t1));

          case 7:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee8, null, [[0, 4]]);
  }));
  return _handleDealPurchasedItems.apply(this, arguments);
}

function gePurchasedItems(_x6) {
  return _gePurchasedItems.apply(this, arguments);
} // 站点切换


function _gePurchasedItems() {
  _gePurchasedItems = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee9(trackingId) {
    var res, $, textarea, placeholder, asinList, skuList;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee9$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            _context9.prev = 0;
            _context9.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/promotions/productSelection/view-product-selection"), 'get', {
              trackingId: trackingId
            });

          case 3:
            res = _context9.sent;
            $ = cheerio_default.a.load(res);
            textarea = $('.a-input-text-wrapper textarea');
            placeholder = textarea.attr('placeholder').toLocaleLowerCase();
            asinList = placeholder.indexOf('asin') > -1 && textarea.text();
            skuList = placeholder.indexOf('sku') > -1 && textarea.text();

            if (!(textarea.length === 1 && (asinList || skuList))) {
              _context9.next = 11;
              break;
            }

            return _context9.abrupt("return", {
              purchasedItems: trackingId,
              skuList: skuList,
              asinList: asinList
            });

          case 11:
            _context9.next = 17;
            break;

          case 13:
            _context9.prev = 13;
            _context9.t0 = _context9["catch"](0);
            taskParam.purchasedItems.add(trackingId);
            log["a" /* default */].setLog('获取商品系列失败-', Object(util["u" /* isError */])(_context9.t0));

          case 17:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee9, null, [[0, 13]]);
  }));
  return _gePurchasedItems.apply(this, arguments);
}

function changeSite() {
  return _changeSite.apply(this, arguments);
} // 获取列表数据


function _changeSite() {
  _changeSite = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee10() {
    return ComplexTasks_regeneratorRuntime().wrap(function _callee10$(_context10) {
      while (1) {
        switch (_context10.prev = _context10.next) {
          case 0:
            _context10.next = 2;
            return amazon["a" /* default */].checkSite(taskParam.market_code, taskParam, false);

          case 2:
            return _context10.abrupt("return", _context10.sent);

          case 3:
          case "end":
            return _context10.stop();
        }
      }
    }, _callee10);
  }));
  return _changeSite.apply(this, arguments);
}

function getListData() {
  // 重试上传失败的列表数据（仅优惠券有errList）
  // if (taskParam.errList && taskParam.errList.length > 0) {
  //   const totalItems = taskParam.paginator.totalItems
  //   return { data: taskParam.errList, paginator: { curItems: totalItems, totalItems } }
  // }
  switch (taskParam.type_id) {
    case 53:
      return handleGetCoupon();

    case 54:
      return getBestDealList();

    case 55:
      return getDiscountList();

    case 56:
      return getPromotionList();

    case 57:
      return getBuyer();
  }
} // 获取详情数据


function getDetailData(parentId) {
  switch (taskParam.type_id) {
    case 53:
    case 62:
      return handleGetCoupon(parentId);

    case 54:
    case 63:
      return getBestDealDetail(parentId);

    case 55:
    case 64:
      return getDiscountDetail(parentId);

    case 56:
    case 65:
      return getPromotionDetail(parentId);

    case 57:
      return getBuyerDetail(parentId);
  }
}

function handleGetCoupon(_x7) {
  return _handleGetCoupon.apply(this, arguments);
} // 获取新版优惠券csrfToken


function _handleGetCoupon() {
  _handleGetCoupon = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee11(id) {
    var _yield$getCouponCsrfT, errorMsg, csrfToken, detail;

    return ComplexTasks_regeneratorRuntime().wrap(function _callee11$(_context11) {
      while (1) {
        switch (_context11.prev = _context11.next) {
          case 0:
            // 判断是否可以获取新版优惠券
            // if (!taskParam.isNew) {
            //   const res = await nativeRequest(`${amazon.host}/sellercoupons/coupons`, 'get', {}).catch(() => {})
            //   taskParam.isNew = res && res.indexOf('Go to the new dashboard') > -1
            // }
            taskParam.isNew = true; // 获取csrfToken

            if (!(taskParam.isNew && !taskParam.csrfToken)) {
              _context11.next = 10;
              break;
            }

            _context11.next = 4;
            return getCouponCsrfToken();

          case 4:
            _yield$getCouponCsrfT = _context11.sent;
            errorMsg = _yield$getCouponCsrfT.errorMsg;
            csrfToken = _yield$getCouponCsrfT.csrfToken;

            if (csrfToken) {
              _context11.next = 9;
              break;
            }

            return _context11.abrupt("return", {
              errorMsg: errorMsg
            });

          case 9:
            taskParam.csrfToken = csrfToken;

          case 10:
            if (!id) {
              _context11.next = 18;
              break;
            }

            if (!taskParam.isNew) {
              _context11.next = 15;
              break;
            }

            _context11.next = 14;
            return getNewCouponDetail(id);

          case 14:
            detail = _context11.sent;

          case 15:
            return _context11.abrupt("return", detail);

          case 18:
            return _context11.abrupt("return", taskParam.isNew ? getNewCouponList() : getCouponList());

          case 19:
          case "end":
            return _context11.stop();
        }
      }
    }, _callee11);
  }));
  return _handleGetCoupon.apply(this, arguments);
}

function getCouponCsrfToken() {
  return _getCouponCsrfToken.apply(this, arguments);
} // 获取新版优惠券


function _getCouponCsrfToken() {
  _getCouponCsrfToken = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee12() {
    var csrfToken, errorMsg;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee12$(_context12) {
      while (1) {
        switch (_context12.prev = _context12.next) {
          case 0:
            _context12.prev = 0;
            _context12.next = 3;
            return axios_default()({
              method: 'GET',
              url: amazon["a" /* default */].host + '/coupons/api/merchantInfo',
              adapter: fetch["b" /* default */]
            }).then(function (_ref8) {
              var headers = _ref8.headers;
              csrfToken = headers['anti-csrftoken-a2z'];
            });

          case 3:
            return _context12.abrupt("return", {
              csrfToken: csrfToken
            });

          case 6:
            _context12.prev = 6;
            _context12.t0 = _context12["catch"](0);
            errorMsg = "\u83B7\u53D6\u65B0\u7248\u4F18\u60E0\u5238csrfToken\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context12.t0));
            log["a" /* default */].setLog(errorMsg);
            return _context12.abrupt("return", {
              errorMsg: errorMsg
            });

          case 11:
          case "end":
            return _context12.stop();
        }
      }
    }, _callee12, null, [[0, 6]]);
  }));
  return _getCouponCsrfToken.apply(this, arguments);
}

function getNewCouponList() {
  return _getNewCouponList.apply(this, arguments);
} // 获取优惠券


function _getNewCouponList() {
  _getNewCouponList = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee13() {
    var count,
        requestHearderId,
        params,
        _yield$nativeRequest,
        promotionSearchResultList,
        promotionTotalCount,
        data,
        errorMsg,
        _args13 = arguments;

    return ComplexTasks_regeneratorRuntime().wrap(function _callee13$(_context13) {
      while (1) {
        switch (_context13.prev = _context13.next) {
          case 0:
            count = _args13.length > 0 && _args13[0] !== undefined ? _args13[0] : 0;
            _context13.prev = 1;
            _context13.next = 4;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Referer',
              value: amazon["a" /* default */].host + '/coupons/coupons-dashboard-page'
            }], amazon["a" /* default */].host + '/coupons/api/getCouponPromotions*');

          case 4:
            requestHearderId = _context13.sent;
            params = {
              paginationSize: 100,
              paginationSkip: (taskParam.pageNum - 1) * 100
            };

            if (!isNineLimitAndNoDate) {
              if (isNineDaysCustomer) {
                // 9天限制客户且不是首次查询：查询前后9天
                params.afterStartDateFilter = moment_default()(Date.now() - NINE_DAYS_LIMIT).format('YYYY-MM-DDTHH:mm:ss');
                params.beforeStartDateFilter = moment_default()(Date.now() + NINE_DAYS_LIMIT).format('YYYY-MM-DDTHH:mm:ss');
                log["a" /* default */].setLog("[\u83B7\u53D6\u4F18\u60E0\u5238]\u5BA2\u6237\u67E5\u8BE2\u524D\u540E9\u5929\u65F6\u95F4\u8303\u56F4\uFF0C\u975E\u9996\u6B21\u67E5\u8BE2");
              } else {
                // 非9天限制客户：查询90天
                params.afterStartDateFilter = moment_default()(Date.now() - DATE_LIMIT).format('YYYY-MM-DDTHH:mm:ss');
                params.beforeStartDateFilter = moment_default()().format('YYYY-MM-DDTHH:mm:ss');
                log["a" /* default */].setLog("[\u83B7\u53D6\u4F18\u60E0\u5238]\u5BA2\u6237\u67E5\u8BE290\u5929\u65F6\u95F4\u8303\u56F4");
              }
            }

            _context13.next = 9;
            return Object(util["z" /* nativeRequest */])(amazon["a" /* default */].host + '/coupons/api/getCouponPromotions', 'get', params, {
              'anti-csrftoken-a2z': taskParam.csrfToken
            });

          case 9:
            _yield$nativeRequest = _context13.sent;
            promotionSearchResultList = _yield$nativeRequest.promotionSearchResultList;
            promotionTotalCount = _yield$nativeRequest.promotionTotalCount;
            // 移除监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

            if (!(promotionSearchResultList && promotionSearchResultList.length)) {
              _context13.next = 19;
              break;
            }

            // 将上次获取时间清零。因为新版优惠券不能做时间排序，所以每次抓的时候都是抓九十天全部的数据
            taskParam.date = isNineDaysCustomer ? 1 : 0; // 9天限制客户，根据date是否有值判断是否为首次查询
            // 映射旧字段

            data = promotionSearchResultList.map(function (item) {
              return {
                id: item.obfuscatedPromotionId,
                title: item.title,
                budget: item.budget,
                // 预算
                discount: item.discountValue,
                // 折扣
                discountType: item.discountType,
                // 折扣类型 money、percent
                startDate: item.startDate,
                // 开始日期
                endDate: item.endDate,
                // 结束日期
                status: item.status,
                // 状态
                clips: item.couponMetrics && item.couponMetrics.clipCount,
                // 领取数
                redemptions: item.couponMetrics && item.couponMetrics.redemptionCount,
                // 兑换数
                spend: item.couponMetrics && item.couponMetrics.budgetSpent,
                // 支出
                sales: item.couponMetrics && item.couponMetrics.sales,
                // 销售额
                budgetType: item.budgetType,
                // 预算类型
                budgetUnits: item.couponMetrics && item.couponMetrics.budgetUtilization,
                // 预算单位
                needsAttention: item.needsAttention // 需要注意

              };
            });
            return _context13.abrupt("return", {
              data: data,
              paginator: {
                curItems: (taskParam.pageNum - 1) * 100 + promotionSearchResultList.length,
                totalItems: promotionTotalCount
              }
            });

          case 19:
            return _context13.abrupt("return", {
              data: [],
              paginator: {
                curItems: 0,
                totalItems: 0
              }
            });

          case 20:
            _context13.next = 31;
            break;

          case 22:
            _context13.prev = 22;
            _context13.t0 = _context13["catch"](1);

            if (!(count < 2)) {
              _context13.next = 28;
              break;
            }

            _context13.next = 27;
            return getNewCouponList(++count);

          case 27:
            return _context13.abrupt("return", _context13.sent);

          case 28:
            errorMsg = "\u83B7\u53D6\u65B0\u7248\u4F18\u60E0\u5238\u5217\u8868\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context13.t0));
            log["a" /* default */].setLog(errorMsg);
            return _context13.abrupt("return", {
              errorMsg: errorMsg
            });

          case 31:
          case "end":
            return _context13.stop();
        }
      }
    }, _callee13, null, [[1, 22]]);
  }));
  return _getNewCouponList.apply(this, arguments);
}

function getCouponList() {
  return _getCouponList.apply(this, arguments);
} // 获取新版优惠券productSelectionId


function _getCouponList() {
  _getCouponList = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee14() {
    var count,
        errorMsg,
        res,
        $,
        coupon,
        _args14 = arguments;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee14$(_context14) {
      while (1) {
        switch (_context14.prev = _context14.next) {
          case 0:
            count = _args14.length > 0 && _args14[0] !== undefined ? _args14[0] : 0;
            _context14.next = 3;
            return Object(util["z" /* nativeRequest */])(amazon["a" /* default */].host + '/sellercoupons/coupons', 'get', {}).catch(function (e) {
              errorMsg = "\u8BF7\u6C42\u4F18\u60E0\u5238\u5217\u8868\u5931\u8D25---".concat(Object(util["u" /* isError */])(e));
              log["a" /* default */].setLog(errorMsg);
            });

          case 3:
            res = _context14.sent;

            if (!(errorMsg && count < 2)) {
              _context14.next = 8;
              break;
            }

            _context14.next = 7;
            return getCouponList(++count);

          case 7:
            return _context14.abrupt("return", _context14.sent);

          case 8:
            _context14.prev = 8;

            if (errorMsg) {
              _context14.next = 17;
              break;
            }

            $ = cheerio_default.a.load(res);
            //如果有多少script脚本标签使用循环来获取
            $('script').map(function () {
              if (coupon) return;

              if ($(this)[0].children[0] && $(this)[0].children[0].data.indexOf('var coupons = ') >= 0) {
                coupon = $(this)[0].children[0].data.split('var coupons = ')[1].split('var helpMessagesMap = ')[0];
              }
            });
            coupon = JSON.parse(coupon);
            coupon = Object(util["A" /* quickSort */])(coupon.map(function (item) {
              return {
                id: item.couponId,
                title: item.title,
                budget: item.budget,
                // 预算
                discount: item.discount,
                // 折扣
                discountType: item.discountType,
                // 折扣类型 money、percent
                startDate: item.startDate,
                // 开始日期
                endDate: item.endDate,
                // 结束日期
                status: item.status,
                // 状态
                clips: item.clips,
                // 领取数
                redemptions: item.redemptions,
                // 兑换数
                spend: item.spend,
                // 支出
                sales: item.sales,
                // 销售额
                budgetType: item.budgetType,
                // 预算类型
                budgetUnits: item.budgetUnits,
                // 预算单位
                needsAttention: item.needsAttention // 需要注意

              };
            }), function (a, b) {
              return a.endDate < b.endDate;
            });
            return _context14.abrupt("return", {
              data: coupon,
              paginator: {
                curItems: coupon.length,
                totalItems: coupon.length
              }
            });

          case 17:
            return _context14.abrupt("return", {
              errorMsg: errorMsg
            });

          case 18:
            _context14.next = 23;
            break;

          case 20:
            _context14.prev = 20;
            _context14.t0 = _context14["catch"](8);
            return _context14.abrupt("return", {
              errorMsg: "\u83B7\u53D6\u4F18\u60E0\u5238\u5217\u8868\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context14.t0))
            });

          case 23:
          case "end":
            return _context14.stop();
        }
      }
    }, _callee14, null, [[8, 20]]);
  }));
  return _getCouponList.apply(this, arguments);
}

function getProductSelectionId(_x8) {
  return _getProductSelectionId.apply(this, arguments);
} // 获取新版优惠券详情


function _getProductSelectionId() {
  _getProductSelectionId = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee15(promotionId) {
    var productSelectionId, errorMsg;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee15$(_context15) {
      while (1) {
        switch (_context15.prev = _context15.next) {
          case 0:
            _context15.prev = 0;
            _context15.next = 3;
            return Object(util["z" /* nativeRequest */])(amazon["a" /* default */].host + '/coupons/api/couponPromotion', 'get', {
              promotionId: promotionId
            }, {
              'anti-csrftoken-a2z': taskParam.csrfToken
            }).then(function (data) {
              productSelectionId = data.productSelectionId;
            });

          case 3:
            return _context15.abrupt("return", {
              productSelectionId: productSelectionId
            });

          case 6:
            _context15.prev = 6;
            _context15.t0 = _context15["catch"](0);
            errorMsg = "\u83B7\u53D6\u65B0\u7248\u4F18\u60E0\u5238productSelectionId\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context15.t0));
            return _context15.abrupt("return", {
              errorMsg: errorMsg
            });

          case 10:
          case "end":
            return _context15.stop();
        }
      }
    }, _callee15, null, [[0, 6]]);
  }));
  return _getProductSelectionId.apply(this, arguments);
}

function getNewCouponDetail(_x9) {
  return _getNewCouponDetail.apply(this, arguments);
} // 获取优惠券详情


function _getNewCouponDetail() {
  _getNewCouponDetail = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee16(id) {
    var _yield$getProductSele, productSelectionId, errorMsg, _yield$nativeRequest2, couponPromotionProducts;

    return ComplexTasks_regeneratorRuntime().wrap(function _callee16$(_context16) {
      while (1) {
        switch (_context16.prev = _context16.next) {
          case 0:
            _context16.prev = 0;
            _context16.next = 3;
            return getProductSelectionId(id);

          case 3:
            _yield$getProductSele = _context16.sent;
            productSelectionId = _yield$getProductSele.productSelectionId;
            errorMsg = _yield$getProductSele.errorMsg;
            _context16.next = 8;
            return Object(util["h" /* delayed */])(5 * 1000, id);

          case 8:
            if (productSelectionId) {
              _context16.next = 12;
              break;
            }

            log["a" /* default */].setLog('[新版优惠券详情]productSelectionId为空----', errorMsg); // 收集获取失败的详情

            taskParam.failDetail.push(id);
            return _context16.abrupt("return");

          case 12:
            _context16.next = 14;
            return Object(util["z" /* nativeRequest */])(amazon["a" /* default */].host + '/coupons/api/couponPromotion/products', 'get', {
              productSelectionId: productSelectionId,
              pageSize: 999
            });

          case 14:
            _yield$nativeRequest2 = _context16.sent;
            couponPromotionProducts = _yield$nativeRequest2.couponPromotionProducts;

            if (!couponPromotionProducts) {
              _context16.next = 20;
              break;
            }

            return _context16.abrupt("return", couponPromotionProducts.map(function (_ref9) {
              var asin = _ref9.asin,
                  title = _ref9.title;
              return {
                asin: asin,
                title: title
              };
            }));

          case 20:
            log["a" /* default */].setLog('[新版优惠券详情]获取失败,可能是亚马逊规则改变'); // 收集获取失败的详情

            taskParam.failDetail.push(id);

          case 22:
            _context16.next = 28;
            break;

          case 24:
            _context16.prev = 24;
            _context16.t0 = _context16["catch"](0);
            log["a" /* default */].setLog('[新版优惠券详情]获取失败----', Object(util["u" /* isError */])(_context16.t0)); // 收集获取失败的详情

            taskParam.failDetail.push(id);

          case 28:
          case "end":
            return _context16.stop();
        }
      }
    }, _callee16, null, [[0, 24]]);
  }));
  return _getNewCouponDetail.apply(this, arguments);
}

function getCouponDetail(_x10) {
  return _getCouponDetail.apply(this, arguments);
} // 获取秒杀


function _getCouponDetail() {
  _getCouponDetail = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee17(couponId) {
    var res, $, details;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee17$(_context17) {
      while (1) {
        switch (_context17.prev = _context17.next) {
          case 0:
            _context17.prev = 0;
            _context17.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/sellercoupons/coupons/").concat(couponId), 'get', {});

          case 3:
            res = _context17.sent;

            if (!res) {
              _context17.next = 13;
              break;
            }

            $ = cheerio_default.a.load(res);
            //如果有多少script脚本标签使用循环来获取
            $('script').map(function () {
              if (details) return;

              if ($(this)[0].children[0] && $(this)[0].children[0].data.indexOf('var couponAsins = ') >= 0) {
                details = $(this)[0].children[0].data.split("var couponAsins = JSON.parse('")[1].split("');")[0];
              }
            });
            details = details.replace(/\\x22/g, '"').replace(/\\/g, '');
            details = JSON.parse(details);
            details = details.map(function (_ref10) {
              var title = _ref10.title,
                  asin = _ref10.asin;
              return {
                title: title,
                asin: asin
              };
            });
            return _context17.abrupt("return", details);

          case 13:
            log["a" /* default */].setLog('[优惠券详情]获取失败,可能是亚马逊规则改变'); // 收集获取失败的详情

            taskParam.failDetail.push(couponId);

          case 15:
            _context17.next = 21;
            break;

          case 17:
            _context17.prev = 17;
            _context17.t0 = _context17["catch"](0);
            log["a" /* default */].setLog('[优惠券详情]获取失败----', Object(util["u" /* isError */])(_context17.t0)); // 收集获取失败的详情

            taskParam.failDetail.push(couponId);

          case 21:
          case "end":
            return _context17.stop();
        }
      }
    }, _callee17, null, [[0, 17]]);
  }));
  return _getCouponDetail.apply(this, arguments);
}

function getBestDealList() {
  return _getBestDealList.apply(this, arguments);
} // 获取秒杀详情


function _getBestDealList() {
  _getBestDealList = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee18() {
    var count,
        errorMsg,
        params,
        res,
        rows,
        _args18 = arguments;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee18$(_context18) {
      while (1) {
        switch (_context18.prev = _context18.next) {
          case 0:
            count = _args18.length > 0 && _args18[0] !== undefined ? _args18[0] : 0;
            params = {
              pageNumber: taskParam.pageNum,
              pageSize: 50,
              campaignStatuses: 'ACTIVE,ACTIVE_WITH_SUPPRESSIONS,APPROVED,SUPPRESSED,ENDED,CANCELLED,REJECTED,DRAFT,REWORK',
              merchandisingType: 'LIGHTNING_DEAL,BEST_DEAL,DEAL_OF_THE_DAY',
              sortColumn: 'END_DATE',
              sortOrder: 'ASC',
              marketplaces: amazon["a" /* default */].MarketplaceObj[taskParam.market_code]
            };

            if (!isNineLimitAndNoDate) {
              if (isNineDaysCustomer) {
                // 9天限制客户且不是首次查询：查询前后9天
                params.afterStartDate = moment_default()(Date.now() - NINE_DAYS_LIMIT).format('MM-DD-YYYY');
                params.beforeStartDate = moment_default()(Date.now() + NINE_DAYS_LIMIT).format('MM-DD-YYYY');
                log["a" /* default */].setLog("[\u83B7\u53D6\u79D2\u6740]\u5BA2\u6237\u67E5\u8BE2\u524D\u540E9\u5929\u65F6\u95F4\u8303\u56F4\uFF0C\u975E\u9996\u6B21\u67E5\u8BE2");
              } else {
                // 非9天限制客户：查询前后90天
                params.afterStartDate = moment_default()(Date.now() - DATE_LIMIT).format('MM-DD-YYYY');
                params.beforeStartDate = moment_default()(Date.now() + DATE_LIMIT).format('MM-DD-YYYY');
                log["a" /* default */].setLog("[\u83B7\u53D6\u79D2\u6740]\u5BA2\u6237\u67E5\u8BE2\u524D\u540E90\u5929\u65F6\u95F4\u8303\u56F4");
              }
            }

            _context18.next = 5;
            return Object(util["z" /* nativeRequest */])(amazon["a" /* default */].host + '/merchandising/api/v4/manage/data', 'get', params).catch(function (e) {
              errorMsg = "\u8BF7\u6C42\u79D2\u6740\u5217\u8868\u5931\u8D25---".concat(Object(util["u" /* isError */])(e));
              log["a" /* default */].setLog(errorMsg);
            });

          case 5:
            res = _context18.sent;

            if (!(errorMsg && count < 2)) {
              _context18.next = 10;
              break;
            }

            _context18.next = 9;
            return getBestDealList(++count);

          case 9:
            return _context18.abrupt("return", _context18.sent);

          case 10:
            _context18.prev = 10;

            if (!(res && res.viewModel && res.viewModel.searchCampaignsQueryResult)) {
              _context18.next = 16;
              break;
            }

            rows = res.viewModel.searchCampaignsQueryResult.searchCampaigns;
            return _context18.abrupt("return", {
              data: rows.map(function (item) {
                return {
                  id: item.campaignReference && item.campaignReference.id,
                  title: item.title,
                  // 标题
                  internalDescription: item.internalDescription,
                  // 内部描述
                  campaignStatus: item.campaignStatus,
                  // 状态
                  skuCount: item.skuCount,
                  // 状态
                  asinCount: item.asinCount,
                  // 商品数量
                  startDateEpochMillis: item.startDateEpochMillis,
                  // 开始时间
                  endDateEpochMillis: item.endDateEpochMillis,
                  // 结束时间
                  type: item.type,
                  // 类型
                  fees: item.fees,
                  // 秒杀费
                  sales: item.sales,
                  // 销售额
                  unitsSold: item.unitsSold,
                  // 销量
                  currencyCode: item.currencyCode,
                  // 币种
                  committedQuantity: item.committedQuantity,
                  // 参与库存量
                  glanceViews: item.glanceViews,
                  // 浏览量
                  waived: item.feeCharged && item.feeCharged.waived,
                  // 是否免除
                  feeCharged: item.feeCharged,
                  feeRateCard: item.feeRateCard
                };
              }),
              paginator: {
                totalItems: res.viewModel.searchCampaignsQueryResult.totalCount,
                curItems: rows.length + 50 * (taskParam.pageNum - 1)
              }
            });

          case 16:
            if (!res) {
              _context18.next = 18;
              break;
            }

            return _context18.abrupt("return", {
              paginator: {
                totalItems: 0,
                curItems: 0
              }
            });

          case 18:
            return _context18.abrupt("return", {
              errorMsg: errorMsg || '获取秒杀列表失败----'
            });

          case 21:
            _context18.prev = 21;
            _context18.t0 = _context18["catch"](10);
            return _context18.abrupt("return", {
              errorMsg: '获取秒杀列表失败----' + Object(util["u" /* isError */])(_context18.t0)
            });

          case 24:
          case "end":
            return _context18.stop();
        }
      }
    }, _callee18, null, [[10, 21]]);
  }));
  return _getBestDealList.apply(this, arguments);
}

function getBestDealDetail(_x11) {
  return _getBestDealDetail.apply(this, arguments);
} // 获取促销管理列表接口csrftoken


function _getBestDealDetail() {
  _getBestDealDetail = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee19(campaignId) {
    var requestHearderId, res, items;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee19$(_context19) {
      while (1) {
        switch (_context19.prev = _context19.next) {
          case 0:
            _context19.prev = 0;
            _context19.next = 3;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Referer',
              value: "".concat(amazon["a" /* default */].host, "/merchandising-new/deal/view/").concat(campaignId, "?itemsFilter=all&pageNum=1&pageSize=15&searchTerm=")
            }], "".concat(amazon["a" /* default */].host, "/merchandising/api/v4/deals/get*"));

          case 3:
            requestHearderId = _context19.sent;
            _context19.next = 6;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/merchandising/api/v4/deals/get"), 'get', {
              campaignId: campaignId
            });

          case 6:
            res = _context19.sent;
            // 移除监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]); // const res = await require('../../mock/bestDealDetail.json')

            if (!(res && res.viewModel && res.viewModel.multiParentItemList)) {
              _context19.next = 13;
              break;
            }

            items = res.viewModel.multiParentItemList.items || [];
            return _context19.abrupt("return", items.map(function (item) {
              return {
                asin: item.asin,
                sku: item.sku,
                productName: item.productName,
                sellerPrice: item.sellerPrice,
                dealPrice: item.dealPrice,
                dealQuantity: item.dealQuantity,
                // 秒杀库存
                sellerQuantity: item.sellerQuantity,
                // 总库存
                amazonFulfilled: item.amazonFulfilled,
                // 配送渠道 true为亚马逊，其他值为fba
                children: item.children
              };
            }));

          case 13:
            log["a" /* default */].setLog('[秒杀详情]没有table数据，可能是亚马逊规则改变'); // 收集获取失败的详情

            taskParam.failDetail.push(campaignId);

          case 15:
            _context19.next = 21;
            break;

          case 17:
            _context19.prev = 17;
            _context19.t0 = _context19["catch"](0);
            log["a" /* default */].setLog('[秒杀详情]获取失败----', Object(util["u" /* isError */])(_context19.t0)); // 收集获取失败的详情

            taskParam.failDetail.push(campaignId);

          case 21:
          case "end":
            return _context19.stop();
        }
      }
    }, _callee19, null, [[0, 17]]);
  }));
  return _getBestDealDetail.apply(this, arguments);
}

function getPromotionCsrfToken() {
  return _getPromotionCsrfToken.apply(this, arguments);
} // 获取促销管理列表token


function _getPromotionCsrfToken() {
  _getPromotionCsrfToken = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee20() {
    var res, $;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee20$(_context20) {
      while (1) {
        switch (_context20.prev = _context20.next) {
          case 0:
            _context20.prev = 0;
            _context20.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/promotions/manage/ref=xx_promomgr_dnav_xx"), 'get');

          case 3:
            res = _context20.sent;
            $ = cheerio_default.a.load(res);
            return _context20.abrupt("return", $('#epm-center meta').attr('content'));

          case 8:
            _context20.prev = 8;
            _context20.t0 = _context20["catch"](0);
            log["a" /* default */].setLog('获取促销管理列表接口csrftoken失败----', Object(util["u" /* isError */])(_context20.t0));
            return _context20.abrupt("return", false);

          case 12:
          case "end":
            return _context20.stop();
        }
      }
    }, _callee20, null, [[0, 8]]);
  }));
  return _getPromotionCsrfToken.apply(this, arguments);
}

function getPromotionPageToken() {
  return _getPromotionPageToken.apply(this, arguments);
} // 判断是否有endDate超出限制天数的数据 并 过滤已获取的数据


function _getPromotionPageToken() {
  _getPromotionPageToken = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee21() {
    var res, $, scriptText, _$, pageTokens, msg;

    return ComplexTasks_regeneratorRuntime().wrap(function _callee21$(_context21) {
      while (1) {
        switch (_context21.prev = _context21.next) {
          case 0:
            _context21.prev = 0;
            _context21.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/promotions/manage/search"), 'get', {
              selectedButton: 'your-promotions',
              searchType: 'STATUS',
              statusSearchType: 'ALL',
              dateSearchType: 'START_DATE',
              plmStatusSearchType: 'PENDING',
              ref_: 'xx_epmmpsch_cont_epmmpmyp',
              _: Date.now(),
              claimCode: '',
              startSearchDate: '',
              endSearchDate: ''
            });

          case 3:
            res = _context21.sent;
            $ = cheerio_default.a.load(res); // 解析script里面的文本

            scriptText = $('#itemRecords script').html();
            _$ = cheerio_default.a.load(scriptText);
            pageTokens = _$('#pageTokenList').text().trim();
            return _context21.abrupt("return", {
              code: 0,
              pageTokens: pageTokens || "[null]"
            });

          case 11:
            _context21.prev = 11;
            _context21.t0 = _context21["catch"](0);
            msg = "\u83B7\u53D6\u4FC3\u9500\u7BA1\u7406pageTokenList\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context21.t0));
            log["a" /* default */].setLog(msg);
            return _context21.abrupt("return", {
              code: 1,
              msg: msg
            });

          case 16:
          case "end":
            return _context21.stop();
        }
      }
    }, _callee21, null, [[0, 11]]);
  }));
  return _getPromotionPageToken.apply(this, arguments);
}

function checkPromotionList(_x12) {
  return _checkPromotionList.apply(this, arguments);
}

function _checkPromotionList() {
  _checkPromotionList = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee22(list) {
    var res, currentTime, currentLimit, filteredList, hasExceededLimit, _iterator, _step, item, date, formatDate;

    return ComplexTasks_regeneratorRuntime().wrap(function _callee22$(_context22) {
      while (1) {
        switch (_context22.prev = _context22.next) {
          case 0:
            _context22.prev = 0;
            _context22.next = 3;
            return Object(util["l" /* gateGet */])('api/v1/baseInfos', {}, 'task').catch(function () {});

          case 3:
            res = _context22.sent;
            currentTime = res && res.data && res.data.time_format ? new Date(res && res.data && res.data.time_format).getTime() : Date.now();
            currentLimit = isNineDaysCustomer && taskParam.date ? NINE_DAYS_LIMIT : DATE_LIMIT;
            filteredList = [];
            hasExceededLimit = false; // 是否遇到了超过限制时间的数据
            // 遍历list，因为是倒序的，遇到超过currentLimit的就停止

            _iterator = ComplexTasks_createForOfIteratorHelper(list);
            _context22.prev = 9;

            _iterator.s();

          case 11:
            if ((_step = _iterator.n()).done) {
              _context22.next = 26;
              break;
            }

            item = _step.value;
            date = item.endDate;
            formatDate = void 0;

            if (taskParam.hasTimeZone) {
              formatDate = new Date(moment_default()(date, taskParam.dmyFormat ? taskParam.dmyFormat : taskParam.mdyFormat));
            } else {
              formatDate = new Date(taskParam.dmyFormat ? moment_default()(date, taskParam.dmyFormat) : date);
            } // 如果更新时间不为时间格式，则默认当前时间


            if ("".concat(formatDate.getTime()) == 'NaN' || !taskParam.date || !date) formatDate = currentTime; // 过滤已获取的数据

            if (!(formatDate >= new Date(taskParam.date || 0) && (isNineLimitAndNoDate || !item.startDate || formatDate >= currentTime - currentLimit))) {
              _context22.next = 21;
              break;
            }

            filteredList.push(item);
            _context22.next = 24;
            break;

          case 21:
            if (!(formatDate < currentTime - currentLimit)) {
              _context22.next = 24;
              break;
            }

            // 结束时间在限制时间之前，则停止获取
            hasExceededLimit = true;
            return _context22.abrupt("break", 26);

          case 24:
            _context22.next = 11;
            break;

          case 26:
            _context22.next = 31;
            break;

          case 28:
            _context22.prev = 28;
            _context22.t0 = _context22["catch"](9);

            _iterator.e(_context22.t0);

          case 31:
            _context22.prev = 31;

            _iterator.f();

            return _context22.finish(31);

          case 34:
            return _context22.abrupt("return", {
              filteredList: filteredList,
              hasExceededLimit: hasExceededLimit
            });

          case 37:
            _context22.prev = 37;
            _context22.t1 = _context22["catch"](0);
            log["a" /* default */].setLog('判断是否有endDate超出限制天数的数据失败----', Object(util["u" /* isError */])(_context22.t1));
            return _context22.abrupt("return", {
              checkErrorMsg: '判断是否有endDate超出限制天数的数据失败----' + Object(util["u" /* isError */])(_context22.t1)
            });

          case 41:
          case "end":
            return _context22.stop();
        }
      }
    }, _callee22, null, [[0, 37], [9, 28, 31, 34]]);
  }));
  return _checkPromotionList.apply(this, arguments);
}

var ComplexTasks_requestPromotionList = function requestPromotionList(_ref3) {
  var pageTokens = _ref3.pageTokens,
      currentPage = _ref3.currentPage,
      csrfToken = _ref3.csrfToken;
  return currentPage === 1 ? Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/promotions/manage/search"), 'get', {
    selectedButton: 'your-promotions',
    searchType: 'STATUS',
    statusSearchType: 'ALL',
    dateSearchType: 'START_DATE',
    plmStatusSearchType: 'PENDING',
    ref_: 'xx_epmmpsch_cont_epmmpmyp',
    _: Date.now(),
    claimCode: '',
    startSearchDate: '',
    endSearchDate: ''
  }) : Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/promotions/manage/refresh/ref=xx_xx_pgnb_xx?selectedButton=your-promotions&searchType=status&statusSearchType=all"), 'post', {
    action: "PAGE_CHANGED",
    clientState: {
      pageTokens: pageTokens
    },
    filters: [],
    pageNumber: currentPage,
    recordsPerPage: null,
    sortOrder: "ASCENDING",
    sortedColumnId: "endDateField",
    tableId: "managepromotionstable"
  }, {
    'anti-csrftoken-a2z': csrfToken,
    'x-requested-with': 'XMLHttpRequest'
  });
};
/**
 * 获取促销管理，内部完成所有分页逻辑，直到最后一页或超过90天限制
 */


function getPromotionList() {
  return _getPromotionList.apply(this, arguments);
} // 获取促销管理详情


function _getPromotionList() {
  _getPromotionList = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee25() {
    var count,
        currentPage,
        csrfToken,
        pageTokens,
        errorMsg,
        allData,
        totalItems,
        shouldStop,
        res,
        currentPageData,
        isLastPage,
        sortedData,
        _args25 = arguments;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee25$(_context25) {
      while (1) {
        switch (_context25.prev = _context25.next) {
          case 0:
            count = _args25.length > 0 && _args25[0] !== undefined ? _args25[0] : 0;
            currentPage = _args25.length > 1 && _args25[1] !== undefined ? _args25[1] : 1;
            csrfToken = _args25.length > 2 ? _args25[2] : undefined;
            pageTokens = _args25.length > 3 ? _args25[3] : undefined;
            allData = []; // 存储所有页面的数据

            totalItems = 0;
            shouldStop = false; // 是否停止循环获取

            if (csrfToken) {
              _context25.next = 11;
              break;
            }

            _context25.next = 10;
            return getPromotionCsrfToken();

          case 10:
            csrfToken = _context25.sent;

          case 11:
            if (shouldStop) {
              _context25.next = 38;
              break;
            }

            log["a" /* default */].setLog("\u6B63\u5728\u83B7\u53D6\u7B2C ".concat(currentPage, " \u9875\u6570\u636E..."));
            _context25.next = 15;
            return Promise.all(['all'].map(function (item) {
              return ComplexTasks_requestPromotionList({
                currentPage: currentPage,
                pageTokens: pageTokens,
                csrfToken: csrfToken
              }).then( /*#__PURE__*/function () {
                var _ref11 = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee23(data) {
                  var list, $, _$, isLastPageForThisStatus, _yield$checkPromotion, filteredList, hasExceededLimit, checkErrorMsg;

                  return ComplexTasks_regeneratorRuntime().wrap(function _callee23$(_context23) {
                    while (1) {
                      switch (_context23.prev = _context23.next) {
                        case 0:
                          _context23.prev = 0;
                          list = []; // 解析dom

                          $ = cheerio_default.a.load(data);
                          _$ = cheerio_default.a.load("<table>".concat($('#itemRecords script').html(), "</table>"));

                          _$('.mt-row').map(function (key) {
                            var trackingIdField = _$("#rowId".concat(key, "-trackingIdField .mt-link-content"));

                            var trackingId = (trackingIdField.text() || _$("#rowId".concat(key, "-trackingIdField .mt-text-content")).text()).trim();

                            var promotionId = trackingIdField.attr('href') && trackingIdField.attr('href').split('promotionId=')[1] && trackingIdField.attr('href').split('promotionId=')[1].trim();
                            list.push({
                              trackingId: trackingId,
                              internalDescription: _$("#rowId".concat(key, "-titleField .mt-text-content")).text().trim(),
                              promotionStatus: item,
                              id: promotionId,
                              startDate: _$("#rowId".concat(key, "-startDateField .mt-text-content")).text().trim(),
                              endDate: _$("#rowId".concat(key, "-endDateField .mt-text-content")).text().trim()
                            });
                          });

                          pageTokens = _$('#pageTokenList').text().trim(); // 判断是否为最后一页

                          isLastPageForThisStatus = !pageTokens || pageTokens.indexOf('null') > -1;
                          _context23.next = 9;
                          return checkPromotionList(list);

                        case 9:
                          _yield$checkPromotion = _context23.sent;
                          filteredList = _yield$checkPromotion.filteredList;
                          hasExceededLimit = _yield$checkPromotion.hasExceededLimit;
                          checkErrorMsg = _yield$checkPromotion.checkErrorMsg;

                          if (!checkErrorMsg) {
                            _context23.next = 15;
                            break;
                          }

                          return _context23.abrupt("return", {
                            errorMsg: checkErrorMsg
                          });

                        case 15:
                          return _context23.abrupt("return", {
                            list: filteredList,
                            isLastPage: isLastPageForThisStatus,
                            hasExceededLimit: hasExceededLimit
                          });

                        case 18:
                          _context23.prev = 18;
                          _context23.t0 = _context23["catch"](0);
                          errorMsg = "\u4FC3\u9500\u7BA1\u7406\u5217\u8868\u83B7\u53D6\u5931\u8D25\uFF0C\u4E9A\u9A6C\u900A\u89C4\u5219\u53EF\u80FD\u6539\u53D8----".concat(Object(util["u" /* isError */])(_context23.t0));
                          log["a" /* default */].setLog(errorMsg);
                          return _context23.abrupt("return", false);

                        case 23:
                        case "end":
                          return _context23.stop();
                      }
                    }
                  }, _callee23, null, [[0, 18]]);
                }));

                return function (_x22) {
                  return _ref11.apply(this, arguments);
                };
              }());
            })).catch( /*#__PURE__*/function () {
              var _ref12 = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee24(e) {
                return ComplexTasks_regeneratorRuntime().wrap(function _callee24$(_context24) {
                  while (1) {
                    switch (_context24.prev = _context24.next) {
                      case 0:
                        errorMsg = "\u4FC3\u9500\u7BA1\u7406\u5217\u8868\u83B7\u53D6\u5931\u8D25----".concat(Object(util["u" /* isError */])(e), ",csrfToken:").concat(csrfToken);
                        log["a" /* default */].setLog(errorMsg);

                        if (!(e && e.message && e.message.indexOf('403') > -1)) {
                          _context24.next = 6;
                          break;
                        }

                        _context24.next = 5;
                        return getPromotionCsrfToken();

                      case 5:
                        csrfToken = _context24.sent;

                      case 6:
                      case "end":
                        return _context24.stop();
                    }
                  }
                }, _callee24);
              }));

              return function (_x23) {
                return _ref12.apply(this, arguments);
              };
            }());

          case 15:
            res = _context25.sent;

            if (!errorMsg) {
              _context25.next = 24;
              break;
            }

            if (!(count < 2)) {
              _context25.next = 23;
              break;
            }

            _context25.next = 20;
            return getPromotionList(++count, currentPage, csrfToken, pageTokens);

          case 20:
            return _context25.abrupt("return", _context25.sent);

          case 23:
            return _context25.abrupt("return", {
              errorMsg: errorMsg
            });

          case 24:
            // 合并当前页数据
            currentPageData = res.reduce(function (arr, _ref13) {
              var list = _ref13.list;
              list.length > 0 && taskParam.dateArr.push(list[list.length - 1].endDate);
              return arr.concat(list);
            }, []); // 检查停止条件

            isLastPage = res.some(function (_ref14) {
              var isLastPage = _ref14.isLastPage;
              return isLastPage;
            }); // const hasExceededLimit = res.some(({ hasExceededLimit }) => hasExceededLimit)
            // 将当前页数据添加到总数据中

            allData = allData.concat(currentPageData);
            log["a" /* default */].setLog("\u83B7\u53D6\u4FC3\u9500\u7BA1\u7406\u5217\u8868---\u7B2C ".concat(currentPage, " \u9875\u83B7\u53D6\u5230 ").concat(currentPageData.length, " \u6761\u6570\u636E\uFF0C\u7D2F\u8BA1 ").concat(allData.length, " \u6761")); // 判断是否应该停止

            if (!isLastPage) {
              _context25.next = 33;
              break;
            }

            log["a" /* default */].setLog('获取促销管理列表---检测到最后一页，停止获取');
            shouldStop = true;
            _context25.next = 36;
            break;

          case 33:
            // 继续获取下一页
            currentPage++; // 添加延时避免请求过于频繁

            _context25.next = 36;
            return new Promise(function (resolve) {
              return setTimeout(resolve, 5000);
            });

          case 36:
            _context25.next = 11;
            break;

          case 38:
            // 按endDate排序所有数据
            sortedData = Object(util["A" /* quickSort */])(allData, function (a, b) {
              return a.endDate < b.endDate;
            }); // 计算总数

            totalItems = sortedData.length;
            log["a" /* default */].setLog("\u4FC3\u9500\u7BA1\u7406\u6570\u636E\u83B7\u53D6\u5B8C\u6210\uFF0C\u5171\u83B7\u53D6 ".concat(totalItems, " \u6761\u6570\u636E"));
            return _context25.abrupt("return", {
              data: sortedData,
              paginator: {
                curItems: totalItems,
                totalItems: totalItems
              }
            });

          case 42:
          case "end":
            return _context25.stop();
        }
      }
    }, _callee25);
  }));
  return _getPromotionList.apply(this, arguments);
}

function getPromotionDetail(_x13) {
  return _getPromotionDetail.apply(this, arguments);
} // 获取折扣列表


function _getPromotionDetail() {
  _getPromotionDetail = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee26(promotionId) {
    var res, $, purchasedItems, details;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee26$(_context26) {
      while (1) {
        switch (_context26.prev = _context26.next) {
          case 0:
            _context26.prev = 0;
            _context26.next = 3;
            return Object(util["z" /* nativeRequest */])(amazon["a" /* default */].host + '/promotions/view', 'get', {
              promotionId: promotionId
            });

          case 3:
            res = _context26.sent;
            $ = cheerio_default.a.load(res);
            purchasedItems = $('#purchaseItemType').text().trim();
            details = [{
              trackingId: $('#trackingId').text().trim(),
              promotionId: $('#promotionId').text().trim(),
              buyerPurchases: $('#conditionType').text().trim(),
              buyerPurchasesNum: $('#conditionValue').text().trim(),
              purchasedItems: purchasedItems,
              excludeItems: $('#excludeItemType').text().trim(),
              buyerGets: $('#benefitType').text().trim(),
              buyerGetsNum: $('#benefitValue').text().trim(),
              appliesTo: $('#benefitItemType').text().trim(),
              additionalItem: $('#benefitSingleAsin').text().trim(),
              claimCode: ($('#claimCodeText').text() || $('#claimCode').text()).trim(),
              oneRedemptionPerCustomer: $('#oneRedemptionCheckbox').text().trim(),
              claimCodeCombinability: $('#combinabilityType').text().trim(),
              showPromotion: $('#detailDisplayTextString').text().trim()
            }]; // 商品系列名称

            taskParam.purchasedItems && taskParam.purchasedItems.add(purchasedItems);
            return _context26.abrupt("return", details);

          case 11:
            _context26.prev = 11;
            _context26.t0 = _context26["catch"](0);
            // 收集获取失败的详情
            taskParam.failDetail.push(promotionId);
            log["a" /* default */].setLog("\u8BF7\u6C42\u4FC3\u9500\u7BA1\u7406\u8BE6\u60C5\u5931\u8D25---".concat(Object(util["u" /* isError */])(_context26.t0)));

          case 15:
          case "end":
            return _context26.stop();
        }
      }
    }, _callee26, null, [[0, 11]]);
  }));
  return _getPromotionDetail.apply(this, arguments);
}

function getDiscountList() {
  return _getDiscountList.apply(this, arguments);
} // 获取折扣详情


function _getDiscountList() {
  _getDiscountList = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee27() {
    var count,
        errorMsg,
        region,
        res,
        totalResults,
        promotions,
        _args27 = arguments;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee27$(_context27) {
      while (1) {
        switch (_context27.prev = _context27.next) {
          case 0:
            count = _args27.length > 0 && _args27[0] !== undefined ? _args27[0] : 0;
            region = amazon["a" /* default */].getRegion(taskParam.market_code);
            _context27.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/discounts/api/searchPromotions"), 'get', {
              region: {
                US: 'americas',
                UK: 'europe',
                JP: 'asia-pacific',
                IN: 'asia-pacific',
                AU: 'asia-pacific',
                SG: 'asia-pacific'
              }[region],
              pageSize: 100,
              pageNumber: taskParam.pageNum,
              sortBy: 'startDateTime',
              sortDir: 'ASC',
              marketplaceList: amazon["a" /* default */].MarketplaceObj[taskParam.market_code],
              searchData: true
            }).catch(function (e) {
              errorMsg = "\u8BF7\u6C42\u6298\u6263\u5217\u8868\u5931\u8D25---".concat(Object(util["u" /* isError */])(e));
              log["a" /* default */].setLog(errorMsg);
            });

          case 4:
            res = _context27.sent;
            _context27.prev = 5;

            if (!(errorMsg && count < 2)) {
              _context27.next = 10;
              break;
            }

            _context27.next = 9;
            return getDiscountList(++count);

          case 9:
            return _context27.abrupt("return", _context27.sent);

          case 10:
            if (!(res && res.promotions)) {
              _context27.next = 15;
              break;
            }

            totalResults = res.totalResults, promotions = res.promotions;
            return _context27.abrupt("return", {
              data: promotions.map(function (item) {
                var _item$promotionBasic$;

                return {
                  id: item.promotionBasic.promotionId,
                  promoName: item.promotionBasic.title,
                  // 折扣名称
                  startAtDateTime: item.startDate && item.startDate.replace(/\[.*\]/, "") || "",
                  // 开始时间
                  endAtDateTime: item.endDate,
                  // 结束时间
                  createdAt: item.promotionBasic.createdAt,
                  // 创建时间
                  status: item.promotionBasic.status,
                  // 状态
                  type: ((_item$promotionBasic$ = item.promotionBasic.customerTarget) === null || _item$promotionBasic$ === void 0 ? void 0 : _item$promotionBasic$.audience) || 'ALL CUSTOMERS',
                  // 类型
                  // lastChanged: item.lastChanged// 上次修改时间，
                  glanceViews: item.metrics.glanceViews,
                  // 浏览量
                  sales: item.metrics.sales,
                  // 销售额
                  unitsSold: item.metrics.unitsSold,
                  // 销量
                  country: item.country,
                  // 国家
                  errorCount: item.errorCount
                };
              }),
              paginator: {
                totalItems: totalResults,
                curItems: promotions.length + 100 * (taskParam.pageNum - 1)
              }
            });

          case 15:
            if (!res) {
              _context27.next = 17;
              break;
            }

            return _context27.abrupt("return", {
              paginator: {
                totalItems: 0,
                curItems: 0
              }
            });

          case 17:
            return _context27.abrupt("return", {
              errorMsg: errorMsg || '获取折扣列表table失败'
            });

          case 20:
            _context27.prev = 20;
            _context27.t0 = _context27["catch"](5);
            log["a" /* default */].setLog("\u83B7\u53D6\u6298\u6263\u5217\u8868table\u5931\u8D25\uFF0C\u4E9A\u9A6C\u900A\u89C4\u5219\u53EF\u80FD\u5DF2\u6539\u53D8----".concat(Object(util["u" /* isError */])(_context27.t0)));
            return _context27.abrupt("return", {
              errorMsg: "\u83B7\u53D6\u6298\u6263\u5217\u8868table\u5931\u8D25\uFF0C\u4E9A\u9A6C\u900A\u89C4\u5219\u53EF\u80FD\u5DF2\u6539\u53D8----".concat(Object(util["u" /* isError */])(_context27.t0))
            });

          case 24:
          case "end":
            return _context27.stop();
        }
      }
    }, _callee27, null, [[5, 20]]);
  }));
  return _getDiscountList.apply(this, arguments);
}

function getDiscountDetail(_x14) {
  return _getDiscountDetail.apply(this, arguments);
} // 获取买家之声列表


function _getDiscountDetail() {
  _getDiscountDetail = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee28(id) {
    var res, _res$promotionDetails, promotion, productSelectorsList, basic;

    return ComplexTasks_regeneratorRuntime().wrap(function _callee28$(_context28) {
      while (1) {
        switch (_context28.prev = _context28.next) {
          case 0:
            _context28.prev = 0;
            _context28.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/discounts/api/getPromotion"), 'get', {
              marketplaceId: amazon["a" /* default */].MarketplaceObj[taskParam.market_code],
              promotionId: id,
              includeAsinMetrics: true
            });

          case 3:
            res = _context28.sent;

            if (!(res && res.promotionDetails)) {
              _context28.next = 10;
              break;
            }

            _res$promotionDetails = res.promotionDetails, promotion = _res$promotionDetails.promotion, productSelectorsList = _res$promotionDetails.productSelectorsList;
            basic = (promotion === null || promotion === void 0 ? void 0 : promotion.promotionBasic) || {};
            return _context28.abrupt("return", productSelectorsList.map(function (item) {
              var _res$promotionDetails2, _res$promotionDetails3;

              var metrics = ((_res$promotionDetails2 = res.promotionDetails.metrics) === null || _res$promotionDetails2 === void 0 ? void 0 : (_res$promotionDetails3 = _res$promotionDetails2.asins) === null || _res$promotionDetails3 === void 0 ? void 0 : _res$promotionDetails3[item.asin]) || {};
              return {
                sku: item.sku,
                asin: item.asin,
                // yourPrice: item.yourPrice, // 价格
                // salePrice: basic.discountType === 'PERCENT_OFF' ? item.percentageOffDiscount.percentage : item.price, // 折扣价
                discountType: basic.discountType,
                // 折扣类型
                discountValue: item.percentageOffDiscount && item.percentageOffDiscount.percentage,
                // Prime discount
                minimumPrice: basic.discountType === 'PERCENT_OFF' ? item.percentageOffDiscount.minimumDiscountedPrice : null,
                // 最低价
                discountPrice: item.price,
                // 折后会员价
                glanceViews: metrics.glanceViews,
                // 浏览量
                sales: metrics.sales,
                // 销售额
                unitsSold: metrics.unitsSold,
                // 销量
                status: basic.status && basic.status.split('.')[0] // 状态

              };
            }));

          case 10:
            log["a" /* default */].setLog('[折扣详情]没有promotionDetails数据，可能是亚马逊规则改变'); // 收集获取失败的详情

            taskParam.failDetail.push(id);

          case 12:
            _context28.next = 18;
            break;

          case 14:
            _context28.prev = 14;
            _context28.t0 = _context28["catch"](0);
            log["a" /* default */].setLog('[折扣详情]获取失败----', Object(util["u" /* isError */])(_context28.t0)); // 收集获取失败的详情

            taskParam.failDetail.push(id);

          case 18:
          case "end":
            return _context28.stop();
        }
      }
    }, _callee28, null, [[0, 14]]);
  }));
  return _getDiscountDetail.apply(this, arguments);
}

function getBuyer() {
  return _getBuyer.apply(this, arguments);
} // 获取买家之声详情


function _getBuyer() {
  _getBuyer = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee29() {
    var count,
        errorMsg,
        serviceTime,
        res,
        _args29 = arguments;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee29$(_context29) {
      while (1) {
        switch (_context29.prev = _context29.next) {
          case 0:
            count = _args29.length > 0 && _args29[0] !== undefined ? _args29[0] : 0;
            _context29.next = 3;
            return Object(util["t" /* getServiceTime */])();

          case 3:
            serviceTime = _context29.sent;
            _context29.next = 6;
            return Object(util["z" /* nativeRequest */])(amazon["a" /* default */].host + '/pcrHealth/pcrListingSummary', 'get', {
              pageSize: 25,
              pageOffset: taskParam.pageNum * 25,
              sortColumn: 'LAST_UPDATED_DATE',
              sortDirection: 'ASCENDING',
              insufficientFeedback: false,
              updatedAfter: moment_default()(serviceTime - 8 * 24 * 60 * 60 * 1000).format('YYYY-MM-DDTHH:mm:[00][Z]')
            }).catch(function (e) {
              errorMsg = "\u8BF7\u6C42\u4E70\u5BB6\u4E4B\u58F0\u5217\u8868\u5931\u8D25---".concat(Object(util["u" /* isError */])(e));
              log["a" /* default */].setLog(errorMsg);
            });

          case 6:
            res = _context29.sent;
            _context29.prev = 7;

            if (!(errorMsg && count < 2)) {
              _context29.next = 12;
              break;
            }

            _context29.next = 11;
            return getBuyer(++count);

          case 11:
            return _context29.abrupt("return", _context29.sent);

          case 12:
            if (!(res && res.pcrListings && res.pcrListings.length)) {
              _context29.next = 16;
              break;
            }

            return _context29.abrupt("return", {
              data: res.pcrListings.map(function (item) {
                // const { ncxRate, ncxCount, orderCount, mostCommonReturnReasonBucket, eventTimestamp } = item.pcxAggregateSnapshot || {}
                var fulfillmentChannel = item.fulfillmentChannel;
                var mskus = typeof item.mskus === 'string' ? item.mskus.split(',') : item.mskus;
                var fnsku = item.fnsku;
                var type = fulfillmentChannel === 'FBA' ? 'FNSKU' : 'MSKU';
                return {
                  id: "".concat(fulfillmentChannel === 'FBA' ? fnsku : mskus && mskus[0], "&").concat(type, "&").concat(item.asin, "&").concat(item.lastUpdate, "&").concat(fulfillmentChannel),
                  imageUrl: item.imageUrl,
                  // 图片
                  title: item.itemName,
                  // 品名
                  asin: item.asin,
                  mskus: mskus,
                  fnsku: fnsku,
                  condition: item.condition,
                  // 状况
                  fulfillmentChannel: fulfillmentChannel,
                  // 订单配送方  MFN: Merchant FBA: amazon
                  ncxRate: item.ncxRate,
                  // 买家不满意率
                  ncxCount: item.ncxCount,
                  // 买家不满意订单
                  orderCount: item.orderCount,
                  // 订单总数
                  mostCommonReturnReasonBucket: item.mostCommonReturnReasonBucket,
                  // 主要退货原因
                  eventTimestamp: item.lastUpdate,
                  // 上次更新时间
                  lastActionTimestamp: item.lastOfferClosedDate,
                  // 商品最近的停售日期
                  pcxHealth: item.pcxHealth,
                  // 买家满意度状况 VERY_POOR:极差 POOR:不合格 FAIR:一般 GOOD:良好 EXCELLENT:极好
                  listingExists: item.listingExists,
                  // 商品是否存在
                  insufficientFeedback: item.insufficientFeedback,
                  // 反馈不足
                  displayRating: item.displayRating,
                  // 显示评分 1-5星
                  concessionRate: item.concessionRate,
                  // 退货率
                  isHRRA: item.isHRRA,
                  // 是否标记为高退货率商品
                  isAtRiskOfHRRA: item.isAtRiskOfHRRA,
                  // 是否存在HRRA风险
                  addqrHealth: item.addqrHealth // 添加商品健康状况(观察日志用)

                };
              }),
              paginator: {
                totalItems: res.totalListingsCount,
                curItems: res.pcrListings.length + 25 * taskParam.pageNum
              }
            });

          case 16:
            if (!(res && res.totalListingsCount === 0)) {
              _context29.next = 18;
              break;
            }

            return _context29.abrupt("return", {
              paginator: {
                totalItems: 0,
                curItems: 0
              }
            });

          case 18:
            return _context29.abrupt("return", {
              errorMsg: errorMsg || '获取买家之声列表table失败'
            });

          case 21:
            _context29.prev = 21;
            _context29.t0 = _context29["catch"](7);
            log["a" /* default */].setLog("\u83B7\u53D6\u4E70\u5BB6\u4E4B\u58F0\u5217\u8868table\u5931\u8D25\uFF0C\u4E9A\u9A6C\u900A\u89C4\u5219\u53EF\u80FD\u5DF2\u6539\u53D8----".concat(Object(util["u" /* isError */])(_context29.t0)));
            return _context29.abrupt("return", {
              errorMsg: "\u83B7\u53D6\u4E70\u5BB6\u4E4B\u58F0\u5217\u8868table\u5931\u8D25\uFF0C\u4E9A\u9A6C\u900A\u89C4\u5219\u53EF\u80FD\u5DF2\u6539\u53D8----".concat(Object(util["u" /* isError */])(_context29.t0))
            });

          case 25:
          case "end":
            return _context29.stop();
        }
      }
    }, _callee29, null, [[7, 21]]);
  }));
  return _getBuyer.apply(this, arguments);
}

function getBuyerDetail(_x15) {
  return _getBuyerDetail.apply(this, arguments);
}

function _getBuyerDetail() {
  _getBuyerDetail = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee31(data) {
    var param, _param, value, type, asin, eventTimestamp, fulfillmentChannel, details, BUYER_DETAIL_MAX_RETRY, requestBuyerDetailApi, arr, issues, feedback, pcx, returnRate;

    return ComplexTasks_regeneratorRuntime().wrap(function _callee31$(_context31) {
      while (1) {
        switch (_context31.prev = _context31.next) {
          case 0:
            param = data.split('&');
            _param = ComplexTasks_slicedToArray(param, 5), value = _param[0], type = _param[1], asin = _param[2], eventTimestamp = _param[3], fulfillmentChannel = _param[4];
            _context31.prev = 2;
            details = {
              type: type,
              value: value
            };
            BUYER_DETAIL_MAX_RETRY = 3;

            requestBuyerDetailApi = /*#__PURE__*/function () {
              var _ref15 = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee30(apiName, url, params) {
                var lastError, attempt;
                return ComplexTasks_regeneratorRuntime().wrap(function _callee30$(_context30) {
                  while (1) {
                    switch (_context30.prev = _context30.next) {
                      case 0:
                        attempt = 1;

                      case 1:
                        if (!(attempt <= BUYER_DETAIL_MAX_RETRY)) {
                          _context30.next = 19;
                          break;
                        }

                        _context30.prev = 2;

                        if (attempt > 1) {
                          log["a" /* default */].setLog("[\u4E70\u5BB6\u4E4B\u58F0\u8BE6\u60C5][".concat(apiName, "]\u7B2C").concat(attempt, "\u6B21\u91CD\u8BD5"), "asin:".concat(asin), "value:".concat(value), "type:".concat(type));
                        }

                        _context30.next = 6;
                        return Object(util["z" /* nativeRequest */])(url, 'get', params);

                      case 6:
                        return _context30.abrupt("return", _context30.sent);

                      case 9:
                        _context30.prev = 9;
                        _context30.t0 = _context30["catch"](2);
                        lastError = _context30.t0;
                        log["a" /* default */].setLog("[\u4E70\u5BB6\u4E4B\u58F0\u8BE6\u60C5][".concat(apiName, "]\u8BF7\u6C42\u5931\u8D25\uFF0C\u7B2C").concat(attempt, "/").concat(BUYER_DETAIL_MAX_RETRY, "\u6B21----").concat(Object(util["u" /* isError */])(_context30.t0)), "asin:".concat(asin), "value:".concat(value), "type:".concat(type));

                        if (!(attempt < BUYER_DETAIL_MAX_RETRY)) {
                          _context30.next = 16;
                          break;
                        }

                        _context30.next = 16;
                        return Object(util["h" /* delayed */])(attempt * 1000, "buyerDetailRetry-".concat(apiName, "-").concat(asin, "-").concat(value, "-").concat(attempt));

                      case 16:
                        attempt++;
                        _context30.next = 1;
                        break;

                      case 19:
                        throw lastError;

                      case 20:
                      case "end":
                        return _context30.stop();
                    }
                  }
                }, _callee30, null, [[2, 9]]);
              }));

              return function requestBuyerDetailApi(_x24, _x25, _x26) {
                return _ref15.apply(this, arguments);
              };
            }();

            _context31.next = 8;
            return Promise.all([requestBuyerDetailApi('pcrDefectsDetails', "".concat(amazon["a" /* default */].host, "/pcrHealth/pcrDefectsDetails"), {
              value: value,
              type: type
            }), requestBuyerDetailApi('getAsinFeedbackV2', "".concat(amazon["a" /* default */].host, "/feedback/getAsinFeedbackV2"), {
              value: value,
              type: type,
              asin: asin,
              fromDate: moment_default()((eventTimestamp ? new Date(eventTimestamp.split('T')[0]).getTime() : new Date().getTime()) - 28 * 24 * 3600 * 1000).format('YYYY-MM-DD'),
              toDate: eventTimestamp ? eventTimestamp.split('T')[0] : moment_default()(new Date()).format('YYYY-MM-DD')
            }), requestBuyerDetailApi('pcrNcxAggregates', "".concat(amazon["a" /* default */].host, "/pcrHealth/pcrNcxAggregates"), {
              value: value,
              type: type,
              fromDate: moment_default()(new Date().getTime() - 3600 * 24 * 7 * 12 * 1000).format('YYYY-MM-DD'),
              toDate: moment_default()(new Date()).format('YYYY-MM-DD'),
              aggregationGrouping: 'DAILY',
              trailingPeriod: 28
            }), requestBuyerDetailApi('returnRateSeries', "".concat(amazon["a" /* default */].host, "/pcrHealth/returnRateSeries"), {
              asin: asin,
              fulfillmentChannel: fulfillmentChannel,
              fromDate: moment_default()(new Date().getTime() - 3600 * 24 * 7 * 12 * 1000).format('YYYY-MM-DD'),
              toDate: moment_default()(new Date()).format('YYYY-MM-DD')
            })]);

          case 8:
            arr = _context31.sent;
            issues = arr[0];
            feedback = arr[1];
            pcx = arr[2];
            returnRate = arr[3];

            if (!(issues && issues.defects && feedback && feedback.returnComments && pcx && pcx.ncxAggregates && returnRate && returnRate.returnRateSeries)) {
              _context31.next = 22;
              break;
            }

            details.returnReasonBuckets = issues.defects.map(function (_ref16) {
              var defectStringId = _ref16.defectStringId,
                  complaintCount = _ref16.complaintCount,
                  percentage = _ref16.percentage;
              return {
                returnReasonCodeBucket: defectStringId,
                count: complaintCount,
                percent: percentage
              };
            });
            details.returnComments = feedback.returnComments;
            details.customerComplaintSummaries = feedback.customerComplaintSummaries;
            details.pcxAggregates = pcx.ncxAggregates;
            details.returnRateSeries = returnRate.returnRateSeries || [];
            return _context31.abrupt("return", [details]);

          case 22:
            log["a" /* default */].setLog('[买家之声详情issues]获取失败，可能是亚马逊规则改变'); // 收集获取失败的详情

            taskParam.failDetail.push(data);

          case 24:
            _context31.next = 30;
            break;

          case 26:
            _context31.prev = 26;
            _context31.t0 = _context31["catch"](2);
            log["a" /* default */].setLog('[买家之声详情]获取失败----', Object(util["u" /* isError */])(_context31.t0)); // 收集获取失败的详情

            taskParam.failDetail.push(data);

          case 30:
          case "end":
            return _context31.stop();
        }
      }
    }, _callee31, null, [[2, 26]]);
  }));
  return _getBuyerDetail.apply(this, arguments);
}

function mergeData(_x16, _x17) {
  return _mergeData.apply(this, arguments);
}

function _mergeData() {
  _mergeData = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee32(originData, type) {
    var res;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee32$(_context32) {
      while (1) {
        switch (_context32.prev = _context32.next) {
          case 0:
            _context32.next = 2;
            return Object(util["l" /* gateGet */])('api/v1/baseInfos', {}, 'task').catch(function () {});

          case 2:
            res = _context32.sent;
            _context32.t0 = taskParam.type_id;
            _context32.next = _context32.t0 === 53 ? 6 : _context32.t0 === 54 ? 6 : _context32.t0 === 55 ? 6 : _context32.t0 === 56 ? 6 : _context32.t0 === 62 ? 6 : _context32.t0 === 63 ? 6 : _context32.t0 === 64 ? 6 : _context32.t0 === 65 ? 6 : _context32.t0 === 57 ? 7 : 9;
            break;

          case 6:
            return _context32.abrupt("return", {
              format: taskParam.format,
              originData: JSON.stringify(originData),
              storeId: taskParam.sid,
              uploadVersion: res && res.data && res.data.time_format,
              category: {
                53: 1,
                54: 2,
                56: 3,
                55: 4,
                62: 1,
                63: 2,
                65: 3,
                64: 4
              }[taskParam.type_id] // 传给业务方促销活动类别，1优惠券，2秒杀，3管理促销，4会员折扣

            });

          case 7:
            type === 'detail' && (originData = originData.reduce(function (arr, item) {
              return arr.concat(item.details[0]);
            }, []));
            return _context32.abrupt("return", ComplexTasks_objectSpread(ComplexTasks_objectSpread({
              originData: type !== 'kpi' ? originData : []
            }, type === 'kpi' ? {
              kpi: originData
            } : {}), {}, {
              storeId: taskParam.sid,
              uploadVersion: res && res.data && res.data.time_format
            }));

          case 9:
          case "end":
            return _context32.stop();
        }
      }
    }, _callee32);
  }));
  return _mergeData.apply(this, arguments);
}

function upload(_x18, _x19) {
  return _upload.apply(this, arguments);
}
/**
 * 上传数据到业务方
 * @param {Array} list
 * @param {String} type 数据类型
 * @param {Number} count 重试次数
 * @returns
 */


function _upload() {
  _upload = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee33(list, type) {
    var acquiredItems, count, res, _count2, _res;

    return ComplexTasks_regeneratorRuntime().wrap(function _callee33$(_context33) {
      while (1) {
        switch (_context33.prev = _context33.next) {
          case 0:
            _context33.next = 2;
            return Object(data_task["c" /* discontinue */])();

          case 2:
            if (!_context33.sent) {
              _context33.next = 4;
              break;
            }

            return _context33.abrupt("return", false);

          case 4:
            console.log("[".concat(type, "]\u4E0A\u4F20\u524D\uFF0C\u83B7\u53D6\u5230\u7684\u6E90\u6570\u636E"), list);
            _context33.prev = 5;
            _context33.t0 = type;
            _context33.next = _context33.t0 === 'list' ? 9 : _context33.t0 === 'detail' ? 43 : _context33.t0 === 'task' ? 57 : _context33.t0 === 'purchasedItems' ? 60 : 63;
            break;

          case 9:
            if (!(taskParam.type_id === 53)) {
              _context33.next = 26;
              break;
            }

            acquiredItems = taskParam.paginator.totalItems - list.length;
            count = 0;

          case 12:
            if (!(count < Math.ceil(list.length / 100))) {
              _context33.next = 23;
              break;
            }

            _context33.next = 15;
            return uploadData(list.slice(count * 100, (count + 1) * 100), type);

          case 15:
            res = _context33.sent;

            if (res) {
              _context33.next = 20;
              break;
            }

            // 失败后将剩余未上传列表存入errList等待下次上传，修改curItems为已上传数据量
            list.splice(count * 100, list.length);
            taskParam.paginator.curItems = count * 100 + acquiredItems;
            return _context33.abrupt("break", 23);

          case 20:
            count++;
            _context33.next = 12;
            break;

          case 23:
            return _context33.abrupt("return", list.length > 0);

          case 26:
            if (!(taskParam.type_id === 56)) {
              _context33.next = 40;
              break;
            }

            _count2 = 0;

          case 28:
            if (!(_count2 < Math.ceil(list.length / 100))) {
              _context33.next = 39;
              break;
            }

            _context33.next = 31;
            return uploadData(list.slice(_count2 * 100, (_count2 + 1) * 100), type);

          case 31:
            _res = _context33.sent;

            if (_res) {
              _context33.next = 36;
              break;
            }

            // 失败后将剩余未上传列表存入errList等待下次上传，修改curItems为已上传数据量
            list.splice(_count2 * 100, list.length);
            taskParam.paginator.curItems = _count2 * 100;
            return _context33.abrupt("break", 39);

          case 36:
            _count2++;
            _context33.next = 28;
            break;

          case 39:
            return _context33.abrupt("return", list.length > 0);

          case 40:
            _context33.next = 42;
            return uploadData(list, type);

          case 42:
            return _context33.abrupt("return", _context33.sent);

          case 43:
            _context33.next = 45;
            return amazon["a" /* default */].checkLanguage(taskParam.market_code, taskParam);

          case 45:
            if (_context33.sent) {
              _context33.next = 47;
              break;
            }

            return _context33.abrupt("return", false);

          case 47:
            _context33.next = 49;
            return amazon["a" /* default */].onlyCheckSite(taskParam.market_code, taskParam);

          case 49:
            if (_context33.sent) {
              _context33.next = 54;
              break;
            }

            log["a" /* default */].setLog('[上传详情]检测站点失败'); // 切换回原站点

            _context33.next = 53;
            return changeSite();

          case 53:
            return _context33.abrupt("return", false);

          case 54:
            _context33.next = 56;
            return uploadData(list.filter(function (item) {
              return item.details && item.details.length > 0;
            }), type);

          case 56:
            return _context33.abrupt("return", _context33.sent);

          case 57:
            _context33.next = 59;
            return Object(data_task["d" /* uploadTask */])(list, taskParam);

          case 59:
            return _context33.abrupt("return", _context33.sent);

          case 60:
            _context33.next = 62;
            return uploadData(list, type);

          case 62:
            return _context33.abrupt("return", _context33.sent);

          case 63:
            _context33.next = 69;
            break;

          case 65:
            _context33.prev = 65;
            _context33.t1 = _context33["catch"](5);
            log["a" /* default */].setLog("[".concat(taskParam.type_id, "]\u4E0A\u4F20\u5931\u8D25type---").concat(Object(util["u" /* isError */])(_context33.t1)));
            return _context33.abrupt("return", false);

          case 69:
          case "end":
            return _context33.stop();
        }
      }
    }, _callee33, null, [[5, 65]]);
  }));
  return _upload.apply(this, arguments);
}

function uploadData(_x20, _x21) {
  return _uploadData.apply(this, arguments);
}

function _uploadData() {
  _uploadData = ComplexTasks_asyncToGenerator( /*#__PURE__*/ComplexTasks_regeneratorRuntime().mark(function _callee34(list, type) {
    var count,
        type_id,
        params,
        res,
        _args34 = arguments;
    return ComplexTasks_regeneratorRuntime().wrap(function _callee34$(_context34) {
      while (1) {
        switch (_context34.prev = _context34.next) {
          case 0:
            count = _args34.length > 2 && _args34[2] !== undefined ? _args34[2] : 1;
            _context34.prev = 1;

            if (!(list.length === 0)) {
              _context34.next = 4;
              break;
            }

            return _context34.abrupt("return", true);

          case 4:
            _context34.next = 6;
            return Object(util["h" /* delayed */])(count * 5 * 1000, 'promotionUpload');

          case 6:
            type_id = taskParam.type_id;

            if (!(count > 3)) {
              _context34.next = 10;
              break;
            }

            log["a" /* default */].setLog("[".concat(taskHandleMap[type_id].name, "]").concat(type, "\u4E0A\u4F20\u5931\u8D25\u8D85\u8FC7\u6B21\u6570"));
            return _context34.abrupt("return", false);

          case 10:
            _context34.next = 12;
            return mergeData(list, type);

          case 12:
            params = _context34.sent;
            _context34.next = 15;
            return Object(util["m" /* gatePost */])(urlMap[type][type_id], ComplexTasks_objectSpread(ComplexTasks_objectSpread({}, params), {}, {
              task_id: taskParam.task_id
            }), serviceName[type_id]);

          case 15:
            res = _context34.sent;

            if (!(res.code === 1)) {
              _context34.next = 18;
              break;
            }

            return _context34.abrupt("return", true);

          case 18:
            _context34.next = 20;
            return uploadData(list, type, ++count);

          case 20:
            return _context34.abrupt("return", _context34.sent);

          case 23:
            _context34.prev = 23;
            _context34.t0 = _context34["catch"](1);
            log["a" /* default */].setLog("[".concat(taskHandleMap[taskParam.type_id].name, "]").concat(type, "\u4E0A\u4F20\u5931\u8D25---").concat(Object(util["u" /* isError */])(_context34.t0)));
            return _context34.abrupt("return", false);

          case 27:
          case "end":
            return _context34.stop();
        }
      }
    }, _callee34, null, [[1, 23]]);
  }));
  return _uploadData.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/ComplexTasks/getDiscount.js
function getDiscount_typeof(obj) { "@babel/helpers - typeof"; return getDiscount_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getDiscount_typeof(obj); }

function getDiscount_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getDiscount_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getDiscount_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getDiscount_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getDiscount_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getDiscount_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getDiscount_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/**
 * 获取专项折扣
 */
 // const param = {
//   task: null,
//   // 获取失败详情的列表
//   failDetail: [],
//   // 上一次任务执行系统时间
//   date: '',
//   // 分页配置
//   paginator: {},
//   // 当前抓取页
//   pageNum: 1,
//   // 列表结束时间字段名
//   dateField: 'lastChanged'
// }

var formatMap = ['MM/DD/YYYY hh:mm a', 'DD/MM/YYYY hh:mm a', 'DD/MM/YYYY hh:mm', 'MM/DD/YYYY hh:mm'];
var javaFormatsMap = ['MM/dd/yy hh:mm a', 'dd/MM/yy hh:mm a', 'dd/MM/yy HH:mm', 'MM/dd/yy HH:mm'];
var isDMYCountry = ['AU', 'NL', 'CA', 'UK', 'IN', 'PL', 'TR', 'SE', 'DE'];
var DMYCountry = {
  'AU': 1,
  'NL': 2,
  'CA': 1,
  'UK': 2,
  'IN': 1,
  'PL': 2,
  'TR': 2,
  'SE': 2,
  'DE': 2,
  'IT': 3,
  'FR': 3,
  'ES': 3
}; // 折扣展示日月年的国家

function dataInit(task) {
  task.failDetail = task.failDetail || [];
  task.date = task.date || 0;
  task.pageNum = 1;
  task.paginator = {};
  task.dateField = 'createdAt';
  task.startDateField = 'startAtDateTime';
  task.errList = task.errList || []; // 初始化时间格式

  var market_code = task.market_code.toLocaleUpperCase();
  var key = DMYCountry[market_code] || 0;
  var isDMY = isDMYCountry.includes(market_code);
  var format = formatMap[key];
  task.dmyFormat = 0;
  task.mdyFormat = isDMY ? formatMap[0] : format;
  task.format = javaFormatsMap[key]; // param.pageNum = task.pageNum || 1
}

function getDiscount(_x) {
  return _getDiscount.apply(this, arguments);
}

function _getDiscount() {
  _getDiscount = getDiscount_asyncToGenerator( /*#__PURE__*/getDiscount_regeneratorRuntime().mark(function _callee(task) {
    var res;
    return getDiscount_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            dataInit(task);
            _context.next = 3;
            return ComplexTasks_run(task);

          case 3:
            res = _context.sent;
            return _context.abrupt("return", res);

          case 5:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));
  return _getDiscount.apply(this, arguments);
}

function getDiscountDetails(_x2) {
  return _getDiscountDetails.apply(this, arguments);
}

function _getDiscountDetails() {
  _getDiscountDetails = getDiscount_asyncToGenerator( /*#__PURE__*/getDiscount_regeneratorRuntime().mark(function _callee2(task) {
    var market_code, key;
    return getDiscount_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            market_code = task.market_code.toLocaleUpperCase();
            key = DMYCountry[market_code] || 0;
            task.format = javaFormatsMap[key];
            _context2.next = 5;
            return getDetails(task);

          case 5:
            return _context2.abrupt("return", _context2.sent);

          case 6:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return _getDiscountDetails.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/ComplexTasks/getBestDeal.js
function getBestDeal_typeof(obj) { "@babel/helpers - typeof"; return getBestDeal_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getBestDeal_typeof(obj); }

function getBestDeal_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getBestDeal_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getBestDeal_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getBestDeal_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getBestDeal_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getBestDeal_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getBestDeal_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/*
 * 获取秒杀
 */
 //  const param = {
//    task: null,
//    // 获取失败详情的列表
//    failDetail: [],
//    // 上一次任务执行系统时间
//    date: '',
//    // 分页配置
//    paginator: {},
//    // 当前抓取页
//    pageNum: 1,
//    // 列表结束时间字段名
//    dateField: 'endDateEpochMillis'
//  }

var format = 'timestamp';

function getBestDeal_dataInit(task) {
  task.failDetail = task.failDetail || [];
  task.paginator = {};
  task.dateField = 'endDateEpochMillis';
  task.startDateField = 'startDateEpochMillis';
  task.date = task.date || 0;
  task.pageNum = 1;
  task.errList = task.errList || [];
  task.format = format; // task.pageNum = task.pageNum || 1
}

function getBestDeal(_x) {
  return _getBestDeal.apply(this, arguments);
}

function _getBestDeal() {
  _getBestDeal = getBestDeal_asyncToGenerator( /*#__PURE__*/getBestDeal_regeneratorRuntime().mark(function _callee(task) {
    var res;
    return getBestDeal_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            getBestDeal_dataInit(task);
            _context.next = 3;
            return ComplexTasks_run(task);

          case 3:
            res = _context.sent;
            return _context.abrupt("return", res);

          case 5:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));
  return _getBestDeal.apply(this, arguments);
}

function getBestDealDetails(_x2) {
  return _getBestDealDetails.apply(this, arguments);
}

function _getBestDealDetails() {
  _getBestDealDetails = getBestDeal_asyncToGenerator( /*#__PURE__*/getBestDeal_regeneratorRuntime().mark(function _callee2(task) {
    var res;
    return getBestDeal_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            task.format = format;
            _context2.next = 3;
            return getDetails(task);

          case 3:
            res = _context2.sent;
            return _context2.abrupt("return", res);

          case 5:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return _getBestDealDetails.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/ComplexTasks/getCoupon.js
function getCoupon_typeof(obj) { "@babel/helpers - typeof"; return getCoupon_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getCoupon_typeof(obj); }

function getCoupon_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getCoupon_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getCoupon_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getCoupon_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getCoupon_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getCoupon_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getCoupon_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/**
 * 获取优惠券
 */
 //  const param = {
//    task: null,
//    // 获取失败详情的列表
//    failDetail: [],
//    // 上一次任务执行系统时间
//    date: '',
//    // 分页配置
//    paginator: {},
//    // 当前抓取页
//    pageNum: 1,
//    // 列表结束时间字段名
//    dateField: 'endDate',
//    // 上传失败的列表数据
//   //  errList: []
//  }

var getCoupon_format = 'yyyy-MM-dd';

function getCoupon_dataInit(_x) {
  return _dataInit.apply(this, arguments);
}

function _dataInit() {
  _dataInit = getCoupon_asyncToGenerator( /*#__PURE__*/getCoupon_regeneratorRuntime().mark(function _callee(task) {
    return getCoupon_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            task.failDetail = task.failDetail || [];
            task.date = task.date || 0;
            task.pageNum = task.pageNum || 1;
            task.paginator = {};
            task.errList = task.errList || [];
            task.dateField = 'endDate';
            task.startDateField = 'startDate';
            task.format = getCoupon_format; // task.pageNum = task.pageNum || 1

          case 8:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));
  return _dataInit.apply(this, arguments);
}

function getCoupons(_x2) {
  return _getCoupons.apply(this, arguments);
}

function _getCoupons() {
  _getCoupons = getCoupon_asyncToGenerator( /*#__PURE__*/getCoupon_regeneratorRuntime().mark(function _callee2(task) {
    var res;
    return getCoupon_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.next = 2;
            return getCoupon_dataInit(task);

          case 2:
            _context2.next = 4;
            return ComplexTasks_run(task);

          case 4:
            res = _context2.sent;
            return _context2.abrupt("return", res);

          case 6:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return _getCoupons.apply(this, arguments);
}

function getCouponDetails(_x3) {
  return _getCouponDetails.apply(this, arguments);
}

function _getCouponDetails() {
  _getCouponDetails = getCoupon_asyncToGenerator( /*#__PURE__*/getCoupon_regeneratorRuntime().mark(function _callee3(task) {
    return getCoupon_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            task.format = getCoupon_format;
            _context3.next = 3;
            return getDetails(task);

          case 3:
            return _context3.abrupt("return", _context3.sent);

          case 4:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));
  return _getCouponDetails.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/ComplexTasks/getPromotion.js
function getPromotion_typeof(obj) { "@babel/helpers - typeof"; return getPromotion_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getPromotion_typeof(obj); }

function getPromotion_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getPromotion_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getPromotion_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getPromotion_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getPromotion_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getPromotion_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getPromotion_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/**
 * 获取促销管理
 */
 //  const param = {
//    task: null,
//    // 获取失败详情的列表
//    failDetail: [],
//    // 抓取失败的商品系列
//    purchasedItems: [],
//    // 上一次任务执行系统时间
//    date: '',
//    // 分页配置
//    paginator: {},
//    // 当前抓取页
//    pageNum: 1,
//    // 列表结束时间字段名
//    dateField: 'endDate'
//  }
// const dmyFormat = 
// const mdyFormat = 
// const deDmyFormat = 

var getPromotion_formatMap = ['MM/DD/YYYY hh:mm a', 'DD/MM/YYYY hh:mm a', 'DD/MM/YYYY hh:mm'];
var getPromotion_javaFormatsMap = ['MM/dd/yyyy hh:mm a', 'dd/MM/yyyy hh:mm a', 'dd/MM/yyyy HH:mm'];
var getPromotion_isDMYCountry = ['JP', 'AU', 'NL', 'CA', 'UK', 'IN', 'IT', 'FR', 'ES', 'PL', 'AE', 'SA', 'TR', 'SE', 'DE', 'BE'];
var getPromotion_DMYCountry = {
  'JP': 1,
  'AU': 1,
  'NL': 2,
  'CA': 1,
  'IN': 1,
  'IT': 2,
  'FR': 2,
  'ES': 2,
  'PL': 2,
  'AE': 1,
  'SA': 1,
  'TR': 2,
  'SE': 2,
  'UK': 2,
  'DE': 2,
  'BE': 2
};

function getPromotion_dataInit(task) {
  task.failDetail = task.failDetail || [];
  task.purchasedItems = new Set(task.purchasedItems || []);
  task.date = task.date || 0;
  task.paginator = {};
  task.pageNum = task.pageNum || 1;
  task.dateField = 'endDate';
  task.startDateField = 'startDate';
  task.errList = task.errList || [];
  task.dateArr = []; // 初始化时间格式

  var market_code = task.market_code.toLocaleUpperCase();
  var key = getPromotion_DMYCountry[market_code] || 0;
  var isDMY = getPromotion_isDMYCountry.includes(market_code);
  var format = getPromotion_formatMap[key];
  task.dmyFormat = isDMY ? format : 0;
  task.mdyFormat = isDMY ? getPromotion_formatMap[0] : format;
  task.format = getPromotion_javaFormatsMap[key];
  task.hasTimeZone = true; //  param.pageNum = task.pageNum || 1
}

function getPromotion(_x) {
  return _getPromotion.apply(this, arguments);
}

function _getPromotion() {
  _getPromotion = getPromotion_asyncToGenerator( /*#__PURE__*/getPromotion_regeneratorRuntime().mark(function _callee(task) {
    var res;
    return getPromotion_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            getPromotion_dataInit(task);
            _context.next = 3;
            return ComplexTasks_run(task);

          case 3:
            res = _context.sent;
            return _context.abrupt("return", res);

          case 5:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));
  return _getPromotion.apply(this, arguments);
}

function getPromotionDetails(_x2) {
  return _getPromotionDetails.apply(this, arguments);
}

function _getPromotionDetails() {
  _getPromotionDetails = getPromotion_asyncToGenerator( /*#__PURE__*/getPromotion_regeneratorRuntime().mark(function _callee2(task) {
    var market_code, key;
    return getPromotion_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            market_code = task.market_code.toLocaleUpperCase();
            key = getPromotion_DMYCountry[market_code] || 0;
            task.format = getPromotion_javaFormatsMap[key];
            _context2.next = 5;
            return getDetails(task);

          case 5:
            return _context2.abrupt("return", _context2.sent);

          case 6:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return _getPromotionDetails.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/ComplexTasks/getBuyer.js
function getBuyer_typeof(obj) { "@babel/helpers - typeof"; return getBuyer_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getBuyer_typeof(obj); }

function getBuyer_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getBuyer_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getBuyer_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getBuyer_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getBuyer_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getBuyer_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getBuyer_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/**
 * 获取促销管理
 */


 //  const param = {
//    task: null,
//    // 获取失败详情的列表
//    failDetail: [],
//    // 抓取失败的商品系列
//    purchasedItems: [],
//    // 上一次任务执行系统时间
//    date: '',
//    // 分页配置
//    paginator: {},
//    // 当前抓取页
//    pageNum: 1,
//    // 列表结束时间字段名
//    dateField: 'endDate'
//  }

var getBuyer_format = 'yyyy-MM-dd hh:mm:ss';
var mdyFormat = 'YYYY/MM/DD hh:mm';

function getBuyer_dataInit(task) {
  task.failDetail = task.failDetail || [];
  task.date = task.date || 0;
  task.paginator = {};
  task.pageNum = task.pageNum || 0;
  task.dateField = 'lastUpdate';
  task.errList = task.errList || [];
  task.format = getBuyer_format;
  task.mdyFormat = mdyFormat;
  task.hasTimeZone = true; //  param.pageNum = task.pageNum || 1
}

function getKpi() {
  return _getKpi.apply(this, arguments);
}

function _getKpi() {
  _getKpi = getBuyer_asyncToGenerator( /*#__PURE__*/getBuyer_regeneratorRuntime().mark(function _callee() {
    var error_msg, res;
    return getBuyer_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            error_msg = '异常数据';
            _context.next = 3;
            return Object(util["z" /* nativeRequest */])(amazon["a" /* default */].host + '/pcrHealth/pcrKpi', 'get', {}).catch(function (e) {
              return error_msg = Object(util["u" /* isError */])(e);
            });

          case 3:
            res = _context.sent;

            if (!(res && res.hasOwnProperty('veryPoorCount'))) {
              _context.next = 6;
              break;
            }

            return _context.abrupt("return", res);

          case 6:
            return _context.abrupt("return", {
              error_msg: error_msg
            });

          case 7:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));
  return _getKpi.apply(this, arguments);
}

function getBuyer_getBuyer(_x) {
  return ComplexTasks_getBuyer_getBuyer.apply(this, arguments);
}

function ComplexTasks_getBuyer_getBuyer() {
  ComplexTasks_getBuyer_getBuyer = getBuyer_asyncToGenerator( /*#__PURE__*/getBuyer_regeneratorRuntime().mark(function _callee2(task) {
    var res, kpi;
    return getBuyer_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            getBuyer_dataInit(task);
            _context2.next = 3;
            return ComplexTasks_run(task);

          case 3:
            res = _context2.sent;
            _context2.next = 6;
            return getKpi();

          case 6:
            kpi = _context2.sent;
            _context2.next = 9;
            return uploadData(kpi, 'kpi');

          case 9:
            return _context2.abrupt("return", res);

          case 10:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return ComplexTasks_getBuyer_getBuyer.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/getReview.js
function getReview_typeof(obj) { "@babel/helpers - typeof"; return getReview_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getReview_typeof(obj); }

function getReview_toConsumableArray(arr) { return getReview_arrayWithoutHoles(arr) || getReview_iterableToArray(arr) || getReview_unsupportedIterableToArray(arr) || getReview_nonIterableSpread(); }

function getReview_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getReview_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getReview_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getReview_arrayLikeToArray(o, minLen); }

function getReview_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getReview_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getReview_arrayLikeToArray(arr); }

function getReview_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getReview_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getReview_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getReview_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getReview_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getReview_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getReview_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getReview_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }






function getReview_run(_x, _x2) {
  return core_getReview_run.apply(this, arguments);
}

function core_getReview_run() {
  core_getReview_run = getReview_asyncToGenerator( /*#__PURE__*/getReview_regeneratorRuntime().mark(function _callee(task, timePeriodFilter) {
    var count, pageId, res;
    return getReview_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            count = 3;
            pageId = 0;

          case 2:
            if (!count) {
              _context.next = 15;
              break;
            }

            _context.next = 5;
            return requestReview([], pageId, timePeriodFilter);

          case 5:
            res = _context.sent;

            if (!(res.code === 4)) {
              _context.next = 10;
              break;
            }

            pageId = res.pageId; // 先将数据上传

            _context.next = 10;
            return Object(data_task["d" /* uploadTask */])({
              type_id: task.type_id,
              seller_id: task.seller_id,
              code: res.code,
              msg: res.msg || '',
              result: {
                data: res.list
              }
            }, task);

          case 10:
            if (!(res.code === 0)) {
              _context.next = 12;
              break;
            }

            return _context.abrupt("break", 15);

          case 12:
            count--;
            _context.next = 2;
            break;

          case 15:
            return _context.abrupt("return", res);

          case 16:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));
  return core_getReview_run.apply(this, arguments);
}

function requestReview() {
  return _requestReview.apply(this, arguments);
}

function _requestReview() {
  _requestReview = getReview_asyncToGenerator( /*#__PURE__*/getReview_regeneratorRuntime().mark(function _callee2() {
    var list,
        pageId,
        timePeriodFilter,
        res,
        isComplete,
        msg,
        _args2 = arguments;
    return getReview_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            list = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : [];
            pageId = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 0;
            timePeriodFilter = _args2.length > 2 ? _args2[2] : undefined;
            _context2.prev = 3;
            _context2.next = 6;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/brandcustomerreviews/api/reviews?starFilter=ONE_STAR_RATING&starFilter=TWO_STAR_RATING&starFilter=THREE_STAR_RATING"), 'get', {
              timePeriodFilter: timePeriodFilter,
              pageId: pageId,
              pageSize: 100,
              sortByType: 'REVIEW_CREATED_DATE',
              isAscending: true,
              includeDone: false
            }, {
              'x-requested-with': 'XMLHttpRequest',
              'content-type': 'application/json'
            });

          case 6:
            res = _context2.sent;

            if (!(res && res.reviews)) {
              _context2.next = 19;
              break;
            }

            list = list.concat(res.reviews ? res.reviews.filter(function (_ref) {
              var orderId = _ref.orderId;
              return orderId;
            }).map(function (_ref2) {
              var orderId = _ref2.orderId,
                  reviewId = _ref2.reviewId;
              return {
                orderId: orderId,
                reviewId: reviewId
              };
            }) : []);
            isComplete = pageId * 100 + res.reviews.length >= res.totalReviewCount;

            if (!isComplete) {
              _context2.next = 12;
              break;
            }

            return _context2.abrupt("return", {
              code: 0,
              list: list
            });

          case 12:
            if (!(list.length >= 1000)) {
              _context2.next = 14;
              break;
            }

            return _context2.abrupt("return", {
              code: 4,
              list: list,
              pageId: pageId
            });

          case 14:
            _context2.next = 16;
            return requestReview(list, ++pageId, timePeriodFilter);

          case 16:
            return _context2.abrupt("return", _context2.sent);

          case 19:
            return _context2.abrupt("return", {
              code: 2,
              msg: '未获取到数据，亚马逊规则可能改变'
            });

          case 20:
            _context2.next = 27;
            break;

          case 22:
            _context2.prev = 22;
            _context2.t0 = _context2["catch"](3);
            msg = '请求reviews接口失败----' + Object(util["u" /* isError */])(_context2.t0);
            log["a" /* default */].setLog(msg);
            return _context2.abrupt("return", {
              code: 2,
              msg: msg
            });

          case 27:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[3, 22]]);
  }));
  return _requestReview.apply(this, arguments);
}

function getReview(_x3) {
  return _getReview.apply(this, arguments);
}

function _getReview() {
  _getReview = getReview_asyncToGenerator( /*#__PURE__*/getReview_regeneratorRuntime().mark(function _callee3(task) {
    var existSite, thisWeek, lastWeek, list, msg, code;
    return getReview_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.next = 2;
            return amazon["a" /* default */].checkSite(task.market_code, task, true);

          case 2:
            existSite = _context3.sent;

            if (existSite) {
              _context3.next = 5;
              break;
            }

            return _context3.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 5:
            _context3.next = 7;
            return getReview_run(task, 'CREATED_THIS_WEEK');

          case 7:
            thisWeek = _context3.sent;
            _context3.next = 10;
            return getReview_run(task, 'CREATED_LAST_WEEK');

          case 10:
            lastWeek = _context3.sent;
            list = [].concat(getReview_toConsumableArray(thisWeek.list || []), getReview_toConsumableArray(lastWeek.list || []));
            msg = (thisWeek.msg ? "[\u672C\u5468\u6570\u636E]".concat(thisWeek.msg, "---") : '') + (lastWeek.msg ? "[\u4E0A\u5468\u6570\u636E]".concat(lastWeek.msg) : '');
            code = 0;

            if (thisWeek.code === 2 || lastWeek.code === 2) {
              task.status = 14;
              code = 2;
            }

            return _context3.abrupt("return", {
              type_id: task.type_id,
              seller_id: task.seller_id,
              code: code,
              msg: msg,
              result: {
                data: list
              }
            });

          case 16:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));
  return _getReview.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/deleteFeedback.js
function deleteFeedback_typeof(obj) { "@babel/helpers - typeof"; return deleteFeedback_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, deleteFeedback_typeof(obj); }

function deleteFeedback_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ deleteFeedback_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == deleteFeedback_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function deleteFeedback_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function deleteFeedback_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? deleteFeedback_ownKeys(Object(source), !0).forEach(function (key) { deleteFeedback_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : deleteFeedback_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function deleteFeedback_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function deleteFeedback_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = deleteFeedback_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function deleteFeedback_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return deleteFeedback_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return deleteFeedback_arrayLikeToArray(o, minLen); }

function deleteFeedback_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function deleteFeedback_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function deleteFeedback_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { deleteFeedback_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { deleteFeedback_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }





function deleteFeedback_run(_x) {
  return core_deleteFeedback_run.apply(this, arguments);
} // 请求删除feedback资格


function core_deleteFeedback_run() {
  core_deleteFeedback_run = deleteFeedback_asyncToGenerator( /*#__PURE__*/deleteFeedback_regeneratorRuntime().mark(function _callee(task) {
    var existSite, successList, failList, code, msg, _iterator, _step, item, requestRes;

    return deleteFeedback_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return amazon["a" /* default */].checkSite(task.market_code, task, true);

          case 2:
            existSite = _context.sent;

            if (existSite) {
              _context.next = 6;
              break;
            }

            task.error_time++;
            return _context.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 6:
            successList = [];
            failList = [];
            code = 0;
            _iterator = deleteFeedback_createForOfIteratorHelper(task.data);
            _context.prev = 10;

            _iterator.s();

          case 12:
            if ((_step = _iterator.n()).done) {
              _context.next = 24;
              break;
            }

            item = _step.value;
            _context.next = 16;
            return Object(util["h" /* delayed */])(20 * 1000);

          case 16:
            _context.next = 18;
            return checkDeleteFeedback(item.orderId);

          case 18:
            requestRes = _context.sent;
            Object.assign(item, requestRes);
            requestRes.code === 1 && successList.push(deleteFeedback_objectSpread(deleteFeedback_objectSpread({}, item), requestRes));
            requestRes.code === 2 && failList.push(deleteFeedback_objectSpread(deleteFeedback_objectSpread({}, item), requestRes));

          case 22:
            _context.next = 12;
            break;

          case 24:
            _context.next = 29;
            break;

          case 26:
            _context.prev = 26;
            _context.t0 = _context["catch"](10);

            _iterator.e(_context.t0);

          case 29:
            _context.prev = 29;

            _iterator.f();

            return _context.finish(29);

          case 32:
            if (failList.length > 0) {
              if (task.error_time >= 10) {
                code = 1;
                msg = '请求亚马逊删除评价失败，具体原因请看feedback页面';
              } else {
                code = 4;
                task.error_time++;
              }
            }

            return _context.abrupt("return", {
              type_id: task.type_id,
              seller_id: task.seller_id,
              msg: msg,
              code: code,
              result: successList,
              data: failList.length > 0 ? failList : undefined
            });

          case 34:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[10, 26, 29, 32]]);
  }));
  return core_deleteFeedback_run.apply(this, arguments);
}

function checkDeleteFeedback(_x2) {
  return _checkDeleteFeedback.apply(this, arguments);
} // 获取csrftoken


function _checkDeleteFeedback() {
  _checkDeleteFeedback = deleteFeedback_asyncToGenerator( /*#__PURE__*/deleteFeedback_regeneratorRuntime().mark(function _callee2(orderId) {
    var params, feedback, res, msg;
    return deleteFeedback_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.next = 2;
            return getParams(orderId);

          case 2:
            params = _context2.sent;

            if (!(params.code === 2)) {
              _context2.next = 5;
              break;
            }

            return _context2.abrupt("return", params);

          case 5:
            _context2.next = 7;
            return getFeedbackId({
              orderId: orderId,
              blob2: params.blob2,
              orderDate: "".concat(params.orderDate).replace('.', ''),
              orderStatus: params.orderStatus
            });

          case 7:
            feedback = _context2.sent;

            if (!(feedback.code === 2)) {
              _context2.next = 10;
              break;
            }

            return _context2.abrupt("return", feedback);

          case 10:
            _context2.prev = 10;
            _context2.next = 13;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/fbmapi/v1/feedbacks/").concat(feedback.feedbackId, "/removal"), 'get');

          case 13:
            res = _context2.sent;

            if (!(res.feedbackId && res.outputState)) {
              _context2.next = 25;
              break;
            }

            if (!(['REVIEWED_AND_REMOVED', 'ELIGIBLE'].indexOf(res.outputState) > -1)) {
              _context2.next = 21;
              break;
            }

            _context2.next = 18;
            return requestDeleteFeedback(feedback.feedbackId);

          case 18:
            _context2.t0 = _context2.sent;
            _context2.next = 22;
            break;

          case 21:
            _context2.t0 = deleteFeedback_objectSpread(deleteFeedback_objectSpread({}, res), {}, {
              code: 1
            });

          case 22:
            return _context2.abrupt("return", _context2.t0);

          case 25:
            return _context2.abrupt("return", {
              code: 2,
              msg: '[请求删除feedback]请求removal接口失败，亚马逊规则可能改变'
            });

          case 26:
            _context2.next = 33;
            break;

          case 28:
            _context2.prev = 28;
            _context2.t1 = _context2["catch"](10);
            msg = "[\u8BF7\u6C42\u5220\u9664feedback]removal\u63A5\u53E3\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context2.t1));
            log["a" /* default */].setLog(msg);
            return _context2.abrupt("return", {
              code: 3,
              msg: msg
            });

          case 33:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[10, 28]]);
  }));
  return _checkDeleteFeedback.apply(this, arguments);
}

function getCsrfToken() {
  return _getCsrfToken.apply(this, arguments);
} // 删除feedback


function _getCsrfToken() {
  _getCsrfToken = deleteFeedback_asyncToGenerator( /*#__PURE__*/deleteFeedback_regeneratorRuntime().mark(function _callee3() {
    var res, msg;
    return deleteFeedback_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/fbmapi/v1/csrf"), 'get');

          case 3:
            res = _context3.sent;
            return _context3.abrupt("return", res && res.csrfToken);

          case 7:
            _context3.prev = 7;
            _context3.t0 = _context3["catch"](0);
            msg = "[\u8BF7\u6C42\u5220\u9664feedback]\u83B7\u53D6csrftoken\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context3.t0));
            log["a" /* default */].setLog(msg);
            return _context3.abrupt("return", {
              code: 2,
              msg: msg
            });

          case 12:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 7]]);
  }));
  return _getCsrfToken.apply(this, arguments);
}

function requestDeleteFeedback(_x3) {
  return _requestDeleteFeedback.apply(this, arguments);
} // 通过订单号获取orderDate、blob2


function _requestDeleteFeedback() {
  _requestDeleteFeedback = deleteFeedback_asyncToGenerator( /*#__PURE__*/deleteFeedback_regeneratorRuntime().mark(function _callee4(feedbackId) {
    var csrftoken, requestHearderId, res, msg;
    return deleteFeedback_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return getCsrfToken();

          case 3:
            csrftoken = _context4.sent;

            if (csrftoken) {
              _context4.next = 6;
              break;
            }

            return _context4.abrupt("return", {
              code: 2,
              msg: '[请求删除feedback]获取csrftoken失败，亚马逊规则可能改变'
            });

          case 6:
            _context4.next = 8;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Origin',
              value: "".concat(amazon["a" /* default */].host, "/feedback-manager/index.html")
            }, {
              name: 'Referer',
              value: "".concat(amazon["a" /* default */].host, "/feedback-manager/index.html")
            }], "".concat(amazon["a" /* default */].host, "/fbmapi/v1/feedbacks/").concat(feedbackId, "/removal"));

          case 8:
            requestHearderId = _context4.sent;
            _context4.next = 11;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/fbmapi/v1/feedbacks/").concat(feedbackId, "/removal?anti-csrftoken-a2z=").concat(encodeURIComponent(encodeURIComponent(csrftoken))), 'post', {}, {
              'Content-Type': 'application/json'
            });

          case 11:
            res = _context4.sent;
            // 移除监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

            if (!(res && res.outputState && res.feedbackId)) {
              _context4.next = 17;
              break;
            }

            return _context4.abrupt("return", deleteFeedback_objectSpread(deleteFeedback_objectSpread({}, res), {}, {
              code: 1
            }));

          case 17:
            return _context4.abrupt("return", {
              code: 2,
              msg: '[请求删除feedback]删除feedback失败，亚马逊规则可能改变'
            });

          case 18:
            _context4.next = 25;
            break;

          case 20:
            _context4.prev = 20;
            _context4.t0 = _context4["catch"](0);
            msg = "[\u8BF7\u6C42\u5220\u9664feedback]\u5220\u9664feedback\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context4.t0));
            log["a" /* default */].setLog(msg);
            return _context4.abrupt("return", {
              code: 2,
              msg: msg
            });

          case 25:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 20]]);
  }));
  return _requestDeleteFeedback.apply(this, arguments);
}

function getParams(_x4) {
  return _getParams.apply(this, arguments);
} // 获取feedbackId


function _getParams() {
  _getParams = deleteFeedback_asyncToGenerator( /*#__PURE__*/deleteFeedback_regeneratorRuntime().mark(function _callee5(orderId) {
    var res, msg;
    return deleteFeedback_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            _context5.prev = 0;
            _context5.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/orders-api/order/").concat(orderId), 'get');

          case 3:
            res = _context5.sent;

            if (!(res && res.order && res.order.blob2 && res.order.purchaseDate)) {
              _context5.next = 8;
              break;
            }

            return _context5.abrupt("return", {
              code: 1,
              blob2: res.order.blob2,
              orderDate: res.order.purchaseDate,
              orderStatus: res.order.orderStatus.OrderStatus
            });

          case 8:
            return _context5.abrupt("return", {
              code: 2,
              msg: '[请求删除feedback]获取feedbackId失败，亚马逊规则可能改变'
            });

          case 9:
            _context5.next = 16;
            break;

          case 11:
            _context5.prev = 11;
            _context5.t0 = _context5["catch"](0);
            msg = "[\u8BF7\u6C42\u5220\u9664feedback]orderId\u63A5\u53E3\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context5.t0));
            log["a" /* default */].setLog(msg);
            return _context5.abrupt("return", {
              code: 3,
              msg: msg
            });

          case 16:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[0, 11]]);
  }));
  return _getParams.apply(this, arguments);
}

function getFeedbackId(_x5) {
  return _getFeedbackId.apply(this, arguments);
}

function _getFeedbackId() {
  _getFeedbackId = deleteFeedback_asyncToGenerator( /*#__PURE__*/deleteFeedback_regeneratorRuntime().mark(function _callee6(_ref) {
    var orderId, blob2, orderDate, orderStatus, res, msg;
    return deleteFeedback_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            orderId = _ref.orderId, blob2 = _ref.blob2, orderDate = _ref.orderDate, orderStatus = _ref.orderStatus;
            _context6.prev = 1;
            _context6.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/orders-api/order/").concat(orderId, "/feedback"), 'get', {
              orderId: orderId,
              blob2: blob2,
              orderDate: orderDate,
              orderStatus: orderStatus
            });

          case 4:
            res = _context6.sent;

            if (!(res && res.encryptedFeedbackId)) {
              _context6.next = 9;
              break;
            }

            return _context6.abrupt("return", {
              code: 1,
              feedbackId: res.encryptedFeedbackId
            });

          case 9:
            return _context6.abrupt("return", {
              code: 2,
              msg: '[请求删除feedback]获取feedbackId失败，亚马逊规则可能改变'
            });

          case 10:
            _context6.next = 17;
            break;

          case 12:
            _context6.prev = 12;
            _context6.t0 = _context6["catch"](1);
            msg = "[\u8BF7\u6C42\u5220\u9664feedback]\u8BF7\u6C42feedbackId\u63A5\u53E3\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context6.t0));
            log["a" /* default */].setLog(msg);
            return _context6.abrupt("return", {
              code: 3,
              msg: msg
            });

          case 17:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6, null, [[1, 12]]);
  }));
  return _getFeedbackId.apply(this, arguments);
}

function deleteFeedback(_x6) {
  return _deleteFeedback.apply(this, arguments);
}

function _deleteFeedback() {
  _deleteFeedback = deleteFeedback_asyncToGenerator( /*#__PURE__*/deleteFeedback_regeneratorRuntime().mark(function _callee7(task) {
    var res;
    return deleteFeedback_regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            _context7.next = 2;
            return deleteFeedback_run(task);

          case 2:
            res = _context7.sent;
            !task.status && (task.status = {
              0: 1,
              1: 14,
              4: 13
            }[task.code]);
            return _context7.abrupt("return", res);

          case 5:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7);
  }));
  return _deleteFeedback.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/DealInventory/dealInventory.js
function dealInventory_typeof(obj) { "@babel/helpers - typeof"; return dealInventory_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, dealInventory_typeof(obj); }

function dealInventory_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ dealInventory_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == dealInventory_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function dealInventory_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function dealInventory_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? dealInventory_ownKeys(Object(source), !0).forEach(function (key) { dealInventory_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : dealInventory_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function dealInventory_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function dealInventory_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = dealInventory_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function dealInventory_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return dealInventory_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return dealInventory_arrayLikeToArray(o, minLen); }

function dealInventory_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function dealInventory_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function dealInventory_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { dealInventory_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { dealInventory_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/*
 * 秒杀调库存 - 获取秒杀数据
 * task.list中code: 0 获取成功、1 获取失败、2 未匹配到对应sku、3  状态为取消
 */




function dealInventory_run(_x) {
  return DealInventory_dealInventory_run.apply(this, arguments);
}
/**
 * @description 匹配sku
 */


function DealInventory_dealInventory_run() {
  DealInventory_dealInventory_run = dealInventory_asyncToGenerator( /*#__PURE__*/dealInventory_regeneratorRuntime().mark(function _callee(task) {
    var checkFlag, existSite, runRes, res, succ;
    return dealInventory_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return amazon["a" /* default */].onlyCheckSite(task.market_code, task);

          case 2:
            checkFlag = _context.sent;
            _context.t0 = !checkFlag;

            if (!_context.t0) {
              _context.next = 8;
              break;
            }

            _context.next = 7;
            return Object(util["J" /* suspend */])();

          case 7:
            _context.t0 = !_context.sent;

          case 8:
            if (!_context.t0) {
              _context.next = 15;
              break;
            }

            task.status = 0;
            _context.next = 12;
            return amazon["a" /* default */].checkSite(task.market_code, task, false);

          case 12:
            existSite = _context.sent;

            if (existSite) {
              _context.next = 15;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 15:
            _context.t1 = task.type_id;
            _context.next = _context.t1 === 70 ? 18 : _context.t1 === 71 ? 23 : _context.t1 === 73 ? 27 : 31;
            break;

          case 18:
            task.list = task.list.map(function (_ref) {
              var msku = _ref.msku;
              return {
                param: {
                  campaignStatuses: 'ACTIVE,ACTIVE_WITH_SUPPRESSIONS,APPROVED,SUPPRESSED',
                  merchandisingType: 'LIGHTNING_DEAL',
                  searchTerm: msku
                },
                msku: msku
              };
            });
            _context.next = 21;
            return handleInit(task);

          case 21:
            runRes = _context.sent;
            return _context.abrupt("break", 31);

          case 23:
            _context.next = 25;
            return handleUpdate(task);

          case 25:
            runRes = _context.sent;
            return _context.abrupt("break", 31);

          case 27:
            _context.next = 29;
            return handleResult(task);

          case 29:
            runRes = _context.sent;
            return _context.abrupt("break", 31);

          case 31:
            res = {
              type_id: task.type_id,
              seller_id: task.seller_id
            };

            if (runRes.success) {
              // 判断是否全部获取完
              succ = task.list.filter(function (_ref2) {
                var code = _ref2.code;
                return code === 0;
              }).length;

              if (task.list.find(function (_ref3) {
                var code = _ref3.code;
                return code !== 0;
              })) {
                res = dealInventory_objectSpread(dealInventory_objectSpread({}, res), {}, {
                  result: task.list,
                  code: 0,
                  msg: "\u5DF2\u83B7\u53D6".concat(succ, "\u6761\u6570\u636E\uFF0C\u8FD8\u5269").concat(task.list.length - succ, "\u6761\u672A\u83B7\u53D6\u6210\u529F\uFF0C\u5177\u4F53\u5931\u8D25\u539F\u56E0\u67E5\u770B\u3002\u3002\u3002")
                });
              } else {
                res = dealInventory_objectSpread(dealInventory_objectSpread({}, res), {}, {
                  result: task.list,
                  code: 0
                });
              }
            } else {
              res = dealInventory_objectSpread(dealInventory_objectSpread({}, res), {}, {
                result: null,
                code: 1,
                msg: runRes.msg
              });
            }

            return _context.abrupt("return", res);

          case 34:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));
  return DealInventory_dealInventory_run.apply(this, arguments);
}

function matchingSku(list, msku) {
  var _iterator = dealInventory_createForOfIteratorHelper(list),
      _step;

  try {
    for (_iterator.s(); !(_step = _iterator.n()).done;) {
      var item = _step.value;
      if (item.sku === msku) return item;else {
        var _iterator2 = dealInventory_createForOfIteratorHelper(item.children),
            _step2;

        try {
          for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
            var _item = _step2.value;
            if (_item.sku === msku) return _item;
          }
        } catch (err) {
          _iterator2.e(err);
        } finally {
          _iterator2.f();
        }
      }
    }
  } catch (err) {
    _iterator.e(err);
  } finally {
    _iterator.f();
  }
}
/**
 * @description 初始化
 */


function handleInit(_x2) {
  return _handleInit.apply(this, arguments);
}
/** 
 * @description 更新
*/


function _handleInit() {
  _handleInit = dealInventory_asyncToGenerator( /*#__PURE__*/dealInventory_regeneratorRuntime().mark(function _callee2(task) {
    var _iterator3, _step3, item, _yield$getBestDealLis, errorMsg, code, data, _yield$getBestDealDet, details, detailCode, detailMsg, detail;

    return dealInventory_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;
            _iterator3 = dealInventory_createForOfIteratorHelper(task.list);
            _context2.prev = 2;

            _iterator3.s();

          case 4:
            if ((_step3 = _iterator3.n()).done) {
              _context2.next = 41;
              break;
            }

            item = _step3.value;

            if (!(item.code === 0)) {
              _context2.next = 8;
              break;
            }

            return _context2.abrupt("continue", 39);

          case 8:
            _context2.next = 10;
            return Object(util["h" /* delayed */])(5 * 1000);

          case 10:
            _context2.next = 12;
            return dealInventory_getBestDealList(0, item.param, task.market_code);

          case 12:
            _yield$getBestDealLis = _context2.sent;
            errorMsg = _yield$getBestDealLis.errorMsg;
            code = _yield$getBestDealLis.code;
            data = _yield$getBestDealLis.data;
            item.code = code;

            if (!(code !== 0)) {
              _context2.next = 20;
              break;
            }

            item.msg = errorMsg;
            return _context2.abrupt("continue", 39);

          case 20:
            _context2.next = 22;
            return dealInventory_getBestDealDetail(data.id, task);

          case 22:
            _yield$getBestDealDet = _context2.sent;
            details = _yield$getBestDealDet.details;
            detailCode = _yield$getBestDealDet.detailCode;
            detailMsg = _yield$getBestDealDet.detailMsg;
            item.code = detailCode;

            if (details) {
              _context2.next = 30;
              break;
            }

            item.msg = detailMsg;
            return _context2.abrupt("continue", 39);

          case 30:
            detail = details && matchingSku(details, item.msku);

            if (detail) {
              _context2.next = 35;
              break;
            }

            item.msg = "\u672A\u5339\u914D\u5230sku\uFF1A".concat(item.msku);
            item.code = 2;
            return _context2.abrupt("continue", 39);

          case 35:
            detail.dealPrice.minValue = "".concat(detail.dealPrice.minValue);
            detail.dealPrice.maxValue = "".concat(detail.dealPrice.maxValue);
            detail.dealPrice.value = "".concat(detail.dealPrice.value);
            Object.assign(item, {
              id: data.id,
              internalDescription: data.internalDescription,
              startDateEpochMillis: "".concat(data.startDateEpochMillis),
              endDateEpochMillis: "".concat(data.endDateEpochMillis),
              sellerPrice: "".concat(detail.sellerPrice),
              dealPrice: detail.dealPrice,
              dealQuantity: detail.dealQuantity
            });

          case 39:
            _context2.next = 4;
            break;

          case 41:
            _context2.next = 46;
            break;

          case 43:
            _context2.prev = 43;
            _context2.t0 = _context2["catch"](2);

            _iterator3.e(_context2.t0);

          case 46:
            _context2.prev = 46;

            _iterator3.f();

            return _context2.finish(46);

          case 49:
            return _context2.abrupt("return", {
              success: true
            });

          case 52:
            _context2.prev = 52;
            _context2.t1 = _context2["catch"](0);
            log["a" /* default */].setLog('秒杀调库存-handleInit', Object(util["u" /* isError */])(_context2.t1));
            return _context2.abrupt("return", {
              msg: '秒杀调库存-handleInit' + Object(util["u" /* isError */])(_context2.t1),
              success: false
            });

          case 56:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 52], [2, 43, 46, 49]]);
  }));
  return _handleInit.apply(this, arguments);
}

function handleUpdate(_x3) {
  return _handleUpdate.apply(this, arguments);
}
/** 
 * @description 结果
*/


function _handleUpdate() {
  _handleUpdate = dealInventory_asyncToGenerator( /*#__PURE__*/dealInventory_regeneratorRuntime().mark(function _callee3(task) {
    var _iterator4, _step4, _loop, _ret;

    return dealInventory_regeneratorRuntime().wrap(function _callee3$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _iterator4 = dealInventory_createForOfIteratorHelper(task.list);
            _context4.prev = 2;
            _loop = /*#__PURE__*/dealInventory_regeneratorRuntime().mark(function _loop() {
              var item, _yield$getBestDealDet2, details, detailCode, detailMsg, campaignStatus, mskuRes;

              return dealInventory_regeneratorRuntime().wrap(function _loop$(_context3) {
                while (1) {
                  switch (_context3.prev = _context3.next) {
                    case 0:
                      item = _step4.value;

                      if (!(item.code === 0)) {
                        _context3.next = 3;
                        break;
                      }

                      return _context3.abrupt("return", "continue");

                    case 3:
                      _context3.next = 5;
                      return Object(util["h" /* delayed */])(5 * 1000);

                    case 5:
                      _context3.next = 7;
                      return dealInventory_getBestDealDetail(item.promotionId, task);

                    case 7:
                      _yield$getBestDealDet2 = _context3.sent;
                      details = _yield$getBestDealDet2.details;
                      detailCode = _yield$getBestDealDet2.detailCode;
                      detailMsg = _yield$getBestDealDet2.detailMsg;
                      campaignStatus = _yield$getBestDealDet2.campaignStatus;
                      item.code = detailCode; // 如果状态已取消，直接退出

                      if (!(campaignStatus === 'CANCELLED')) {
                        _context3.next = 16;
                        break;
                      }

                      item.code = 3;
                      return _context3.abrupt("return", "continue");

                    case 16:
                      if (details) {
                        _context3.next = 19;
                        break;
                      }

                      item.msg = detailMsg;
                      return _context3.abrupt("return", "continue");

                    case 19:
                      // 匹配sku
                      mskuRes = {};
                      item.mskus.forEach(function (m) {
                        if (!mskuRes[m]) mskuRes[m] = {};
                        var detail = matchingSku(details || [], m);

                        if (!detail) {
                          mskuRes[m].msg = "\u672A\u5339\u914D\u5230sku\uFF1A".concat(m);
                          mskuRes[m].code = 2;
                          return;
                        }

                        mskuRes[m].code = 0;
                        detail.dealPrice.minValue = "".concat(detail.dealPrice.minValue);
                        detail.dealPrice.maxValue = "".concat(detail.dealPrice.maxValue);
                        detail.dealPrice.value = "".concat(detail.dealPrice.value);
                        Object.assign(mskuRes[m], {
                          sellerPrice: "".concat(detail.sellerPrice),
                          dealPrice: detail.dealPrice,
                          dealQuantity: detail.dealQuantity
                        });
                      });
                      item.result = mskuRes;

                    case 22:
                    case "end":
                      return _context3.stop();
                  }
                }
              }, _loop);
            });

            _iterator4.s();

          case 5:
            if ((_step4 = _iterator4.n()).done) {
              _context4.next = 12;
              break;
            }

            return _context4.delegateYield(_loop(), "t0", 7);

          case 7:
            _ret = _context4.t0;

            if (!(_ret === "continue")) {
              _context4.next = 10;
              break;
            }

            return _context4.abrupt("continue", 10);

          case 10:
            _context4.next = 5;
            break;

          case 12:
            _context4.next = 17;
            break;

          case 14:
            _context4.prev = 14;
            _context4.t1 = _context4["catch"](2);

            _iterator4.e(_context4.t1);

          case 17:
            _context4.prev = 17;

            _iterator4.f();

            return _context4.finish(17);

          case 20:
            return _context4.abrupt("return", {
              success: true
            });

          case 23:
            _context4.prev = 23;
            _context4.t2 = _context4["catch"](0);
            log["a" /* default */].setLog('秒杀调库存-handleUpdate', Object(util["u" /* isError */])(_context4.t2));
            return _context4.abrupt("return", {
              msg: '秒杀调库存-handleUpdate' + Object(util["u" /* isError */])(_context4.t2),
              success: false
            });

          case 27:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee3, null, [[0, 23], [2, 14, 17, 20]]);
  }));
  return _handleUpdate.apply(this, arguments);
}

function handleResult(_x4) {
  return _handleResult.apply(this, arguments);
}

function _handleResult() {
  _handleResult = dealInventory_asyncToGenerator( /*#__PURE__*/dealInventory_regeneratorRuntime().mark(function _callee4(task) {
    var _iterator5, _step5, _loop2, _ret2;

    return dealInventory_regeneratorRuntime().wrap(function _callee4$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            _context6.prev = 0;
            _iterator5 = dealInventory_createForOfIteratorHelper(task.list);
            _context6.prev = 2;
            _loop2 = /*#__PURE__*/dealInventory_regeneratorRuntime().mark(function _loop2() {
              var item, _yield$getBestDealDet3, details, detailCode, detailMsg, mskuRes;

              return dealInventory_regeneratorRuntime().wrap(function _loop2$(_context5) {
                while (1) {
                  switch (_context5.prev = _context5.next) {
                    case 0:
                      item = _step5.value;

                      if (!(item.code === 0)) {
                        _context5.next = 3;
                        break;
                      }

                      return _context5.abrupt("return", "continue");

                    case 3:
                      _context5.next = 5;
                      return Object(util["h" /* delayed */])(5 * 1000);

                    case 5:
                      _context5.next = 7;
                      return dealInventory_getBestDealDetail(item.promotionId, task);

                    case 7:
                      _yield$getBestDealDet3 = _context5.sent;
                      details = _yield$getBestDealDet3.details;
                      detailCode = _yield$getBestDealDet3.detailCode;
                      detailMsg = _yield$getBestDealDet3.detailMsg;
                      item.code = detailCode;

                      if (details) {
                        _context5.next = 15;
                        break;
                      }

                      item.msg = detailMsg;
                      return _context5.abrupt("return", "continue");

                    case 15:
                      // 匹配sku
                      mskuRes = {};
                      item.mskus.forEach(function (m) {
                        if (!mskuRes[m]) mskuRes[m] = {};
                        var detail = matchingSku(details || [], m);

                        if (!detail) {
                          mskuRes[m].msg = "\u672A\u5339\u914D\u5230sku\uFF1A".concat(m);
                          mskuRes[m].code = 2;
                          return;
                        }

                        mskuRes[m].code = 0;
                        detail.dealPrice.minValue = "".concat(detail.dealPrice.minValue);
                        detail.dealPrice.maxValue = "".concat(detail.dealPrice.maxValue);
                        detail.dealPrice.value = "".concat(detail.dealPrice.value);
                        Object.assign(mskuRes[m], {
                          sellerPrice: "".concat(detail.sellerPrice),
                          dealPrice: detail.dealPrice,
                          dealQuantity: detail.dealQuantity,
                          dealItemRevenue: "".concat(detail.dealItemRevenue),
                          // 秒杀销售额
                          dealItemQuantitySold: "".concat(detail.dealItemQuantitySold),
                          // 秒杀销量
                          glanceViews: detail.glanceViews // 浏览量

                        });
                      });
                      item.result = mskuRes;

                    case 18:
                    case "end":
                      return _context5.stop();
                  }
                }
              }, _loop2);
            });

            _iterator5.s();

          case 5:
            if ((_step5 = _iterator5.n()).done) {
              _context6.next = 12;
              break;
            }

            return _context6.delegateYield(_loop2(), "t0", 7);

          case 7:
            _ret2 = _context6.t0;

            if (!(_ret2 === "continue")) {
              _context6.next = 10;
              break;
            }

            return _context6.abrupt("continue", 10);

          case 10:
            _context6.next = 5;
            break;

          case 12:
            _context6.next = 17;
            break;

          case 14:
            _context6.prev = 14;
            _context6.t1 = _context6["catch"](2);

            _iterator5.e(_context6.t1);

          case 17:
            _context6.prev = 17;

            _iterator5.f();

            return _context6.finish(17);

          case 20:
            return _context6.abrupt("return", {
              success: true
            });

          case 23:
            _context6.prev = 23;
            _context6.t2 = _context6["catch"](0);
            log["a" /* default */].setLog('秒杀调库存-handleResult', Object(util["u" /* isError */])(_context6.t2));
            return _context6.abrupt("return", {
              msg: '秒杀调库存-handleResult' + Object(util["u" /* isError */])(_context6.t2),
              success: false
            });

          case 27:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee4, null, [[0, 23], [2, 14, 17, 20]]);
  }));
  return _handleResult.apply(this, arguments);
}

function dealInventory_getBestDealList() {
  return DealInventory_dealInventory_getBestDealList.apply(this, arguments);
} // 获取秒杀详情


function DealInventory_dealInventory_getBestDealList() {
  DealInventory_dealInventory_getBestDealList = dealInventory_asyncToGenerator( /*#__PURE__*/dealInventory_regeneratorRuntime().mark(function _callee5() {
    var count,
        param,
        market_code,
        errorMsg,
        res,
        rows,
        item,
        _args7 = arguments;
    return dealInventory_regeneratorRuntime().wrap(function _callee5$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            count = _args7.length > 0 && _args7[0] !== undefined ? _args7[0] : 0;
            param = _args7.length > 1 ? _args7[1] : undefined;
            market_code = _args7.length > 2 ? _args7[2] : undefined;
            _context7.next = 5;
            return Object(util["z" /* nativeRequest */])(amazon["a" /* default */].host + '/merchandising/api/v4/manage/data', 'get', Object.assign({
              pageNumber: 1,
              pageSize: 50,
              campaignStatuses: 'ACTIVE,ACTIVE_WITH_SUPPRESSIONS,APPROVED,SUPPRESSED',
              merchandisingType: 'LIGHTNING_DEAL',
              sortColumn: 'START_DATE',
              sortOrder: 'ASC',
              marketplaces: amazon["a" /* default */].MarketplaceObj[market_code]
            }, param)).catch(function (e) {
              errorMsg = "\u8BF7\u6C42\u79D2\u6740\u5217\u8868\u5931\u8D25---".concat(Object(util["u" /* isError */])(e));
              log["a" /* default */].setLog(errorMsg);
            });

          case 5:
            res = _context7.sent;

            if (!(errorMsg && count < 2)) {
              _context7.next = 10;
              break;
            }

            _context7.next = 9;
            return dealInventory_getBestDealList(++count, param, market_code);

          case 9:
            return _context7.abrupt("return", _context7.sent);

          case 10:
            _context7.prev = 10;

            if (!(res && res.viewModel && res.viewModel.searchCampaignsQueryResult)) {
              _context7.next = 21;
              break;
            }

            rows = res.viewModel.searchCampaignsQueryResult.searchCampaigns;

            if (!(rows && rows.length > 0)) {
              _context7.next = 18;
              break;
            }

            item = rows[0];
            return _context7.abrupt("return", {
              data: {
                id: item.campaignReference && item.campaignReference.id,
                title: item.title,
                // 标题
                internalDescription: item.internalDescription,
                // 内部描述
                campaignStatus: item.campaignStatus,
                // 状态
                skuCount: item.skuCount,
                // 状态
                asinCount: item.asinCount,
                // 商品数量
                startDateEpochMillis: "".concat(item.startDateEpochMillis),
                // 开始时间
                endDateEpochMillis: "".concat(item.endDateEpochMillis),
                // 结束时间
                type: item.type,
                // 类型
                fees: "".concat(item.fees),
                // 秒杀费 
                sales: "".concat(item.sales),
                // 销售额
                unitsSold: "".concat(item.unitsSold),
                // 销量
                currencyCode: item.currencyCode,
                // 币种
                committedQuantity: item.committedQuantity,
                // 参与库存量
                glanceViews: item.glanceViews // 浏览量

              },
              code: 0
            });

          case 18:
            return _context7.abrupt("return", {
              errorMsg: '未找到秒杀数据，请在亚马逊后台确认是否有此sku',
              code: 2
            });

          case 19:
            _context7.next = 23;
            break;

          case 21:
            if (!res) {
              _context7.next = 23;
              break;
            }

            return _context7.abrupt("return", {
              errorMsg: '未找到秒杀数据，请在亚马逊后台确认是否有此sku',
              code: 2
            });

          case 23:
            return _context7.abrupt("return", {
              errorMsg: errorMsg || '获取秒杀列表失败----',
              code: 1
            });

          case 26:
            _context7.prev = 26;
            _context7.t0 = _context7["catch"](10);
            return _context7.abrupt("return", {
              errorMsg: '获取秒杀列表失败----' + Object(util["u" /* isError */])(_context7.t0),
              code: 1
            });

          case 29:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee5, null, [[10, 26]]);
  }));
  return DealInventory_dealInventory_getBestDealList.apply(this, arguments);
}

function dealInventory_getBestDealDetail(_x5) {
  return DealInventory_dealInventory_getBestDealDetail.apply(this, arguments);
}

function DealInventory_dealInventory_getBestDealDetail() {
  DealInventory_dealInventory_getBestDealDetail = dealInventory_asyncToGenerator( /*#__PURE__*/dealInventory_regeneratorRuntime().mark(function _callee6(campaignId) {
    var requestHearderId, res, items;
    return dealInventory_regeneratorRuntime().wrap(function _callee6$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            _context8.prev = 0;
            _context8.next = 3;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Referer',
              value: "".concat(amazon["a" /* default */].host, "/merchandising-new/deal/view/").concat(campaignId, "?itemsFilter=all&pageNum=1&pageSize=15&searchTerm=")
            }], 'https://sellercentral*^merchandising/api/v4/deals/get*');

          case 3:
            requestHearderId = _context8.sent;
            _context8.next = 6;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/merchandising/api/v4/deals/get"), 'get', {
              campaignId: campaignId
            });

          case 6:
            res = _context8.sent;
            // 移除监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]); // 调试测试时放开，上线记得注释掉！！
            // const res = await require('../../mock/bestDealDetail.json')

            if (!(res && res.viewModel && res.viewModel.multiParentItemList)) {
              _context8.next = 13;
              break;
            }

            items = res.viewModel.multiParentItemList.items || [];
            return _context8.abrupt("return", {
              details: items.map(function (item) {
                return {
                  asin: item.asin,
                  sku: item.sku,
                  productName: item.productName,
                  sellerPrice: "".concat(item.sellerPrice),
                  dealPrice: item.dealPrice,
                  dealQuantity: item.dealQuantity,
                  // 秒杀库存
                  sellerQuantity: item.sellerQuantity,
                  // 总库存 
                  amazonFulfilled: item.amazonFulfilled,
                  // 配送渠道 true为亚马逊，其他值为fba
                  dealItemRevenue: item.dealItemRevenue,
                  // 秒杀销售额
                  dealItemQuantitySold: item.dealItemQuantitySold,
                  // 秒杀销量
                  glanceViews: item.glanceViews,
                  // 浏览量
                  children: item.children
                };
              }),
              campaignStatus: res.viewModel.campaignStatus,
              detailCode: 0
            });

          case 13:
            log["a" /* default */].setLog('[秒杀详情]没有table数据，可能是亚马逊规则改变');
            return _context8.abrupt("return", {
              detailCode: 2,
              detailMsg: '[秒杀详情]没有table数据，可能是亚马逊规则改变'
            });

          case 15:
            _context8.next = 21;
            break;

          case 17:
            _context8.prev = 17;
            _context8.t0 = _context8["catch"](0);
            log["a" /* default */].setLog('[秒杀详情]获取失败----', Object(util["u" /* isError */])(_context8.t0));
            return _context8.abrupt("return", {
              detailCode: 1,
              detailMsg: '[秒杀详情]获取失败----' + Object(util["u" /* isError */])(_context8.t0)
            });

          case 21:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee6, null, [[0, 17]]);
  }));
  return DealInventory_dealInventory_getBestDealDetail.apply(this, arguments);
}

function dealInventory(_x6) {
  return _dealInventory.apply(this, arguments);
}

function _dealInventory() {
  _dealInventory = dealInventory_asyncToGenerator( /*#__PURE__*/dealInventory_regeneratorRuntime().mark(function _callee7(task) {
    var res;
    return dealInventory_regeneratorRuntime().wrap(function _callee7$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            _context9.next = 2;
            return dealInventory_run(task);

          case 2:
            res = _context9.sent;
            res.code !== 0 && task.error_time++;
            return _context9.abrupt("return", res);

          case 5:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee7);
  }));
  return _dealInventory.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/DealInventory/dealInventoryModify.js
function dealInventoryModify_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ dealInventoryModify_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == dealInventoryModify_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function dealInventoryModify_typeof(obj) { "@babel/helpers - typeof"; return dealInventoryModify_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, dealInventoryModify_typeof(obj); }

function dealInventoryModify_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function dealInventoryModify_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? dealInventoryModify_ownKeys(Object(source), !0).forEach(function (key) { dealInventoryModify_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : dealInventoryModify_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function dealInventoryModify_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function dealInventoryModify_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = dealInventoryModify_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function dealInventoryModify_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return dealInventoryModify_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return dealInventoryModify_arrayLikeToArray(o, minLen); }

function dealInventoryModify_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function dealInventoryModify_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function dealInventoryModify_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { dealInventoryModify_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { dealInventoryModify_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/*
 * 秒杀调库存 - 修改库存
 * task.list中code: 0 获取成功、1 获取失败、2 未匹配到对应sku、3  状态为取消
 */




function dealInventoryModify_run(_x) {
  return DealInventory_dealInventoryModify_run.apply(this, arguments);
}
/**
 * @description 整理调库存所需参数，如果未匹配到sku则返回false
 */


function DealInventory_dealInventoryModify_run() {
  DealInventory_dealInventoryModify_run = dealInventoryModify_asyncToGenerator( /*#__PURE__*/dealInventoryModify_regeneratorRuntime().mark(function _callee(task) {
    var checkFlag, existSite, _iterator3, _step3, _loop, _ret, res, succ;

    return dealInventoryModify_regeneratorRuntime().wrap(function _callee$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            if (!task.resCache) {
              _context2.next = 2;
              break;
            }

            return _context2.abrupt("return", task.resCache);

          case 2:
            _context2.next = 4;
            return amazon["a" /* default */].onlyCheckSite(task.market_code, task);

          case 4:
            checkFlag = _context2.sent;
            _context2.t0 = !checkFlag;

            if (!_context2.t0) {
              _context2.next = 10;
              break;
            }

            _context2.next = 9;
            return Object(util["J" /* suspend */])();

          case 9:
            _context2.t0 = !_context2.sent;

          case 10:
            if (!_context2.t0) {
              _context2.next = 17;
              break;
            }

            task.status = 0;
            _context2.next = 14;
            return amazon["a" /* default */].checkSite(task.market_code, task, false);

          case 14:
            existSite = _context2.sent;

            if (existSite) {
              _context2.next = 17;
              break;
            }

            return _context2.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 17:
            // 切换英文
            // if (!await amazon.checkLanguage(task.market_code, task)) {
            //   return { code: 2, msg: task.msg }
            // }
            // 埋点
            log["a" /* default */].report('开始获取详情匹配sku', 'info', {
              task: task,
              list: task.list
            }); // 获取详情匹配sku

            _iterator3 = dealInventoryModify_createForOfIteratorHelper(task.list);
            _context2.prev = 19;
            _loop = /*#__PURE__*/dealInventoryModify_regeneratorRuntime().mark(function _loop() {
              var item, _yield$getBestDealDet, data, detailCode, detailMsg, mskuRes, param, checkSiteFLag, modifyRes;

              return dealInventoryModify_regeneratorRuntime().wrap(function _loop$(_context) {
                while (1) {
                  switch (_context.prev = _context.next) {
                    case 0:
                      item = _step3.value;

                      if (!([0, 3].indexOf(item.code) > -1)) {
                        _context.next = 3;
                        break;
                      }

                      return _context.abrupt("return", "continue");

                    case 3:
                      Object(util["h" /* delayed */])(5 * 1000);
                      _context.next = 6;
                      return dealInventoryModify_getBestDealDetail(item.promotionId, task);

                    case 6:
                      _yield$getBestDealDet = _context.sent;
                      data = _yield$getBestDealDet.data;
                      detailCode = _yield$getBestDealDet.detailCode;
                      detailMsg = _yield$getBestDealDet.detailMsg;
                      item.code = detailCode;

                      if (data) {
                        _context.next = 14;
                        break;
                      }

                      item.msg = detailMsg;
                      return _context.abrupt("return", "continue");

                    case 14:
                      if (!(data.campaignStatus === 'CANCELLED')) {
                        _context.next = 17;
                        break;
                      }

                      item.code = 3;
                      return _context.abrupt("return", "continue");

                    case 17:
                      mskuRes = {};
                      item.mskus.forEach(function (_item) {
                        return mskuRes[_item.msku] = _item;
                      });
                      log["a" /* default */].setLog('mskuResmskuResmskuRes', mskuRes, item, data);
                      param = arrangeParam(data, mskuRes, task.task_id);

                      if (param.items.length) {
                        _context.next = 25;
                        break;
                      }

                      item.msg = "\u672A\u5339\u914D\u5230sku\uFF1A".concat(item.mskus.map(function (_ref4) {
                        var msku = _ref4.msku;
                        return msku;
                      }).join());
                      item.code = 2;
                      return _context.abrupt("return", "continue");

                    case 25:
                      _context.next = 27;
                      return amazon["a" /* default */].onlyCheckSite(task.market_code, task);

                    case 27:
                      checkSiteFLag = _context.sent;

                      if (checkSiteFLag) {
                        _context.next = 30;
                        break;
                      }

                      return _context.abrupt("return", {
                        v: {
                          type_id: task.type_id,
                          seller_id: task.seller_id,
                          result: null,
                          code: 1,
                          msg: '执行任务时站点已被切换'
                        }
                      });

                    case 30:
                      _context.next = 32;
                      return handleModify(param);

                    case 32:
                      modifyRes = _context.sent;
                      // 调试测试时放开，上线记得注释掉！！
                      // const modifyRes = {
                      //   code: 0
                      // }
                      item.code = modifyRes.code;
                      item.msg = modifyRes.msg;
                      item.result = modifyRes.code === 0 ? mskuRes : null; // 获取服务器时间

                      _context.next = 38;
                      return Object(util["t" /* getServiceTime */])();

                    case 38:
                      item.modifyTime = _context.sent;

                    case 39:
                    case "end":
                      return _context.stop();
                  }
                }
              }, _loop);
            });

            _iterator3.s();

          case 22:
            if ((_step3 = _iterator3.n()).done) {
              _context2.next = 31;
              break;
            }

            return _context2.delegateYield(_loop(), "t1", 24);

          case 24:
            _ret = _context2.t1;

            if (!(_ret === "continue")) {
              _context2.next = 27;
              break;
            }

            return _context2.abrupt("continue", 29);

          case 27:
            if (!(dealInventoryModify_typeof(_ret) === "object")) {
              _context2.next = 29;
              break;
            }

            return _context2.abrupt("return", _ret.v);

          case 29:
            _context2.next = 22;
            break;

          case 31:
            _context2.next = 36;
            break;

          case 33:
            _context2.prev = 33;
            _context2.t2 = _context2["catch"](19);

            _iterator3.e(_context2.t2);

          case 36:
            _context2.prev = 36;

            _iterator3.f();

            return _context2.finish(36);

          case 39:
            res = {
              type_id: task.type_id,
              seller_id: task.seller_id
            }; // 判断是否全部调整完

            succ = task.list.filter(function (_ref3) {
              var code = _ref3.code;
              return code === 0;
            }).length;

            if (task.list.length - succ) {
              res = dealInventoryModify_objectSpread(dealInventoryModify_objectSpread({}, res), {}, {
                result: task.list,
                code: 1,
                msg: "\u5DF2\u4FEE\u6539".concat(succ, "\u6761\u5E93\u5B58\uFF0C\u8FD8\u5269").concat(task.list.length - succ, "\u6761\u672A\u4FEE\u6539\u6210\u529F\uFF0C\u5177\u4F53\u5931\u8D25\u539F\u56E0\u67E5\u770B\u3002\u3002\u3002")
              });
            } else {
              res = dealInventoryModify_objectSpread(dealInventoryModify_objectSpread({}, res), {}, {
                result: task.list,
                code: 0
              });
            }

            return _context2.abrupt("return", res);

          case 43:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee, null, [[19, 33, 36, 39]]);
  }));
  return DealInventory_dealInventoryModify_run.apply(this, arguments);
}

function arrangeParam(data, mskuRes, taskId) {
  var param = {
    id: data.campaignId,
    version: data.version,
    displayImageUrl: data.imageUrl,
    items: []
  };

  try {
    var _iterator = dealInventoryModify_createForOfIteratorHelper(data.details || []),
        _step;

    try {
      for (_iterator.s(); !(_step = _iterator.n()).done;) {
        var item = _step.value;
        var children = item.children || [];

        if (children.length === 0) {
          // included为false的商品不参与秒杀
          if (!item.included) continue;
          var mskuItem = mskuRes[item.sku];

          var _ref = item || {},
              asin = _ref.asin,
              sku = _ref.sku,
              dealPrice = _ref.dealPrice;

          if (mskuItem) {
            var limit = mskuItem.dealQuantityMax;
            var before = mskuItem.dealQuantityBefore = item.dealQuantity && item.dealQuantity.value;
            var computed = Math.ceil(before * (mskuItem.processPercent / mskuItem.targetPercent));
            var after = mskuItem.dealQuantityAfter = computed > limit ? limit : computed;
            param.items.push({
              asin: asin,
              sku: sku,
              price: dealPrice && dealPrice.value,
              quantity: after
            });
          } else if (item.dealQuantity && item.dealQuantity.value) {
            param.items.push({
              asin: asin,
              sku: sku,
              price: dealPrice && dealPrice.value,
              quantity: item.dealQuantity && item.dealQuantity.value
            });
          }
        } else {
          var _iterator2 = dealInventoryModify_createForOfIteratorHelper(children),
              _step2;

          try {
            for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
              var _item = _step2.value;
              // included为false的商品不参与秒杀
              if (!_item.included) continue;
              var _mskuItem = mskuRes[_item.sku];

              var _ref2 = _item || {},
                  _asin = _ref2.asin,
                  _sku = _ref2.sku,
                  _dealPrice = _ref2.dealPrice;

              if (_mskuItem) {
                var _limit = _mskuItem.dealQuantityMax;

                var _before = _mskuItem.dealQuantityBefore = _item.dealQuantity && _item.dealQuantity.value;

                var _computed = Math.ceil(_before * (_mskuItem.processPercent / _mskuItem.targetPercent));

                var _after = _mskuItem.dealQuantityAfter = _computed > _limit ? _limit : _computed;

                param.items.push({
                  asin: _asin,
                  sku: _sku,
                  price: _dealPrice && _dealPrice.value,
                  quantity: _after,
                  parentAsin: item.asin
                });
              } else if (_item.dealQuantity && _item.dealQuantity.value) {
                param.items.push({
                  asin: _asin,
                  sku: _sku,
                  price: _dealPrice && _dealPrice.value,
                  quantity: _item.dealQuantity && _item.dealQuantity.value,
                  parentAsin: item.asin
                });
              }
            }
          } catch (err) {
            _iterator2.e(err);
          } finally {
            _iterator2.f();
          }
        }
      }
    } catch (err) {
      _iterator.e(err);
    } finally {
      _iterator.f();
    }
  } catch (e) {
    log["a" /* default */].report("\u6574\u7406\u8C03\u5E93\u5B58\u6240\u9700\u53C2\u6570\u5931\u8D25---".concat(Object(util["u" /* isError */])(e)), 'error', {
      taskId: taskId,
      data: data
    });
  }

  return param;
}
/**
 * @description 修改库存
 */


function handleModify(_x2) {
  return _handleModify.apply(this, arguments);
} // 获取秒杀详情


function _handleModify() {
  _handleModify = dealInventoryModify_asyncToGenerator( /*#__PURE__*/dealInventoryModify_regeneratorRuntime().mark(function _callee2(param) {
    var requestHearderId, res;
    return dealInventoryModify_regeneratorRuntime().wrap(function _callee2$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Origin',
              value: amazon["a" /* default */].host
            }], "".concat(amazon["a" /* default */].host, "/merchandising/api/v4/deals/update"));

          case 3:
            requestHearderId = _context3.sent;
            _context3.next = 6;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/merchandising/api/v4/deals/update"), 'post', param);

          case 6:
            res = _context3.sent;
            // 移除监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

            if (!(!res.error && res.viewModel && res.viewModel.id === param.id)) {
              _context3.next = 12;
              break;
            }

            return _context3.abrupt("return", {
              res: res,
              code: 0
            });

          case 12:
            log["a" /* default */].setLog("\u4FEE\u6539\u5E93\u5B58\u5931\u8D25\uFF1A".concat(JSON.stringify(res)));
            return _context3.abrupt("return", {
              code: 1,
              msg: "\u4FEE\u6539\u5E93\u5B58\u5931\u8D25\uFF0C\u8FD4\u56DE\u53C2\u6570:".concat(JSON.stringify(res.error))
            });

          case 14:
            _context3.next = 20;
            break;

          case 16:
            _context3.prev = 16;
            _context3.t0 = _context3["catch"](0);
            log["a" /* default */].setLog("\u4FEE\u6539\u5E93\u5B58\u5931\u8D25\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0)));
            return _context3.abrupt("return", {
              code: 1,
              msg: "\u4FEE\u6539\u5E93\u5B58\u5931\u8D25\uFF1A".concat(Object(util["u" /* isError */])(_context3.t0))
            });

          case 20:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee2, null, [[0, 16]]);
  }));
  return _handleModify.apply(this, arguments);
}

function dealInventoryModify_getBestDealDetail(_x3) {
  return DealInventory_dealInventoryModify_getBestDealDetail.apply(this, arguments);
} // 判断有效期


function DealInventory_dealInventoryModify_getBestDealDetail() {
  DealInventory_dealInventoryModify_getBestDealDetail = dealInventoryModify_asyncToGenerator( /*#__PURE__*/dealInventoryModify_regeneratorRuntime().mark(function _callee3(campaignId) {
    var requestHearderId, res, items;
    return dealInventoryModify_regeneratorRuntime().wrap(function _callee3$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Referer',
              value: "".concat(amazon["a" /* default */].host, "/merchandising-new/deal/view/").concat(campaignId, "?itemsFilter=all&pageNum=1&pageSize=15&searchTerm=")
            }], "".concat(amazon["a" /* default */].host, "/merchandising/api/v4/deals/get*"));

          case 3:
            requestHearderId = _context4.sent;
            _context4.next = 6;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/merchandising/api/v4/deals/get"), 'get', {
              campaignId: campaignId
            });

          case 6:
            res = _context4.sent;
            // 移除监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]); // 调试测试时放开，上线记得注释掉！！
            // const res = await require('../../mock/bestDealDetail.json')

            if (!(res && res.viewModel && res.viewModel.multiParentItemList)) {
              _context4.next = 13;
              break;
            }

            items = res.viewModel.multiParentItemList.items || [];
            return _context4.abrupt("return", {
              data: {
                details: items.map(function (item) {
                  return {
                    asin: item.asin,
                    sku: item.sku,
                    productName: item.productName,
                    sellerPrice: "".concat(item.sellerPrice),
                    dealPrice: item.dealPrice,
                    dealQuantity: item.dealQuantity,
                    // 秒杀库存
                    sellerQuantity: item.sellerQuantity,
                    // 总库存 
                    amazonFulfilled: item.amazonFulfilled,
                    // 配送渠道 true为亚马逊，其他值为fba
                    included: item.included,
                    children: item.children
                  };
                }),
                campaignStatus: res.viewModel.campaignStatus,
                campaignId: res.viewModel.campaignId,
                imageUrl: res.viewModel.imageUrl,
                version: res.viewModel.version
              },
              detailCode: 0
            });

          case 13:
            log["a" /* default */].setLog('[秒杀详情]没有table数据，可能是亚马逊规则改变');
            return _context4.abrupt("return", {
              detailCode: 2,
              detailMsg: '[秒杀详情]没有table数据，可能是亚马逊规则改变'
            });

          case 15:
            _context4.next = 21;
            break;

          case 17:
            _context4.prev = 17;
            _context4.t0 = _context4["catch"](0);
            log["a" /* default */].setLog('[秒杀详情]获取失败----', Object(util["u" /* isError */])(_context4.t0));
            return _context4.abrupt("return", {
              detailCode: 1,
              detailMsg: '[秒杀详情]获取失败----' + Object(util["u" /* isError */])(_context4.t0)
            });

          case 21:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee3, null, [[0, 17]]);
  }));
  return DealInventory_dealInventoryModify_getBestDealDetail.apply(this, arguments);
}

function canRunTask(_x4) {
  return _canRunTask.apply(this, arguments);
}

function _canRunTask() {
  _canRunTask = dealInventoryModify_asyncToGenerator( /*#__PURE__*/dealInventoryModify_regeneratorRuntime().mark(function _callee4(task) {
    var task_id, expiration_time, res, status;
    return dealInventoryModify_regeneratorRuntime().wrap(function _callee4$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            task_id = task.task_id, expiration_time = task.expiration_time;
            _context5.next = 3;
            return Object(util["m" /* gatePost */])('api/v1/clientInfos', {
              type: 4,
              data: {
                task_id: task_id,
                expiration_time: expiration_time
              }
            }, 'task').catch(function () {});

          case 3:
            res = _context5.sent;
            status = res && res.data && res.data.status;
            return _context5.abrupt("return", [0, 1].indexOf(status) > -1);

          case 6:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee4);
  }));
  return _canRunTask.apply(this, arguments);
}

function dealInventoryModify(_x5) {
  return _dealInventoryModify.apply(this, arguments);
}

function _dealInventoryModify() {
  _dealInventoryModify = dealInventoryModify_asyncToGenerator( /*#__PURE__*/dealInventoryModify_regeneratorRuntime().mark(function _callee5(task) {
    var count,
        res,
        canRun,
        _args6 = arguments;
    return dealInventoryModify_regeneratorRuntime().wrap(function _callee5$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            count = _args6.length > 1 && _args6[1] !== undefined ? _args6[1] : 0;
            _context6.next = 3;
            return dealInventoryModify_run(task);

          case 3:
            res = _context6.sent;
            res.code !== 0 && (task.error_time = 10); // 没成功就在有效期内，每隔一分钟重试一次，最多重试五次

            if (!(res.code !== 0)) {
              _context6.next = 14;
              break;
            }

            _context6.next = 8;
            return canRunTask(task);

          case 8:
            canRun = _context6.sent;

            if (!(canRun && count < 5)) {
              _context6.next = 14;
              break;
            }

            log["a" /* default */].setLog("\u79D2\u6740\u8C03\u5E93\u5B58\u5931\u8D25\uFF0C\u5373\u5C06\u91CD\u8BD5,\u5F53\u524D\u91CD\u8BD5\u6B21\u6570\uFF1A".concat(count + 1));
            _context6.next = 13;
            return Object(util["h" /* delayed */])(60 * 1000);

          case 13:
            return _context6.abrupt("return", dealInventoryModify(task, ++count));

          case 14:
            res.code !== 0 && (task.error_time = 10);
            return _context6.abrupt("return", res);

          case 16:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee5);
  }));
  return _dealInventoryModify.apply(this, arguments);
}
// CONCATENATED MODULE: ./src/core/getStorePerformance.js
function getStorePerformance_typeof(obj) { "@babel/helpers - typeof"; return getStorePerformance_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getStorePerformance_typeof(obj); }

function getStorePerformance_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = getStorePerformance_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function getStorePerformance_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getStorePerformance_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getStorePerformance_arrayLikeToArray(o, minLen); }

function getStorePerformance_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getStorePerformance_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getStorePerformance_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getStorePerformance_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getStorePerformance_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getStorePerformance_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getStorePerformance_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getStorePerformance_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }






var performance = {
  notificationsList: [],
  // 通知列表
  detailList: [],
  // 通知详情列表
  hasFailed: false,
  // 是否有任务失败,
  handleError: function handleError(task, status, msg) {
    log["a" /* default */].setLog("[\u540C\u6B65\u5E97\u94FA\u7EE9\u6548\u901A\u77E5]".concat(msg));
    task.status = status;
    task.error_msg = msg;
  },

  /**
   * @description 执行抓取通知列表任务
   */
  runNotificationsTask: function runNotificationsTask(task) {
    var _this = this;

    return getStorePerformance_asyncToGenerator( /*#__PURE__*/getStorePerformance_regeneratorRuntime().mark(function _callee() {
      var existSite, notificationsList;
      return getStorePerformance_regeneratorRuntime().wrap(function _callee$(_context) {
        while (1) {
          switch (_context.prev = _context.next) {
            case 0:
              _context.prev = 0;
              _context.next = 3;
              return amazon["a" /* default */].checkSite(task.market_code, task, true);

            case 3:
              existSite = _context.sent;

              if (existSite) {
                _context.next = 6;
                break;
              }

              return _context.abrupt("return", {
                code: 2,
                msg: task.msg
              });

            case 6:
              _context.next = 8;
              return _this.getNotificationsList(task);

            case 8:
              notificationsList = _context.sent;
              console.log("[\u540C\u6B65\u5E97\u94FA\u7EE9\u6548\u901A\u77E5]\u5E97\u94FA\uFF1A".concat(task.task_id, "] \u2014\u2014\u6293\u53D6\u5230\u901A\u77E5\u5217\u8868\u5171\uFF1A").concat(notificationsList ? notificationsList.length : 0, "\u6761,\u7AD9\u70B9\uFF1A").concat(task.market_code));
              return _context.abrupt("return", notificationsList);

            case 13:
              _context.prev = 13;
              _context.t0 = _context["catch"](0);
              Object(util["B" /* recordLog */])("[\u540C\u6B65\u5E97\u94FA\u7EE9\u6548\u901A\u77E5]\u5E97\u94FA\uFF1A".concat(task.task_id, "]\u6293\u53D6\u901A\u77E5\u5217\u8868\u62A5\u9519----").concat(Object(util["u" /* isError */])(_context.t0), ",\u7AD9\u70B9\uFF1A").concat(task.market_code), "error");

            case 16:
            case "end":
              return _context.stop();
          }
        }
      }, _callee, null, [[0, 13]]);
    }))();
  },
  // /**
  //  * @description 执行抓取message任务
  //  */
  runMessageTask: function runMessageTask(notifications) {
    var _this2 = this;

    return getStorePerformance_asyncToGenerator( /*#__PURE__*/getStorePerformance_regeneratorRuntime().mark(function _callee3() {
      var batchDetails, detailList;
      return getStorePerformance_regeneratorRuntime().wrap(function _callee3$(_context3) {
        while (1) {
          switch (_context3.prev = _context3.next) {
            case 0:
              _context3.next = 2;
              return Promise.all(notifications.map( /*#__PURE__*/function () {
                var _ref = getStorePerformance_asyncToGenerator( /*#__PURE__*/getStorePerformance_regeneratorRuntime().mark(function _callee2(item) {
                  var detail;
                  return getStorePerformance_regeneratorRuntime().wrap(function _callee2$(_context2) {
                    while (1) {
                      switch (_context2.prev = _context2.next) {
                        case 0:
                          _context2.next = 2;
                          return _this2.getNotificationDetail(item.id);

                        case 2:
                          detail = _context2.sent;
                          return _context2.abrupt("return", detail);

                        case 4:
                        case "end":
                          return _context2.stop();
                      }
                    }
                  }, _callee2);
                }));

                return function (_x) {
                  return _ref.apply(this, arguments);
                };
              }()));

            case 2:
              batchDetails = _context3.sent;
              // 只保留成功的详情数据
              detailList = batchDetails.filter(function (detail) {
                return detail;
              });
              return _context3.abrupt("return", detailList);

            case 5:
            case "end":
              return _context3.stop();
          }
        }
      }, _callee3);
    }))();
  },

  /**
   * @description 获取通知列表notifications
   */
  getNotificationsList: function getNotificationsList(task) {
    var _arguments = arguments,
        _this3 = this;

    return getStorePerformance_asyncToGenerator( /*#__PURE__*/getStorePerformance_regeneratorRuntime().mark(function _callee4() {
      var nextPageToken, notifications, errCount, parsedData, startDate, endDate, params, _yield$axios, data, _iterator, _step, item;

      return getStorePerformance_regeneratorRuntime().wrap(function _callee4$(_context4) {
        while (1) {
          switch (_context4.prev = _context4.next) {
            case 0:
              nextPageToken = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : "";
              notifications = _arguments.length > 2 && _arguments[2] !== undefined ? _arguments[2] : [];
              errCount = _arguments.length > 3 && _arguments[3] !== undefined ? _arguments[3] : 0;
              parsedData = JSON.parse(task.data); // 获取时间字段

              startDate = new Date(parsedData.report_custom_date_start).getTime();
              endDate = new Date(parsedData.report_custom_date_end).getTime();
              params = {
                pageSize: 25,
                pageNumber: 1,
                sortBy: "NewestToOldest",
                filterBy: "Any",
                startDate: startDate,
                endDate: endDate,
                nextPageToken: nextPageToken
              };
              _context4.prev = 7;
              _context4.next = 10;
              return axios_default()({
                url: amazon["a" /* default */].host + "/performance/api/notification",
                method: "GET",
                params: params
              });

            case 10:
              _yield$axios = _context4.sent;
              data = _yield$axios.data;

              if (!(!data || !data.list)) {
                _context4.next = 15;
                break;
              }

              Object(util["B" /* recordLog */])("getNotificationsList\u8FD4\u56DE\u6570\u636E\u4E3A\u7A7A---".concat(JSON.stringify(data)), "info");
              return _context4.abrupt("return", []);

            case 15:
              if (!(data.list.length == 0)) {
                _context4.next = 17;
                break;
              }

              return _context4.abrupt("return", []);

            case 17:
              _iterator = getStorePerformance_createForOfIteratorHelper(data.list);

              try {
                for (_iterator.s(); !(_step = _iterator.n()).done;) {
                  item = _step.value;
                  notifications.push(item);
                } // 如果还有下一页，则继续获取

              } catch (err) {
                _iterator.e(err);
              } finally {
                _iterator.f();
              }

              if (!data.nextPageToken) {
                _context4.next = 23;
                break;
              }

              _context4.next = 22;
              return _this3.getNotificationsList(task, data.nextPageToken, notifications);

            case 22:
              return _context4.abrupt("return", _context4.sent);

            case 23:
              return _context4.abrupt("return", notifications);

            case 26:
              _context4.prev = 26;
              _context4.t0 = _context4["catch"](7);

              if (!(errCount < 2)) {
                _context4.next = 35;
                break;
              }

              console.log("[".concat(task.task_id, "] \u5E97\u94FA\u7EE9\u6548\u901A\u77E5\u5217\u8868\u83B7\u53D6\u5931\u8D25\uFF0C\u5373\u5C06\u91CD\u8BD5\u7B2C ").concat(errCount + 1, " \u6B21----").concat(Object(util["u" /* isError */])(_context4.t0)), "error");
              _context4.next = 32;
              return Object(util["h" /* delayed */])(3000);

            case 32:
              _context4.next = 34;
              return _this3.getNotificationsList(task, nextPageToken, notifications, ++errCount);

            case 34:
              return _context4.abrupt("return", _context4.sent);

            case 35:
              performance.hasFailed = true;
              return _context4.abrupt("return", notifications);

            case 37:
            case "end":
              return _context4.stop();
          }
        }
      }, _callee4, null, [[7, 26]]);
    }))();
  },

  /**
   * @description 获取通知详情
   */
  getNotificationDetail: function getNotificationDetail(id) {
    var _arguments2 = arguments,
        _this4 = this;

    return getStorePerformance_asyncToGenerator( /*#__PURE__*/getStorePerformance_regeneratorRuntime().mark(function _callee5() {
      var count, _yield$axios2, data, item, processedBody;

      return getStorePerformance_regeneratorRuntime().wrap(function _callee5$(_context5) {
        while (1) {
          switch (_context5.prev = _context5.next) {
            case 0:
              count = _arguments2.length > 1 && _arguments2[1] !== undefined ? _arguments2[1] : 0;
              _context5.prev = 1;
              _context5.next = 4;
              return axios_default()({
                url: "".concat(amazon["a" /* default */].host, "/performance/api/notification/").concat(id),
                method: "GET"
              });

            case 4:
              _yield$axios2 = _context5.sent;
              data = _yield$axios2.data;

              if (!data) {
                _context5.next = 12;
                break;
              }

              item = data.item; // 检查 item 是否有内容和 body

              if (item.content && item.content.body) {
                // 处理 item.content.body 中的 HTML 内容
                processedBody = _this4.processHtmlContent(item.content.body); // 将处理后的内容替换回原来的 body

                item.content.body = processedBody;
              }

              return _context5.abrupt("return", item);

            case 12:
              throw new Error("\u83B7\u53D6\u901A\u77E5\u8BE6\u60C5\u5931\u8D25\uFF0C\u6570\u636E\u4E3A\u7A7A");

            case 13:
              _context5.next = 26;
              break;

            case 15:
              _context5.prev = 15;
              _context5.t0 = _context5["catch"](1);

              if (!(count < 2)) {
                _context5.next = 23;
                break;
              }

              _context5.next = 20;
              return Object(util["h" /* delayed */])(3000);

            case 20:
              _context5.next = 22;
              return _this4.getNotificationDetail(id, count + 1);

            case 22:
              return _context5.abrupt("return", _context5.sent);

            case 23:
              Object(util["B" /* recordLog */])("\u62C9\u53D6\u901A\u77E5".concat(id, "\u8BE6\u60C5\u5931\u8D25\uFF0C\u5DF2\u8FBE\u6700\u5927\u91CD\u8BD5\u6B21\u6570\u2014\u2014").concat(Object(util["u" /* isError */])(_context5.t0)), "error");
              performance.hasFailed = true;
              return _context5.abrupt("return", false);

            case 26:
            case "end":
              return _context5.stop();
          }
        }
      }, _callee5, null, [[1, 15]]);
    }))();
  },

  /**
   * @description 清洗body数据
   */
  processHtmlContent: function processHtmlContent(htmlContent) {
    var $ = cheerio_default.a.load(htmlContent); // 遍历所有 <a> 标签并替换为文本格式

    $("a").each(function () {
      var linkText = $(this).text();
      var href = $(this).attr("href");
      $(this).replaceWith("<-a- href=\"".concat(href, "\">").concat(linkText, "<-b->"));
    });
    $('p').each(function () {
      var textContent = $(this).text();
      $(this).replaceWith("".concat(textContent, "<-br><-br>"));
    }); // 获取根元素下的所有文本内容

    var allText = $("body").text(); // 将每个换行符替换为两个 <br> 标签

    var cleanedText = allText.replace(/[ \t]+/g, " ").replace(/^\s+|\s+$/gm, "").replace(/\n/g, "<br><br>").replace(/<-br><-br>/g, "<br><br>");
    return cleanedText;
  }
};
var getStorePerformance = /*#__PURE__*/function () {
  var _ref2 = getStorePerformance_asyncToGenerator( /*#__PURE__*/getStorePerformance_regeneratorRuntime().mark(function _callee6(task) {
    var detailList, notificationsList, hasFailed, code, data;
    return getStorePerformance_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            performance.hasFailed = false; // 重置hasFailed标志

            detailList = [];
            _context6.next = 4;
            return performance.runNotificationsTask(task);

          case 4:
            notificationsList = _context6.sent;

            if (!(!notificationsList || notificationsList.length === 0)) {
              _context6.next = 9;
              break;
            }

            task.msg = 'notificationsList为空，没有通知可获取。';
            _context6.next = 16;
            break;

          case 9:
            if (!((notificationsList === null || notificationsList === void 0 ? void 0 : notificationsList.code) === 2)) {
              _context6.next = 13;
              break;
            }

            performance.hasFailed = true;
            _context6.next = 16;
            break;

          case 13:
            _context6.next = 15;
            return performance.runMessageTask(notificationsList, task);

          case 15:
            detailList = _context6.sent;

          case 16:
            // 若有上报失败，则code为4
            hasFailed = performance.hasFailed;
            code = hasFailed ? 4 : 0;
            data = {
              type_id: task.type_id,
              seller_id: task.seller_id,
              code: code,
              msg: task.msg,
              result: {
                detailList: detailList
              }
            };
            console.log(data, "data=============");
            return _context6.abrupt("return", data);

          case 21:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6);
  }));

  return function getStorePerformance(_x2) {
    return _ref2.apply(this, arguments);
  };
}();
// CONCATENATED MODULE: ./src/core/getDelayedSettlementReport.js
function getDelayedSettlementReport_typeof(obj) { "@babel/helpers - typeof"; return getDelayedSettlementReport_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getDelayedSettlementReport_typeof(obj); }

function getDelayedSettlementReport_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getDelayedSettlementReport_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getDelayedSettlementReport_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getDelayedSettlementReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getDelayedSettlementReport_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getDelayedSettlementReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getDelayedSettlementReport_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

// 获取延迟结算报告





function requestDelayedSettlementReport(_x) {
  return _requestDelayedSettlementReport.apply(this, arguments);
}

function _requestDelayedSettlementReport() {
  _requestDelayedSettlementReport = getDelayedSettlementReport_asyncToGenerator( /*#__PURE__*/getDelayedSettlementReport_regeneratorRuntime().mark(function _callee2(task) {
    var endDate, endDateISO, _yield$nativeRequest, generatedReport, reportId;

    return getDelayedSettlementReport_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;
            endDate = Date.now();
            endDateISO = moment_default()(endDate).format('YYYY-MM-DDTHH:mm:ssZ');
            _context2.next = 5;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/payments/reports/api/request-report"), 'post', {
              accountType: 'PAYABLE',
              endDate: endDate,
              endDateISO: endDateISO,
              reportType: "SELLER_HOLD_DATE_RANGE",
              startDate: 1584662400000,
              startDateISO: "2020-03-20T08:00:00+08:00",
              timeRangeType: 'CUSTOM'
            });

          case 5:
            _yield$nativeRequest = _context2.sent;
            generatedReport = _yield$nativeRequest.generatedReport;
            reportId = _yield$nativeRequest.reportId;

            if (!(generatedReport && reportId)) {
              _context2.next = 12;
              break;
            }

            return _context2.abrupt("return", true);

          case 12:
            task.msg = "\u8BF7\u6C42\u83B7\u53D6\u5EF6\u8FDF\u7ED3\u7B97\u62A5\u544A\u5931\u8D25----,generatedReport:".concat(JSON.stringify(generatedReport), "---reportId:").concat(JSON.stringify(reportId));
            task.status = 14;
            log["a" /* default */].setLog(task.msg);

          case 15:
            _context2.next = 22;
            break;

          case 17:
            _context2.prev = 17;
            _context2.t0 = _context2["catch"](0);
            task.msg = "\u8BF7\u6C42\u83B7\u53D6\u5EF6\u8FDF\u7ED3\u7B97\u62A5\u544A\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context2.t0));
            task.status = 14;
            log["a" /* default */].setLog(task.msg);

          case 22:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 17]]);
  }));
  return _requestDelayedSettlementReport.apply(this, arguments);
}

var getDelayedSettlementReport = /*#__PURE__*/function () {
  var _ref = getDelayedSettlementReport_asyncToGenerator( /*#__PURE__*/getDelayedSettlementReport_regeneratorRuntime().mark(function _callee(task) {
    var existSite;
    return getDelayedSettlementReport_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return amazon["a" /* default */].checkSite(task.market_code, task, true);

          case 2:
            existSite = _context.sent;

            if (existSite) {
              _context.next = 5;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 5:
            _context.next = 7;
            return requestDelayedSettlementReport(task);

          case 7:
            if (!_context.sent) {
              _context.next = 11;
              break;
            }

            return _context.abrupt("return", {
              code: 0,
              msg: '请求成功'
            });

          case 11:
            return _context.abrupt("return", {
              code: 1,
              msg: task.msg
            });

          case 12:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));

  return function getDelayedSettlementReport(_x2) {
    return _ref.apply(this, arguments);
  };
}();
// CONCATENATED MODULE: ./src/core/VC/getCartonLabelPDF.js
function getCartonLabelPDF_typeof(obj) { "@babel/helpers - typeof"; return getCartonLabelPDF_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getCartonLabelPDF_typeof(obj); }

function getCartonLabelPDF_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getCartonLabelPDF_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getCartonLabelPDF_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getCartonLabelPDF_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getCartonLabelPDF_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getCartonLabelPDF_ownKeys(Object(source), !0).forEach(function (key) { getCartonLabelPDF_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getCartonLabelPDF_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getCartonLabelPDF_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getCartonLabelPDF_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getCartonLabelPDF_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getCartonLabelPDF_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getCartonLabelPDF_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }








function checkDuplicateAsns(_x) {
  return _checkDuplicateAsns.apply(this, arguments);
}
/**
 * 获取外部ID列表
 * @param {string} arn - 亚马逊资源名称
 * @param {number} cartonCount - 货箱数量
 * @returns {Promise<Array<string>>} - 返回外部ID列表
 */


function _checkDuplicateAsns() {
  _checkDuplicateAsns = getCartonLabelPDF_asyncToGenerator( /*#__PURE__*/getCartonLabelPDF_regeneratorRuntime().mark(function _callee2(task) {
    var url, requestHearderId, res;
    return getCartonLabelPDF_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;
            url = "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/checkDuplicateAsns?arn=").concat(task.data.arn); // 监听请求添加referer

            _context2.next = 4;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Referer',
              value: "".concat(amazon["a" /* default */].host, "/kt/vendor/members/afi-shipment-mgr/labelmapping?arn=").concat(task.data.arn, "&isLegacy=false")
            }], "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/checkDuplicateAsns*"));

          case 4:
            requestHearderId = _context2.sent;
            _context2.next = 7;
            return Object(util["z" /* nativeRequest */])(url, 'get');

          case 7:
            res = _context2.sent;
            // 移除请求头监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

            if (!(res || res.hasOwnProperty('duplicateAsnIds'))) {
              _context2.next = 13;
              break;
            }

            return _context2.abrupt("return", true);

          case 13:
            task.status = 14;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]checkDuplicateAsns error,data:".concat(JSON.stringify(res));
            log["a" /* default */].setLog(task.msg);
            return _context2.abrupt("return", false);

          case 17:
            _context2.next = 25;
            break;

          case 19:
            _context2.prev = 19;
            _context2.t0 = _context2["catch"](0);
            task.status = 13;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]checkDuplicateAsns error,".concat(Object(util["u" /* isError */])(_context2.t0));
            log["a" /* default */].setLog(task.msg);
            return _context2.abrupt("return", false);

          case 25:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 19]]);
  }));
  return _checkDuplicateAsns.apply(this, arguments);
}

function getExternalIds(_x2) {
  return _getExternalIds.apply(this, arguments);
}
/**
 * 获取CSRF令牌
 * @returns {Promise<string>} - 返回CSRF令牌
 */


function _getExternalIds() {
  _getExternalIds = getCartonLabelPDF_asyncToGenerator( /*#__PURE__*/getCartonLabelPDF_regeneratorRuntime().mark(function _callee3(_ref) {
    var task, arn, cartonCount, url, requestHearderId, res;
    return getCartonLabelPDF_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            task = _ref.task, arn = _ref.arn, cartonCount = _ref.cartonCount;
            _context3.prev = 1;
            url = "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/generateSSCCList?cartonCount=").concat(cartonCount); // 监听请求添加referer

            _context3.next = 5;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Referer',
              value: "".concat(amazon["a" /* default */].host, "/kt/vendor/members/afi-shipment-mgr/labelmapping?arn=").concat(arn, "&isLegacy=false")
            }], "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/generateSSCCList*"));

          case 5:
            requestHearderId = _context3.sent;
            _context3.next = 8;
            return Object(util["z" /* nativeRequest */])(url, 'get');

          case 8:
            res = _context3.sent;
            // 移除请求头监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

            if (!(!res || !res.length)) {
              _context3.next = 15;
              break;
            }

            task.status = 14;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u83B7\u53D6\u5916\u90E8ID\u5931\u8D25,\u6570\u636E\u4E3A\u7A7A---data:".concat(res);
            log["a" /* default */].setLog(task.msg);
            return _context3.abrupt("return", false);

          case 15:
            return _context3.abrupt("return", res);

          case 18:
            _context3.prev = 18;
            _context3.t0 = _context3["catch"](1);
            task.status = 13;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u8BF7\u6C42\u83B7\u53D6\u5916\u90E8ID\u63A5\u53E3\u5931\u8D25,".concat(Object(util["u" /* isError */])(_context3.t0));
            log["a" /* default */].setLog(task.msg);
            return _context3.abrupt("return", false);

          case 24:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[1, 18]]);
  }));
  return _getExternalIds.apply(this, arguments);
}

function getCSRFToken(_x3) {
  return _getCSRFToken.apply(this, arguments);
}
/**
 * 获取shipment详情信息
 * @param {string} arn - 亚马逊资源名称
 * @param {boolean} getAsnId - 是否获取asnId
 * @returns {Promise<Object>} - 返回shipment详情
 */


function _getCSRFToken() {
  _getCSRFToken = getCartonLabelPDF_asyncToGenerator( /*#__PURE__*/getCartonLabelPDF_regeneratorRuntime().mark(function _callee4(task) {
    var url, csrfToken;
    return getCartonLabelPDF_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            url = "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/getCSRF");
            _context4.next = 4;
            return Object(util["z" /* nativeRequest */])(url, 'get');

          case 4:
            csrfToken = _context4.sent;

            if (csrfToken) {
              _context4.next = 10;
              break;
            }

            task.status = 14;
            task.msg = '[获取VC-PO货件箱唛]获取CSRF令牌失败,数据为空';
            log["a" /* default */].setLog(task.msg);
            return _context4.abrupt("return", false);

          case 10:
            return _context4.abrupt("return", csrfToken);

          case 13:
            _context4.prev = 13;
            _context4.t0 = _context4["catch"](0);
            task.status = 13;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u8BF7\u6C42getCSRF\u63A5\u53E3\u5931\u8D25,".concat(_context4.t0.message);
            log["a" /* default */].setLog(task.msg);
            return _context4.abrupt("return", false);

          case 19:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 13]]);
  }));
  return _getCSRFToken.apply(this, arguments);
}

function getShipmentDetail(_x4) {
  return _getShipmentDetail.apply(this, arguments);
}
/**
 * 获取lnData
 * @param {Object} task - 任务对象
 * @param {string} arn - 亚马逊资源名称
 * @returns {Promise<Object>} - 返回lnData
 */


function _getShipmentDetail() {
  _getShipmentDetail = getCartonLabelPDF_asyncToGenerator( /*#__PURE__*/getCartonLabelPDF_regeneratorRuntime().mark(function _callee5(_ref2) {
    var task, arn, _ref2$getAsnId, getAsnId, requestHearderId, url, res;

    return getCartonLabelPDF_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            task = _ref2.task, arn = _ref2.arn, _ref2$getAsnId = _ref2.getAsnId, getAsnId = _ref2$getAsnId === void 0 ? false : _ref2$getAsnId;
            _context5.prev = 1;
            _context5.next = 4;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Referer',
              value: "".concat(amazon["a" /* default */].host, "/kt/vendor/members/afi-shipment-mgr/shipmentdetail?rr=").concat(arn)
            }], 'https://vendorcentral*^hz/vendor/members/shipment-mgr/resource/shipmentDetail*');

          case 4:
            requestHearderId = _context5.sent;
            url = "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/shipmentDetail?type=rr&id=").concat(arn);
            _context5.next = 8;
            return Object(util["z" /* nativeRequest */])(url, 'get');

          case 8:
            res = _context5.sent;
            // 移除请求头监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

            if (!(!res || !res.items || !res.items.length)) {
              _context5.next = 15;
              break;
            }

            task.status = 14;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u83B7\u53D6shipment\u8BE6\u60C5\u5931\u8D25,\u6570\u636E\u4E3A\u7A7A---data:".concat(res);
            log["a" /* default */].setLog(task.msg);
            return _context5.abrupt("return", false);

          case 15:
            if (!(getAsnId && !res.asnId)) {
              _context5.next = 20;
              break;
            }

            task.status = 14;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u672A\u83B7\u53D6\u5230asnId,asn\u53EF\u80FD\u672A\u521B\u5EFA\u6210\u529F---data:".concat(res);
            log["a" /* default */].setLog(task.msg);
            return _context5.abrupt("return", false);

          case 20:
            return _context5.abrupt("return", getAsnId ? res.asnId : res);

          case 23:
            _context5.prev = 23;
            _context5.t0 = _context5["catch"](1);
            task.status = 13;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u8BF7\u6C42\u83B7\u53D6shipment\u8BE6\u60C5\u63A5\u53E3\u5931\u8D25,".concat(Object(util["u" /* isError */])(_context5.t0));
            log["a" /* default */].setLog(task.msg);
            return _context5.abrupt("return", false);

          case 29:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[1, 23]]);
  }));
  return _getShipmentDetail.apply(this, arguments);
}

function getLnData(_x5) {
  return _getLnData.apply(this, arguments);
}
/**
 * 创建carton label
 * @param {Object} shipmentDetail - shipment详情
 * @param {Array<string>} externalIds - 外部ID列表
 * @param {string} csrfToken - CSRF令牌
 * @param {Object} task - 任务对象
 * @returns {Promise<Object>} - 返回创建结果
 */


function _getLnData() {
  _getLnData = getCartonLabelPDF_asyncToGenerator( /*#__PURE__*/getCartonLabelPDF_regeneratorRuntime().mark(function _callee6(_ref3) {
    var task, arn, url, requestHearderId, res;
    return getCartonLabelPDF_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            task = _ref3.task, arn = _ref3.arn;
            _context6.prev = 1;
            url = "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/getLnData?arn=").concat(arn); // 设置获取 shipment 详情的请求头

            _context6.next = 5;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Referer',
              value: "".concat(amazon["a" /* default */].host, "/kt/vendor/members/afi-shipment-mgr/labelmapping?arn=").concat(arn, "&isLegacy=false")
            }], "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/getLnData*"));

          case 5:
            requestHearderId = _context6.sent;
            _context6.next = 8;
            return Object(util["z" /* nativeRequest */])(url, 'get');

          case 8:
            res = _context6.sent;
            // 移除请求头监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

            if (!(!res || !res.purchaseOrderVOList || !res.purchaseOrderVOList.length || !res.lnVO || !res.lnVO.lnDetails)) {
              _context6.next = 15;
              break;
            }

            task.status = 14;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u83B7\u53D6lnData\u5931\u8D25,\u6570\u636E\u4E3A\u7A7A---data:".concat(res);
            log["a" /* default */].setLog(task.msg);
            return _context6.abrupt("return", false);

          case 15:
            return _context6.abrupt("return", res);

          case 18:
            _context6.prev = 18;
            _context6.t0 = _context6["catch"](1);
            task.status = 13;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u8BF7\u6C42\u83B7\u53D6shipment\u8BE6\u60C5\u63A5\u53E3\u5931\u8D25,".concat(Object(util["u" /* isError */])(_context6.t0));
            log["a" /* default */].setLog(task.msg);
            return _context6.abrupt("return", false);

          case 24:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6, null, [[1, 18]]);
  }));
  return _getLnData.apply(this, arguments);
}

function createAsnLabelShipment(_x6) {
  return _createAsnLabelShipment.apply(this, arguments);
}
/**
 * 构建创建请求数据
 * @param {Object} shipmentDetail - shipment详情
 * @param {Array<string>} externalIds - 外部ID列表
 * @returns {Promise<Object>} - 返回创建结果
 */


function _createAsnLabelShipment() {
  _createAsnLabelShipment = getCartonLabelPDF_asyncToGenerator( /*#__PURE__*/getCartonLabelPDF_regeneratorRuntime().mark(function _callee7(_ref4) {
    var task, arn, shipmentDetail, otherDetail, externalIds, csrfToken, fixedMediaFormatId, fixedExternalContainerIdType, fixedShipmentType, url, params, requestHearderId, res;
    return getCartonLabelPDF_regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            task = _ref4.task, arn = _ref4.arn, shipmentDetail = _ref4.shipmentDetail, otherDetail = _ref4.otherDetail, externalIds = _ref4.externalIds, csrfToken = _ref4.csrfToken, fixedMediaFormatId = _ref4.fixedMediaFormatId, fixedExternalContainerIdType = _ref4.fixedExternalContainerIdType, fixedShipmentType = _ref4.fixedShipmentType;
            _context7.prev = 1;
            url = "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/createUpdateAsnLabelShipment");
            params = buildCreateRequestData({
              task: task,
              shipmentDetail: shipmentDetail,
              externalIds: externalIds,
              otherDetail: otherDetail,
              fixedMediaFormatId: fixedMediaFormatId,
              fixedExternalContainerIdType: fixedExternalContainerIdType,
              fixedShipmentType: fixedShipmentType
            });

            if (params) {
              _context7.next = 6;
              break;
            }

            return _context7.abrupt("return", false);

          case 6:
            console.log('[获取VC-PO货件箱唛-构建的请求参数]---', params); // 上报构建参数

            Object(util["B" /* recordLog */])('获取VC-PO货件箱唛-构建的请求参数', 'info', {
              taskId: task.taskId,
              params: params
            }); // 监听请求添加referer

            _context7.next = 10;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Origin',
              value: amazon["a" /* default */].host
            }, {
              name: 'Referer',
              value: "".concat(amazon["a" /* default */].host, "/kt/vendor/members/afi-shipment-mgr/labelmapping?arn=").concat(arn, "&isLegacy=false")
            }], "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/createUpdateAsnLabelShipment"));

          case 10:
            requestHearderId = _context7.sent;
            _context7.next = 13;
            return Object(util["z" /* nativeRequest */])(url, 'post', params, {
              'anti-csrftoken-a2z': csrfToken
            });

          case 13:
            res = _context7.sent;
            // 移除请求头监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);
            return _context7.abrupt("return", res);

          case 18:
            _context7.prev = 18;
            _context7.t0 = _context7["catch"](1);
            task.status = 13;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u521B\u5EFAcarton label\u8BF7\u6C42\u5931\u8D25,".concat(Object(util["u" /* isError */])(_context7.t0)); // 创建错误，上报获取到的接口数据

            log["a" /* default */].report(task.msg, 'error', {
              taskId: task.taskId,
              shipmentDetail: shipmentDetail,
              externalIds: externalIds,
              otherDetail: otherDetail,
              csrfToken: csrfToken
            });
            return _context7.abrupt("return", false);

          case 24:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7, null, [[1, 18]]);
  }));
  return _createAsnLabelShipment.apply(this, arguments);
}

function buildCreateRequestData(_ref5) {
  var task = _ref5.task,
      shipmentDetail = _ref5.shipmentDetail,
      externalIds = _ref5.externalIds,
      otherDetail = _ref5.otherDetail,
      fixedMediaFormatId = _ref5.fixedMediaFormatId,
      fixedExternalContainerIdType = _ref5.fixedExternalContainerIdType,
      fixedShipmentType = _ref5.fixedShipmentType;
  var _task$data = task.data,
      arn = _task$data.arn,
      submitAsn = _task$data.submitAsn,
      shipmentType = _task$data.shipmentType,
      vendorCode = _task$data.vendorCode,
      asnContainerVOList = _task$data.asnContainerVOList;
  var poIds = shipmentDetail.poIds;
  var lnVO = otherDetail.lnVO,
      purchaseOrderVOList = otherDetail.purchaseOrderVOList;
  var lnDetails = lnVO.lnDetails,
      lnHeader = lnVO.lnHeader;

  try {
    return {
      asnLabelShipmentVO: {
        freightClassRange: lnDetails.freightClassRange,
        mediaFormatId: fixedMediaFormatId || lnDetails.mediaFormatId,
        submissionMode: 'ONLINE',
        // 写死ONLINE
        cartonCount: asnContainerVOList.length,
        arn: arn,
        labelRequired: true,
        destinationFC: shipmentDetail.shipToFC,
        weight: shipmentDetail.weight,
        weightUOM: shipmentDetail.weightUOM,
        volume: shipmentDetail.volume,
        volumeUOM: shipmentDetail.volumeUOM,
        freightTerms: 'Collect',
        shipFromAddress: lnHeader.shipFrom,
        scac: shipmentDetail.carrierScac || 'NCSL',
        stackedPalletCount: lnDetails.stackedPalletCount,
        unstackedPalletCount: lnDetails.unstackedPalletCount,
        shipToAddress: lnHeader.shipTo,
        bolNumber: lnHeader.bolNumber || null,
        poList: poIds,
        refdocStatus: 'DRAFT',
        asnContainerVOList: asnContainerVOList.map(function (_ref6, index) {
          var containerType = _ref6.containerType,
              cartonSerialNumber = _ref6.cartonSerialNumber,
              externalContainerIdList = _ref6.externalContainerIdList,
              containerItems = _ref6.containerItems;
          return {
            containerType: containerType,
            cartonSerialNumber: cartonSerialNumber,
            externalContainerIdList: externalContainerIdList.map(function (i) {
              return getCartonLabelPDF_objectSpread(getCartonLabelPDF_objectSpread({}, i), {}, {
                externalId: externalIds[index],
                externalContainerIdType: fixedExternalContainerIdType || i.externalContainerIdType
              });
            }),
            // 根据containerItems的asin找到otherDetail.purchaseOrderVOList.asins中的asin，将其信息填充
            // findItem是otherDetail.purchaseOrderVOList，findAsin是otherDetail.purchaseOrderVOList.itemData
            containerItems: containerItems.map(function (i) {
              var findAsin;
              purchaseOrderVOList.forEach(function (_i) {
                if (findAsin) return;
                findAsin = _i.itemData.find(function (_ref7) {
                  var asin = _ref7.asin;
                  return asin === i.asin;
                });
              });
              return getCartonLabelPDF_objectSpread(getCartonLabelPDF_objectSpread({}, i), {}, {
                externalId: findAsin.sku,
                externalIdType: findAsin.externalIdType,
                modelNumber: findAsin.modelNumber,
                productDescription: findAsin.productDescription,
                isPerishable: false,
                expiryRequired: findAsin.expiryRequired,
                marketplaceId: findAsin.marketplaceId,
                mcid: findAsin.mcid,
                msku: findAsin.msku,
                gtin: findAsin.gtin,
                aggregateQuantity: findAsin.aggregateQuantity,
                ibq: findAsin.ibq,
                quantityUnit: findAsin.quantityUnit,
                glProductCode: findAsin.glProductCode,
                lotNumberValue: findAsin.lotNumber
              });
            })
          };
        }),
        palletLabelRequired: shipmentDetail.canPrintLabels,
        shipmentType: fixedShipmentType || shipmentType || 'LESS_THAN_TRUCKLOAD',
        vendorCode: vendorCode
      },
      submitAsn: submitAsn
    };
  } catch (e) {
    task.status = 14;
    task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u6784\u5EFA\u521B\u5EFA\u8BF7\u6C42\u6570\u636E\u5931\u8D25,".concat(Object(util["u" /* isError */])(e));
    log["a" /* default */].report(task.msg, 'error', {
      taskId: task.taskId,
      shipmentDetail: shipmentDetail,
      externalIds: externalIds,
      otherDetail: otherDetail
    });
    return false;
  }
}

function nextCreate(_x7) {
  return _nextCreate.apply(this, arguments);
}

function _nextCreate() {
  _nextCreate = getCartonLabelPDF_asyncToGenerator( /*#__PURE__*/getCartonLabelPDF_regeneratorRuntime().mark(function _callee8(_ref8) {
    var task, arn, shipmentDetail, otherDetail, externalIds, csrfToken, _createResult;

    return getCartonLabelPDF_regeneratorRuntime().wrap(function _callee8$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            task = _ref8.task, arn = _ref8.arn, shipmentDetail = _ref8.shipmentDetail, otherDetail = _ref8.otherDetail, externalIds = _ref8.externalIds, csrfToken = _ref8.csrfToken;
            _context8.prev = 1;
            _context8.next = 4;
            return createAsnLabelShipment({
              task: task,
              arn: arn,
              shipmentDetail: shipmentDetail,
              otherDetail: otherDetail,
              externalIds: externalIds,
              csrfToken: csrfToken,
              fixedMediaFormatId: 'FreightLoad',
              fixedExternalContainerIdType: 'SSCC',
              fixedShipmentType: 'LESS_THAN_TRUCKLOAD'
            });

          case 4:
            _createResult = _context8.sent;

            if (_createResult) {
              _context8.next = 7;
              break;
            }

            return _context8.abrupt("return", false);

          case 7:
            log["a" /* default */].setLog('[获取VC-PO货件箱唛-再次创建ASN标签shipment]完成，获取到数据---', JSON.stringify(_createResult));
            return _context8.abrupt("return", getShipmentDetail({
              task: task,
              arn: arn,
              getAsnId: true
            }));

          case 11:
            _context8.prev = 11;
            _context8.t0 = _context8["catch"](1);
            task.status = 13;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u518D\u6B21\u521B\u5EFA\u5931\u8D25,".concat(Object(util["u" /* isError */])(_context8.t0));
            log["a" /* default */].setLog(task.msg);
            return _context8.abrupt("return", false);

          case 17:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee8, null, [[1, 11]]);
  }));
  return _nextCreate.apply(this, arguments);
}

function getAmazonCartonLabelPDF(_x8) {
  return _getAmazonCartonLabelPDF.apply(this, arguments);
}
/**
 * 获取亚马逊货箱标签PDF
 * @param {Object} params - 参数对象
 * @param {string} params.taskId - 任务ID
 * @param {string} params.arn - 亚马逊资源名称
 * @param {number} params.cartonCount - 货箱数量
 * @returns {Promise<Object>} - 返回包含标签信息的对象
 */


function _getAmazonCartonLabelPDF() {
  _getAmazonCartonLabelPDF = getCartonLabelPDF_asyncToGenerator( /*#__PURE__*/getCartonLabelPDF_regeneratorRuntime().mark(function _callee9(_ref9) {
    var task, asnId, url, requestHearderId, _yield$axios, data, headers, name, oFile, fileRes, zip;

    return getCartonLabelPDF_regeneratorRuntime().wrap(function _callee9$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            task = _ref9.task, asnId = _ref9.asnId;
            _context9.prev = 1;
            url = "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/action/shipments-label-data"); // pdf
            // const url = `https://static.distributetop.com/7b75437b8d2d4e54ba6d12c393dbb923.pdf`
            // html
            // const url = `https://vendorcentral.amazon.com`
            // 监听请求添加referer

            _context9.next = 5;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Referer',
              value: "".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/printlabel?shipmentId=").concat(asnId, "&shipmentType=asn&outputType=pdf")
            }], url);

          case 5:
            requestHearderId = _context9.sent;
            _context9.next = 8;
            return axios_default()({
              method: 'GET',
              url: url,
              params: {
                shipmentId: asnId,
                shipmentType: 'asn',
                outputType: 'pdf'
              },
              responseType: 'blob'
            });

          case 8:
            _yield$axios = _context9.sent;
            data = _yield$axios.data;
            headers = _yield$axios.headers;
            // 移除请求头监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]); // 检查是否为html类型

            if (data) {
              _context9.next = 17;
              break;
            }

            task.status = 9;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u672A\u83B7\u53D6\u5230\u4E9A\u9A6C\u900A\u8D27\u7BB1\u6807\u7B7EPDF,\u6570\u636E\u4E3A\u7A7A,data---".concat(data);
            log["a" /* default */].setLog(task.msg);
            return _context9.abrupt("return", false);

          case 17:
            if (!(headers['content-type'].indexOf('text/html') > -1)) {
              _context9.next = 22;
              break;
            }

            task.status = 9;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u68C0\u6D4B\u5230\u4E9A\u9A6C\u900A\u8D27\u7BB1\u6807\u7B7EPDF\u662Fhtml\u7C7B\u578B";
            log["a" /* default */].setLog(task.msg);
            return _context9.abrupt("return", false);

          case 22:
            name = "cartonLabels_".concat(asnId, ".pdf");
            oFile = new File([data], name, {
              type: 'application/pdf'
            });
            // 文件压缩
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, data, {
              binary: true
            });
            _context9.next = 29;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"), {
                type: 'application/zip'
              });
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = cFile;
            }).catch(function (e) {
              log["a" /* default */].setLog('亚马逊货箱标签PDF压缩失败', Object(util["u" /* isError */])(e));
              fileRes = oFile;
            });

          case 29:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context9.abrupt("return", fileRes);

          case 35:
            _context9.prev = 35;
            _context9.t0 = _context9["catch"](1);
            task.status = 9;
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u8BF7\u6C42\u4E0B\u8F7D\u4E9A\u9A6C\u900A\u8D27\u7BB1\u6807\u7B7EPDF\u5931\u8D25,".concat(Object(util["u" /* isError */])(_context9.t0));
            log["a" /* default */].setLog(task.msg);
            return _context9.abrupt("return", false);

          case 41:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee9, null, [[1, 35]]);
  }));
  return _getAmazonCartonLabelPDF.apply(this, arguments);
}

function getCartonLabelPDF_run(_x9) {
  return VC_getCartonLabelPDF_run.apply(this, arguments);
}

function VC_getCartonLabelPDF_run() {
  VC_getCartonLabelPDF_run = getCartonLabelPDF_asyncToGenerator( /*#__PURE__*/getCartonLabelPDF_regeneratorRuntime().mark(function _callee10(task) {
    var eMsg, asnId, checked, externalIds, csrfToken, shipmentDetail, otherDetail, createResult, file;
    return getCartonLabelPDF_regeneratorRuntime().wrap(function _callee10$(_context10) {
      while (1) {
        switch (_context10.prev = _context10.next) {
          case 0:
            _context10.prev = 0;

            if (!(!task.data || !task.data.arn || !task.data.asnContainerVOList)) {
              _context10.next = 7;
              break;
            }

            task.status = 14;
            eMsg = !task.data ? '业务方数据为空' : !task.data.arn ? 'arn为空' : !task.data.asnContainerVOList ? 'asnContainerVOList为空' : '其他';
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]".concat(eMsg, "---").concat(JSON.stringify(task.data));
            log["a" /* default */].setLog(task.msg);
            return _context10.abrupt("return", false);

          case 7:
            _context10.next = 9;
            return getShipmentDetail({
              task: task,
              arn: task.data.arn,
              getAsnId: true
            });

          case 9:
            asnId = _context10.sent;

            if (asnId) {
              _context10.next = 61;
              break;
            }

            _context10.next = 13;
            return checkDuplicateAsns(task);

          case 13:
            checked = _context10.sent;

            if (checked) {
              _context10.next = 16;
              break;
            }

            return _context10.abrupt("return", false);

          case 16:
            log["a" /* default */].setLog('[获取VC-PO货件箱唛-checkDuplicateAsns]第一步完成，获取到数据---', JSON.stringify(checked)); // 步骤2: 获取externalId

            _context10.next = 19;
            return getExternalIds({
              task: task,
              arn: task.data.arn,
              cartonCount: task.data.asnContainerVOList.length
            });

          case 19:
            externalIds = _context10.sent;

            if (externalIds) {
              _context10.next = 22;
              break;
            }

            return _context10.abrupt("return", false);

          case 22:
            log["a" /* default */].setLog('[获取VC-PO货件箱唛-获取externalIds]第二步完成，获取到数据---', externalIds); // 步骤3: 获取csrftoken

            _context10.next = 25;
            return getCSRFToken(task);

          case 25:
            csrfToken = _context10.sent;

            if (csrfToken) {
              _context10.next = 28;
              break;
            }

            return _context10.abrupt("return", false);

          case 28:
            log["a" /* default */].setLog('[获取VC-PO货件箱唛-获取csrftoken]第三步完成，获取到数据---', csrfToken); // 步骤4: 获取shipment详情

            _context10.next = 31;
            return getShipmentDetail({
              task: task,
              arn: task.data.arn
            });

          case 31:
            shipmentDetail = _context10.sent;

            if (shipmentDetail) {
              _context10.next = 34;
              break;
            }

            return _context10.abrupt("return", false);

          case 34:
            log["a" /* default */].setLog('[获取VC-PO货件箱唛-获取shipment详情]第四步完成，获取到数据---');
            console.log(shipmentDetail); // 步骤5：获取getLnData（额外的shipment信息）

            _context10.next = 38;
            return getLnData({
              task: task,
              arn: task.data.arn
            });

          case 38:
            otherDetail = _context10.sent;

            if (otherDetail) {
              _context10.next = 41;
              break;
            }

            return _context10.abrupt("return", false);

          case 41:
            log["a" /* default */].setLog('[获取VC-PO货件箱唛-获取getLnData（额外的shipment信息）]第五步完成，获取到数据---');
            console.log(otherDetail); // 步骤6: 创建ASN标签shipment

            _context10.next = 45;
            return createAsnLabelShipment({
              task: task,
              arn: task.data.arn,
              shipmentDetail: shipmentDetail,
              otherDetail: otherDetail,
              externalIds: externalIds,
              csrfToken: csrfToken
            });

          case 45:
            createResult = _context10.sent;

            if (createResult) {
              _context10.next = 48;
              break;
            }

            return _context10.abrupt("return", false);

          case 48:
            log["a" /* default */].setLog('[获取VC-PO货件箱唛-创建ASN标签shipment]第六步完成，获取到数据---', JSON.stringify(createResult)); // 步骤7: 获取打印pdf所需要的shipmentId

            _context10.next = 51;
            return getShipmentDetail({
              task: task,
              arn: task.data.arn,
              getAsnId: true
            });

          case 51:
            asnId = _context10.sent;

            if (asnId) {
              _context10.next = 58;
              break;
            }

            _context10.next = 55;
            return nextCreate({
              task: task,
              arn: task.data.arn,
              shipmentDetail: shipmentDetail,
              otherDetail: otherDetail,
              externalIds: externalIds,
              csrfToken: csrfToken
            });

          case 55:
            asnId = _context10.sent;

            if (asnId) {
              _context10.next = 58;
              break;
            }

            return _context10.abrupt("return", false);

          case 58:
            log["a" /* default */].setLog('[获取VC-PO货件箱唛-获取打印pdf所需要的shipmentId]第七步完成，获取到数据---', asnId);
            _context10.next = 62;
            break;

          case 61:
            log["a" /* default */].setLog('[获取VC-PO货件箱唛]此箱唛已创建，直接获取货箱标签PDF---asnId', asnId);

          case 62:
            _context10.next = 64;
            return getAmazonCartonLabelPDF({
              task: task,
              asnId: asnId
            });

          case 64:
            file = _context10.sent;
            log["a" /* default */].setLog('[获取VC-PO货件箱唛-下载亚马逊货箱标签PDF]最后一步完成，获取到数据---', file);

            if (file) {
              _context10.next = 68;
              break;
            }

            return _context10.abrupt("return", false);

          case 68:
            return _context10.abrupt("return", {
              file: file,
              asnId: "".concat(asnId)
            });

          case 71:
            _context10.prev = 71;
            _context10.t0 = _context10["catch"](0);
            task.msg = "[\u83B7\u53D6VC-PO\u8D27\u4EF6\u7BB1\u551B]\u83B7\u53D6\u8D27\u7BB1\u6807\u7B7E\u5931\u8D25,".concat(Object(util["u" /* isError */])(_context10.t0));
            task.status = 14;
            log["a" /* default */].report(task.msg, 'error', {
              task_id: task.taskId
            });
            return _context10.abrupt("return", false);

          case 77:
          case "end":
            return _context10.stop();
        }
      }
    }, _callee10, null, [[0, 71]]);
  }));
  return VC_getCartonLabelPDF_run.apply(this, arguments);
}

var getCartonLabelPDF = /*#__PURE__*/function () {
  var _ref10 = getCartonLabelPDF_asyncToGenerator( /*#__PURE__*/getCartonLabelPDF_regeneratorRuntime().mark(function _callee(task) {
    var existSite, res, uploadRes;
    return getCartonLabelPDF_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return amazon["a" /* default */].checkSite(task.market_code, task, true);

          case 2:
            existSite = _context.sent;

            if (existSite) {
              _context.next = 5;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 5:
            _context.next = 7;
            return getCartonLabelPDF_run(task);

          case 7:
            res = _context.sent;

            if (res) {
              _context.next = 10;
              break;
            }

            return _context.abrupt("return", {
              code: [13, 9].includes(task.status) ? 2 : 1,
              msg: task.msg
            });

          case 10:
            _context.next = 12;
            return Object(util["L" /* uploadFile */])(res.file, 'finance-client-service', true);

          case 12:
            uploadRes = _context.sent;

            if (!(uploadRes && uploadRes.code === 1)) {
              _context.next = 18;
              break;
            }

            log["a" /* default */].setLog('文件上传成功');
            return _context.abrupt("return", {
              code: 0,
              result: {
                asn: res.asnId,
                report_file: uploadRes.data,
                cosKey: uploadRes.data.key,
                originFileName: uploadRes.data.originFileName,
                report_custom_date_start: task.report_custom_date_start,
                report_custom_date_end: task.report_custom_date_end,
                reportType: task.report_type,
                reportDate: task.report_date_month
              }
            });

          case 18:
            // 上传失败
            task.status = 7;
            task.msg = "\u6587\u4EF6\u4E0A\u4F20cos\u5931\u8D25";
            log["a" /* default */].setLog(task.msg);
            return _context.abrupt("return", {
              code: 2,
              msg: task.msg,
              result: {
                requestId: uploadRes.requestId,
                msg: uploadRes.msg
              }
            });

          case 22:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));

  return function getCartonLabelPDF(_x10) {
    return _ref10.apply(this, arguments);
  };
}();
// CONCATENATED MODULE: ./src/core/VC/getCoop.js
function getCoop_typeof(obj) { "@babel/helpers - typeof"; return getCoop_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getCoop_typeof(obj); }

function getCoop_toConsumableArray(arr) { return getCoop_arrayWithoutHoles(arr) || getCoop_iterableToArray(arr) || getCoop_unsupportedIterableToArray(arr) || getCoop_nonIterableSpread(); }

function getCoop_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getCoop_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getCoop_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getCoop_arrayLikeToArray(arr); }

function getCoop_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = getCoop_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function getCoop_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getCoop_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getCoop_arrayLikeToArray(o, minLen); }

function getCoop_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getCoop_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getCoop_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getCoop_ownKeys(Object(source), !0).forEach(function (key) { getCoop_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getCoop_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getCoop_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getCoop_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getCoop_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getCoop_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getCoop_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getCoop_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getCoop_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getCoop_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/**
 * @file COOP报表下载功能
 * @description 获取亚马逊Vendor Central (VC) COOP报表，包括Resource Invoice、Backup Reports和汇总报表
 */
// 1. 外部依赖





var getCoop_count = 10;
/**
 * 核心运行逻辑
 * @param {Object} task - 任务参数
 * @returns {Promise<Object>} 运行结果
 */

function getCoop_run(_x) {
  return VC_getCoop_run.apply(this, arguments);
}

function VC_getCoop_run() {
  VC_getCoop_run = getCoop_asyncToGenerator( /*#__PURE__*/getCoop_regeneratorRuntime().mark(function _callee2(task) {
    var coopHomeData, res, _res;

    return getCoop_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.next = 2;
            return getCoopHome(task);

          case 2:
            coopHomeData = _context2.sent;

            if (coopHomeData) {
              _context2.next = 5;
              break;
            }

            return _context2.abrupt("return", false);

          case 5:
            if (!(coopHomeData.length === 0)) {
              _context2.next = 7;
              break;
            }

            return _context2.abrupt("return", {
              code: 0,
              result: null,
              msg: '该时间段无数据'
            });

          case 7:
            console.log('[vc coop]获取COOP列表页面数据', coopHomeData); // 获取总账

            if (!(task.type_id === 83)) {
              _context2.next = 17;
              break;
            }

            _context2.next = 11;
            return getSummaryReport(getCoop_objectSpread(getCoop_objectSpread({}, coopHomeData), {}, {
              task: task
            }));

          case 11:
            res = _context2.sent;

            if (res) {
              _context2.next = 14;
              break;
            }

            return _context2.abrupt("return", false);

          case 14:
            return _context2.abrupt("return", {
              code: 0,
              result: res
            });

          case 17:
            _context2.next = 19;
            return getDetailFile(getCoop_objectSpread(getCoop_objectSpread({}, coopHomeData), {}, {
              task: task
            }));

          case 19:
            _res = _context2.sent;

            if (_res) {
              _context2.next = 22;
              break;
            }

            return _context2.abrupt("return", false);

          case 22:
            if (!_res.every(function (_ref6) {
              var fileData = _ref6.fileData;
              return fileData;
            })) {
              _context2.next = 26;
              break;
            }

            return _context2.abrupt("return", {
              code: 0,
              result: _res
            });

          case 26:
            return _context2.abrupt("return", {
              code: 2,
              msg: '部分明细获取失败',
              result: _res
            });

          case 27:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return VC_getCoop_run.apply(this, arguments);
}

function getCurrentURL(task) {
  // 解析currentURL
  var startDateArr = task.report_custom_date_start.split('-');
  var endDateArr = task.report_custom_date_end.split('-');
  var from_date_d = startDateArr[2].replace(/^0(?=\d)/, '');
  var from_date_m = startDateArr[1].replace(/^0(?=\d)/, '');
  var from_date_y = startDateArr[0];
  var to_date_d = endDateArr[2].replace(/^0(?=\d)/, '');
  var to_date_m = endDateArr[1].replace(/^0(?=\d)/, '');
  var to_date_y = endDateArr[0];
  var currentURL = "".concat(amazon["a" /* default */].host, "/hz/vendor/members/coop?searchText=&from_date_m=").concat(from_date_m, "&from_date_d=").concat(from_date_d, "&from_date_y=").concat(from_date_y, "&to_date_m=").concat(to_date_m, "&to_date_d=").concat(to_date_d, "&to_date_y=").concat(to_date_y);
  return currentURL;
}
/**
 * 获取COOP列表页面数据
 * @param {Object} task - 任务参数
 * @returns {Promise<Object>} 页面解析数据
 */


function getCoopHome(_x2) {
  return _getCoopHome.apply(this, arguments);
}
/**
 * 获取明细账单
 * @param {Object} params - 列表行数据
 * @param {Object} csrfToken - csrfToken
 * @returns {Promise<Buffer>} 报表数据
 */


function _getCoopHome() {
  _getCoopHome = getCoop_asyncToGenerator( /*#__PURE__*/getCoop_regeneratorRuntime().mark(function _callee3(task) {
    var url, res, $, csrfToken, invoiceDataDom, invoiceData, msg, i, item, data, _msg, _msg2, _msg3;

    return getCoop_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            url = getCurrentURL(task);
            _context3.next = 4;
            return Object(util["z" /* nativeRequest */])(url, 'get');

          case 4:
            res = _context3.sent;
            $ = cheerio_default.a.load(res);
            _context3.prev = 6;
            csrfToken = $('input[name="horizonteCSRFToken"]').attr('value');
            invoiceDataDom = $('#kat-invoice-table').attr('rowdata'); // 没数据？返回空数组

            if (invoiceDataDom) {
              _context3.next = 11;
              break;
            }

            return _context3.abrupt("return", []);

          case 11:
            invoiceData = JSON.parse(invoiceDataDom);

            if (!csrfToken) {
              msg = "[\u83B7\u53D6VC-COOP]no find csrfToken";
            }

            if (invoiceData.length === 0) {
              msg = "[\u83B7\u53D6VC-COOP]invoiceData no data";
            }

            if (!msg) {
              _context3.next = 18;
              break;
            }

            task.msg = msg;
            task.status = 18;
            return _context3.abrupt("return", false);

          case 18:
            if (!(task.params && task.params.length > 0)) {
              _context3.next = 20;
              break;
            }

            return _context3.abrupt("return", {
              csrfToken: csrfToken,
              invoiceData: task.params
            });

          case 20:
            if (!(task.type_id === 85)) {
              _context3.next = 39;
              break;
            }

            i = 0;

          case 22:
            if (!(i < invoiceData.length)) {
              _context3.next = 39;
              break;
            }

            item = invoiceData[i];
            _context3.prev = 24;
            data = JSON.parse($("#invoiceData-".concat(item.INVOICE_NUMBER)).attr('data-invoice-data'));
            invoiceData[i] = getCoop_objectSpread(getCoop_objectSpread({}, item), data);
            _context3.next = 36;
            break;

          case 29:
            _context3.prev = 29;
            _context3.t0 = _context3["catch"](24);
            // 有一个解析失败，就算全部失败了
            _msg = "[\u83B7\u53D6VC-COOP]parse invoiceData error: ".concat(Object(util["u" /* isError */])(_context3.t0));
            task.msg = _msg;
            task.status = 18;
            log["a" /* default */].report(_msg, 'error', task.task_id);
            return _context3.abrupt("return", false);

          case 36:
            i++;
            _context3.next = 22;
            break;

          case 39:
            return _context3.abrupt("return", {
              csrfToken: csrfToken,
              invoiceData: invoiceData
            });

          case 42:
            _context3.prev = 42;
            _context3.t1 = _context3["catch"](6);
            _msg2 = "[\u83B7\u53D6VC-coop]parse CoopHome error: ".concat(Object(util["u" /* isError */])(_context3.t1));
            task.msg = _msg2;
            task.status = 18;
            return _context3.abrupt("return", false);

          case 48:
            _context3.next = 56;
            break;

          case 50:
            _context3.prev = 50;
            _context3.t2 = _context3["catch"](0);
            _msg3 = "[\u83B7\u53D6VC-COOP]request getCoopHome error,".concat(Object(util["u" /* isError */])(_context3.t2));
            task.msg = _msg3;
            task.status = 13;
            return _context3.abrupt("return", false);

          case 56:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 50], [6, 42], [24, 29]]);
  }));
  return _getCoopHome.apply(this, arguments);
}

function getDetailFile(_x3) {
  return _getDetailFile.apply(this, arguments);
}
/**
 * 下载Resource Invoice报表
 * @param {Object} params - 请求参数
 * @param {Object} task - 任务参数
 * @returns {Promise<Buffer>} 报表数据
 */


function _getDetailFile() {
  _getDetailFile = getCoop_asyncToGenerator( /*#__PURE__*/getCoop_regeneratorRuntime().mark(function _callee4(_ref) {
    var invoiceData, csrfToken, task, total, batchInvoiceData, resData, _iterator, _step, arr, res;

    return getCoop_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            invoiceData = _ref.invoiceData, csrfToken = _ref.csrfToken, task = _ref.task;
            // 获取COOP发票明细账 or COOP发票备份账
            // 批量下载报表，每次下载10个
            total = Math.ceil(invoiceData.length / getCoop_count);
            batchInvoiceData = Array(total).fill(1).map(function (i, key) {
              return invoiceData.slice(key * getCoop_count, (key + 1) * getCoop_count);
            });
            resData = []; // 结果数据

            task.paginator = {
              totalItems: invoiceData.length,
              curItems: 0
            };
            _iterator = getCoop_createForOfIteratorHelper(batchInvoiceData);
            _context4.prev = 6;

            _iterator.s();

          case 8:
            if ((_step = _iterator.n()).done) {
              _context4.next = 19;
              break;
            }

            arr = _step.value;
            _context4.next = 12;
            return Object(util["h" /* delayed */])(5 * 1000, 'getCOOP');

          case 12:
            _context4.next = 14;
            return Promise.all(arr.map(function (params) {
              return task.type_id === 84 ? getResourceInvoice({
                params: params,
                csrfToken: csrfToken,
                currentURL: getCurrentURL(task)
              }) : getBackupReports({
                params: params
              });
            }));

          case 14:
            res = _context4.sent;
            resData.push.apply(resData, getCoop_toConsumableArray(res));
            task.paginator.curItems = resData.filter(function (_ref7) {
              var code = _ref7.code;
              return code !== 2;
            }).length;

          case 17:
            _context4.next = 8;
            break;

          case 19:
            _context4.next = 24;
            break;

          case 21:
            _context4.prev = 21;
            _context4.t0 = _context4["catch"](6);

            _iterator.e(_context4.t0);

          case 24:
            _context4.prev = 24;

            _iterator.f();

            return _context4.finish(24);

          case 27:
            if (!resData.every(function (item) {
              return item.code === 2;
            })) {
              _context4.next = 31;
              break;
            }

            task.msg = "[\u83B7\u53D6VC-COOP]all file download error";
            task.status = 14;
            return _context4.abrupt("return", false);

          case 31:
            // 记录失败数据
            task.params = getCoop_toConsumableArray(resData.filter(function (item) {
              return item.code === 2;
            }));
            return _context4.abrupt("return", resData);

          case 33:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[6, 21, 24, 27]]);
  }));
  return _getDetailFile.apply(this, arguments);
}

function getResourceInvoice(_x4) {
  return _getResourceInvoice.apply(this, arguments);
}
/**
 * 下载Backup Reports报表
 * @param {Object} params - 请求参数
 * @param {Object} task - 任务参数
 * @returns {Promise<Buffer>} 报表数据
 */


function _getResourceInvoice() {
  _getResourceInvoice = getCoop_asyncToGenerator( /*#__PURE__*/getCoop_regeneratorRuntime().mark(function _callee5(_ref2) {
    var params, csrfToken, currentURL, requestParams, url, requestHearderId, formData, _yield$axios, data, headers, msg, res, _msg4;

    return getCoop_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            params = _ref2.params, csrfToken = _ref2.csrfToken, currentURL = _ref2.currentURL;
            requestParams = {
              invoiceNumber: params.INVOICE_NUMBER,
              agreementNumber: params.AGREEMENT_NUMBER,
              currentURL: currentURL
            };
            _context5.prev = 2;
            url = "".concat(amazon["a" /* default */].host, "/hz/vendor/members/coop/resource/invoice/download"); // 监听请求

            _context5.next = 6;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Origin',
              value: amazon["a" /* default */].host
            }, {
              name: 'Referer',
              value: currentURL
            }], url);

          case 6:
            requestHearderId = _context5.sent;
            // 使用 URLSearchParams 生成 application/x-www-form-urlencoded 格式
            formData = new URLSearchParams();
            formData.append('horizonteCSRFToken', csrfToken);
            formData.append('invoiceNumber', params.INVOICE_NUMBER);
            formData.append('agreementNumber', params.AGREEMENT_NUMBER);
            formData.append('fileType', 'CSV');
            formData.append('currentURL', currentURL);
            _context5.next = 15;
            return axios_default()({
              method: 'POST',
              url: url,
              headers: {
                'Content-Type': 'application/x-www-form-urlencoded'
              },
              data: formData.toString(),
              responseType: 'blob'
            });

          case 15:
            _yield$axios = _context5.sent;
            data = _yield$axios.data;
            headers = _yield$axios.headers;
            // 移除监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

            if (!(headers['content-type'] && headers['content-type'].indexOf('text/html') > -1)) {
              _context5.next = 23;
              break;
            }

            msg = "[\u83B7\u53D6VC-COOP]\u68C0\u6D4B\u5230Resource Invoice\u62A5\u8868\u662Fhtml\u7C7B\u578B";
            log["a" /* default */].setLog(msg);
            return _context5.abrupt("return", {
              msg: msg,
              code: 2,
              params: requestParams
            });

          case 23:
            _context5.next = 25;
            return compressAndUploadFile("ResourceInvoice-".concat(params.INVOICE_NUMBER, ".csv"), data);

          case 25:
            res = _context5.sent;
            return _context5.abrupt("return", {
              fileData: res,
              invoiceNumber: params.INVOICE_NUMBER,
              invoiceDate: params.INVOICE_DATE
            });

          case 29:
            _context5.prev = 29;
            _context5.t0 = _context5["catch"](2);
            _msg4 = "[\u83B7\u53D6VC-COOP]\u4E0B\u8F7DResource Invoice\u62A5\u8868\u5931\u8D25,".concat(Object(util["u" /* isError */])(_context5.t0));
            log["a" /* default */].setLog(_msg4);
            return _context5.abrupt("return", {
              msg: _msg4,
              code: 2,
              params: requestParams
            });

          case 34:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[2, 29]]);
  }));
  return _getResourceInvoice.apply(this, arguments);
}

function getBackupReports(_x5) {
  return _getBackupReports.apply(this, arguments);
}
/**
 * 下载汇总报表
 * @param {Object} params - 请求参数
 * @param {Object} task - 任务参数
 * @returns {Promise<Buffer>} 报表数据
 */


function _getBackupReports() {
  _getBackupReports = getCoop_asyncToGenerator( /*#__PURE__*/getCoop_regeneratorRuntime().mark(function _callee6(_ref3) {
    var params, requestParams, resList, msg, backUpReportInfos, fileName, _msg5, _yield$axios2, data, headers, _msg6, res, _msg7;

    return getCoop_regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            params = _ref3.params;
            requestParams = {
              invoiceNumber: params.ccogsInvoiceId,
              agreementNumber: params.agreementNumber,
              invoiceLineType: params.invoiceLineType,
              ccogsInvoiceId: params.ccogsInvoiceId
            };
            _context6.prev = 2;
            _context6.next = 5;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/hz/vendor/members/coop/resource/backupreports/get"), 'get', requestParams);

          case 5:
            resList = _context6.sent;

            if (!(!resList.backUpReportInfos || resList.backUpReportInfos.length === 0)) {
              _context6.next = 10;
              break;
            }

            msg = "[\u83B7\u53D6VC-COOP]\u672A\u627E\u5230backUpReportInfos,\u89C4\u5219\u53EF\u80FD\u5DF2\u6539\u53D8\u3002\u83B7\u53D6\u5230\u7ED3\u679C\uFF1A".concat(JSON.stringify(resList));
            log["a" /* default */].setLog(msg);
            return _context6.abrupt("return", {
              msg: msg,
              code: 2,
              params: requestParams
            });

          case 10:
            backUpReportInfos = resList.backUpReportInfos;
            fileName = backUpReportInfos[0] && backUpReportInfos[0].fileName;

            if (fileName) {
              _context6.next = 16;
              break;
            }

            _msg5 = '[获取VC-COOP]未找到Backup Reports文件';
            log["a" /* default */].setLog(_msg5);
            return _context6.abrupt("return", {
              msg: _msg5,
              code: 2,
              params: requestParams
            });

          case 16:
            _context6.next = 18;
            return axios_default()({
              method: 'GET',
              url: "".concat(amazon["a" /* default */].host, "/hz/vendor/members/coop/resource/backupreport/download"),
              params: getCoop_objectSpread({
                fileName: fileName
              }, requestParams),
              responseType: 'blob'
            });

          case 18:
            _yield$axios2 = _context6.sent;
            data = _yield$axios2.data;
            headers = _yield$axios2.headers;

            if (!(headers['content-type'] && headers['content-type'].indexOf('text/html') > -1)) {
              _context6.next = 25;
              break;
            }

            _msg6 = "[\u83B7\u53D6VC-COOP]\u68C0\u6D4B\u5230Backup Reports\u62A5\u8868\u662Fhtml\u7C7B\u578B";
            log["a" /* default */].setLog(_msg6);
            return _context6.abrupt("return", {
              msg: _msg6,
              code: 2,
              params: requestParams
            });

          case 25:
            _context6.next = 27;
            return compressAndUploadFile("BackupReports-".concat(fileName, ".xls"), data);

          case 27:
            res = _context6.sent;
            return _context6.abrupt("return", {
              fileData: res,
              invoiceNumber: params.INVOICE_NUMBER,
              invoiceDate: params.INVOICE_DATE
            });

          case 31:
            _context6.prev = 31;
            _context6.t0 = _context6["catch"](2);
            _msg7 = "[\u83B7\u53D6VC-COOP]\u8BF7\u6C42Backup Reports\u62A5\u8868\u5931\u8D25,".concat(Object(util["u" /* isError */])(_context6.t0));
            log["a" /* default */].setLog(_msg7);
            return _context6.abrupt("return", {
              msg: _msg7,
              code: 2,
              params: requestParams
            });

          case 36:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6, null, [[2, 31]]);
  }));
  return _getBackupReports.apply(this, arguments);
}

function getSummaryReport(_x6) {
  return _getSummaryReport.apply(this, arguments);
}
/**
 * 压缩并上传文件
 * @param {String} name - 文件名
 * @param {Blob} blob - 文件数据
 * @returns {Promise<Object>} 上传结果
 */


function _getSummaryReport() {
  _getSummaryReport = getCoop_asyncToGenerator( /*#__PURE__*/getCoop_regeneratorRuntime().mark(function _callee7(_ref4) {
    var invoiceData, csrfToken, task, currentURL, url, requestHearderId, formData, _yield$axios3, data, headers, res;

    return getCoop_regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            invoiceData = _ref4.invoiceData, csrfToken = _ref4.csrfToken, task = _ref4.task;
            _context7.prev = 1;
            currentURL = getCurrentURL(task);
            url = "".concat(amazon["a" /* default */].host, "/hz/vendor/members/coop/resource/invoices/export"); // 监听请求

            _context7.next = 6;
            return Object(util["I" /* setRequestHearder */])([{
              name: 'Origin',
              value: amazon["a" /* default */].host
            }, {
              name: 'Referer',
              value: currentURL
            }], url);

          case 6:
            requestHearderId = _context7.sent;
            // 使用 URLSearchParams 生成 application/x-www-form-urlencoded 格式
            formData = new URLSearchParams();
            formData.append('horizonteCSRFToken', csrfToken);
            formData.append('invoiceNumbers', invoiceData.map(function (_ref8) {
              var INVOICE_NUMBER = _ref8.INVOICE_NUMBER;
              return INVOICE_NUMBER;
            }).join(','));
            _context7.next = 12;
            return axios_default()({
              method: 'POST',
              url: url,
              headers: {
                'Content-Type': 'application/x-www-form-urlencoded'
              },
              data: formData.toString(),
              responseType: 'blob'
            });

          case 12:
            _yield$axios3 = _context7.sent;
            data = _yield$axios3.data;
            headers = _yield$axios3.headers;
            // 移除监听
            requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

            if (!(headers['content-type'] && headers['content-type'].indexOf('text/html') > -1)) {
              _context7.next = 21;
              break;
            }

            task.msg = "[\u83B7\u53D6VC-COOP]\u68C0\u6D4B\u5230\u6C47\u603B\u62A5\u8868\u662Fhtml\u7C7B\u578B";
            task.status = 14;
            log["a" /* default */].setLog(task.msg);
            return _context7.abrupt("return", false);

          case 21:
            _context7.next = 23;
            return compressAndUploadFile('coop总账--ContraCogsInvoices.xls', data);

          case 23:
            res = _context7.sent;
            return _context7.abrupt("return", {
              fileData: res // invoiceData: invoiceData.map(({ INVOICE_NUMBER, INVOICE_DATE }) => ({
              //   invoiceNumber: INVOICE_NUMBER,
              //   invoiceDate: INVOICE_DATE
              // }))

            });

          case 27:
            _context7.prev = 27;
            _context7.t0 = _context7["catch"](1);
            task.msg = "[\u83B7\u53D6VC-COOP]\u4E0B\u8F7D\u6C47\u603B\u62A5\u8868\u5931\u8D25,".concat(Object(util["u" /* isError */])(_context7.t0));
            task.status = 14;
            log["a" /* default */].setLog(task.msg);
            return _context7.abrupt("return", false);

          case 33:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7, null, [[1, 27]]);
  }));
  return _getSummaryReport.apply(this, arguments);
}

function compressAndUploadFile(_x7, _x8) {
  return _compressAndUploadFile.apply(this, arguments);
}
/**
 * 获取COOP报表
 * @param {Object} task - 任务参数
 * @returns {Promise<Object>} 下载结果
 */


function _compressAndUploadFile() {
  _compressAndUploadFile = getCoop_asyncToGenerator( /*#__PURE__*/getCoop_regeneratorRuntime().mark(function _callee8(name, blob) {
    var zipFile, uploadRes;
    return getCoop_regeneratorRuntime().wrap(function _callee8$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            _context8.next = 2;
            return Object(util["n" /* generateAsync */])([{
              name: name,
              blob: blob
            }]);

          case 2:
            zipFile = _context8.sent;

            if (zipFile) {
              _context8.next = 5;
              break;
            }

            return _context8.abrupt("return", false);

          case 5:
            log["a" /* default */].setLog('开始上传', name);
            _context8.next = 8;
            return Object(util["L" /* uploadFile */])(zipFile, 'finance-client-service', true);

          case 8:
            uploadRes = _context8.sent;

            if (!(uploadRes && uploadRes.code === 1)) {
              _context8.next = 14;
              break;
            }

            log["a" /* default */].setLog('文件上传成功');
            return _context8.abrupt("return", uploadRes.data);

          case 14:
            log["a" /* default */].setLog('文件上传cos失败');
            return _context8.abrupt("return", false);

          case 16:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee8);
  }));
  return _compressAndUploadFile.apply(this, arguments);
}

var getCoop = /*#__PURE__*/function () {
  var _ref5 = getCoop_asyncToGenerator( /*#__PURE__*/getCoop_regeneratorRuntime().mark(function _callee(task) {
    var existSite, res;
    return getCoop_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            if (!task.resCache) {
              _context.next = 2;
              break;
            }

            return _context.abrupt("return", task.resCache);

          case 2:
            _context.next = 4;
            return amazon["a" /* default */].checkSite(task.market_code, task, true);

          case 4:
            existSite = _context.sent;

            if (existSite) {
              _context.next = 7;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 7:
            _context.next = 9;
            return getCoop_run(task);

          case 9:
            res = _context.sent;

            if (res) {
              _context.next = 12;
              break;
            }

            return _context.abrupt("return", {
              code: [13, 9].includes(task.status) ? 2 : 1,
              msg: task.msg
            });

          case 12:
            return _context.abrupt("return", res);

          case 13:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));

  return function getCoop(_x9) {
    return _ref5.apply(this, arguments);
  };
}();
// CONCATENATED MODULE: ./src/core/VC/getRemittance.js
function getRemittance_typeof(obj) { "@babel/helpers - typeof"; return getRemittance_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getRemittance_typeof(obj); }

function getRemittance_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getRemittance_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getRemittance_ownKeys(Object(source), !0).forEach(function (key) { getRemittance_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getRemittance_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getRemittance_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getRemittance_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getRemittance_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getRemittance_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getRemittance_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getRemittance_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getRemittance_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getRemittance_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }









var getRemittanceHome = /*#__PURE__*/function () {
  var _ref = getRemittance_asyncToGenerator( /*#__PURE__*/getRemittance_regeneratorRuntime().mark(function _callee(task) {
    var res, $, csrfToken, vendorCodes, tableJson, tableData, msg, _msg;

    return getRemittance_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/hz/vendor/members/remittance/home?ref_=vc_xx_favb"), 'get');

          case 3:
            res = _context.sent;
            $ = cheerio_default.a.load(res);
            _context.prev = 5;
            csrfToken = $('input[name=anti-csrftoken-a2z]').attr('value');
            vendorCodes = $('#vendorCodesInput').attr('value');
            tableJson = $('#remittanceHeaderTable-melodic-data').html();
            tableData = JSON.parse(tableJson);
            return _context.abrupt("return", {
              csrfToken: csrfToken,
              vendorCodes: vendorCodes,
              tableData: tableData
            });

          case 13:
            _context.prev = 13;
            _context.t0 = _context["catch"](5);
            msg = "[\u83B7\u53D6VC-Remittance]parse RemittanceHome error: ".concat(Object(util["u" /* isError */])(_context.t0));
            task.msg = msg;
            task.status = 18;
            return _context.abrupt("return", false);

          case 19:
            _context.next = 28;
            break;

          case 21:
            _context.prev = 21;
            _context.t1 = _context["catch"](0);
            _msg = "[\u83B7\u53D6VC-Remittance]request getRemittanceHome error,".concat(Object(util["u" /* isError */])(_context.t1));
            log["a" /* default */].setLog(_msg);
            task.msg = _msg;
            task.status = 13;
            return _context.abrupt("return", false);

          case 28:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 21], [5, 13]]);
  }));

  return function getRemittanceHome(_x) {
    return _ref.apply(this, arguments);
  };
}();

var getPaymentIds = /*#__PURE__*/function () {
  var _ref3 = getRemittance_asyncToGenerator( /*#__PURE__*/getRemittance_regeneratorRuntime().mark(function _callee2(_ref2) {
    var csrfToken, vendorCodes, tableData, task, formatPattern, formData, res, $, paymentIdsDom, msg, paymentIds, _msg2;

    return getRemittance_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            csrfToken = _ref2.csrfToken, vendorCodes = _ref2.vendorCodes, tableData = _ref2.tableData, task = _ref2.task;
            _context2.prev = 1;
            // const records = tableData.records
            // const sortColumnId = tableData.sortColumnId
            formatPattern = tableData.fields && tableData.fields['header-payment-date'] && tableData.fields['header-payment-date'].formatPattern; // const remittanceHeaderTableJson = JSON.stringify({
            //   records,
            //   deletedKeys: [],
            //   sortColumnId,
            //   sortDirection: 1
            // })

            formData = new FormData();
            formData.append('anti-csrftoken-a2z', csrfToken);
            formData.append('marketplaceIds', amazon["a" /* default */].MarketplaceObj[task.market_code]);
            formData.append('vendor-codes', '');
            formData.append('remittance-search-key', 'DATE_RANGE');
            formData.append('date-range-option', 'CUSTOM');
            formData.append('from-date', moment_default()(task.report_custom_date_start).format(formatPattern.toUpperCase() || 'M/D/yyyy'));
            formData.append('to-date', moment_default()(task.report_custom_date_end).format(formatPattern.toUpperCase() || 'M/D/yyyy'));
            _context2.next = 13;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/hz/vendor/members/remittance/home"), 'post', formData);

          case 13:
            res = _context2.sent;
            $ = cheerio_default.a.load(res);
            paymentIdsDom = $('script[id=remittanceHeaderTable-melodic-data]');

            if (paymentIdsDom) {
              _context2.next = 22;
              break;
            }

            msg = "[\u83B7\u53D6VC-Remittance]no find paymentIdsJson";
            task.msg = msg;
            task.status = 18;
            log["a" /* default */].report(msg, 'except', task.task_id);
            return _context2.abrupt("return", false);

          case 22:
            _context2.prev = 22;
            paymentIds = JSON.parse(paymentIdsDom.html());
            paymentIds = paymentIds.records.map(function (_ref4) {
              var key = _ref4.key;
              return key;
            });
            _context2.next = 34;
            break;

          case 27:
            _context2.prev = 27;
            _context2.t0 = _context2["catch"](22);
            msg = "[\u83B7\u53D6VC-Remittance]parse paymentIdsJson error,".concat(Object(util["u" /* isError */])(_context2.t0), "---paymentIdsJson:").concat(paymentIdsDom.html());
            task.msg = msg;
            task.status = 18;
            log["a" /* default */].report(msg, 'except', task.task_id);
            return _context2.abrupt("return", false);

          case 34:
            return _context2.abrupt("return", paymentIds);

          case 37:
            _context2.prev = 37;
            _context2.t1 = _context2["catch"](1);
            _msg2 = "[\u83B7\u53D6VC-Remittance]request getPaymentIds error,".concat(Object(util["u" /* isError */])(_context2.t1));
            log["a" /* default */].report(_msg2, 'except', task.task_id);
            task.msg = _msg2;
            task.status = 13;
            return _context2.abrupt("return", false);

          case 44:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[1, 37], [22, 27]]);
  }));

  return function getPaymentIds(_x2) {
    return _ref3.apply(this, arguments);
  };
}();

var getFileRes = /*#__PURE__*/function () {
  var _ref5 = getRemittance_asyncToGenerator( /*#__PURE__*/getRemittance_regeneratorRuntime().mark(function _callee3(paymentIds, task) {
    var _yield$axios, data, headers, name, oFile, fileRes, zip;

    return getRemittance_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return axios_default()({
              method: 'GET',
              url: "".concat(amazon["a" /* default */].host, "/hz/vendor/members/remittance/resource/download"),
              params: {
                paymentIds: paymentIds.join(','),
                marketplaceIds: amazon["a" /* default */].MarketplaceObj[task.market_code]
              },
              responseType: 'blob'
            });

          case 3:
            _yield$axios = _context3.sent;
            data = _yield$axios.data;
            headers = _yield$axios.headers;

            if (!(headers['content-type'] && headers['content-type'].indexOf('text/html') > -1)) {
              _context3.next = 11;
              break;
            }

            task.status = 9;
            task.msg = "[\u83B7\u53D6VC-Remittance]\u68C0\u6D4B\u5230Remittance\u62A5\u8868\u662Fhtml\u7C7B\u578B";
            log["a" /* default */].setLog(task.msg);
            return _context3.abrupt("return", false);

          case 11:
            name = "remittance_".concat(task.task_id, ".xlsx");
            oFile = new File([data], name, {
              type: 'application/xlsx'
            });
            // 文件压缩
            log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
            zip = new jszip_min_default.a();
            zip.file(name, data, {
              binary: true
            });
            _context3.next = 18;
            return zip.generateAsync({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }).then(function (res) {
              var cFile = new File([res], "".concat(name.split('.')[0], ".zip"), {
                type: 'application/zip'
              });
              log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
              fileRes = cFile;
            }).catch(function (e) {
              log["a" /* default */].setLog('Remittance报表压缩失败', Object(util["u" /* isError */])(e));
              fileRes = oFile;
            });

          case 18:
            log["a" /* default */].setLog('下载成功');
            task.status = 4;
            task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
            return _context3.abrupt("return", fileRes);

          case 24:
            _context3.prev = 24;
            _context3.t0 = _context3["catch"](0);
            task.status = 9;
            task.msg = "[\u83B7\u53D6VC-Remittance]\u8BF7\u6C42\u4E0B\u8F7DRemittance\u62A5\u8868\u5931\u8D25,".concat(Object(util["u" /* isError */])(_context3.t0));
            log["a" /* default */].setLog(task.msg);
            return _context3.abrupt("return", false);

          case 30:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 24]]);
  }));

  return function getFileRes(_x3, _x4) {
    return _ref5.apply(this, arguments);
  };
}();

var getRemittance_run = /*#__PURE__*/function () {
  var _ref6 = getRemittance_asyncToGenerator( /*#__PURE__*/getRemittance_regeneratorRuntime().mark(function _callee4(task) {
    var remittanceHome, paymentIds;
    return getRemittance_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.next = 2;
            return getRemittanceHome(task);

          case 2:
            remittanceHome = _context4.sent;

            if (remittanceHome) {
              _context4.next = 5;
              break;
            }

            return _context4.abrupt("return", false);

          case 5:
            _context4.next = 7;
            return getPaymentIds(getRemittance_objectSpread(getRemittance_objectSpread({}, remittanceHome), {}, {
              task: task
            }));

          case 7:
            paymentIds = _context4.sent;

            if (paymentIds) {
              _context4.next = 10;
              break;
            }

            return _context4.abrupt("return", false);

          case 10:
            if (!(paymentIds.length === 0)) {
              _context4.next = 12;
              break;
            }

            return _context4.abrupt("return", 'noData');

          case 12:
            _context4.next = 14;
            return getFileRes(paymentIds, task);

          case 14:
            return _context4.abrupt("return", _context4.sent);

          case 15:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));

  return function run(_x5) {
    return _ref6.apply(this, arguments);
  };
}();

var getRemittance = /*#__PURE__*/function () {
  var _ref7 = getRemittance_asyncToGenerator( /*#__PURE__*/getRemittance_regeneratorRuntime().mark(function _callee5(task) {
    var existSite, res, uploadRes;
    return getRemittance_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            if (!task.resCache) {
              _context5.next = 2;
              break;
            }

            return _context5.abrupt("return", task.resCache);

          case 2:
            _context5.next = 4;
            return amazon["a" /* default */].checkSite(task.market_code, task, true);

          case 4:
            existSite = _context5.sent;

            if (existSite) {
              _context5.next = 7;
              break;
            }

            return _context5.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 7:
            _context5.next = 9;
            return getRemittance_run(task);

          case 9:
            res = _context5.sent;

            if (res) {
              _context5.next = 13;
              break;
            }

            // 如果status=18，则上报错误
            Object(util["B" /* recordLog */])(task.msg, 'error', task.task_id);
            return _context5.abrupt("return", {
              code: [13, 9].includes(task.status) ? 2 : 1,
              msg: task.msg
            });

          case 13:
            if (!(res === 'noData')) {
              _context5.next = 15;
              break;
            }

            return _context5.abrupt("return", {
              code: 0,
              result: {
                fileData: null
              },
              msg: '该时间段无数据'
            });

          case 15:
            _context5.next = 17;
            return Object(util["L" /* uploadFile */])(res, 'finance-client-service', true);

          case 17:
            uploadRes = _context5.sent;
            log["a" /* default */].setLog('文件上传结果：', JSON.stringify(uploadRes));

            if (!(uploadRes && uploadRes.code === 1)) {
              _context5.next = 23;
              break;
            }

            return _context5.abrupt("return", {
              code: 0,
              result: {
                fileData: uploadRes.data
              }
            });

          case 23:
            // 上传失败
            task.status = 7;
            task.msg = '文件上传cos失败';
            log["a" /* default */].setLog(task.msg);
            return _context5.abrupt("return", {
              code: 2,
              msg: task.msg,
              result: {
                requestId: uploadRes.requestId,
                msg: uploadRes.msg
              }
            });

          case 27:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function getRemittance(_x6) {
    return _ref7.apply(this, arguments);
  };
}();
// CONCATENATED MODULE: ./src/core/VC/getInvoice.js
function getInvoice_typeof(obj) { "@babel/helpers - typeof"; return getInvoice_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getInvoice_typeof(obj); }

function getInvoice_toConsumableArray(arr) { return getInvoice_arrayWithoutHoles(arr) || getInvoice_iterableToArray(arr) || getInvoice_unsupportedIterableToArray(arr) || getInvoice_nonIterableSpread(); }

function getInvoice_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getInvoice_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getInvoice_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getInvoice_arrayLikeToArray(arr); }

function getInvoice_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getInvoice_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getInvoice_ownKeys(Object(source), !0).forEach(function (key) { getInvoice_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getInvoice_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getInvoice_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getInvoice_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getInvoice_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getInvoice_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getInvoice_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = getInvoice_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function getInvoice_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getInvoice_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getInvoice_arrayLikeToArray(o, minLen); }

function getInvoice_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getInvoice_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getInvoice_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getInvoice_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getInvoice_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/**
 * @file VC发票抓取功能
 * @description 获取亚马逊Vendor Central (VC) 发票数据，包括发票列表和详情信息
 */



 // 每页获取的列表数量

var PAGE_SIZE = 15; // 每批处理的详情数量

var DETAIL_BATCH_SIZE = 5; // 每次上传的详情数量

var UPLOAD_BATCH_SIZE = 100; // 最大重试次数

var MAX_RETRY_COUNT = 3;
/**
 * VC发票抓取核心运行逻辑
 * @param {Object} task - 任务参数
 * @returns {Promise<Object>} 运行结果
 */

function getInvoice_run(_x) {
  return VC_getInvoice_run.apply(this, arguments);
}
/**
 * 获取发票列表,目前亚马逊只能15条一页获取
 * @param {Object} task - 任务参数
 * @returns {Promise<Object>} 列表结果
 */

function VC_getInvoice_run() {
  VC_getInvoice_run = getInvoice_asyncToGenerator( /*#__PURE__*/getInvoice_regeneratorRuntime().mark(function _callee2(task) {
    var invoiceList, uploadListResult, failDetails;
    return getInvoice_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;
            invoiceList = task.params || []; // 如果task.params有值，则说明是重试，只获取失败详情，列表就不需要跑了

            if (!(!task.params || task.params.length === 0)) {
              _context2.next = 19;
              break;
            }

            // 1. 获取发票列表
            log["a" /* default */].setLog('[vc invoice]开始获取发票列表');
            _context2.next = 6;
            return getInvoiceList(task);

          case 6:
            invoiceList = _context2.sent;

            if (invoiceList) {
              _context2.next = 9;
              break;
            }

            return _context2.abrupt("return", false);

          case 9:
            if (invoiceList.length) {
              _context2.next = 12;
              break;
            }

            task.msg = '获取到发票列表为空';
            return _context2.abrupt("return", {
              resultType: 1,
              list: []
            });

          case 12:
            // 2. 上报列表数据
            log["a" /* default */].setLog('[vc invoice]开始上传发票列表');
            _context2.next = 15;
            return getInvoice_uploadData({
              msg: '上传发票列表',
              result: {
                resultType: 1,
                list: invoiceList,
                paginator: task.paginator
              }
            }, task);

          case 15:
            uploadListResult = _context2.sent;

            if (uploadListResult) {
              _context2.next = 18;
              break;
            }

            return _context2.abrupt("return", false);

          case 18:
            log["a" /* default */].setLog("[VC\u53D1\u7968\u6293\u53D6]\u6210\u529F\u4E0A\u4F20\u53D1\u7968\u603B\u8D26\uFF0C".concat(invoiceList.length, "\u6761\u6570\u636E"));

          case 19:
            // 3. 获取发票详情
            log["a" /* default */].setLog('[vc invoice]开始获取发票详情');
            _context2.next = 22;
            return getInvoiceDetails(invoiceList, task);

          case 22:
            failDetails = _context2.sent;

            if (failDetails) {
              _context2.next = 25;
              break;
            }

            return _context2.abrupt("return", false);

          case 25:
            // 记录失败详情
            task.params = failDetails;
            return _context2.abrupt("return", {
              resultType: 2,
              list: failDetails
            });

          case 29:
            _context2.prev = 29;
            _context2.t0 = _context2["catch"](0);
            task.msg = "[VC\u53D1\u7968\u6293\u53D6]\u4EFB\u52A1\u6267\u884C\u5F02\u5E38: ".concat(Object(util["u" /* isError */])(_context2.t0));
            task.status = 14;
            return _context2.abrupt("return", false);

          case 34:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 29]]);
  }));
  return VC_getInvoice_run.apply(this, arguments);
}

function getInvoiceList(_x2) {
  return _getInvoiceList.apply(this, arguments);
}
/**
 * 构建列表请求参数
 * @param {Object} task - 任务参数
 * @returns {Object} 请求参数
 */


function _getInvoiceList() {
  _getInvoiceList = getInvoice_asyncToGenerator( /*#__PURE__*/getInvoice_regeneratorRuntime().mark(function _callee3(task) {
    var params, totalPageResult, totalPages, pageNum, pageResult, i, pageParams, res;
    return getInvoice_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            // 构建请求参数
            params = buildListParams(task); // 获取列表总页数

            _context3.next = 4;
            return getInvoiceListTotalPages(task, params);

          case 4:
            totalPageResult = _context3.sent;

            if (totalPageResult) {
              _context3.next = 7;
              break;
            }

            return _context3.abrupt("return", false);

          case 7:
            totalPages = totalPageResult.totalPages;

            if (!(totalPageResult.totalPages == 0)) {
              _context3.next = 10;
              break;
            }

            return _context3.abrupt("return", []);

          case 10:
            log["a" /* default */].setLog("[VC\u53D1\u7968\u6293\u53D6]\u83B7\u53D6\u5230\u5217\u8868\u603B\u9875\u6570\u4E3A---".concat(totalPages));
            task.paginator = {
              totalItems: totalPages,
              curItems: 0
            }; // 计算需要获取的页数

            pageNum = Math.ceil(totalPages / PAGE_SIZE);
            pageResult = [];
            i = 0;

          case 15:
            if (!(i < pageNum)) {
              _context3.next = 29;
              break;
            }

            log["a" /* default */].setLog("[VC\u53D1\u7968\u6293\u53D6]\u5F00\u59CB\u83B7\u53D6\u7B2C".concat(i + 1, "\u9875\u6570\u636E")); // 延时1s，避免请求过于频繁

            _context3.next = 19;
            return Object(util["h" /* delayed */])(1000, 'getInvoiceList');

          case 19:
            pageParams = getInvoice_objectSpread(getInvoice_objectSpread({}, buildListParams(task, i + 1)), {}, {
              pageSize: PAGE_SIZE
            });
            _context3.next = 22;
            return getInvoiceListPage(task, pageParams);

          case 22:
            res = _context3.sent;

            if (res) {
              _context3.next = 25;
              break;
            }

            return _context3.abrupt("return", false);

          case 25:
            // task.paginator.curItems += res.length
            pageResult.push.apply(pageResult, getInvoice_toConsumableArray(res));

          case 26:
            i++;
            _context3.next = 15;
            break;

          case 29:
            return _context3.abrupt("return", pageResult);

          case 32:
            _context3.prev = 32;
            _context3.t0 = _context3["catch"](0);
            task.msg = "[\u83B7\u53D6VC\u53D1\u7968\u5217\u8868]getInvoiceList error: ".concat(Object(util["u" /* isError */])(_context3.t0));
            task.status = 14;
            return _context3.abrupt("return", false);

          case 37:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 32]]);
  }));
  return _getInvoiceList.apply(this, arguments);
}

function buildListParams(task, pageNumber) {
  var startDate = new Date(task.report_custom_date_start).getTime();
  var endDate = new Date(task.report_custom_date_end).getTime();
  return {
    searchQuery: {
      inputSearchCriteria: {
        inputSearchType: "INVOICE_NUMBER",
        inputQuery: ""
      },
      invoiceStatusFilter: "Submitted",
      payeeCode: "",
      dateRangeQuery: {
        startDate: startDate,
        endDate: endDate
      },
      tableResultQuery: {
        pageNumber: pageNumber || 1,
        sortByColumn: "",
        sortByType: ""
      },
      marketplaceId: getMarketCode(task) || task.market_code,
      tabId: "SUBMITTED"
    },
    isPaginationCall: false,
    pageSize: 0,
    isExportAllCall: false
  };
}
/**
 * 获取检测站点的具体market_code，主要是UK可能为GB，如果后台是GB那必须传GB
 */


function getMarketCode(task) {
  for (var i in amazon["a" /* default */].onlineSite) {
    var _iterator = getInvoice_createForOfIteratorHelper(amazon["a" /* default */].onlineSite[i]),
        _step;

    try {
      for (_iterator.s(); !(_step = _iterator.n()).done;) {
        var item = _step.value;

        if (item.sellerId === task.seller_id) {
          return item.originSite;
        }
      }
    } catch (err) {
      _iterator.e(err);
    } finally {
      _iterator.f();
    }
  }
}
/**
 * 获取发票列表总页数
 * @param {Object} params - 请求参数
 * @returns {Promise<Object>} 总页数结果
 */


function getInvoiceListTotalPages(_x3, _x4) {
  return _getInvoiceListTotalPages.apply(this, arguments);
}
/**
 * 获取发票列表单页数据
 * @param {Object} params - 请求参数
 * @returns {Promise<Object>} 单页结果
 */


function _getInvoiceListTotalPages() {
  _getInvoiceListTotalPages = getInvoice_asyncToGenerator( /*#__PURE__*/getInvoice_regeneratorRuntime().mark(function _callee4(task, params) {
    var retryCount,
        res,
        find,
        _args4 = arguments;
    return getInvoice_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            retryCount = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : 0;
            _context4.prev = 1;
            _context4.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/invoice-management/api/getApplicableTabsWithValues"), "POST", params);

          case 4:
            res = _context4.sent;

            if (!(res && res.tabsData && res.tabsData.length)) {
              _context4.next = 14;
              break;
            }

            find = res.tabsData.find(function (item) {
              return item.tabId === "SUBMITTED";
            });

            if (find) {
              _context4.next = 11;
              break;
            }

            task.msg = "[\u83B7\u53D6vc\u53D1\u7968\u5217\u8868\u603B\u6570]\u672A\u627E\u5230SUBMITTED\u5217\u8868\u603B\u9875\u6570,\u53EF\u80FD\u89C4\u5219\u5DF2\u6539\u53D8---data: ".concat(JSON.stringify(res.tabsData));
            task.status = 14;
            return _context4.abrupt("return", false);

          case 11:
            return _context4.abrupt("return", {
              success: true,
              totalPages: find.count
            });

          case 14:
            if (!(res && res.failureModle && res.failureModel.errorCode === 'INV_MAR')) {
              _context4.next = 18;
              break;
            }

            return _context4.abrupt("return", {
              success: false,
              totalPages: 0
            });

          case 18:
            task.msg = "[\u83B7\u53D6vc\u53D1\u7968\u5217\u8868\u603B\u6570]\u672A\u83B7\u53D6\u5230\u6570\u636E,\u53EF\u80FD\u89C4\u5219\u5DF2\u6539\u53D8---res: ".concat(JSON.stringify(res));
            task.status = 14;
            return _context4.abrupt("return", false);

          case 21:
            _context4.next = 35;
            break;

          case 23:
            _context4.prev = 23;
            _context4.t0 = _context4["catch"](1);

            if (!(retryCount < MAX_RETRY_COUNT)) {
              _context4.next = 32;
              break;
            }

            log["a" /* default */].setLog("[\u83B7\u53D6vc\u53D1\u7968\u5217\u8868\u603B\u6570]\u8BF7\u6C42\u603B\u9875\u6570\u5931\u8D25\uFF0C\u6B63\u5728\u91CD\u8BD5\uFF0C\u91CD\u8BD5\u6B21\u6570\uFF1A".concat(retryCount + 1, "---error: ").concat(Object(util["u" /* isError */])(_context4.t0)));
            _context4.next = 29;
            return Object(util["h" /* delayed */])(3000, "getInvoiceListTotalPages");

          case 29:
            _context4.next = 31;
            return getInvoiceListTotalPages(task, params, retryCount + 1);

          case 31:
            return _context4.abrupt("return", _context4.sent);

          case 32:
            task.msg = "[\u83B7\u53D6vc\u53D1\u7968\u5217\u8868\u603B\u6570]\u8BF7\u6C42\u603B\u9875\u6570\u5931\u8D25: ".concat(Object(util["u" /* isError */])(_context4.t0));
            task.status = 13;
            return _context4.abrupt("return", false);

          case 35:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[1, 23]]);
  }));
  return _getInvoiceListTotalPages.apply(this, arguments);
}

function getInvoiceListPage(_x5, _x6) {
  return _getInvoiceListPage.apply(this, arguments);
}
/**
 * 获取发票详情
 * @param {Array} invoiceList - 发票列表
 * @param {Object} task - 任务参数
 * @returns {Promise<Object>} 详情结果
 */


function _getInvoiceListPage() {
  _getInvoiceListPage = getInvoice_asyncToGenerator( /*#__PURE__*/getInvoice_regeneratorRuntime().mark(function _callee5(task, params) {
    var retryCount,
        res,
        _args5 = arguments;
    return getInvoice_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            retryCount = _args5.length > 2 && _args5[2] !== undefined ? _args5[2] : 0;
            _context5.prev = 1;
            _context5.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/invoice-management/api/getSearchTableResult"), 'POST', params);

          case 4:
            res = _context5.sent;

            if (!(res && res.invoiceHeadersList && res.invoiceHeadersList.length)) {
              _context5.next = 9;
              break;
            }

            return _context5.abrupt("return", res.invoiceHeadersList);

          case 9:
            task.msg = "[\u83B7\u53D6vc\u53D1\u7968\u5217\u8868]\u672A\u83B7\u53D6\u5230\u6570\u636E,\u53EF\u80FD\u89C4\u5219\u5DF2\u6539\u53D8---res: ".concat(JSON.stringify(res));
            task.status = 14;
            return _context5.abrupt("return", false);

          case 12:
            _context5.next = 26;
            break;

          case 14:
            _context5.prev = 14;
            _context5.t0 = _context5["catch"](1);

            if (!(retryCount < MAX_RETRY_COUNT)) {
              _context5.next = 23;
              break;
            }

            log["a" /* default */].setLog("[\u83B7\u53D6vc\u53D1\u7968\u5217\u8868]\u8BF7\u6C42\u5217\u8868\u6570\u636E\u5931\u8D25\uFF0C\u6B63\u5728\u91CD\u8BD5\uFF0C\u91CD\u8BD5\u6B21\u6570\uFF1A".concat(retryCount + 1, "---error: ").concat(Object(util["u" /* isError */])(_context5.t0)));
            _context5.next = 20;
            return Object(util["h" /* delayed */])(3000, "getInvoiceListPage");

          case 20:
            _context5.next = 22;
            return getInvoiceListPage(task, params, retryCount + 1);

          case 22:
            return _context5.abrupt("return", _context5.sent);

          case 23:
            task.msg = "[\u83B7\u53D6vc\u53D1\u7968\u5217\u8868]\u8BF7\u6C42\u5217\u8868\u6570\u636E\u5931\u8D25: ".concat(Object(util["u" /* isError */])(_context5.t0));
            task.status = 13;
            return _context5.abrupt("return", false);

          case 26:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[1, 14]]);
  }));
  return _getInvoiceListPage.apply(this, arguments);
}

function getInvoiceDetails(_x7, _x8) {
  return _getInvoiceDetails.apply(this, arguments);
}
/** 
 * 获取单个发票详情的总数据量
*/


function _getInvoiceDetails() {
  _getInvoiceDetails = getInvoice_asyncToGenerator( /*#__PURE__*/getInvoice_regeneratorRuntime().mark(function _callee8(invoiceList, task) {
    var _ret;

    return getInvoice_regeneratorRuntime().wrap(function _callee8$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            _context8.prev = 0;
            return _context8.delegateYield( /*#__PURE__*/getInvoice_regeneratorRuntime().mark(function _callee7() {
              var allDetails, failDetails, i, batch, batchDetails, uploadBatch, succAmount, uploadRes, _succAmount, _uploadRes;

              return getInvoice_regeneratorRuntime().wrap(function _callee7$(_context7) {
                while (1) {
                  switch (_context7.prev = _context7.next) {
                    case 0:
                      allDetails = [];
                      failDetails = []; // 分批处理详情，DETAIL_BATCH_SIZE条一批

                      i = 0;

                    case 3:
                      if (!(i < invoiceList.length)) {
                        _context7.next = 28;
                        break;
                      }

                      _context7.next = 6;
                      return Object(data_task["c" /* discontinue */])();

                    case 6:
                      if (!_context7.sent) {
                        _context7.next = 9;
                        break;
                      }

                      task.status = 99;
                      return _context7.abrupt("return", {
                        v: invoiceList.map(function (_ref3) {
                          var invoiceNumber = _ref3.invoiceNumber,
                              payeeCode = _ref3.payeeCode,
                              marketplaceId = _ref3.marketplaceId;
                          return {
                            invoiceNumber: invoiceNumber,
                            payeeCode: payeeCode,
                            leId: marketplaceId
                          };
                        })
                      });

                    case 9:
                      batch = invoiceList.slice(i, i + DETAIL_BATCH_SIZE);
                      log["a" /* default */].setLog("[VC\u53D1\u7968\u6293\u53D6]\u83B7\u53D6\u53D1\u7968\u8BE6\u60C5\uFF0C\u7B2C".concat(Math.floor(i / DETAIL_BATCH_SIZE) + 1, "\u6279\uFF0C\u5171").concat(batch.length, "\u6761"));
                      _context7.next = 13;
                      return Promise.all(batch.map( /*#__PURE__*/function () {
                        var _ref4 = getInvoice_asyncToGenerator( /*#__PURE__*/getInvoice_regeneratorRuntime().mark(function _callee6(invoice) {
                          var params, detailRes, failParams, errMsg;
                          return getInvoice_regeneratorRuntime().wrap(function _callee6$(_context6) {
                            while (1) {
                              switch (_context6.prev = _context6.next) {
                                case 0:
                                  params = {
                                    // 业务后端需要用的参数
                                    invoiceDate: invoice.invoiceDate,
                                    vendorInvoiceNumber: invoice.vendorInvoiceNumber,
                                    // 记录详情接口传参，等重试的时候用
                                    params: {
                                      invoiceNumber: invoice.vendorInvoiceNumber,
                                      payeeCode: invoice.payeeCode,
                                      leId: invoice.marketplaceId
                                    }
                                  };
                                  _context6.prev = 1;
                                  _context6.next = 4;
                                  return getInvoiceDetail({
                                    invoiceNumber: invoice.vendorInvoiceNumber,
                                    payeeCode: invoice.payeeCode,
                                    leId: invoice.marketplaceId
                                  });

                                case 4:
                                  detailRes = _context6.sent;

                                  if (!(detailRes.code === 0)) {
                                    _context6.next = 9;
                                    break;
                                  }

                                  return _context6.abrupt("return", getInvoice_objectSpread(getInvoice_objectSpread(getInvoice_objectSpread({}, params), detailRes.detail), {}, {
                                    code: 0
                                  }));

                                case 9:
                                  failParams = getInvoice_objectSpread(getInvoice_objectSpread({}, params), detailRes); // 记录获取失败的明细

                                  failDetails.push(failParams);
                                  return _context6.abrupt("return", failParams);

                                case 12:
                                  _context6.next = 19;
                                  break;

                                case 14:
                                  _context6.prev = 14;
                                  _context6.t0 = _context6["catch"](1);
                                  // 记录获取失败的明细
                                  errMsg = "[VC\u53D1\u7968]\u6279\u91CF\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25---".concat(Object(util["u" /* isError */])(_context6.t0));
                                  failDetails.push(getInvoice_objectSpread(getInvoice_objectSpread({}, params), {}, {
                                    code: 1,
                                    msg: errMsg
                                  }));
                                  log["a" /* default */].report(errMsg, 'error', task.task_id);

                                case 19:
                                case "end":
                                  return _context6.stop();
                              }
                            }
                          }, _callee6, null, [[1, 14]]);
                        }));

                        return function (_x14) {
                          return _ref4.apply(this, arguments);
                        };
                      }()));

                    case 13:
                      batchDetails = _context7.sent;
                      allDetails.push.apply(allDetails, getInvoice_toConsumableArray(batchDetails)); // 每100条详情上传一次

                      if (!(allDetails.length >= UPLOAD_BATCH_SIZE)) {
                        _context7.next = 23;
                        break;
                      }

                      uploadBatch = allDetails.splice(0, UPLOAD_BATCH_SIZE);
                      succAmount = uploadBatch.filter(function (item) {
                        return item.code === 0;
                      }).length;
                      log["a" /* default */].setLog("[VC\u53D1\u7968\u6293\u53D6]\u5206\u6279\u6293\u53D6\u53D1\u7968\u8BE6\u60C5\uFF0C\u6210\u529F\uFF1A".concat(succAmount, "\u6761\uFF0C\u5931\u8D25\uFF1A").concat(uploadBatch.length - succAmount, "\u6761"));
                      _context7.next = 21;
                      return getInvoice_uploadData({
                        result: {
                          resultType: 2,
                          detail: uploadBatch,
                          paginator: task.paginator
                        },
                        msg: '上传发票详情'
                      }, task);

                    case 21:
                      uploadRes = _context7.sent;

                      // 上传失败，把数据记录到failDetails
                      if (!uploadRes) {
                        failDetails.push.apply(failDetails, getInvoice_toConsumableArray(uploadBatch));
                      } else {
                        // 修改进度显示
                        task.paginator.curItems += succAmount;
                      }

                    case 23:
                      _context7.next = 25;
                      return Object(util["h" /* delayed */])(2000, "getInvoiceDetails");

                    case 25:
                      i += DETAIL_BATCH_SIZE;
                      _context7.next = 3;
                      break;

                    case 28:
                      if (!(allDetails.length > 0)) {
                        _context7.next = 35;
                        break;
                      }

                      _succAmount = allDetails.filter(function (item) {
                        return item.code === 0;
                      }).length;
                      log["a" /* default */].setLog("[VC\u53D1\u7968\u6293\u53D6]\u51C6\u5907\u4E0A\u4F20\u5269\u4F59\u53D1\u7968\u8BE6\u60C5\uFF0C\u6210\u529F\u6293\u53D6\uFF1A".concat(_succAmount, "\u6761\uFF0C\u5931\u8D25\u6293\u53D6\uFF1A").concat(allDetails.length - _succAmount, "\u6761"));
                      _context7.next = 33;
                      return getInvoice_uploadData({
                        result: {
                          resultType: 2,
                          detail: allDetails,
                          paginator: task.paginator
                        },
                        msg: '上传发票详情'
                      }, task);

                    case 33:
                      _uploadRes = _context7.sent;

                      if (!_uploadRes) {
                        failDetails.push.apply(failDetails, allDetails);
                      } else {
                        // 修改进度显示
                        task.paginator.curItems += _succAmount;
                      }

                    case 35:
                      return _context7.abrupt("return", {
                        v: failDetails
                      });

                    case 36:
                    case "end":
                      return _context7.stop();
                  }
                }
              }, _callee7);
            })(), "t0", 2);

          case 2:
            _ret = _context8.t0;

            if (!(getInvoice_typeof(_ret) === "object")) {
              _context8.next = 5;
              break;
            }

            return _context8.abrupt("return", _ret.v);

          case 5:
            _context8.next = 13;
            break;

          case 7:
            _context8.prev = 7;
            _context8.t1 = _context8["catch"](0);
            task.msg = "[VC\u53D1\u7968\u8BE6\u60C5\u6293\u53D6]\u83B7\u53D6\u53D1\u7968\u8BE6\u60C5\u5931\u8D25: ".concat(Object(util["u" /* isError */])(_context8.t1));
            task.status = 14;
            log["a" /* default */].setLog("[VC\u53D1\u7968\u8BE6\u60C5\u6293\u53D6]\u83B7\u53D6\u53D1\u7968\u8BE6\u60C5\u5931\u8D25: ".concat(Object(util["u" /* isError */])(_context8.t1)));
            return _context8.abrupt("return", false);

          case 13:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee8, null, [[0, 7]]);
  }));
  return _getInvoiceDetails.apply(this, arguments);
}

function getInvoiceDetailTotal(_x9) {
  return _getInvoiceDetailTotal.apply(this, arguments);
}
/**
 * 获取单个发票详情
 * @param {Object} invoice - 发票信息或失败详情参数
 * @returns {Promise<Object>} 发票详情
 */


function _getInvoiceDetailTotal() {
  _getInvoiceDetailTotal = getInvoice_asyncToGenerator( /*#__PURE__*/getInvoice_regeneratorRuntime().mark(function _callee9(invoice) {
    var res;
    return getInvoice_regeneratorRuntime().wrap(function _callee9$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            _context9.prev = 0;
            _context9.next = 3;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/invoice-management/api/getInvoiceHeaders"), 'get', invoice);

          case 3:
            res = _context9.sent;

            if (!(typeof res === 'string' && res.indexOf('<!doctype html>') > -1)) {
              _context9.next = 6;
              break;
            }

            return _context9.abrupt("return", {
              code: 2,
              msg: "\u83B7\u53D6\u5355\u4E2A\u53D1\u7968\u8BE6\u60C5\u7684\u603B\u6570\u636E\u91CF\u5931\u8D25: \u8FD4\u56DE\u4E86html\uFF0C\u53EF\u80FD\u662F\u7AD9\u70B9\u5DF2\u6389\u7EBF"
            });

          case 6:
            if (!(!res || !res.invoiceHeader || !res.invoiceHeader.summaryData || !res.invoiceHeader.summaryData.summaryTableRowDataList || !res.invoiceHeader.summaryData.summaryTableRowDataList.length)) {
              _context9.next = 10;
              break;
            }

            return _context9.abrupt("return", {
              code: 2,
              msg: "\u83B7\u53D6\u5355\u4E2A\u53D1\u7968\u8BE6\u60C5\u7684\u603B\u6570\u636E\u91CF\u5931\u8D25: \u672A\u83B7\u53D6\u5230\u6570\u636E\uFF0C\u53EF\u80FD\u662F\u89C4\u5219\u6539\u53D8\u3002res---".concat(JSON.stringify(res))
            });

          case 10:
            return _context9.abrupt("return", {
              code: 0,
              total: res.invoiceHeader.summaryData.summaryTableRowDataList.length
            });

          case 11:
            _context9.next = 16;
            break;

          case 13:
            _context9.prev = 13;
            _context9.t0 = _context9["catch"](0);
            return _context9.abrupt("return", {
              code: 2,
              msg: "\u8BF7\u6C42\u5355\u4E2A\u53D1\u7968\u8BE6\u60C5\u7684\u603B\u6570\u636E\u91CF\u5931\u8D25: ".concat(Object(util["u" /* isError */])(_context9.t0))
            });

          case 16:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee9, null, [[0, 13]]);
  }));
  return _getInvoiceDetailTotal.apply(this, arguments);
}

function getInvoiceDetail(_x10) {
  return _getInvoiceDetail.apply(this, arguments);
}
/**
 * 上传数据到业务方
 * @param {Array} data - 数据列表
 * @param {Object} task - 任务参数
 * @returns {Promise<Boolean>} 上传结果
 */


function _getInvoiceDetail() {
  _getInvoiceDetail = getInvoice_asyncToGenerator( /*#__PURE__*/getInvoice_regeneratorRuntime().mark(function _callee10(invoice) {
    var totalRes, res;
    return getInvoice_regeneratorRuntime().wrap(function _callee10$(_context10) {
      while (1) {
        switch (_context10.prev = _context10.next) {
          case 0:
            _context10.prev = 0;
            _context10.next = 3;
            return getInvoiceDetailTotal(invoice);

          case 3:
            totalRes = _context10.sent;

            if (!(totalRes.code !== 0)) {
              _context10.next = 6;
              break;
            }

            return _context10.abrupt("return", totalRes);

          case 6:
            _context10.next = 8;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/invoice-management/api/getInvoiceLineItems"), "get", getInvoice_objectSpread(getInvoice_objectSpread({}, invoice), {}, {
              paginationContext: {
                pageNumber: "1",
                sortByColumn: "invoiceDate",
                sortByType: "ASC",
                pageSize: totalRes.total,
                isExportAllCall: false
              },
              searchFilters: {
                inputSearchType: "PO_NUMBER",
                inputQuery: ""
              }
            }));

          case 8:
            res = _context10.sent;

            if (!(res && res.invoiceLineItems && res.invoiceLineItems.length)) {
              _context10.next = 13;
              break;
            }

            return _context10.abrupt("return", {
              code: 0,
              detail: res
            });

          case 13:
            return _context10.abrupt("return", {
              code: 1,
              msg: "[\u5931\u8D25]\u83B7\u53D6\u5355\u4E2A\u53D1\u7968\u8BE6\u60C5\u5931\u8D25: \u672A\u83B7\u53D6\u5230\u6570\u636E\uFF0C\u53EF\u80FD\u662F\u89C4\u5219\u6539\u53D8\u6216\u6570\u636E\u4E3A\u7A7A\u3002res---".concat(JSON.stringify(res))
            });

          case 14:
            _context10.next = 19;
            break;

          case 16:
            _context10.prev = 16;
            _context10.t0 = _context10["catch"](0);
            return _context10.abrupt("return", {
              code: 2,
              msg: "[\u5F02\u5E38]\u8BF7\u6C42\u5355\u4E2A\u53D1\u7968\u8BE6\u60C5\u5931\u8D25: ".concat(Object(util["u" /* isError */])(_context10.t0))
            });

          case 19:
          case "end":
            return _context10.stop();
        }
      }
    }, _callee10, null, [[0, 16]]);
  }));
  return _getInvoiceDetail.apply(this, arguments);
}

function getInvoice_uploadData(_x11, _x12) {
  return VC_getInvoice_uploadData.apply(this, arguments);
}
/**
 * 导出主函数
 * @param {Object} task - 任务参数
 * @returns {Promise<Object>} 执行结果
 */


function VC_getInvoice_uploadData() {
  VC_getInvoice_uploadData = getInvoice_asyncToGenerator( /*#__PURE__*/getInvoice_regeneratorRuntime().mark(function _callee11(_ref, task) {
    var result, msg, res;
    return getInvoice_regeneratorRuntime().wrap(function _callee11$(_context11) {
      while (1) {
        switch (_context11.prev = _context11.next) {
          case 0:
            result = _ref.result, msg = _ref.msg;
            _context11.next = 3;
            return Object(data_task["d" /* uploadTask */])({
              msg: msg,
              code: 4,
              result: result
            }, task);

          case 3:
            res = _context11.sent;
            task.status = 0; // 状态改成获取中，下面还要获取明细

            return _context11.abrupt("return", res);

          case 6:
          case "end":
            return _context11.stop();
        }
      }
    }, _callee11);
  }));
  return VC_getInvoice_uploadData.apply(this, arguments);
}

var getInvoice = /*#__PURE__*/function () {
  var _ref2 = getInvoice_asyncToGenerator( /*#__PURE__*/getInvoice_regeneratorRuntime().mark(function _callee(task) {
    var existSite, res, code;
    return getInvoice_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            if (!task.resCache) {
              _context.next = 2;
              break;
            }

            return _context.abrupt("return", task.resCache);

          case 2:
            _context.next = 4;
            return amazon["a" /* default */].checkSite(task.market_code, task, true);

          case 4:
            existSite = _context.sent;

            if (existSite) {
              _context.next = 7;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 7:
            _context.next = 9;
            return getInvoice_run(task);

          case 9:
            res = _context.sent;

            if (!(task.status === 99)) {
              _context.next = 12;
              break;
            }

            return _context.abrupt("return", false);

          case 12:
            if (res) {
              _context.next = 17;
              break;
            }

            code = [13].includes(task.status) ? 2 : 1;
            return _context.abrupt("return", {
              code: code,
              msg: task.msg
            });

          case 17:
            if (!(res.list && res.list.length > 0)) {
              _context.next = 22;
              break;
            }

            task.status = 18;
            return _context.abrupt("return", {
              code: 2,
              msg: "".concat(res.list.length, "\u6761\u8BE6\u60C5\u83B7\u53D6\u5931\u8D25\uFF0C\u603B\u6570\u636E\u91CF\u4E3A").concat(task.paginator && task.paginator.totalItems, "\u6761")
            });

          case 22:
            return _context.abrupt("return", {
              code: 0,
              result: {
                resultType: res.resultType,
                list: []
              },
              msg: task.msg || '获取完成'
            });

          case 23:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));

  return function getInvoice(_x13) {
    return _ref2.apply(this, arguments);
  };
}();
// CONCATENATED MODULE: ./src/core/VC/getARN.js
function getARN_typeof(obj) { "@babel/helpers - typeof"; return getARN_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getARN_typeof(obj); }

function getARN_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getARN_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getARN_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getARN_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getARN_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getARN_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getARN_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

/**
 * @file VC根据ReferenceId抓取ARN功能
 * @description 获取亚马逊Vendor Central (VC) 根据ReferenceId抓取ARN数据
 */


 // 每页获取的列表数量

var getARN_PAGE_SIZE = 50; // 最大重试次数

var getARN_MAX_RETRY_COUNT = 3; // 查询最近31天的货件列表

var LOOKBACK_DAYS = 31;
/**
 * VC获取ARN核心运行逻辑
 */

function getARN_run(_x) {
  return VC_getARN_run.apply(this, arguments);
}
/**
 * 根据task.ordersIdList遍历获取货件List
 */

function VC_getARN_run() {
  VC_getARN_run = getARN_asyncToGenerator( /*#__PURE__*/getARN_regeneratorRuntime().mark(function _callee2(task) {
    var res;
    return getARN_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;

            if (!(task.ordersId && task.ordersId.length > 0)) {
              _context2.next = 10;
              break;
            }

            _context2.next = 4;
            return getAllARNId(task);

          case 4:
            res = _context2.sent;

            if (res) {
              _context2.next = 7;
              break;
            }

            return _context2.abrupt("return", false);

          case 7:
            return _context2.abrupt("return", res);

          case 10:
            log["a" /* default */].setLog("[vc ARN]\u4EFB\u52A1\u4E0B\u53D1\u7684orders\u4E3A\uFF1A".concat(task.ordersId, "\uFF0C\u4E3A\u7A7A\uFF0C\u8BF7\u68C0\u67E5\u53C2\u6570"));
            task.msg = "\u4EFB\u52A1\u4E0B\u53D1\u7684orders\u4E3A\uFF1A".concat(task.ordersId, "\uFF0C\u4E3A\u7A7A\uFF0C\u8BF7\u68C0\u67E5\u53C2\u6570");
            return _context2.abrupt("return", false);

          case 13:
            _context2.next = 20;
            break;

          case 15:
            _context2.prev = 15;
            _context2.t0 = _context2["catch"](0);
            task.msg = "[VC\u83B7\u53D6ARN]\u4EFB\u52A1\u6267\u884C\u5F02\u5E38: ".concat(Object(util["u" /* isError */])(_context2.t0));
            task.status = 14;
            return _context2.abrupt("return", false);

          case 20:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 15]]);
  }));
  return VC_getARN_run.apply(this, arguments);
}

function getAllARNId(_x2) {
  return _getAllARNId.apply(this, arguments);
}
/**
 * 请求获取单个订单的货件列表
 */


function _getAllARNId() {
  _getAllARNId = getARN_asyncToGenerator( /*#__PURE__*/getARN_regeneratorRuntime().mark(function _callee3(task) {
    var failOrdersIdList, successList, i, orderId, res, target;
    return getARN_regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            failOrdersIdList = [];
            successList = [];
            i = 0;

          case 4:
            if (!(i < task.ordersId.length)) {
              _context3.next = 15;
              break;
            }

            orderId = task.ordersId[i];
            _context3.next = 8;
            return getShipmentList(task, orderId);

          case 8:
            res = _context3.sent;

            if (!res) {
              log["a" /* default */].setLog("[VC\u83B7\u53D6ARN]\u83B7\u53D6\u8D27\u4EF6\u5217\u8868\u5931\u8D25\uFF0C\u8BA2\u5355ID\uFF1A".concat(orderId));
              failOrdersIdList.push({
                orderId: orderId,
                msg: "\u83B7\u53D6\u8D27\u4EF6\u5217\u8868\u5931\u8D25,\u8BA2\u5355ID\uFF1A".concat(orderId)
              });
            } else {
              if (res.shipmentResults && res.shipmentResults.length > 0) {
                target = res.shipmentResults.find(function (item) {
                  return item.referenceId === task.referenceId;
                });

                if (target) {
                  successList.push({
                    orderId: orderId,
                    arnId: target.arn,
                    referenceId: task.referenceId
                  });
                } else {
                  log["a" /* default */].setLog("[VC\u83B7\u53D6ARN]\u83B7\u53D6\u8D27\u4EF6\u5217\u8868\u5931\u8D25\uFF0C\u672A\u627E\u5230\u5BF9\u5E94\u7684ARNId\uFF0C\u8BA2\u5355ID\uFF1A".concat(orderId));
                  failOrdersIdList.push({
                    orderId: orderId,
                    msg: "\u672A\u627E\u5230\u5BF9\u5E94\u7684ARNId,\u8BA2\u5355ID\uFF1A".concat(orderId)
                  });
                }
              } else {
                log["a" /* default */].setLog("[VC\u83B7\u53D6ARN]\u672A\u83B7\u53D6\u5230\u6570\u636EshipmentResults\u6216\u4E3A\u7A7A---\u53EF\u80FD\u89C4\u5219\u5DF2\u6539\u53D8\uFF0C\u8BA2\u5355ID\uFF1A".concat(orderId));
                failOrdersIdList.push({
                  orderId: orderId,
                  msg: "\u672A\u83B7\u53D6\u5230\u6570\u636EshipmentResults\u6216\u4E3A\u7A7A---\u53EF\u80FD\u89C4\u5219\u5DF2\u6539\u53D8,\u8BA2\u5355ID\uFF1A".concat(orderId)
                });
              }
            }

            _context3.next = 12;
            return Object(util["h" /* delayed */])(5000, 'getAllARNId');

          case 12:
            i++;
            _context3.next = 4;
            break;

          case 15:
            return _context3.abrupt("return", {
              successList: successList,
              failOrdersIdList: failOrdersIdList
            });

          case 18:
            _context3.prev = 18;
            _context3.t0 = _context3["catch"](0);
            task.msg = "[VC\u83B7\u53D6ARN]\u83B7\u53D6\u8D27\u4EF6\u5217\u8868\u5F02\u5E38: ".concat(Object(util["u" /* isError */])(_context3.t0));
            task.status = 14;
            return _context3.abrupt("return", false);

          case 23:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 18]]);
  }));
  return _getAllARNId.apply(this, arguments);
}

function getShipmentList(_x3, _x4) {
  return _getShipmentList.apply(this, arguments);
}
/**
 * 导出主函数
 * @param {Object} task - 任务参数
 * @returns {Promise<Object>} 执行结果
 */


function _getShipmentList() {
  _getShipmentList = getARN_asyncToGenerator( /*#__PURE__*/getARN_regeneratorRuntime().mark(function _callee4(task, orderId) {
    var retryCount,
        res,
        _args4 = arguments;
    return getARN_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            retryCount = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : 0;
            _context4.prev = 1;
            _context4.next = 4;
            return Object(util["z" /* nativeRequest */])("".concat(amazon["a" /* default */].host, "/hz/vendor/members/shipment-mgr/resource/searchShipments"), "get", {
              lookbackDays: LOOKBACK_DAYS,
              pageNum: 0,
              pageSize: getARN_PAGE_SIZE,
              keyword: orderId,
              fetchInvoiceInfo: false
            });

          case 4:
            res = _context4.sent;
            return _context4.abrupt("return", res);

          case 8:
            _context4.prev = 8;
            _context4.t0 = _context4["catch"](1);

            if (!(retryCount < getARN_MAX_RETRY_COUNT)) {
              _context4.next = 17;
              break;
            }

            log["a" /* default */].setLog("[\u83B7\u53D6vc\u8D27\u4EF6\u5217\u8868]\u8BF7\u6C42\u8D27\u4EF6\u5217\u8868\u6570\u636E\u5931\u8D25\uFF0C\u6B63\u5728\u91CD\u8BD5\uFF0C\u91CD\u8BD5\u6B21\u6570\uFF1A".concat(retryCount + 1, "---error: ").concat(Object(util["u" /* isError */])(_context4.t0)));
            _context4.next = 14;
            return Object(util["h" /* delayed */])(3000, "getShipmentList");

          case 14:
            _context4.next = 16;
            return getShipmentList(task, orderId, retryCount + 1);

          case 16:
            return _context4.abrupt("return", _context4.sent);

          case 17:
            return _context4.abrupt("return", false);

          case 18:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[1, 8]]);
  }));
  return _getShipmentList.apply(this, arguments);
}

var getARN = /*#__PURE__*/function () {
  var _ref = getARN_asyncToGenerator( /*#__PURE__*/getARN_regeneratorRuntime().mark(function _callee(task) {
    var existSite, res;
    return getARN_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.next = 2;
            return amazon["a" /* default */].checkSite(task.market_code, task, true);

          case 2:
            existSite = _context.sent;

            if (existSite) {
              _context.next = 5;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 5:
            _context.next = 7;
            return getARN_run(task);

          case 7:
            res = _context.sent;

            if (!(task.status === 99)) {
              _context.next = 10;
              break;
            }

            return _context.abrupt("return", false);

          case 10:
            if (res) {
              _context.next = 14;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: task.msg
            });

          case 14:
            return _context.abrupt("return", {
              code: 0,
              result: res,
              msg: task.msg || '获取完成'
            });

          case 15:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));

  return function getARN(_x5) {
    return _ref.apply(this, arguments);
  };
}();
// CONCATENATED MODULE: ./src/core/Creator/getCreatorProgram.js
function getCreatorProgram_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ getCreatorProgram_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == getCreatorProgram_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function getCreatorProgram_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function getCreatorProgram_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? getCreatorProgram_ownKeys(Object(source), !0).forEach(function (key) { getCreatorProgram_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : getCreatorProgram_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function getCreatorProgram_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function getCreatorProgram_toConsumableArray(arr) { return getCreatorProgram_arrayWithoutHoles(arr) || getCreatorProgram_iterableToArray(arr) || getCreatorProgram_unsupportedIterableToArray(arr) || getCreatorProgram_nonIterableSpread(); }

function getCreatorProgram_nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function getCreatorProgram_iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function getCreatorProgram_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return getCreatorProgram_arrayLikeToArray(arr); }

function getCreatorProgram_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function getCreatorProgram_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { getCreatorProgram_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { getCreatorProgram_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

function getCreatorProgram_createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = getCreatorProgram_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function getCreatorProgram_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return getCreatorProgram_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return getCreatorProgram_arrayLikeToArray(o, minLen); }

function getCreatorProgram_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function getCreatorProgram_typeof(obj) { "@babel/helpers - typeof"; return getCreatorProgram_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, getCreatorProgram_typeof(obj); }

/**
 * @file 亚马逊创作者计划任务
 * @description 抓取品牌列表、广告活动列表、创作者列表和活动效果报告
 */







 // 最大重试次数

var getCreatorProgram_MAX_RETRY_COUNT = 3; // 广告活动每页大小

var CAMPAIGNS_PAGE_SIZE = 100; // 创作者列表每页大小

var CREATORS_PAGE_SIZE = 100; // 创作者与报告上报：单批累计创作者条数上限（单广告活动整包 creators+report 不拆）

var CREATORS_UPLOAD_BATCH_MAX = 1600; // 报告生成最大等待时间（次数）

var REPORT_MAX_WAIT_TIMES = 12; // 12次 * 5秒 = 60秒
// 429 指数退避基数与上限

var RATE_LIMIT_BACKOFF_BASE = 5000; // 5s

var RATE_LIMIT_BACKOFF_MAX = 60000; // 60s
// 模块级限速闸门：主动 2s 间隔 + 429 退避；在入口处重置

var reportGate = Object(util["e" /* createCooldownGate */])({
  minInterval: 2000
});
/**
 * 创作者列表 / 报告接口返回的失败对象（与成功时的数组或数据对象区分）
 * @param {*} x
 * @returns {boolean}
 */

function isCreatorsReportsFailureResult(x) {
  return x && getCreatorProgram_typeof(x) === 'object' && x.success === false;
}
/**
 * 按创作者条数拆分上报批次；单条广告活动（creators + report）原子入批。
 * 若加入当前条会使累计 creators 条数大于上限，则先封批再入新批。
 * 单活动 creators 超过上限时仍整包单独一批。
 * @param {Array<Object>} items
 * @returns {Array<Array<Object>>}
 */


function chunkCreatorsAndReportsForUpload(items) {
  if (!(items !== null && items !== void 0 && items.length)) return [];
  var batches = [];
  var batch = [];
  var sum = 0;

  var _iterator = getCreatorProgram_createForOfIteratorHelper(items),
      _step;

  try {
    for (_iterator.s(); !(_step = _iterator.n()).done;) {
      var _item$creators$length, _item$creators;

      var item = _step.value;
      var n = (_item$creators$length = (_item$creators = item.creators) === null || _item$creators === void 0 ? void 0 : _item$creators.length) !== null && _item$creators$length !== void 0 ? _item$creators$length : 0;

      if (batch.length && sum + n > CREATORS_UPLOAD_BATCH_MAX) {
        batches.push(batch);
        batch = [];
        sum = 0;
      }

      batch.push(item);
      sum += n;
    }
  } catch (err) {
    _iterator.e(err);
  } finally {
    _iterator.f();
  }

  if (batch.length) batches.push(batch);
  return batches;
}
/**
 * 初始化任务数据
 * @param {Object} task - 任务对象
 * @description 
 * - task.data 中的 lastUpdateTimes 和 campaignReportsRecords 是需要上报后端的数据
 * - task.campaignRecords 是插件内部使用的断点续传数据
 */


function initTaskData(task) {
  // 初始化需要上报后端的数据（从 task.data 展开）
  if (!task.lastUpdateTimes) task.lastUpdateTimes = {};
  if (!task.campaignReportsRecords) task.campaignReportsRecords = []; // 初始化插件内部使用的断点续传数据（直接存在 task 上）

  if (!task.campaignRecords) task.campaignRecords = [];
}
/**
 * 检查是否有广告活动失败记录
 * @param {Object} task - 任务对象
 * @returns {Boolean}
 */


function hasFailedRecords(task) {
  return task.campaignRecords && task.campaignRecords.length > 0;
}
/**
 * 检查是否有创作者列表&活动效果报告失败记录
 * @param {Object} task - 任务对象
 * @returns {Boolean}
 */


function hasCreatorsFailedRecords(task) {
  return task.campaignReportsRecords && task.campaignReportsRecords.some(function (record) {
    return record.creatorsFail && !record.creatorsNoRetry || record.reportsFail && !record.reportsNoRetry;
  });
}
/**
 * 获取品牌列表（全量获取）
 * @param {Object} task - 任务对象
 * @returns {Promise<Array|Boolean>} 品牌列表或失败标志
 */


function getAllBrands(_x) {
  return _getAllBrands.apply(this, arguments);
}
/**
 * 获取品牌下的广告活动列表（增量获取）
 * @param {Object} brand - 品牌对象
 * @param {Number} retryCount - 重试次数
 * @returns {Promise<Array|Boolean>} 广告活动列表或失败标志
 */


function _getAllBrands() {
  _getAllBrands = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee2(task) {
    var allBrands, paginationToken, _res$responses, _res$responses$, res, _res$responses$2, brands, nextToken;

    return getCreatorProgram_regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;
            allBrands = [];
            paginationToken = '';

          case 3:
            _context2.next = 5;
            return Object(data_task["c" /* discontinue */])();

          case 5:
            if (!_context2.sent) {
              _context2.next = 8;
              break;
            }

            task.status = 99;
            return _context2.abrupt("return", false);

          case 8:
            _context2.next = 10;
            return Object(util["z" /* nativeRequest */])("".concat(task.adHost, "/bi/api/brands"), 'GET', paginationToken ? {
              paginationToken: paginationToken
            } : {});

          case 10:
            res = _context2.sent;

            if (!(!res || !((_res$responses = res.responses) !== null && _res$responses !== void 0 && (_res$responses$ = _res$responses[0]) !== null && _res$responses$ !== void 0 && _res$responses$.brands))) {
              _context2.next = 16;
              break;
            }

            task.msg = '获取品牌列表失败，请确认此店铺是否开通创作者计划';
            task.status = 20;
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u83B7\u53D6\u54C1\u724C\u5217\u8868\u5931\u8D25: ".concat(JSON.stringify(res)));
            return _context2.abrupt("return", false);

          case 16:
            _res$responses$2 = res.responses[0], brands = _res$responses$2.brands, nextToken = _res$responses$2.paginationToken;
            allBrands.push.apply(allBrands, getCreatorProgram_toConsumableArray(brands));
            paginationToken = nextToken;
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u5DF2\u83B7\u53D6 ".concat(allBrands.length, " \u4E2A\u54C1\u724C"));
            _context2.next = 22;
            return Object(util["h" /* delayed */])(1000, 'getAllBrands');

          case 22:
            if (paginationToken) {
              _context2.next = 3;
              break;
            }

          case 23:
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u54C1\u724C\u5217\u8868\u83B7\u53D6\u5B8C\u6210\uFF0C\u5171 ".concat(allBrands.length, " \u4E2A\u54C1\u724C"));
            return _context2.abrupt("return", allBrands);

          case 27:
            _context2.prev = 27;
            _context2.t0 = _context2["catch"](0);
            task.msg = "[\u521B\u4F5C\u8005\u8BA1\u5212]\u83B7\u53D6\u54C1\u724C\u5217\u8868\u5F02\u5E38: ".concat(Object(util["u" /* isError */])(_context2.t0, task));
            task.status = 14;
            log["a" /* default */].setLog(task.msg);
            return _context2.abrupt("return", false);

          case 33:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 27]]);
  }));
  return _getAllBrands.apply(this, arguments);
}

function getCampaignsByBrand(_x2, _x3) {
  return _getCampaignsByBrand.apply(this, arguments);
}
/**
 * 获取广告活动下的创作者列表
 * @param {Object} campaign - 广告活动对象
 * @param {Number} retryCount - 重试次数
 * @returns {Promise<Array|Boolean>} 创作者列表或失败标志
 */


function _getCampaignsByBrand() {
  _getCampaignsByBrand = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee4(task, brand) {
    var allCampaigns,
        retryCount,
        _brand$pageNumber,
        pageNumber,
        _brand$nextToken,
        nextToken,
        brandName,
        total,
        _ret,
        isNoRetry,
        msg,
        _args4 = arguments;

    return getCreatorProgram_regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            allCampaigns = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : [];
            retryCount = _args4.length > 3 && _args4[3] !== undefined ? _args4[3] : 0;
            _brand$pageNumber = brand.pageNumber, pageNumber = _brand$pageNumber === void 0 ? 1 : _brand$pageNumber, _brand$nextToken = brand.nextToken, nextToken = _brand$nextToken === void 0 ? null : _brand$nextToken, brandName = brand.brandName;
            total = 0;
            _context4.prev = 4;
            return _context4.delegateYield( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee3() {
              var lastUpdateTime, _res$responses2, _res$responses2$, params, res, msg, _res$responses$3, campaigns, token, totalResults, shouldStop, newCampaigns;

              return getCreatorProgram_regeneratorRuntime().wrap(function _callee3$(_context3) {
                while (1) {
                  switch (_context3.prev = _context3.next) {
                    case 0:
                      lastUpdateTime = task.lastUpdateTimes[brand.brandID] || 0;
                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u5F00\u59CB\u83B7\u53D6\u54C1\u724C ".concat(brandName, " \u7684\u5E7F\u544A\u6D3B\u52A8\uFF0C\u4E0A\u6B21\u66F4\u65B0\u65F6\u95F4: ").concat(lastUpdateTime ? moment_default()(lastUpdateTime).format('YYYY-MM-DD HH:mm:ss') : '无', "\uFF0C\u4E0A\u6B21\u83B7\u53D6\u5230\u9875\u6570: ").concat(pageNumber));

                    case 2:
                      _context3.next = 4;
                      return Object(data_task["c" /* discontinue */])();

                    case 4:
                      if (!_context3.sent) {
                        _context3.next = 7;
                        break;
                      }

                      task.status = 99;
                      return _context3.abrupt("return", {
                        v: false
                      });

                    case 7:
                      params = {
                        filterOptions: {
                          campaignType: 'BOUNTY_BOARD',
                          availableSlotsOnly: null,
                          campaignQualifiers: null,
                          interestTags: null,
                          providingSamplesOnly: null,
                          statuses: null,
                          commissionPercentageFilters: null,
                          dateRange: null,
                          campaignBrowseNodes: null,
                          earlyAccessOnly: null,
                          gcorIdList: null,
                          contentTypes: null,
                          adId: null,
                          campaignId: null,
                          storeIds: null,
                          creatorIds: null,
                          premiumCreator: null,
                          socialChannels: null,
                          flatFeeRanges: null,
                          rangeFilters: null,
                          contractStatus: null,
                          priceRange: null,
                          budgetAvailabilityScoreList: null,
                          ratingStar: null,
                          reviewCount: null,
                          dealMetadata: null
                        },
                        sortOptions: [{
                          name: 'LAST_UPDATED_DATE',
                          order: 'DESCENDING'
                        }],
                        nextToken: nextToken,
                        pageNumber: pageNumber,
                        pageSize: CAMPAIGNS_PAGE_SIZE,
                        searchOptions: [],
                        brandId: brand.brandID
                      };
                      _context3.next = 10;
                      return Object(util["z" /* nativeRequest */])("".concat(task.adHost, "/bi/api/campaign/search"), 'POST', params, {
                        brandid: brand.brandID
                      });

                    case 10:
                      res = _context3.sent;

                      if (!(!res || !((_res$responses2 = res.responses) !== null && _res$responses2 !== void 0 && (_res$responses2$ = _res$responses2[0]) !== null && _res$responses2$ !== void 0 && _res$responses2$.campaigns))) {
                        _context3.next = 20;
                        break;
                      }

                      if (!(retryCount < getCreatorProgram_MAX_RETRY_COUNT)) {
                        _context3.next = 17;
                        break;
                      }

                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u83B7\u53D6\u5E7F\u544A\u6D3B\u52A8\u5931\u8D25\uFF0C\u6B63\u5728\u91CD\u8BD5 ".concat(retryCount + 1, "/").concat(getCreatorProgram_MAX_RETRY_COUNT));
                      _context3.next = 16;
                      return Object(util["h" /* delayed */])(Object(util["r" /* getRandomSeconds */])(), 'getCampaignsByBrand');

                    case 16:
                      return _context3.abrupt("return", {
                        v: getCampaignsByBrand(task, brand, allCampaigns, retryCount + 1)
                      });

                    case 17:
                      msg = "\u54C1\u724C ".concat(brand.brandName, " \u83B7\u53D6\u5E7F\u544A\u6D3B\u52A8\u5931\u8D25");
                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]".concat(msg, ": ").concat(JSON.stringify(res)));
                      return _context3.abrupt("return", {
                        v: {
                          code: 1,
                          nextToken: nextToken,
                          total: total,
                          pageNumber: pageNumber,
                          allCampaigns: allCampaigns
                        }
                      });

                    case 20:
                      _res$responses$3 = res.responses[0], campaigns = _res$responses$3.campaigns, token = _res$responses$3.nextToken, totalResults = _res$responses$3.totalResults;
                      total = totalResults; // 检查是否到达增量停止点

                      shouldStop = campaigns.some(function (c) {
                        return c.lastUpdatedDateTimeInEpochMills <= lastUpdateTime;
                      });

                      if (!shouldStop) {
                        _context3.next = 28;
                        break;
                      }

                      // 只添加更新时间大于上次记录的广告活动
                      newCampaigns = campaigns.filter(function (c) {
                        return c.lastUpdatedDateTimeInEpochMills > lastUpdateTime;
                      });
                      allCampaigns.push.apply(allCampaigns, getCreatorProgram_toConsumableArray(newCampaigns));
                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u54C1\u724C ".concat(brand.brandName, " \u7684\u5E7F\u544A\u6D3B\u52A8\u5DF2\u83B7\u53D6\u5B8C\u6BD5\uFF0C\u672C\u6B21\u5171\u6293\u53D6 ").concat(allCampaigns.length, " \u4E2A\u5E7F\u544A\u6D3B\u52A8\uFF0C\u603B\u6570\u91CF\u4E3A ").concat(total));
                      return _context3.abrupt("break", 35);

                    case 28:
                      allCampaigns.push.apply(allCampaigns, getCreatorProgram_toConsumableArray(campaigns));
                      nextToken = token;
                      pageNumber++;
                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u54C1\u724C ".concat(brand.brandName, " \u7684\u5E7F\u544A\u6D3B\u52A8\u5DF2\u83B7\u53D6\u7B2C ").concat(pageNumber - 1, " \u9875"));
                      _context3.next = 34;
                      return Object(util["h" /* delayed */])(1000, 'getCampaignsByBrand');

                    case 34:
                      if (nextToken) {
                        _context3.next = 2;
                        break;
                      }

                    case 35:
                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u54C1\u724C ".concat(brand.brandName, " \u83B7\u53D6\u5230 ").concat(allCampaigns.length, " \u4E2A\u5E7F\u544A\u6D3B\u52A8\uFF0C\u603B\u6570\u91CF\u4E3A ").concat(total));
                      return _context3.abrupt("return", {
                        v: {
                          code: 0,
                          total: total,
                          allCampaigns: allCampaigns
                        }
                      });

                    case 37:
                    case "end":
                      return _context3.stop();
                  }
                }
              }, _callee3);
            })(), "t0", 6);

          case 6:
            _ret = _context4.t0;

            if (!(getCreatorProgram_typeof(_ret) === "object")) {
              _context4.next = 9;
              break;
            }

            return _context4.abrupt("return", _ret.v);

          case 9:
            _context4.next = 25;
            break;

          case 11:
            _context4.prev = 11;
            _context4.t1 = _context4["catch"](4);
            isNoRetry = Object(util["v" /* isNoRetryHttpStatus */])(_context4.t1, {});
            msg = Object(util["u" /* isError */])(_context4.t1); // 无法重试，之前退出

            if (!isNoRetry) {
              _context4.next = 17;
              break;
            }

            return _context4.abrupt("return", {
              code: 2,
              msg: msg
            });

          case 17:
            if (!(retryCount < getCreatorProgram_MAX_RETRY_COUNT)) {
              _context4.next = 22;
              break;
            }

            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u83B7\u53D6\u5E7F\u544A\u6D3B\u52A8\u5F02\u5E38\uFF0C\u6B63\u5728\u91CD\u8BD5 ".concat(retryCount + 1, "/").concat(getCreatorProgram_MAX_RETRY_COUNT, ": ").concat(msg));
            _context4.next = 21;
            return Object(util["h" /* delayed */])(3000, 'getCampaignsByBrand');

          case 21:
            return _context4.abrupt("return", getCampaignsByBrand(task, brand, allCampaigns, retryCount + 1));

          case 22:
            task.msg = "\u83B7\u53D6\u54C1\u724C ".concat(brand.brandName, " \u7684\u5E7F\u544A\u6D3B\u52A8\u5F02\u5E38: ").concat(msg);
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]".concat(task.msg));
            return _context4.abrupt("return", {
              code: 1,
              nextToken: nextToken,
              total: total,
              pageNumber: pageNumber,
              allCampaigns: allCampaigns
            });

          case 25:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[4, 11]]);
  }));
  return _getCampaignsByBrand.apply(this, arguments);
}

function getCreatorsByCampaign(_x4, _x5) {
  return _getCreatorsByCampaign.apply(this, arguments);
}
/**
 * 计算 429 退避时长：优先 Retry-After，无则指数退避 + jitter
 */


function _getCreatorsByCampaign() {
  _getCreatorsByCampaign = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee5(task, campaign) {
    var retryCount,
        brandId,
        allCreators,
        pageNumber,
        nextToken,
        _res$responses3,
        _res$responses3$,
        params,
        res,
        _res$responses$4,
        ads,
        token,
        isNoRetry,
        msg,
        _args5 = arguments;

    return getCreatorProgram_regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            retryCount = _args5.length > 2 && _args5[2] !== undefined ? _args5[2] : 0;
            brandId = campaign.brandId || campaign.brandID;
            _context5.prev = 2;
            allCreators = [];
            pageNumber = 1;
            nextToken = null; // log.setLog(`[创作者计划]开始获取广告活动 ${campaign.campaignName} 的创作者列表`)

          case 6:
            _context5.next = 8;
            return Object(data_task["c" /* discontinue */])();

          case 8:
            if (!_context5.sent) {
              _context5.next = 11;
              break;
            }

            task.status = 99;
            return _context5.abrupt("return", false);

          case 11:
            params = {
              campaignId: campaign.campaignId,
              brandId: brandId,
              filterOptions: {
                campaignType: 'BOUNTY_BOARD',
                availableSlotsOnly: null,
                interestTags: null,
                providingSamplesOnly: null,
                statuses: null,
                commissionPercentageFilters: null,
                dateRange: null,
                campaignBrowseNodes: null,
                earlyAccessOnly: null,
                gcorIdList: null,
                campaignQualifiers: null,
                contentTypes: null,
                adId: null,
                storeIds: null,
                creatorIds: null,
                flatFeeRanges: null,
                rangeFilters: null,
                socialChannels: null,
                premiumCreator: null,
                campaignId: null,
                contractStatus: null,
                priceRange: null,
                budgetAvailabilityScoreList: null,
                ratingStar: null,
                reviewCount: null,
                dealMetadata: null
              },
              sortOptions: [{
                name: 'START_DATE',
                order: 'ASCENDING'
              }],
              nextToken: nextToken,
              pageNumber: pageNumber,
              pageSize: CREATORS_PAGE_SIZE,
              creatorId: null,
              searchOptions: []
            };
            _context5.next = 14;
            return Object(util["z" /* nativeRequest */])("".concat(task.adHost, "/bi/api/collaboration/search"), 'POST', params, {
              brandid: brandId
            });

          case 14:
            res = _context5.sent;

            if (!(!res || !((_res$responses3 = res.responses) !== null && _res$responses3 !== void 0 && (_res$responses3$ = _res$responses3[0]) !== null && _res$responses3$ !== void 0 && _res$responses3$.ads))) {
              _context5.next = 24;
              break;
            }

            if (!(retryCount < getCreatorProgram_MAX_RETRY_COUNT)) {
              _context5.next = 21;
              break;
            }

            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u83B7\u53D6\u521B\u4F5C\u8005\u5217\u8868\u5931\u8D25\uFF0C\u6B63\u5728\u91CD\u8BD5 ".concat(retryCount + 1, "/").concat(getCreatorProgram_MAX_RETRY_COUNT));
            _context5.next = 20;
            return Object(util["h" /* delayed */])(3000, 'getCreatorsByCampaign');

          case 20:
            return _context5.abrupt("return", getCreatorsByCampaign(task, campaign, retryCount + 1));

          case 21:
            task.msg = "\u5E7F\u544A\u6D3B\u52A8 ".concat(campaign.campaignName, " \u83B7\u53D6\u521B\u4F5C\u8005\u5217\u8868\u5931\u8D25");
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]".concat(task.msg, ": ").concat(JSON.stringify(res)));
            return _context5.abrupt("return", {
              success: false,
              msg: task.msg
            });

          case 24:
            _res$responses$4 = res.responses[0], ads = _res$responses$4.ads, token = _res$responses$4.nextToken;
            allCreators.push.apply(allCreators, getCreatorProgram_toConsumableArray(ads.map(function (item) {
              return getCreatorProgram_objectSpread(getCreatorProgram_objectSpread({}, item), {}, {
                // 这个字段太大，删掉 
                campaignInstruction: ''
              });
            })));
            nextToken = token;
            pageNumber++;
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u5E7F\u544A\u6D3B\u52A8 ".concat(campaign.campaignName, " \u5DF2\u83B7\u53D6\u7B2C ").concat(pageNumber - 1, " \u9875\uFF0C\u5171 ").concat(allCreators.length, " \u4E2A\u521B\u4F5C\u8005"));
            _context5.next = 31;
            return Object(util["h" /* delayed */])(500, 'getCreatorsByCampaign');

          case 31:
            if (nextToken) {
              _context5.next = 6;
              break;
            }

          case 32:
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u5E7F\u544A\u6D3B\u52A8 ".concat(campaign.campaignName, " \u83B7\u53D6\u5230 ").concat(allCreators.length, " \u4E2A\u521B\u4F5C\u8005"));
            return _context5.abrupt("return", allCreators);

          case 36:
            _context5.prev = 36;
            _context5.t0 = _context5["catch"](2);
            isNoRetry = Object(util["v" /* isNoRetryHttpStatus */])(_context5.t0, {});
            msg = Object(util["u" /* isError */])(_context5.t0);

            if (!(retryCount < getCreatorProgram_MAX_RETRY_COUNT && !isNoRetry)) {
              _context5.next = 45;
              break;
            }

            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u83B7\u53D6\u521B\u4F5C\u8005\u5217\u8868\u5F02\u5E38\uFF0C\u6B63\u5728\u91CD\u8BD5 ".concat(retryCount + 1, "/").concat(getCreatorProgram_MAX_RETRY_COUNT, ": ").concat(msg));
            _context5.next = 44;
            return Object(util["h" /* delayed */])(3000, 'getCreatorsByCampaign');

          case 44:
            return _context5.abrupt("return", getCreatorsByCampaign(task, campaign, retryCount + 1));

          case 45:
            task.msg = "\u5E7F\u544A\u6D3B\u52A8 ".concat(campaign.campaignName, " \u83B7\u53D6\u521B\u4F5C\u8005\u5217\u8868\u5F02\u5E38: ").concat(msg);
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]".concat(task.msg));

            if (!isNoRetry) {
              _context5.next = 49;
              break;
            }

            return _context5.abrupt("return", {
              success: false,
              isNoRetry: true,
              msg: msg.slice(0, 100)
            });

          case 49:
            return _context5.abrupt("return", {
              success: false,
              msg: task.msg
            });

          case 50:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[2, 36]]);
  }));
  return _getCreatorsByCampaign.apply(this, arguments);
}

function calcBackoffMs(error, retryCount) {
  var retryAfter = Object(util["s" /* getRetryAfterMs */])(error);
  return (retryAfter || Math.min(RATE_LIMIT_BACKOFF_BASE * Math.pow(2, retryCount), RATE_LIMIT_BACKOFF_MAX)) + Object(util["r" /* getRandomSeconds */])(0, 1000);
}
/**
 * 生成并下载广告活动效果报告
 * @param {Object} task - 任务对象
 * @param {Object} campaign - 广告活动对象
 * @param {Number} retryCount - 重试次数
 * @returns {Promise<Object|Boolean>} 报告对象或失败标志
 */


function generateAndDownloadReport(_x6, _x7) {
  return _generateAndDownloadReport.apply(this, arguments);
}
/**
 * 下载报表文件
 * @param {Object} task - 任务对象
 * @param {Object} report - 报告对象，包含下载链接
 * @param {Object} campaign - 广告活动对象
 * @returns {Promise<Object|Boolean>} 文件对象或失败标志
 */


function _generateAndDownloadReport() {
  _generateAndDownloadReport = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee7(task, campaign) {
    var retryCount,
        _ret2,
        isNoRetry,
        msg,
        wait,
        _args7 = arguments;

    return getCreatorProgram_regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            retryCount = _args7.length > 2 && _args7[2] !== undefined ? _args7[2] : 0;
            _context7.prev = 1;
            return _context7.delegateYield( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee6() {
              var _generateRes$response, _generateRes$response2;

              var brandId, advertiserId, singleCampaignId, generateRes, msg, reportId, maxWait, _downloadRes$response, _downloadRes$response2, _downloadRes$response3, requestHearderId, downloadRes, report, downloadedFile, uploadRes, _msg;

              return getCreatorProgram_regeneratorRuntime().wrap(function _callee6$(_context6) {
                while (1) {
                  switch (_context6.prev = _context6.next) {
                    case 0:
                      // log.setLog(`[创作者计划]开始生成广告活动 ${campaign.campaignName} 的效果报告`)
                      brandId = campaign.brandId || campaign.brandID;
                      advertiserId = campaign.advertiserId;
                      singleCampaignId = campaign.campaignId.split('amzn1.campaign.')[1]; // 1. 生成报告（过限速闸门，保证 generate 之间至少间隔 minInterval）

                      _context6.next = 5;
                      return reportGate.wait('reportGenerate');

                    case 5:
                      _context6.next = 7;
                      return Object(util["z" /* nativeRequest */])("".concat(task.adHost, "/bi/api/report/generate"), 'POST', {
                        campaignId: campaign.campaignId,
                        reportType: 'DATEWISE_ASIN'
                      }, {
                        brandId: brandId || undefined
                      });

                    case 7:
                      generateRes = _context6.sent;
                      reportGate.ok();

                      if (!(!generateRes || !((_generateRes$response = generateRes.responses) !== null && _generateRes$response !== void 0 && (_generateRes$response2 = _generateRes$response[0]) !== null && _generateRes$response2 !== void 0 && _generateRes$response2.reportId))) {
                        _context6.next = 19;
                        break;
                      }

                      if (!(retryCount < getCreatorProgram_MAX_RETRY_COUNT)) {
                        _context6.next = 15;
                        break;
                      }

                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u751F\u6210\u62A5\u544A\u5931\u8D25\uFF0C\u6B63\u5728\u91CD\u8BD5 ".concat(retryCount + 1, "/").concat(getCreatorProgram_MAX_RETRY_COUNT));
                      _context6.next = 14;
                      return Object(util["h" /* delayed */])(3000, 'generateAndDownloadReport');

                    case 14:
                      return _context6.abrupt("return", {
                        v: generateAndDownloadReport(task, campaign, retryCount + 1)
                      });

                    case 15:
                      msg = "\u5E7F\u544A\u6D3B\u52A8 ".concat(campaign.campaignName, " \u751F\u6210\u62A5\u544A\u5931\u8D25");
                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]".concat(msg, ": ").concat(JSON.stringify(generateRes)));
                      task.msg = msg;
                      return _context6.abrupt("return", {
                        v: {
                          success: false,
                          msg: msg
                        }
                      });

                    case 19:
                      reportId = generateRes.responses[0].reportId; // log.setLog(`[创作者计划]报告 ${reportId} 生成请求已提交`)
                      // 2. 轮询获取下载链接（最多等待60秒）

                      maxWait = REPORT_MAX_WAIT_TIMES;

                    case 21:
                      if (!(maxWait > 0)) {
                        _context6.next = 59;
                        break;
                      }

                      _context6.next = 24;
                      return Object(data_task["c" /* discontinue */])();

                    case 24:
                      if (!_context6.sent) {
                        _context6.next = 27;
                        break;
                      }

                      task.status = 99;
                      return _context6.abrupt("return", {
                        v: false
                      });

                    case 27:
                      _context6.next = 29;
                      return Object(util["h" /* delayed */])(5000, 'generateAndDownloadReport');

                    case 29:
                      _context6.next = 31;
                      return Object(util["I" /* setRequestHearder */])([{
                        name: 'Referer',
                        value: "".concat(task.adHost, "/bi/brand/").concat(brandId, "/request/").concat(singleCampaignId, "/view?entityId=").concat(advertiserId)
                      }], "".concat(task.adHost, "/bi/api/report/downloads"));

                    case 31:
                      requestHearderId = _context6.sent;
                      _context6.next = 34;
                      return Object(util["z" /* nativeRequest */])("".concat(task.adHost, "/bi/api/report/downloads"), 'GET', {
                        reportType: 'DATEWISE_ASIN',
                        campaignId: campaign.campaignId
                      }, {
                        brandId: brandId || undefined
                      });

                    case 34:
                      downloadRes = _context6.sent;
                      // 移除监听
                      requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

                      if (!((downloadRes === null || downloadRes === void 0 ? void 0 : (_downloadRes$response = downloadRes.responses) === null || _downloadRes$response === void 0 ? void 0 : (_downloadRes$response2 = _downloadRes$response[0]) === null || _downloadRes$response2 === void 0 ? void 0 : (_downloadRes$response3 = _downloadRes$response2.adReportingDownloadsList) === null || _downloadRes$response3 === void 0 ? void 0 : _downloadRes$response3.length) > 0)) {
                        _context6.next = 55;
                        break;
                      }

                      report = downloadRes.responses[0].adReportingDownloadsList.find(function (r) {
                        return r.reportId === reportId && r.downloadStatus === 'DOWNLOAD_READY';
                      });

                      if (!report) {
                        _context6.next = 55;
                        break;
                      }

                      _context6.next = 41;
                      return downloadReportFile(task, report, campaign);

                    case 41:
                      downloadedFile = _context6.sent;

                      if (downloadedFile) {
                        _context6.next = 46;
                        break;
                      }

                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]".concat(task.msg));
                      msg = task.msg || "\u5E7F\u544A\u6D3B\u52A8 ".concat(campaign.campaignName, " \u4E0B\u8F7D\u62A5\u544A\u5931\u8D25");
                      return _context6.abrupt("return", {
                        v: {
                          success: false,
                          msg: msg
                        }
                      });

                    case 46:
                      _context6.next = 48;
                      return Object(util["L" /* uploadFile */])(downloadedFile.file, 'finance-client-service', true);

                    case 48:
                      uploadRes = _context6.sent;

                      if (!(!uploadRes || uploadRes.code !== 1)) {
                        _context6.next = 54;
                        break;
                      }

                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u5E7F\u544A\u6D3B\u52A8 ".concat(campaign.campaignName, " \u4E0A\u4F20\u62A5\u544A\u5230cos\u5931\u8D25"));
                      _msg = "\u5E7F\u544A\u6D3B\u52A8 ".concat(campaign.campaignName, " \u4E0A\u4F20\u62A5\u544A\u5230cos\u5931\u8D25");
                      task.msg = _msg;
                      return _context6.abrupt("return", {
                        v: {
                          success: false,
                          msg: _msg
                        }
                      });

                    case 54:
                      return _context6.abrupt("return", {
                        v: uploadRes.data
                      });

                    case 55:
                      maxWait--;
                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u7B49\u5F85\u62A5\u544A\u751F\u6210\u4E2D... \u5269\u4F59\u7B49\u5F85\u6B21\u6570: ".concat(maxWait));
                      _context6.next = 21;
                      break;

                    case 59:
                      if (!(retryCount < getCreatorProgram_MAX_RETRY_COUNT)) {
                        _context6.next = 62;
                        break;
                      }

                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u62A5\u544A\u751F\u6210\u8D85\u65F6\uFF0C\u6B63\u5728\u91CD\u8BD5 ".concat(retryCount + 1, "/").concat(getCreatorProgram_MAX_RETRY_COUNT));
                      return _context6.abrupt("return", {
                        v: generateAndDownloadReport(task, campaign, retryCount + 1)
                      });

                    case 62:
                      task.msg = "\u5E7F\u544A\u6D3B\u52A8 ".concat(campaign.campaignName, " \u62A5\u544A\u751F\u6210\u8D85\u65F6");
                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]".concat(task.msg));
                      return _context6.abrupt("return", {
                        v: {
                          success: false,
                          msg: task.msg
                        }
                      });

                    case 65:
                    case "end":
                      return _context6.stop();
                  }
                }
              }, _callee6);
            })(), "t0", 3);

          case 3:
            _ret2 = _context7.t0;

            if (!(getCreatorProgram_typeof(_ret2) === "object")) {
              _context7.next = 6;
              break;
            }

            return _context7.abrupt("return", _ret2.v);

          case 6:
            _context7.next = 28;
            break;

          case 8:
            _context7.prev = 8;
            _context7.t1 = _context7["catch"](1);
            isNoRetry = Object(util["v" /* isNoRetryHttpStatus */])(_context7.t1, {});
            msg = Object(util["u" /* isError */])(_context7.t1);

            if (!(!isNoRetry && retryCount < getCreatorProgram_MAX_RETRY_COUNT)) {
              _context7.next = 23;
              break;
            }

            if (!Object(util["w" /* isRateLimitError */])(_context7.t1)) {
              _context7.next = 19;
              break;
            }

            wait = calcBackoffMs(_context7.t1, retryCount);
            reportGate.hit429(wait);
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u751F\u6210\u62A5\u544A\u547D\u4E2D\u9650\u6D41(429) url=".concat(_context7.t1.url, "\uFF0C\u9000\u907F ").concat(wait, "ms \u540E\u91CD\u8BD5 ").concat(retryCount + 1, "/").concat(getCreatorProgram_MAX_RETRY_COUNT));
            _context7.next = 22;
            break;

          case 19:
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u751F\u6210\u62A5\u544A\u5F02\u5E38\uFF0C\u6B63\u5728\u91CD\u8BD5 ".concat(retryCount + 1, "/").concat(getCreatorProgram_MAX_RETRY_COUNT, ": ").concat(msg));
            _context7.next = 22;
            return Object(util["h" /* delayed */])(3000, 'generateAndDownloadReport');

          case 22:
            return _context7.abrupt("return", generateAndDownloadReport(task, campaign, retryCount + 1));

          case 23:
            task.msg = "\u5E7F\u544A\u6D3B\u52A8 ".concat(campaign.campaignName, " \u751F\u6210\u62A5\u544A\u5F02\u5E38: ").concat(msg);
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]".concat(task.msg));

            if (!isNoRetry) {
              _context7.next = 27;
              break;
            }

            return _context7.abrupt("return", {
              success: false,
              isNoRetry: true,
              msg: msg.slice(0, 100)
            });

          case 27:
            return _context7.abrupt("return", {
              success: false,
              msg: task.msg
            });

          case 28:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7, null, [[1, 8]]);
  }));
  return _generateAndDownloadReport.apply(this, arguments);
}

function downloadReportFile(_x8, _x9, _x10) {
  return _downloadReportFile.apply(this, arguments);
}
/**
 * 记录品牌广告活动获取失败
 * @param {Object} brand - 品牌对象
 * @param {Number} pageSize - 当前页数
 */


function _downloadReportFile() {
  _downloadReportFile = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee8(task, report, campaign) {
    var downloadUrl, res, timestamp, campaignName, fileName, oFile, zip, zipData, zipFileName, cFile;
    return getCreatorProgram_regeneratorRuntime().wrap(function _callee8$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            _context8.prev = 0;
            // 获取下载 URL（根据实际 API 返回的字段名调整）
            downloadUrl = report.s3Url || report.downloadUrl || report.url || report.downloadLink;

            if (downloadUrl) {
              _context8.next = 5;
              break;
            }

            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u62A5\u544A\u5BF9\u8C61\u4E2D\u672A\u627E\u5230\u4E0B\u8F7D\u94FE\u63A5");
            return _context8.abrupt("return", false);

          case 5:
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u5F00\u59CB\u4E0B\u8F7D\u62A5\u544A: ".concat(downloadUrl));
            _context8.next = 8;
            return axios_default()({
              method: 'GET',
              url: downloadUrl,
              responseType: 'arrayBuffer',
              adapter: fetch["b" /* default */]
            });

          case 8:
            res = _context8.sent;

            if (!(res && res.data)) {
              _context8.next = 25;
              break;
            }

            // 生成文件名：活动名称_报告ID.csv
            timestamp = moment_default()().format('YYYYMMDD_HHmmss');
            campaignName = campaign.campaignName.replace(/[/\\:*?"<>|]/g, '_'); // 移除文件名非法字符

            fileName = "".concat(campaignName, "_").concat(report.reportId, "_").concat(timestamp, ".csv");
            oFile = new File([res.data], fileName);
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u6E90\u6587\u4EF6\u5927\u5C0F: ".concat(oFile.size, "b")); // 文件压缩

            zip = new jszip_min_default.a();
            zip.file(fileName, res.data, {
              binary: true
            });
            _context8.next = 19;
            return zip.generateAsync({
              type: 'nodebuffer',
              compression: 'DEFLATE',
              // 压缩
              compressionOptions: {
                level: 9 // 最优压缩等级

              }
            });

          case 19:
            zipData = _context8.sent;
            zipFileName = "".concat(fileName.split('.')[0], ".zip");
            cFile = new File([zipData], zipFileName);
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u538B\u7F29\u540E\u6587\u4EF6\u5927\u5C0F: ".concat(cFile.size, "b, \u6587\u4EF6\u540D: ").concat(cFile.name));
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u62A5\u544A\u4E0B\u8F7D\u6210\u529F");
            return _context8.abrupt("return", {
              file: cFile
            });

          case 25:
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u4E0B\u8F7D\u54CD\u5E94\u6570\u636E\u4E3A\u7A7A");
            return _context8.abrupt("return", false);

          case 29:
            _context8.prev = 29;
            _context8.t0 = _context8["catch"](0);
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u4E0B\u8F7D\u62A5\u544A\u6587\u4EF6\u5931\u8D25: ".concat(Object(util["u" /* isError */])(_context8.t0)));
            return _context8.abrupt("return", false);

          case 33:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee8, null, [[0, 29]]);
  }));
  return _downloadReportFile.apply(this, arguments);
}

function recordBrandFailure(task, brandsRecord) {
  var existing = task.campaignRecords.find(function (r) {
    return r.brandID === brandsRecord.brandID;
  });

  if (existing) {
    existing.nextToken = brandsRecord.nextToken;
    existing.pageNumber = brandsRecord.pageNumber;
    existing.timestamp = brandsRecord.timestamp;
    existing.failCampaigns = brandsRecord.failCampaigns || [];
  } else {
    task.campaignRecords.push(brandsRecord);
  } // log.setLog(`[创作者计划]记录品牌 ${brandsRecord.brandName} 获取失败的广告活动`)

}
/**
 * 记录广告活动创作者或报告获取失败
 * @param {Object} brand - 品牌对象
 * @param {Object} campaign - 广告活动对象
 * @param {String} type - 失败类型：'creators' 或 'report'
 * @param {Object} [extra] - { isNoRetry?: boolean, msg?: string }
 */


function recordCampaignFailure(task, campaign, type) {
  var extra = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
  var brandKey = campaign.brandId || campaign.brandID;
  var existing = task.campaignReportsRecords.find(function (r) {
    return r.campaignId === campaign.campaignId && r.brandID === brandKey;
  });
  var isNoRetry = extra.isNoRetry,
      msg = extra.msg;

  if (existing) {
    if (type === 'creators') {
      existing.creatorsFail = true;
      if (msg !== undefined) existing.creatorsFailMsg = msg;
      if (isNoRetry) existing.creatorsNoRetry = true;
    } else if (type === 'report') {
      existing.reportsFail = true;
      if (msg !== undefined) existing.reportsFailMsg = msg;
      if (isNoRetry) existing.reportsNoRetry = true;
    }
  } else {
    var row = {
      brandID: brandKey,
      campaignId: campaign.campaignId,
      campaignName: campaign.campaignName,
      creatorsFail: type === 'creators',
      reportsFail: type === 'report'
    };

    if (type === 'creators') {
      if (msg !== undefined) row.creatorsFailMsg = msg;
      if (isNoRetry) row.creatorsNoRetry = true;
    } else if (type === 'report') {
      if (msg !== undefined) row.reportsFailMsg = msg;
      if (isNoRetry) row.reportsNoRetry = true;
    }

    task.campaignReportsRecords.push(row);
  } // log.setLog(`[创作者计划]记录广告活动 ${campaign.campaignName} ${type === 'creators' ? '创作者列表' : '报告'}获取失败`)

}
/**
 * 从数组中移除元素
 * @param {Array} array - 数组
 * @param {Object} item - 要移除的元素
 */


function removeFromArray(array, item) {
  var index = array.indexOf(item);

  if (index > -1) {
    array.splice(index, 1);
  }
}
/**
 * 重试广告活动
 * @param {Object} task - 任务对象
 */


function retryFailedRecords(_x11) {
  return _retryFailedRecords.apply(this, arguments);
}
/**
 * 重试创作者列表&活动效果报告
 * @param {Object} task - 任务对象
 * @returns {Promise<Array|Boolean>} 创作者列表或失败标志
 */


function _retryFailedRecords() {
  _retryFailedRecords = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee9(task) {
    var toRemove, _iterator2, _step2, _record$failCampaigns, _record$failCampaigns2, record, res, code, nextToken, pageNumber, total, allCampaigns, updateRes, campaigns;

    return getCreatorProgram_regeneratorRuntime().wrap(function _callee9$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            _context9.prev = 0;
            log["a" /* default */].setLog('[创作者计划]开始重试广告活动'); // 重试品牌广告活动获取失败的记录（使用 task.campaignRecords）

            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u91CD\u8BD5 ".concat(task.campaignRecords.length, " \u4E2A\u54C1\u724C\u7684\u5E7F\u544A\u6D3B\u52A8\u83B7\u53D6"));
            toRemove = [];
            _iterator2 = getCreatorProgram_createForOfIteratorHelper(task.campaignRecords);
            _context9.prev = 5;

            _iterator2.s();

          case 7:
            if ((_step2 = _iterator2.n()).done) {
              _context9.next = 30;
              break;
            }

            record = _step2.value;

            if (!(((_record$failCampaigns = record.failCampaigns) === null || _record$failCampaigns === void 0 ? void 0 : _record$failCampaigns.length) > 0 && !record.nextToken)) {
              _context9.next = 13;
              break;
            }

            _context9.t0 = {
              code: 0,
              total: record.total,
              allCampaigns: []
            };
            _context9.next = 16;
            break;

          case 13:
            _context9.next = 15;
            return getCampaignsByBrand(task, record);

          case 15:
            _context9.t0 = _context9.sent;

          case 16:
            res = _context9.t0;

            if (res) {
              _context9.next = 19;
              break;
            }

            return _context9.abrupt("return", false);

          case 19:
            code = res.code, nextToken = res.nextToken, pageNumber = res.pageNumber, total = res.total, allCampaigns = res.allCampaigns;
            updateRes = void 0; // 上报数据

            if (!(allCampaigns.length > 0 || ((_record$failCampaigns2 = record.failCampaigns) === null || _record$failCampaigns2 === void 0 ? void 0 : _record$failCampaigns2.length) > 0)) {
              _context9.next = 27;
              break;
            }

            campaigns = allCampaigns.concat(record.failCampaigns || []);
            _context9.next = 25;
            return Object(data_task["d" /* uploadTask */])({
              code: 4,
              msg: '上传广告活动数据',
              result: {
                campaigns: {
                  list: campaigns,
                  total: total
                },
                cacheData: buildUploadData(task),
                msg: task.msg
              }
            }, task);

          case 25:
            updateRes = _context9.sent;

            // 广告活动上报成功，记录创作者列表和效果报告，待会重试的时候抓
            if (updateRes) {
              campaigns.forEach(function (campaign) {
                recordCampaignFailure(task, campaign, 'creators');
                recordCampaignFailure(task, campaign, 'report');
              });
            }

          case 27:
            if (code === 0 && updateRes) {
              // 成功，标记为移除
              toRemove.push(record); // 记录时间戳

              task.lastUpdateTimes[record.brandID] = record.timestamp || getLatestUpdateTime(allCampaigns);
              log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u54C1\u724C ".concat(record.brandID, " \u5E7F\u544A\u6D3B\u52A8\u91CD\u8BD5\u6210\u529F"));
            } else {
              // 更新失败记录
              record.nextToken = nextToken;
              record.pageNumber = pageNumber;
              record.failCampaigns = updateRes ? [] : allCampaigns.concat(record.failCampaigns || []); // 上传失败时记录缓存

              record.total = total;
            }

          case 28:
            _context9.next = 7;
            break;

          case 30:
            _context9.next = 35;
            break;

          case 32:
            _context9.prev = 32;
            _context9.t1 = _context9["catch"](5);

            _iterator2.e(_context9.t1);

          case 35:
            _context9.prev = 35;

            _iterator2.f();

            return _context9.finish(35);

          case 38:
            // 移除成功的记录
            toRemove.forEach(function (record) {
              return removeFromArray(task.campaignRecords, record);
            });
            log["a" /* default */].setLog('[创作者计划]广告活动重试完成');
            _context9.next = 48;
            break;

          case 42:
            _context9.prev = 42;
            _context9.t2 = _context9["catch"](0);
            task.status = 14;
            task.msg = "[\u521B\u4F5C\u8005\u8BA1\u5212]\u4EFB\u52A1\u6267\u884C\u5F02\u5E38: ".concat(Object(util["u" /* isError */])(_context9.t2));
            log["a" /* default */].setLog(task.msg);
            return _context9.abrupt("return", false);

          case 48:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee9, null, [[0, 42], [5, 32, 35, 38]]);
  }));
  return _retryFailedRecords.apply(this, arguments);
}

function retryCreatorsAndReport(_x12) {
  return _retryCreatorsAndReport.apply(this, arguments);
}
/**
 * 上传创作者&报告数据
 * @param {Object} task - 任务对象
 * @param {Array} data - 创作者&报告数据
 * @returns {Promise<Boolean>} 上传结果
 */


function _retryCreatorsAndReport() {
  _retryCreatorsAndReport = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee10(task) {
    var originCount, _iterator3, _step3, record, creators, reportRes, temCache, batchArray, totalCreators, _iterator4, _step4, batch, prevCampaignReportsRecords, uploadRes, retryableCount, noRetryCount;

    return getCreatorProgram_regeneratorRuntime().wrap(function _callee10$(_context10) {
      while (1) {
        switch (_context10.prev = _context10.next) {
          case 0:
            //  重试创作者列表和报告获取失败的记录（使用模块级 campaignReportsRecords）
            originCount = task.campaignReportsRecords.length;
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u91CD\u8BD5 ".concat(originCount, " \u4E2A\u5E7F\u544A\u6D3B\u52A8\u7684\u521B\u4F5C\u8005/\u62A5\u544A\u83B7\u53D6"));
            _iterator3 = getCreatorProgram_createForOfIteratorHelper(task.campaignReportsRecords);
            _context10.prev = 3;

            _iterator3.s();

          case 5:
            if ((_step3 = _iterator3.n()).done) {
              _context10.next = 21;
              break;
            }

            record = _step3.value;

            if (!(record.creatorsFail && !record.creatorsNoRetry)) {
              _context10.next = 13;
              break;
            }

            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u5F00\u59CB\u91CD\u8BD5\u521B\u4F5C\u8005\u5217\u8868");
            _context10.next = 11;
            return getCreatorsByCampaign(task, record);

          case 11:
            creators = _context10.sent;

            if (Array.isArray(creators)) {
              record.creators = creators;
              log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u5E7F\u544A\u6D3B\u52A8 ".concat(record.campaignId, " \u521B\u4F5C\u8005\u5217\u8868\u91CD\u8BD5\u6210\u529F"));
            } else if (isCreatorsReportsFailureResult(creators)) {
              recordCampaignFailure(task, record, 'creators', {
                isNoRetry: creators.isNoRetry,
                msg: creators.msg
              });
            }

          case 13:
            if (!(record.reportsFail && !record.reportsNoRetry)) {
              _context10.next = 19;
              break;
            }

            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u5F00\u59CB\u91CD\u8BD5\u6D3B\u52A8\u6548\u679C\u62A5\u544A");
            _context10.next = 17;
            return generateAndDownloadReport(task, record);

          case 17:
            reportRes = _context10.sent;

            if (reportRes && !isCreatorsReportsFailureResult(reportRes)) {
              record.report = reportRes;
              log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u5E7F\u544A\u6D3B\u52A8 ".concat(record.campaignId, " \u62A5\u544A\u91CD\u8BD5\u6210\u529F"));
            } else if (isCreatorsReportsFailureResult(reportRes)) {
              recordCampaignFailure(task, record, 'report', {
                isNoRetry: reportRes.isNoRetry,
                msg: reportRes.msg
              });
            }

          case 19:
            _context10.next = 5;
            break;

          case 21:
            _context10.next = 26;
            break;

          case 23:
            _context10.prev = 23;
            _context10.t0 = _context10["catch"](3);

            _iterator3.e(_context10.t0);

          case 26:
            _context10.prev = 26;

            _iterator3.f();

            return _context10.finish(26);

          case 29:
            temCache = task.campaignReportsRecords.filter(function (record) {
              return record.creators || record.report;
            });
            batchArray = chunkCreatorsAndReportsForUpload(temCache);
            totalCreators = temCache.reduce(function (s, x) {
              var _x$creators$length, _x$creators;

              return s + ((_x$creators$length = (_x$creators = x.creators) === null || _x$creators === void 0 ? void 0 : _x$creators.length) !== null && _x$creators$length !== void 0 ? _x$creators$length : 0);
            }, 0);
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u91CD\u8BD5\u540E\u521B\u4F5C\u8005&\u62A5\u544A\u5206\u6279\u4E0A\u62A5\uFF1A".concat(temCache.length, " \u4E2A\u5E7F\u544A\u6D3B\u52A8\u3001").concat(totalCreators, " \u6761\u521B\u4F5C\u8005\uFF0C\u5206 ").concat(batchArray.length, " \u6279\uFF08\u6BCF\u6279\u6700\u591A ").concat(CREATORS_UPLOAD_BATCH_MAX, " \u6761\u521B\u4F5C\u8005\uFF09"));
            _iterator4 = getCreatorProgram_createForOfIteratorHelper(batchArray);
            _context10.prev = 34;

            _iterator4.s();

          case 36:
            if ((_step4 = _iterator4.n()).done) {
              _context10.next = 47;
              break;
            }

            batch = _step4.value;
            prevCampaignReportsRecords = getCreatorProgram_toConsumableArray(task.campaignReportsRecords);
            batch.forEach(function (_r) {
              _r.creatorsFail = _r.creatorsFail && !_r.creators;
              _r.reportsFail = _r.reportsFail && !_r.report;
            }); // 先更新失败记录，再上传，确保 cacheData 带的是最新状态

            task.campaignReportsRecords = task.campaignReportsRecords.filter(function (record) {
              return record.creatorsFail || record.reportsFail;
            });
            _context10.next = 43;
            return uploadCampaignData(task, batch);

          case 43:
            uploadRes = _context10.sent;

            if (!uploadRes) {
              task.campaignReportsRecords = prevCampaignReportsRecords;
            }

          case 45:
            _context10.next = 36;
            break;

          case 47:
            _context10.next = 52;
            break;

          case 49:
            _context10.prev = 49;
            _context10.t1 = _context10["catch"](34);

            _iterator4.e(_context10.t1);

          case 52:
            _context10.prev = 52;

            _iterator4.f();

            return _context10.finish(52);

          case 55:
            retryableCount = task.campaignReportsRecords.filter(function (record) {
              return record.creatorsFail && !record.creatorsNoRetry || record.reportsFail && !record.reportsNoRetry;
            }).length;
            noRetryCount = task.campaignReportsRecords.filter(function (record) {
              var hasNoRetryFail = record.creatorsFail && record.creatorsNoRetry || record.reportsFail && record.reportsNoRetry;
              var hasRetryableFail = record.creatorsFail && !record.creatorsNoRetry || record.reportsFail && !record.reportsNoRetry;
              return hasNoRetryFail && !hasRetryableFail;
            }).length;
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212] ".concat(originCount - task.campaignReportsRecords.length, " \u4E2A\u5E7F\u544A\u6D3B\u52A8\u7684\u521B\u4F5C\u8005/\u62A5\u544A\u91CD\u8BD5\u5B8C\u6210\uFF0C\u5269\u4F59 ").concat(retryableCount, " \u4E2A\u5E7F\u544A\u6D3B\u52A8\u7684\u521B\u4F5C\u8005/\u62A5\u544A\u9700\u8981\u7EE7\u7EED\u91CD\u8BD5\uFF0C").concat(noRetryCount, " \u4E2A\u5E7F\u544A\u6D3B\u52A8\u5DF2\u6807\u8BB0\u4E3A\u4E0D\u53EF\u91CD\u8BD5"));

          case 58:
          case "end":
            return _context10.stop();
        }
      }
    }, _callee10, null, [[3, 23, 26, 29], [34, 49, 52, 55]]);
  }));
  return _retryCreatorsAndReport.apply(this, arguments);
}

function uploadCampaignData(_x13, _x14) {
  return _uploadCampaignData.apply(this, arguments);
}
/**
 * 获取最新的更新时间
 * @param {Array} campaigns - 广告活动列表
 * @returns {Number} 最新更新时间戳
 */


function _uploadCampaignData() {
  _uploadCampaignData = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee11(task, data) {
    var res, succCreator, succReport;
    return getCreatorProgram_regeneratorRuntime().wrap(function _callee11$(_context11) {
      while (1) {
        switch (_context11.prev = _context11.next) {
          case 0:
            _context11.prev = 0;
            _context11.next = 3;
            return Object(data_task["d" /* uploadTask */])({
              code: 4,
              msg: '上传创作者&报告数据',
              result: {
                creatorsAndReports: data,
                cacheData: buildUploadData(task),
                msg: task.msg
              }
            }, task);

          case 3:
            res = _context11.sent;

            if (!res) {
              _context11.next = 11;
              break;
            }

            succCreator = (data === null || data === void 0 ? void 0 : data.reduce(function (arr, item) {
              var _item$creators2;

              return arr + (((_item$creators2 = item.creators) === null || _item$creators2 === void 0 ? void 0 : _item$creators2.length) || 0);
            }, 0)) || 0;
            succReport = data === null || data === void 0 ? void 0 : data.filter(function (item) {
              return item.report;
            }).length;
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u521B\u4F5C\u8005&\u62A5\u544A\u6570\u636E\u4E0A\u4F20\u6210\u529F\uFF0C\u521B\u4F5C\u8005\u6570\u91CF\uFF1A".concat(succCreator, "\uFF0C\u62A5\u544A\u6570\u91CF\uFF1A").concat(succReport));
            return _context11.abrupt("return", true);

          case 11:
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u4E0A\u4F20\u521B\u4F5C\u8005&\u62A5\u544A\u6570\u636E\u5931\u8D25");

          case 12:
            return _context11.abrupt("return", res);

          case 15:
            _context11.prev = 15;
            _context11.t0 = _context11["catch"](0);
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u4E0A\u4F20\u6570\u636E\u5F02\u5E38: ".concat(Object(util["u" /* isError */])(_context11.t0)));
            return _context11.abrupt("return", false);

          case 19:
          case "end":
            return _context11.stop();
        }
      }
    }, _callee11, null, [[0, 15]]);
  }));
  return _uploadCampaignData.apply(this, arguments);
}

function getLatestUpdateTime(campaigns) {
  if (!campaigns || campaigns.length === 0) return 0;
  return Math.max.apply(Math, getCreatorProgram_toConsumableArray(campaigns.map(function (c) {
    return c.lastUpdatedDateTimeInEpochMills || 0;
  })));
}
/**
 * 获取品牌列表流程
 */


function getBrandListFlow(_x15) {
  return _getBrandListFlow.apply(this, arguments);
}
/**
 * 获取广告活动流程
 */


function _getBrandListFlow() {
  _getBrandListFlow = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee12(task) {
    var brands, uploadBrandRes;
    return getCreatorProgram_regeneratorRuntime().wrap(function _callee12$(_context12) {
      while (1) {
        switch (_context12.prev = _context12.next) {
          case 0:
            _context12.prev = 0;
            log["a" /* default */].setLog('[创作者计划]开始获取品牌列表');
            _context12.next = 4;
            return getAllBrands(task);

          case 4:
            brands = _context12.sent;

            if (brands) {
              _context12.next = 10;
              break;
            }

            task.status = 20;
            task.error_time = 10;
            task.paginator = null;
            return _context12.abrupt("return", false);

          case 10:
            if (!(brands.length === 0)) {
              _context12.next = 14;
              break;
            }

            task.msg = '未获取到品牌列表';
            log["a" /* default */].setLog('[创作者计划]未获取到品牌列表');
            return _context12.abrupt("return", []);

          case 14:
            _context12.next = 16;
            return Object(data_task["d" /* uploadTask */])({
              code: 4,
              msg: '上传品牌数据',
              result: {
                brands: brands
              }
            }, task);

          case 16:
            uploadBrandRes = _context12.sent;

            if (uploadBrandRes) {
              _context12.next = 21;
              break;
            }

            task.msg = '上传品牌列表数据失败';
            log["a" /* default */].setLog('[创作者计划]上传品牌列表数据失败');
            return _context12.abrupt("return", false);

          case 21:
            return _context12.abrupt("return", brands);

          case 24:
            _context12.prev = 24;
            _context12.t0 = _context12["catch"](0);
            task.msg = "[\u521B\u4F5C\u8005\u8BA1\u5212]\u4EFB\u52A1\u6267\u884C\u5F02\u5E38: ".concat(Object(util["u" /* isError */])(_context12.t0));
            task.status = 14;
            log["a" /* default */].setLog(task.msg);
            return _context12.abrupt("return", false);

          case 30:
          case "end":
            return _context12.stop();
        }
      }
    }, _callee12, null, [[0, 24]]);
  }));
  return _getBrandListFlow.apply(this, arguments);
}

function getCampaignListFlow(_x16, _x17) {
  return _getCampaignListFlow.apply(this, arguments);
}
/**
 * 遍历广告活动获取创作者和报告
 */


function _getCampaignListFlow() {
  _getCampaignListFlow = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee13(task, brands) {
    var isRunBrands, succUploadCampaigns, _loop, i, _ret3;

    return getCreatorProgram_regeneratorRuntime().wrap(function _callee13$(_context14) {
      while (1) {
        switch (_context14.prev = _context14.next) {
          case 0:
            isRunBrands = new Map();
            succUploadCampaigns = [];
            _context14.prev = 2;
            _loop = /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _loop(i) {
              var brand, _yield$getCampaignsBy, code, msg, nextToken, total, pageNumber, allCampaigns, failCampaigns, batchArray, _i, _batchArray, batch, uploadRes, latestTime;

              return getCreatorProgram_regeneratorRuntime().wrap(function _loop$(_context13) {
                while (1) {
                  switch (_context13.prev = _context13.next) {
                    case 0:
                      brand = brands[i];
                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u5F00\u59CB\u83B7\u53D6\u54C1\u724C ".concat(brand.brandName, " \u7684\u5E7F\u544A\u6D3B\u52A8\u5217\u8868")); // 获取该品牌的广告活动列表（增量获取）

                      _context13.next = 4;
                      return getCampaignsByBrand(task, brand);

                    case 4:
                      _yield$getCampaignsBy = _context13.sent;
                      code = _yield$getCampaignsBy.code;
                      msg = _yield$getCampaignsBy.msg;
                      nextToken = _yield$getCampaignsBy.nextToken;
                      total = _yield$getCampaignsBy.total;
                      pageNumber = _yield$getCampaignsBy.pageNumber;
                      allCampaigns = _yield$getCampaignsBy.allCampaigns;

                      if (!(code === 0 && allCampaigns.length === 0)) {
                        _context13.next = 14;
                        break;
                      }

                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u54C1\u724C ".concat(brand.brandName, " \u6CA1\u6709\u65B0\u7684\u5E7F\u544A\u6D3B\u52A8"));
                      return _context13.abrupt("return", "continue");

                    case 14:
                      if (!(code === 2)) {
                        _context13.next = 17;
                        break;
                      }

                      log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u54C1\u724C ".concat(brand.brandName, " \u83B7\u53D6\u5E7F\u544A\u6D3B\u52A8\u5931\u8D25: ").concat(msg));
                      return _context13.abrupt("return", "continue");

                    case 17:
                      failCampaigns = []; // 先上报活动,分批，一批1000个

                      batchArray = Array.from({
                        length: Math.ceil(allCampaigns.length / 1000)
                      }, function (_, i) {
                        return allCampaigns.slice(i * 1000, (i + 1) * 1000);
                      });
                      _i = 0, _batchArray = batchArray;

                    case 20:
                      if (!(_i < _batchArray.length)) {
                        _context13.next = 35;
                        break;
                      }

                      batch = _batchArray[_i];
                      _context13.next = 24;
                      return Object(data_task["d" /* uploadTask */])({
                        code: 4,
                        msg: '上传广告活动数据',
                        result: {
                          campaigns: {
                            list: batch,
                            total: total
                          },
                          cacheData: buildUploadData(task),
                          msg: task.msg
                        }
                      }, task);

                    case 24:
                      uploadRes = _context13.sent;

                      if (uploadRes) {
                        _context13.next = 31;
                        break;
                      }

                      log["a" /* default */].setLog('[创作者计划]上传广告活动列表数据失败，记录缓存');
                      failCampaigns.push.apply(failCampaigns, getCreatorProgram_toConsumableArray(batch));
                      return _context13.abrupt("continue", 32);

                    case 31:
                      succUploadCampaigns.push.apply(succUploadCampaigns, getCreatorProgram_toConsumableArray(batch));

                    case 32:
                      _i++;
                      _context13.next = 20;
                      break;

                    case 35:
                      if (!(code !== 0 || failCampaigns.length > 0)) {
                        _context13.next = 38;
                        break;
                      }

                      // 获取失败，记录并退出
                      recordBrandFailure(task, {
                        timestamp: getLatestUpdateTime(allCampaigns),
                        brandName: brand.brandName,
                        brandID: brand.brandID,
                        nextToken: nextToken,
                        pageNumber: pageNumber,
                        failCampaigns: failCampaigns,
                        total: total
                      });
                      return _context13.abrupt("return", "continue");

                    case 38:
                      // 更新该品牌的最后更新时间（所有广告活动处理完毕后才记录）
                      latestTime = getLatestUpdateTime(allCampaigns);

                      if (latestTime > 0) {
                        task.lastUpdateTimes[brand.brandID] = latestTime;
                        log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u66F4\u65B0\u54C1\u724C ".concat(brand.brandName, " \u6700\u540E\u66F4\u65B0\u65F6\u95F4: ").concat(latestTime));
                      }

                      isRunBrands.set(brand.brandID, true);

                    case 41:
                    case "end":
                      return _context13.stop();
                  }
                }
              }, _loop);
            });
            i = 0;

          case 5:
            if (!(i < brands.length)) {
              _context14.next = 13;
              break;
            }

            return _context14.delegateYield(_loop(i), "t0", 7);

          case 7:
            _ret3 = _context14.t0;

            if (!(_ret3 === "continue")) {
              _context14.next = 10;
              break;
            }

            return _context14.abrupt("continue", 10);

          case 10:
            i++;
            _context14.next = 5;
            break;

          case 13:
            return _context14.abrupt("return", succUploadCampaigns);

          case 16:
            _context14.prev = 16;
            _context14.t1 = _context14["catch"](2);
            task.msg = "[\u521B\u4F5C\u8005\u8BA1\u5212]\u83B7\u53D6\u5E7F\u544A\u6D3B\u52A8\u5217\u8868\u6267\u884C\u5F02\u5E38: ".concat(Object(util["u" /* isError */])(_context14.t1));
            task.status = 14;
            log["a" /* default */].setLog(task.msg); // 整个流程执行异常，记录未获取到的品牌

            brands.filter(function (brand) {
              return !isRunBrands.has(brand.brandID);
            }).forEach(function (brand) {
              recordBrandFailure(task, {
                timestamp: 0,
                brandName: brand.brandName,
                brandID: brand.brandID,
                nextToken: null,
                pageNumber: 0,
                failCampaigns: [],
                total: 0
              });
            });
            return _context14.abrupt("return", succUploadCampaigns);

          case 23:
          case "end":
            return _context14.stop();
        }
      }
    }, _callee13, null, [[2, 16]]);
  }));
  return _getCampaignListFlow.apply(this, arguments);
}

function getCreatorsAndReportFlow(_x18, _x19) {
  return _getCreatorsAndReportFlow.apply(this, arguments);
}
/**
 * 任务主执行函数
 * @param {Object} task - 任务对象
 * @returns {Promise<Boolean>} 执行结果
 */


function _getCreatorsAndReportFlow() {
  _getCreatorsAndReportFlow = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee14(task, campaigns) {
    var isRunCampaigns, waitUploadData, _iterator5, _step5, campaign, record, creators, report, batchArray, totalCreators, _iterator6, _step6, batch, uploadRes;

    return getCreatorProgram_regeneratorRuntime().wrap(function _callee14$(_context15) {
      while (1) {
        switch (_context15.prev = _context15.next) {
          case 0:
            isRunCampaigns = new Map();
            _context15.prev = 1;
            log["a" /* default */].setLog('[创作者计划]开始遍历广告活动获取创作者和报告');
            waitUploadData = [];
            _iterator5 = getCreatorProgram_createForOfIteratorHelper(campaigns);
            _context15.prev = 5;

            _iterator5.s();

          case 7:
            if ((_step5 = _iterator5.n()).done) {
              _context15.next = 22;
              break;
            }

            campaign = _step5.value;
            // log.setLog(`[创作者计划]获取创作者列表&报告，广告活动: ${campaign.campaignName}`)
            record = {}; // 获取创作者列表

            _context15.next = 12;
            return getCreatorsByCampaign(task, campaign);

          case 12:
            creators = _context15.sent;

            if (Array.isArray(creators)) {
              record.creators = creators;
            } else if (isCreatorsReportsFailureResult(creators)) {
              recordCampaignFailure(task, campaign, 'creators', {
                isNoRetry: creators.isNoRetry,
                msg: creators.msg
              });
            } else if (!creators) {
              recordCampaignFailure(task, campaign, 'creators', {
                msg: task.msg
              });
            } // 生成并下载活动效果报告


            _context15.next = 16;
            return generateAndDownloadReport(task, campaign);

          case 16:
            report = _context15.sent;

            if (isCreatorsReportsFailureResult(report)) {
              recordCampaignFailure(task, campaign, 'report', {
                isNoRetry: report.isNoRetry,
                msg: report.msg
              });
            } else if (!report) {
              recordCampaignFailure(task, campaign, 'report', {
                msg: task.msg
              });
            } else {
              record.report = report;
            }

            if (record.creators || record.report) {
              waitUploadData.push(getCreatorProgram_objectSpread({
                campaignId: campaign.campaignId,
                campaignName: campaign.campaignName,
                brandID: campaign.brandId
              }, record));
            }

            isRunCampaigns.set(campaign.campaignId, true);

          case 20:
            _context15.next = 7;
            break;

          case 22:
            _context15.next = 27;
            break;

          case 24:
            _context15.prev = 24;
            _context15.t0 = _context15["catch"](5);

            _iterator5.e(_context15.t0);

          case 27:
            _context15.prev = 27;

            _iterator5.f();

            return _context15.finish(27);

          case 30:
            batchArray = chunkCreatorsAndReportsForUpload(waitUploadData);
            totalCreators = waitUploadData.reduce(function (s, x) {
              var _x$creators$length2, _x$creators2;

              return s + ((_x$creators$length2 = (_x$creators2 = x.creators) === null || _x$creators2 === void 0 ? void 0 : _x$creators2.length) !== null && _x$creators$length2 !== void 0 ? _x$creators$length2 : 0);
            }, 0);
            log["a" /* default */].setLog("[\u521B\u4F5C\u8005\u8BA1\u5212]\u521B\u4F5C\u8005&\u62A5\u544A\u5206\u6279\u4E0A\u62A5\uFF1A".concat(waitUploadData.length, " \u4E2A\u5E7F\u544A\u6D3B\u52A8\u3001").concat(totalCreators, " \u6761\u521B\u4F5C\u8005\uFF0C\u5206 ").concat(batchArray.length, " \u6279\uFF08\u6BCF\u6279\u6700\u591A ").concat(CREATORS_UPLOAD_BATCH_MAX, " \u6761\u521B\u4F5C\u8005\uFF09"));
            _iterator6 = getCreatorProgram_createForOfIteratorHelper(batchArray);
            _context15.prev = 34;

            _iterator6.s();

          case 36:
            if ((_step6 = _iterator6.n()).done) {
              _context15.next = 44;
              break;
            }

            batch = _step6.value;
            _context15.next = 40;
            return uploadCampaignData(task, batch);

          case 40:
            uploadRes = _context15.sent;

            if (!uploadRes) {
              // 上报失败，记录失败
              batch.forEach(function (item) {
                recordCampaignFailure(task, item, 'creators', {
                  msg: task.msg
                });
                recordCampaignFailure(task, item, 'report', {
                  msg: task.msg
                });
              });
            }

          case 42:
            _context15.next = 36;
            break;

          case 44:
            _context15.next = 49;
            break;

          case 46:
            _context15.prev = 46;
            _context15.t1 = _context15["catch"](34);

            _iterator6.e(_context15.t1);

          case 49:
            _context15.prev = 49;

            _iterator6.f();

            return _context15.finish(49);

          case 52:
            _context15.next = 61;
            break;

          case 54:
            _context15.prev = 54;
            _context15.t2 = _context15["catch"](1);
            task.msg = "[\u521B\u4F5C\u8005\u8BA1\u5212]\u904D\u5386\u5E7F\u544A\u6D3B\u52A8\u83B7\u53D6\u521B\u4F5C\u8005\u548C\u62A5\u544A\u6267\u884C\u5F02\u5E38: ".concat(Object(util["u" /* isError */])(_context15.t2));
            task.status = 14;
            log["a" /* default */].setLog(task.msg); // 整个流程执行异常，记录未获取到的广告活动

            campaigns.filter(function (campaign) {
              return !isRunCampaigns.has(campaign.campaignId);
            }).forEach(function (campaign) {
              recordCampaignFailure(task, campaign, 'creators');
              recordCampaignFailure(task, campaign, 'report');
            });
            return _context15.abrupt("return", false);

          case 61:
          case "end":
            return _context15.stop();
        }
      }
    }, _callee14, null, [[1, 54], [5, 24, 27, 30], [34, 46, 49, 52]]);
  }));
  return _getCreatorsAndReportFlow.apply(this, arguments);
}

function getCreatorProgram_run(_x20) {
  return Creator_getCreatorProgram_run.apply(this, arguments);
} // 构建上报后端的分页缓存数据（只包含 campaignReportsRecords 和 lastUpdateTimes）


function Creator_getCreatorProgram_run() {
  Creator_getCreatorProgram_run = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee15(task) {
    var brands, campaigns;
    return getCreatorProgram_regeneratorRuntime().wrap(function _callee15$(_context16) {
      while (1) {
        switch (_context16.prev = _context16.next) {
          case 0:
            if (!(task.status === 99)) {
              _context16.next = 2;
              break;
            }

            return _context16.abrupt("return", false);

          case 2:
            _context16.prev = 2;

            if (!hasFailedRecords(task)) {
              _context16.next = 11;
              break;
            }

            _context16.next = 6;
            return retryFailedRecords(task);

          case 6:
            _context16.next = 8;
            return retryCreatorsAndReport(task);

          case 8:
            return _context16.abrupt("return", true);

          case 11:
            if (!(hasCreatorsFailedRecords(task) && task.error_time > 0)) {
              _context16.next = 17;
              break;
            }

            _context16.next = 14;
            return retryCreatorsAndReport(task);

          case 14:
            return _context16.abrupt("return", true);

          case 17:
            if (!hasCreatorsFailedRecords(task)) {
              _context16.next = 20;
              break;
            }

            _context16.next = 20;
            return retryCreatorsAndReport(task);

          case 20:
            _context16.next = 22;
            return getBrandListFlow(task);

          case 22:
            brands = _context16.sent;

            if (brands) {
              _context16.next = 25;
              break;
            }

            return _context16.abrupt("return", false);

          case 25:
            // 记录总品牌数
            task.paginator.totalItems = brands.length; // 3. 获取广告活动

            _context16.next = 28;
            return getCampaignListFlow(task, brands);

          case 28:
            campaigns = _context16.sent;

            if (campaigns) {
              _context16.next = 31;
              break;
            }

            return _context16.abrupt("return", false);

          case 31:
            if (!(campaigns.length === 0)) {
              _context16.next = 33;
              break;
            }

            return _context16.abrupt("return", true);

          case 33:
            _context16.next = 35;
            return getCreatorsAndReportFlow(task, campaigns);

          case 35:
            log["a" /* default */].setLog('[创作者计划]所有品牌处理完成');
            return _context16.abrupt("return", true);

          case 37:
            _context16.next = 45;
            break;

          case 39:
            _context16.prev = 39;
            _context16.t0 = _context16["catch"](2);
            task.msg = "[\u521B\u4F5C\u8005\u8BA1\u5212]\u4EFB\u52A1\u6267\u884C\u5F02\u5E38: ".concat(Object(util["u" /* isError */])(_context16.t0));
            task.status = 14;
            log["a" /* default */].setLog(task.msg);
            return _context16.abrupt("return", false);

          case 45:
          case "end":
            return _context16.stop();
        }
      }
    }, _callee15, null, [[2, 39]]);
  }));
  return Creator_getCreatorProgram_run.apply(this, arguments);
}

function buildUploadData(task) {
  return {
    campaignReportsRecords: task.campaignReportsRecords.map(function (record) {
      var uploadRecord = getCreatorProgram_objectSpread({}, record);

      delete uploadRecord.creatorsNoRetry;
      delete uploadRecord.reportsNoRetry;
      delete uploadRecord.creatorsFailMsg;
      delete uploadRecord.reportsFailMsg;
      delete uploadRecord.campaignName;
      return uploadRecord;
    }),
    lastUpdateTimes: task.lastUpdateTimes
  };
}
/**
 * 亚马逊创作者计划任务主入口
 * @param {Object} task - 任务对象
 * @returns {Promise<Object>} 执行结果
 */


var getCreatorProgram = /*#__PURE__*/function () {
  var _ref = getCreatorProgram_asyncToGenerator( /*#__PURE__*/getCreatorProgram_regeneratorRuntime().mark(function _callee(task) {
    var isLogin, res, cacheData, code, _task$campaignRecords, retryableCampaignRecords, failBrandCount, failCampaignCount, failCount;

    return getCreatorProgram_regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            _context.next = 3;
            return amazon["a" /* default */].checkAmazonAdsLogin(task);

          case 3:
            isLogin = _context.sent;

            if (isLogin) {
              _context.next = 6;
              break;
            }

            return _context.abrupt("return", {
              code: 2,
              msg: task.msg || '亚马逊广告未登录'
            });

          case 6:
            // 重置限速闸门（避免跨任务复用旧间隔）
            reportGate = Object(util["e" /* createCooldownGate */])({
              minInterval: 2000
            }); // 初始化任务数据和模块级变量

            initTaskData(task); // 执行任务

            _context.next = 10;
            return getCreatorProgram_run(task);

          case 10:
            res = _context.sent;
            cacheData = buildUploadData(task);

            if (res) {
              _context.next = 15;
              break;
            }

            code = [13].includes(task.status) ? 2 : 1;
            return _context.abrupt("return", {
              code: code,
              msg: task.msg || '任务执行失败',
              result: {
                cacheData: cacheData
              }
            });

          case 15:
            if (!(hasFailedRecords(task) || hasCreatorsFailedRecords(task))) {
              _context.next = 23;
              break;
            }

            // 收集品牌下有广告活动或报告获取失败的数量
            retryableCampaignRecords = task.campaignReportsRecords.filter(function (record) {
              return record.creatorsFail && !record.creatorsNoRetry || record.reportsFail && !record.reportsNoRetry;
            });
            failBrandCount = task.campaignRecords.map(function (_ref2) {
              var brandID = _ref2.brandID,
                  brandId = _ref2.brandId;
              return brandID || brandId;
            });
            failCampaignCount = retryableCampaignRecords.map(function (_ref3) {
              var brandID = _ref3.brandID,
                  brandId = _ref3.brandId;
              return brandID || brandId;
            });
            failCount = new Set([].concat(getCreatorProgram_toConsumableArray(failBrandCount), getCreatorProgram_toConsumableArray(failCampaignCount)));
            task.paginator.curItems = task.paginator.totalItems - failCount.size;
            task.status = 19;
            return _context.abrupt("return", {
              code: 2,
              msg: "\n          \u90E8\u5206\u6570\u636E\u83B7\u53D6\u5931\u8D25\uFF0C".concat(((_task$campaignRecords = task.campaignRecords) === null || _task$campaignRecords === void 0 ? void 0 : _task$campaignRecords.length) || 0, "\u4E2A\u54C1\u724C\u83B7\u53D6\u5E7F\u544A\u6D3B\u52A8\u5931\u8D25\u3002").concat(retryableCampaignRecords.length || 0, "\u4E2A\u5E7F\u544A\u6D3B\u52A8\u83B7\u53D6\u521B\u4F5C\u8005\u5217\u8868\u6216\u62A5\u544A\u5931\u8D25"),
              result: {
                cacheData: cacheData
              }
            });

          case 23:
            task.paginator.curItems = task.paginator.totalItems;
            return _context.abrupt("return", {
              code: 0,
              result: {
                cacheData: cacheData
              },
              msg: task.msg || '获取完成'
            });

          case 27:
            _context.prev = 27;
            _context.t0 = _context["catch"](0);
            task.status = 14;
            return _context.abrupt("return", {
              code: 1,
              msg: "\u4EFB\u52A1\u5F02\u5E38: ".concat(Object(util["u" /* isError */])(_context.t0))
            });

          case 31:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 27]]);
  }));

  return function getCreatorProgram(_x21) {
    return _ref.apply(this, arguments);
  };
}();
// CONCATENATED MODULE: ./src/core/index.js
 // import { getEmail } from '@/core/getEmail'

















 // vc





 // Creator


var cores = {
  getReport: getReport,
  getEmail: getEmail,
  getReference: getReference,
  replyQA: replyQA,
  getIpi: getIpi,
  getMoney: getMoney,
  getSettlements: getSettlements,
  getDiscount: getDiscount,
  getBestDeal: getBestDeal,
  getCoupons: getCoupons,
  getPromotion: getPromotion,
  getBuyer: getBuyer_getBuyer,
  getReview: getReview,
  deleteFeedback: deleteFeedback,
  getPromotionDetails: getPromotionDetails,
  getCouponDetails: getCouponDetails,
  getDiscountDetails: getDiscountDetails,
  getBestDealDetails: getBestDealDetails,
  dealInventory: dealInventory,
  dealInventoryModify: dealInventoryModify,
  getStorePerformance: getStorePerformance,
  getDelayedSettlementReport: getDelayedSettlementReport,
  getCartonLabelPDF: getCartonLabelPDF,
  getCoop: getCoop,
  getRemittance: getRemittance,
  getInvoice: getInvoice,
  getARN: getARN,
  getCreatorProgram: getCreatorProgram
};
var taskHandleMap = {
  1: {
    name: 'Detail Page Sales and Traffic by Child Item, BusinessReport-Asin',
    type: 'report',
    handle: 'getReport',
    component: 'Finance'
  },
  2: {
    name: 'Detail Page Sales and Traffic by Parent Item, BusinessReport-ParentAsin',
    type: 'report',
    handle: 'getReport',
    component: 'Finance'
  },
  11: {
    name: 'Standard Orders-Transaction , Transaction-B2C',
    type: 'report',
    handle: 'getReport',
    component: 'Finance'
  },
  12: {
    name: 'Standard Orders-Summary, Summary-B2C',
    type: 'report',
    handle: 'getReport',
    component: 'Finance'
  },
  13: {
    name: 'Invoiced Orders-Transaction , Transaction-B2B',
    // 除美国站之外是没有这个类型报表，如果其他站点显示获取成功了，但是后端是并未写入这份报告
    type: 'report',
    handle: 'getReport',
    component: 'Finance'
  },
  14: {
    name: 'Invoiced Orders-Summary, Summary-B2B',
    type: 'report',
    handle: 'getReport',
    component: 'Finance'
  },
  15: {
    name: 'Transaction-Electronic Transactions',
    type: 'report',
    handle: 'getReport',
    component: 'Finance'
  },
  16: {
    name: 'Summary-Electronic Transactions',
    type: 'report',
    handle: 'getReport',
    component: 'Finance'
  },
  17: {
    name: 'Transaction-COD Transactions',
    type: 'report',
    handle: 'getReport',
    component: 'Finance'
  },
  18: {
    name: 'Summary-COD Transactions',
    type: 'report',
    handle: 'getReport',
    component: 'Finance'
  },
  21: {
    name: '账户余额截图',
    type: 'report',
    handle: 'getReport',
    component: 'Finance'
  },
  41: {
    name: '抓取refereceid',
    type: 'reference',
    handle: 'getReference',
    component: 'Reference'
  },
  42: {
    name: '抓取IPI数据',
    type: 'ipi',
    handle: 'getIpi',
    component: 'Ipi'
  },
  51: {
    name: '定时同步站内信',
    type: 'email',
    handle: 'getEmail' // component: 'Finance'

  },
  52: {
    name: '回复QA',
    type: 'qa',
    handle: 'replyQA',
    component: 'ReplyQa'
  },
  53: {
    name: '优惠券',
    type: 'coupon',
    handle: 'getCoupons',
    component: 'Coupon'
  },
  54: {
    name: '秒杀',
    type: 'bestDeal',
    handle: 'getBestDeal',
    component: 'Coupon'
  },
  55: {
    name: '会员折扣与价格折扣',
    type: 'discount',
    handle: 'getDiscount',
    component: 'Coupon'
  },
  56: {
    name: '促销管理',
    type: 'promotion',
    handle: 'getPromotion',
    component: 'Coupon'
  },
  57: {
    name: '买家之声',
    type: 'buyer',
    handle: 'getBuyer',
    component: 'Coupon'
  },
  58: {
    name: '获取review订单号',
    type: 'review',
    handle: 'getReview',
    component: 'GeneralTemplate'
  },
  59: {
    name: '请求亚马逊删除Feedback',
    type: 'feedback',
    handle: 'deleteFeedback',
    component: 'deleteFeedback'
  },
  60: {
    name: '提现',
    type: 'money',
    handle: 'getMoney',
    component: 'Withdrawal'
  },
  61: {
    name: '获取settelment ID和预留金额',
    type: 'settlements',
    handle: 'getSettlements',
    component: 'GeneralTemplate'
  },
  62: {
    name: '促销活动-优惠券详情',
    type: 'couponDetail',
    handle: 'getCouponDetails',
    component: 'PromotionDetail'
  },
  63: {
    name: '促销活动-秒杀详情',
    type: 'bestDealDetail',
    handle: 'getBestDealDetails',
    component: 'PromotionDetail'
  },
  64: {
    name: '促销活动-会员折扣与价格折扣详情',
    type: 'discountDetail',
    handle: 'getDiscountDetails',
    component: 'PromotionDetail'
  },
  65: {
    name: '促销活动-管理促销详情',
    type: 'promotionDetail',
    handle: 'getPromotionDetails',
    component: 'PromotionDetail'
  },
  70: {
    name: '秒杀调库存-初始化',
    type: 'dealInventoryInit',
    handle: 'dealInventory',
    component: 'dealInventory'
  },
  71: {
    name: '秒杀调库存-每日更新',
    type: 'dealInventoryUpdate',
    handle: 'dealInventory',
    component: 'dealInventory'
  },
  72: {
    name: '秒杀调库存-调库存',
    type: 'dealInventoryModify',
    handle: 'dealInventoryModify',
    component: 'dealInventory'
  },
  73: {
    name: '秒杀调库存-获取秒杀成果数据',
    type: 'dealInventoryResult',
    handle: 'dealInventory',
    component: 'dealInventory'
  },
  74: {
    name: '同步业绩通知',
    type: 'storePerformance',
    handle: 'getStorePerformance',
    component: 'Performance'
  },
  75: {
    name: '获取延迟结算报告',
    type: 'delayedSettlementReport',
    handle: 'getDelayedSettlementReport',
    component: 'GeneralTemplate'
  },
  76: {
    name: '获取VC-PO货件箱唛',
    type: 'cartonLabelPDF',
    handle: 'getCartonLabelPDF',
    component: 'GeneralTemplate'
  },
  81: {
    name: 'VC-PO发票总账&明细账',
    type: 'invoiceSummary',
    handle: 'getInvoice',
    component: 'Coupon'
  },
  83: {
    name: 'VC-COOP发票总账',
    type: 'coopSummary',
    handle: 'getCoop',
    component: 'Finance'
  },
  84: {
    name: 'VC-COOP发票明细账',
    type: 'coopDetail',
    handle: 'getCoop',
    component: 'Coupon'
  },
  85: {
    name: 'VC-COOP发票备份账',
    type: 'coopBackup',
    handle: 'getCoop',
    component: 'Coupon'
  },
  86: {
    name: 'VC-回款报告（Remittance payment)',
    type: 'remittancePayment',
    handle: 'getRemittance',
    component: 'Finance'
  },
  87: {
    name: 'VC-获取货件ARN',
    type: 'arnId',
    handle: 'getARN',
    component: 'GeneralTemplate'
  },
  88: {
    name: '亚马逊创作者计划',
    type: 'creatorProgram',
    handle: 'getCreatorProgram',
    component: 'Coupon'
  }
}; // window.coreTest = (type_id, sid, market_code) => {
//   const task = taskHandleMap[type_id]
//   const testData = {
//     55: {
//       market_code: market_code || 'US',
//       seller_id: 'A303OEQ77COZA8',
//       sid: sid || 27,
//       type_id: 55,
//       date: '',
//       failDetail: []
//     },
//     54: {
//       market_code: market_code || 'US',
//       seller_id: 'A303OEQ77COZA8',
//       type_id: 54,
//       sid: sid || 27
//     },
//     53: {
//       market_code: market_code || 'US',
//       seller_id: 'A303OEQ77COZA8',
//       sid: sid || 27,
//       type_id: 53,
//       date: '',
//       failDetail: []
//     },
//     56: {
//       market_code: market_code || 'US',
//       seller_id: 'A303OEQ77COZA8',
//       sid: sid || 27,
//       type_id: 56,
//     },
//     57: {
//       market_code: market_code || 'US',
//       seller_id: 'A303OEQ77COZA8',
//       sid: sid || 27,
//       type_id: 57,
//     },
//     60: {
//       market_code: market_code || 'US',
//       seller_id: 'A303OEQ77COZA8',
//       sid: sid || 27,
//       type_id: 60,
//     },
//     62: {
//       market_code: market_code || 'US',
//       seller_id: 'A303OEQ77COZA8',
//       sid: sid || 27,
//       type_id: 62,
//     },
//     63: {
//       market_code: market_code || 'US',
//       seller_id: 'A303OEQ77COZA8',
//       sid: sid || 27,
//       type_id: 63,
//     },
//     64: {
//       market_code: market_code || 'US',
//       seller_id: 'A303OEQ77COZA8',
//       sid: sid || 27,
//       type_id: 64,
//     },
//     65: {
//       market_code: market_code || 'US',
//       seller_id: 'A303OEQ77COZA8',
//       sid: sid || 27,
//       type_id: 65,
//     },
//     42: {
//       market_code: market_code || 'US',
//       seller_id: 'A303OEQ77COZA8',
//       sid: sid || 27,
//       type_id: 42,
//     }
//   }
//   if (!type_id || !task) return
//   cores[task.handle](testData[type_id])
// }

/***/ }),

/***/ "c84e":
/***/ (function(module, exports, __webpack_require__) {

var assign = __webpack_require__("dce5");

/*
 * Cheerio default options
 */

exports.default = {
  withDomLvl1: true,
  normalizeWhitespace: false,
  xml: false,
  decodeEntities: true
};

exports.flatten = function(options) {
  return options && options.xml ? assign({xmlMode: true}, options.xml) : options;
};

/***/ }),

/***/ "c869":
/***/ (function(module, exports, __webpack_require__) {

var getNative = __webpack_require__("0b07"),
    root = __webpack_require__("2b3e");

/* Built-in method references that are verified to be native. */
var Set = getNative(root, 'Set');

module.exports = Set;


/***/ }),

/***/ "c8af":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");

module.exports = function normalizeHeaderName(headers, normalizedName) {
  utils.forEach(headers, function processHeader(value, name) {
    if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {
      headers[normalizedName] = value;
      delete headers[name];
    }
  });
};


/***/ }),

/***/ "c8ba":
/***/ (function(module, exports) {

var g;

// This works in non-strict mode
g = (function() {
	return this;
})();

try {
	// This works if eval is allowed (see CSP)
	g = g || new Function("return this")();
} catch (e) {
	// This works if the window reference is available
	if (typeof window === "object") g = window;
}

// g can still be undefined, but nothing to do about it...
// We return undefined, instead of nothing here, so it's
// easier to handle this case. if(!global) { ...}

module.exports = g;


/***/ }),

/***/ "c8fe":
/***/ (function(module, exports, __webpack_require__) {

var cloneArrayBuffer = __webpack_require__("f8af");

/**
 * Creates a clone of `typedArray`.
 *
 * @private
 * @param {Object} typedArray The typed array to clone.
 * @param {boolean} [isDeep] Specify a deep clone.
 * @returns {Object} Returns the cloned typed array.
 */
function cloneTypedArray(typedArray, isDeep) {
  var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;
  return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
}

module.exports = cloneTypedArray;


/***/ }),

/***/ "ca00":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "F", function() { return responseInterceptorsEvent; });
/* unused harmony export get */
/* unused harmony export post */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "l", function() { return gateGet; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "m", function() { return gatePost; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "k", function() { return gateDelete; });
/* unused harmony export request */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "E", function() { return requestProxy; });
/* unused harmony export refreshToken */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "z", function() { return nativeRequest; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "L", function() { return uploadFile; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "B", function() { return recordLog; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return checkVersion; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return forceUpdate; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "K", function() { return unique; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return deepClone; });
/* unused harmony export getCookie */
/* unused harmony export setCookie */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return executable; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "J", function() { return suspend; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "G", function() { return setBadge; });
/* unused harmony export isFirefox */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return delayed; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return customizeFormatDate; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _uuid; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "A", function() { return quickSort; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "p", function() { return getCookies; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "o", function() { return getAllCookies; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "H", function() { return setCookies; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "y", function() { return localStorage; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return alarms; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "I", function() { return setRequestHearder; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "D", function() { return removeDeclarativeNetRequestRules; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "C", function() { return removeAllDeclarativeNetRequestRules; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "q", function() { return getNameByUrl; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "t", function() { return getServiceTime; });
/* unused harmony export PromiseAllSettled */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "n", function() { return generateAsync; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "x", function() { return keepServiceWorker; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return clearKeepServiceWorker; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "v", function() { return isNoRetryHttpStatus; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "u", function() { return isError; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "r", function() { return getRandomSeconds; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "w", function() { return isRateLimitError; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "s", function() { return getRetryAfterMs; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return createCooldownGate; });
/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("bc3a");
/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _data_log_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("6b23");
/* harmony import */ var vue_uuid__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("f029");
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("1c1e");
/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("db49");
/* harmony import */ var _data_amazon__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("ef13");
/* harmony import */ var vue__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("2b0e");
/* harmony import */ var jszip__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("c4e3");
/* harmony import */ var jszip__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(jszip__WEBPACK_IMPORTED_MODULE_7__);
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }

function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

// 工具函数库

 // import CryptoJS from 'crypto-js'






 // 条件导入 mock 文件，仅在测试环境中引入

var mockEndpoints = [];
var enableMock = false;

if (['test', 'development'].includes("production")) {
  var mockModule = __webpack_require__("245a");

  mockEndpoints = mockModule.mockEndpoints || [];
  enableMock = mockModule.enableMock || false;
} // aes加密密钥
// const aesKey = CryptoJS.enc.Utf8.parse('Xf3QwTqOYbB28i2w')
// axios默认适配器


axios__WEBPACK_IMPORTED_MODULE_0___default.a.defaults.adapter = _utils_fetch__WEBPACK_IMPORTED_MODULE_3__[/* default */ "b"];

function gateServeurl(_x) {
  return _gateServeurl.apply(this, arguments);
} // 请求拦截器


function _gateServeurl() {
  _gateServeurl = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9(server) {
    var _yield$localStorage$g2, platform;

    return _regeneratorRuntime().wrap(function _callee9$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            _context9.next = 2;
            return localStorage.getItem(['platform']);

          case 2:
            _yield$localStorage$g2 = _context9.sent;
            platform = _yield$localStorage$g2.platform;

            // 新版多平台走newPlatform服务
            if (platform && !['amazon', 'vc'].includes(platform) && ['client', 'task', 'upload'].includes(server)) {
              server = 'newPlatform';
            }

            return _context9.abrupt("return", {
              client: 'finance-client-service/',
              task: 'finance-task-center/',
              newPlatform: 'basic-plugin-operator/',
              // notice: env === 'pro' ? 'web_plug_notice_service/' : 'web_notice_service/',
              notice: 'web_plug_notice_service/',
              upload: 'upload-center/',
              promotion: 'promotion-api/',
              voc: 'amzcs-report-voc/',
              uc: 'newadmin/'
            }[server]);

          case 6:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee9);
  }));
  return _gateServeurl.apply(this, arguments);
}

axios__WEBPACK_IMPORTED_MODULE_0___default.a.interceptors.request.use(function (config) {
  // 处理mock数据
  if (enableMock) {
    var _URL = new URL(config.url),
        pathname = _URL.pathname,
        search = _URL.search;

    var mockData = mockEndpoints.find(function (item) {
      return item.key === pathname && (!item.search || item.search === search);
    });

    if (mockData && mockData.enable) {
      var file = mockData.file,
          delay = mockData.delay,
          headers = mockData.headers,
          data = mockData.data,
          fileUrl = mockData.fileUrl;
      return new Promise( /*#__PURE__*/function () {
        var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(resolve) {
          var res, resolveParams;
          return _regeneratorRuntime().wrap(function _callee$(_context) {
            while (1) {
              switch (_context.prev = _context.next) {
                case 0:
                  _context.next = 2;
                  return delayed(delay);

                case 2:
                  resolveParams = _objectSpread(_objectSpread({}, config), {}, {
                    status: 200,
                    statusText: 'OK',
                    headers: headers || {}
                  });

                  if (fileUrl) {
                    axios__WEBPACK_IMPORTED_MODULE_0___default()({
                      method: 'GET',
                      url: fileUrl,
                      responseType: 'blob'
                    }).then(function (fileRes) {
                      resolve(_objectSpread(_objectSpread({}, config), {}, {
                        adapter: function adapter() {
                          return Promise.resolve(_objectSpread(_objectSpread({}, resolveParams), fileRes));
                        }
                      }));
                    });
                  } else {
                    res = data || file && __webpack_require__("3631")("./".concat(file)); // js模块

                    if (res.default) {
                      res = res.default;
                    }

                    resolveParams.data = res;
                    resolve(_objectSpread(_objectSpread({}, config), {}, {
                      adapter: function adapter() {
                        return Promise.resolve(resolveParams);
                      }
                    }));
                  }

                case 4:
                case "end":
                  return _context.stop();
              }
            }
          }, _callee);
        }));

        return function (_x2) {
          return _ref.apply(this, arguments);
        };
      }());
    }
  } // 如果当前有验证码提醒，则不请求亚马逊接口


  return localStorage.getItem(['amazonVerifycode']).then(function (_ref2) {
    var amazonVerifycode = _ref2.amazonVerifycode;

    if (config.url && config.url.toLocaleLowerCase().indexOf('amazon') > -1 && amazonVerifycode) {
      var controller = new AbortController();
      config.signal = controller.signal;
      alarms.setTimeout(function () {
        controller.abort();
        console.log("".concat(amazonVerifycode.host, "\u9700\u8981\u8F93\u5165\u9A8C\u8BC1\u7801\uFF0C\u518D\u8F93\u5165\u4E4B\u524D\uFF0C\u53D6\u6D88\u6240\u6709\u4E9A\u9A6C\u900A\u8BF7\u6C42"));
      }, 'interceptorsVerifycode', 0);
    } else {
      // 增加请求id，用于设置超时定时器
      config.requestId = vue_uuid__WEBPACK_IMPORTED_MODULE_2__[/* uuid */ "b"].v4(); // 增加请求超时取消

      config.signal = Object(_utils_fetch__WEBPACK_IMPORTED_MODULE_3__[/* cancelRequest */ "a"])(config.requestId);
    }

    return config;
  });
}, function (error) {
  return Promise.reject(error);
}); // 响应拦截事件处理队列

var responseInterceptorsEvent = []; // 响应拦截器

axios__WEBPACK_IMPORTED_MODULE_0___default.a.interceptors.response.use(function (response) {
  if (responseInterceptorsEvent.length > 0) {
    responseInterceptorsEvent.forEach(function (handle) {
      return handle(response);
    });
  }

  return response;
}, function (error) {
  return Promise.reject(error);
}); // 判断该安装包来源：chrome（谷歌商店）、firefox（火狐商店）、manual（手动安装）

function getExtensionSource() {
  var id;

  try {
    if (false) { var manifest; } else {
      id = chrome.runtime && chrome.runtime.id;
    }
  } catch (e) {
    _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('获取扩展id失败：', isError(e));
  }

  _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('扩展id:', id);
  var idMap = {
    ohndmfaecddmecehfdidjhncfdajjeed: 'chrome',
    '{f8eca478-76ca-43a7-a789-ce7c740032c8}': 'firefox'
  }; // return idMap[id]

  return id;
}

var extensionId = getExtensionSource(); // http get 工具函数 获取数据

function get(url, params) {
  return request(_config__WEBPACK_IMPORTED_MODULE_4__[/* api */ "f"] + url, 'GET', params);
} // http post 工具函数 获取数据

function post(url, params) {
  return request(_config__WEBPACK_IMPORTED_MODULE_4__[/* api */ "f"] + url, 'POST', params);
} // http get 工具函数 获取数据 - 对接网关

function gateGet(_x3, _x4) {
  return _gateGet.apply(this, arguments);
} // http post 工具函数 获取数据 - 对接网关

function _gateGet() {
  _gateGet = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10(url, params) {
    var serve,
        serviceName,
        _args10 = arguments;
    return _regeneratorRuntime().wrap(function _callee10$(_context10) {
      while (1) {
        switch (_context10.prev = _context10.next) {
          case 0:
            serve = _args10.length > 2 && _args10[2] !== undefined ? _args10[2] : 'client';
            _context10.next = 3;
            return gateServeurl(serve);

          case 3:
            serviceName = _context10.sent;
            return _context10.abrupt("return", request(_config__WEBPACK_IMPORTED_MODULE_4__[/* gateApi */ "g"] + serviceName + url, 'GET', params));

          case 5:
          case "end":
            return _context10.stop();
        }
      }
    }, _callee10);
  }));
  return _gateGet.apply(this, arguments);
}

function gatePost(_x5, _x6) {
  return _gatePost.apply(this, arguments);
} // http post 工具函数 获取数据 - 对接网关

function _gatePost() {
  _gatePost = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11(url, params) {
    var serve,
        serviceName,
        _args11 = arguments;
    return _regeneratorRuntime().wrap(function _callee11$(_context11) {
      while (1) {
        switch (_context11.prev = _context11.next) {
          case 0:
            serve = _args11.length > 2 && _args11[2] !== undefined ? _args11[2] : 'client';
            _context11.next = 3;
            return gateServeurl(serve);

          case 3:
            serviceName = _context11.sent;
            return _context11.abrupt("return", request(_config__WEBPACK_IMPORTED_MODULE_4__[/* gateApi */ "g"] + serviceName + url, 'POST', params));

          case 5:
          case "end":
            return _context11.stop();
        }
      }
    }, _callee11);
  }));
  return _gatePost.apply(this, arguments);
}

function gateDelete(_x7, _x8) {
  return _gateDelete.apply(this, arguments);
} // axios请求封装

function _gateDelete() {
  _gateDelete = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee12(url, params) {
    var serve,
        serviceName,
        _args12 = arguments;
    return _regeneratorRuntime().wrap(function _callee12$(_context12) {
      while (1) {
        switch (_context12.prev = _context12.next) {
          case 0:
            serve = _args12.length > 2 && _args12[2] !== undefined ? _args12[2] : 'client';
            _context12.next = 3;
            return gateServeurl(serve);

          case 3:
            serviceName = _context12.sent;
            return _context12.abrupt("return", request(_config__WEBPACK_IMPORTED_MODULE_4__[/* gateApi */ "g"] + serviceName + url, 'DELETE', params));

          case 5:
          case "end":
            return _context12.stop();
        }
      }
    }, _callee12);
  }));
  return _gateDelete.apply(this, arguments);
}

function request(url, method, params) {
  var _ref3 = method === 'GET' ? [params, ''] : ['', params],
      _ref4 = _slicedToArray(_ref3, 2),
      _params = _ref4[0],
      _data = _ref4[1];

  return new Promise( /*#__PURE__*/function () {
    var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(resolve, reject) {
      var requestId, localVersion, storage, domain, origin, token, company_id, env_key, uid, platform;
      return _regeneratorRuntime().wrap(function _callee3$(_context3) {
        while (1) {
          switch (_context3.prev = _context3.next) {
            case 0:
              // 生成request_id
              requestId = vue_uuid__WEBPACK_IMPORTED_MODULE_2__[/* uuid */ "b"].v4(); // 获取本地版本

              localVersion = chrome.app ? chrome.app.getDetails && chrome.app.getDetails().version : chrome.runtime.getManifest && chrome.runtime.getManifest().version;
              _context3.next = 4;
              return localStorage.getItem(['domain', 'uuid', 'origin', 'token', 'company_id', 'env_key', 'uid', 'platform']);

            case 4:
              storage = _context3.sent;
              domain = storage.domain, origin = storage.origin, token = storage.token, company_id = storage.company_id, env_key = storage.env_key, uid = storage.uid, platform = storage.platform;
              axios__WEBPACK_IMPORTED_MODULE_0___default()({
                method: method,
                url: url,
                params: _params,
                data: _data,
                headers: {
                  'X-AK-Request-Id': requestId,
                  'Ak-Domain': domain || 'erp',
                  'Ak-Version': _config__WEBPACK_IMPORTED_MODULE_4__[/* version */ "m"],
                  'Ak-Client-Type': 'plugin',
                  'Ak-Mac': storage.uuid,
                  'AK-Origin': origin || '',
                  'Auth-Token': token || '',
                  'X-AK-Company-Id': company_id || '',
                  'X-AK-ENV-KEY': env_key || '',
                  'Uid': uid || '',
                  'AK-Client': 'web',
                  'ak-package-version': localVersion,
                  'Asink-Uid': uid || '',
                  'Plugin-Version': 'v3',
                  "Ak-Platform": platform
                },
                adapter: _utils_fetch__WEBPACK_IMPORTED_MODULE_3__[/* default */ "b"]
              }).then( /*#__PURE__*/function () {
                var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(res) {
                  var _res;

                  return _regeneratorRuntime().wrap(function _callee2$(_context2) {
                    while (1) {
                      switch (_context2.prev = _context2.next) {
                        case 0:
                          _res = res.data;
                          if ([8003, 8001, -999].includes(+_res.code)) resolve(refreshToken(url, method, params));else resolve(_objectSpread(_objectSpread({}, _res), {}, {
                            requestId: requestId
                          }));

                        case 2:
                        case "end":
                          return _context2.stop();
                      }
                    }
                  }, _callee2);
                }));

                return function (_x11) {
                  return _ref6.apply(this, arguments);
                };
              }()).catch(function (e) {
                reject({
                  msg: isError(e),
                  requestId: requestId
                });
              });

            case 7:
            case "end":
              return _context3.stop();
          }
        }
      }, _callee3);
    }));

    return function (_x9, _x10) {
      return _ref5.apply(this, arguments);
    };
  }());
} // 请求转发请求

function requestProxy(_ref7) {
  var method = _ref7.method,
      headers = _ref7.headers,
      data = _ref7.data,
      params = _ref7.params;
  return new Promise( /*#__PURE__*/function () {
    var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(resolve) {
      var storage, domain, token;
      return _regeneratorRuntime().wrap(function _callee4$(_context4) {
        while (1) {
          switch (_context4.prev = _context4.next) {
            case 0:
              _context4.next = 2;
              return localStorage.getItem(['domain', 'token']);

            case 2:
              storage = _context4.sent;
              domain = storage.domain, token = storage.token;
              axios__WEBPACK_IMPORTED_MODULE_0___default()({
                url: _config__WEBPACK_IMPORTED_MODULE_4__[/* api */ "f"] + 'proxy',
                method: method,
                data: data,
                params: params,
                headers: Object.assign({
                  'Ak-Domain': domain || 'erp',
                  'Ak-Version': _config__WEBPACK_IMPORTED_MODULE_4__[/* version */ "m"],
                  'Ak-Client-Type': 'plugin',
                  'Ak-Mac': storage.uuid,
                  'Auth-Token': token
                }, headers || {}),
                adapter: _utils_fetch__WEBPACK_IMPORTED_MODULE_3__[/* default */ "b"]
              }).then(function (res) {
                resolve(res.data);
              }).catch(function (e) {
                resolve(e);
              });

            case 5:
            case "end":
              return _context4.stop();
          }
        }
      }, _callee4);
    }));

    return function (_x12) {
      return _ref8.apply(this, arguments);
    };
  }());
}
function refreshToken(_x13, _x14, _x15) {
  return _refreshToken.apply(this, arguments);
}
/**
 * @description 原生axios请求
 * @param {String} url
 * @param {String} method
 * @param {Object} data
 */

function _refreshToken() {
  _refreshToken = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee13(url, method, params) {
    var _yield$localStorage$g3, refresh_token, platform, isplatform, _params, _yield$gatePost, code, data;

    return _regeneratorRuntime().wrap(function _callee13$(_context13) {
      while (1) {
        switch (_context13.prev = _context13.next) {
          case 0:
            _context13.prev = 0;
            _context13.next = 3;
            return localStorage.getItem(['refresh_token', 'platform']);

          case 3:
            _yield$localStorage$g3 = _context13.sent;
            refresh_token = _yield$localStorage$g3.refresh_token;
            platform = _yield$localStorage$g3.platform;
            isplatform = !['amazon', 'vc'].includes(platform);
            _params = isplatform ? {
              refreshToken: refresh_token
            } : {
              refresh_token: refresh_token
            };
            _context13.next = 10;
            return gatePost(isplatform ? 'api/passport/refreshToken' : 'api/v1/refreshToken', _params, isplatform ? 'uc' : 'client');

          case 10:
            _yield$gatePost = _context13.sent;
            code = _yield$gatePost.code;
            data = _yield$gatePost.data;

            if (!((isplatform && code == 1 || !isplatform && code == 0) && data)) {
              _context13.next = 19;
              break;
            }

            localStorage.setItem({
              token: data.token
            });
            localStorage.setItem({
              refresh_token: data.refreshToken
            });
            return _context13.abrupt("return", request(url, method, params));

          case 19:
            localStorage.removeItem(['token']);
            localStorage.removeItem(['refresh_token']); // window.clear()
            // 通知popup跳到登录页

            chrome.runtime.sendMessage({
              type: 'logout'
            }, function () {}); // 需要上传打日志

          case 22:
            _context13.next = 27;
            break;

          case 24:
            _context13.prev = 24;
            _context13.t0 = _context13["catch"](0);
            _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog(_context13.t0);

          case 27:
          case "end":
            return _context13.stop();
        }
      }
    }, _callee13, null, [[0, 24]]);
  }));
  return _refreshToken.apply(this, arguments);
}

function nativeRequest() {
  return _nativeRequest.apply(this, arguments);
}
/**
 * @description 上传文件
 * @param {file} multipartFile 文件
 * @param {string} serviceid 服务名
 * @returns 上传结果
 */

function _nativeRequest() {
  _nativeRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee14() {
    var _len,
        config,
        _key,
        url,
        method,
        data,
        headers,
        responseType,
        _ref15,
        _ref16,
        _params,
        _data,
        _args14 = arguments;

    return _regeneratorRuntime().wrap(function _callee14$(_context14) {
      while (1) {
        switch (_context14.prev = _context14.next) {
          case 0:
            for (_len = _args14.length, config = new Array(_len), _key = 0; _key < _len; _key++) {
              config[_key] = _args14[_key];
            }

            url = config[0], method = config[1], data = config[2], headers = config[3], responseType = config[4];
            _ref15 = method.toLowerCase() === 'get' ? [data, ''] : ['', data], _ref16 = _slicedToArray(_ref15, 2), _params = _ref16[0], _data = _ref16[1];
            return _context14.abrupt("return", new Promise(function (resolve, reject) {
              axios__WEBPACK_IMPORTED_MODULE_0___default()({
                method: method,
                url: url,
                data: _data,
                params: _params,
                headers: headers,
                responseType: responseType,
                adapter: _utils_fetch__WEBPACK_IMPORTED_MODULE_3__[/* default */ "b"]
              }).then(function (res) {
                resolve(res.data);
              }).catch(function (e) {
                reject(e);
              });
            }));

          case 4:
          case "end":
            return _context14.stop();
        }
      }
    }, _callee14);
  }));
  return _nativeRequest.apply(this, arguments);
}

function uploadFile(_x16) {
  return _uploadFile.apply(this, arguments);
}
/**
 * @description 上传文件备用通道（文件直传上传中心
 */

function _uploadFile() {
  _uploadFile = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee15(multipartFile) {
    var serviceId,
        isPublic,
        _args15 = arguments;
    return _regeneratorRuntime().wrap(function _callee15$(_context15) {
      while (1) {
        switch (_context15.prev = _context15.next) {
          case 0:
            serviceId = _args15.length > 1 && _args15[1] !== undefined ? _args15[1] : 'finance-client-service';
            isPublic = _args15.length > 2 && _args15[2] !== undefined ? _args15[2] : false;
            _context15.next = 4;
            return backUploadFile(multipartFile, serviceId, isPublic);

          case 4:
            return _context15.abrupt("return", _context15.sent);

          case 5:
          case "end":
            return _context15.stop();
        }
      }
    }, _callee15);
  }));
  return _uploadFile.apply(this, arguments);
}

function backUploadFile(_x17, _x18, _x19) {
  return _backUploadFile.apply(this, arguments);
}
/** 日志上报
 * @description
 * @param {String} msg 日志消息
 * @param {String} type 日志类型 info：一般, error：错误, sensitive：敏感, except：异常
 * @param {Object} data 自定义上报数据 非必填
 * @returns
 */


function _backUploadFile() {
  _backUploadFile = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee16(multipartFile, serviceId, isPublic) {
    var formData, error, res;
    return _regeneratorRuntime().wrap(function _callee16$(_context16) {
      while (1) {
        switch (_context16.prev = _context16.next) {
          case 0:
            formData = new FormData();
            formData.append('multipartFile', multipartFile);
            formData.append('serviceId', serviceId);
            _context16.next = 5;
            return gatePost(isPublic ? '/api/upload/file' : 'private/upload/file', // const res = await request('http://10.49.0.29:16322/upload-center/private/upload/file', 'post',
            formData, 'upload').catch(function (e) {
              _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('上传错误', isError(e));
              error = e;
            });

          case 5:
            res = _context16.sent;
            return _context16.abrupt("return", res || error);

          case 7:
          case "end":
            return _context16.stop();
        }
      }
    }, _callee16);
  }));
  return _backUploadFile.apply(this, arguments);
}

function recordLog(msg, type, data) {
  var formData = new FormData();
  formData.append('type', type);
  formData.append('msg', msg);
  data && formData.append('data', typeof data === 'string' ? data : JSON.stringify(data));

  try {
    gatePost('api/v1/clientLogs', formData, 'task');
  } catch (e) {
    _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('日志上传失败', isError(e));
  }
}
/**
 * @description 检查版本
 * @param {*} arr
 * @param {*} key
 * @returns
 */

function checkVersion() {
  return _checkVersion.apply(this, arguments);
}
/**
 * @description 强制更新，更新程序监听的版本号为39089 - 39099
 */

function _checkVersion() {
  _checkVersion = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee17() {
    var res, data;
    return _regeneratorRuntime().wrap(function _callee17$(_context17) {
      while (1) {
        switch (_context17.prev = _context17.next) {
          case 0:
            _context17.prev = 0;
            _context17.next = 3;
            return gateGet('api/v1/checkUpdate', {
              extensionId: extensionId
            }).catch(function () {});

          case 3:
            res = _context17.sent;

            if (!(!res || res.code !== 0)) {
              _context17.next = 6;
              break;
            }

            return _context17.abrupt("return");

          case 6:
            data = res.data;
            localStorage.setItem({
              isUpdate: data.isUpdate
            });
            localStorage.setItem({
              hasUpdate: data.update
            });
            localStorage.setItem({
              tip: data.tip
            });
            localStorage.setItem({
              downloadUrl: data.downloadUrl
            });
            localStorage.setItem({
              newVersion: data.newVersion
            });
            localStorage.setItem({
              pluginFileName: data.fileName
            });
            localStorage.setItem({
              installServiceExe: data.installServiceExe
            });
            return _context17.abrupt("return", data);

          case 17:
            _context17.prev = 17;
            _context17.t0 = _context17["catch"](0);
            _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog(isError(_context17.t0));

          case 20:
          case "end":
            return _context17.stop();
        }
      }
    }, _callee17, null, [[0, 17]]);
  }));
  return _checkVersion.apply(this, arguments);
}

function forceUpdate() {
  return _forceUpdate.apply(this, arguments);
}
/**
 * @description 通知popup有新版本
 */

function _forceUpdate() {
  _forceUpdate = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee18() {
    var host,
        _yield$localStorage$g4,
        newVersion,
        downloadUrl,
        pluginFileName,
        _args18 = arguments;

    return _regeneratorRuntime().wrap(function _callee18$(_context18) {
      while (1) {
        switch (_context18.prev = _context18.next) {
          case 0:
            host = _args18.length > 0 && _args18[0] !== undefined ? _args18[0] : 39089;
            _context18.prev = 1;
            _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('forceUpdate', host);

            if (!(host > 39099)) {
              _context18.next = 7;
              break;
            }

            chrome.runtime.sendMessage({
              type: 'updateFailNotice'
            }, function () {});
            _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('自动更新失败');
            return _context18.abrupt("return");

          case 7:
            _context18.next = 9;
            return localStorage.getItem(['newVersion', 'downloadUrl', 'pluginFileName']);

          case 9:
            _yield$localStorage$g4 = _context18.sent;
            newVersion = _yield$localStorage$g4.newVersion;
            downloadUrl = _yield$localStorage$g4.downloadUrl;
            pluginFileName = _yield$localStorage$g4.pluginFileName;
            _context18.next = 15;
            return nativeRequest("http://localhost:".concat(host, "/WebRunLocal"), 'post', {
              "TYPE": "3",
              "PATH": "UpdateApp\\UpdateApp.exe",
              "PARAM": [{
                "VALUE": "PluginUpdate"
              }, {
                "VALUE": extensionId
              }, {
                "VALUE": newVersion
              }, {
                "VALUE": pluginFileName
              }, {
                "VALUE": downloadUrl
              }]
            }).then(function (res) {
              if (res.CODE !== 0) {
                forceUpdate(++host);
              }
            });

          case 15:
            _context18.next = 21;
            break;

          case 17:
            _context18.prev = 17;
            _context18.t0 = _context18["catch"](1);
            _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u7AEF\u53E3\uFF1A".concat(host, "\u5524\u8D77\u81EA\u52A8\u66F4\u65B0\u670D\u52A1\u5931\u8D25"));
            forceUpdate(++host);

          case 21:
          case "end":
            return _context18.stop();
        }
      }
    }, _callee18, null, [[1, 17]]);
  }));
  return _forceUpdate.apply(this, arguments);
}

function noticeUpdate() {
  return _noticeUpdate.apply(this, arguments);
}
/**
 * 数组去重 -数组项是对象
 * @param arr:目标数组
 * @param key:唯一值
 */


function _noticeUpdate() {
  _noticeUpdate = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee19() {
    var _yield$localStorage$g5, hasUpdate;

    return _regeneratorRuntime().wrap(function _callee19$(_context19) {
      while (1) {
        switch (_context19.prev = _context19.next) {
          case 0:
            _context19.next = 2;
            return localStorage.getItem(['hasUpdate']);

          case 2:
            _yield$localStorage$g5 = _context19.sent;
            hasUpdate = _yield$localStorage$g5.hasUpdate;

            if (hasUpdate == 1) {
              chrome.runtime.sendMessage({
                type: 'noticeUpdate'
              }, function () {});
            }

          case 5:
          case "end":
            return _context19.stop();
        }
      }
    }, _callee19);
  }));
  return _noticeUpdate.apply(this, arguments);
}

function unique(arr, key) {
  var hash = {};
  var newArr = [];

  var _iterator = _createForOfIteratorHelper(arr),
      _step;

  try {
    for (_iterator.s(); !(_step = _iterator.n()).done;) {
      var item = _step.value;
      if (hash[item[key]]) continue;
      hash[item[key]] = 1;
      newArr.push(item);
    }
  } catch (err) {
    _iterator.e(err);
  } finally {
    _iterator.f();
  }

  return newArr;
}
/**
 * 深拷贝
 */

function deepClone(obj) {
  var type = Object.prototype.toString.call(obj);
  var clone;

  if (type === '[object Object]') {
    clone = {};

    for (var i in obj) {
      if (_typeof(obj[i]) === 'object') {
        clone[i] = deepClone(obj[i]);
      } else {
        clone[i] = obj[i];
      }
    }
  } else if (type === '[object Array]') {
    clone = [];

    var _iterator2 = _createForOfIteratorHelper(obj),
        _step2;

    try {
      for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
        var _i2 = _step2.value;
        clone.push(deepClone(_i2));
      }
    } catch (err) {
      _iterator2.e(err);
    } finally {
      _iterator2.f();
    }
  } else {
    clone = obj;
  }

  return clone;
}
/**
 * 获取cookie
 */

function getCookie(name) {
  // var strCookie = document.cookie;
  // var arrCookie = strCookie.split("; ");
  // for(var i = 0; i < arrCookie.length; i++){
  //     var arr = arrCookie[i].split("=");
  //     if(name == arr[0]){
  //         return arr[1];
  //     }
  // }
  return "";
}
/**
 * 写入cookie
 */

function setCookie(name, value, time) {// var exp = new Date()
  // exp.setTime(exp.getTime() + time)
  // document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
} // 是否可执行任务

function executable(_x20) {
  return _executable.apply(this, arguments);
} // 判断任务是否中断、设置中断状态

function _executable() {
  _executable = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee20(type) {
    var _yield$localStorage$g6, token, isUpdate, web_mail_status, enableObj, now, hour;

    return _regeneratorRuntime().wrap(function _callee20$(_context20) {
      while (1) {
        switch (_context20.prev = _context20.next) {
          case 0:
            _context20.next = 2;
            return localStorage.getItem(['token', 'isUpdate', 'web_mail_status', 'enableObj']);

          case 2:
            _yield$localStorage$g6 = _context20.sent;
            token = _yield$localStorage$g6.token;
            isUpdate = _yield$localStorage$g6.isUpdate;
            web_mail_status = _yield$localStorage$g6.web_mail_status;
            enableObj = _yield$localStorage$g6.enableObj;

            if (!(!enableObj || !enableObj.status)) {
              _context20.next = 10;
              break;
            }

            _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('enable提示插件不可用，不在执行任务');
            return _context20.abrupt("return", false);

          case 10:
            if (token) {
              _context20.next = 13;
              break;
            }

            _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('用户已退出，不在执行任务');
            return _context20.abrupt("return", false);

          case 13:
            if (!(isUpdate == 1)) {
              _context20.next = 16;
              break;
            }

            _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('需要更新，不在执行任务');
            return _context20.abrupt("return", false);

          case 16:
            if (!(_config__WEBPACK_IMPORTED_MODULE_4__[/* runTime */ "j"] && _config__WEBPACK_IMPORTED_MODULE_4__[/* runTime */ "j"].length)) {
              _context20.next = 22;
              break;
            }

            now = new Date();
            hour = now.getHours();

            if (!(hour < _config__WEBPACK_IMPORTED_MODULE_4__[/* runTime */ "j"][1] && hour >= _config__WEBPACK_IMPORTED_MODULE_4__[/* runTime */ "j"][0])) {
              _context20.next = 22;
              break;
            }

            _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('处于不可执行任务期间,当前时间:', hour);
            return _context20.abrupt("return", false);

          case 22:
            if (!(type === 'email' && web_mail_status == 0)) {
              _context20.next = 25;
              break;
            }

            _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('已暂停同步站内信任务');
            return _context20.abrupt("return", false);

          case 25:
            return _context20.abrupt("return", true);

          case 26:
          case "end":
            return _context20.stop();
        }
      }
    }, _callee20);
  }));
  return _executable.apply(this, arguments);
}

var suspend = /*#__PURE__*/function () {
  var _ref9 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(time, val) {
    var seller_id, message, _yield$localStorage$g, suspend;

    return _regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            if (!time) {
              _context5.next = 4;
              break;
            }

            seller_id = _data_amazon__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"].sellerId || vue__WEBPACK_IMPORTED_MODULE_6__["default"].prototype.$bg.amazon.sellerId;

            if (time === 1) {
              _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('任务已恢复执行');
              localStorage.removeItem(['suspend']);
              chrome.alarms.clear('suspend');
              seller_id && recordLog("\u3010sellerID:".concat(seller_id, "\u3011\u4EFB\u52A1\u5DF2\u6062\u590D\u6267\u884C\u3002"), 'info');
            } else {
              // 任务中断,任务状态改成已中断
              localStorage.setItem({
                suspend: val || Date.now() + time
              });
              message = val === '99' ? '任务已手动暂停执行。' : '任务已暂停执行。';
              seller_id && recordLog("\u3010sellerID:".concat(seller_id, "\u3011").concat(message), 'info');

              if (val !== '99') {
                // 只有background环境才会到这里
                _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u8DDD\u79BB\u6062\u590D\u8FD0\u884C\u8FD8\u6709\uFF1A".concat(time / 1000 / 60, "\u5206")); // alarms.setTimeout(() => {
                //   localStorage.removeItem(['suspend'])
                //   // 恢复运行（触发tas.js taskSchedule方法）
                //   distribute('GoExecute')
                //   seller_id && recordLog(`【sellerID:${seller_id }】任务已恢复执行。`,'info')
                // }, 'suspend', time);
              }
            }

            return _context5.abrupt("return", true);

          case 4:
            _context5.next = 6;
            return localStorage.getItem(['suspend']);

          case 6:
            _yield$localStorage$g = _context5.sent;
            suspend = _yield$localStorage$g.suspend;

            if (!suspend) {
              _context5.next = 11;
              break;
            }

            // 当前已中断
            _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog('任务已中断');
            return _context5.abrupt("return", suspend);

          case 11:
            return _context5.abrupt("return", false);

          case 12:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5);
  }));

  return function suspend(_x21, _x22) {
    return _ref9.apply(this, arguments);
  };
}();
/**
 * 设置徽章
 * @params
 * text: 徽章文本
 * color: 徽章颜色
 * level: 数值低的可替换数值高的，数值高的不可替换数值低的。
 */

var setBadge = function () {
  var _level = 100;
  return function (level) {
    var text = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
    var color = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '#fff';
    if (!level || _level < level) return;
    _level = text ? level : 100;
    chrome.action.setBadgeText({
      text: text
    });
    chrome.action.setBadgeBackgroundColor({
      color: color
    });
  };
}();
/**
 * @description 判断是否火狐内核的浏览器
 */

function isFirefox() {
  var userAgent = navigator.userAgent;
  return userAgent && userAgent.indexOf('Firefox') > -1;
}
/**
 * @description 延时,ServiceWorkerGlobalScope来判断是否是在background环境
 */

function delayed(time) {
  var name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';

  var uniqueName = name || _uuid();

  return new Promise(function (resolve) {
    return alarms.setTimeout(resolve, uniqueName, time);
  });
}
/**
 * @description 自定义日期格式化
 */

function customizeFormatDate(val) {
  var format = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'Y-M-D h:m:s';
  var defaultDate = arguments.length > 2 ? arguments[2] : undefined;
  if (!val) return defaultDate;
  var date = new Date(val);
  var formatDate = {
    Y: date.getFullYear(),
    M: "0".concat(date.getMonth() + 1),
    D: "0".concat(date.getDate()),
    h: "0".concat(date.getHours()),
    m: "0".concat(date.getMinutes()),
    s: "0".concat(date.getSeconds())
  };
  formatDate.M = formatDate.M.substring(formatDate.M.length - 2);
  formatDate.D = formatDate.D.substring(formatDate.D.length - 2);
  formatDate.h = formatDate.h.substring(formatDate.h.length - 2);
  formatDate.m = formatDate.m.substring(formatDate.m.length - 2);
  formatDate.s = formatDate.s.substring(formatDate.s.length - 2);

  for (var i in formatDate) {
    format = format.replace(i, formatDate[i]);
  }

  return format;
}
/**
 * @description 生成uuid
 * @returns uuid
 */

function _uuid() {
  var s = [];
  var hexDigits = '0123456789ABCDEFGHJKLMNPQRSTUVWXYZ';

  for (var i = 0; i < 8; i++) {
    s[i] = hexDigits.substr(Math.floor(Math.random() * 34), 1);
  }

  var uuid = s.join('');
  return uuid;
}
/**
 * @description aes加密
 */
// export function Encrypt(word, secretKey) {
//   const aesKey = CryptoJS.enc.Utf8.parse(secretKey)
//   const word1 = CryptoJS.enc.Utf8.parse(word)
//   const encrypted = CryptoJS.AES.encrypt(word1, aesKey, {
//     mode: CryptoJS.mode.ECB,
//     padding: CryptoJS.pad.Pkcs7
//   })
//   return encrypted.toString()
// }

/**
 * @description 快排
 */

function quickSort(arr, fn) {
  if (arr.length <= 1) {
    return arr;
  }

  var pivotIndex = Math.floor(arr.length / 2);
  var pivot = arr.splice(pivotIndex, 1)[0];
  var left = [];
  var right = [];

  for (var i = 0; i < arr.length; i++) {
    if (fn ? fn(arr[i], pivot) : arr[i] < pivot) {
      left.push(arr[i]);
    } else {
      right.push(arr[i]);
    }
  }

  return quickSort(left, fn).concat([pivot], quickSort(right, fn));
}
/**
 * @description 获取cookie
 */

function getCookies(data) {
  if (!data || !data.url || !data.name) return;
  return new Promise(function (resolve) {
    chrome.cookies.get(data, function (cookie) {
      resolve(cookie);
    });
  });
}
/**
 * @description 获取所有cookie
 */

function getAllCookies(data) {
  // if (!data || !data.url) return
  return new Promise(function (resolve) {
    chrome.cookies.getAll(data, function (cookie) {
      resolve(cookie);
    });
  });
}
/**
 * @description 设置cookie
 */

function setCookies(data) {
  if (!data || !data.url || !data.name || !data.value) return;
  return new Promise(function (resolve) {
    chrome.cookies.set(data, resolve);
  });
}
/**
 * @description storage操作
 */

var localStorage = {
  getItem: function getItem(keyArr) {
    return chrome.storage.local.get(keyArr).then(function (result) {
      return result;
    });
  },
  setItem: function setItem(data) {
    return chrome.storage.local.set(data).then(function (result) {
      return result;
    });
  },
  removeItem: function removeItem(keyArr) {
    return chrome.storage.local.remove(keyArr).then(function (result) {
      return result;
    });
  }
};
/**
 * @description 模拟setTimeout、setInterval：页面环境用window API，background用chrome.alarms
 */

var alarms = {
  setTimeout: function setTimeout(fn, name, time) {
    var delayTime = Number(time) || 0; // 页面环境（popup/options/content）

    if (typeof window !== 'undefined' && window.setTimeout) {
      return window.setTimeout(function () {
        return fn(name);
      }, delayTime);
    } // background(service worker)


    chrome.alarms.create(name, {
      when: Date.now() + delayTime
    });
    this.alarmsMethod[name] = fn;
    this.onceNames.add(name);
    return name;
  },
  setInterval: function setInterval(fn, name, minutes) {
    var intervalMinutes = Number(minutes) || 0; // 页面环境（popup/options/content）

    if (typeof window !== 'undefined' && window.setInterval) {
      return window.setInterval(function () {
        return fn(name);
      }, intervalMinutes * 60 * 1000);
    } // background(service worker)


    chrome.alarms.create(name, {
      delayInMinutes: intervalMinutes,
      periodInMinutes: intervalMinutes
    });
    this.alarmsMethod[name] = fn;
    return name;
  },
  alarmsMethod: {},
  onceNames: new Set()
};
/**
 * @description 查找重复的declarativeNetRequest规则
 * @param {string} urlFilter - URL过滤器
 * @param {Array} headers - 请求头
 * @returns {Promise<Array<number>>} - 返回重复规则的ID数组
 */

function findDuplicateRuleIds(_x23, _x24) {
  return _findDuplicateRuleIds.apply(this, arguments);
}
/**
 * @description 更新declarativeNetRequest规则集
 */


function _findDuplicateRuleIds() {
  _findDuplicateRuleIds = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee21(urlFilter, headers) {
    var existingRules;
    return _regeneratorRuntime().wrap(function _callee21$(_context21) {
      while (1) {
        switch (_context21.prev = _context21.next) {
          case 0:
            _context21.next = 2;
            return new Promise(function (resolve) {
              chrome.declarativeNetRequest.getDynamicRules(function (rules) {
                resolve(rules || []);
              });
            });

          case 2:
            existingRules = _context21.sent;
            return _context21.abrupt("return", existingRules.filter(function (rule) {
              // 1. 检查urlFilter是否匹配
              if (rule.condition.urlFilter !== urlFilter) {
                return false;
              } // 2. 检查headers是否完全相同


              var existingHeaders = rule.action.requestHeaders || [];

              if (existingHeaders.length !== headers.length) {
                return false;
              } // 3. 详细比较每个header对象 (不考虑顺序)


              return headers.every(function (newHeader) {
                return existingHeaders.some(function (existingHeader) {
                  return existingHeader.header === newHeader.header && existingHeader.value === newHeader.value;
                });
              });
            }).map(function (rule) {
              return rule.id;
            }));

          case 4:
          case "end":
            return _context21.stop();
        }
      }
    }, _callee21);
  }));
  return _findDuplicateRuleIds.apply(this, arguments);
}

var nextRuleId = 0;
var setRequestHearder = function setRequestHearder(list, urlFilter) {
  var priority = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;

  try {
    return new Promise( /*#__PURE__*/function () {
      var _ref10 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(resolve) {
        var id, headers, newRule, duplicateRuleIds, option;
        return _regeneratorRuntime().wrap(function _callee6$(_context6) {
          while (1) {
            switch (_context6.prev = _context6.next) {
              case 0:
                id = nextRuleId = ++nextRuleId;
                headers = list.map(function (_ref11) {
                  var name = _ref11.name,
                      value = _ref11.value,
                      _ref11$operation = _ref11.operation,
                      operation = _ref11$operation === void 0 ? 'set' : _ref11$operation;
                  return {
                    header: name,
                    value: value,
                    operation: operation
                  };
                }); // 构建新规则 

                newRule = {
                  id: id,
                  priority: priority,
                  action: {
                    type: 'modifyHeaders',
                    requestHeaders: headers
                  },
                  condition: {
                    urlFilter: urlFilter,
                    resourceTypes: ['main_frame', 'sub_frame', 'xmlhttprequest'],
                    requestMethods: ['get', 'post']
                  }
                }; // 查找并准备删除重复规则

                _context6.next = 5;
                return findDuplicateRuleIds(urlFilter, headers);

              case 5:
                duplicateRuleIds = _context6.sent;
                // 一次性原子操作：添加新规则并删除所有匹配的旧规则
                option = {
                  addRules: [newRule],
                  removeRuleIds: duplicateRuleIds
                };
                chrome.declarativeNetRequest.updateDynamicRules(option, function () {
                  // 验证新规则是否添加成功
                  chrome.declarativeNetRequest.getDynamicRules(function (rules) {
                    var ruleExists = rules.find(function (rule) {
                      return rule.id === id;
                    });

                    if (ruleExists) {
                      resolve(id);
                    } else {
                      _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].report("\u3010\u4E25\u91CD\u3011\u89C4\u5219\u64CD\u4F5C\u5931\u8D25\uFF1A\u672A\u627E\u5230\u521A\u6DFB\u52A0\u7684\u89C4\u5219, urlFilter: ".concat(urlFilter, ", list: ").concat(JSON.stringify(list), ", id:").concat(id));
                      resolve(false);
                    }
                  });
                });

              case 8:
              case "end":
                return _context6.stop();
            }
          }
        }, _callee6);
      }));

      return function (_x25) {
        return _ref10.apply(this, arguments);
      };
    }());
  } catch (e) {
    _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].report("\u89C4\u5219\u6DFB\u52A0\u5931\u8D25, urlFilter: ".concat(urlFilter, ", list: ").concat(JSON.stringify(list), ", error: ").concat(isError(e)));
    return false;
  }
};
/**
 * @description 删除declarativeNetRequest规则集
 */

var removeDeclarativeNetRequestRules = function removeDeclarativeNetRequestRules(removeRuleIds) {
  return new Promise(function (resolve) {
    // 增加一个两分钟的超时
    alarms.setInterval(resolve, 'removeDeclarativeNetRequestRules', 2);
    chrome.declarativeNetRequest.updateDynamicRules({
      removeRuleIds: removeRuleIds
    }, function () {
      resolve();
      chrome.alarms.clear('removeDeclarativeNetRequestRules');
    });
  });
};
/**
 * @description 删除所有declarativeNetRequest规则集
 */

var removeAllDeclarativeNetRequestRules = function removeAllDeclarativeNetRequestRules() {
  chrome.declarativeNetRequest.getDynamicRules(function (rules) {
    var ruleIds = rules.map(function (rule) {
      return rule.id;
    });
    chrome.declarativeNetRequest.updateDynamicRules({
      removeRuleIds: ruleIds
    });
  });
};
/**
 * @description 解析文件地址获取文件名
 * @param urlString 文件下载地址
 */

function getNameByUrl(urlString) {
  var url = new URL(urlString);
  var pathname = url.pathname;
  var trimmedPathname = pathname.startsWith('/') ? pathname.slice(1) : pathname;
  var match = trimmedPathname.match(/[^\/]+$/);

  if (match) {
    var filename = match[0];
    return filename;
  }

  return trimmedPathname;
}
/**
 * @description 获取服务器时间
 * @param local 当未获取到服务器时间时，是否接受本地时间
 */

function getServiceTime() {
  return _getServiceTime.apply(this, arguments);
}
/**
 *  [Polyfill] Promise.allSettled
 *  @param  {Array}   promises    捕获的 Promise
 *  @param  {Boolean} onlyResult  是否仅为结果
 *  @return {Promise}             按顺序捕获的所有结果
 */

function _getServiceTime() {
  _getServiceTime = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee22() {
    var local,
        res,
        _args22 = arguments;
    return _regeneratorRuntime().wrap(function _callee22$(_context22) {
      while (1) {
        switch (_context22.prev = _context22.next) {
          case 0:
            local = _args22.length > 0 && _args22[0] !== undefined ? _args22[0] : true;
            _context22.next = 3;
            return gateGet('api/v1/baseInfos', {}, 'task').catch(function () {});

          case 3:
            res = _context22.sent;
            return _context22.abrupt("return", res && res.data ? new Date(res.data.time_format).getTime() : local ? new Date().getTime() : 0);

          case 5:
          case "end":
            return _context22.stop();
        }
      }
    }, _callee22);
  }));
  return _getServiceTime.apply(this, arguments);
}

function PromiseAllSettled() {
  var promises = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
  var onlyResult = arguments.length > 1 ? arguments[1] : undefined;
  return Promise.all(promises.map(onlyResult ? function (item) {
    return item instanceof Promise ? item.catch(function (e) {
      return e;
    }) : item;
  } : function (item) {
    return item instanceof Promise ? item.then(function (value) {
      return {
        status: 'fulfilled',
        value: value
      };
    }).catch(function (reason) {
      return {
        status: 'rejected',
        reason: reason
      };
    }) : {
      status: 'fulfilled',
      value: item
    };
  }));
}
Promise.allSettled || (Promise.allSettled = PromiseAllSettled);
/**
 * 压缩文件
 */

var generateAsync = /*#__PURE__*/function () {
  var _ref12 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(files) {
    var config,
        zip,
        res,
        _args7 = arguments;
    return _regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            config = _args7.length > 1 && _args7[1] !== undefined ? _args7[1] : {};

            if (!(!files || files.length === 0)) {
              _context7.next = 3;
              break;
            }

            return _context7.abrupt("return", false);

          case 3:
            zip = new jszip__WEBPACK_IMPORTED_MODULE_7___default.a();
            files.forEach(function (_ref13) {
              var name = _ref13.name,
                  blob = _ref13.blob;
              zip.file(name, blob, {
                binary: true
              });
            });
            _context7.next = 7;
            return zip.generateAsync(_objectSpread({
              type: "nodebuffer",
              compression: "DEFLATE",
              // STORE：默认不压缩 DEFLATE：需要压缩
              compressionOptions: {
                level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

              }
            }, config)).catch(function (e) {
              _data_log_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].setLog("\u538B\u7F29\u5931\u8D25----".concat(isError(e)));
              return false;
            });

          case 7:
            res = _context7.sent;

            if (!res) {
              _context7.next = 10;
              break;
            }

            return _context7.abrupt("return", new File([res], "".concat(files[0].name.split('.')[0], ".zip"), {
              type: 'application/zip'
            }));

          case 10:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7);
  }));

  return function generateAsync(_x26) {
    return _ref12.apply(this, arguments);
  };
}();
/**
 * @description 启动插件内部心跳（让Service Worker一直工作）
 */

function keepServiceWorker() {
  if (false) {} // Firefox event pages 不需要 keep-alive

  chrome.offscreen && chrome.offscreen.createDocument({
    url: 'offscreen.html',
    reasons: ['BLOBS'],
    justification: 'Keep-alive'
  });
}
function clearKeepServiceWorker() {
  if (false) {}
  chrome.offscreen && chrome.offscreen.closeDocument();
}
/**
 * @description 判断是否为不可重试的http状态码
 */

var isNoRetryHttpStatus = function isNoRetryHttpStatus(error, task) {
  if (task && _config__WEBPACK_IMPORTED_MODULE_4__[/* NO_RETRY_HTTP_STATUS */ "b"].test(error)) {
    task.error_time = _config__WEBPACK_IMPORTED_MODULE_4__[/* TEMU_MAX_RETRY_COUNT */ "d"];
    return true;
  }
}; // 出错信息处理器，在这里还可以判断接口是否4.xx

function isError(error, task) {
  if (error instanceof Error) {
    isNoRetryHttpStatus(error.message, task);
    return "".concat(error.name, ": ").concat(error.message);
  } else if (error instanceof Object) {
    var str = JSON.stringify(error);
    isNoRetryHttpStatus(str, task);
    return JSON.stringify(error);
  } else {
    isNoRetryHttpStatus(error, task);
    return error;
  }
} // 获取随机秒数

function getRandomSeconds() {
  var min = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1000;
  var max = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 3000;
  return (min + Math.random() * (max - min)).toFixed(0) | 0;
}
/** 是否限流(429)：fetchAdapter 已把状态码挂到 error.status */

var isRateLimitError = function isRateLimitError(error) {
  return (error === null || error === void 0 ? void 0 : error.status) === 429;
};
/** 解析 Retry-After → ms；支持两种格式，拿不到返回 0 */

var getRetryAfterMs = function getRetryAfterMs(error) {
  var _error$headers;

  var v = error === null || error === void 0 ? void 0 : (_error$headers = error.headers) === null || _error$headers === void 0 ? void 0 : _error$headers['retry-after'];
  if (!v) return 0; // 格式一：delay-seconds，如 "120"

  var sec = Number(v);
  if (Number.isFinite(sec)) return Math.max(0, sec * 1000); // 格式二：HTTP-date，如 "Fri, 31 Dec 1999 23:59:59 GMT"

  var ts = Date.parse(v);
  if (!Number.isNaN(ts)) return Math.max(0, ts - Date.now());
  return 0;
};
/**
 * 限速闸门（端点无关，单变量 interval 同时承担"限速"与"退避"）
 * - wait():   请求前调用；保证距上次放行至少 interval
 * - hit429(): 命中限流；把本次退避时长设为下次放行间隔
 * - ok():     请求成功；间隔立刻回落到基准，避免长退避渗透到后续请求
 */

function createCooldownGate() {
  var _ref14 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
      _ref14$minInterval = _ref14.minInterval,
      minInterval = _ref14$minInterval === void 0 ? 1000 : _ref14$minInterval;

  var base = minInterval;
  var interval = minInterval;
  var lastTs = 0;
  return {
    wait: function wait() {
      var _arguments = arguments;
      return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {
        var name, ms;
        return _regeneratorRuntime().wrap(function _callee8$(_context8) {
          while (1) {
            switch (_context8.prev = _context8.next) {
              case 0:
                name = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : 'adApi';
                ms = (lastTs ? lastTs + interval : 0) - Date.now();

                if (!(ms > 0)) {
                  _context8.next = 5;
                  break;
                }

                _context8.next = 5;
                return delayed(ms, name);

              case 5:
                lastTs = Date.now();

              case 6:
              case "end":
                return _context8.stop();
            }
          }
        }, _callee8);
      }))();
    },
    hit429: function hit429(waitMs) {
      interval = Math.max(base, waitMs);
    },
    ok: function ok() {
      interval = base;
    },

    get interval() {
      return interval;
    }

  };
}

/***/ }),

/***/ "cb5a":
/***/ (function(module, exports, __webpack_require__) {

var eq = __webpack_require__("9638");

/**
 * Gets the index at which the `key` is found in `array` of key-value pairs.
 *
 * @private
 * @param {Array} array The array to inspect.
 * @param {*} key The key to search for.
 * @returns {number} Returns the index of the matched value, else `-1`.
 */
function assocIndexOf(array, key) {
  var length = array.length;
  while (length--) {
    if (eq(array[length][0], key)) {
      return length;
    }
  }
  return -1;
}

module.exports = assocIndexOf;


/***/ }),

/***/ "cb84":
/***/ (function(module, exports) {

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMax = Math.max;

/**
 * Creates an array that is the composition of partially applied arguments,
 * placeholders, and provided arguments into a single array of arguments.
 *
 * @private
 * @param {Array} args The provided arguments.
 * @param {Array} partials The arguments to prepend to those provided.
 * @param {Array} holders The `partials` placeholder indexes.
 * @params {boolean} [isCurried] Specify composing for a curried function.
 * @returns {Array} Returns the new array of composed arguments.
 */
function composeArgs(args, partials, holders, isCurried) {
  var argsIndex = -1,
      argsLength = args.length,
      holdersLength = holders.length,
      leftIndex = -1,
      leftLength = partials.length,
      rangeLength = nativeMax(argsLength - holdersLength, 0),
      result = Array(leftLength + rangeLength),
      isUncurried = !isCurried;

  while (++leftIndex < leftLength) {
    result[leftIndex] = partials[leftIndex];
  }
  while (++argsIndex < holdersLength) {
    if (isUncurried || argsIndex < argsLength) {
      result[holders[argsIndex]] = args[argsIndex];
    }
  }
  while (rangeLength--) {
    result[leftIndex++] = args[argsIndex++];
  }
  return result;
}

module.exports = composeArgs;


/***/ }),

/***/ "cc5b":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


module.exports = CSSselect;

var Pseudos       = __webpack_require__("99bc"),
    DomUtils      = __webpack_require__("2241"),
    findOne       = DomUtils.findOne,
    findAll       = DomUtils.findAll,
    getChildren   = DomUtils.getChildren,
    removeSubsets = DomUtils.removeSubsets,
    falseFunc     = __webpack_require__("99e4").falseFunc,
    compile       = __webpack_require__("213a"),
    compileUnsafe = compile.compileUnsafe,
    compileToken  = compile.compileToken;

function getSelectorFunc(searchFunc){
	return function select(query, elems, options){
        if(typeof query !== "function") query = compileUnsafe(query, options, elems);
        if(!Array.isArray(elems)) elems = getChildren(elems);
		else elems = removeSubsets(elems);
		return searchFunc(query, elems);
	};
}

var selectAll = getSelectorFunc(function selectAll(query, elems){
	return (query === falseFunc || !elems || elems.length === 0) ? [] : findAll(query, elems);
});

var selectOne = getSelectorFunc(function selectOne(query, elems){
	return (query === falseFunc || !elems || elems.length === 0) ? null : findOne(query, elems);
});

function is(elem, query, options){
	return (typeof query === "function" ? query : compile(query, options))(elem);
}

/*
	the exported interface
*/
function CSSselect(query, elems, options){
	return selectAll(query, elems, options);
}

CSSselect.compile = compile;
CSSselect.filters = Pseudos.filters;
CSSselect.pseudos = Pseudos.pseudos;

CSSselect.selectAll = selectAll;
CSSselect.selectOne = selectOne;

CSSselect.is = is;

//legacy methods (might be removed)
CSSselect.parse = compile;
CSSselect.iterate = selectAll;

//hooks
CSSselect._compileUnsafe = compileUnsafe;
CSSselect._compileToken = compileToken;


/***/ }),

/***/ "cc7a":
/***/ (function(module) {

module.exports = JSON.parse("{\"failureModel\":null,\"applicableColumns\":[],\"invoiceLineItems\":[{\"asin\":\"B0D66LK5NP\",\"asinRedirectionURL\":\"http://www.amazon.co.uk/dp/\",\"sku\":null,\"productTitle\":\"X-Sense Carbon Monoxide Detector, Replaceable Battery Powered CO Alarm with Digital Display, Portable Carbon Monoxide Alarm for Home with CO Peak Value Memory, XC0C-SR, 1-Pack\",\"modelNumber\":\"XC0C-SR\",\"purchaseOrderId\":\"83DQ4UCZ\",\"vendorCode\":\"XSEOC\",\"invoiceQuantity\":\"70\",\"mskuQuantity\":\"0\",\"matchedQuantity\":\"70\",\"lastReceivedDate\":1749805825000,\"invoicedPrice\":{\"currencySymbol\":\"GBP\",\"amount\":895.3},\"unitCost\":{\"currencySymbol\":\"GBP\",\"amount\":12.79},\"matchedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":895.3},\"quantityVariance\":0,\"quantityVarianceAmount\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"priceVariance\":{\"currencySymbol\":\"GBP\",\"amount\":0},\"lineItemInsights\":[[{\"phraseType\":\"LINK\",\"invoiceNumber\":null,\"wsid\":\"simar-asin-received-info\",\"cssId\":null,\"date\":0,\"url\":null,\"currency\":null,\"httpMethod\":null,\"formData\":null,\"modalType\":\"ASIN_DATA\",\"additionalData\":[{\"asin\":\"B0D66LK5NP\",\"asinRedirectionURL\":\"http://www.amazon.co.uk/dp/\",\"poNumbers\":[\"83DQ4UCZ\"],\"matchedQuantity\":\"70\",\"matchedAmount\":{\"currencySymbol\":\"GBP\",\"amount\":895.3},\"receivedDate\":1749805825000}],\"isDisabled\":null,\"disabledReason\":null}]]}],\"lineItemsCount\":1,\"createDisputeOnReceiveBannerFlag\":false,\"pageSize\":15}");

/***/ }),

/***/ "cd9d":
/***/ (function(module, exports) {

/**
 * This method returns the first argument it receives.
 *
 * @static
 * @since 0.1.0
 * @memberOf _
 * @category Util
 * @param {*} value Any value.
 * @returns {*} Returns `value`.
 * @example
 *
 * var object = { 'a': 1 };
 *
 * console.log(_.identity(object) === object);
 * // => true
 */
function identity(value) {
  return value;
}

module.exports = identity;


/***/ }),

/***/ "cda4":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var WritableStream = __webpack_require__("d485").Writable,
    inherits = __webpack_require__("3022").inherits,
    Parser = __webpack_require__("430c");

var ParserStream = module.exports = function (options) {
    WritableStream.call(this);

    this.parser = new Parser(options);

    this.lastChunkWritten = false;
    this.writeCallback = null;
    this.pausedByScript = false;

    this.document = this.parser.treeAdapter.createDocument();

    this.pendingHtmlInsertions = [];

    this._resume = this._resume.bind(this);
    this._documentWrite = this._documentWrite.bind(this);
    this._scriptHandler = this._scriptHandler.bind(this);

    this.parser._bootstrap(this.document, null);
};

inherits(ParserStream, WritableStream);

//WritableStream implementation
ParserStream.prototype._write = function (chunk, encoding, callback) {
    this.writeCallback = callback;
    this.parser.tokenizer.write(chunk.toString('utf8'), this.lastChunkWritten);
    this._runParsingLoop();
};

ParserStream.prototype.end = function (chunk, encoding, callback) {
    this.lastChunkWritten = true;
    WritableStream.prototype.end.call(this, chunk || '', encoding, callback);
};

//Scriptable parser implementation
ParserStream.prototype._runParsingLoop = function () {
    this.parser.runParsingLoopForCurrentChunk(this.writeCallback, this._scriptHandler);
};

ParserStream.prototype._resume = function () {
    if (!this.pausedByScript)
        throw new Error('Parser was already resumed');

    while (this.pendingHtmlInsertions.length) {
        var html = this.pendingHtmlInsertions.pop();

        this.parser.tokenizer.insertHtmlAtCurrentPos(html);
    }

    this.pausedByScript = false;

    //NOTE: keep parsing if we don't wait for the next input chunk
    if (this.parser.tokenizer.active)
        this._runParsingLoop();
};

ParserStream.prototype._documentWrite = function (html) {
    if (!this.parser.stopped)
        this.pendingHtmlInsertions.push(html);
};

ParserStream.prototype._scriptHandler = function (scriptElement) {
    if (this.listeners('script').length) {
        this.pausedByScript = true;
        this.emit('script', scriptElement, this._documentWrite, this._resume);
    }
    else
        this._runParsingLoop();
};



/***/ }),

/***/ "ce86":
/***/ (function(module, exports, __webpack_require__) {

var Symbol = __webpack_require__("9e69"),
    arrayMap = __webpack_require__("7948"),
    isArray = __webpack_require__("6747"),
    isSymbol = __webpack_require__("ffd6");

/** Used as references for various `Number` constants. */
var INFINITY = 1 / 0;

/** Used to convert symbols to primitives and strings. */
var symbolProto = Symbol ? Symbol.prototype : undefined,
    symbolToString = symbolProto ? symbolProto.toString : undefined;

/**
 * The base implementation of `_.toString` which doesn't convert nullish
 * values to empty strings.
 *
 * @private
 * @param {*} value The value to process.
 * @returns {string} Returns the string.
 */
function baseToString(value) {
  // Exit early for strings to avoid a performance hit in some environments.
  if (typeof value == 'string') {
    return value;
  }
  if (isArray(value)) {
    // Recursively convert values (susceptible to call stack limits).
    return arrayMap(value, baseToString) + '';
  }
  if (isSymbol(value)) {
    return symbolToString ? symbolToString.call(value) : '';
  }
  var result = (value + '');
  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
}

module.exports = baseToString;


/***/ }),

/***/ "cec6":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return uploadTask; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return TaskStatus; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return discontinue; });
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("c1df");
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("ca00");
/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("db49");
/* harmony import */ var _data_log__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("6b23");
/* harmony import */ var _data_amazon__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("ef13");
/* harmony import */ var _core_index__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("c7b2");
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }

function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }







var task = {
  // 任务类型条数
  taskTypeTotal: 0,
  // 任务类型列表
  taskTypes: [],
  // 任务类型映射 key：type_id，value：任务类型
  taskTypesMap: {},
  // 任务列表 - 存放已执行任务、未执行任务、执行失败任务 条数上限？
  taskList: [],
  // 当前执行任务所在位置
  taskIndex: 0,
  // repeat任务缓存
  repeatMap: {},
  // 清除自动任务标志
  removeAutoTaskList: false,
  // 任务超时时间，默认20分钟
  taskTimeout: 20 * 60 * 1000,
  // 请求任务条数
  taskCount: 50,
  // 记录本次api/v1/tasks接口是否为强制获取
  force: false,
  excludeTasks: [74],
  checkEnable: function checkEnable() {
    return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
      var res, data;
      return _regeneratorRuntime().wrap(function _callee$(_context) {
        while (1) {
          switch (_context.prev = _context.next) {
            case 0:
              _context.prev = 0;
              _context.next = 3;
              return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* gateGet */ "l"])('api/v1/enable').catch(function () {});

            case 3:
              res = _context.sent;
              data = res && res.code === 0 ? res.data : {};
              _utils_util__WEBPACK_IMPORTED_MODULE_1__[/* localStorage */ "y"].setItem({
                enableTip: data.tip
              });
              _utils_util__WEBPACK_IMPORTED_MODULE_1__[/* localStorage */ "y"].setItem({
                web_mail_status: data.web_mail_status ? 1 : 0
              });
              return _context.abrupt("return", data.status);

            case 10:
              _context.prev = 10;
              _context.t0 = _context["catch"](0);
              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog(Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context.t0));
              return _context.abrupt("return", false);

            case 14:
            case "end":
              return _context.stop();
          }
        }
      }, _callee, null, [[0, 10]]);
    }))();
  },

  /**
   * @description 获取任务类型
   */
  getTaskType: function getTaskType() {
    var _this = this;

    return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
      var res;
      return _regeneratorRuntime().wrap(function _callee2$(_context2) {
        while (1) {
          switch (_context2.prev = _context2.next) {
            case 0:
              _context2.prev = 0;
              _context2.next = 3;
              return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* gateGet */ "l"])('api/v1/taskTypes', {}, 'task');

            case 3:
              res = _context2.sent;

              if (!(res.code === 0)) {
                _context2.next = 9;
                break;
              }

              _this.taskTypeTotal = res.data && res.data.total; // 将任务类型从优先级大到小排序

              _this.taskTypes = res.data && res.data.list.sort(function (a, b) {
                return b.priority - a.priority;
              }); // 生成类型字典,key为数字，for...in遍历时，会按照数字大小进行输出

              _this.taskTypes.forEach(function (item) {
                item.list = [];
                _this.taskTypesMap[item.type_id] = item;
              });

              return _context2.abrupt("return", res.data);

            case 9:
              return _context2.abrupt("return", false);

            case 12:
              _context2.prev = 12;
              _context2.t0 = _context2["catch"](0);
              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('获取任务类型失败', JSON.stringify(_context2.t0));

            case 15:
            case "end":
              return _context2.stop();
          }
        }
      }, _callee2, null, [[0, 12]]);
    }))();
  },

  /**
   * @description 获取任务列表
   * @param {sellerid}
   * @param {force}
   */
  getTaskList: function getTaskList(seller_ids) {
    var _arguments = arguments,
        _this2 = this;

    return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
      var force, res;
      return _regeneratorRuntime().wrap(function _callee3$(_context3) {
        while (1) {
          switch (_context3.prev = _context3.next) {
            case 0:
              force = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : false;
              _context3.next = 3;
              return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* gateGet */ "l"])('api/v1/tasks', {
                seller_ids: seller_ids,
                force: force,
                length: _this2.taskCount
              }, 'task').catch(function (e) {
                _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('获取任务列表失败----', Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(e));
              });

            case 3:
              res = _context3.sent;

              if (res && res.code === 0) {
                _this2.initTaskList(res.data, force);
              }

            case 5:
            case "end":
              return _context3.stop();
          }
        }
      }, _callee3);
    }))();
  },

  /**
   * @description 上传版本信息、店铺信息
   */
  uploadInfo: function uploadInfo(data) {
    return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
      return _regeneratorRuntime().wrap(function _callee4$(_context4) {
        while (1) {
          switch (_context4.prev = _context4.next) {
            case 0:
              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('上传店铺、版本信息', JSON.stringify(data));
              _context4.next = 3;
              return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* gatePost */ "m"])('api/v1/clientInfos', {
                type: 3,
                data: data
              }, 'task').catch(function () {});

            case 3:
            case "end":
              return _context4.stop();
          }
        }
      }, _callee4);
    }))();
  },

  /**
   * @description 任务初始化
   * @param {Object} item 
   * @returns 
   */
  initTask: function initTask(item) {
    item.status = 0;
    item.error_time = 0;
    item.hide = false;
    item.isDelete = false;
    item.isAdapter = true;
    item.report_type = item.type_id;
  },

  /**
   * @description 任务适配器 - 新任务结构兼容老结构
   * @param {*} taskList
   */
  adapter: function adapter(item) {
    if (item.isAdapter) return item;
    this.initTask(item);
    var data = _typeof(item.data) === 'object' ? item.data : JSON.parse(item.data);

    var _ref = _core_index__WEBPACK_IMPORTED_MODULE_5__[/* taskHandleMap */ "b"][item.type_id] || {},
        type = _ref.type;

    item.type = type;

    switch (type) {
      case 'report':
      case 'email':
      case 'dealInventoryInit':
      case 'dealInventoryUpdate':
      case 'dealInventoryModify':
      case 'dealInventoryResult':
      case 'invoiceSummary':
      case 'orderDetail':
      case 'coopSummary':
      case 'coopDetail':
      case 'coopBackup':
      case 'remittancePayment':
      case 'arnId':
        item = _objectSpread(_objectSpread(_objectSpread({}, item), data || []), {}, {
          data: data
        });
        break;

      case 'reference':
        item = _objectSpread(_objectSpread({}, item), {}, {
          shipment_id_list: data || []
        });
        break;

      case 'qa':
        item = _objectSpread(_objectSpread({}, item), {}, {
          run_status: 0,
          data: data
        });
        break;

      case 'coupon':
      case 'bestDeal':
      case 'discount':
      case 'promotion':
      case 'buyer':
      case 'creatorProgram':
        item = _objectSpread(_objectSpread(_objectSpread({}, item), data || []), {}, {
          paginator: {}
        });
        break;

      case 'feedback':
      case 'cartonLabelPDF':
        item = _objectSpread(_objectSpread({}, item), {}, {
          data: data || []
        });
        break;

      case 'couponDetail':
      case 'bestDealDetail':
      case 'discountDetail':
      case 'promotionDetail':
        item = _objectSpread(_objectSpread({}, item), {}, {
          data: data,
          dataNum: data.length,
          dataName: data[0] ? data[0].name : '-'
        });
        break;

      default:
        item = _objectSpread({}, item);
    }

    return item;
  },

  /**
   * @description 任务队列初始化（相同任务过滤、优先级排序、数据适配、任务分类调度）
   * @param taskList 新来的任务
   * @param force 是否是手动获取的任务列表
   */
  initTaskList: function initTaskList(taskList) {
    var _arguments2 = arguments,
        _this3 = this;

    return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
      var force, mergeList;
      return _regeneratorRuntime().wrap(function _callee5$(_context5) {
        while (1) {
          switch (_context5.prev = _context5.next) {
            case 0:
              force = _arguments2.length > 1 && _arguments2[1] !== undefined ? _arguments2[1] : false;

              if (!(taskList.length === 0)) {
                _context5.next = 3;
                break;
              }

              return _context5.abrupt("return");

            case 3:
              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('任务初始化'); // 过滤相同任务（不直接合并入taskList是因为会影响执行顺序）

              _this3.filterTaskList(taskList, force); // 将下发的taskList与当前未执行的taskList合并


              mergeList = taskList.concat(_this3.taskList.splice(!_this3.taskIndex && !TaskStatus() ? 0 : _this3.taskIndex + 1)); // 任务分类

              mergeList.forEach(function (item) {
                var _item = _this3.taskTypesMap[item.type_id]; // 未知任务类型

                if (!_item) return;

                _item.list.push(item);
              }); // 优先级排序

              _this3.taskTypes.forEach(function (item) {
                var _this3$taskList;

                if (!item.list || item.list.length === 0) return;
                item.list = item.list.sort(function (a, b) {
                  return b.priority - a.priority;
                }); // 合并

                (_this3$taskList = _this3.taskList).push.apply(_this3$taskList, _toConsumableArray(item.list));

                item.list = [];
              });

              _this3.taskSchedule();

            case 9:
            case "end":
              return _context5.stop();
          }
        }
      }, _callee5);
    }))();
  },

  /**
   * @description 过滤相同任务
   * @param {Array} taskList 
   * @param {boolean} force 
   * @returns taskList
   */
  filterTaskList: function filterTaskList(taskList) {
    var _this4 = this;

    var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
    taskList.forEach(function (i, key) {
      // 任务初始化
      taskList[key] = _this4.adapter(i);
      var item = taskList[key]; // 特殊处理repeat任务

      if (item.repeat > 0) {
        _this4.initRepeaTask(item, force); // return

      } // 如果是repeat任务&此任务已经正在轮询&不是立即获取(force=true)，则直接删掉这条任务


      if (item.isDelete) return;
      var index;

      var sameTask = _this4.taskList.find(function (_item, _index) {
        if (_item.task_id === item.task_id && !_item.isDelete) {
          index = _index;
          return true;
        }
      });

      if (!sameTask) return true; // 这条任务是否已执行过
      // const done = index <= this.taskIndex

      if (index < _this4.taskIndex) {
        // 匹配到的任务在本轮执行过，旧任务添加删除标记
        sameTask.isDelete = true;
      } else if (index === _this4.taskIndex) {
        // 匹配到的任务正在执行，则软删除新任务（不删除旧任务是因为相同任务会执行两次）
        sameTask.error_time = 0;
        sameTask.hide = false;
        sameTask.isDelete = false;
        sameTask.status = 0;
        item.isDelete = true;
        return true;
      } else {
        // 还未执行则直接删除 *** （这里是直接删掉还是标记删除好点还有待考虑）
        _this4.taskList.splice(index, 1);
      }
    });
  },

  /**
   * @description 初始化repeat任务，覆盖相同任务类型，相同店铺的任务，循环次数清0
   * @returns 
   */
  initRepeaTask: function initRepeaTask(task) {
    var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
    if (task.repeat <= 0) return;
    var copy = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* deepClone */ "g"])(task); // 为重复任务添加count、isRepeatMap

    copy.count = 0;
    copy.isRepeatMap = true;
    var repeatList = this.repeatMap[task.type_id] || [];
    this.repeatMap[task.type_id] = repeatList.filter(function (item) {
      // 相同站点&不是点击的立即获取&不是repeatMap派遣的任务，则继续走repeat任务管理流程，删掉新进来的任务
      // 防止循环请求拉任务导致repeat任务重复执行
      if (item.market_code === task.market_code && !force && !task.isRepeatMap) {
        task.isDelete = true; // 继承上次count

        copy.count = item.count;
      }

      return item.market_code !== task.market_code;
    });
    this.repeatMap[task.type_id].push(copy);
  },

  /**
   * @description 任务调度
   */
  taskSchedule: function taskSchedule() {
    var _this5 = this;

    return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
      var _task2, timeoutFlag, t, res, handle;

      return _regeneratorRuntime().wrap(function _callee6$(_context6) {
        while (1) {
          switch (_context6.prev = _context6.next) {
            case 0:
              _context6.prev = 0;

              if (!TaskStatus()) {
                _context6.next = 4;
                break;
              }

              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("\u5F53\u524D\u6B63\u5728\u6267\u884C".concat(TaskStatus()));
              return _context6.abrupt("return");

            case 4:
              // 先切换任务状态防止重新调用，下面在切换到对应任务名
              TaskStatus(999); // 执行任务列表

            case 5:
              _context6.next = 7;
              return hasExecutable();

            case 7:
              if (!_context6.sent) {
                _context6.next = 90;
                break;
              }

              _task2 = _this5.taskList[_this5.taskIndex];
              timeoutFlag = void 0;
              _context6.prev = 10;
              _context6.next = 13;
              return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* executable */ "i"])();

            case 13:
              if (_context6.sent) {
                _context6.next = 16;
                break;
              }

              // 切换空闲状态
              TaskStatus('idle');
              return _context6.abrupt("return", false);

            case 16:
              if (_task2) {
                _context6.next = 18;
                break;
              }

              return _context6.abrupt("break", 90);

            case 18:
              // 切换任务状态
              TaskStatus(_task2.type_id); // 任务未删除、未完成、未超过错误次数且未暂停、未过期、repeat-1任务未执行，则执行任务

              _context6.t1 = _task2 && !_task2.isDelete && _task2.status !== 1 && _task2.error_time < 10;

              if (!_context6.t1) {
                _context6.next = 24;
                break;
              }

              _context6.next = 23;
              return discontinue(_task2.type);

            case 23:
              _context6.t1 = !_context6.sent;

            case 24:
              _context6.t0 = _context6.t1;

              if (!_context6.t0) {
                _context6.next = 29;
                break;
              }

              _context6.next = 28;
              return canRunTask(_task2);

            case 28:
              _context6.t0 = _context6.sent;

            case 29:
              if (!_context6.t0) {
                _context6.next = 68;
                break;
              }

              // 缓存和一些特定字段不打印出来（如广告记录的campaignRecords、campaignReportsRecords）
              t = _objectSpread(_objectSpread({}, _task2), {}, {
                resCache: null,
                campaignRecords: null,
                campaignReportsRecords: null
              });
              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("\u5F53\u524D\u6267\u884C\u4EFB\u52A1".concat(_this5.taskTypesMap[_task2.type_id].name), JSON.stringify(t)); // 执行任务前给任务增加超时定时器（促销、买家之声等任务除外）

              if ([53, 54, 55, 56, 57].indexOf(_task2.type_id) < 0) setTaskTimeout(_task2).then(function () {
                return timeoutFlag = true;
              });
              res = void 0;
              handle = _core_index__WEBPACK_IMPORTED_MODULE_5__[/* taskHandleMap */ "b"][_task2.type_id].handle;
              _task2.isRun = true;
              _task2.status = 0;
              _task2.startTime = moment__WEBPACK_IMPORTED_MODULE_0___default()().format('YYYY-MM-DD HH:mm:ss');
              console.time("".concat(TaskStatus(), "\u8017\u65F6")); // 延时15s

              _context6.next = 41;
              return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* delayed */ "h"])(_config__WEBPACK_IMPORTED_MODULE_2__[/* sleepTime */ "k"]);

            case 41:
              _context6.next = 43;
              return _core_index__WEBPACK_IMPORTED_MODULE_5__[/* cores */ "a"][handle](_task2);

            case 43:
              res = _context6.sent;
              // 如果任务执行失败，则失败次数+1
              res && res.code !== 0 && ++_task2.error_time; // 模拟任务阻塞
              // if (window.taskBlock) {
              //   window.taskBlock = false
              //   return
              // }

              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('获取结果', res && JSON.stringify(res)); // 上传

              _context6.t2 = res;

              if (!_context6.t2) {
                _context6.next = 51;
                break;
              }

              _context6.next = 50;
              return discontinue(_task2.type);

            case 50:
              _context6.t2 = !_context6.sent;

            case 51:
              if (!_context6.t2) {
                _context6.next = 66;
                break;
              }

              if (!_data_amazon__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].isVc) {
                _context6.next = 57;
                break;
              }

              _context6.next = 55;
              return _data_amazon__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].checkVcSellerId(res, _task2);

            case 55:
              _context6.next = 64;
              break;

            case 57:
              if (!_task2.adHost) {
                _context6.next = 62;
                break;
              }

              _context6.next = 60;
              return checkAdsSellerid(res, _task2);

            case 60:
              _context6.next = 64;
              break;

            case 62:
              _context6.next = 64;
              return checkSellerId(res, _task2);

            case 64:
              _context6.next = 66;
              return uploadTask(res, _task2);

            case 66:
              console.timeEnd("".concat(TaskStatus(), "\u8017\u65F6")); // 清除任务超时定时器

              clearTaskTimeout(_task2.task_id);

            case 68:
              _context6.next = 76;
              break;

            case 70:
              _context6.prev = 70;
              _context6.t3 = _context6["catch"](10);
              _task2.error_time++;
              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].report("\n            \u4EFB\u52A1\u6267\u884C\u51FA\u9519: ".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context6.t3), "\n            --type_id:").concat(_task2.type_id, "\n            --task_id:").concat(_task2.task_id, "\n            "), 'error');
              console.timeEnd("".concat(TaskStatus(), "\u8017\u65F6")); // 清除任务超时定时器

              clearTaskTimeout(_task2.task_id);

            case 76:
              if (!timeoutFlag) {
                _context6.next = 78;
                break;
              }

              return _context6.abrupt("return");

            case 78:
              _this5.taskIndex++; // 中断任务，清除自动获取任务

              if (!_this5.removeAutoTaskList) {
                _context6.next = 84;
                break;
              }

              _this5.removeAutoTaskList = false; // 切换空闲状态

              TaskStatus('idle');

              _this5.clearAutoTaskList();

              return _context6.abrupt("return");

            case 84:
              _context6.next = 86;
              return discontinue(_task2.type);

            case 86:
              if (!_context6.sent) {
                _context6.next = 88;
                break;
              }

              return _context6.abrupt("return");

            case 88:
              _context6.next = 5;
              break;

            case 90:
              // 切换空闲状态
              TaskStatus('idle'); // 隐藏图标Badge

              Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* setBadge */ "G"])(10); // 清理任务

              _this5.clearTaskList(); // 还有可执行任务


              _context6.next = 95;
              return hasExecutable();

            case 95:
              if (!_context6.sent) {
                _context6.next = 97;
                break;
              }

              _this5.taskSchedule();

            case 97:
              _context6.next = 103;
              break;

            case 99:
              _context6.prev = 99;
              _context6.t4 = _context6["catch"](0);
              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].report("taskSchedule\u6267\u884C\u51FA\u9519".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context6.t4)), 'error'); // 切换空闲状态

              TaskStatus('idle');

            case 103:
            case "end":
              return _context6.stop();
          }
        }
      }, _callee6, null, [[0, 99], [10, 70]]);
    }))();
  },

  /**
   * @description 执行repeat任务
   */
  runRepeat: function runRepeat() {
    var _this6 = this;

    return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
      var repeatTaskList, key, list, _iterator, _step, _task3;

      return _regeneratorRuntime().wrap(function _callee7$(_context7) {
        while (1) {
          switch (_context7.prev = _context7.next) {
            case 0:
              _context7.prev = 0;
              repeatTaskList = [];
              _context7.t0 = _regeneratorRuntime().keys(_this6.repeatMap);

            case 3:
              if ((_context7.t1 = _context7.t0()).done) {
                _context7.next = 29;
                break;
              }

              key = _context7.t1.value;
              list = _this6.repeatMap[key] || [];
              _iterator = _createForOfIteratorHelper(list);
              _context7.prev = 7;

              _iterator.s();

            case 9:
              if ((_step = _iterator.n()).done) {
                _context7.next = 19;
                break;
              }

              _task3 = _step.value;

              if (!(_task3.repeat <= _config__WEBPACK_IMPORTED_MODULE_2__[/* POLLING_TIME */ "c"] * _task3.count)) {
                _context7.next = 16;
                break;
              }

              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("\u5F00\u59CB\u6267\u884C\u91CD\u590D\u4EFB\u52A1\uFF0C\u4EFB\u52A1\u7C7B\u578B\uFF1A".concat(_task3.type));
              _task3.count = 0;
              repeatTaskList.push(_task3);
              return _context7.abrupt("continue", 17);

            case 16:
              _task3.count++;

            case 17:
              _context7.next = 9;
              break;

            case 19:
              _context7.next = 24;
              break;

            case 21:
              _context7.prev = 21;
              _context7.t2 = _context7["catch"](7);

              _iterator.e(_context7.t2);

            case 24:
              _context7.prev = 24;

              _iterator.f();

              return _context7.finish(24);

            case 27:
              _context7.next = 3;
              break;

            case 29:
              _this6.initTaskList(repeatTaskList);

              _context7.next = 35;
              break;

            case 32:
              _context7.prev = 32;
              _context7.t3 = _context7["catch"](0);
              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].report("\u6267\u884Crepeat\u4EFB\u52A1\u9519\u8BEF----".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context7.t3)), 'error');

            case 35:
            case "end":
              return _context7.stop();
          }
        }
      }, _callee7, null, [[0, 32], [7, 21, 24, 27]]);
    }))();
  },

  /**
   * @description 清理任务
   */
  clearTaskList: function clearTaskList() {
    _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('开始清理任务');
    var count = 1;
    var arr = []; // 清空指针

    this.taskIndex = 0; // 保留可执行任务、不超过100条状态成功以及失败不可重试任务

    this.taskList.forEach( /*#__PURE__*/function () {
      var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(item) {
        return _regeneratorRuntime().wrap(function _callee8$(_context8) {
          while (1) {
            switch (_context8.prev = _context8.next) {
              case 0:
                if (!(item.isDelete || count > 100 && (item.status === 1 || item.error_time > 9))) {
                  _context8.next = 2;
                  break;
                }

                return _context8.abrupt("return");

              case 2:
                arr.push(item);
                count++;

              case 4:
              case "end":
                return _context8.stop();
            }
          }
        }, _callee8);
      }));

      return function (_x) {
        return _ref2.apply(this, arguments);
      };
    }());
    this.taskList = arr;
  },

  /**
   * @description 删除自动获取的任务
   */
  clearAutoTaskList: function clearAutoTaskList() {
    var _this7 = this;

    _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('开始删除自动获取任务');

    if (TaskStatus()) {
      this.removeAutoTaskList = true;
      return;
    }

    var length = this.taskList.length; // 保留客户生成、系统生成的成功和失败不能重试的任务，其余可执行任务的全部删除（邮件除外）

    this.taskList = this.taskList.filter(function (item) {
      // 客户生成任务、邮件任务
      if (item.origin_type !== 1 || [51].indexOf(item.type_id) >= 0) return true; // 系统生成的成功、失败不能重试任务

      if (item.status === 1 || item.error_time > 9) return true;
      return false;
    }); // 清除重复任务（邮件除外）

    Object.keys(this.repeatMap).forEach(function (item) {
      // this.repeatMap[item] = this.repeatMap[item].filter(item => [51].indexOf(item.type_id) >= 0)
      _this7.repeatMap[item] = [];
    });
    this.taskIndex = 0;
    _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('删除成功，删除条数：', length - this.taskList.length);
    this.taskSchedule();
  },

  /**
   * @description 检查是否到点删除自动任务
   */

  /**
   * @description 判断本地时间是否已到早上九点，到了就调用clearAutoTaskList删除自动任务
   */
  checkDeleteAutoTask: function checkDeleteAutoTask() {
    var _this8 = this;

    return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9() {
      var now, today, _yield$localStorage$g, lastClearAutoTaskDate, nineAM;

      return _regeneratorRuntime().wrap(function _callee9$(_context9) {
        while (1) {
          switch (_context9.prev = _context9.next) {
            case 0:
              now = moment__WEBPACK_IMPORTED_MODULE_0___default()();
              today = now.format('YYYY-MM-DD');
              _context9.next = 4;
              return _utils_util__WEBPACK_IMPORTED_MODULE_1__[/* localStorage */ "y"].getItem(['lastClearAutoTaskDate']);

            case 4:
              _yield$localStorage$g = _context9.sent;
              lastClearAutoTaskDate = _yield$localStorage$g.lastClearAutoTaskDate;

              if (!(lastClearAutoTaskDate === today)) {
                _context9.next = 8;
                break;
              }

              return _context9.abrupt("return");

            case 8:
              nineAM = moment__WEBPACK_IMPORTED_MODULE_0___default()().startOf('day').add(9, 'hours');

              if (!now.isSameOrAfter(nineAM)) {
                _context9.next = 13;
                break;
              }

              _context9.next = 12;
              return _utils_util__WEBPACK_IMPORTED_MODULE_1__[/* localStorage */ "y"].setItem({
                lastClearAutoTaskDate: today
              });

            case 12:
              _this8.clearAutoTaskList();

            case 13:
            case "end":
              return _context9.stop();
          }
        }
      }, _callee9);
    }))();
  },

  /**
   * @description 退出登录，清除任务列表，定时器
   */
  clear: function clear() {
    this.taskList = [];
    this.taskTypeTotal = 0;
    this.taskTypes = [];
    this.taskTypesMap = {};
    this.taskIndex = 0;
    this.repeatMap = {}; // 切换空闲状态

    TaskStatus('idle');
  },

  /**
   * @description 删除任务
   * @param {Array} task_id数组
   */
  handleDelete: function handleDelete(taskIds) {
    var map = {};
    taskIds.forEach(function (item) {
      return map[item] = 1;
    });
    this.taskList.forEach(function (item) {
      if (map[item.task_id]) item.isDelete = true;
    });
  },

  /**
   * @description 立即获取ipi任务
   */
  immediatelyGetIpi: function immediatelyGetIpi(seller_ids) {
    var _this9 = this;

    return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {
      var res;
      return _regeneratorRuntime().wrap(function _callee10$(_context10) {
        while (1) {
          switch (_context10.prev = _context10.next) {
            case 0:
              _context10.next = 2;
              return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* gatePost */ "m"])('api/v1/proxy', {
                url: 'erp/api/ForInternal/fbaLimit/plugin/clickCreateTask',
                method: 'post',
                data: {
                  seller_ids: seller_ids
                }
              }, 'task');

            case 2:
              res = _context10.sent;

              if (!(res && res.code === 0)) {
                _context10.next = 8;
                break;
              }

              _this9.initTaskList(res.data);

              return _context10.abrupt("return", {
                code: 0
              });

            case 8:
              return _context10.abrupt("return", {
                code: -1,
                msg: res.msg
              });

            case 9:
            case "end":
              return _context10.stop();
          }
        }
      }, _callee10);
    }))();
  },

  /**
   * @description 接收推送调度
   */
  receivePush: function receivePush(data) {
    if (!data || !data.content || !data.content.platform_code) return;
    _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('[amazon]task.js接收到推送类型', data.type);

    switch (data.type) {
      case 6:
        task.initTaskList([data.content]);
        break;

      case 8:
        task.handleDelete(data.content);
        break;
      // case 10: task.getTaskList(amazon.sellerId)
      //   break

      case 20:
        if (data.content == 0) task.clearAutoTaskList();
    }
  },

  /**
   * @description 任务恢复执行
   */
  goExecute: function goExecute() {
    _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('GoExecute');
    this.taskSchedule();
  }
};
/* harmony default export */ __webpack_exports__["b"] = (task);
/**
 * @description 设置任务超时定时器
 */

function setTaskTimeout(taskItem) {
  return new Promise( /*#__PURE__*/function () {
    var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee12(resolve) {
      return _regeneratorRuntime().wrap(function _callee12$(_context12) {
        while (1) {
          switch (_context12.prev = _context12.next) {
            case 0:
              _utils_util__WEBPACK_IMPORTED_MODULE_1__[/* alarms */ "b"].setTimeout( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {
                return _regeneratorRuntime().wrap(function _callee11$(_context11) {
                  while (1) {
                    switch (_context11.prev = _context11.next) {
                      case 0:
                        try {
                          _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].report("".concat(task.taskTypesMap[taskItem.type_id].name, "\u4EFB\u52A1\u6267\u884C\u8D85\u65F6[").concat(taskItem.task_id, "]"), 'error');
                          taskItem.msg = '任务执行超时，系统自动取消任务。'; // taskItem.status = -999

                          taskItem.error_time = 10; // 上报超时任务

                          uploadTask({
                            type_id: taskItem.type_id,
                            seller_id: taskItem.seller_id,
                            result: null,
                            code: 2,
                            msg: taskItem.msg
                          }, taskItem);
                        } catch (e) {
                          _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('任务超时定时器执行出错', Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(e));
                        }

                        resolve(); // 切换空闲状态

                        TaskStatus('idle'); // 隐藏图标Badge

                        Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* setBadge */ "G"])(10);
                        task.taskIndex++; // 清理任务
                        // task.clearTaskList()
                        // 还有可执行任务

                        _context11.next = 7;
                        return hasExecutable();

                      case 7:
                        if (!_context11.sent) {
                          _context11.next = 9;
                          break;
                        }

                        task.taskSchedule();

                      case 9:
                      case "end":
                        return _context11.stop();
                    }
                  }
                }, _callee11);
              })), "taskTimeout".concat(taskItem.task_id), task.taskTimeout);

            case 1:
            case "end":
              return _context12.stop();
          }
        }
      }, _callee12);
    }));

    return function (_x2) {
      return _ref3.apply(this, arguments);
    };
  }());
}
/**
 * @description 清除任务超时定时器
 */


function clearTaskTimeout(taskId) {
  _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('清除任务超时定时器', taskId);
  chrome.alarms.clear("taskTimeout".concat(taskId));
}
/**
* @description 上传任务
* @param {Object} params
* company_id：公司ID
* type_id：任务类型ID
* seller_id：seller_id
* code: 0 成功 1 出错 2 异常 3业务不存在，异常可以在助手管理处重试
* msg: code非0，对应的文案
* version：执行此任务的版本号
* result: 各任务结果数据
* @param {Object} task
* @param {Boolean} isDelete 上传成功后是否需要删除
*/


function uploadTask(_x3, _x4) {
  return _uploadTask.apply(this, arguments);
}
/**
 * @description 判断/修改当前执行任务 如果有传type，则修改执行任务类型，没传则返回当前执行任务name
 * @param type 任务类型 
 */

function _uploadTask() {
  _uploadTask = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee13(params, task) {
    var count,
        res,
        _args13 = arguments;
    return _regeneratorRuntime().wrap(function _callee13$(_context13) {
      while (1) {
        switch (_context13.prev = _context13.next) {
          case 0:
            count = _args13.length > 2 && _args13[2] !== undefined ? _args13[2] : 0;
            _context13.next = 3;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* gatePost */ "m"])("api/v1/tasks/".concat(task.task_id), _objectSpread({
              type_id: task.type_id,
              seller_id: task.seller_id
            }, params), 'task').catch(function (e) {
              _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('上传错误：', Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(e));
            });

          case 3:
            res = _context13.sent;
            _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('上传结果：', JSON.stringify(res));

            if (!(res && res.code === 0)) {
              _context13.next = 10;
              break;
            }

            if (params.code === 0) {
              task.resCache = null; // 清空结果缓存

              task.status = 1; // 上传成功，修改状态（失败任务不会执行这步）

              task.uploadTime = moment__WEBPACK_IMPORTED_MODULE_0___default()().format('YYYY-MM-DD HH:mm:ss');
            }

            return _context13.abrupt("return", true);

          case 10:
            if (!(res && res.code === 3002)) {
              _context13.next = 17;
              break;
            }

            // 任务不存在或已删除，直接删掉任务
            _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("task_id:".concat(task.task_id, " - ").concat(res.msg));
            task.isDelete = true;
            task.msg = res.msg;
            return _context13.abrupt("return", false);

          case 17:
            if (!(count < 2)) {
              _context13.next = 25;
              break;
            }

            _context13.next = 20;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* delayed */ "h"])(5 * 1000);

          case 20:
            _context13.next = 22;
            return uploadTask(params, task, ++count);

          case 22:
            return _context13.abrupt("return", _context13.sent);

          case 25:
            if (!([0, 4].indexOf(params.code) > -1)) {
              _context13.next = 30;
              break;
            }

            // 上传失败，修改状态，错误次数+1（失败任务不会执行这步）
            task.status = 7; // task.error_time++

            task.msg = '上传失败';
            task.resCache = params;
            return _context13.abrupt("return", false);

          case 30:
          case "end":
            return _context13.stop();
        }
      }
    }, _callee13);
  }));
  return _uploadTask.apply(this, arguments);
}

var TaskStatus = function () {
  var taskStatus = 'idle';
  return function (type) {
    if (type) taskStatus = type;else return taskStatus === 'idle' ? false : task.taskTypesMap[taskStatus] && task.taskTypesMap[taskStatus].name || taskStatus;
  };
}();
/**
 * @description 当前任务是否暂停
 * allows：中断不影响执行的任务
 * @param {*} type 
 * @returns 
 */

function discontinue(_x5) {
  return _discontinue.apply(this, arguments);
}
/**
 * @description 判断是否还有可执行任务（未删除、未执行成功、未超过获取错误次数10次、可继续执行）
 * @returns taskList
 */

function _discontinue() {
  _discontinue = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee14(type) {
    var allows;
    return _regeneratorRuntime().wrap(function _callee14$(_context14) {
      while (1) {
        switch (_context14.prev = _context14.next) {
          case 0:
            allows = ['qa'];
            _context14.next = 3;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* suspend */ "J"])();

          case 3:
            _context14.t0 = _context14.sent;

            if (!_context14.t0) {
              _context14.next = 6;
              break;
            }

            _context14.t0 = allows.indexOf(type) < 0;

          case 6:
            if (!_context14.t0) {
              _context14.next = 9;
              break;
            }

            // 切换空闲状态
            TaskStatus('idle');
            return _context14.abrupt("return", true);

          case 9:
            return _context14.abrupt("return", false);

          case 10:
          case "end":
            return _context14.stop();
        }
      }
    }, _callee14);
  }));
  return _discontinue.apply(this, arguments);
}

function hasExecutable() {
  return _hasExecutable.apply(this, arguments);
}
/**
 * @description 判断任务能否执行，repeat < 0的任务才需要判断
 */


function _hasExecutable() {
  _hasExecutable = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee15() {
    var arr, _iterator2, _step2, item;

    return _regeneratorRuntime().wrap(function _callee15$(_context15) {
      while (1) {
        switch (_context15.prev = _context15.next) {
          case 0:
            arr = [];
            _iterator2 = _createForOfIteratorHelper(task.taskList || []);
            _context15.prev = 2;

            _iterator2.s();

          case 4:
            if ((_step2 = _iterator2.n()).done) {
              _context15.next = 15;
              break;
            }

            item = _step2.value;
            _context15.t0 = !item.isDelete && item.status !== 1 && item.error_time < 10;

            if (!_context15.t0) {
              _context15.next = 11;
              break;
            }

            _context15.next = 10;
            return discontinue(item.type);

          case 10:
            _context15.t0 = !_context15.sent;

          case 11:
            if (!_context15.t0) {
              _context15.next = 13;
              break;
            }

            arr.push(item);

          case 13:
            _context15.next = 4;
            break;

          case 15:
            _context15.next = 20;
            break;

          case 17:
            _context15.prev = 17;
            _context15.t1 = _context15["catch"](2);

            _iterator2.e(_context15.t1);

          case 20:
            _context15.prev = 20;

            _iterator2.f();

            return _context15.finish(20);

          case 23:
            return _context15.abrupt("return", arr.length > 0);

          case 24:
          case "end":
            return _context15.stop();
        }
      }
    }, _callee15, null, [[2, 17, 20, 23]]);
  }));
  return _hasExecutable.apply(this, arguments);
}

function canRunTask(_x6) {
  return _canRunTask.apply(this, arguments);
}
/**
 * @description 检测seller_id
 */


function _canRunTask() {
  _canRunTask = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee16(_task) {
    var repeat, task_id, expiration_time, type_id, res, msg;
    return _regeneratorRuntime().wrap(function _callee16$(_context16) {
      while (1) {
        switch (_context16.prev = _context16.next) {
          case 0:
            repeat = _task.repeat, task_id = _task.task_id, expiration_time = _task.expiration_time, type_id = _task.type_id;

            if (!(!task.excludeTasks.includes(type_id) && repeat >= 0)) {
              _context16.next = 3;
              break;
            }

            return _context16.abrupt("return", true);

          case 3:
            _context16.next = 5;
            return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* gatePost */ "m"])('api/v1/clientInfos', {
              type: 4,
              data: {
                task_id: task_id,
                expiration_time: expiration_time,
                type_id: type_id
              }
            }, 'task').catch(function () {});

          case 5:
            res = _context16.sent;

            if (!(res && res.data)) {
              _context16.next = 21;
              break;
            }

            _context16.t0 = res.data.status;
            _context16.next = _context16.t0 === 0 ? 10 : _context16.t0 === 1 ? 11 : _context16.t0 === 2 ? 13 : 21;
            break;

          case 10:
            return _context16.abrupt("return", true);

          case 11:
            _task.isDelete = true;
            return _context16.abrupt("return", false);

          case 13:
            _task.error_time = 10;
            _task.run_status = 4;
            _task.status = 17; // 超时上报

            msg = type_id == 72 ? "修改库存超时失效，建议暂停其他插件任务" : "任务已失效";
            _context16.next = 19;
            return uploadTask({
              code: 1,
              msg: msg
            }, _task);

          case 19:
            if (task.excludeTasks.includes(type_id)) {
              _task.isDelete = true;
            }

            return _context16.abrupt("return", false);

          case 21:
            _task.error_time++;
            return _context16.abrupt("return", false);

          case 23:
          case "end":
            return _context16.stop();
        }
      }
    }, _callee16);
  }));
  return _canRunTask.apply(this, arguments);
}

function checkSellerId(_x7, _x8) {
  return _checkSellerId.apply(this, arguments);
} // window.task = task

/**
 * @description 检测广告seller_id
 */


function _checkSellerId() {
  _checkSellerId = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee17(res, task) {
    var curSellerId, onlineSite, info, _i, _Object$values, account, _iterator3, _step3, _step3$value, site, sellerId, accountId, errMsg, regionalAccounts, _iterator4, _step4, seller, _sellerId;

    return _regeneratorRuntime().wrap(function _callee17$(_context17) {
      while (1) {
        switch (_context17.prev = _context17.next) {
          case 0:
            curSellerId = new Set();
            _context17.prev = 1;
            onlineSite = _data_amazon__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].onlineSite; // const getAllSite = amazon.getAllSite
            // const getAccounts = amazon.getAccounts

            _i = 0, _Object$values = Object.values(onlineSite);

          case 4:
            if (!(_i < _Object$values.length)) {
              _context17.next = 27;
              break;
            }

            account = _Object$values[_i];
            _iterator3 = _createForOfIteratorHelper(account);
            _context17.prev = 7;

            _iterator3.s();

          case 9:
            if ((_step3 = _iterator3.n()).done) {
              _context17.next = 16;
              break;
            }

            _step3$value = _step3.value, site = _step3$value.site, sellerId = _step3$value.sellerId, accountId = _step3$value.accountId;

            if (!(site === task.market_code && sellerId === task.seller_id)) {
              _context17.next = 14;
              break;
            }

            info = accountId;
            return _context17.abrupt("break", 16);

          case 14:
            _context17.next = 9;
            break;

          case 16:
            _context17.next = 21;
            break;

          case 18:
            _context17.prev = 18;
            _context17.t0 = _context17["catch"](7);

            _iterator3.e(_context17.t0);

          case 21:
            _context17.prev = 21;

            _iterator3.f();

            return _context17.finish(21);

          case 24:
            _i++;
            _context17.next = 4;
            break;

          case 27:
            if (info) {
              _context17.next = 30;
              break;
            }

            _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("\u672A\u5339\u914D\u5230seller_id-".concat(task.seller_id, "\uFF0C\u8BF7\u786E\u8BA4\u767B\u5F55\u7684\u5E97\u94FA\u540E\uFF0C\u91CD\u542F\u63D2\u4EF6\u518D\u8BD5,taskId: ").concat(task.task_id));
            return _context17.abrupt("return", false);

          case 30:
            _context17.next = 32;
            return _data_amazon__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].requestMerchantMarketplaces(_data_amazon__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].host, info, function (msg) {
              return errMsg = msg;
            });

          case 32:
            regionalAccounts = _context17.sent;

            if (!(regionalAccounts && regionalAccounts.length)) {
              _context17.next = 53;
              break;
            }

            _iterator4 = _createForOfIteratorHelper(regionalAccounts);
            _context17.prev = 35;

            _iterator4.s();

          case 37:
            if ((_step4 = _iterator4.n()).done) {
              _context17.next = 45;
              break;
            }

            seller = _step4.value;
            _sellerId = seller.searchIds[2];

            if (!(_sellerId === task.seller_id)) {
              _context17.next = 42;
              break;
            }

            return _context17.abrupt("return");

          case 42:
            curSellerId.add(_sellerId);

          case 43:
            _context17.next = 37;
            break;

          case 45:
            _context17.next = 50;
            break;

          case 47:
            _context17.prev = 47;
            _context17.t1 = _context17["catch"](35);

            _iterator4.e(_context17.t1);

          case 50:
            _context17.prev = 50;

            _iterator4.f();

            return _context17.finish(50);

          case 53:
            // }
            // 走到这里说明没有seller_id检测没有通过
            res.code = 2;
            res.msg = errMsg || '检测到seller_id已切换，请确认登录的店铺后，重启插件再试';
            task.error_time = 10;
            _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog(res.msg + ',检测到的seller_id：' + _toConsumableArray(curSellerId).join());
            _context17.next = 62;
            break;

          case 59:
            _context17.prev = 59;
            _context17.t2 = _context17["catch"](1);
            _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('上传前，检测seller_id失败', Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context17.t2), '检测到的seller_id：', _toConsumableArray(curSellerId).join());

          case 62:
          case "end":
            return _context17.stop();
        }
      }
    }, _callee17, null, [[1, 59], [7, 18, 21, 24], [35, 47, 50, 53]]);
  }));
  return _checkSellerId.apply(this, arguments);
}

function checkAdsSellerid(_x9, _x10) {
  return _checkAdsSellerid.apply(this, arguments);
} // window.taskTest = (type_id, task_id) => {
// const mock = [{
//   task_id: task_id || '302168331355279420',
//   seller_id: 'A303OEQ77COZA8',
//   type_id,
//   run_type: 0,
//   status: 0,
//   market_code: 'US',
//   market_id: 33,
//   origin_type: -1,
//   sid: 27,
//   // data: '[{"shipment_id": "FBA17540NGXD"},{"shipment_id": "FBA173V564WQ"},{"shipment_id": "FBA16ZDB5SY4"}]',
//   // data: '[{"parentId": "8ce01e67-c373-482a-bb09-756fdc6c33df","name": "111"}, {"parentId": "8ce01e67-c373-482a-bb09-756fdc6c33dd","name": "222"}]',
//   data: '{"date": "2023-12-10T23:59:59-08:00"}',
//   repeat: 0,
//   min_version: '',
//   priority: 1
// }]
//   task.initTaskList(mock)
// }


function _checkAdsSellerid() {
  _checkAdsSellerid = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee18(res, task) {
    var entityId, marketplaceIdToAdvertiserId, marketplaceId;
    return _regeneratorRuntime().wrap(function _callee18$(_context18) {
      while (1) {
        switch (_context18.prev = _context18.next) {
          case 0:
            _context18.prev = 0;
            _context18.next = 3;
            return _data_amazon__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].getEntityId(task);

          case 3:
            entityId = _context18.sent;

            if (entityId) {
              _context18.next = 7;
              break;
            }

            _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("\u5E7F\u544A\u68C0\u6D4Bseller_id\u5931\u8D25---\u83B7\u53D6entityId\u5931\u8D25");
            return _context18.abrupt("return");

          case 7:
            _context18.next = 9;
            return _data_amazon__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].getSellerIdInAds(task, entityId);

          case 9:
            marketplaceIdToAdvertiserId = _context18.sent;

            if (marketplaceIdToAdvertiserId) {
              _context18.next = 13;
              break;
            }

            _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("\u5E7F\u544A\u68C0\u6D4Bseller_id\u5931\u8D25---\u83B7\u53D6marketplaceIdToAdvertiserId\u5931\u8D25");
            return _context18.abrupt("return");

          case 13:
            marketplaceId = _data_amazon__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].MarketplaceObj[task.market_code];

            if (!(marketplaceIdToAdvertiserId[marketplaceId] === task.seller_id)) {
              _context18.next = 16;
              break;
            }

            return _context18.abrupt("return");

          case 16:
            // seller_id不匹配
            res.code = 2;
            res.msg = '检测到广告seller_id已切换，请确认登录的店铺后，重启插件再试';
            task.error_time = 10;
            _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog(res.msg + ',检测到的seller_id：' + JSON.stringify(marketplaceIdToAdvertiserId));
            _context18.next = 25;
            break;

          case 22:
            _context18.prev = 22;
            _context18.t0 = _context18["catch"](0);
            _data_log__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('上传前，检测广告seller_id失败', Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context18.t0));

          case 25:
          case "end":
            return _context18.stop();
        }
      }
    }, _callee18, null, [[0, 22]]);
  }));
  return _checkAdsSellerid.apply(this, arguments);
}

/***/ }),

/***/ "cee4":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");
var bind = __webpack_require__("1d2b");
var Axios = __webpack_require__("0a06");
var mergeConfig = __webpack_require__("4a7b");
var defaults = __webpack_require__("2444");

/**
 * Create an instance of Axios
 *
 * @param {Object} defaultConfig The default config for the instance
 * @return {Axios} A new instance of Axios
 */
function createInstance(defaultConfig) {
  var context = new Axios(defaultConfig);
  var instance = bind(Axios.prototype.request, context);

  // Copy axios.prototype to instance
  utils.extend(instance, Axios.prototype, context);

  // Copy context to instance
  utils.extend(instance, context);

  return instance;
}

// Create the default instance to be exported
var axios = createInstance(defaults);

// Expose Axios class to allow class inheritance
axios.Axios = Axios;

// Factory for creating new instances
axios.create = function create(instanceConfig) {
  return createInstance(mergeConfig(axios.defaults, instanceConfig));
};

// Expose Cancel & CancelToken
axios.Cancel = __webpack_require__("7a77");
axios.CancelToken = __webpack_require__("8df4");
axios.isCancel = __webpack_require__("2e67");

// Expose all/spread
axios.all = function all(promises) {
  return Promise.all(promises);
};
axios.spread = __webpack_require__("0df6");

module.exports = axios;

// Allow use of default import syntax in TypeScript
module.exports.default = axios;


/***/ }),

/***/ "d000":
/***/ (function(module, exports, __webpack_require__) {

var apply = __webpack_require__("85e3"),
    createCtor = __webpack_require__("1257"),
    root = __webpack_require__("2b3e");

/** Used to compose bitmasks for function metadata. */
var WRAP_BIND_FLAG = 1;

/**
 * Creates a function that wraps `func` to invoke it with the `this` binding
 * of `thisArg` and `partials` prepended to the arguments it receives.
 *
 * @private
 * @param {Function} func The function to wrap.
 * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
 * @param {*} thisArg The `this` binding of `func`.
 * @param {Array} partials The arguments to prepend to those provided to
 *  the new function.
 * @returns {Function} Returns the new wrapped function.
 */
function createPartial(func, bitmask, thisArg, partials) {
  var isBind = bitmask & WRAP_BIND_FLAG,
      Ctor = createCtor(func);

  function wrapper() {
    var argsIndex = -1,
        argsLength = arguments.length,
        leftIndex = -1,
        leftLength = partials.length,
        args = Array(leftLength + argsLength),
        fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;

    while (++leftIndex < leftLength) {
      args[leftIndex] = partials[leftIndex];
    }
    while (argsLength--) {
      args[leftIndex++] = arguments[++argsIndex];
    }
    return apply(fn, isBind ? thisArg : this, args);
  }
  return wrapper;
}

module.exports = createPartial;


/***/ }),

/***/ "d02c":
/***/ (function(module, exports, __webpack_require__) {

var ListCache = __webpack_require__("5e2e"),
    Map = __webpack_require__("79bc"),
    MapCache = __webpack_require__("7b83");

/** Used as the size to enable large array optimizations. */
var LARGE_ARRAY_SIZE = 200;

/**
 * Sets the stack `key` to `value`.
 *
 * @private
 * @name set
 * @memberOf Stack
 * @param {string} key The key of the value to set.
 * @param {*} value The value to set.
 * @returns {Object} Returns the stack cache instance.
 */
function stackSet(key, value) {
  var data = this.__data__;
  if (data instanceof ListCache) {
    var pairs = data.__data__;
    if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {
      pairs.push([key, value]);
      this.size = ++data.size;
      return this;
    }
    data = this.__data__ = new MapCache(pairs);
  }
  data.set(key, value);
  this.size = data.size;
  return this;
}

module.exports = stackSet;


/***/ }),

/***/ "d116":
/***/ (function(module, exports, __webpack_require__) {

/**
 * Module dependencies
 */

var serialize = __webpack_require__("1735"),
    defaultOptions = __webpack_require__("c84e").default,
    flattenOptions = __webpack_require__("c84e").flatten,
    select = __webpack_require__("cc5b"),
    parse = __webpack_require__("72ce"),
    _ = {
      merge: __webpack_require__("42454"),
      defaults: __webpack_require__("95ae")
    };

/**
 * $.load(str)
 */

exports.load = function(content, options, isDocument) {
  var Cheerio = __webpack_require__("53a3");

  options = _.defaults(flattenOptions(options || {}), defaultOptions);

  if (isDocument === void 0)
    isDocument = true;

  var root = parse(content, options, isDocument);

  var initialize = function(selector, context, r, opts) {
    if (!(this instanceof initialize)) {
      return new initialize(selector, context, r, opts);
    }
    opts = _.defaults(opts || {}, options);
    return Cheerio.call(this, selector, context, r || root, opts);
  };

  // Ensure that selections created by the "loaded" `initialize` function are
  // true Cheerio instances.
  initialize.prototype = Object.create(Cheerio.prototype);
  initialize.prototype.constructor = initialize;

  // Mimic jQuery's prototype alias for plugin authors.
  initialize.fn = initialize.prototype;

  // Keep a reference to the top-level scope so we can chain methods that implicitly
  // resolve selectors; e.g. $("<span>").(".bar"), which otherwise loses ._root
  initialize.prototype._originalRoot = root;

  // Add in the static methods
  _.merge(initialize, exports);

  // Add in the root
  initialize._root = root;
  // store options
  initialize._options = options;

  return initialize;
};

/*
* Helper function
*/

function render(that, dom, options) {
  if (!dom) {
    if (that._root && that._root.children) {
      dom = that._root.children;
    } else {
      return '';
    }
  } else if (typeof dom === 'string') {
    dom = select(dom, that._root, options);
  }

  return serialize(dom, options);
}

/**
 * $.html([selector | dom], [options])
 */

exports.html = function(dom, options) {
  // be flexible about parameters, sometimes we call html(),
  // with options as only parameter
  // check dom argument for dom element specific properties
  // assume there is no 'length' or 'type' properties in the options object
  if (Object.prototype.toString.call(dom) === '[object Object]' && !options && !('length' in dom) && !('type' in dom))
  {
    options = dom;
    dom = undefined;
  }

  // sometimes $.html() used without preloading html
  // so fallback non existing options to the default ones
  options = _.defaults(flattenOptions(options || {}), this._options, defaultOptions);

  return render(this, dom, options);
};

/**
 * $.xml([selector | dom])
 */

exports.xml = function(dom) {
  var options = _.defaults({xml: true}, this._options);

  return render(this, dom, options);
};

/**
 * $.text(dom)
 */

exports.text = function(elems) {
  if (!elems) {
    elems = this.root();
  }

  var ret = '',
      len = elems.length,
      elem;

  for (var i = 0; i < len; i++) {
    elem = elems[i];
    if (elem.type === 'text') ret += elem.data;
    else if (elem.children && elem.type !== 'comment' && elem.tagName !== 'script' && elem.tagName !== 'style') {
      ret += exports.text(elem.children);
    }
  }

  return ret;
};

/**
 * $.parseHTML(data [, context ] [, keepScripts ])
 * Parses a string into an array of DOM nodes. The `context` argument has no
 * meaning for Cheerio, but it is maintained for API compatibility with jQuery.
 */
exports.parseHTML = function(data, context, keepScripts) {
  var parsed;

  if (!data || typeof data !== 'string') {
    return null;
  }

  if (typeof context === 'boolean') {
    keepScripts = context;
  }

  parsed = this.load(data, defaultOptions, false);
  if (!keepScripts) {
    parsed('script').remove();
  }

  // The `children` array is used by Cheerio internally to group elements that
  // share the same parents. When nodes created through `parseHTML` are
  // inserted into previously-existing DOM structures, they will be removed
  // from the `children` array. The results of `parseHTML` should remain
  // constant across these operations, so a shallow copy should be returned.
  return parsed.root()[0].children.slice();
};

/**
 * $.root()
 */
exports.root = function() {
  return this(this._root);
};

/**
 * $.contains()
 */
exports.contains = function(container, contained) {

  // According to the jQuery API, an element does not "contain" itself
  if (contained === container) {
    return false;
  }

  // Step up the descendants, stopping when the root element is reached
  // (signaled by `.parent` returning a reference to the same object)
  while (contained && contained !== contained.parent) {
    contained = contained.parent;
    if (contained === container) {
      return true;
    }
  }

  return false;
};

/**
 * $.merge()
 */

exports.merge = function(arr1, arr2) {
  if(!(isArrayLike(arr1) && isArrayLike(arr2))){
    return;
  }
  var newLength = arr1.length + arr2.length;
  var i = 0;
  while(i < arr2.length){
    arr1[i + arr1.length] = arr2[i];
    i++;
  }
  arr1.length = newLength;
  return arr1;
};

function isArrayLike(item){
  if(Array.isArray(item)){
    return true;
  }
  if(typeof item !== 'object'){
    return false;
  }
  if(!item.hasOwnProperty('length')){
    return false;
  }
  if(typeof item.length !== 'number') {
    return false;
  }
  if(item.length < 0){
    return false;
  }
  var i = 0;
  while(i < item.length){
    if(!(i in item)){
      return false;
    }
    i++;
  }
  return true;
}


/***/ }),

/***/ "d17b":
/***/ (function(module, exports, __webpack_require__) {

module.exports = __webpack_require__("e372").Transform


/***/ }),

/***/ "d233":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var has = Object.prototype.hasOwnProperty;

var hexTable = (function () {
    var array = [];
    for (var i = 0; i < 256; ++i) {
        array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());
    }

    return array;
}());

var compactQueue = function compactQueue(queue) {
    var obj;

    while (queue.length) {
        var item = queue.pop();
        obj = item.obj[item.prop];

        if (Array.isArray(obj)) {
            var compacted = [];

            for (var j = 0; j < obj.length; ++j) {
                if (typeof obj[j] !== 'undefined') {
                    compacted.push(obj[j]);
                }
            }

            item.obj[item.prop] = compacted;
        }
    }

    return obj;
};

var arrayToObject = function arrayToObject(source, options) {
    var obj = options && options.plainObjects ? Object.create(null) : {};
    for (var i = 0; i < source.length; ++i) {
        if (typeof source[i] !== 'undefined') {
            obj[i] = source[i];
        }
    }

    return obj;
};

var merge = function merge(target, source, options) {
    if (!source) {
        return target;
    }

    if (typeof source !== 'object') {
        if (Array.isArray(target)) {
            target.push(source);
        } else if (target && typeof target === 'object') {
            if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) {
                target[source] = true;
            }
        } else {
            return [target, source];
        }

        return target;
    }

    if (!target || typeof target !== 'object') {
        return [target].concat(source);
    }

    var mergeTarget = target;
    if (Array.isArray(target) && !Array.isArray(source)) {
        mergeTarget = arrayToObject(target, options);
    }

    if (Array.isArray(target) && Array.isArray(source)) {
        source.forEach(function (item, i) {
            if (has.call(target, i)) {
                var targetItem = target[i];
                if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {
                    target[i] = merge(targetItem, item, options);
                } else {
                    target.push(item);
                }
            } else {
                target[i] = item;
            }
        });
        return target;
    }

    return Object.keys(source).reduce(function (acc, key) {
        var value = source[key];

        if (has.call(acc, key)) {
            acc[key] = merge(acc[key], value, options);
        } else {
            acc[key] = value;
        }
        return acc;
    }, mergeTarget);
};

var assign = function assignSingleSource(target, source) {
    return Object.keys(source).reduce(function (acc, key) {
        acc[key] = source[key];
        return acc;
    }, target);
};

var decode = function (str) {
    try {
        return decodeURIComponent(str.replace(/\+/g, ' '));
    } catch (e) {
        return str;
    }
};

var encode = function encode(str) {
    // This code was originally written by Brian White (mscdex) for the io.js core querystring library.
    // It has been adapted here for stricter adherence to RFC 3986
    if (str.length === 0) {
        return str;
    }

    var string = typeof str === 'string' ? str : String(str);

    var out = '';
    for (var i = 0; i < string.length; ++i) {
        var c = string.charCodeAt(i);

        if (
            c === 0x2D // -
            || c === 0x2E // .
            || c === 0x5F // _
            || c === 0x7E // ~
            || (c >= 0x30 && c <= 0x39) // 0-9
            || (c >= 0x41 && c <= 0x5A) // a-z
            || (c >= 0x61 && c <= 0x7A) // A-Z
        ) {
            out += string.charAt(i);
            continue;
        }

        if (c < 0x80) {
            out = out + hexTable[c];
            continue;
        }

        if (c < 0x800) {
            out = out + (hexTable[0xC0 | (c >> 6)] + hexTable[0x80 | (c & 0x3F)]);
            continue;
        }

        if (c < 0xD800 || c >= 0xE000) {
            out = out + (hexTable[0xE0 | (c >> 12)] + hexTable[0x80 | ((c >> 6) & 0x3F)] + hexTable[0x80 | (c & 0x3F)]);
            continue;
        }

        i += 1;
        c = 0x10000 + (((c & 0x3FF) << 10) | (string.charCodeAt(i) & 0x3FF));
        /* eslint operator-linebreak: [2, "before"] */
        out += hexTable[0xF0 | (c >> 18)]
            + hexTable[0x80 | ((c >> 12) & 0x3F)]
            + hexTable[0x80 | ((c >> 6) & 0x3F)]
            + hexTable[0x80 | (c & 0x3F)];
    }

    return out;
};

var compact = function compact(value) {
    var queue = [{ obj: { o: value }, prop: 'o' }];
    var refs = [];

    for (var i = 0; i < queue.length; ++i) {
        var item = queue[i];
        var obj = item.obj[item.prop];

        var keys = Object.keys(obj);
        for (var j = 0; j < keys.length; ++j) {
            var key = keys[j];
            var val = obj[key];
            if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {
                queue.push({ obj: obj, prop: key });
                refs.push(val);
            }
        }
    }

    return compactQueue(queue);
};

var isRegExp = function isRegExp(obj) {
    return Object.prototype.toString.call(obj) === '[object RegExp]';
};

var isBuffer = function isBuffer(obj) {
    if (obj === null || typeof obj === 'undefined') {
        return false;
    }

    return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
};

module.exports = {
    arrayToObject: arrayToObject,
    assign: assign,
    compact: compact,
    decode: decode,
    encode: encode,
    isBuffer: isBuffer,
    isRegExp: isRegExp,
    merge: merge
};


/***/ }),

/***/ "d24a":
/***/ (function(module) {

module.exports = JSON.parse("{\"pagination\":{\"page\":1,\"size\":25,\"total\":1},\"results\":[{\"id\":\"release-2542362139-879690569\",\"dateStart\":\"2025-12-01T00:00:00Z\",\"dateEnd\":\"2025-12-31T23:59:59Z\",\"dateCreated\":\"2026-01-18T12:22:04Z\",\"createdBy\":\"manual\",\"report\":{\"id\":\"release\",\"topic\":\"balance\"},\"origin\":{\"type\":\"manual\",\"data\":{\"date_start\":\"2025-12-01T00:00:00Z\",\"date_end\":\"2025-12-31T23:59:59Z\"}},\"download\":{\"xlsx\":\"/balance/reports/release/statements/release-2542362139-879690569/download?format=xlsx\"},\"status\":\"processed\",\"internalManagement\":{\"is_visible\":true,\"notify\":true,\"use_exact_time\":false,\"alias_created_from\":null,\"created_by\":null,\"created_from\":null,\"updated_by\":null,\"updated_from\":null,\"md_feeder\":{\"should_resume\":true,\"custom_requester\":\"account-reports-manual\"},\"reprocess\":null,\"is_public_request\":false,\"work_unit\":null,\"missing_movements_retries\":0,\"is_support\":false,\"months_backwards\":0},\"data\":{}}]}");

/***/ }),

/***/ "d2de":
/***/ (function(module, exports, __webpack_require__) {

var Parser = __webpack_require__("374e");
var DomHandler = __webpack_require__("f1d3");

function defineProp(name, value) {
    delete module.exports[name];
    module.exports[name] = value;
    return value;
}

module.exports = {
    Parser: Parser,
    Tokenizer: __webpack_require__("0b32"),
    ElementType: __webpack_require__("af98"),
    DomHandler: DomHandler,
    get FeedHandler() {
        return defineProp("FeedHandler", __webpack_require__("fb27"));
    },
    get Stream() {
        return defineProp("Stream", __webpack_require__("25e8"));
    },
    get WritableStream() {
        return defineProp("WritableStream", __webpack_require__("bcc5"));
    },
    get ProxyHandler() {
        return defineProp("ProxyHandler", __webpack_require__("e47a"));
    },
    get DomUtils() {
        return defineProp("DomUtils", __webpack_require__("2241"));
    },
    get CollectingHandler() {
        return defineProp(
            "CollectingHandler",
            __webpack_require__("ff13")
        );
    },
    // For legacy support
    DefaultHandler: DomHandler,
    get RssHandler() {
        return defineProp("RssHandler", this.FeedHandler);
    },
    //helper methods
    parseDOM: function(data, options) {
        var handler = new DomHandler(options);
        new Parser(handler, options).end(data);
        return handler.dom;
    },
    parseFeed: function(feed, options) {
        var handler = new module.exports.FeedHandler(options);
        new Parser(handler, options).end(feed);
        return handler.dom;
    },
    createDomStream: function(cb, options, elementCb) {
        var handler = new DomHandler(cb, options, elementCb);
        return new Parser(handler, options);
    },
    // List of all events that the parser emits
    EVENTS: {
        /* Format: eventname: number of arguments */
        attribute: 2,
        cdatastart: 0,
        cdataend: 0,
        text: 1,
        processinginstruction: 2,
        comment: 1,
        commentend: 0,
        closetag: 1,
        opentag: 2,
        opentagname: 1,
        error: 1,
        end: 0
    }
};


/***/ }),

/***/ "d301":
/***/ (function(module, exports) {

throw new Error("Module parse failed: Unexpected token (1:0)\nYou may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders\n> <!doctype html>\n| <html lang=\"en-GB\" data-19ax5a9jf=\"dingo\" class=\"a-no-js\">\n|     <head>");

/***/ }),

/***/ "d327":
/***/ (function(module, exports) {

/**
 * This method returns a new empty array.
 *
 * @static
 * @memberOf _
 * @since 4.13.0
 * @category Util
 * @returns {Array} Returns the new empty array.
 * @example
 *
 * var arrays = _.times(2, _.stubArray);
 *
 * console.log(arrays);
 * // => [[], []]
 *
 * console.log(arrays[0] === arrays[1]);
 * // => false
 */
function stubArray() {
  return [];
}

module.exports = stubArray;


/***/ }),

/***/ "d370":
/***/ (function(module, exports, __webpack_require__) {

var baseIsArguments = __webpack_require__("253c"),
    isObjectLike = __webpack_require__("1310");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/** Built-in value references. */
var propertyIsEnumerable = objectProto.propertyIsEnumerable;

/**
 * Checks if `value` is likely an `arguments` object.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is an `arguments` object,
 *  else `false`.
 * @example
 *
 * _.isArguments(function() { return arguments; }());
 * // => true
 *
 * _.isArguments([1, 2, 3]);
 * // => false
 */
var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {
  return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&
    !propertyIsEnumerable.call(value, 'callee');
};

module.exports = isArguments;


/***/ }),

/***/ "d485":
/***/ (function(module, exports, __webpack_require__) {

// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.

module.exports = Stream;

var EE = __webpack_require__("faa1").EventEmitter;
var inherits = __webpack_require__("3fb5");

inherits(Stream, EE);
Stream.Readable = __webpack_require__("e372");
Stream.Writable = __webpack_require__("2c63");
Stream.Duplex = __webpack_require__("0960");
Stream.Transform = __webpack_require__("d17b");
Stream.PassThrough = __webpack_require__("c2ae");

// Backwards-compat with node 0.4.x
Stream.Stream = Stream;



// old-style streams.  Note that the pipe method (the only relevant
// part of this class) is overridden in the Readable class.

function Stream() {
  EE.call(this);
}

Stream.prototype.pipe = function(dest, options) {
  var source = this;

  function ondata(chunk) {
    if (dest.writable) {
      if (false === dest.write(chunk) && source.pause) {
        source.pause();
      }
    }
  }

  source.on('data', ondata);

  function ondrain() {
    if (source.readable && source.resume) {
      source.resume();
    }
  }

  dest.on('drain', ondrain);

  // If the 'end' option is not supplied, dest.end() will be called when
  // source gets the 'end' or 'close' events.  Only dest.end() once.
  if (!dest._isStdio && (!options || options.end !== false)) {
    source.on('end', onend);
    source.on('close', onclose);
  }

  var didOnEnd = false;
  function onend() {
    if (didOnEnd) return;
    didOnEnd = true;

    dest.end();
  }


  function onclose() {
    if (didOnEnd) return;
    didOnEnd = true;

    if (typeof dest.destroy === 'function') dest.destroy();
  }

  // don't leave dangling pipes when there are errors.
  function onerror(er) {
    cleanup();
    if (EE.listenerCount(this, 'error') === 0) {
      throw er; // Unhandled stream error in pipe.
    }
  }

  source.on('error', onerror);
  dest.on('error', onerror);

  // remove all the event listeners that were added.
  function cleanup() {
    source.removeListener('data', ondata);
    dest.removeListener('drain', ondrain);

    source.removeListener('end', onend);
    source.removeListener('close', onclose);

    source.removeListener('error', onerror);
    dest.removeListener('error', onerror);

    source.removeListener('end', cleanup);
    source.removeListener('close', cleanup);

    dest.removeListener('close', cleanup);
  }

  source.on('end', cleanup);
  source.on('close', cleanup);

  dest.on('close', cleanup);

  dest.emit('pipe', source);

  // Allow for unix-like usage: A.pipe(B).pipe(C)
  return dest;
};


/***/ }),

/***/ "d54b":
/***/ (function(module, exports, __webpack_require__) {

var entityMap = __webpack_require__("0b1b"),
    legacyMap = __webpack_require__("c461"),
    xmlMap = __webpack_require__("85fb"),
    decodeCodePoint = __webpack_require__("c66d");

var decodeXMLStrict = getStrictDecoder(xmlMap),
    decodeHTMLStrict = getStrictDecoder(entityMap);

function getStrictDecoder(map) {
    var keys = Object.keys(map).join("|"),
        replace = getReplacer(map);

    keys += "|#[xX][\\da-fA-F]+|#\\d+";

    var re = new RegExp("&(?:" + keys + ");", "g");

    return function(str) {
        return String(str).replace(re, replace);
    };
}

var decodeHTML = (function() {
    var legacy = Object.keys(legacyMap).sort(sorter);

    var keys = Object.keys(entityMap).sort(sorter);

    for (var i = 0, j = 0; i < keys.length; i++) {
        if (legacy[j] === keys[i]) {
            keys[i] += ";?";
            j++;
        } else {
            keys[i] += ";";
        }
    }

    var re = new RegExp("&(?:" + keys.join("|") + "|#[xX][\\da-fA-F]+;?|#\\d+;?)", "g"),
        replace = getReplacer(entityMap);

    function replacer(str) {
        if (str.substr(-1) !== ";") str += ";";
        return replace(str);
    }

    //TODO consider creating a merged map
    return function(str) {
        return String(str).replace(re, replacer);
    };
})();

function sorter(a, b) {
    return a < b ? 1 : -1;
}

function getReplacer(map) {
    return function replace(str) {
        if (str.charAt(1) === "#") {
            if (str.charAt(2) === "X" || str.charAt(2) === "x") {
                return decodeCodePoint(parseInt(str.substr(3), 16));
            }
            return decodeCodePoint(parseInt(str.substr(2), 10));
        }
        return map[str.slice(1, -1)];
    };
}

module.exports = {
    XML: decodeXMLStrict,
    HTML: decodeHTML,
    HTMLStrict: decodeHTMLStrict
};


/***/ }),

/***/ "d60a":
/***/ (function(module, exports) {

module.exports = function isBuffer(arg) {
  return arg && typeof arg === 'object'
    && typeof arg.copy === 'function'
    && typeof arg.fill === 'function'
    && typeof arg.readUInt8 === 'function';
}

/***/ }),

/***/ "d612":
/***/ (function(module, exports, __webpack_require__) {

var MapCache = __webpack_require__("7b83"),
    setCacheAdd = __webpack_require__("7ed2"),
    setCacheHas = __webpack_require__("dc0f");

/**
 *
 * Creates an array cache object to store unique values.
 *
 * @private
 * @constructor
 * @param {Array} [values] The values to cache.
 */
function SetCache(values) {
  var index = -1,
      length = values == null ? 0 : values.length;

  this.__data__ = new MapCache;
  while (++index < length) {
    this.add(values[index]);
  }
}

// Add methods to `SetCache`.
SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;
SetCache.prototype.has = setCacheHas;

module.exports = SetCache;


/***/ }),

/***/ "d925":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


/**
 * Determines whether the specified URL is absolute
 *
 * @param {string} url The URL to test
 * @returns {boolean} True if the specified URL is absolute, otherwise false
 */
module.exports = function isAbsoluteURL(url) {
  // A URL is considered absolute if it begins with "<scheme>://" or "//" (protocol-relative URL).
  // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed
  // by any combination of letters, digits, plus, period, or hyphen.
  return /^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(url);
};


/***/ }),

/***/ "d9a8":
/***/ (function(module, exports) {

/**
 * The base implementation of `_.isNaN` without support for number objects.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.
 */
function baseIsNaN(value) {
  return value !== value;
}

module.exports = baseIsNaN;


/***/ }),

/***/ "da03":
/***/ (function(module, exports, __webpack_require__) {

var root = __webpack_require__("2b3e");

/** Used to detect overreaching core-js shims. */
var coreJsData = root['__core-js_shared__'];

module.exports = coreJsData;


/***/ }),

/***/ "da53":
/***/ (function(module, exports) {

/** Used to match wrap detail comments. */
var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;

/**
 * Inserts wrapper `details` in a comment at the top of the `source` body.
 *
 * @private
 * @param {string} source The source to modify.
 * @returns {Array} details The details to insert.
 * @returns {string} Returns the modified source.
 */
function insertWrapDetails(source, details) {
  var length = details.length;
  if (!length) {
    return source;
  }
  var lastIndex = length - 1;
  details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex];
  details = details.join(length > 2 ? ', ' : ' ');
  return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n');
}

module.exports = insertWrapDetails;


/***/ }),

/***/ "db49":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* unused harmony export env */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "m", function() { return version; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return api; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return adApi; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return gateApi; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "j", function() { return runTime; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "k", function() { return sleepTime; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "h", function() { return logLength; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return POLLING_TIME; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "l", function() { return statusList; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return InterceptVCCompanyid; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return NO_RETRY_HTTP_STATUS; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return TEMU_MAX_RETRY_COUNT; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "i", function() { return platformCodeMap; });
// import { isFirefox } from '@/utils/util.js'
var gateApis = {
  development: 'http://gateway-test.ak.xyz/',
  // development: 'https://gw.lingxingerp.com/',
  test: 'http://gateway-test.ak.xyz/',
  production: 'https://gw.lingxingerp.com/'
}; // 轮询定时时长（秒）- 火狐
// const ffTime = 5
// 轮询定时时长（秒）- 谷歌

var ggtime = 5 * 60; // 调试环境

var env = "production"; // export const env = 'test'
//版本号

var version = '4.3.12'; // 后端api接口

var api = {
  production: 'https://client.asinking.com/client/',
  test: 'http://client.asinking.com/client/',
  development: 'http://client.asinking.com/client/'
}[env]; // 广告api接口

var adApi = {
  production: 'https://ads.lingxing.com/',
  test: 'http://10.49.1.241:81/',
  development: 'http://10.49.1.241:81/'
}[env]; // 网关接口

var gateApi = gateApis[env]; // 任务可执行时间

var runTime = []; //若为空数组，表示不限制
// 任务执行间隔

var sleepTime = 1000 * 25; // 日志保留最大长度

var logLength = 500; // 轮询定时时长（秒）

var POLLING_TIME = ggtime; // 状态映射表

var statusList = {
  0: '获取中',
  6: '文件生成中',
  2: '文件已生成',
  3: '文件生成失败',
  4: '下载成功',
  5: '下载失败',
  1: '已上传',
  7: '上传失败',
  8: '无B2B类型',
  9: '下载失败',
  10: '文件未找到',
  11: '店铺离线',
  12: '无访问权限',
  13: '页面异常',
  14: '获取异常',
  15: '获取成功',
  16: '店铺检测失败',
  17: '已超时',
  18: '获取失败',
  19: '部分数据获取失败，正在重试中',
  20: '请确认是否开通创作者计划',
  99: '已中断'
}; // 拦截验证码功能的客户

var InterceptVCCompanyid = ['901412900950159872', '901112348547158528', '901358058419934208', '901378880803103744', '901381050722276352', '901328627889820160', '901181791307083776', '901286551397761024']; // 以下http状态码任务不可重试

var NO_RETRY_HTTP_STATUS = /(?<!\d)(400|401|403|404|405)(?!\d)/; // temu最大重试次数

var TEMU_MAX_RETRY_COUNT = 20; // 平台code,temu是之前就定下来的拿全托平台code当temu平台code,做tk的时候飞霞说不合理，所以tk就按tiktok来当平台code。。。

var platformCodeMap = {
  temu: 10022,
  tiktok: 'tiktok',
  mercado: 'mercado'
};

/***/ }),

/***/ "dc0f":
/***/ (function(module, exports) {

/**
 * Checks if `value` is in the array cache.
 *
 * @private
 * @name has
 * @memberOf SetCache
 * @param {*} value The value to search for.
 * @returns {number} Returns `true` if `value` is found, else `false`.
 */
function setCacheHas(value) {
  return this.__data__.has(value);
}

module.exports = setCacheHas;


/***/ }),

/***/ "dc14":
/***/ (function(module, exports, __webpack_require__) {

"use strict";
/* WEBPACK VAR INJECTION */(function(process, global) {// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.

// A bit simpler than readable streams.
// Implement an async ._write(chunk, encoding, cb), and it'll handle all
// the drain event emission and buffering.



/*<replacement>*/

var pna = __webpack_require__("966d");
/*</replacement>*/

module.exports = Writable;

/* <replacement> */
function WriteReq(chunk, encoding, cb) {
  this.chunk = chunk;
  this.encoding = encoding;
  this.callback = cb;
  this.next = null;
}

// It seems a linked list but it is not
// there will be only 2 of these for each stream
function CorkedRequest(state) {
  var _this = this;

  this.next = null;
  this.entry = null;
  this.finish = function () {
    onCorkedFinish(_this, state);
  };
}
/* </replacement> */

/*<replacement>*/
var asyncWrite = !process.browser && ['v0.10', 'v0.9.'].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : pna.nextTick;
/*</replacement>*/

/*<replacement>*/
var Duplex;
/*</replacement>*/

Writable.WritableState = WritableState;

/*<replacement>*/
var util = Object.create(__webpack_require__("3a7c"));
util.inherits = __webpack_require__("3fb5");
/*</replacement>*/

/*<replacement>*/
var internalUtil = {
  deprecate: __webpack_require__("b7d1")
};
/*</replacement>*/

/*<replacement>*/
var Stream = __webpack_require__("429b");
/*</replacement>*/

/*<replacement>*/

var Buffer = __webpack_require__("8707").Buffer;
var OurUint8Array = function () {};
function _uint8ArrayToBuffer(chunk) {
  return Buffer.from(chunk);
}
function _isUint8Array(obj) {
  return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;
}

/*</replacement>*/

var destroyImpl = __webpack_require__("4681");

util.inherits(Writable, Stream);

function nop() {}

function WritableState(options, stream) {
  Duplex = Duplex || __webpack_require__("b19a");

  options = options || {};

  // Duplex streams are both readable and writable, but share
  // the same options object.
  // However, some cases require setting options to different
  // values for the readable and the writable sides of the duplex stream.
  // These options can be provided separately as readableXXX and writableXXX.
  var isDuplex = stream instanceof Duplex;

  // object stream flag to indicate whether or not this stream
  // contains buffers or objects.
  this.objectMode = !!options.objectMode;

  if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode;

  // the point at which write() starts returning false
  // Note: 0 is a valid value, means that we always return false if
  // the entire buffer is not flushed immediately on write()
  var hwm = options.highWaterMark;
  var writableHwm = options.writableHighWaterMark;
  var defaultHwm = this.objectMode ? 16 : 16 * 1024;

  if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (writableHwm || writableHwm === 0)) this.highWaterMark = writableHwm;else this.highWaterMark = defaultHwm;

  // cast to ints.
  this.highWaterMark = Math.floor(this.highWaterMark);

  // if _final has been called
  this.finalCalled = false;

  // drain event flag.
  this.needDrain = false;
  // at the start of calling end()
  this.ending = false;
  // when end() has been called, and returned
  this.ended = false;
  // when 'finish' is emitted
  this.finished = false;

  // has it been destroyed
  this.destroyed = false;

  // should we decode strings into buffers before passing to _write?
  // this is here so that some node-core streams can optimize string
  // handling at a lower level.
  var noDecode = options.decodeStrings === false;
  this.decodeStrings = !noDecode;

  // Crypto is kind of old and crusty.  Historically, its default string
  // encoding is 'binary' so we have to make this configurable.
  // Everything else in the universe uses 'utf8', though.
  this.defaultEncoding = options.defaultEncoding || 'utf8';

  // not an actual buffer we keep track of, but a measurement
  // of how much we're waiting to get pushed to some underlying
  // socket or file.
  this.length = 0;

  // a flag to see when we're in the middle of a write.
  this.writing = false;

  // when true all writes will be buffered until .uncork() call
  this.corked = 0;

  // a flag to be able to tell if the onwrite cb is called immediately,
  // or on a later tick.  We set this to true at first, because any
  // actions that shouldn't happen until "later" should generally also
  // not happen before the first write call.
  this.sync = true;

  // a flag to know if we're processing previously buffered items, which
  // may call the _write() callback in the same tick, so that we don't
  // end up in an overlapped onwrite situation.
  this.bufferProcessing = false;

  // the callback that's passed to _write(chunk,cb)
  this.onwrite = function (er) {
    onwrite(stream, er);
  };

  // the callback that the user supplies to write(chunk,encoding,cb)
  this.writecb = null;

  // the amount that is being written when _write is called.
  this.writelen = 0;

  this.bufferedRequest = null;
  this.lastBufferedRequest = null;

  // number of pending user-supplied write callbacks
  // this must be 0 before 'finish' can be emitted
  this.pendingcb = 0;

  // emit prefinish if the only thing we're waiting for is _write cbs
  // This is relevant for synchronous Transform streams
  this.prefinished = false;

  // True if the error was already emitted and should not be thrown again
  this.errorEmitted = false;

  // count buffered requests
  this.bufferedRequestCount = 0;

  // allocate the first CorkedRequest, there is always
  // one allocated and free to use, and we maintain at most two
  this.corkedRequestsFree = new CorkedRequest(this);
}

WritableState.prototype.getBuffer = function getBuffer() {
  var current = this.bufferedRequest;
  var out = [];
  while (current) {
    out.push(current);
    current = current.next;
  }
  return out;
};

(function () {
  try {
    Object.defineProperty(WritableState.prototype, 'buffer', {
      get: internalUtil.deprecate(function () {
        return this.getBuffer();
      }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')
    });
  } catch (_) {}
})();

// Test _writableState for inheritance to account for Duplex streams,
// whose prototype chain only points to Readable.
var realHasInstance;
if (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {
  realHasInstance = Function.prototype[Symbol.hasInstance];
  Object.defineProperty(Writable, Symbol.hasInstance, {
    value: function (object) {
      if (realHasInstance.call(this, object)) return true;
      if (this !== Writable) return false;

      return object && object._writableState instanceof WritableState;
    }
  });
} else {
  realHasInstance = function (object) {
    return object instanceof this;
  };
}

function Writable(options) {
  Duplex = Duplex || __webpack_require__("b19a");

  // Writable ctor is applied to Duplexes, too.
  // `realHasInstance` is necessary because using plain `instanceof`
  // would return false, as no `_writableState` property is attached.

  // Trying to use the custom `instanceof` for Writable here will also break the
  // Node.js LazyTransform implementation, which has a non-trivial getter for
  // `_writableState` that would lead to infinite recursion.
  if (!realHasInstance.call(Writable, this) && !(this instanceof Duplex)) {
    return new Writable(options);
  }

  this._writableState = new WritableState(options, this);

  // legacy.
  this.writable = true;

  if (options) {
    if (typeof options.write === 'function') this._write = options.write;

    if (typeof options.writev === 'function') this._writev = options.writev;

    if (typeof options.destroy === 'function') this._destroy = options.destroy;

    if (typeof options.final === 'function') this._final = options.final;
  }

  Stream.call(this);
}

// Otherwise people can pipe Writable streams, which is just wrong.
Writable.prototype.pipe = function () {
  this.emit('error', new Error('Cannot pipe, not readable'));
};

function writeAfterEnd(stream, cb) {
  var er = new Error('write after end');
  // TODO: defer error events consistently everywhere, not just the cb
  stream.emit('error', er);
  pna.nextTick(cb, er);
}

// Checks that a user-supplied chunk is valid, especially for the particular
// mode the stream is in. Currently this means that `null` is never accepted
// and undefined/non-string values are only allowed in object mode.
function validChunk(stream, state, chunk, cb) {
  var valid = true;
  var er = false;

  if (chunk === null) {
    er = new TypeError('May not write null values to stream');
  } else if (typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {
    er = new TypeError('Invalid non-string/buffer chunk');
  }
  if (er) {
    stream.emit('error', er);
    pna.nextTick(cb, er);
    valid = false;
  }
  return valid;
}

Writable.prototype.write = function (chunk, encoding, cb) {
  var state = this._writableState;
  var ret = false;
  var isBuf = !state.objectMode && _isUint8Array(chunk);

  if (isBuf && !Buffer.isBuffer(chunk)) {
    chunk = _uint8ArrayToBuffer(chunk);
  }

  if (typeof encoding === 'function') {
    cb = encoding;
    encoding = null;
  }

  if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;

  if (typeof cb !== 'function') cb = nop;

  if (state.ended) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {
    state.pendingcb++;
    ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);
  }

  return ret;
};

Writable.prototype.cork = function () {
  var state = this._writableState;

  state.corked++;
};

Writable.prototype.uncork = function () {
  var state = this._writableState;

  if (state.corked) {
    state.corked--;

    if (!state.writing && !state.corked && !state.finished && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);
  }
};

Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {
  // node::ParseEncoding() requires lower case.
  if (typeof encoding === 'string') encoding = encoding.toLowerCase();
  if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new TypeError('Unknown encoding: ' + encoding);
  this._writableState.defaultEncoding = encoding;
  return this;
};

function decodeChunk(state, chunk, encoding) {
  if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {
    chunk = Buffer.from(chunk, encoding);
  }
  return chunk;
}

Object.defineProperty(Writable.prototype, 'writableHighWaterMark', {
  // making it explicit this property is not enumerable
  // because otherwise some prototype manipulation in
  // userland will fail
  enumerable: false,
  get: function () {
    return this._writableState.highWaterMark;
  }
});

// if we're already writing something, then just put this
// in the queue, and wait our turn.  Otherwise, call _write
// If we return false, then we need a drain event, so set that flag.
function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {
  if (!isBuf) {
    var newChunk = decodeChunk(state, chunk, encoding);
    if (chunk !== newChunk) {
      isBuf = true;
      encoding = 'buffer';
      chunk = newChunk;
    }
  }
  var len = state.objectMode ? 1 : chunk.length;

  state.length += len;

  var ret = state.length < state.highWaterMark;
  // we must ensure that previous needDrain will not be reset to false.
  if (!ret) state.needDrain = true;

  if (state.writing || state.corked) {
    var last = state.lastBufferedRequest;
    state.lastBufferedRequest = {
      chunk: chunk,
      encoding: encoding,
      isBuf: isBuf,
      callback: cb,
      next: null
    };
    if (last) {
      last.next = state.lastBufferedRequest;
    } else {
      state.bufferedRequest = state.lastBufferedRequest;
    }
    state.bufferedRequestCount += 1;
  } else {
    doWrite(stream, state, false, len, chunk, encoding, cb);
  }

  return ret;
}

function doWrite(stream, state, writev, len, chunk, encoding, cb) {
  state.writelen = len;
  state.writecb = cb;
  state.writing = true;
  state.sync = true;
  if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);
  state.sync = false;
}

function onwriteError(stream, state, sync, er, cb) {
  --state.pendingcb;

  if (sync) {
    // defer the callback if we are being called synchronously
    // to avoid piling up things on the stack
    pna.nextTick(cb, er);
    // this can emit finish, and it will always happen
    // after error
    pna.nextTick(finishMaybe, stream, state);
    stream._writableState.errorEmitted = true;
    stream.emit('error', er);
  } else {
    // the caller expect this to happen before if
    // it is async
    cb(er);
    stream._writableState.errorEmitted = true;
    stream.emit('error', er);
    // this can emit finish, but finish must
    // always follow error
    finishMaybe(stream, state);
  }
}

function onwriteStateUpdate(state) {
  state.writing = false;
  state.writecb = null;
  state.length -= state.writelen;
  state.writelen = 0;
}

function onwrite(stream, er) {
  var state = stream._writableState;
  var sync = state.sync;
  var cb = state.writecb;

  onwriteStateUpdate(state);

  if (er) onwriteError(stream, state, sync, er, cb);else {
    // Check if we're actually ready to finish, but don't emit yet
    var finished = needFinish(state);

    if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {
      clearBuffer(stream, state);
    }

    if (sync) {
      /*<replacement>*/
      asyncWrite(afterWrite, stream, state, finished, cb);
      /*</replacement>*/
    } else {
      afterWrite(stream, state, finished, cb);
    }
  }
}

function afterWrite(stream, state, finished, cb) {
  if (!finished) onwriteDrain(stream, state);
  state.pendingcb--;
  cb();
  finishMaybe(stream, state);
}

// Must force callback to be called on nextTick, so that we don't
// emit 'drain' before the write() consumer gets the 'false' return
// value, and has a chance to attach a 'drain' listener.
function onwriteDrain(stream, state) {
  if (state.length === 0 && state.needDrain) {
    state.needDrain = false;
    stream.emit('drain');
  }
}

// if there's something in the buffer waiting, then process it
function clearBuffer(stream, state) {
  state.bufferProcessing = true;
  var entry = state.bufferedRequest;

  if (stream._writev && entry && entry.next) {
    // Fast case, write everything using _writev()
    var l = state.bufferedRequestCount;
    var buffer = new Array(l);
    var holder = state.corkedRequestsFree;
    holder.entry = entry;

    var count = 0;
    var allBuffers = true;
    while (entry) {
      buffer[count] = entry;
      if (!entry.isBuf) allBuffers = false;
      entry = entry.next;
      count += 1;
    }
    buffer.allBuffers = allBuffers;

    doWrite(stream, state, true, state.length, buffer, '', holder.finish);

    // doWrite is almost always async, defer these to save a bit of time
    // as the hot path ends with doWrite
    state.pendingcb++;
    state.lastBufferedRequest = null;
    if (holder.next) {
      state.corkedRequestsFree = holder.next;
      holder.next = null;
    } else {
      state.corkedRequestsFree = new CorkedRequest(state);
    }
    state.bufferedRequestCount = 0;
  } else {
    // Slow case, write chunks one-by-one
    while (entry) {
      var chunk = entry.chunk;
      var encoding = entry.encoding;
      var cb = entry.callback;
      var len = state.objectMode ? 1 : chunk.length;

      doWrite(stream, state, false, len, chunk, encoding, cb);
      entry = entry.next;
      state.bufferedRequestCount--;
      // if we didn't call the onwrite immediately, then
      // it means that we need to wait until it does.
      // also, that means that the chunk and cb are currently
      // being processed, so move the buffer counter past them.
      if (state.writing) {
        break;
      }
    }

    if (entry === null) state.lastBufferedRequest = null;
  }

  state.bufferedRequest = entry;
  state.bufferProcessing = false;
}

Writable.prototype._write = function (chunk, encoding, cb) {
  cb(new Error('_write() is not implemented'));
};

Writable.prototype._writev = null;

Writable.prototype.end = function (chunk, encoding, cb) {
  var state = this._writableState;

  if (typeof chunk === 'function') {
    cb = chunk;
    chunk = null;
    encoding = null;
  } else if (typeof encoding === 'function') {
    cb = encoding;
    encoding = null;
  }

  if (chunk !== null && chunk !== undefined) this.write(chunk, encoding);

  // .end() fully uncorks
  if (state.corked) {
    state.corked = 1;
    this.uncork();
  }

  // ignore unnecessary end() calls.
  if (!state.ending && !state.finished) endWritable(this, state, cb);
};

function needFinish(state) {
  return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;
}
function callFinal(stream, state) {
  stream._final(function (err) {
    state.pendingcb--;
    if (err) {
      stream.emit('error', err);
    }
    state.prefinished = true;
    stream.emit('prefinish');
    finishMaybe(stream, state);
  });
}
function prefinish(stream, state) {
  if (!state.prefinished && !state.finalCalled) {
    if (typeof stream._final === 'function') {
      state.pendingcb++;
      state.finalCalled = true;
      pna.nextTick(callFinal, stream, state);
    } else {
      state.prefinished = true;
      stream.emit('prefinish');
    }
  }
}

function finishMaybe(stream, state) {
  var need = needFinish(state);
  if (need) {
    prefinish(stream, state);
    if (state.pendingcb === 0) {
      state.finished = true;
      stream.emit('finish');
    }
  }
  return need;
}

function endWritable(stream, state, cb) {
  state.ending = true;
  finishMaybe(stream, state);
  if (cb) {
    if (state.finished) pna.nextTick(cb);else stream.once('finish', cb);
  }
  state.ended = true;
  stream.writable = false;
}

function onCorkedFinish(corkReq, state, err) {
  var entry = corkReq.entry;
  corkReq.entry = null;
  while (entry) {
    var cb = entry.callback;
    state.pendingcb--;
    cb(err);
    entry = entry.next;
  }
  if (state.corkedRequestsFree) {
    state.corkedRequestsFree.next = corkReq;
  } else {
    state.corkedRequestsFree = corkReq;
  }
}

Object.defineProperty(Writable.prototype, 'destroyed', {
  get: function () {
    if (this._writableState === undefined) {
      return false;
    }
    return this._writableState.destroyed;
  },
  set: function (value) {
    // we ignore the value if the stream
    // has not been initialized yet
    if (!this._writableState) {
      return;
    }

    // backward compatibility, the user is explicitly
    // managing destroyed
    this._writableState.destroyed = value;
  }
});

Writable.prototype.destroy = destroyImpl.destroy;
Writable.prototype._undestroy = destroyImpl.undestroy;
Writable.prototype._destroy = function (err, cb) {
  this.end();
  cb(err);
};
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("f28c"), __webpack_require__("c8ba")))

/***/ }),

/***/ "dc57":
/***/ (function(module, exports) {

/** Used for built-in method references. */
var funcProto = Function.prototype;

/** Used to resolve the decompiled source of functions. */
var funcToString = funcProto.toString;

/**
 * Converts `func` to its source code.
 *
 * @private
 * @param {Function} func The function to convert.
 * @returns {string} Returns the source code.
 */
function toSource(func) {
  if (func != null) {
    try {
      return funcToString.call(func);
    } catch (e) {}
    try {
      return (func + '');
    } catch (e) {}
  }
  return '';
}

module.exports = toSource;


/***/ }),

/***/ "dcbe":
/***/ (function(module, exports, __webpack_require__) {

var isArrayLike = __webpack_require__("30c9"),
    isObjectLike = __webpack_require__("1310");

/**
 * This method is like `_.isArrayLike` except that it also checks if `value`
 * is an object.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is an array-like object,
 *  else `false`.
 * @example
 *
 * _.isArrayLikeObject([1, 2, 3]);
 * // => true
 *
 * _.isArrayLikeObject(document.body.children);
 * // => true
 *
 * _.isArrayLikeObject('abc');
 * // => false
 *
 * _.isArrayLikeObject(_.noop);
 * // => false
 */
function isArrayLikeObject(value) {
  return isObjectLike(value) && isArrayLike(value);
}

module.exports = isArrayLikeObject;


/***/ }),

/***/ "dce5":
/***/ (function(module, exports, __webpack_require__) {

var assignValue = __webpack_require__("32b3"),
    copyObject = __webpack_require__("8eeb"),
    createAssigner = __webpack_require__("2ec1"),
    isArrayLike = __webpack_require__("30c9"),
    isPrototype = __webpack_require__("eac5"),
    keys = __webpack_require__("ec69");

/** Used for built-in method references. */
var objectProto = Object.prototype;

/** Used to check objects for own properties. */
var hasOwnProperty = objectProto.hasOwnProperty;

/**
 * Assigns own enumerable string keyed properties of source objects to the
 * destination object. Source objects are applied from left to right.
 * Subsequent sources overwrite property assignments of previous sources.
 *
 * **Note:** This method mutates `object` and is loosely based on
 * [`Object.assign`](https://mdn.io/Object/assign).
 *
 * @static
 * @memberOf _
 * @since 0.10.0
 * @category Object
 * @param {Object} object The destination object.
 * @param {...Object} [sources] The source objects.
 * @returns {Object} Returns `object`.
 * @see _.assignIn
 * @example
 *
 * function Foo() {
 *   this.a = 1;
 * }
 *
 * function Bar() {
 *   this.c = 3;
 * }
 *
 * Foo.prototype.b = 2;
 * Bar.prototype.d = 4;
 *
 * _.assign({ 'a': 0 }, new Foo, new Bar);
 * // => { 'a': 1, 'c': 3 }
 */
var assign = createAssigner(function(object, source) {
  if (isPrototype(source) || isArrayLike(source)) {
    copyObject(source, keys(source), object);
    return;
  }
  for (var key in source) {
    if (hasOwnProperty.call(source, key)) {
      assignValue(object, key, source[key]);
    }
  }
});

module.exports = assign;


/***/ }),

/***/ "dd61":
/***/ (function(module, exports, __webpack_require__) {

var arrayMap = __webpack_require__("7948"),
    baseIteratee = __webpack_require__("badf"),
    baseMap = __webpack_require__("97d3"),
    isArray = __webpack_require__("6747");

/**
 * Creates an array of values by running each element in `collection` thru
 * `iteratee`. The iteratee is invoked with three arguments:
 * (value, index|key, collection).
 *
 * Many lodash methods are guarded to work as iteratees for methods like
 * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.
 *
 * The guarded methods are:
 * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,
 * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,
 * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,
 * `template`, `trim`, `trimEnd`, `trimStart`, and `words`
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Collection
 * @param {Array|Object} collection The collection to iterate over.
 * @param {Function} [iteratee=_.identity] The function invoked per iteration.
 * @returns {Array} Returns the new mapped array.
 * @example
 *
 * function square(n) {
 *   return n * n;
 * }
 *
 * _.map([4, 8], square);
 * // => [16, 64]
 *
 * _.map({ 'a': 4, 'b': 8 }, square);
 * // => [16, 64] (iteration order is not guaranteed)
 *
 * var users = [
 *   { 'user': 'barney' },
 *   { 'user': 'fred' }
 * ];
 *
 * // The `_.property` iteratee shorthand.
 * _.map(users, 'user');
 * // => ['barney', 'fred']
 */
function map(collection, iteratee) {
  var func = isArray(collection) ? arrayMap : baseMap;
  return func(collection, baseIteratee(iteratee, 3));
}

module.exports = map;


/***/ }),

/***/ "dd9d":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var UNICODE = __webpack_require__("5182");

//Aliases
var $ = UNICODE.CODE_POINTS;

//Utils

//OPTIMIZATION: these utility functions should not be moved out of this module. V8 Crankshaft will not inline
//this functions if they will be situated in another module due to context switch.
//Always perform inlining check before modifying this functions ('node --trace-inlining').
function isSurrogatePair(cp1, cp2) {
    return cp1 >= 0xD800 && cp1 <= 0xDBFF && cp2 >= 0xDC00 && cp2 <= 0xDFFF;
}

function getSurrogatePairCodePoint(cp1, cp2) {
    return (cp1 - 0xD800) * 0x400 + 0x2400 + cp2;
}


//Const
var DEFAULT_BUFFER_WATERLINE = 1 << 16;


//Preprocessor
//NOTE: HTML input preprocessing
//(see: http://www.whatwg.org/specs/web-apps/current-work/multipage/parsing.html#preprocessing-the-input-stream)
var Preprocessor = module.exports = function () {
    this.html = null;

    this.pos = -1;
    this.lastGapPos = -1;
    this.lastCharPos = -1;

    this.gapStack = [];

    this.skipNextNewLine = false;

    this.lastChunkWritten = false;
    this.endOfChunkHit = false;
    this.bufferWaterline = DEFAULT_BUFFER_WATERLINE;
};

Preprocessor.prototype.dropParsedChunk = function () {
    if (this.pos > this.bufferWaterline) {
        this.lastCharPos -= this.pos;
        this.html = this.html.substring(this.pos);
        this.pos = 0;
        this.lastGapPos = -1;
        this.gapStack = [];
    }
};

Preprocessor.prototype._addGap = function () {
    this.gapStack.push(this.lastGapPos);
    this.lastGapPos = this.pos;
};

Preprocessor.prototype._processHighRangeCodePoint = function (cp) {
    //NOTE: try to peek a surrogate pair
    if (this.pos !== this.lastCharPos) {
        var nextCp = this.html.charCodeAt(this.pos + 1);

        if (isSurrogatePair(cp, nextCp)) {
            //NOTE: we have a surrogate pair. Peek pair character and recalculate code point.
            this.pos++;
            cp = getSurrogatePairCodePoint(cp, nextCp);

            //NOTE: add gap that should be avoided during retreat
            this._addGap();
        }
    }

    // NOTE: we've hit the end of chunk, stop processing at this point
    else if (!this.lastChunkWritten) {
        this.endOfChunkHit = true;
        return $.EOF;
    }

    return cp;
};

Preprocessor.prototype.write = function (chunk, isLastChunk) {
    if (this.html)
        this.html += chunk;

    else
        this.html = chunk;

    this.lastCharPos = this.html.length - 1;
    this.endOfChunkHit = false;
    this.lastChunkWritten = isLastChunk;
};

Preprocessor.prototype.insertHtmlAtCurrentPos = function (chunk) {
    this.html = this.html.substring(0, this.pos + 1) +
                chunk +
                this.html.substring(this.pos + 1, this.html.length);

    this.lastCharPos = this.html.length - 1;
    this.endOfChunkHit = false;
};


Preprocessor.prototype.advance = function () {
    this.pos++;

    if (this.pos > this.lastCharPos) {
        if (!this.lastChunkWritten)
            this.endOfChunkHit = true;

        return $.EOF;
    }

    var cp = this.html.charCodeAt(this.pos);

    //NOTE: any U+000A LINE FEED (LF) characters that immediately follow a U+000D CARRIAGE RETURN (CR) character
    //must be ignored.
    if (this.skipNextNewLine && cp === $.LINE_FEED) {
        this.skipNextNewLine = false;
        this._addGap();
        return this.advance();
    }

    //NOTE: all U+000D CARRIAGE RETURN (CR) characters must be converted to U+000A LINE FEED (LF) characters
    if (cp === $.CARRIAGE_RETURN) {
        this.skipNextNewLine = true;
        return $.LINE_FEED;
    }

    this.skipNextNewLine = false;

    //OPTIMIZATION: first perform check if the code point in the allowed range that covers most common
    //HTML input (e.g. ASCII codes) to avoid performance-cost operations for high-range code points.
    return cp >= 0xD800 ? this._processHighRangeCodePoint(cp) : cp;
};

Preprocessor.prototype.retreat = function () {
    if (this.pos === this.lastGapPos) {
        this.lastGapPos = this.gapStack.pop();
        this.pos--;
    }

    this.pos--;
};



/***/ }),

/***/ "ddcd":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var WritableStream = __webpack_require__("d485").Writable,
    util = __webpack_require__("3022");

var DevNullStream = module.exports = function () {
    WritableStream.call(this);
};

util.inherits(DevNullStream, WritableStream);

DevNullStream.prototype._write = function (chunk, encoding, cb) {
    cb();
};


/***/ }),

/***/ "de90":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


module.exports = function mergeOptions(defaults, options) {
    options = options || Object.create(null);

    return [defaults, options].reduce(function (merged, optObj) {
        Object.keys(optObj).forEach(function (key) {
            merged[key] = optObj[key];
        });

        return merged;
    }, Object.create(null));
};


/***/ }),

/***/ "e082":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony default export */ __webpack_exports__["default"] = ("\n<html></html>\n");

/***/ }),

/***/ "e1f4":
/***/ (function(module, exports) {

// Unique ID creation requires a high quality random # generator.  In the
// browser this is a little complicated due to unknown quality of Math.random()
// and inconsistent support for the `crypto` API.  We do the best we can via
// feature-detection

// getRandomValues needs to be invoked in a context where "this" is a Crypto
// implementation. Also, find the complete implementation of crypto on IE11.
var getRandomValues = (typeof(crypto) != 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto)) ||
                      (typeof(msCrypto) != 'undefined' && typeof window.msCrypto.getRandomValues == 'function' && msCrypto.getRandomValues.bind(msCrypto));

if (getRandomValues) {
  // WHATWG crypto RNG - http://wiki.whatwg.org/wiki/Crypto
  var rnds8 = new Uint8Array(16); // eslint-disable-line no-undef

  module.exports = function whatwgRNG() {
    getRandomValues(rnds8);
    return rnds8;
  };
} else {
  // Math.random()-based (RNG)
  //
  // If all else fails, use Math.random().  It's fast, but is of unspecified
  // quality.
  var rnds = new Array(16);

  module.exports = function mathRNG() {
    for (var i = 0, r; i < 16; i++) {
      if ((i & 0x03) === 0) r = Math.random() * 0x100000000;
      rnds[i] = r >>> ((i & 0x03) << 3) & 0xff;
    }

    return rnds;
  };
}


/***/ }),

/***/ "e24b":
/***/ (function(module, exports, __webpack_require__) {

var hashClear = __webpack_require__("49f4"),
    hashDelete = __webpack_require__("1efc"),
    hashGet = __webpack_require__("bbc0"),
    hashHas = __webpack_require__("7a48"),
    hashSet = __webpack_require__("2524");

/**
 * Creates a hash object.
 *
 * @private
 * @constructor
 * @param {Array} [entries] The key-value pairs to cache.
 */
function Hash(entries) {
  var index = -1,
      length = entries == null ? 0 : entries.length;

  this.clear();
  while (++index < length) {
    var entry = entries[index];
    this.set(entry[0], entry[1]);
  }
}

// Add methods to `Hash`.
Hash.prototype.clear = hashClear;
Hash.prototype['delete'] = hashDelete;
Hash.prototype.get = hashGet;
Hash.prototype.has = hashHas;
Hash.prototype.set = hashSet;

module.exports = Hash;


/***/ }),

/***/ "e2c0":
/***/ (function(module, exports, __webpack_require__) {

var castPath = __webpack_require__("e2e4"),
    isArguments = __webpack_require__("d370"),
    isArray = __webpack_require__("6747"),
    isIndex = __webpack_require__("c098"),
    isLength = __webpack_require__("b218"),
    toKey = __webpack_require__("f4d6");

/**
 * Checks if `path` exists on `object`.
 *
 * @private
 * @param {Object} object The object to query.
 * @param {Array|string} path The path to check.
 * @param {Function} hasFunc The function to check properties.
 * @returns {boolean} Returns `true` if `path` exists, else `false`.
 */
function hasPath(object, path, hasFunc) {
  path = castPath(path, object);

  var index = -1,
      length = path.length,
      result = false;

  while (++index < length) {
    var key = toKey(path[index]);
    if (!(result = object != null && hasFunc(object, key))) {
      break;
    }
    object = object[key];
  }
  if (result || ++index != length) {
    return result;
  }
  length = object == null ? 0 : object.length;
  return !!length && isLength(length) && isIndex(key, length) &&
    (isArray(object) || isArguments(object));
}

module.exports = hasPath;


/***/ }),

/***/ "e2e4":
/***/ (function(module, exports, __webpack_require__) {

var isArray = __webpack_require__("6747"),
    isKey = __webpack_require__("f608"),
    stringToPath = __webpack_require__("18d8"),
    toString = __webpack_require__("76dd");

/**
 * Casts `value` to a path array if it's not one.
 *
 * @private
 * @param {*} value The value to inspect.
 * @param {Object} [object] The object to query keys on.
 * @returns {Array} Returns the cast property path array.
 */
function castPath(value, object) {
  if (isArray(value)) {
    return value;
  }
  return isKey(value, object) ? [value] : stringToPath(toString(value));
}

module.exports = castPath;


/***/ }),

/***/ "e372":
/***/ (function(module, exports, __webpack_require__) {

exports = module.exports = __webpack_require__("ad71");
exports.Stream = exports;
exports.Readable = exports;
exports.Writable = __webpack_require__("dc14");
exports.Duplex = __webpack_require__("b19a");
exports.Transform = __webpack_require__("27bf");
exports.PassThrough = __webpack_require__("780f");


/***/ }),

/***/ "e380":
/***/ (function(module, exports, __webpack_require__) {

var MapCache = __webpack_require__("7b83");

/** Error message constants. */
var FUNC_ERROR_TEXT = 'Expected a function';

/**
 * Creates a function that memoizes the result of `func`. If `resolver` is
 * provided, it determines the cache key for storing the result based on the
 * arguments provided to the memoized function. By default, the first argument
 * provided to the memoized function is used as the map cache key. The `func`
 * is invoked with the `this` binding of the memoized function.
 *
 * **Note:** The cache is exposed as the `cache` property on the memoized
 * function. Its creation may be customized by replacing the `_.memoize.Cache`
 * constructor with one whose instances implement the
 * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)
 * method interface of `clear`, `delete`, `get`, `has`, and `set`.
 *
 * @static
 * @memberOf _
 * @since 0.1.0
 * @category Function
 * @param {Function} func The function to have its output memoized.
 * @param {Function} [resolver] The function to resolve the cache key.
 * @returns {Function} Returns the new memoized function.
 * @example
 *
 * var object = { 'a': 1, 'b': 2 };
 * var other = { 'c': 3, 'd': 4 };
 *
 * var values = _.memoize(_.values);
 * values(object);
 * // => [1, 2]
 *
 * values(other);
 * // => [3, 4]
 *
 * object.a = 2;
 * values(object);
 * // => [1, 2]
 *
 * // Modify the result cache.
 * values.cache.set(object, ['a', 'b']);
 * values(object);
 * // => ['a', 'b']
 *
 * // Replace `_.memoize.Cache`.
 * _.memoize.Cache = WeakMap;
 */
function memoize(func, resolver) {
  if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {
    throw new TypeError(FUNC_ERROR_TEXT);
  }
  var memoized = function() {
    var args = arguments,
        key = resolver ? resolver.apply(this, args) : args[0],
        cache = memoized.cache;

    if (cache.has(key)) {
      return cache.get(key);
    }
    var result = func.apply(this, args);
    memoized.cache = cache.set(key, result) || cache;
    return result;
  };
  memoized.cache = new (memoize.Cache || MapCache);
  return memoized;
}

// Expose `MapCache`.
memoize.Cache = MapCache;

module.exports = memoize;


/***/ }),

/***/ "e38f":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return mercado; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return mercadoCheckSite; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return checkMercadoCb; });
/* unused harmony export getCbSiteInfo */
/* unused harmony export checkAllMercadoLocal */
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return checkMercadoLocal; });
/* harmony import */ var _data_log__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("6b23");
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("ca00");
/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("bc3a");
/* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var cheerio__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("02cc");
/* harmony import */ var cheerio__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(cheerio__WEBPACK_IMPORTED_MODULE_3__);
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }

function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }

function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }





var mercado = {
  // 跨境Host - 商家中心
  cbHost: 'https://global-selling.mercadolibre.com',
  // 跨境host - 支付中心(数字银行)
  cbPagoHost: 'https://global-selling.mercadopago.com',
  // 本土host - 商家中心
  localHost: [{
    name: '阿根廷',
    host: 'https://www.mercadolibre.com.ar',
    value: 'AR'
  }, {
    name: '墨西哥',
    host: 'https://www.mercadolibre.com.mx',
    value: 'MX'
  }, {
    name: '哥伦比亚',
    host: 'https://www.mercadolibre.com.co',
    value: 'CO'
  }, {
    name: '秘鲁',
    host: 'https://www.mercadolibre.com.pe',
    value: 'PE'
  }, {
    name: '乌拉圭',
    host: 'https://www.mercadolibre.com.uy',
    value: 'UY'
  }, {
    name: '委内瑞拉',
    host: 'https://www.mercadolibre.com.ve',
    value: 'VE'
  }, {
    name: '厄瓜多尔',
    host: 'https://www.mercadolibre.com.ec',
    value: 'EC'
  }, {
    name: '巴拿马',
    host: 'https://www.mercadolibre.com.pa',
    value: 'PA'
  }, {
    name: '巴拉圭',
    host: 'https://www.mercadolibre.com.py',
    value: 'PY'
  }, {
    name: '洪都拉斯',
    host: 'https://www.mercadolibre.com.hn',
    value: 'HN'
  }, {
    name: '尼加拉瓜',
    host: 'https://www.mercadolibre.com.ni',
    value: 'NI'
  }, {
    name: '萨尔瓦多',
    host: 'https://www.mercadolibre.com.sv',
    value: 'SV'
  }, {
    name: '危地马拉',
    host: 'https://www.mercadolibre.com.gt',
    value: 'GT'
  }, {
    name: '多米尼加',
    host: 'https://www.mercadolibre.com.do',
    value: 'DO'
  }, {
    name: '玻利维亚',
    host: 'https://www.mercadolibre.com.bo',
    value: 'BO'
  }, {
    name: '巴西',
    host: 'https://www.mercadolivre.com.br',
    value: 'BR'
  }, {
    name: '智利',
    host: 'https://www.mercadolibre.cl',
    value: 'CL'
  }, {
    name: '哥斯达黎加',
    host: 'https://www.mercadolibre.co.cr',
    value: 'CR'
  }],

  // 本土host - 支付中心
  get localPagoHost() {
    return this.localHost.map(function (item) {
      return _objectSpread(_objectSpread({}, item), {}, {
        host: item.host.replace(/mercadolibre|mercadolivre/, 'mercadopago')
      });
    });
  },

  // 是否是获取支付中心数据的任务
  getPagoTask: [40001, 40002],

  /**
   * 跨境店铺下的所有站点的信息
   * @property {number} site_key - 站点key
   * @property {number} site_name - 站点名称
   * @property {string} site_user_id - 站点User_ID
   * @property {string} store_name - 店铺名称
  * 
   */
  cbSiteInfo: [],

  /**
   * 跨境店铺信息
   * @property {string} isCBT - 是否跨境店铺
   * @property {boolean} userId - 店铺 user_id
   * @property {string} mallId - 店铺ID(user_id)
   * @property {string} mallName - 店铺名称
   * @property {string} storeType - 店铺类型
  * 
   */
  cbStoreInfo: [],

  /**
   * 本土店铺信息
   * @property {string} siteId - 站点id
   * @property {string} userId - 店铺 user_id
   * @property {string} mallId - 店铺ID(user_id)
   * @property {string} mallName - 店铺名称
   * @property {string} region - 区域站点
   * @property {string} storeType - 本土
   */
  localStoreInfo: [],
  // declarativeNetRequest规则集id
  requestHearderIds: []
};
var siteKeyMap = {
  'MLM-remote': 'Mexico',
  'MLB-remote': 'Brazil',
  'MLC-remote': 'Chile',
  'MCO-remote': 'Colombia',
  'MLA-remote': 'Argentina',
  'MLU-remote': 'Uruguay',
  'MLM-fulfillment': 'Mexico (Full)',
  'MLC-fulfillment': 'Chile (Full)'
};
/**
 * @description 清除店铺信息
 */

var clearStoreInfo = function clearStoreInfo() {
  mercado.cbSiteInfo = [];
  mercado.cbStoreInfo = [];
  mercado.localStoreInfo = [];
}; // 为mercado所有接口带上Referer、Origin


var initMercadoUrlObserve = /*#__PURE__*/function () {
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
    var hosts;
    return _regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            hosts = [mercado.cbHost, mercado.cbPagoHost].concat(_toConsumableArray(mercado.localHost.map(function (i) {
              return i.host;
            })), _toConsumableArray(mercado.localPagoHost.map(function (i) {
              return i.host;
            }))).filter(Boolean).map(function (h) {
              return h.trim();
            }); // 去重并执行设置

            _context.next = 3;
            return Promise.all(_toConsumableArray(new Set(hosts)).map(function (url) {
              return Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* setRequestHearder */ "I"])([{
                name: 'Referer',
                value: url
              }, {
                name: 'Origin',
                value: url
              }], "".concat(url, "/*"));
            }));

          case 3:
            mercado.requestHearderIds = _context.sent;

          case 4:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));

  return function initMercadoUrlObserve() {
    return _ref.apply(this, arguments);
  };
}();
/**
 * @description mercado检测站点
*/


var mercadoCheckSite = /*#__PURE__*/function () {
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
    var res, storeInfo, _res, cbInfo, localInfo;

    return _regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            _context2.prev = 0;
            clearStoreInfo();
            _context2.next = 4;
            return initMercadoUrlObserve();

          case 4:
            _context2.next = 6;
            return Promise.all([checkMercadoCb(), checkAllMercadoLocal()]);

          case 6:
            res = _context2.sent;
            storeInfo = [];
            _res = _slicedToArray(res, 2), cbInfo = _res[0], localInfo = _res[1]; // 整理跨境店铺信息

            if (!cbInfo) {
              _context2.next = 14;
              break;
            }

            // 获取站点信息
            // const siteUserId = await getCbSiteInfo()
            mercado.cbStoreInfo = cbInfo.map(function (item) {
              return _objectSpread(_objectSpread({}, item), {}, {
                mallId: item.userId,
                mallName: item.storeName,
                storeType: '跨境',
                isMercado: true
              });
            });
            storeInfo.push.apply(storeInfo, _toConsumableArray(mercado.cbStoreInfo.map(function (_ref3) {
              var userId = _ref3.userId;
              return userId;
            })));
            _context2.next = 14;
            return getCbSiteInfo();

          case 14:
            // 整理本土店铺信息
            if (localInfo && localInfo.length > 0) {
              _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog('本地站点信息', JSON.stringify(localInfo));
              mercado.localStoreInfo = localInfo;
              storeInfo.push.apply(storeInfo, _toConsumableArray(localInfo.map(function (_ref4) {
                var userId = _ref4.userId;
                return userId;
              })));
            }

            return _context2.abrupt("return", storeInfo);

          case 18:
            _context2.prev = 18;
            _context2.t0 = _context2["catch"](0);
            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].report("mercado\u68C0\u6D4B\u7AD9\u70B9\u62A5\u9519,\u89C4\u5219\u53EF\u80FD\u5DF2\u6539\u53D8---".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context2.t0)), 'error');
            return _context2.abrupt("return", false);

          case 22:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2, null, [[0, 18]]);
  }));

  return function mercadoCheckSite() {
    return _ref2.apply(this, arguments);
  };
}();
/**
 * @description 检测跨境店铺是否在线，在线则返回店铺信息
 */

var checkMercadoCb = /*#__PURE__*/function () {
  var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
    var _yield$axios, html, _renderingCtxText$mat, $, storeName, renderingCtxText, userId, errorMsg, _errorMsg;

    return _regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            _context3.prev = 0;
            _context3.next = 3;
            return axios__WEBPACK_IMPORTED_MODULE_2___default()({
              url: "".concat(mercado.cbHost, "/sales-summary"),
              method: 'get'
            });

          case 3:
            _yield$axios = _context3.sent;
            html = _yield$axios.data;

            if (!html) {
              _context3.next = 13;
              break;
            }

            $ = cheerio__WEBPACK_IMPORTED_MODULE_3___default.a.load(html);
            storeName = $('#nav-header-cbt__logged-options .nav-header-cbt__profile-name').text().trim() || '';
            renderingCtxText = $('#__NORDIC_RENDERING_CTX__').html() || '';
            userId = ((_renderingCtxText$mat = renderingCtxText.match(/"userId"\s*:\s*(\d+)/)) === null || _renderingCtxText$mat === void 0 ? void 0 : _renderingCtxText$mat[1]) || '';
            return _context3.abrupt("return", [{
              userId: userId,
              storeName: storeName,
              isCBT: true
            }]);

          case 13:
            errorMsg = "\u5E97\u94FA\u767B\u5F55\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u767B\u9646\uFF0C\u539F\u62A5\u9519\u4FE1\u606F";
            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog(errorMsg);

          case 15:
            _context3.next = 21;
            break;

          case 17:
            _context3.prev = 17;
            _context3.t0 = _context3["catch"](0);
            _errorMsg = "\u68C0\u6D4B\u8DE8\u5883\u5E97\u94FA\u662F\u5426\u5728\u7EBF\u5931\u8D25\uFF0C\u53EF\u80FD\u662F\u7F8E\u5BA2\u591A\u89C4\u5219\u5DF2\u6539\uFF0C\u539F\u62A5\u9519\u4FE1\u606F\uFF1A".concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context3.t0));
            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog(_errorMsg);

          case 21:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[0, 17]]);
  }));

  return function checkMercadoCb() {
    return _ref5.apply(this, arguments);
  };
}();
/**
 * @description 获取站点信息 - 跨境
 */

var getCbSiteInfo = /*#__PURE__*/function () {
  var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
    var _yield$axios2, data, sites, errorMsg;

    return _regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            _context4.prev = 0;
            _context4.next = 3;
            return axios__WEBPACK_IMPORTED_MODULE_2___default()({
              url: "".concat(mercado.cbHost, "/cbt-site-selector/modules/__resolve_props?module=site-selector&consumer=sso-seller-home-frontend"),
              method: 'get'
            });

          case 3:
            _yield$axios2 = _context4.sent;
            data = _yield$axios2.data;

            if (data && data.cbtUser && data.cbtUser.siteUsers) {
              // const siteUserId = data.cbtUser.siteUsers[0].parent_id || ''
              sites = data.cbtUser.siteUsers.map(function (item) {
                var siteKey = "".concat(item.site_id).concat(item.logistic_type === 'fulfillment' ? '-fulfillment' : '-remote');
                return {
                  site_key: siteKey,
                  site_user_id: item.user_id,
                  site_name: siteKeyMap[siteKey] || ''
                };
              });
              mercado.cbSiteInfo = sites;
              _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("\u83B7\u53D6mercado\u8DE8\u5883\u7AD9\u70B9\u4FE1\u606F\u6210\u529F\uFF0C\u5171".concat(sites.length, "\u4E2A\u7AD9\u70B9")); // return siteUserId
            }

            _context4.next = 12;
            break;

          case 8:
            _context4.prev = 8;
            _context4.t0 = _context4["catch"](0);
            errorMsg = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context4.t0);
            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("\u83B7\u53D6mercado\u8DE8\u5883\u7AD9\u70B9\u4FE1\u606F\u8BF7\u6C42\u62A5\u9519-----".concat(errorMsg));

          case 12:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[0, 8]]);
  }));

  return function getCbSiteInfo() {
    return _ref6.apply(this, arguments);
  };
}();
/**
 * @description 检测本土店铺所有站点是否在线
 */

var checkAllMercadoLocal = /*#__PURE__*/function () {
  var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
    var loggedInSites, _iterator, _step, site, res;

    return _regeneratorRuntime().wrap(function _callee5$(_context5) {
      while (1) {
        switch (_context5.prev = _context5.next) {
          case 0:
            loggedInSites = [];
            _iterator = _createForOfIteratorHelper(mercado.localHost);
            _context5.prev = 2;

            _iterator.s();

          case 4:
            if ((_step = _iterator.n()).done) {
              _context5.next = 12;
              break;
            }

            site = _step.value;
            _context5.next = 8;
            return checkMercadoLocal(site.value);

          case 8:
            res = _context5.sent;

            if (res) {
              loggedInSites.push(res);
            }

          case 10:
            _context5.next = 4;
            break;

          case 12:
            _context5.next = 17;
            break;

          case 14:
            _context5.prev = 14;
            _context5.t0 = _context5["catch"](2);

            _iterator.e(_context5.t0);

          case 17:
            _context5.prev = 17;

            _iterator.f();

            return _context5.finish(17);

          case 20:
            return _context5.abrupt("return", loggedInSites);

          case 21:
          case "end":
            return _context5.stop();
        }
      }
    }, _callee5, null, [[2, 14, 17, 20]]);
  }));

  return function checkAllMercadoLocal() {
    return _ref7.apply(this, arguments);
  };
}();
/**
 * @description 检测本土店铺指定站点是否在线
 */

var checkMercadoLocal = /*#__PURE__*/function () {
  var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(region) {
    var site, _response$data, response, preStoreName, $, res, errorMsg;

    return _regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            site = mercado.localHost.find(function (_ref9) {
              var value = _ref9.value;
              return value === region;
            });

            if (site) {
              _context6.next = 4;
              break;
            }

            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("\u672A\u627E\u5230region\u4E3A".concat(region, "\u7684\u5E97\u94FA\u4FE1\u606F"));
            return _context6.abrupt("return", false);

          case 4:
            _context6.prev = 4;
            _context6.next = 7;
            return axios__WEBPACK_IMPORTED_MODULE_2___default()({
              url: "".concat(site.host, "/pampa/profile"),
              method: 'GET',
              timeout: 10000 // 设置超时避免卡死

            });

          case 7:
            response = _context6.sent;

            if (!(response && (_response$data = response.data) !== null && _response$data !== void 0 && _response$data.includes('<html'))) {
              _context6.next = 22;
              break;
            }

            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("\u68C0\u6D4B\u5230 Mercado \u672C\u571F\u7AD9\u70B9\u5DF2\u767B\u5F55\uFF1A".concat(site.name)); // 本土站点优先从 /pampa/profile 的 html 里解析 storeName，解析不到再走后续兜底请求

            preStoreName = '';

            try {
              $ = cheerio__WEBPACK_IMPORTED_MODULE_3___default.a.load(response.data);
              preStoreName = $('.andes-typography--type-title').first().text().trim() || '';
              _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("Mercado\u672C\u571F\u7AD9\u70B9".concat(site.name, "\u89E3\u6790\u5230\u5E97\u94FA\u540D\u79F0\uFF1A").concat(preStoreName));
            } catch (err) {
              _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("Mercado\u672C\u571F\u7AD9\u70B9".concat(site.name, "\u89E3\u6790\u5E97\u94FA\u540D\u79F0\u5931\u8D25-----").concat(Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(err)));
            }

            _context6.next = 14;
            return getLocalSiteInfo(site.host, preStoreName);

          case 14:
            res = _context6.sent;

            if (!res) {
              _context6.next = 19;
              break;
            }

            return _context6.abrupt("return", {
              userId: res.userId,
              mallId: res.userId,
              siteId: res.siteId,
              region: site.value,
              // 区域
              mallName: res.storeName,
              storeType: '本土',
              isMercado: true
            });

          case 19:
            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("\u83B7\u53D6mercado\u672C\u571F\u7AD9\u70B9".concat(site.name, "\u4FE1\u606F\u672A\u767B\u5F55"));

          case 20:
            _context6.next = 23;
            break;

          case 22:
            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("\u83B7\u53D6mercado\u672C\u571F\u7AD9\u70B9".concat(site.name, "\u4FE1\u606F\u672A\u767B\u5F55"));

          case 23:
            _context6.next = 29;
            break;

          case 25:
            _context6.prev = 25;
            _context6.t0 = _context6["catch"](4);
            errorMsg = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context6.t0);
            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("\u83B7\u53D6mercado\u672C\u571F\u7AD9\u70B9".concat(site.name, "\u4FE1\u606F\u8BF7\u6C42\u62A5\u9519-----").concat(errorMsg));

          case 29:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6, null, [[4, 25]]);
  }));

  return function checkMercadoLocal(_x) {
    return _ref8.apply(this, arguments);
  };
}();
/**
 * @description 获取本土站点信息
 * @param {string} host 站点host
 * @param {string} [preStoreName] 已从 /pampa/profile 解析得到的店铺名称，传入则跳过额外请求
 */

var getLocalSiteInfo = /*#__PURE__*/function () {
  var _ref10 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(host) {
    var preStoreName,
        _yield$axios3,
        data,
        storeName,
        _data$userInfo,
        userId,
        isCBT,
        siteId,
        errorMsg,
        _args7 = arguments;

    return _regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            preStoreName = _args7.length > 1 && _args7[1] !== undefined ? _args7[1] : '';
            _context7.prev = 1;
            _context7.next = 4;
            return axios__WEBPACK_IMPORTED_MODULE_2___default()({
              url: "".concat(host, "/seller-journey-microfrontend/modules/__resolve_props?module=firststeps"),
              method: 'GET'
            });

          case 4:
            _yield$axios3 = _context7.sent;
            data = _yield$axios3.data;

            if (!(data && data.userInfo && data.userInfo.userId)) {
              _context7.next = 17;
              break;
            }

            _context7.t0 = preStoreName;

            if (_context7.t0) {
              _context7.next = 12;
              break;
            }

            _context7.next = 11;
            return getLocalStoreNameInfo(host);

          case 11:
            _context7.t0 = _context7.sent;

          case 12:
            storeName = _context7.t0;
            _data$userInfo = data.userInfo, userId = _data$userInfo.userId, isCBT = _data$userInfo.isCBT, siteId = _data$userInfo.siteId;
            return _context7.abrupt("return", {
              userId: userId,
              isCBT: isCBT,
              siteId: siteId,
              storeName: storeName
            });

          case 17:
            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("\u83B7\u53D6mercado\u672C\u571F\u7AD9\u70B9".concat(host, "\u4FE1\u606F\u672A\u767B\u5F55"));
            return _context7.abrupt("return", false);

          case 19:
            _context7.next = 26;
            break;

          case 21:
            _context7.prev = 21;
            _context7.t1 = _context7["catch"](1);
            errorMsg = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context7.t1);
            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("\u83B7\u53D6mercado\u672C\u571F\u7AD9\u70B9".concat(host, "\u4FE1\u606F\u8BF7\u6C42\u62A5\u9519-----").concat(errorMsg));
            return _context7.abrupt("return", false);

          case 26:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7, null, [[1, 21]]);
  }));

  return function getLocalSiteInfo(_x2) {
    return _ref10.apply(this, arguments);
  };
}();
/**
 * @description 获取本土站点店铺名称信息
 */


var getLocalStoreNameInfo = /*#__PURE__*/function () {
  var _ref11 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(host) {
    var _yield$axios4, html, $, storeName, errorMsg;

    return _regeneratorRuntime().wrap(function _callee8$(_context8) {
      while (1) {
        switch (_context8.prev = _context8.next) {
          case 0:
            _context8.prev = 0;
            _context8.next = 3;
            return axios__WEBPACK_IMPORTED_MODULE_2___default()({
              url: "".concat(host, "/resumen"),
              method: 'get'
            });

          case 3:
            _yield$axios4 = _context8.sent;
            html = _yield$axios4.data;

            if (!html) {
              _context8.next = 10;
              break;
            }

            $ = cheerio__WEBPACK_IMPORTED_MODULE_3___default.a.load(html);
            storeName = $('.nav-header-usermenu-wrapper .nav-header-username').text().trim() || '';
            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("\u83B7\u53D6mercado\u672C\u571F\u7AD9\u70B9\u5E97\u94FA\u540D\u79F0\u4FE1\u606F\u6210\u529F\uFF0C\u5E97\u94FA\u540D\u79F0\uFF1A".concat(storeName));
            return _context8.abrupt("return", storeName);

          case 10:
            _context8.next = 16;
            break;

          case 12:
            _context8.prev = 12;
            _context8.t0 = _context8["catch"](0);
            errorMsg = Object(_utils_util__WEBPACK_IMPORTED_MODULE_1__[/* isError */ "u"])(_context8.t0);
            _data_log__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"].setLog("\u83B7\u53D6mercado\u672C\u571F\u7AD9\u70B9\u5E97\u94FA\u540D\u79F0\u8BF7\u6C42\u62A5\u9519-----".concat(errorMsg));

          case 16:
          case "end":
            return _context8.stop();
        }
      }
    }, _callee8, null, [[0, 12]]);
  }));

  return function getLocalStoreNameInfo(_x3) {
    return _ref11.apply(this, arguments);
  };
}();

/***/ }),

/***/ "e3db":
/***/ (function(module, exports) {

var toString = {}.toString;

module.exports = Array.isArray || function (arr) {
  return toString.call(arr) == '[object Array]';
};


/***/ }),

/***/ "e3f8":
/***/ (function(module, exports, __webpack_require__) {

var baseGet = __webpack_require__("656b");

/**
 * A specialized version of `baseProperty` which supports deep paths.
 *
 * @private
 * @param {Array|string} path The path of the property to get.
 * @returns {Function} Returns the new accessor function.
 */
function basePropertyDeep(path) {
  return function(object) {
    return baseGet(object, path);
  };
}

module.exports = basePropertyDeep;


/***/ }),

/***/ "e440":
/***/ (function(module, exports, __webpack_require__) {

var inverseXML = getInverseObj(__webpack_require__("85fb")),
    xmlReplacer = getInverseReplacer(inverseXML);

exports.XML = getInverse(inverseXML, xmlReplacer);

var inverseHTML = getInverseObj(__webpack_require__("0b1b")),
    htmlReplacer = getInverseReplacer(inverseHTML);

exports.HTML = getInverse(inverseHTML, htmlReplacer);

function getInverseObj(obj) {
    return Object.keys(obj)
        .sort()
        .reduce(function(inverse, name) {
            inverse[obj[name]] = "&" + name + ";";
            return inverse;
        }, {});
}

function getInverseReplacer(inverse) {
    var single = [],
        multiple = [];

    Object.keys(inverse).forEach(function(k) {
        if (k.length === 1) {
            single.push("\\" + k);
        } else {
            multiple.push(k);
        }
    });

    //TODO add ranges
    multiple.unshift("[" + single.join("") + "]");

    return new RegExp(multiple.join("|"), "g");
}

var re_nonASCII = /[^\0-\x7F]/g,
    re_astralSymbols = /[\uD800-\uDBFF][\uDC00-\uDFFF]/g;

function singleCharReplacer(c) {
    return (
        "&#x" +
        c
            .charCodeAt(0)
            .toString(16)
            .toUpperCase() +
        ";"
    );
}

function astralReplacer(c) {
    // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae
    var high = c.charCodeAt(0);
    var low = c.charCodeAt(1);
    var codePoint = (high - 0xd800) * 0x400 + low - 0xdc00 + 0x10000;
    return "&#x" + codePoint.toString(16).toUpperCase() + ";";
}

function getInverse(inverse, re) {
    function func(name) {
        return inverse[name];
    }

    return function(data) {
        return data
            .replace(re, func)
            .replace(re_astralSymbols, astralReplacer)
            .replace(re_nonASCII, singleCharReplacer);
    };
}

var re_xmlChars = getInverseReplacer(inverseXML);

function escapeXML(data) {
    return data
        .replace(re_xmlChars, singleCharReplacer)
        .replace(re_astralSymbols, astralReplacer)
        .replace(re_nonASCII, singleCharReplacer);
}

exports.escape = escapeXML;


/***/ }),

/***/ "e47a":
/***/ (function(module, exports, __webpack_require__) {

module.exports = ProxyHandler;

function ProxyHandler(cbs) {
    this._cbs = cbs || {};
}

var EVENTS = __webpack_require__("d2de").EVENTS;
Object.keys(EVENTS).forEach(function(name) {
    if (EVENTS[name] === 0) {
        name = "on" + name;
        ProxyHandler.prototype[name] = function() {
            if (this._cbs[name]) this._cbs[name]();
        };
    } else if (EVENTS[name] === 1) {
        name = "on" + name;
        ProxyHandler.prototype[name] = function(a) {
            if (this._cbs[name]) this._cbs[name](a);
        };
    } else if (EVENTS[name] === 2) {
        name = "on" + name;
        ProxyHandler.prototype[name] = function(a, b) {
            if (this._cbs[name]) this._cbs[name](a, b);
        };
    } else {
        throw Error("wrong number of arguments");
    }
});


/***/ }),

/***/ "e538":
/***/ (function(module, exports, __webpack_require__) {

/* WEBPACK VAR INJECTION */(function(module) {var root = __webpack_require__("2b3e");

/** Detect free variable `exports`. */
var freeExports =  true && exports && !exports.nodeType && exports;

/** Detect free variable `module`. */
var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;

/** Detect the popular CommonJS extension `module.exports`. */
var moduleExports = freeModule && freeModule.exports === freeExports;

/** Built-in value references. */
var Buffer = moduleExports ? root.Buffer : undefined,
    allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;

/**
 * Creates a clone of  `buffer`.
 *
 * @private
 * @param {Buffer} buffer The buffer to clone.
 * @param {boolean} [isDeep] Specify a deep clone.
 * @returns {Buffer} Returns the cloned buffer.
 */
function cloneBuffer(buffer, isDeep) {
  if (isDeep) {
    return buffer.slice();
  }
  var length = buffer.length,
      result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);

  buffer.copy(result);
  return result;
}

module.exports = cloneBuffer;

/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("62e4")(module)))

/***/ }),

/***/ "e64a":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var Parser = __webpack_require__("430c"),
    Serializer = __webpack_require__("bbad");


// Shorthands
exports.parse = function parse(html, options) {
    var parser = new Parser(options);

    return parser.parse(html);
};

exports.parseFragment = function parseFragment(fragmentContext, html, options) {
    if (typeof fragmentContext === 'string') {
        options = html;
        html = fragmentContext;
        fragmentContext = null;
    }

    var parser = new Parser(options);

    return parser.parseFragment(html, fragmentContext);
};

exports.serialize = function (node, options) {
    var serializer = new Serializer(node, options);

    return serializer.serialize();
};


// Tree adapters
exports.treeAdapters = {
    default: __webpack_require__("bd47"),
    htmlparser2: __webpack_require__("a1ca")
};


// Streaming
exports.ParserStream = __webpack_require__("cda4");
exports.PlainTextConversionStream = __webpack_require__("eedc");
exports.SerializerStream = __webpack_require__("c68e");
exports.SAXParser = __webpack_require__("3cc0");


/***/ }),

/***/ "e683":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


/**
 * Creates a new URL by combining the specified URLs
 *
 * @param {string} baseURL The base URL
 * @param {string} relativeURL The relative URL
 * @returns {string} The combined URL
 */
module.exports = function combineURLs(baseURL, relativeURL) {
  return relativeURL
    ? baseURL.replace(/\/+$/, '') + '/' + relativeURL.replace(/^\/+/, '')
    : baseURL;
};


/***/ }),

/***/ "e6c3":
/***/ (function(module, exports, __webpack_require__) {

var isLaziable = __webpack_require__("3789"),
    setData = __webpack_require__("f7d3"),
    setWrapToString = __webpack_require__("4fcb");

/** Used to compose bitmasks for function metadata. */
var WRAP_BIND_FLAG = 1,
    WRAP_BIND_KEY_FLAG = 2,
    WRAP_CURRY_BOUND_FLAG = 4,
    WRAP_CURRY_FLAG = 8,
    WRAP_PARTIAL_FLAG = 32,
    WRAP_PARTIAL_RIGHT_FLAG = 64;

/**
 * Creates a function that wraps `func` to continue currying.
 *
 * @private
 * @param {Function} func The function to wrap.
 * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
 * @param {Function} wrapFunc The function to create the `func` wrapper.
 * @param {*} placeholder The placeholder value.
 * @param {*} [thisArg] The `this` binding of `func`.
 * @param {Array} [partials] The arguments to prepend to those provided to
 *  the new function.
 * @param {Array} [holders] The `partials` placeholder indexes.
 * @param {Array} [argPos] The argument positions of the new function.
 * @param {number} [ary] The arity cap of `func`.
 * @param {number} [arity] The arity of `func`.
 * @returns {Function} Returns the new wrapped function.
 */
function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) {
  var isCurry = bitmask & WRAP_CURRY_FLAG,
      newHolders = isCurry ? holders : undefined,
      newHoldersRight = isCurry ? undefined : holders,
      newPartials = isCurry ? partials : undefined,
      newPartialsRight = isCurry ? undefined : partials;

  bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG);
  bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG);

  if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) {
    bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG);
  }
  var newData = [
    func, bitmask, thisArg, newPartials, newHolders, newPartialsRight,
    newHoldersRight, argPos, ary, arity
  ];

  var result = wrapFunc.apply(undefined, newData);
  if (isLaziable(func)) {
    setData(result, newData);
  }
  result.placeholder = placeholder;
  return setWrapToString(result, func, bitmask);
}

module.exports = createRecurry;


/***/ }),

/***/ "e8a9":
/***/ (function(module, exports) {

/** Used as the internal argument placeholder. */
var PLACEHOLDER = '__lodash_placeholder__';

/**
 * Replaces all `placeholder` elements in `array` with an internal placeholder
 * and returns an array of their indexes.
 *
 * @private
 * @param {Array} array The array to modify.
 * @param {*} placeholder The placeholder to replace.
 * @returns {Array} Returns the new array of placeholder indexes.
 */
function replaceHolders(array, placeholder) {
  var index = -1,
      length = array.length,
      resIndex = 0,
      result = [];

  while (++index < length) {
    var value = array[index];
    if (value === placeholder || value === PLACEHOLDER) {
      array[index] = PLACEHOLDER;
      result[resIndex++] = index;
    }
  }
  return result;
}

module.exports = replaceHolders;


/***/ }),

/***/ "e93d":
/***/ (function(module, exports, __webpack_require__) {

var baseSetData = __webpack_require__("b343"),
    createBind = __webpack_require__("89ea"),
    createCurry = __webpack_require__("470f"),
    createHybrid = __webpack_require__("6b5c"),
    createPartial = __webpack_require__("d000"),
    getData = __webpack_require__("285e"),
    mergeData = __webpack_require__("ab74"),
    setData = __webpack_require__("f7d3"),
    setWrapToString = __webpack_require__("4fcb"),
    toInteger = __webpack_require__("4b17");

/** Error message constants. */
var FUNC_ERROR_TEXT = 'Expected a function';

/** Used to compose bitmasks for function metadata. */
var WRAP_BIND_FLAG = 1,
    WRAP_BIND_KEY_FLAG = 2,
    WRAP_CURRY_FLAG = 8,
    WRAP_CURRY_RIGHT_FLAG = 16,
    WRAP_PARTIAL_FLAG = 32,
    WRAP_PARTIAL_RIGHT_FLAG = 64;

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeMax = Math.max;

/**
 * Creates a function that either curries or invokes `func` with optional
 * `this` binding and partially applied arguments.
 *
 * @private
 * @param {Function|string} func The function or method name to wrap.
 * @param {number} bitmask The bitmask flags.
 *    1 - `_.bind`
 *    2 - `_.bindKey`
 *    4 - `_.curry` or `_.curryRight` of a bound function
 *    8 - `_.curry`
 *   16 - `_.curryRight`
 *   32 - `_.partial`
 *   64 - `_.partialRight`
 *  128 - `_.rearg`
 *  256 - `_.ary`
 *  512 - `_.flip`
 * @param {*} [thisArg] The `this` binding of `func`.
 * @param {Array} [partials] The arguments to be partially applied.
 * @param {Array} [holders] The `partials` placeholder indexes.
 * @param {Array} [argPos] The argument positions of the new function.
 * @param {number} [ary] The arity cap of `func`.
 * @param {number} [arity] The arity of `func`.
 * @returns {Function} Returns the new wrapped function.
 */
function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {
  var isBindKey = bitmask & WRAP_BIND_KEY_FLAG;
  if (!isBindKey && typeof func != 'function') {
    throw new TypeError(FUNC_ERROR_TEXT);
  }
  var length = partials ? partials.length : 0;
  if (!length) {
    bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG);
    partials = holders = undefined;
  }
  ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0);
  arity = arity === undefined ? arity : toInteger(arity);
  length -= holders ? holders.length : 0;

  if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) {
    var partialsRight = partials,
        holdersRight = holders;

    partials = holders = undefined;
  }
  var data = isBindKey ? undefined : getData(func);

  var newData = [
    func, bitmask, thisArg, partials, holders, partialsRight, holdersRight,
    argPos, ary, arity
  ];

  if (data) {
    mergeData(newData, data);
  }
  func = newData[0];
  bitmask = newData[1];
  thisArg = newData[2];
  partials = newData[3];
  holders = newData[4];
  arity = newData[9] = newData[9] === undefined
    ? (isBindKey ? 0 : func.length)
    : nativeMax(newData[9] - length, 0);

  if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) {
    bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG);
  }
  if (!bitmask || bitmask == WRAP_BIND_FLAG) {
    var result = createBind(func, bitmask, thisArg);
  } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) {
    result = createCurry(func, bitmask, arity);
  } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) {
    result = createPartial(func, bitmask, thisArg, partials);
  } else {
    result = createHybrid.apply(undefined, newData);
  }
  var setter = data ? baseSetData : setData;
  return setWrapToString(setter(result, newData), func, bitmask);
}

module.exports = createWrap;


/***/ }),

/***/ "e9a7":
/***/ (function(module, exports, __webpack_require__) {

var baseCreate = __webpack_require__("7530"),
    baseLodash = __webpack_require__("46b4");

/**
 * The base constructor for creating `lodash` wrapper objects.
 *
 * @private
 * @param {*} value The value to wrap.
 * @param {boolean} [chainAll] Enable explicit method chain sequences.
 */
function LodashWrapper(value, chainAll) {
  this.__wrapped__ = value;
  this.__actions__ = [];
  this.__chain__ = !!chainAll;
  this.__index__ = 0;
  this.__values__ = undefined;
}

LodashWrapper.prototype = baseCreate(baseLodash.prototype);
LodashWrapper.prototype.constructor = LodashWrapper;

module.exports = LodashWrapper;


/***/ }),

/***/ "eac5":
/***/ (function(module, exports) {

/** Used for built-in method references. */
var objectProto = Object.prototype;

/**
 * Checks if `value` is likely a prototype object.
 *
 * @private
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
 */
function isPrototype(value) {
  var Ctor = value && value.constructor,
      proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;

  return value === proto;
}

module.exports = isPrototype;


/***/ }),

/***/ "ec69":
/***/ (function(module, exports, __webpack_require__) {

var arrayLikeKeys = __webpack_require__("6fcd"),
    baseKeys = __webpack_require__("03dd"),
    isArrayLike = __webpack_require__("30c9");

/**
 * Creates an array of the own enumerable property names of `object`.
 *
 * **Note:** Non-object values are coerced to objects. See the
 * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
 * for more details.
 *
 * @static
 * @since 0.1.0
 * @memberOf _
 * @category Object
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names.
 * @example
 *
 * function Foo() {
 *   this.a = 1;
 *   this.b = 2;
 * }
 *
 * Foo.prototype.c = 3;
 *
 * _.keys(new Foo);
 * // => ['a', 'b'] (iteration order is not guaranteed)
 *
 * _.keys('hi');
 * // => ['0', '1']
 */
function keys(object) {
  return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
}

module.exports = keys;


/***/ }),

/***/ "ec8c":
/***/ (function(module, exports) {

/**
 * This function is like
 * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
 * except that it includes inherited enumerable properties.
 *
 * @private
 * @param {Object} object The object to query.
 * @returns {Array} Returns the array of property names.
 */
function nativeKeysIn(object) {
  var result = [];
  if (object != null) {
    for (var key in Object(object)) {
      result.push(key);
    }
  }
  return result;
}

module.exports = nativeKeysIn;


/***/ }),

/***/ "ed42":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"data\":{\"available_time_range_list\":[{\"module_type\":105,\"start_time\":1760428800,\"end_time\":1768204800,\"timezone_offset\":-28800,\"max_duration\":2678400},{\"module_type\":104,\"start_time\":1760428800,\"end_time\":1768204800,\"timezone_offset\":-28800,\"max_duration\":2678400},{\"module_type\":106,\"start_time\":1760428800,\"end_time\":1768204800,\"timezone_offset\":-28800,\"max_duration\":2678400},{\"module_type\":103,\"start_time\":1760428800,\"end_time\":1768204800,\"timezone_offset\":-28800,\"max_duration\":2678400}]}}");

/***/ }),

/***/ "edfa":
/***/ (function(module, exports) {

/**
 * Converts `map` to its key-value pairs.
 *
 * @private
 * @param {Object} map The map to convert.
 * @returns {Array} Returns the key-value pairs.
 */
function mapToArray(map) {
  var index = -1,
      result = Array(map.size);

  map.forEach(function(value, key) {
    result[++index] = [key, value];
  });
  return result;
}

module.exports = mapToArray;


/***/ }),

/***/ "eedc":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var ParserStream = __webpack_require__("cda4"),
    inherits = __webpack_require__("3022").inherits,
    $ = __webpack_require__("f30b").TAG_NAMES;

var PlainTextConversionStream = module.exports = function (options) {
    ParserStream.call(this, options);

    // NOTE: see https://html.spec.whatwg.org/#read-text
    this.parser._insertFakeElement($.HTML);
    this.parser._insertFakeElement($.HEAD);
    this.parser.openElements.pop();
    this.parser._insertFakeElement($.BODY);
    this.parser._insertFakeElement($.PRE);
    this.parser.treeAdapter.insertText(this.parser.openElements.current, '\n');
    this.parser.switchToPlaintextParsing();
};

inherits(PlainTextConversionStream, ParserStream);


/***/ }),

/***/ "ef13":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";

// EXTERNAL MODULE: ./node_modules/axios/index.js
var axios = __webpack_require__("bc3a");
var axios_default = /*#__PURE__*/__webpack_require__.n(axios);

// EXTERNAL MODULE: ./node_modules/moment/moment.js
var moment = __webpack_require__("c1df");
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);

// EXTERNAL MODULE: ./src/data/task.js
var data_task = __webpack_require__("cec6");

// EXTERNAL MODULE: ./node_modules/cheerio/index.js
var cheerio = __webpack_require__("02cc");
var cheerio_default = /*#__PURE__*/__webpack_require__.n(cheerio);

// EXTERNAL MODULE: ./node_modules/jszip/dist/jszip.min.js
var jszip_min = __webpack_require__("c4e3");
var jszip_min_default = /*#__PURE__*/__webpack_require__.n(jszip_min);

// EXTERNAL MODULE: ./src/data/log.js
var log = __webpack_require__("6b23");

// EXTERNAL MODULE: ./src/utils/util.js
var util = __webpack_require__("ca00");

// EXTERNAL MODULE: ./src/utils/fetch.js
var utils_fetch = __webpack_require__("1c1e");

// CONCATENATED MODULE: ./src/core/screenshot.js
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }

function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }




/**
 * 优化的 captureVisibleTab 方法
 * @param {*} windowId 
 * @param {*} tabId 
 * @param {*} count 
 * @param {*} waitFn 截图等待
 * @returns 
 */

var screenshot_optimizedCaptureVisibleTab = function optimizedCaptureVisibleTab(windowId, tabId, count, waitFn) {
  return new Promise(function (resolve, reject) {
    chrome.tabs.get(tabId, /*#__PURE__*/function () {
      var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(tab) {
        var msg, waitRes;
        return _regeneratorRuntime().wrap(function _callee2$(_context2) {
          while (1) {
            switch (_context2.prev = _context2.next) {
              case 0:
                if (tab) {
                  _context2.next = 5;
                  break;
                }

                msg = "[\u9875\u9762\u622A\u56FE]\u9875\u9762\u53EF\u80FD\u5DF2\u88AB\u5173\u95ED1";
                log["a" /* default */].setLog(msg);
                reject(msg);
                return _context2.abrupt("return");

              case 5:
                if (tab.status == 'loading') {
                  util["b" /* alarms */].setTimeout( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
                    var errmsg, res;
                    return _regeneratorRuntime().wrap(function _callee$(_context) {
                      while (1) {
                        switch (_context.prev = _context.next) {
                          case 0:
                            if (!(count < 30)) {
                              _context.next = 10;
                              break;
                            }

                            log["a" /* default */].setLog('[页面截图]页面还在加载，等待重试中...');
                            count++;
                            _context.next = 5;
                            return optimizedCaptureVisibleTab(windowId, tabId, count, waitFn).catch(function (e) {
                              errmsg = e;
                            });

                          case 5:
                            res = _context.sent;
                            res && resolve(res);
                            errmsg && reject(errmsg);
                            _context.next = 11;
                            break;

                          case 10:
                            reject("[\u9875\u9762\u622A\u56FE]\u9875\u9762\u53EF\u80FD\u5DF2\u88AB\u5173\u95ED2");

                          case 11:
                          case "end":
                            return _context.stop();
                        }
                      }
                    }, _callee);
                  })), 'optimizedCaptureVisibleTab', 1000);
                }

                if (!(tab.status == 'complete')) {
                  _context2.next = 13;
                  break;
                }

                if (!waitFn) {
                  _context2.next = 12;
                  break;
                }

                /** 如果用户在这一步手动关掉页面，Promise状态就会一直padding，需要给个时限 */
                util["b" /* alarms */].setTimeout(function () {
                  chrome.tabs.remove(tab.id);
                  var msg = "[\u9875\u9762\u622A\u56FE]\u9875\u9762\u53EF\u80FD\u5DF2\u88AB\u5173\u95ED3";
                  reject(msg);
                  log["a" /* default */].setLog(msg);
                }, 'screenShotRemovePage', 120 * 1000);
                _context2.next = 11;
                return waitFn(tabId);

              case 11:
                waitRes = _context2.sent;

              case 12:
                // 截图前再次确认页面是否被关闭
                chrome.tabs.get(tabId, function (_tab) {
                  if (!_tab) {
                    var _msg = "[\u9875\u9762\u622A\u56FE]\u9875\u9762\u53EF\u80FD\u5DF2\u88AB\u5173\u95ED4";
                    log["a" /* default */].setLog(_msg);
                    reject(_msg);
                    return;
                  }

                  tryCaptureStrategies(windowId, tabId).then(function (result) {
                    resolve({
                      result: result,
                      waitRes: waitRes
                    });
                    util["b" /* alarms */].clear('screenShotRemovePage');
                  }).catch(reject);
                });

              case 13:
              case "end":
                return _context2.stop();
            }
          }
        }, _callee2);
      }));

      return function (_x) {
        return _ref.apply(this, arguments);
      };
    }());
  });
}; // 检查是否有debugger权限


var checkDebugger = function checkDebugger() {
  if (false) {}
  var manifest = chrome.runtime.getManifest();
  return manifest.permissions.includes('debugger');
};

var hasDebugger = checkDebugger(); // 尝试多种截图策略，确保不超过736KB

var tryCaptureStrategies = function tryCaptureStrategies(windowId, tabId) {
  return new Promise(function (resolve, reject) {
    // 紫鸟使用captureVisibleTab截图（会有<all_urls>权限），谷歌使用debugger截图
    // quality从90尝试，直到10
    var strategies = hasDebugger ? [] : Array.from({
      length: 9
    }, function (_, i) {
      return 90 - i * 10;
    }).map(function (quality) {
      return function () {
        return captureWithSizeLimit(windowId, {
          format: 'jpeg',
          quality: quality
        }, tabId, true);
      };
    }); // 依次尝试各种策略

    screenshot_tryNextStrategy(strategies, 0, tabId, resolve, reject);
  });
}; // 尝试下一个策略


var screenshot_tryNextStrategy = function tryNextStrategy(strategies, index, tabId, resolve, reject) {
  if (index >= strategies.length) {
    // 所有 captureVisibleTab 策略都失败了，尝试使用 debugger API
    log["a" /* default */].setLog('所有 captureVisibleTab 策略失败，尝试使用 chrome.debugger API');
    screenshot_captureWithDebugger(tabId).then(function (result) {
      log["a" /* default */].setLog('✅ 使用 debugger API 截图成功');
      resolve(result);
    }).catch(function (error) {
      log["a" /* default */].setLog("\u274C debugger API \u622A\u56FE\u4E5F\u5931\u8D25: ".concat(Object(util["u" /* isError */])(error)));
      reject(new Error('所有截图策略都失败了'));
    });
    return;
  }

  var strategy = strategies[index];
  log["a" /* default */].setLog("\u5C1D\u8BD5 captureVisibleTab \u7B56\u7565 ".concat(index + 1, "/").concat(strategies.length));
  strategy().then(function (result) {
    if (result && result.length > 1000) {
      log["a" /* default */].setLog("\u622A\u56FE\u7B56\u7565 ".concat(index + 1, " \u6210\u529F\uFF0C\u6570\u636E\u5927\u5C0F: ").concat(Math.round(result.length / 1024), "KB"));
      resolve(result);
    } else {
      log["a" /* default */].setLog("\u7B56\u7565 ".concat(index + 1, " \u8FD4\u56DE\u6570\u636E\u5F02\u5E38\uFF0C\u5C1D\u8BD5\u4E0B\u4E00\u4E2A\u7B56\u7565"));
      Object(util["h" /* delayed */])(1000).then(function () {
        tryNextStrategy(strategies, index + 1, tabId, resolve, reject);
      });
    }
  }).catch(function (error) {
    log["a" /* default */].setLog("\u7B56\u7565 ".concat(index + 1, " \u5931\u8D25:"), Object(util["u" /* isError */])(error));
    Object(util["h" /* delayed */])(1000).then(function () {
      tryNextStrategy(strategies, index + 1, tabId, resolve, reject);
    });
  });
}; // 使用 chrome.debugger API 进行截图（作为降级方案）


var screenshot_captureWithDebugger = function captureWithDebugger(tabId) {
  var captureFullPage = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  return new Promise( /*#__PURE__*/function () {
    var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(resolve, reject) {
      var result, layoutMetrics, contentWidth, contentHeight, maxHeight, actualHeight, dataUrl, sizeKB;
      return _regeneratorRuntime().wrap(function _callee3$(_context3) {
        while (1) {
          switch (_context3.prev = _context3.next) {
            case 0:
              _context3.prev = 0;
              log["a" /* default */].setLog("[Debugger API] \u5F00\u59CB\u9644\u52A0\u5230\u6807\u7B7E\u9875 ".concat(tabId)); // 附加 debugger 到标签页

              _context3.next = 4;
              return new Promise(function (res, rej) {
                chrome.debugger.attach({
                  tabId: tabId
                }, '1.3', function () {
                  if (chrome.runtime.lastError) {
                    rej(chrome.runtime.lastError);
                  } else {
                    res();
                  }
                });
              });

            case 4:
              log["a" /* default */].setLog("[Debugger API] \u6210\u529F\u9644\u52A0\uFF0C\u5F00\u59CB\u622A\u56FE (\u5168\u9875: ".concat(captureFullPage, ")")); // 启用 Page domain

              _context3.next = 7;
              return new Promise(function (res, rej) {
                chrome.debugger.sendCommand({
                  tabId: tabId
                }, 'Page.enable', {}, function () {
                  if (chrome.runtime.lastError) {
                    rej(chrome.runtime.lastError);
                  } else {
                    res();
                  }
                });
              });

            case 7:
              log["a" /* default */].setLog('[Debugger API] Page domain 已启用'); // 等待页面完全渲染（给更多时间）

              log["a" /* default */].setLog('[Debugger API] 等待页面渲染...');
              _context3.next = 11;
              return Object(util["h" /* delayed */])(2000);

            case 11:
              _context3.next = 13;
              return new Promise(function (res) {
                chrome.tabs.update(tabId, {
                  active: true
                }, function () {
                  if (chrome.runtime.lastError) {
                    log["a" /* default */].setLog("[Debugger API] \u6FC0\u6D3B\u6807\u7B7E\u9875\u5931\u8D25: ".concat(chrome.runtime.lastError.message));
                  }

                  res();
                });
              });

            case 13:
              _context3.next = 15;
              return Object(util["h" /* delayed */])(500);

            case 15:
              log["a" /* default */].setLog('[Debugger API] 开始执行截图命令');

              if (!captureFullPage) {
                _context3.next = 34;
                break;
              }

              _context3.next = 19;
              return new Promise(function (res, rej) {
                chrome.debugger.sendCommand({
                  tabId: tabId
                }, 'Emulation.setDeviceMetricsOverride', {
                  width: 0,
                  height: 0,
                  deviceScaleFactor: 0,
                  mobile: false
                }, function () {
                  if (chrome.runtime.lastError) {
                    // 某些页面可能不支持，忽略错误
                    log["a" /* default */].setLog("[Debugger API] \u8BBE\u5907\u6307\u6807\u8986\u76D6\u5931\u8D25: ".concat(chrome.runtime.lastError.message));
                  }

                  res();
                });
              });

            case 19:
              _context3.next = 21;
              return new Promise(function (res, rej) {
                chrome.debugger.sendCommand({
                  tabId: tabId
                }, 'Page.getLayoutMetrics', {}, function (response) {
                  if (chrome.runtime.lastError) {
                    rej(chrome.runtime.lastError);
                  } else {
                    res(response);
                  }
                });
              });

            case 21:
              layoutMetrics = _context3.sent;
              contentWidth = layoutMetrics.contentSize.width;
              contentHeight = layoutMetrics.contentSize.height;
              maxHeight = 16384; // Chrome 最大截图高度限制

              actualHeight = Math.min(contentHeight, maxHeight);
              log["a" /* default */].setLog("[Debugger API] \u9875\u9762\u5185\u5BB9\u5C3A\u5BF8: ".concat(contentWidth, "x").concat(contentHeight));
              log["a" /* default */].setLog("[Debugger API] \u5B9E\u9645\u622A\u53D6\u5C3A\u5BF8: ".concat(contentWidth, "x").concat(actualHeight)); // 截取完整页面

              _context3.next = 30;
              return new Promise(function (res, rej) {
                chrome.debugger.sendCommand({
                  tabId: tabId
                }, 'Page.captureScreenshot', {
                  format: 'jpeg',
                  quality: 85,
                  clip: {
                    x: 0,
                    y: 0,
                    width: contentWidth,
                    height: actualHeight,
                    scale: 1
                  },
                  captureBeyondViewport: true
                }, function (response) {
                  if (chrome.runtime.lastError) {
                    rej(chrome.runtime.lastError);
                  } else {
                    res(response);
                  }
                });
              });

            case 30:
              result = _context3.sent;
              log["a" /* default */].setLog('[Debugger API] 全页截图命令执行完成');
              _context3.next = 37;
              break;

            case 34:
              _context3.next = 36;
              return new Promise(function (res, rej) {
                chrome.debugger.sendCommand({
                  tabId: tabId
                }, 'Page.captureScreenshot', {
                  format: 'jpeg',
                  quality: 90
                }, function (response) {
                  if (chrome.runtime.lastError) {
                    rej(chrome.runtime.lastError);
                  } else {
                    res(response);
                  }
                });
              });

            case 36:
              result = _context3.sent;

            case 37:
              _context3.next = 39;
              return new Promise(function (res) {
                chrome.debugger.detach({
                  tabId: tabId
                }, function () {
                  res();
                });
              });

            case 39:
              log["a" /* default */].setLog('[Debugger API] 截图完成，已分离 debugger'); // 将 base64 数据转换为 dataURL 格式

              dataUrl = "data:image/jpeg;base64,".concat(result.data); // 检查大小

              sizeKB = Math.round(dataUrl.length / 1024);
              log["a" /* default */].setLog("[Debugger API] \u622A\u56FE\u6570\u636E\u5927\u5C0F: ".concat(sizeKB, "KB"));
              resolve(dataUrl);
              _context3.next = 56;
              break;

            case 46:
              _context3.prev = 46;
              _context3.t0 = _context3["catch"](0);
              _context3.prev = 48;
              _context3.next = 51;
              return new Promise(function (res) {
                chrome.debugger.detach({
                  tabId: tabId
                }, function () {
                  return res();
                });
              });

            case 51:
              _context3.next = 55;
              break;

            case 53:
              _context3.prev = 53;
              _context3.t1 = _context3["catch"](48);

            case 55:
              reject(_context3.t0);

            case 56:
            case "end":
              return _context3.stop();
          }
        }
      }, _callee3, null, [[0, 46], [48, 53]]);
    }));

    return function (_x2, _x3) {
      return _ref3.apply(this, arguments);
    };
  }());
}; // 带大小限制的截图函数（确保不超过736KB）
// 支持全屏截图（滚动+拼接）


var captureWithSizeLimit = /*#__PURE__*/function () {
  var _ref4 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(windowId, options) {
    var tabId,
        fullPage,
        _yield$chrome$scripti,
        _yield$chrome$scripti2,
        pageInfoResult,
        pageInfo,
        viewportHeight,
        viewportWidth,
        scrollHeight,
        originalScrollTop,
        originalScrollLeft,
        screenshotsCount,
        screenshots,
        i,
        scrollY,
        dataUrl,
        sizeKB,
        stitchedImage,
        _args4 = arguments;

    return _regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            tabId = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : null;
            fullPage = _args4.length > 3 && _args4[3] !== undefined ? _args4[3] : false;

            if (!(!fullPage || !tabId)) {
              _context4.next = 6;
              break;
            }

            chrome.tabs.captureVisibleTab(windowId, options, function (dataUrl) {
              if (chrome.runtime.lastError) {
                throw new Error(chrome.runtime.lastError);
              } else {
                // 检查截图数据大小
                var dataSize = dataUrl ? dataUrl.length : 0;
                var sizeKB = Math.round(dataSize / 1024);
                var maxSizeKB = 736; // 最大736KB

                log["a" /* default */].setLog("\u622A\u56FE\u6570\u636E\u5927\u5C0F: ".concat(sizeKB, "KB (\u9650\u5236: ").concat(maxSizeKB, "KB)"));

                if (dataSize > 0) {
                  if (dataSize <= maxSizeKB * 1024) {
                    // 数据大小在限制范围内
                    log["a" /* default */].setLog("\u2705 \u622A\u56FE\u6570\u636E\u5927\u5C0F\u7B26\u5408\u8981\u6C42: ".concat(sizeKB, "KB"));
                    return dataUrl;
                  } else {
                    // 数据大小超出限制
                    throw new Error("\u622A\u56FE\u6570\u636E\u8D85\u51FA\u9650\u5236: ".concat(sizeKB, "KB > ").concat(maxSizeKB, "KB"));
                  }
                } else {
                  throw new Error('截图数据为空');
                }
              }
            });
            _context4.next = 60;
            break;

          case 6:
            _context4.prev = 6;
            log["a" /* default */].setLog('[全屏截图] 开始获取页面信息'); // 1. 在页面中执行脚本获取页面信息

            _context4.next = 10;
            return chrome.scripting.executeScript({
              target: {
                tabId: tabId
              },
              func: function func() {
                return {
                  viewportHeight: window.innerHeight,
                  viewportWidth: window.innerWidth,
                  scrollHeight: Math.max(document.body.scrollHeight, document.documentElement.scrollHeight, document.body.offsetHeight, document.documentElement.offsetHeight, document.body.clientHeight, document.documentElement.clientHeight),
                  originalScrollTop: window.pageYOffset || document.documentElement.scrollTop,
                  originalScrollLeft: window.pageXOffset || document.documentElement.scrollLeft
                };
              }
            });

          case 10:
            _yield$chrome$scripti = _context4.sent;
            _yield$chrome$scripti2 = _slicedToArray(_yield$chrome$scripti, 1);
            pageInfoResult = _yield$chrome$scripti2[0];
            pageInfo = pageInfoResult.result;
            viewportHeight = pageInfo.viewportHeight, viewportWidth = pageInfo.viewportWidth, scrollHeight = pageInfo.scrollHeight, originalScrollTop = pageInfo.originalScrollTop, originalScrollLeft = pageInfo.originalScrollLeft;
            log["a" /* default */].setLog("[\u5168\u5C4F\u622A\u56FE] \u9875\u9762\u4FE1\u606F - \u89C6\u53E3: ".concat(viewportWidth, "x").concat(viewportHeight, ", \u603B\u9AD8\u5EA6: ").concat(scrollHeight)); // 2. 如果页面高度小于等于视口高度，直接截图

            if (!(scrollHeight <= viewportHeight)) {
              _context4.next = 21;
              break;
            }

            log["a" /* default */].setLog('[全屏截图] 页面无需滚动，直接截图');
            _context4.next = 20;
            return captureWithSizeLimit(windowId, options, null, false);

          case 20:
            return _context4.abrupt("return", _context4.sent);

          case 21:
            // 3. 计算需要截图的次数
            screenshotsCount = Math.ceil(scrollHeight / viewportHeight);
            log["a" /* default */].setLog("[\u5168\u5C4F\u622A\u56FE] \u9700\u8981\u622A\u56FE ".concat(screenshotsCount, " \u6B21")); // 4. 滚动并截图

            screenshots = [];
            i = 0;

          case 25:
            if (!(i < screenshotsCount)) {
              _context4.next = 45;
              break;
            }

            scrollY = i * viewportHeight;
            log["a" /* default */].setLog("[\u5168\u5C4F\u622A\u56FE] \u7B2C ".concat(i + 1, "/").concat(screenshotsCount, " \u6B21\u622A\u56FE\uFF0C\u6EDA\u52A8\u5230 y=").concat(scrollY)); // 滚动到指定位置

            _context4.next = 30;
            return chrome.scripting.executeScript({
              target: {
                tabId: tabId
              },
              func: function func(y) {
                window.scrollTo(0, y);
              },
              args: [scrollY]
            });

          case 30:
            _context4.next = 32;
            return Object(util["h" /* delayed */])(300);

          case 32:
            _context4.next = 34;
            return new Promise(function (resolve, reject) {
              chrome.tabs.captureVisibleTab(windowId, options, function (dataUrl) {
                if (chrome.runtime.lastError) {
                  reject(chrome.runtime.lastError);
                } else {
                  resolve(dataUrl);
                }
              });
            });

          case 34:
            dataUrl = _context4.sent;
            screenshots.push(dataUrl);
            sizeKB = Math.round(dataUrl.length / 1024);
            log["a" /* default */].setLog("[\u5168\u5C4F\u622A\u56FE] \u7B2C ".concat(i + 1, " \u5F20\u622A\u56FE\u5B8C\u6210\uFF0C\u5927\u5C0F: ").concat(sizeKB, "KB")); // Chrome 限制: captureVisibleTab 每秒最多调用2次
            // 在下一次截图前等待至少600ms，确保不超过限流

            if (!(i < screenshotsCount - 1)) {
              _context4.next = 42;
              break;
            }

            log["a" /* default */].setLog("[\u5168\u5C4F\u622A\u56FE] \u7B49\u5F85 600ms \u4EE5\u907F\u514D\u89E6\u53D1\u9650\u6D41...");
            _context4.next = 42;
            return Object(util["h" /* delayed */])(600);

          case 42:
            i++;
            _context4.next = 25;
            break;

          case 45:
            // 5. 恢复原始滚动位置
            log["a" /* default */].setLog('[全屏截图] 恢复原始滚动位置');
            _context4.next = 48;
            return chrome.scripting.executeScript({
              target: {
                tabId: tabId
              },
              func: function func(x, y) {
                window.scrollTo(x, y);
              },
              args: [originalScrollLeft, originalScrollTop]
            });

          case 48:
            // 6. 拼接截图（使用 Service Worker 兼容的方式）
            log["a" /* default */].setLog('[全屏截图] 开始拼接截图');
            console.log('screenshots', screenshots);
            _context4.next = 52;
            return stitchScreenshotsInServiceWorker(screenshots, viewportHeight, viewportWidth, scrollHeight);

          case 52:
            stitchedImage = _context4.sent;
            return _context4.abrupt("return", stitchedImage);

          case 56:
            _context4.prev = 56;
            _context4.t0 = _context4["catch"](6);
            log["a" /* default */].setLog("[\u5168\u5C4F\u622A\u56FE] \u274C \u5931\u8D25: ".concat(Object(util["u" /* isError */])(_context4.t0)));
            throw _context4.t0;

          case 60:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4, null, [[6, 56]]);
  }));

  return function captureWithSizeLimit(_x4, _x5) {
    return _ref4.apply(this, arguments);
  };
}();
/**
 * 在 Service Worker 中拼接截图
 * 使用 OffscreenCanvas 和 createImageBitmap（Service Worker 兼容）
 */


var stitchScreenshotsInServiceWorker = /*#__PURE__*/function () {
  var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7(screenshots, viewportHeight, viewportWidth, totalHeight) {
    var blobs, imageBitmaps, canvas, ctx, resultBlob, arrayBuffer, bytes, binary, i, base64, dataUrl, sizeKB;
    return _regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            _context7.prev = 0;
            log["a" /* default */].setLog("[\u62FC\u63A5\u622A\u56FE] \u5F00\u59CB\u5904\u7406 ".concat(screenshots.length, " \u5F20\u622A\u56FE")); // 1. 将 dataURL 转换为 Blob

            _context7.next = 4;
            return Promise.all(screenshots.map( /*#__PURE__*/function () {
              var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(dataUrl) {
                var base64, binaryString, bytes, i;
                return _regeneratorRuntime().wrap(function _callee5$(_context5) {
                  while (1) {
                    switch (_context5.prev = _context5.next) {
                      case 0:
                        // 移除 data:image/jpeg;base64, 前缀
                        base64 = dataUrl.split(',')[1]; // 将 base64 转换为二进制

                        binaryString = atob(base64);
                        bytes = new Uint8Array(binaryString.length);

                        for (i = 0; i < binaryString.length; i++) {
                          bytes[i] = binaryString.charCodeAt(i);
                        }

                        return _context5.abrupt("return", new Blob([bytes], {
                          type: 'image/jpeg'
                        }));

                      case 5:
                      case "end":
                        return _context5.stop();
                    }
                  }
                }, _callee5);
              }));

              return function (_x10) {
                return _ref6.apply(this, arguments);
              };
            }()));

          case 4:
            blobs = _context7.sent;
            log["a" /* default */].setLog("[\u62FC\u63A5\u622A\u56FE] \u5DF2\u8F6C\u6362\u4E3A Blob \u683C\u5F0F"); // 2. 使用 createImageBitmap 加载所有图片

            _context7.next = 8;
            return Promise.all(blobs.map( /*#__PURE__*/function () {
              var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(blob, index) {
                var bitmap;
                return _regeneratorRuntime().wrap(function _callee6$(_context6) {
                  while (1) {
                    switch (_context6.prev = _context6.next) {
                      case 0:
                        _context6.next = 2;
                        return createImageBitmap(blob);

                      case 2:
                        bitmap = _context6.sent;
                        log["a" /* default */].setLog("[\u62FC\u63A5\u622A\u56FE] \u5DF2\u52A0\u8F7D\u7B2C ".concat(index + 1, "/").concat(blobs.length, " \u5F20"));
                        return _context6.abrupt("return", bitmap);

                      case 5:
                      case "end":
                        return _context6.stop();
                    }
                  }
                }, _callee6);
              }));

              return function (_x11, _x12) {
                return _ref7.apply(this, arguments);
              };
            }()));

          case 8:
            imageBitmaps = _context7.sent;
            log["a" /* default */].setLog("[\u62FC\u63A5\u622A\u56FE] \u5F00\u59CB\u7ED8\u5236\uFF0C\u753B\u5E03\u5C3A\u5BF8: ".concat(viewportWidth, "x").concat(totalHeight)); // 3. 创建 OffscreenCanvas 并绘制

            canvas = new OffscreenCanvas(viewportWidth, totalHeight);
            ctx = canvas.getContext('2d'); // 4. 依次绘制每张图片

            imageBitmaps.forEach(function (bitmap, idx) {
              var y = idx * viewportHeight;
              var height = Math.min(viewportHeight, totalHeight - y);
              ctx.drawImage(bitmap, 0, y, viewportWidth, height);
              log["a" /* default */].setLog("[\u62FC\u63A5\u622A\u56FE] \u7ED8\u5236\u7B2C ".concat(idx + 1, " \u5F20\uFF0C\u4F4D\u7F6E: y=").concat(y, ", \u9AD8\u5EA6: ").concat(height)); // 释放 bitmap 资源

              bitmap.close();
            });
            log["a" /* default */].setLog('[拼接截图] 开始转换为 JPEG 格式'); // 5. 转换为 Blob

            _context7.next = 16;
            return canvas.convertToBlob({
              type: 'image/jpeg',
              quality: 0.85
            });

          case 16:
            resultBlob = _context7.sent;
            _context7.next = 19;
            return resultBlob.arrayBuffer();

          case 19:
            arrayBuffer = _context7.sent;
            bytes = new Uint8Array(arrayBuffer);
            binary = '';

            for (i = 0; i < bytes.length; i++) {
              binary += String.fromCharCode(bytes[i]);
            }

            base64 = btoa(binary);
            dataUrl = "data:image/jpeg;base64,".concat(base64);
            sizeKB = Math.round(dataUrl.length / 1024);
            log["a" /* default */].setLog("[\u62FC\u63A5\u622A\u56FE] \u2705 \u5B8C\u6210\uFF0C\u6700\u7EC8\u5927\u5C0F: ".concat(sizeKB, "KB"));
            return _context7.abrupt("return", dataUrl);

          case 30:
            _context7.prev = 30;
            _context7.t0 = _context7["catch"](0);
            log["a" /* default */].setLog("[\u62FC\u63A5\u622A\u56FE] \u274C \u5931\u8D25: ".concat(Object(util["u" /* isError */])(_context7.t0)));
            throw _context7.t0;

          case 34:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7, null, [[0, 30]]);
  }));

  return function stitchScreenshotsInServiceWorker(_x6, _x7, _x8, _x9) {
    return _ref5.apply(this, arguments);
  };
}();

var screenshot_screenshot = function screenshot(url, waitFn) {
  return new Promise(function (resolve, reject) {
    chrome.tabs.create({
      url: url,
      active: true
    }, /*#__PURE__*/function () {
      var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(tabs) {
        var result, msg, _msg2;

        return _regeneratorRuntime().wrap(function _callee8$(_context8) {
          while (1) {
            switch (_context8.prev = _context8.next) {
              case 0:
                log["a" /* default */].setLog("\u5F00\u59CB\u89C6\u53E3\u622A\u56FE\uFF0C\u6807\u7B7E\u9875URL: ".concat(url));
                _context8.prev = 1;
                _context8.next = 4;
                return screenshot_optimizedCaptureVisibleTab(tabs.windowId, tabs.id, 0, waitFn);

              case 4:
                result = _context8.sent;

                if (result) {
                  resolve(result);
                } else {
                  msg = "\u89C6\u53E3\u622A\u56FE\u5931\u8D25,\u5931\u8D25\u539F\u56E0:".concat(result);
                  log["a" /* default */].setLog(msg);
                  reject(msg);
                }

                chrome.tabs.remove(tabs.id);
                _context8.next = 15;
                break;

              case 9:
                _context8.prev = 9;
                _context8.t0 = _context8["catch"](1);
                _msg2 = "\u89C6\u53E3\u622A\u56FE\u51FA\u9519: ".concat(Object(util["u" /* isError */])(_context8.t0));
                log["a" /* default */].setLog(_msg2);
                reject(_msg2);
                chrome.tabs.remove(tabs.id);

              case 15:
              case "end":
                return _context8.stop();
            }
          }
        }, _callee8, null, [[1, 9]]);
      }));

      return function (_x13) {
        return _ref8.apply(this, arguments);
      };
    }());
  });
};
// CONCATENATED MODULE: ./src/data/amazon.js
function amazon_typeof(obj) { "@babel/helpers - typeof"; return amazon_typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, amazon_typeof(obj); }

function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }

function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }

function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

function amazon_slicedToArray(arr, i) { return amazon_arrayWithHoles(arr) || amazon_iterableToArrayLimit(arr, i) || amazon_unsupportedIterableToArray(arr, i) || amazon_nonIterableRest(); }

function amazon_nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function amazon_iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

function amazon_arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || amazon_unsupportedIterableToArray(arr) || _nonIterableSpread(); }

function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }

function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }

function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return amazon_arrayLikeToArray(arr); }

function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = amazon_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function amazon_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return amazon_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return amazon_arrayLikeToArray(o, minLen); }

function amazon_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }

function amazon_regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ amazon_regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == amazon_typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function amazon_asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function amazon_asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { amazon_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { amazon_asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }










/* harmony default export */ var amazon = __webpack_exports__["a"] = ({
  /**
   * @description 财务报告csrftoken列表
   */
  financeCsrfTokenMap: {
    'https://sellercentral.amazon.com': {},
    'https://sellercentral-japan.amazon.com': {},
    'https://sellercentral.amazon.ca': {},
    'https://sellercentral.amazon.de': {},
    'https://sellercentral.amazon.com.au': {},
    'https://sellercentral-europe.amazon.com': {},
    'https://sellercentral.amazon.in': {},
    'https://sellercentral.amazon.ae': {},
    'https://sellercentral.amazon.co.uk': {},
    'https://sellercentral.amazon.sg': {},
    'https://sellercentral.amazon.fr': {},
    'https://sellercentral.amazon.it': {},
    'https://sellercentral.amazon.es': {},
    'https://sellercentral.amazon.nl': {},
    'https://sellercentral.amazon.com.mx': {},
    'https://sellercentral.amazon.com.br': {},
    'https://sellercentral.amazon.se': {},
    'https://sellercentral.amazon.co.jp': {},
    'https://sellercentral.amazon.sa': {},
    'https://sellercentral.amazon.pl': {},
    'https://sellercentral.amazon.com.tr': {},
    'https://sellercentral.amazon.com.be': {},
    'https://sellercentral.amazon.ie': {},
    'https://sellercentral.amazon.eg': {}
  },
  IANA: {
    BR: 'America/Sao_Paulo',
    // 巴西
    CA: 'America/Toronto',
    // 加拿大
    MX: 'America/Mexico_City',
    // 墨西哥
    US: 'America/Los_Angeles',
    // 美国
    AE: 'Asia/Dubai',
    // 阿联酋
    DE: 'Europe/Berlin',
    // 德国
    EG: 'Africa/Cairo',
    // 埃及
    ES: 'Europe/Madrid',
    // 西班牙
    FR: 'Europe/Paris',
    // 法国
    UK: 'Europe/London',
    // 英国
    IN: 'Asia/Kolkata',
    // 印度
    IT: 'Europe/Rome',
    // 意大利
    NL: 'Europe/Amsterdam',
    // 荷兰
    SA: 'Asia/Riyadh',
    // 沙特阿拉伯
    TR: 'Europe/Istanbul',
    // 土耳其
    SG: 'Asia/Singapore',
    // 新加坡
    AU: 'Australia/Sydney',
    // 澳大利亚
    JP: 'Asia/Tokyo',
    // 日本
    SE: 'Europe/Stockholm',
    // 瑞典
    PL: 'Europe/Warsaw',
    // 波兰
    BE: 'Europe/Brussels',
    // 比利时
    IE: 'Europe/Dublin' // 爱尔兰

  },
  amazonVerifycode: null,
  sellerId: '',
  sellerObj: {},
  host: '',
  hostObj: {
    US: '',
    UK: '',
    JP: '',
    AU: '',
    IN: '',
    // AE: '',
    // SA: '',
    SG: ''
  },
  onlineSite: {},
  dupliteSite: [],
  existSite: [],
  logoutSite: {
    US: false,
    UK: false,
    JP: false,
    AU: false,
    IN: false,
    AE: false,
    SG: false // SA: false

  },
  // 掉线站点
  accountInfo: {},
  // 账号信息
  findInter: '',
  // payments报表的定时器,
  Refreshing: false,
  errorTime: 0,
  // 失败次数
  language: '',
  siteMap: {
    'https://sellercentral.amazon.com': 'US',
    'https://sellercentral-japan.amazon.com': 'JP',
    'https://sellercentral.amazon.ca': 'US',
    'https://sellercentral.amazon.de': 'UK',
    'https://sellercentral.amazon.com.au': 'AU',
    'https://sellercentral-europe.amazon.com': 'UK',
    'https://sellercentral.amazon.in': 'IN',
    'https://sellercentral.amazon.ae': 'AE',
    'https://sellercentral.amazon.co.uk': 'UK',
    'https://sellercentral.amazon.sg': 'SG',
    'https://sellercentral.amazon.fr': 'UK',
    'https://sellercentral.amazon.it': 'UK',
    'https://sellercentral.amazon.es': 'UK',
    'https://sellercentral.amazon.nl': 'UK',
    'https://sellercentral.amazon.com.mx': 'US',
    'https://sellercentral.amazon.com.br': 'US',
    'https://sellercentral.amazon.se': 'UK',
    'https://sellercentral.amazon.co.jp': 'JP',
    'https://sellercentral.amazon.sa': 'AE',
    'https://sellercentral.amazon.pl': 'UK',
    'https://sellercentral.amazon.com.tr': 'UK',
    'https://sellercentral.amazon.com.be': 'UK',
    'https://sellercentral.amazon.ie': 'UK',
    'https://sellercentral.amazon.eg': 'UK'
  },
  siteMapVc: {
    'https://vendorcentral.amazon.com': 'US',
    'https://vendorcentral-japan.amazon.com': 'JP',
    'https://vendorcentral.amazon.ca': 'US',
    'https://vendorcentral.amazon.de': 'UK',
    'https://vendorcentral.amazon.com.au': 'AU',
    'https://vendorcentral-europe.amazon.com': 'UK',
    'https://vendorcentral.amazon.in': 'IN',
    'https://www.vendorcentral.in': 'IN',
    'https://vendorcentral.amazon.ae': 'AE',
    'https://vendorcentral.amazon.co.uk': 'UK',
    "https://vendorcentral.amazon.eu": 'UK',
    'https://vendorcentral.amazon.sg': 'SG',
    'https://vendorcentral.amazon.fr': 'UK',
    'https://vendorcentral.amazon.it': 'UK',
    'https://vendorcentral.amazon.es': 'UK',
    'https://vendorcentral.amazon.nl': 'UK',
    'https://vendorcentral.amazon.com.mx': 'US',
    'https://vendorcentral.amazon.com.br': 'US',
    'https://vendorcentral.amazon.se': 'UK',
    'https://vendorcentral.amazon.co.jp': 'JP',
    'https://vendorcentral.amazon.sa': 'AE',
    'https://vendorcentral.amazon.pl': 'UK',
    'https://vendorcentral.amazon.com.tr': 'UK',
    'https://vendorcentral.amazon.com.be': 'UK',
    'https://vendorcentral.amazon.ie': 'UK',
    'https://vendorcentral.amazon.eg': 'UK',
    'https://vendorcentral.amazon.me': 'AE'
  },
  siteToUrlMap: {
    US: ['https://sellercentral.amazon.com', 'https://sellercentral.amazon.ca', 'https://sellercentral.amazon.com.mx', 'https://sellercentral.amazon.com.br'],
    UK: ['https://sellercentral.amazon.de', 'https://sellercentral-europe.amazon.com', 'https://sellercentral.amazon.co.uk', 'https://sellercentral.amazon.fr', 'https://sellercentral.amazon.it', 'https://sellercentral.amazon.es', 'https://sellercentral.amazon.nl', 'https://sellercentral.amazon.se', 'https://sellercentral.amazon.pl', 'https://sellercentral.amazon.ae', 'https://sellercentral.amazon.sa', 'https://sellercentral.amazon.com.tr', 'https://sellercentral.amazon.com.be', 'https://sellercentral.amazon.ie', 'https://sellercentral.amazon.eg'],
    JP: ['https://sellercentral-japan.amazon.com', 'https://sellercentral.amazon.co.jp', 'https://sellercentral.amazon.com.au'],
    AU: ['https://sellercentral.amazon.com.au', 'https://sellercentral-japan.amazon.com', 'https://sellercentral.amazon.co.jp'],
    IN: ['https://sellercentral.amazon.in'],
    SG: ['https://sellercentral.amazon.sg'] // TR: ['https://sellercentral.amazon.com.tr']
    // AE: ['https://sellercentral.amazon.ae', 'https://sellercentral.amazon.sa'],
    // SA: ['https://sellercentral.amazon.sa']

  },
  vcSiteToUrlMap: {
    US: ['https://vendorcentral.amazon.com', 'https://vendorcentral.amazon.ca', 'https://vendorcentral.amazon.com.mx', 'https://vendorcentral.amazon.com.br'],
    UK: ['https://vendorcentral.amazon.de', 'https://vendorcentral-europe.amazon.com', 'https://vendorcentral.amazon.co.uk', 'https://vendorcentral.amazon.eu', 'https://vendorcentral.amazon.fr', 'https://vendorcentral.amazon.it', 'https://vendorcentral.amazon.es', 'https://vendorcentral.amazon.nl', 'https://vendorcentral.amazon.se', 'https://vendorcentral.amazon.pl', 'https://vendorcentral.amazon.ae', 'https://vendorcentral.amazon.sa', 'https://vendorcentral.amazon.com.tr', 'https://vendorcentral.amazon.com.be', 'https://vendorcentral.amazon.ie', 'https://vendorcentral.amazon.eg', 'https://vendorcentral.amazon.me'],
    JP: ['https://vendorcentral-japan.amazon.com', 'https://vendorcentral.amazon.co.jp', 'https://vendorcentral.amazon.com.au'],
    AU: ['https://vendorcentral.amazon.com.au', 'https://vendorcentral-japan.amazon.com', 'https://vendorcentral.amazon.co.jp'],
    IN: ['https://vendorcentral.amazon.in', 'https://www.vendorcentral.in'],
    SG: ['https://vendorcentral.amazon.sg'] // TR: ['https://vendorcentral.amazon.com.tr']
    // AE: ['https://vendorcentral.amazon.ae', 'https://vendorcentral.amazon.sa'],
    // SA: ['https://vendorcentral.amazon.sa']

  },
  MarketplaceObj: {
    BR: 'A2Q3Y263D00KWC',
    CA: 'A2EUQ1WTGCTBG2',
    MX: 'A1AM78C64UM0Y8',
    US: 'ATVPDKIKX0DER',
    AE: 'A2VIGQ35RCS4UG',
    DE: 'A1PA6795UKMFR9',
    EG: 'ARBP9OOSHTCHU',
    ES: 'A1RKKUPIHCS9HS',
    FR: 'A13V1IB3VIYZZH',
    UK: 'A1F83G8C2ARO7P',
    GB: 'A1F83G8C2ARO7P',
    IN: 'A21TJRUUN4KGV',
    IT: 'APJ6JRA9NG5V4',
    NL: 'A1805IZSGTT6HS',
    SA: 'A17E79C6D8DWNP',
    TR: 'A33AVAJ2PDY3EV',
    SG: 'A19VAU5U5O7RUS',
    AU: 'A39IBJ37TRP1C6',
    JP: 'A1VC38T7YXB528',
    SE: 'A2NODRKZP88ZB9',
    PL: 'A1C3SOZRARQ6R3',
    BE: 'AMEN7PMS3EDWL',
    IE: 'A28R8C7NBKEWEA'
  },
  codeToSiteMap: {
    A2Q3Y263D00KWC: 'BR',
    A2EUQ1WTGCTBG2: 'CA',
    A1AM78C64UM0Y8: 'MX',
    ATVPDKIKX0DER: 'US',
    A2VIGQ35RCS4UG: 'AE',
    A1PA6795UKMFR9: 'DE',
    ARBP9OOSHTCHU: 'EG',
    A1RKKUPIHCS9HS: 'ES',
    A13V1IB3VIYZZH: 'FR',
    A1F83G8C2ARO7P: 'UK',
    A21TJRUUN4KGV: 'IN',
    APJ6JRA9NG5V4: 'IT',
    A1805IZSGTT6HS: 'NL',
    A17E79C6D8DWNP: 'SA',
    A33AVAJ2PDY3EV: 'TR',
    A19VAU5U5O7RUS: 'SG',
    A39IBJ37TRP1C6: 'AU',
    A1VC38T7YXB528: 'JP',
    A2NODRKZP88ZB9: 'SE',
    A1C3SOZRARQ6R3: 'PL',
    AMEN7PMS3EDWL: 'BE',
    A28R8C7NBKEWEA: 'IE'
  },
  codeToCountryId: {
    'US': 1,
    'CA': 2,
    'MX': 3,
    'UK': 4,
    'DE': 5,
    'FR': 6,
    'IT': 7,
    'ES': 8,
    'IN': 9,
    'JP': 10,
    'AU': 12,
    'AE': 13,
    'SG': 14,
    'NL': 15,
    'SA': 16,
    'BR': 17,
    'SE': 18,
    'PL': 19,
    'TR': 20,
    'BE': 21,
    IE: 22,
    EG: 23
  },
  MarketplaceId: '',
  isVc: false,

  /**
    * @description 生成财务报告页面csrftoken
  */
  generateFinanceCsrfToken: function generateFinanceCsrfToken(task) {
    var _this = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee() {
      var data, res, $;
      return amazon_regeneratorRuntime().wrap(function _callee$(_context) {
        while (1) {
          switch (_context.prev = _context.next) {
            case 0:
              data = _this.financeCsrfTokenMap[_this.host];

              if (!data.csrf_token) {
                _context.next = 3;
                break;
              }

              return _context.abrupt("return", data.csrf_token);

            case 3:
              _context.next = 5;
              return axios_default()({
                method: 'GET',
                url: "".concat(_this.host, "/payments/reports/custom/request?timestamp=").concat(Date.now()),
                params: {
                  ref_: 'xx_report_ttab_dash',
                  tbla_daterangereportstable: 'sort:{"sortOrder":"DESCENDING"};search:undefined;pagination:1;'
                },
                adapter: utils_fetch["b" /* default */]
              }).catch(function (e) {
                log["a" /* default */].setLog("\u8D22\u52A1\u62A5\u544A\u9875\u9762csrftoken\u83B7\u53D6\u5931\u8D25\n        -- HOST-".concat(_this.host, "\n        -- ").concat(e, "\n      "), task.task_id);
              });

            case 5:
              res = _context.sent;

              if (!(res && res.data)) {
                _context.next = 13;
                break;
              }

              $ = cheerio_default.a.load(res.data);
              data.csrf_token = $('meta[name="csrf-token"]') && $('meta[name="csrf-token"]').attr('content'); // 过期时间3600s

              data.validityPeriod = 3600;
              return _context.abrupt("return", data.csrf_token);

            case 13:
              task.status = 13;
              task.msg = '页面异常，csrftoken获取失败';
              log["a" /* default */].setLog(task.msg);
              return _context.abrupt("return", false);

            case 17:
            case "end":
              return _context.stop();
          }
        }
      }, _callee);
    }))();
  },

  /**
   * @description 清空财务报告页面过期csrftoken
   * @param time 轮询时间
   */
  clearFinanceCsrfToken: function clearFinanceCsrfToken(time) {
    log["a" /* default */].setLog('开始清空财务报告页面csrftoken');

    for (var url in this.financeCsrfTokenMap) {
      var item = this.financeCsrfTokenMap[url];

      if (item.csrf_token && item.validityPeriod) {
        item.validityPeriod = item.validityPeriod - time;
        if (item.validityPeriod <= 0) item.csrf_token = '';
      }
    }
  },
  // 获取账号信息 - 新接口
  getGlobalAccounts: function getGlobalAccounts(host) {
    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee2() {
      var url, _yield$nativeRequest, globalAccounts;

      return amazon_regeneratorRuntime().wrap(function _callee2$(_context2) {
        while (1) {
          switch (_context2.prev = _context2.next) {
            case 0:
              url = "".concat(host, "/account-switcher/global-accounts");
              _context2.prev = 1;
              _context2.next = 4;
              return Object(util["z" /* nativeRequest */])(url, 'get');

            case 4:
              _yield$nativeRequest = _context2.sent;
              globalAccounts = _yield$nativeRequest.globalAccounts;
              log["a" /* default */].setLog('获取到账号信息', JSON.stringify(globalAccounts));
              return _context2.abrupt("return", globalAccounts || []);

            case 10:
              _context2.prev = 10;
              _context2.t0 = _context2["catch"](1);
              log["a" /* default */].setLog("\u83B7\u53D6\u8D26\u53F7\u4FE1\u606F\u5931\u8D25---".concat(url, "----").concat(Object(util["u" /* isError */])(_context2.t0)));
              return _context2.abrupt("return", false);

            case 14:
            case "end":
              return _context2.stop();
          }
        }
      }, _callee2, null, [[1, 10]]);
    }))();
  },
  requestMerchantMarketplaces: function requestMerchantMarketplaces(host, globalAccountId, callbackMsg) {
    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee3() {
      var url, _yield$nativeRequest2, regionalAccounts, msg;

      return amazon_regeneratorRuntime().wrap(function _callee3$(_context3) {
        while (1) {
          switch (_context3.prev = _context3.next) {
            case 0:
              _context3.prev = 0;
              url = "".concat(host, "/account-switcher/regional-accounts/merchantMarketplace");
              _context3.next = 4;
              return Object(util["z" /* nativeRequest */])(url, 'get', {
                globalAccountId: globalAccountId,
                vendorCentralMigration: 'T1'
              });

            case 4:
              _yield$nativeRequest2 = _context3.sent;
              regionalAccounts = _yield$nativeRequest2.regionalAccounts;

              if (!(!regionalAccounts || regionalAccounts.length === 0)) {
                _context3.next = 8;
                break;
              }

              return _context3.abrupt("return", false);

            case 8:
              return _context3.abrupt("return", regionalAccounts || []);

            case 11:
              _context3.prev = 11;
              _context3.t0 = _context3["catch"](0);
              msg = "\u8BF7\u6C42merchantMarketplace\u63A5\u53E3\u5931\u8D25---host: ".concat(host, "----").concat(Object(util["u" /* isError */])(_context3.t0));
              log["a" /* default */].setLog(msg);
              callbackMsg && callbackMsg(msg);

            case 16:
            case "end":
              return _context3.stop();
          }
        }
      }, _callee3, null, [[0, 11]]);
    }))();
  },
  // 获取店铺信息 - 新接口
  getMerchantMarketplaces: function getMerchantMarketplaces(_ref, host) {
    var _this2 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee4() {
      var id, label, regionalAccounts, _iterator, _step, _sizeData$ids, _sizeData$ids2, sizeData, sellerId, marketplaceId, site, region;

      return amazon_regeneratorRuntime().wrap(function _callee4$(_context4) {
        while (1) {
          switch (_context4.prev = _context4.next) {
            case 0:
              id = _ref.id, label = _ref.label;
              _context4.prev = 1;
              _context4.next = 4;
              return _this2.requestMerchantMarketplaces(host, id);

            case 4:
              regionalAccounts = _context4.sent;

              if (!(!regionalAccounts || regionalAccounts.length === 0)) {
                _context4.next = 7;
                break;
              }

              return _context4.abrupt("return", false);

            case 7:
              if (!_this2.onlineSite[label]) _this2.onlineSite[label] = [];
              if (!_this2.sellerObj[label]) _this2.sellerObj[label] = {};
              _iterator = _createForOfIteratorHelper(regionalAccounts);
              _context4.prev = 10;

              _iterator.s();

            case 12:
              if ((_step = _iterator.n()).done) {
                _context4.next = 25;
                break;
              }

              sizeData = _step.value;
              sellerId = sizeData.searchIds[2];
              marketplaceId = sizeData.searchIds[4];
              site = _this2.codeToSiteMap[marketplaceId]; // 站点标识
              // 没有这个国家代码对应的站点，过滤

              if (site) {
                _context4.next = 19;
                break;
              }

              return _context4.abrupt("continue", 23);

            case 19:
              region = _this2.getRegion(site); // 区域站点标识
              // 存储账号存在的区域站点

              if (_this2.existSite.indexOf(region) == -1) _this2.existSite.push(region);

              if (_this2.sellerObj[label][region] && _this2.sellerObj[label][region] !== sellerId) {
                _this2.sellerObj[label][region + 1] = sellerId;
              } else {
                _this2.sellerObj[label][region] = sellerId;
              } // 存储当前账号下拥有的站点


              _this2.onlineSite[label].push({
                accountId: id,
                site: site,
                // 站点标志
                sellerId: sellerId,
                // 店铺id
                region: region,
                // 区域
                // url: this.siteToUrlMap[region][0],
                seller_name: label,
                // 店铺名称
                online: false,
                mons_sel_dir_paid: id,
                mons_sel_mkid: (_sizeData$ids = sizeData.ids) === null || _sizeData$ids === void 0 ? void 0 : _sizeData$ids.mons_sel_mkid,
                mons_sel_dir_mcid: (_sizeData$ids2 = sizeData.ids) === null || _sizeData$ids2 === void 0 ? void 0 : _sizeData$ids2.mons_sel_dir_mcid,
                marketplaceId: marketplaceId
              });

            case 23:
              _context4.next = 12;
              break;

            case 25:
              _context4.next = 30;
              break;

            case 27:
              _context4.prev = 27;
              _context4.t0 = _context4["catch"](10);

              _iterator.e(_context4.t0);

            case 30:
              _context4.prev = 30;

              _iterator.f();

              return _context4.finish(30);

            case 33:
              return _context4.abrupt("return", true);

            case 36:
              _context4.prev = 36;
              _context4.t1 = _context4["catch"](1);
              log["a" /* default */].setLog("\u83B7\u53D6\u5E97\u94FA\u4FE1\u606F\u5931\u8D25---host: ".concat(host, "----").concat(Object(util["u" /* isError */])(_context4.t1)));

            case 39:
            case "end":
              return _context4.stop();
          }
        }
      }, _callee4, null, [[1, 36], [10, 27, 30, 33]]);
    }))();
  },
  refreshSellerId: function refreshSellerId(time) {
    var _this3 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee5() {
      var _yield$localStorage$g, platform, flag, i, globalAccounts, _iterator2, _step2, account;

      return amazon_regeneratorRuntime().wrap(function _callee5$(_context5) {
        while (1) {
          switch (_context5.prev = _context5.next) {
            case 0:
              _context5.next = 2;
              return util["y" /* localStorage */].getItem(['platform']);

            case 2:
              _yield$localStorage$g = _context5.sent;
              platform = _yield$localStorage$g.platform;
              _this3.isVc = platform === 'vc';

              if (!_this3.isVc) {
                _context5.next = 9;
                break;
              }

              _context5.next = 8;
              return _this3.vcRefreshSellerId(time);

            case 8:
              return _context5.abrupt("return", _context5.sent);

            case 9:
              if (!_this3.Refreshing) {
                _context5.next = 14;
                break;
              }

              log["a" /* default */].setLog('正在获取sellerID');
              return _context5.abrupt("return", 'refreshing');

            case 14:
              _this3.Refreshing = true;

            case 15:
              if (!util["h" /* delayed */]) {
                _context5.next = 18;
                break;
              }

              _context5.next = 18;
              return Object(util["h" /* delayed */])(time);

            case 18:
              flag = false;
              _context5.t0 = amazon_regeneratorRuntime().keys(_this3.siteMap);

            case 20:
              if ((_context5.t1 = _context5.t0()).done) {
                _context5.next = 55;
                break;
              }

              i = _context5.t1.value;

              if (!(_this3.authorizedSite && _this3.authorizedSite.length > 0 && _this3.authorizedSite.indexOf(_this3.siteMap[i]) < 0)) {
                _context5.next = 24;
                break;
              }

              return _context5.abrupt("continue", 20);

            case 24:
              _context5.next = 26;
              return _this3.getGlobalAccounts(i);

            case 26:
              globalAccounts = _context5.sent;

              if (!(globalAccounts && globalAccounts.length > 0)) {
                _context5.next = 51;
                break;
              }

              _this3.onlineSite = {}; // 用户所有站点

              _this3.sellerObj = {}; // 区域id

              _this3.existSite = []; // 用户所有区域站点

              _this3.sellerId = ''; // 清空sellerId
              // 获取所有账号下的站点

              _iterator2 = _createForOfIteratorHelper(globalAccounts);
              _context5.prev = 33;

              _iterator2.s();

            case 35:
              if ((_step2 = _iterator2.n()).done) {
                _context5.next = 43;
                break;
              }

              account = _step2.value;
              _context5.next = 39;
              return _this3.getMerchantMarketplaces(account, i);

            case 39:
              if (!_context5.sent) {
                _context5.next = 41;
                break;
              }

              flag = true;

            case 41:
              _context5.next = 35;
              break;

            case 43:
              _context5.next = 48;
              break;

            case 45:
              _context5.prev = 45;
              _context5.t2 = _context5["catch"](33);

              _iterator2.e(_context5.t2);

            case 48:
              _context5.prev = 48;

              _iterator2.f();

              return _context5.finish(48);

            case 51:
              if (!flag) {
                _context5.next = 53;
                break;
              }

              return _context5.abrupt("break", 55);

            case 53:
              _context5.next = 20;
              break;

            case 55:
              if (flag) {
                _context5.next = 58;
                break;
              }

              _this3.Refreshing = false;
              return _context5.abrupt("return", false);

            case 58:
              _this3.getDupliteSite();

              _context5.next = 61;
              return _this3.initHost();

            case 61:
              _this3.Refreshing = false;

              _this3.initSellerId();

              log["a" /* default */].setLog('检测到登录站点:', JSON.stringify(_this3.onlineSite));
              return _context5.abrupt("return", _this3.sellerId);

            case 65:
            case "end":
              return _context5.stop();
          }
        }
      }, _callee5, null, [[33, 45, 48, 51]]);
    }))();
  },
  // sellerId为task/list接口需要的参数
  initSellerId: function initSellerId() {
    var _this4 = this;

    var temp = [];
    var _temp = [];

    for (var i in this.onlineSite) {
      this.onlineSite[i].forEach(function (item) {
        temp.push("".concat(_this4.codeToCountryId[item.site], "-").concat(item.sellerId));

        _temp.push(item.sellerId);
      });
    }

    this.sellerId = temp.join(',');
    this._sellerId = _toConsumableArray(new Set(_temp)).join(',');
  },
  // 获取账号信息
  getAccounts: function getAccounts(url, data) {
    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee6() {
      return amazon_regeneratorRuntime().wrap(function _callee6$(_context6) {
        while (1) {
          switch (_context6.prev = _context6.next) {
            case 0:
              return _context6.abrupt("return", axios_default()({
                method: 'POST',
                url: url,
                data: data,
                adapter: utils_fetch["b" /* default */]
              }).then(function (_ref2) {
                var data = _ref2.data;

                if (data.partnerAccounts) {
                  log["a" /* default */].setLog('获取账号信息', JSON.stringify(data.partnerAccounts));
                  return data.partnerAccounts;
                }

                return false;
              }).catch(function (e) {
                log["a" /* default */].setLog("\u83B7\u53D6\u8D26\u53F7\u4FE1\u606F\u5931\u8D25---".concat(url, "----").concat(Object(util["u" /* isError */])(e), "----\u53C2\u6570\uFF1A").concat(JSON.stringify(data)));
                return false;
              }));

            case 1:
            case "end":
              return _context6.stop();
          }
        }
      }, _callee6);
    }))();
  },
  // 获取同一账号下所有站点
  getAllSite: function getAllSite(partnerAccountId, url) {
    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee7() {
      return amazon_regeneratorRuntime().wrap(function _callee7$(_context7) {
        while (1) {
          switch (_context7.prev = _context7.next) {
            case 0:
              return _context7.abrupt("return", axios_default()({
                method: 'POST',
                url: url + '/partner-dropdown/data/get-merchant-marketplaces-for-partner-account',
                data: {
                  delegationContext: "",
                  partnerAccountId: partnerAccountId
                },
                adapter: utils_fetch["b" /* default */]
              }).then(function (res) {
                // log.setLog('所有站点', JSON.stringify(res.data))
                return res.data;
              }).catch(function (e) {
                log["a" /* default */].setLog("\u83B7\u53D6\u7AD9\u70B9\u4FE1\u606F\u5931\u8D25----".concat(url, "----").concat(Object(util["u" /* isError */])(e)));
                return false;
              }));

            case 1:
            case "end":
              return _context7.stop();
          }
        }
      }, _callee7);
    }))();
  },
  newGetOnlineSite: function newGetOnlineSite(data, url) {
    var _this5 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee8() {
      var sites, label, accountId, _iterator3, _step3, sizeData, sellerId, site, region;

      return amazon_regeneratorRuntime().wrap(function _callee8$(_context8) {
        while (1) {
          switch (_context8.prev = _context8.next) {
            case 0:
              if (!data.merchantMarketplaces) {
                _context8.next = 4;
                break;
              }

              _context8.t0 = data;
              _context8.next = 7;
              break;

            case 4:
              _context8.next = 6;
              return _this5.getAllSite(data.id, url);

            case 6:
              _context8.t0 = _context8.sent;

            case 7:
              sites = _context8.t0;
              // 子账号获取的账户信息里面有站点信息，所以不用另外去请求
              label = data.name; // 账号名

              accountId = data.id; // 账号id

              if (sites.merchantMarketplaces) {
                _context8.next = 12;
                break;
              }

              return _context8.abrupt("return", false);

            case 12:
              log["a" /* default */].setLog('sites', JSON.stringify(sites));
              if (!_this5.onlineSite[label]) _this5.onlineSite[label] = [];
              if (!_this5.sellerObj[label]) _this5.sellerObj[label] = {};
              _iterator3 = _createForOfIteratorHelper(sites.merchantMarketplaces);
              _context8.prev = 16;

              _iterator3.s();

            case 18:
              if ((_step3 = _iterator3.n()).done) {
                _context8.next = 30;
                break;
              }

              sizeData = _step3.value;
              sellerId = sizeData.merchantId.split('.')[3];
              site = _this5.codeToSiteMap[sizeData.marketplaceId]; // 站点标识
              // 没有这个国家代码对应的站点，过滤

              if (site) {
                _context8.next = 24;
                break;
              }

              return _context8.abrupt("continue", 28);

            case 24:
              region = _this5.getRegion(site); // 区域站点标识
              // 存储账号存在的区域站点

              if (_this5.existSite.indexOf(region) == -1) _this5.existSite.push(region);

              if (_this5.sellerObj[label][region] && _this5.sellerObj[label][region] !== sellerId) {
                _this5.sellerObj[label][region + 1] = sellerId;
              } else {
                _this5.sellerObj[label][region] = sellerId;
              } // 存储当前账号下拥有的站点


              _this5.onlineSite[label].push({
                accountId: accountId,
                site: site,
                // 站点标志
                sellerId: sellerId,
                // 店铺id
                region: region,
                // 区域
                // url: this.siteToUrlMap[region][0],
                seller_name: label,
                // 店铺名称
                online: false,
                mons_sel_dir_mcid: sizeData.directedId,
                mons_sel_dir_paid: data.directedId,
                marketplaceId: sizeData.marketplaceId
              });

            case 28:
              _context8.next = 18;
              break;

            case 30:
              _context8.next = 35;
              break;

            case 32:
              _context8.prev = 32;
              _context8.t1 = _context8["catch"](16);

              _iterator3.e(_context8.t1);

            case 35:
              _context8.prev = 35;

              _iterator3.f();

              return _context8.finish(35);

            case 38:
              return _context8.abrupt("return", true);

            case 39:
            case "end":
              return _context8.stop();
          }
        }
      }, _callee8, null, [[16, 32, 35, 38]]);
    }))();
  },
  getDupliteSite: function getDupliteSite() {
    var _this6 = this;

    var keys = Object.keys(this.onlineSite);

    if (keys.length <= 1) {
      return [];
    }

    var siteObj = {};
    keys.forEach(function (key) {
      _this6.onlineSite[key].map(function (row) {
        return row.site;
      }).forEach(function (site) {
        if (siteObj[site]) {
          _this6.dupliteSite.push(site);
        } else {
          siteObj[site] = 1;
        }
      });
    });
  },
  initHost: function initHost() {
    var _this7 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee9() {
      var url, site, g;
      return amazon_regeneratorRuntime().wrap(function _callee9$(_context9) {
        while (1) {
          switch (_context9.prev = _context9.next) {
            case 0:
              log["a" /* default */].setLog('existSite:', JSON.stringify(_this7.existSite));
              _this7.hostObj = {
                US: '',
                UK: '',
                JP: '',
                AU: '',
                IN: '',
                // AE: '',
                // SA: '',
                SG: ''
              };
              _context9.t0 = amazon_regeneratorRuntime().keys(_this7.siteMap);

            case 3:
              if ((_context9.t1 = _context9.t0()).done) {
                _context9.next = 14;
                break;
              }

              url = _context9.t1.value;
              site = _this7.siteMap[url];

              if (!(_this7.hostObj[site] || _this7.existSite.indexOf(site) == -1)) {
                _context9.next = 8;
                break;
              }

              return _context9.abrupt("continue", 3);

            case 8:
              _context9.next = 10;
              return _this7.getUrl(url + '/home');

            case 10:
              g = _context9.sent;

              if (g && g !== -999) {
                _this7.hostObj[site] = url;
                _this7.logoutSite[site] = false;
              }

              _context9.next = 3;
              break;

            case 14:
              _this7.changeOfflineTask();

              _this7.changeOfflineIcon();

              log["a" /* default */].setLog('Host:', JSON.stringify(_this7.hostObj));

            case 17:
            case "end":
              return _context9.stop();
          }
        }
      }, _callee9);
    }))();
  },
  tranferDate: function tranferDate(date, type, needSite) {
    var arr = date.split('-');

    if (type == 1) {
      return {
        date: arr[2],
        month: arr[1],
        year: arr[0]
      };
    } // if (this.language == 'zh_CN') {
    //   return arr[0] + '-' + arr[1] + '-' + arr[2]
    // }


    if (['US', 'JP', 'CA', 'MX', 'AE', 'SA', 'BR'].includes(needSite)) {
      return arr[1] + '/' + arr[2] + '/' + arr[0];
    }

    return arr[2] + '/' + arr[1] + '/' + arr[0];
  },
  // 请求封装
  axiosRequest: function axiosRequest(data) {
    return new Promise(function (resolve, reject) {
      axios_default()(data).then(function (res) {
        resolve(res.data);
      }).catch(function (e) {
        reject(e);
      });
    });
  },
  getBusinessReport: function getBusinessReport(task) {
    var _this8 = this;

    return new Promise(function (resolve) {
      var type = task.report_type == 1 ? 'DetailSalesTrafficByChildItem' : 'DetailSalesTrafficByParentItem'; // let startDate = this.tranferDate(
      //   task.report_custom_date_start,
      //   0,
      //   task.market_code
      // )
      // let endDate = this.tranferDate(
      //   task.report_custom_date_end,
      //   0,
      //   task.market_code
      // )

      var selectedColumns = ["SC_MA_ParentASIN_25990", "SC_MA_ChildASIN_25991", "sc_mat-ss_colDef_title", "SC_MA_MobileAppSessions", "SC_MA_BrowserSessions", "SC_MA_Sessions_Total", "SC_MA_BrowserSessionPercentage", "SC_MA_MobileAppPageViews", "SC_MA_BrowserPageViews", "SC_MA_PageViews_Total", "SC_MA_BrowserPageViewsPercentage", "SC_MA_BuyBoxPercentage_25956", "SC_MA_UnitsOrdered_40590", "SC_MA_UnitSessionPercentage_25957", "SC_MA_OrderedProductSales_40591", "SC_MA_TotalOrderItems_1"]; // let sortColumn = task.report_type == 1 ? 12 : 11
      // let cols =
      //   task.report_type == 1
      //     ? '/c0/c1/c2/c3/c4/c5/c6/c7/c8/c9/c10/c11'
      //     : '/c0/c1/c2/c3/c4/c5/c6/c7/c8/c9/c10'

      task.report_request_time = Date.now();
      axios_default()({
        method: 'post',
        url: _this8.host + '/business-reports/api',
        data: {
          operationName: 'reportDataDownloadQuery',
          query: "query reportDataDownloadQuery($input: GetReportDataInput) {\n  getReportDataDownload(input: $input) {\n    url\n    __typename\n  }\n}\n",
          variables: {
            input: {
              endDate: task.report_custom_date_end,
              startDate: task.report_custom_date_start,
              legacyReportId: "102:".concat(type),
              selectedColumns: selectedColumns
            }
          }
        },
        adapter: utils_fetch["b" /* default */]
      }).then( /*#__PURE__*/function () {
        var _ref3 = amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee10(res) {
          var data, file, arr, binary;
          return amazon_regeneratorRuntime().wrap(function _callee10$(_context10) {
            while (1) {
              switch (_context10.prev = _context10.next) {
                case 0:
                  data = res.data;

                  if (!(data && data.data && data.data.getReportDataDownload)) {
                    _context10.next = 26;
                    break;
                  }

                  _context10.next = 4;
                  return _this8.axiosRequest({
                    url: data.data.getReportDataDownload.url,
                    methods: 'GET',
                    adapter: utils_fetch["b" /* default */]
                  }).catch(function (e) {
                    task.status = 5;
                    task.msg = "\u4E0B\u8F7D\u6D41\u91CF\u62A5\u8868\u5931\u8D25----\u9519\u8BEF\u4FE1\u606F\uFF1A".concat(Object(util["u" /* isError */])(e));
                    log["a" /* default */].setLog(task.msg);
                    resolve(false);
                  });

                case 4:
                  file = _context10.sent;

                  if (!file) {
                    _context10.next = 22;
                    break;
                  }

                  _context10.prev = 6;
                  log["a" /* default */].setLog('流量报表下载成功');
                  arr = task.report_custom_date_end.split('-');
                  binary = {
                    file: new File([file], "BusinessReport-".concat(arr[1] + '-' + arr[2] + '-' + arr[0], ".csv"))
                  };
                  task.status = 4;
                  task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
                  resolve(binary);
                  return _context10.abrupt("return");

                case 16:
                  _context10.prev = 16;
                  _context10.t0 = _context10["catch"](6);
                  task.msg = "\u5185\u90E8\u9519\u8BEF[".concat(Object(util["u" /* isError */])(_context10.t0), "]");
                  log["a" /* default */].setLog(task.msg);

                case 20:
                  _context10.next = 24;
                  break;

                case 22:
                  // 下载失败
                  task.msg = '下载的报表数据为空';
                  log["a" /* default */].setLog(task.msg);

                case 24:
                  _context10.next = 28;
                  break;

                case 26:
                  task.msg = '获取流量报表下载链接失败';
                  log["a" /* default */].setLog(task.msg);

                case 28:
                  task.status = 5;
                  resolve(false);

                case 30:
                case "end":
                  return _context10.stop();
              }
            }
          }, _callee10, null, [[6, 16]]);
        }));

        return function (_x) {
          return _ref3.apply(this, arguments);
        };
      }()).catch(function (e) {
        if (e && "".concat(e).indexOf('403') !== -1) {
          task.status = 12;
          task.msg = '流量数据报表页面无访问权限';
        } else {
          task.status = 13;
          task.msg = "[\u5F02\u5E38]\u6D41\u91CF\u62A5\u8868\u4E0B\u8F7D\u63A5\u53E3\u8BBF\u95EE\u5931\u8D25----\u9519\u8BEF\u4FE1\u606F:".concat(Object(util["u" /* isError */])(e));
          log["a" /* default */].setLog(task.msg);
        }

        resolve(false);
      });
    });
  },
  getPaymentsReprot: function getPaymentsReprot(task) {
    var _this9 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee11() {
      var checkTransaction, csrf_token, result, res, _result;

      return amazon_regeneratorRuntime().wrap(function _callee11$(_context11) {
        while (1) {
          switch (_context11.prev = _context11.next) {
            case 0:
              _context11.next = 2;
              return _this9.checkTransactionType(task);

            case 2:
              checkTransaction = _context11.sent;

              if (checkTransaction) {
                _context11.next = 5;
                break;
              }

              return _context11.abrupt("return", false);

            case 5:
              _context11.next = 7;
              return _this9.generateFinanceCsrfToken(task);

            case 7:
              csrf_token = _context11.sent;

              if (csrf_token) {
                _context11.next = 12;
                break;
              }

              task.status = 13;
              task.msg = 'CsrfToken获取失败';
              return _context11.abrupt("return", false);

            case 12:
              task.csrf_token = csrf_token; // log.setLog(`当前任务ID:${task.task_id} - 获取到财务任务csrf_token为${csrf_token}`)
              // 先判断是否有生成过

              if (!(task.status == 8)) {
                _context11.next = 16;
                break;
              }

              _context11.next = 40;
              break;

            case 16:
              if (![1, 2, 4, 5, 6, 7, 10].includes(task.status)) {
                _context11.next = 24;
                break;
              }

              _context11.next = 19;
              return _this9.findPaymentsReport(task);

            case 19:
              result = _context11.sent;

              if (!result) {
                _context11.next = 22;
                break;
              }

              return _context11.abrupt("return", result);

            case 22:
              _context11.next = 40;
              break;

            case 24:
              // 没有匹配的数据，准备生成
              task.report_request_time = Date.now();
              _context11.next = 27;
              return _this9.generateReport(task);

            case 27:
              res = _context11.sent;

              if (!(res && res.status == 'SUCCESS')) {
                _context11.next = 37;
                break;
              }

              task.status = 6;
              _context11.next = 32;
              return _this9.findPaymentsReport(task);

            case 32:
              _result = _context11.sent;

              if (!_result) {
                _context11.next = 35;
                break;
              }

              return _context11.abrupt("return", _result);

            case 35:
              _context11.next = 40;
              break;

            case 37:
              log["a" /* default */].setLog('任务生成失败');
              task.status = 3;
              task.msg = '任务生成失败';

            case 40:
              return _context11.abrupt("return", null);

            case 41:
            case "end":
              return _context11.stop();
          }
        }
      }, _callee11);
    }))();
  },
  checkTransactionType: function checkTransactionType(task) {
    var _this10 = this;

    var url = this.host + ['/payments/reports/custom/request/?tbla_daterangereportstable=sort:{"sortOrder":"DESCENDING"};search:undefined;pagination:1;', // `/payments/reports/custom/request/?accountType=${task.report_type === 15 || task.report_type === 16 ? 'NODAL' : 'PAYABLE'}&tbla_daterangereportstable=sort:{"sortOrder":"DESCENDING"};search:undefined;pagination:1;`
    "/payments/reports/payment-account-type-redirect?linkType=DateRangeReportsHorizonteLinkType&accountTyp=".concat(task.report_type === 15 || task.report_type === 16 ? 'NODAL' : 'PAYABLE', "&marketplaceId=").concat(this.MarketplaceObj[task.market_code])][task.market_code === 'IN' ? 1 : 0];
    return new Promise(function (resolve) {
      axios_default()({
        method: 'GET',
        url: url,
        headers: {
          'x-requested-with': 'XMLHttpRequest',
          'anti-csrftoken-a2z': task.csrf_token
        },
        adapter: utils_fetch["b" /* default */]
      }).then( /*#__PURE__*/function () {
        var _ref4 = amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee12(res) {
          var $, toggle_eles, index, toUrl, result, _toUrl, _result2;

          return amazon_regeneratorRuntime().wrap(function _callee12$(_context12) {
            while (1) {
              switch (_context12.prev = _context12.next) {
                case 0:
                  $ = cheerio_default.a.load(res.data);
                  toggle_eles = $('div#PaymentsHeader .a-button-toggle');

                  if (!(toggle_eles.length > 1)) {
                    _context12.next = 26;
                    break;
                  }

                  log["a" /* default */].setLog('存在Invoiced Orders');
                  index = 0;
                  toggle_eles.each(function (i) {
                    if (toggle_eles.eq(i).attr('aria-checked') == 'true') {
                      index = i;
                    }
                  });
                  log["a" /* default */].setLog("\u5F53\u524D\u9009\u4E2D\u4E3A ".concat(index, "  \uFF081 \u4E3AInvoiced Orders 0\u4E3AStandard Orders\uFF09"));

                  if (!(index === 0)) {
                    _context12.next = 15;
                    break;
                  }

                  if (!{
                    13: 1,
                    14: 1,
                    17: 1,
                    18: 1
                  }[task.report_type]) {
                    _context12.next = 15;
                    break;
                  }

                  log["a" /* default */].setLog("\u5207\u6362Invoiced Orders");
                  toUrl = toggle_eles.eq(1).find('a').attr('href');
                  _context12.next = 13;
                  return _this10.changeTransactionType(_this10.host + toUrl, task);

                case 13:
                  result = _context12.sent;
                  resolve(result);

                case 15:
                  if (!(index === 1)) {
                    _context12.next = 23;
                    break;
                  }

                  if (!{
                    11: 1,
                    12: 1,
                    15: 1,
                    16: 1
                  }[task.report_type]) {
                    _context12.next = 23;
                    break;
                  }

                  log["a" /* default */].setLog("\u5207\u6362Standard Orders");
                  _toUrl = toggle_eles.eq(0).find('a').attr('href');
                  _context12.next = 21;
                  return _this10.changeTransactionType(_this10.host + _toUrl, task);

                case 21:
                  _result2 = _context12.sent;
                  resolve(_result2);

                case 23:
                  log["a" /* default */].setLog("\u4E0D\u9700\u8981\u5207\u6362Orders\u7C7B\u578B");
                  _context12.next = 28;
                  break;

                case 26:
                  log["a" /* default */].setLog('不存在Invoiced Orders');

                  if (task.report_type === 13 || task.report_type === 14) {
                    // 类型不存在，隐藏该任务
                    task.hide = true;
                    task.status = 8;
                    task.msg = ' 类型不存在';
                    resolve(false);
                  }

                case 28:
                  resolve(true);

                case 29:
                case "end":
                  return _context12.stop();
              }
            }
          }, _callee12);
        }));

        return function (_x2) {
          return _ref4.apply(this, arguments);
        };
      }()).catch(function (e) {
        var auth = "".concat(e).indexOf('403') !== -1;
        task.status = auth ? 12 : 13;
        task.msg = "[".concat(auth ? '无权限' : '异常', "]\u8BBF\u95EE\u8D22\u52A1\u9875\u9762\u5931\u8D25----\u9519\u8BEF\u4FE1\u606F:").concat(JSON.stringify(e));
        log["a" /* default */].setLog(task.msg);
        resolve(false);
      });
    });
  },
  changeTransactionType: function changeTransactionType(url, task) {
    return new Promise(function (resolve) {
      axios_default()({
        url: url,
        method: 'GET',
        adapter: utils_fetch["b" /* default */]
      }).then(function () {
        resolve(true);
      }).catch(function (e) {
        // 先用页面异常状态
        task.status = 13;
        task.msg = "\u7C7B\u578B\u5207\u6362\u5931\u8D25----".concat(JSON.stringify(e));
        resolve(false);
      });
    });
  },
  findPaymentsReport: function findPaymentsReport(task) {
    var _this11 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee15() {
      var checkFlag, checkTransaction;
      return amazon_regeneratorRuntime().wrap(function _callee15$(_context15) {
        while (1) {
          switch (_context15.prev = _context15.next) {
            case 0:
              chrome.alarms.clear('retryFindPaymentsReport');
              log["a" /* default */].setLog('匹配财务报表前进行站点检测');
              _context15.next = 4;
              return _this11.onlyCheckSite(task.market_code, task);

            case 4:
              checkFlag = _context15.sent;

              if (checkFlag) {
                _context15.next = 8;
                break;
              }

              log["a" /* default */].setLog('匹配财务报表时站点不一致，终止此任务');
              return _context15.abrupt("return", false);

            case 8:
              _context15.next = 10;
              return _this11.checkTransactionType(task);

            case 10:
              checkTransaction = _context15.sent;

              if (checkTransaction) {
                _context15.next = 13;
                break;
              }

              return _context15.abrupt("return", false);

            case 13:
              if (task.run_time) {
                task.run_time++;
              } else {
                task.run_time = 1;
              }

              return _context15.abrupt("return", new Promise(function (resolve) {
                axios_default()({
                  method: 'POST',
                  data: {
                    action: 'RECORDS_PER_PAGE_CHANGED',
                    clientState: {},
                    filters: [],
                    pageNumber: 1,
                    recordsPerPage: 50,
                    sortOrder: 'DESCENDING',
                    tableId: 'daterangereportstable'
                  },
                  url: _this11.host + '/payments/reports/custom/request/refresh/ref=bb_tabela_cont_tabela',
                  headers: {
                    'x-requested-with': 'XMLHttpRequest',
                    'anti-csrftoken-a2z': task.csrf_token
                  },
                  adapter: utils_fetch["b" /* default */] // '/payments/reports/custom/request/?tbla_daterangereportstable=sort:{"sortOrder":"DESCENDING"};search:undefined;pagination:1;'

                }).then( /*#__PURE__*/function () {
                  var _ref5 = amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee14(res) {
                    var checkTransaction, $, tableList, find_ele, match, _checkFlag, url, _match, fileName;

                    return amazon_regeneratorRuntime().wrap(function _callee14$(_context14) {
                      while (1) {
                        switch (_context14.prev = _context14.next) {
                          case 0:
                            _context14.next = 2;
                            return _this11.checkTransactionType(task);

                          case 2:
                            checkTransaction = _context14.sent;

                            if (!checkTransaction) {
                              resolve(false);
                            }

                            $ = cheerio_default.a.load(res.data);
                            tableList = $($('#itemRecords script').html());
                            find_ele = null; // 正则匹配

                            match = _this11.getMatchByTask(task);
                            tableList.each(function (i) {
                              if (tableList.eq(i).html() && new RegExp(match).test(tableList.eq(i).find('td:nth-child(1)').text().replace(/[\r\n]/g, ''))) {
                                find_ele = tableList.eq(i);
                              }
                            });

                            if (!find_ele) {
                              _context14.next = 39;
                              break;
                            }

                            if (!find_ele.find('td:last-child').html().includes('Download')) {
                              _context14.next = 20;
                              break;
                            }

                            log["a" /* default */].setLog('匹配到报表，准备下载');
                            log["a" /* default */].setLog('下载财务报表前进行站点检测'); // 文件已生成

                            task.status = 2;
                            _context14.next = 16;
                            return _this11.onlyCheckSite(task.market_code, task);

                          case 16:
                            _checkFlag = _context14.sent;

                            if (_checkFlag) {
                              url = find_ele.find('a').attr('href');
                              _match = url.match(new RegExp('&fileName=(.*)&'));
                              fileName = _match.length > 1 && _match[1];
                              task.report_create_time = Date.now();

                              _this11.getReport(_this11.host + url, {}, fileName).then(function (res) {
                                log["a" /* default */].setLog('下载成功');
                                task.status = 4;
                                task.report_get_date = moment_default()().format('YYYY-MM-DD HH:mm:ss');
                                resolve(res);
                              }).catch(function (e) {
                                task.status = 5;
                                task.msg = "[\u5F02\u5E38]\u4E0B\u8F7D\u8D22\u52A1\u62A5\u8868\u5931\u8D25----\u9519\u8BEF\u4FE1\u606F: ".concat(JSON.stringify(e));
                                log["a" /* default */].setLog(task.msg);
                                resolve(false);
                              });
                            } else {
                              log["a" /* default */].setLog('下载财务报表时站点不一致，终止此任务');
                              resolve(false);
                            }

                            _context14.next = 37;
                            break;

                          case 20:
                            if (!find_ele.find('td:last-child').html().includes('Refresh')) {
                              _context14.next = 33;
                              break;
                            }

                            if (!(task.run_time >= 5)) {
                              _context14.next = 29;
                              break;
                            }

                            log["a" /* default */].setLog("\u6587\u4EF6\u6B63\u5728\u751F\u6210\uFF0C\u8D85\u8FC7\u6700\u5927\u91CD\u8BD5\u6B21\u6570\uFF0C\u9000\u51FA\u6267\u884C\u4E0B\u4E00\u4EFB\u52A1", new Date());
                            log["a" /* default */].setLog('文件正在生成，超过最大重试次数，退出执行下一任务');
                            task.run_time = 0;
                            task.msg = "\u6587\u4EF6\u6B63\u5728\u751F\u6210\u4E2D";
                            task.status = 6;
                            resolve(false);
                            return _context14.abrupt("return");

                          case 29:
                            log["a" /* default */].setLog("\u6587\u4EF6\u6B63\u5728\u751F\u6210\uFF0C30s\u540E\u91CD\u8BD5\uFF0C\u5F53\u524D\u91CD\u8BD5\u6B21\u6570".concat(task.run_time), new Date());
                            util["b" /* alarms */].setTimeout( /*#__PURE__*/amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee13() {
                              var result;
                              return amazon_regeneratorRuntime().wrap(function _callee13$(_context13) {
                                while (1) {
                                  switch (_context13.prev = _context13.next) {
                                    case 0:
                                      _context13.next = 2;
                                      return _this11.findPaymentsReport(task);

                                    case 2:
                                      result = _context13.sent;
                                      resolve(result);

                                    case 4:
                                    case "end":
                                      return _context13.stop();
                                  }
                                }
                              }, _callee13);
                            })), 'retryFindPaymentsReport', 30 * 1000);
                            _context14.next = 37;
                            break;

                          case 33:
                            task.status = 10;
                            task.msg = '[异常]匹配不到报表，该月报表可能计划中';
                            log["a" /* default */].setLog(task.msg);
                            resolve(false);

                          case 37:
                            _context14.next = 43;
                            break;

                          case 39:
                            task.status = 10;
                            task.msg = '[异常]匹配不到报表，亚马逊规则可能有改变，请核实。';
                            log["a" /* default */].report(task.msg, 'error', task.task_id);
                            resolve(false);

                          case 43:
                          case "end":
                            return _context14.stop();
                        }
                      }
                    }, _callee14);
                  }));

                  return function (_x3) {
                    return _ref5.apply(this, arguments);
                  };
                }()).catch(function (e) {
                  task.status = 13;
                  task.msg = "\u8D22\u52A1\u62A5\u8868\u9875\u9762\u8BBF\u95EE\u5931\u8D25----\u9519\u8BEF\u4FE1\u606F".concat(JSON.stringify(e));
                  log["a" /* default */].setLog(task.msg);
                  resolve(false);
                });
              }));

            case 15:
            case "end":
              return _context15.stop();
          }
        }
      }, _callee15);
    }))();
  },
  generateReport: function generateReport(task) {
    var _this12 = this;

    return new Promise(function (resolve) {
      var reportType = {
        11: 1,
        13: 1,
        15: 1,
        17: 1
      }[task.report_type] ? 'Transaction' : 'Summary';
      var data = {};

      if (task.report_date_type == 'custom') {
        data = {
          reportType: reportType,
          timeRangeType: 'Custom',
          startDate: _this12.tranferDate(task.report_custom_date_start, 1, task.market_code),
          endDate: _this12.tranferDate(task.report_custom_date_end, 1, task.market_code)
        };
      } else {
        data = {
          reportType: reportType,
          timeRangeType: 'Monthly',
          month: task.report_date_month.split('-')[1],
          year: task.report_date_month.split('-')[0]
        };
      } // 印度站需要加多个字段


      if (task.market_code === 'IN') data.selectedAccountTypeDropdownValue = 'PAYABLE';
      axios_default()({
        method: 'post',
        url: _this12.host + '/payments/reports/custom/submit/generateReports',
        data: data,
        headers: {
          'x-requested-with': 'XMLHttpRequest',
          'anti-csrftoken-a2z': task.csrf_token
        },
        adapter: utils_fetch["b" /* default */]
      }).then(function (res) {
        resolve(res.data);
      }).catch(function (e) {
        log["a" /* default */].setLog("[\u5F02\u5E38]\u751F\u6210\u8D22\u52A1\u62A5\u8868\u5F02\u5E38\uFF0C\u8BF7\u6838\u5B9E----\u9519\u8BEF\u4FE1\u606F".concat(JSON.stringify(e)), task.task_id);
        resolve(false);
      });
    });
  },
  getMatchByTask: function getMatchByTask(task) {
    var match = '';
    var reprot_type = {
      11: 1,
      13: 1,
      15: 1,
      17: 1
    }[task.report_type] ? 'Transaction' : 'Summary';
    var startDate = moment_default()(task.report_custom_date_start);
    var endDate = moment_default()(task.report_custom_date_end); // 如果墨西哥下发的是custom，需要做特殊处理，endDate为startDate下月一号（不知道傻逼亚马逊什么时候修复这个问题）

    if (task.market_code === 'MX' && task.report_date_type === 'custom') {
      var date = new Date(task.report_custom_date_end);
      var mxEndDate = moment_default()("".concat(date.getFullYear(), "-").concat(date.getMonth() + 2, "-01"));
      match = "Custom ".concat(reprot_type, " Report for ").concat(startDate.format('MMM D, YYYY'), " .+? - ").concat(mxEndDate.format('MMM D, YYYY'), " .+?");
      return match;
    }

    if (task.market_code === 'AU') {
      if (task.report_date_type === 'custom') {
        match = "Custom ".concat(reprot_type, " Report for ").concat(startDate.format('MMM.? D, YYYY'), " .+? - ").concat(endDate.format('MMM.? D, YYYY'), " .+?");
      } else {
        match = "Monthly ".concat(reprot_type, " Report for ").concat(startDate.format('MMM.? D, YYYY'), " .+? - ").concat(startDate.endOf('month').format('MMM.? D, YYYY'), " .+?");
      }
    } else {
      if (task.report_date_type === 'custom') {
        match = "Custom ".concat(reprot_type, " Report for ").concat(startDate.format('MMM D, YYYY'), " .+? - ").concat(endDate.format('MMM D, YYYY'), " .+?");
      } else {
        match = "Monthly ".concat(reprot_type, " Report for ").concat(startDate.format('MMM D, YYYY'), " .+? - ").concat(startDate.endOf('month').format('MMM D, YYYY'), " .+?");
      }
    }

    return match;
  },
  getTaskFile: function getTaskFile(task) {
    task.run_start_time = Date.now();

    if (task.report_type == 1 || task.report_type == 2) {
      return this.getBusinessReport(task);
    } // if ([11, 12, 13, 14, 15, 16, 17, 18].includes(task.report_type)) {
    //   return this.getPaymentsReprot(task)
    // }


    if (task.report_type == 21) {
      return this.screenShot(task);
    }
  },
  screenShot: function screenShot(task) {
    var _this13 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee16() {
      var zip, checkFlag, homeMsg, homeRes, transferMsg, balance, transferRes, file;
      return amazon_regeneratorRuntime().wrap(function _callee16$(_context16) {
        while (1) {
          switch (_context16.prev = _context16.next) {
            case 0:
              task.report_request_time = Date.now();
              zip = new jszip_min_default.a();
              log["a" /* default */].setLog('财务报表截图前进行站点检测');
              _context16.next = 5;
              return _this13.onlyCheckSite(task.market_code, task);

            case 5:
              checkFlag = _context16.sent;

              if (checkFlag) {
                _context16.next = 9;
                break;
              }

              log["a" /* default */].setLog('财务报表截图前站点不一致，终止此任务');
              return _context16.abrupt("return", false);

            case 9:
              _context16.next = 11;
              return screenshot_screenshot(_this13.host + '/home', _this13.waitTabLadComplete('home')).catch(function (e) {
                homeMsg = "[\u7ED3\u8D26\u622A\u56FEhome]".concat(e);
              });

            case 11:
              homeRes = _context16.sent;

              if (!homeRes) {
                _context16.next = 16;
                break;
              }

              zip.file('balance.jpg', homeRes.result.replace(/^data:image\/(png|jpg|jpeg);base64,/, ''), {
                base64: true
              });
              _context16.next = 19;
              break;

            case 16:
              task.status = 5;
              task.msg = homeMsg || '[结账截图home]失败';
              return _context16.abrupt("return", false);

            case 19:
              balance = {};
              _context16.next = 22;
              return screenshot_screenshot(_this13.host + '/payments/dashboard/index.html?_encoding=UTF8&ref_=xx_payments_dnav_xx', _this13.waitTabLadComplete('finance')).catch(function (e) {
                transferMsg = "[\u7ED3\u8D26\u622A\u56FEtransfer]".concat(e);
              });

            case 22:
              transferRes = _context16.sent;

              if (!transferRes) {
                _context16.next = 28;
                break;
              }

              zip.file('transfer.jpg', transferRes.result.replace(/^data:image\/(png|jpg|jpeg);base64,/, ''), {
                base64: true
              }); // 获取balance

              balance = transferRes.waitRes;
              _context16.next = 31;
              break;

            case 28:
              task.status = 5;
              task.msg = transferMsg || '[结账截图transfer]失败';
              return _context16.abrupt("return", false);

            case 31:
              // if (!balance) {
              //   task.status = 5
              //   task.msg = '获取balance失败'
              //   return false
              // }
              task.report_create_time = Date.now();
              _context16.next = 34;
              return zip.generateAsync({
                type: 'blob',
                compression: "DEFLATE",
                // STORE：默认不压缩 DEFLATE：需要压缩
                compressionOptions: {
                  level: 1 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

                }
              });

            case 34:
              file = _context16.sent;
              return _context16.abrupt("return", file ? {
                file: new File([file], 'screen.zip'),
                balance: balance
              } : false);

            case 36:
            case "end":
              return _context16.stop();
          }
        }
      }, _callee16);
    }))();
  },
  // 等待页面加载完成
  waitTabLadComplete: function waitTabLadComplete(type) {
    return function (tabId) {
      return new Promise(function (resolve) {
        var port = chrome.tabs.connect(tabId, {
          name: 'screen-connect'
        });
        port.postMessage({
          cmd: 'screen',
          type: type
        });
        port.onMessage.addListener(function (balance) {
          resolve(balance);
        });
      });
    };
  },
  getfileByTabId: function getfileByTabId(tabId) {
    var _arguments = arguments,
        _this14 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee18() {
      var count, type;
      return amazon_regeneratorRuntime().wrap(function _callee18$(_context18) {
        while (1) {
          switch (_context18.prev = _context18.next) {
            case 0:
              count = _arguments.length > 1 && _arguments[1] !== undefined ? _arguments[1] : 0;
              type = _arguments.length > 2 ? _arguments[2] : undefined;
              return _context18.abrupt("return", new Promise(function (resolve) {
                util["b" /* alarms */].setTimeout(function () {
                  try {
                    chrome.tabs.get(tabId, /*#__PURE__*/function () {
                      var _ref7 = amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee17(tab) {
                        var msg, port;
                        return amazon_regeneratorRuntime().wrap(function _callee17$(_context17) {
                          while (1) {
                            switch (_context17.prev = _context17.next) {
                              case 0:
                                if (tab) {
                                  _context17.next = 5;
                                  break;
                                }

                                msg = "[\u7ED3\u8D26\u622A\u56FE]".concat(type, "\u9875\u9762\u53EF\u80FD\u5DF2\u88AB\u5173\u95ED1");
                                log["a" /* default */].setLog(msg);
                                resolve(msg);
                                return _context17.abrupt("return");

                              case 5:
                                if (!(tab.status == 'loading')) {
                                  _context17.next = 16;
                                  break;
                                }

                                _context17.t0 = resolve;

                                if (!(count < 15)) {
                                  _context17.next = 13;
                                  break;
                                }

                                _context17.next = 10;
                                return _this14.getfileByTabId(tabId, ++count, type);

                              case 10:
                                _context17.t1 = _context17.sent;
                                _context17.next = 14;
                                break;

                              case 13:
                                _context17.t1 = "[\u7ED3\u8D26\u622A\u56FE]".concat(type, "\u9875\u9762\u53EF\u80FD\u5DF2\u88AB\u5173\u95ED2");

                              case 14:
                                _context17.t2 = _context17.t1;
                                (0, _context17.t0)(_context17.t2);

                              case 16:
                                if (tab.status == 'complete') {
                                  /** 如果用户在这一步手动关掉页面，Promise状态就会一直padding，需要给个时限，20秒 */
                                  util["b" /* alarms */].setTimeout(function () {
                                    chrome.tabs.remove(tab.id);
                                    var msg = "[\u7ED3\u8D26\u622A\u56FE]".concat(type, "\u9875\u9762\u53EF\u80FD\u5DF2\u88AB\u5173\u95ED3");
                                    resolve(msg);
                                    log["a" /* default */].setLog(msg);
                                  }, 'screenShotRemovePage', 40 * 1000);
                                  port = chrome.tabs.connect(tab.id, {
                                    name: 'screen-connect'
                                  });
                                  port.postMessage({
                                    cmd: 'screen',
                                    type: type
                                  });
                                  port.onMessage.addListener(function (_ref8) {
                                    var dataurl = _ref8.dataurl,
                                        balance = _ref8.balance;
                                    chrome.alarms.clear('screenShotRemovePage');
                                    chrome.tabs.remove(tab.id);
                                    resolve(dataurl ? {
                                      dataurl: dataurl && dataurl.replace(/^data:image\/(png|jpg);base64,/, ''),
                                      balance: balance
                                    } : '截图失败');
                                  });
                                }

                              case 17:
                              case "end":
                                return _context17.stop();
                            }
                          }
                        }, _callee17);
                      }));

                      return function (_x4) {
                        return _ref7.apply(this, arguments);
                      };
                    }());
                  } catch (error) {
                    log["a" /* default */].setLog('error:页面异常！');
                    resolve(false);
                  }
                }, 'getScreenShot', 1000);
              }));

            case 3:
            case "end":
              return _context18.stop();
          }
        }
      }, _callee18);
    }))();
  },
  getReport: function getReport(url, params, fileName) {
    var name = fileName.replace(/\//g, '-') || 'test.csv';
    return new Promise(function (resolve, reject) {
      axios_default()({
        method: 'GET',
        url: url,
        responseType: 'blob',
        params: params,
        adapter: utils_fetch["b" /* default */]
      }).then(function (res) {
        log["a" /* default */].setLog('下载的财务报表', res);

        if (!res.data || res.data.type.includes('html')) {
          log["a" /* default */].setLog('file', res.data && res.data.type);
          reject('下载失败，', res.data && "".concat(url, "\u8DF3\u8F6C\u5230\u767B\u5F55\u9875"));
        } else {
          var oFile = new File([res.data], name); // 文件压缩

          log["a" /* default */].setLog('源文件大小', "".concat(oFile.size, "b"));
          var zip = new jszip_min_default.a();
          zip.file(name, res.data, {
            binary: true
          });
          zip.generateAsync({
            type: "nodebuffer",
            compression: "DEFLATE",
            // STORE：默认不压缩 DEFLATE：需要压缩
            compressionOptions: {
              level: 9 // 压缩等级1~9    1压缩速度最快，9最优压缩方式

            }
          }).then(function (res) {
            var cFile = new File([res], "".concat(name.split('.')[0], ".zip"));
            resolve({
              file: cFile
            });
            log["a" /* default */].setLog('压缩后文件大小', "".concat(cFile.size, "b"), cFile.name);
          }).catch(function (e) {
            log["a" /* default */].setLog('财务报表压缩失败', e);
            resolve({
              file: oFile
            });
          });
        }
      }).catch(function (e) {
        log["a" /* default */].setLog(e);
        reject(e);
      });
    });
  },
  getPostReport: function getPostReport(url, data, fileName) {
    var name = fileName || 'test.csv';
    var params = Object.entries(data).map(function (x) {
      return "".concat(encodeURIComponent(x[0]), "=").concat(encodeURIComponent(x[1]));
    }).join('&');
    return new Promise(function (resolve, reject) {
      axios_default()({
        method: 'POST',
        url: url,
        responseType: 'blob',
        headers: {
          'Content-Type': 'application/x-www-form-urlencoded'
        },
        data: params,
        adapter: utils_fetch["b" /* default */]
      }).then(function (res) {
        if (res.data && res.data.type.includes('html')) {
          log["a" /* default */].setLog('file', res.data.type);
          reject("\u4E0B\u8F7D\u5931\u8D25\uFF0C".concat(url, "\u8DF3\u8F6C\u5230\u767B\u5F55\u9875"));
        } else {
          resolve({
            file: new File([res.data], name)
          });
        }
      }).catch(function (e) {
        log["a" /* default */].setLog(e);
        reject(e);
      });
    });
  },
  getRegion: function getRegion(site) {
    var obj = {
      US: 'US',
      MX: 'US',
      CA: 'US',
      BR: 'US',
      JP: 'JP',
      AU: 'AU',
      IN: 'IN',
      UK: 'UK',
      GB: 'UK',
      DE: 'UK',
      FR: 'UK',
      IT: 'UK',
      ES: 'UK',
      NL: 'UK',
      SE: 'UK',
      PL: 'UK',
      AE: 'UK',
      SA: 'UK',
      SG: 'SG',
      TR: 'UK',
      BE: 'UK',
      IE: 'UK',
      EG: 'UK'
    };
    return obj[site] || site;
  },
  onlyCheckSite: function onlyCheckSite(needSite, task) {
    var _this15 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee20() {
      var marketplace;
      return amazon_regeneratorRuntime().wrap(function _callee20$(_context20) {
        while (1) {
          switch (_context20.prev = _context20.next) {
            case 0:
              marketplace = _this15.MarketplaceObj[needSite];

              if (!(!marketplace || !task)) {
                _context20.next = 3;
                break;
              }

              return _context20.abrupt("return", false);

            case 3:
              return _context20.abrupt("return", new Promise( /*#__PURE__*/function () {
                var _ref9 = amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee19(resolve) {
                  var flag;
                  return amazon_regeneratorRuntime().wrap(function _callee19$(_context19) {
                    while (1) {
                      switch (_context19.prev = _context19.next) {
                        case 0:
                          _context19.next = 2;
                          return _this15.getUrl(_this15.host + '/home', marketplace, _this15.host, task);

                        case 2:
                          flag = _context19.sent;
                          _context19.next = 5;
                          return Object(util["J" /* suspend */])();

                        case 5:
                          if (!_context19.sent) {
                            _context19.next = 9;
                            break;
                          }

                          resolve(false);
                          _context19.next = 10;
                          break;

                        case 9:
                          if (flag === -999) {
                            task.status = 11;
                            task.msg = "[\u7AD9\u70B9\u68C0\u6D4B]\u5F53\u524D\u7AD9\u70B9".concat(_this15.siteMap[_this15.host], ",").concat(_this15.host, "  \u9700\u8981\u7684\u7AD9\u70B9").concat(needSite);
                            log["a" /* default */].setLog(task.msg);
                            resolve(false);
                          } else if (flag) {
                            resolve(true);
                          } else {
                            task.status = 13;
                            task.msg = "[\u7AD9\u70B9\u68C0\u6D4B]".concat(_this15.host, "\u533A\u57DF\u7AD9\u70B9\u8BBF\u95EE\u5F02\u5E38[onlyCheckSite]");
                            log["a" /* default */].setLog(task.msg);
                            resolve(false);
                          }

                        case 10:
                        case "end":
                          return _context19.stop();
                      }
                    }
                  }, _callee19);
                }));

                return function (_x5) {
                  return _ref9.apply(this, arguments);
                };
              }()).catch(function (e) {
                task.status = 11;
                task.msg = "[\u7AD9\u70B9\u68C0\u6D4B]onlyCheckSite\u6267\u884C\u5931\u8D25----".concat(Object(util["u" /* isError */])(e));
                log["a" /* default */].setLog(task.msg);
                return false;
              }));

            case 4:
            case "end":
              return _context20.stop();
          }
        }
      }, _callee20);
    }))();
  },
  // 站点在线时，切换离线任务状态
  changeOfflineTask: function changeOfflineTask() {
    // 切换离线站点的状态
    var _iterator4 = _createForOfIteratorHelper(data_task["b" /* default */].taskList),
        _step4;

    try {
      for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
        var i = _step4.value;
        var taskSite = this.getRegion(i.market_code);

        if (this.hostObj[taskSite] && i.status === 11) {
          i.status = 0;
          i.isRun = false;
          this.logoutSite[taskSite] = false;
        }
      }
    } catch (err) {
      _iterator4.e(err);
    } finally {
      _iterator4.f();
    }
  },
  // 在线状态切换-离线icon
  changeOfflineIcon: function changeOfflineIcon() {
    var status = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;

    // 在线状态发送给popup
    // chrome.runtime && chrome.runtime.sendMessage({ logoutSite: this.logoutSite })
    if (status) {
      Object(util["G" /* setBadge */])(1, '离线', '#F6A934');
      return;
    }

    for (var i in this.logoutSite) {
      if (this.logoutSite[i]) {
        Object(util["G" /* setBadge */])(1, '离线', '#F6A934');
        return;
      }
    } // 隐藏离线徽章


    Object(util["G" /* setBadge */])(1);
  },

  /**
   * 检测站点并切换
   */
  checkSite: function checkSite(needSite, task, changeLanguage) {
    var _this16 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee21() {
      var _i, _Object$values, val, find, res;

      return amazon_regeneratorRuntime().wrap(function _callee21$(_context21) {
        while (1) {
          switch (_context21.prev = _context21.next) {
            case 0:
              _i = 0, _Object$values = Object.values(_this16.onlineSite);

            case 1:
              if (!(_i < _Object$values.length)) {
                _context21.next = 44;
                break;
              }

              val = _Object$values[_i];
              find = val.find(function (siteObj) {
                return siteObj.sellerId == task.seller_id && siteObj.site.toLowerCase() == needSite.toLowerCase();
              }); // 遍历检测已登录域名并切换站点

              if (!find) {
                _context21.next = 41;
                break;
              }

              if (!_this16.isVc) {
                _context21.next = 11;
                break;
              }

              _context21.next = 8;
              return _this16.vcChangeSite(find, task);

            case 8:
              _context21.t0 = _context21.sent;
              _context21.next = 14;
              break;

            case 11:
              _context21.next = 13;
              return _this16.changeSite(find, task);

            case 13:
              _context21.t0 = _context21.sent;

            case 14:
              res = _context21.t0;

              if (!(res === -999)) {
                _context21.next = 22;
                break;
              }

              _this16.logoutSite[find.region] = true;

              _this16.changeOfflineIcon(1);

              task.status = 11;
              task.msg = "".concat(needSite, "\u7AD9\u70B9\u5DF2\u6389\u7EBF");
              log["a" /* default */].setLog("".concat(needSite, "\u7AD9\u70B9\u5DF2\u6389\u7EBF"));
              return _context21.abrupt("return", false);

            case 22:
              _this16.logoutSite[find.region] = false;

              _this16.changeOfflineIcon();

              if (res) {
                _context21.next = 28;
                break;
              }

              task.status = 13;
              task.msg = "".concat(find.region, "\u533A\u57DF\u7AD9\u70B9\u8BBF\u95EE\u5F02\u5E38[changeSite]");
              return _context21.abrupt("return", false);

            case 28:
              // 站点切换成功，显示当前站点徽章
              Object(util["G" /* setBadge */])(10, find.site, '#67c23a');

              if (!changeLanguage) {
                _context21.next = 40;
                break;
              }

              if (!_this16.isVc) {
                _context21.next = 36;
                break;
              }

              _context21.next = 33;
              return _this16.vcCheckLanguage(needSite, task);

            case 33:
              _context21.t1 = _context21.sent;
              _context21.next = 39;
              break;

            case 36:
              _context21.next = 38;
              return _this16.checkLanguage(needSite, task);

            case 38:
              _context21.t1 = _context21.sent;

            case 39:
              return _context21.abrupt("return", _context21.t1);

            case 40:
              return _context21.abrupt("return", true);

            case 41:
              _i++;
              _context21.next = 1;
              break;

            case 44:
              // 没有该任务的站点，删除
              task.isDelete = true;
              task.status = 11;
              task.msg = "[\u6CE8\u610F]\u8BE5\u5E97\u94FA\u4E0B\u4E0D\u5B58\u5728".concat(needSite, "\u7AD9\u70B9\u6216\u7AD9\u70B9\u5207\u6362\u5931\u8D25");
              log["a" /* default */].setLog(task.msg);
              return _context21.abrupt("return", false);

            case 49:
            case "end":
              return _context21.stop();
          }
        }
      }, _callee21);
    }))();
  },
  // 切换站点
  changeSite: function changeSite(find, task) {
    var _this17 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee22() {
      var region, loggedUrl, urlArr, count, flag, _iterator5, _step5, url, _flag;

      return amazon_regeneratorRuntime().wrap(function _callee22$(_context22) {
        while (1) {
          switch (_context22.prev = _context22.next) {
            case 0:
              // 先检测被缓存的已登录域名
              region = find.region;
              loggedUrl = _this17.hostObj[region];
              urlArr = _this17.siteToUrlMap[region];
              count = 0;

              if (!loggedUrl) {
                _context22.next = 12;
                break;
              }

              _context22.next = 7;
              return Object(util["J" /* suspend */])();

            case 7:
              if (!_context22.sent) {
                _context22.next = 9;
                break;
              }

              return _context22.abrupt("return");

            case 9:
              _context22.next = 11;
              return _this17.getUrl("".concat(loggedUrl, "/amazonsell?mons_sel_dir_mcid=").concat(find.mons_sel_dir_mcid, "&mons_sel_mkid=").concat(find.mons_sel_mkid, "&mons_sel_dir_paid=").concat(find.mons_sel_dir_paid), find.marketplaceId, loggedUrl, task);

            case 11:
              flag = _context22.sent;

            case 12:
              if (!(flag === -999)) {
                _context22.next = 16;
                break;
              }

              count++;
              _context22.next = 22;
              break;

            case 16:
              if (!flag) {
                _context22.next = 22;
                break;
              }

              _context22.next = 19;
              return _this17.siteSwitched(loggedUrl, _this17.MarketplaceObj[find.site]);

            case 19:
              log["a" /* default */].setLog('站点切换成功');
              _this17.host = loggedUrl;
              return _context22.abrupt("return", true);

            case 22:
              // 检测该区域其余站点
              _iterator5 = _createForOfIteratorHelper(urlArr);
              _context22.prev = 23;

              _iterator5.s();

            case 25:
              if ((_step5 = _iterator5.n()).done) {
                _context22.next = 48;
                break;
              }

              url = _step5.value;
              _context22.next = 29;
              return Object(util["J" /* suspend */])();

            case 29:
              if (!_context22.sent) {
                _context22.next = 31;
                break;
              }

              return _context22.abrupt("return");

            case 31:
              if (!(url === loggedUrl)) {
                _context22.next = 33;
                break;
              }

              return _context22.abrupt("continue", 46);

            case 33:
              _context22.next = 35;
              return _this17.getUrl("".concat(url, "/amazonsell?mons_sel_dir_mcid=").concat(find.mons_sel_dir_mcid, "&mons_sel_mkid=").concat(find.mons_sel_mkid, "&mons_sel_dir_paid=").concat(find.mons_sel_dir_paid), find.marketplaceId, url, task);

            case 35:
              _flag = _context22.sent;

              if (!(_flag === -999)) {
                _context22.next = 40;
                break;
              }

              count++;
              _context22.next = 46;
              break;

            case 40:
              if (!_flag) {
                _context22.next = 46;
                break;
              }

              _context22.next = 43;
              return _this17.siteSwitched(url, _this17.MarketplaceObj[find.site]);

            case 43:
              log["a" /* default */].setLog('站点切换成功');
              _this17.host = url;
              return _context22.abrupt("return", true);

            case 46:
              _context22.next = 25;
              break;

            case 48:
              _context22.next = 53;
              break;

            case 50:
              _context22.prev = 50;
              _context22.t0 = _context22["catch"](23);

              _iterator5.e(_context22.t0);

            case 53:
              _context22.prev = 53;

              _iterator5.f();

              return _context22.finish(53);

            case 56:
              if (!(count === urlArr.length)) {
                _context22.next = 60;
                break;
              }

              return _context22.abrupt("return", -999);

            case 60:
              log["a" /* default */].setLog("\u7AD9\u70B9\u5207\u6362\u5931\u8D25[\u9875\u9762\u8BBF\u95EE\u5F02\u5E38]:".concat(JSON.stringify(find.site)));
              return _context22.abrupt("return", false);

            case 62:
            case "end":
              return _context22.stop();
          }
        }
      }, _callee22, null, [[23, 50, 53, 56]]);
    }))();
  },

  /**
   * 切换站点
   */
  onlyChangeSite: function onlyChangeSite(_ref10) {
    var _this18 = this;

    var marketplaceId = _ref10.marketplaceId,
        origin = _ref10.origin,
        sellerName = _ref10.sellerName;
    return new Promise( /*#__PURE__*/function () {
      var _ref11 = amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee23(resolve) {
        var info, find, res;
        return amazon_regeneratorRuntime().wrap(function _callee23$(_context23) {
          while (1) {
            switch (_context23.prev = _context23.next) {
              case 0:
                info = _this18.onlineSite[sellerName];

                if (!info) {
                  _context23.next = 10;
                  break;
                }

                find = info.find(function (item) {
                  return item.site === _this18.codeToSiteMap[marketplaceId];
                });

                if (find) {
                  _context23.next = 6;
                  break;
                }

                resolve(false);
                return _context23.abrupt("return");

              case 6:
                _context23.next = 8;
                return _this18.getUrl("".concat(origin, "/amazonsell?mons_sel_dir_mcid=").concat(find.mons_sel_dir_mcid, "&mons_sel_mkid=").concat(find.mons_sel_mkid, "&mons_sel_dir_paid=").concat(find.mons_sel_dir_paid));

              case 8:
                res = _context23.sent;
                resolve(res);

              case 10:
                resolve(false);

              case 11:
              case "end":
                return _context23.stop();
            }
          }
        }, _callee23);
      }));

      return function (_x6) {
        return _ref11.apply(this, arguments);
      };
    }());
  },

  /**
   * 切换站点完成钩子
   * @param host
   */
  siteSwitched: function siteSwitched(host, countryCode) {
    var _this19 = this;

    // 域名为host的标签弹出alert
    return new Promise(function (resolve) {
      chrome.tabs.query({}, /*#__PURE__*/function () {
        var _ref12 = amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee24(arr) {
          var _iterator6, _step6, tab, port, curTime, _yield$localStorage$g2, sitePopCheckbox, noRemind;

          return amazon_regeneratorRuntime().wrap(function _callee24$(_context24) {
            while (1) {
              switch (_context24.prev = _context24.next) {
                case 0:
                  _iterator6 = _createForOfIteratorHelper(arr);
                  _context24.prev = 1;

                  _iterator6.s();

                case 3:
                  if ((_step6 = _iterator6.n()).done) {
                    _context24.next = 23;
                    break;
                  }

                  tab = _step6.value;

                  if (!(tab.url && tab.url.indexOf(host) !== -1)) {
                    _context24.next = 21;
                    break;
                  }

                  _context24.prev = 6;
                  port = chrome.tabs.connect(tab.id, {
                    name: 'site-switch'
                  }); // 判断切换站点不再提醒状态是否小于当天凌晨，如果是则清除状态，不是则通知content不需要提醒

                  curTime = moment_default()().startOf('day').valueOf();
                  _context24.next = 11;
                  return util["y" /* localStorage */].getItem(['sitePopCheckbox']);

                case 11:
                  _yield$localStorage$g2 = _context24.sent;
                  sitePopCheckbox = _yield$localStorage$g2.sitePopCheckbox;
                  noRemind = sitePopCheckbox && sitePopCheckbox > curTime;
                  port.postMessage({
                    cmd: 'switchSite',
                    countryCode: countryCode,
                    noRemind: noRemind
                  });
                  port.onMessage.addListener(function (res) {
                    log["a" /* default */].setLog(res ? "\u5DF2\u901A\u77E5".concat(host, "\u5F53\u524D\u5DF2\u5207\u6362\u7AD9\u70B9\u5230").concat(_this19.codeToSiteMap[countryCode]) : '取消');
                  });
                  _context24.next = 21;
                  break;

                case 18:
                  _context24.prev = 18;
                  _context24.t0 = _context24["catch"](6);
                  log["a" /* default */].setLog(Object(util["u" /* isError */])(_context24.t0));

                case 21:
                  _context24.next = 3;
                  break;

                case 23:
                  _context24.next = 28;
                  break;

                case 25:
                  _context24.prev = 25;
                  _context24.t1 = _context24["catch"](1);

                  _iterator6.e(_context24.t1);

                case 28:
                  _context24.prev = 28;

                  _iterator6.f();

                  return _context24.finish(28);

                case 31:
                  resolve(1);

                case 32:
                case "end":
                  return _context24.stop();
              }
            }
          }, _callee24, null, [[1, 25, 28, 31], [6, 18]]);
        }));

        return function (_x7) {
          return _ref12.apply(this, arguments);
        };
      }());
    });
  },
  checkLanguage: function checkLanguage(site, task) {
    var _arguments2 = arguments,
        _this20 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee25() {
      var isSwitch, $, language, cookie, sl;
      return amazon_regeneratorRuntime().wrap(function _callee25$(_context25) {
        while (1) {
          switch (_context25.prev = _context25.next) {
            case 0:
              isSwitch = _arguments2.length > 2 && _arguments2[2] !== undefined ? _arguments2[2] : true;
              _context25.next = 3;
              return _this20.getUrl("".concat(_this20.host, "/home"));

            case 3:
              $ = _context25.sent;
              _context25.prev = 4;
              language = $('#sc-lang-switcher-footer-select option[selected="selected"]').attr('value');

              if (language) {
                _context25.next = 11;
                break;
              }

              _context25.next = 9;
              return Object(util["p" /* getCookies */])({
                url: _this20.host,
                name: '__Host_mlang'
              });

            case 9:
              cookie = _context25.sent;
              language = cookie === null || cookie === void 0 ? void 0 : cookie.value;

            case 11:
              _this20.language = language;
              log["a" /* default */].setLog("\u5F53\u524D\u8BED\u8A00--".concat(language)); // && [11, 12, 13, 14].includes(task.report_type)

              if (!(!language || !language.includes('en_'))) {
                _context25.next = 26;
                break;
              }

              sl = "en_".concat(site);

              if (['UK', 'NL', 'SE', 'PL', 'TR', 'BE'].indexOf(site) > -1) {
                sl = 'en_GB';
              }

              if (site === 'SA') {
                sl = 'en_AE';
              }

              log["a" /* default */].setLog("\u4E0D\u662F\u82F1\u8BED\u5207\u6362 ".concat(sl));
              _context25.t0 = isSwitch;

              if (!_context25.t0) {
                _context25.next = 23;
                break;
              }

              _context25.next = 22;
              return _this20.swithchLanguage(sl, task);

            case 22:
              _context25.t0 = _context25.sent;

            case 23:
              return _context25.abrupt("return", _context25.t0);

            case 26:
              log["a" /* default */].setLog('不用切换语言');
              return _context25.abrupt("return", true);

            case 28:
              _context25.next = 36;
              break;

            case 30:
              _context25.prev = 30;
              _context25.t1 = _context25["catch"](4);
              task.status = 13;
              task.msg = "[\u6CE8\u610F]\u8BE5\u5E97\u94FA\u83B7\u53D6\u8BED\u8A00\u4E0B\u62C9\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context25.t1));
              log["a" /* default */].report("[\u6CE8\u610F]\u8BE5\u5E97\u94FA\u83B7\u53D6\u8BED\u8A00\u4E0B\u62C9\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context25.t1)), 'error', task.task_id);
              return _context25.abrupt("return", false);

            case 36:
            case "end":
              return _context25.stop();
          }
        }
      }, _callee25, null, [[4, 30]]);
    }))();
  },
  getSiteByUrl: function getSiteByUrl(url) {
    var trueUrl = url.split('-')[0].replace(/(^\s*)|(\s*$)/g, '');

    switch (trueUrl) {
      case 'www.amazon.com':
        return 'US';

      case 'www.amazon.co.jp':
        return 'JP';

      case 'www.amazon.jp':
        return 'JP';

      case 'www.amazon.co.uk':
        return 'UK';

      case 'www.amazon.de':
        return 'DE';

      case 'www.amazon.fr':
        return 'FR';

      case 'www.amazon.it':
        return 'IT';

      case 'www.amazon.es':
        return 'ES';

      case 'www.amazon.in':
        return 'IN';

      case 'www.amazon.nl':
        return 'NL';

      case 'www.amazon.cn':
        return 'CN';

      case 'www.amazon.ca':
        return 'CA';

      case 'www.amazon.com.mx':
        return 'MX';

      case 'www.amazon.com.au':
        return 'AU';

      case 'www.amazon.ae':
        return 'AE';

      case 'www.amazon.sa':
        return 'SA';

      case 'www.amazon.se':
        return 'SE';

      case 'www.amazon.sg':
        return 'SG';

      case 'www.amazon.com.br':
        return 'BR';

      case 'www.amazon.pl':
        return 'PL';

      case 'www.amazon.com.tr':
        return 'TR';

      case 'www.amazon.com.be':
        return 'BE';

      case 'www.amazon.ie':
        return 'IE';

      case 'www.amazon.eg':
        return 'EG';

      default:
        break;
    }
  },
  getUrl: function getUrl(url, marketplaceId, host, task) {
    var _this21 = this;

    // 添加时间戳，防止缓存
    url = url.indexOf('?') === -1 ? "".concat(url, "?timestamp=").concat(Date.now()) : "".concat(url, "&timestamp=").concat(Date.now());
    log["a" /* default */].setLog('getUrl', url);
    return new Promise(function (resolve) {
      axios_default()({
        method: 'GET',
        url: url,
        headers: {
          'Cache-Control': 'no-store'
        },
        adapter: utils_fetch["b" /* default */]
      }).then( /*#__PURE__*/function () {
        var _ref13 = amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee26(res) {
          var $, dom, _res;

          return amazon_regeneratorRuntime().wrap(function _callee26$(_context26) {
            while (1) {
              switch (_context26.prev = _context26.next) {
                case 0:
                  $ = cheerio_default.a.load(res.data);
                  dom = $('#root'); // const language = dom && dom.attr('value')
                  // 有切换语言DOM说明已登录
                  // if (language && language.length) {
                  // 新版亚马逊页面判断root节点

                  if (!dom) {
                    _context26.next = 14;
                    break;
                  }

                  if (!marketplaceId) {
                    _context26.next = 9;
                    break;
                  }

                  _context26.next = 6;
                  return _this21.verifyChangeSite(marketplaceId, host, task);

                case 6:
                  _context26.t0 = _context26.sent;
                  _context26.next = 10;
                  break;

                case 9:
                  _context26.t0 = $;

                case 10:
                  _res = _context26.t0;
                  resolve(_res);
                  _context26.next = 15;
                  break;

                case 14:
                  resolve(-999);

                case 15:
                case "end":
                  return _context26.stop();
              }
            }
          }, _callee26);
        }));

        return function (_x8) {
          return _ref13.apply(this, arguments);
        };
      }()).catch(function () {
        resolve(false);
      });
    });
  },
  // 切换站点强校验
  verifyChangeSite: function verifyChangeSite(code, host, task) {
    var _this22 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee27() {
      var info, curSellerId, _i2, _Object$values2, account, _iterator7, _step7, _step7$value, site, sellerId, accountId, regionalAccounts, _iterator8, _step8, seller, _sellerId, marketplaceId, msg, _msg;

      return amazon_regeneratorRuntime().wrap(function _callee27$(_context27) {
        while (1) {
          switch (_context27.prev = _context27.next) {
            case 0:
              _context27.prev = 0;

              if (code) {
                _context27.next = 3;
                break;
              }

              return _context27.abrupt("return", true);

            case 3:
              curSellerId = new Set();
              _i2 = 0, _Object$values2 = Object.values(_this22.onlineSite);

            case 5:
              if (!(_i2 < _Object$values2.length)) {
                _context27.next = 28;
                break;
              }

              account = _Object$values2[_i2];
              _iterator7 = _createForOfIteratorHelper(account);
              _context27.prev = 8;

              _iterator7.s();

            case 10:
              if ((_step7 = _iterator7.n()).done) {
                _context27.next = 17;
                break;
              }

              _step7$value = _step7.value, site = _step7$value.site, sellerId = _step7$value.sellerId, accountId = _step7$value.accountId;

              if (!(site === task.market_code && sellerId === task.seller_id)) {
                _context27.next = 15;
                break;
              }

              info = accountId;
              return _context27.abrupt("break", 17);

            case 15:
              _context27.next = 10;
              break;

            case 17:
              _context27.next = 22;
              break;

            case 19:
              _context27.prev = 19;
              _context27.t0 = _context27["catch"](8);

              _iterator7.e(_context27.t0);

            case 22:
              _context27.prev = 22;

              _iterator7.f();

              return _context27.finish(22);

            case 25:
              _i2++;
              _context27.next = 5;
              break;

            case 28:
              if (info) {
                _context27.next = 31;
                break;
              }

              log["a" /* default */].setLog("\u672A\u5339\u914D\u5230seller_id-".concat(task.seller_id, "\uFF0C\u8BF7\u786E\u8BA4\u767B\u5F55\u7684\u5E97\u94FA\u540E\uFF0C\u91CD\u542F\u63D2\u4EF6\u518D\u8BD5,taskId: ").concat(task.task_id));
              return _context27.abrupt("return", false);

            case 31:
              _context27.next = 33;
              return _this22.requestMerchantMarketplaces(host, info);

            case 33:
              regionalAccounts = _context27.sent;

              if (!(regionalAccounts && regionalAccounts.length)) {
                _context27.next = 56;
                break;
              }

              _iterator8 = _createForOfIteratorHelper(regionalAccounts);
              _context27.prev = 36;

              _iterator8.s();

            case 38:
              if ((_step8 = _iterator8.n()).done) {
                _context27.next = 48;
                break;
              }

              seller = _step8.value;
              _sellerId = seller.searchIds[2];
              marketplaceId = seller.searchIds[4];

              if (!(_sellerId === task.seller_id && seller.selected && marketplaceId == code)) {
                _context27.next = 45;
                break;
              }

              log["a" /* default */].setLog('[站点校验]切换站点成功拉');
              return _context27.abrupt("return", true);

            case 45:
              curSellerId.add(_sellerId);

            case 46:
              _context27.next = 38;
              break;

            case 48:
              _context27.next = 53;
              break;

            case 50:
              _context27.prev = 50;
              _context27.t1 = _context27["catch"](36);

              _iterator8.e(_context27.t1);

            case 53:
              _context27.prev = 53;

              _iterator8.f();

              return _context27.finish(53);

            case 56:
              msg = "\u7AD9\u70B9\u5F3A\u6821\u9A8C\u5931\u8D25\uFF0Chost\uFF1A".concat(host, "\uFF0C").concat(task.market_code, "\u53EF\u80FD\u672A\u5207\u6362\u6210\u529F");
              log["a" /* default */].setLog(msg);
              _context27.next = 64;
              break;

            case 60:
              _context27.prev = 60;
              _context27.t2 = _context27["catch"](0);
              _msg = "\u7AD9\u70B9\u5F3A\u6821\u9A8C\u5931\u8D25\uFF0Chost\uFF1A".concat(host, "----").concat(Object(util["u" /* isError */])(_context27.t2));
              log["a" /* default */].setLog(_msg);

            case 64:
            case "end":
              return _context27.stop();
          }
        }
      }, _callee27, null, [[0, 60], [8, 19, 22, 25], [36, 50, 53, 56]]);
    }))();
  },
  swithchLanguage: function swithchLanguage(language, task) {
    var _this23 = this;

    return new Promise(function (resolve) {
      axios_default()({
        method: 'GET',
        // url: `${this.host}/language-switcher/change-language?ref_=xx_swlang_head_xx&formSubmitted=true&language=${language}&location=${this.host}/home?timestamp=${Date.now()}`,
        url: "".concat(_this23.host, "/amazonsell/business?ref_=xx_swlang_head_xx&mons_sel_locale=").concat(language, "&languageSwitched=1"),
        adapter: utils_fetch["b" /* default */]
      }).then(function () {
        resolve(true);
      }).catch(function () {
        task.status = 13;
        task.msg = '[注意]该店铺切换语言失败';
        log["a" /* default */].setLog(task.msg);
        resolve(false);
      });
    });
  },
  initAxios: function initAxios() {
    var _this24 = this;

    //配置发送请求前的拦截器
    axios_default.a.interceptors.request.use(function (config) {
      if (_this24.errorTime > 100) {
        log["a" /* default */].setLog(_this24.errorTime, '超过最大失败次数，本次轮询终止...');
        return Promise.reject('失败次数' + _this24.errorTime);
      }

      return config;
    }, function (error) {
      return Promise.reject(error);
    }); // 配置响应拦截器

    axios_default.a.interceptors.response.use(function (res) {
      return Promise.resolve(res);
    }, function (error) {
      _this24.errorTime += 1;
      return Promise.reject(error);
    });
  },
  clearErrorTime: function clearErrorTime() {
    this.errorTime = 0;
  },
  test: function test() {
    this.getReport('https://static.umaicloud.com/client/ASINKING-Tool-V2.0.15.zip').then(function (res) {
      log["a" /* default */].setLog(JSON.stringify(res));
    }).catch(function (e) {
      log["a" /* default */].setLog(Object(util["u" /* isError */])(e));
    });
  },
  testReview: function testReview() {
    return new Promise(function (resolve) {
      fetch('https://sellercentral.amazon.com/messaging/api/solicitations/114-2552760-4645840/productReviewAndSellerFeedback?marketplaceId=ATVPDKIKX0DER&buyerId=&customerType=&isReturn=false&documentReferrer=https://sellercentral.amazon.com/messaging/reviews?orderId=114-2552760-4645840', {
        headers: {
          'anti-csrftoken-a2z': 'A01596255MPE0V36MRSF',
          'content-type': 'application/json',
          'x-requested-with': 'A01596255MPE0V36MRSF',
          'x-resource-version': '686014d55110e37296e8bbfc1e8e2ea487d3a3be'
        },
        referrer: 'https://sellercentral.amazon.com/messaging/reviews?orderId=114-2552760-4645840&marketplaceId=ATVPDKIKX0DER',
        referrerPolicy: 'no-referrer-when-downgrade',
        body: '{}',
        method: 'POST',
        mode: 'cors'
      }).then(function (res) {
        log["a" /* default */].setLog(JSON.stringify(res));
      }).catch(function (error) {
        log["a" /* default */].setLog(JSON.stringify(error));
      });
    });
  },

  /************* VC *************/
  vcRefreshSellerId: function vcRefreshSellerId(time) {
    var _this25 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee28() {
      var vcAccount, flag, i, vendorGroupIdMap, _iterator9, _step9, item, label, _label, site, name, originSite, region, siteInfo, hasSellerId, hosts, _iterator10, _step10, host, res;

      return amazon_regeneratorRuntime().wrap(function _callee28$(_context28) {
        while (1) {
          switch (_context28.prev = _context28.next) {
            case 0:
              _context28.prev = 0;

              if (!_this25.Refreshing) {
                _context28.next = 6;
                break;
              }

              log["a" /* default */].setLog('正在获取vc sellerID');
              return _context28.abrupt("return", 'refreshing');

            case 6:
              _this25.Refreshing = true;

            case 7:
              if (!util["h" /* delayed */]) {
                _context28.next = 10;
                break;
              }

              _context28.next = 10;
              return Object(util["h" /* delayed */])(time);

            case 10:
              _context28.t0 = amazon_regeneratorRuntime().keys(_this25.siteMapVc);

            case 11:
              if ((_context28.t1 = _context28.t0()).done) {
                _context28.next = 103;
                break;
              }

              i = _context28.t1.value;

              if (!(_this25.authorizedSite && _this25.authorizedSite.length > 0 && _this25.authorizedSite.indexOf(_this25.siteMapVc[i]) < 0)) {
                _context28.next = 15;
                break;
              }

              return _context28.abrupt("continue", 11);

            case 15:
              _context28.next = 17;
              return _this25.getVcAccount(i);

            case 17:
              vcAccount = _context28.sent;

              if (!(vcAccount && vcAccount.length > 0)) {
                _context28.next = 101;
                break;
              }

              _this25.onlineSite = {}; // 用户所有站点

              _this25.sellerObj = {}; // 区域id

              _this25.existSite = []; // 用户所有区域站点

              _this25.sellerId = ''; // 清空sellerId

              vendorGroupIdMap = {}; // 遍历vcAccount，获取vc账号信息

              _iterator9 = _createForOfIteratorHelper(vcAccount);
              _context28.prev = 25;

              _iterator9.s();

            case 27:
              if ((_step9 = _iterator9.n()).done) {
                _context28.next = 90;
                break;
              }

              item = _step9.value;
              label = item.label.replace(/ /g, '').split('-');
              _label = amazon_slicedToArray(label, 2), site = _label[0], name = _label[1];
              originSite = site;
              if (site.toLowerCase() == 'gb') site = 'UK';
              region = _this25.getRegion(site); // 区域站点标识

              if (!_this25.onlineSite[name]) {
                _this25.onlineSite[name] = [];
                _this25.sellerObj[name] = {};
              }

              siteInfo = {
                site: site,
                // 站点
                region: region,
                // 区域
                originSite: originSite,
                // 原始站点
                seller_name: item.label,
                // 店铺名
                mons_sel_dir_vgid: item.mons_sel_dir_vgid,
                // 切换站点时用
                mons_sel_dir_paid: item.globalAccountId // 全局账号id，不知道有什么作用

              };

              _this25.existSite.push(region);

              hasSellerId = !isNaN(item.searchIds[2]); // 判断是否已经获取过或getVcAccount接口返回了vendorGroupId

              if (!hasSellerId) {
                _context28.next = 48;
                break;
              }

              // 记录在线的host
              _this25.hostObj[region] = i;
              _this25.logoutSite[region] = false; // 切换离线任务状态

              _this25.changeOfflineTask(); // 切换离线图标


              _this25.changeOfflineIcon(); // 填充sellerId，sellerId = amzn1.vg.${vendorGroupId}


              siteInfo.sellerId = "amzn1.vg.".concat(item.searchIds[2]);
              siteInfo.vendorGroupId = item.searchIds[2];
              _this25.sellerObj[name][region] = siteInfo.sellerId;
              _context28.next = 87;
              break;

            case 48:
              if (!vendorGroupIdMap[region]) {
                _context28.next = 54;
                break;
              }

              // 填充sellerId，sellerId = amzn1.vg.${vendorGroupId}
              siteInfo.sellerId = "amzn1.vg.".concat(vendorGroupIdMap[region][site]);
              siteInfo.vendorGroupId = vendorGroupIdMap[region][site];
              _this25.sellerObj[name][region] = siteInfo.sellerId;
              _context28.next = 87;
              break;

            case 54:
              // 遍历所有区域url获取vendorGroupId（每个区域接口只会返回其区域站点的vendorGroupId）
              hosts = _this25.vcSiteToUrlMap[region];
              _iterator10 = _createForOfIteratorHelper(hosts);
              _context28.prev = 56;

              _iterator10.s();

            case 58:
              if ((_step10 = _iterator10.n()).done) {
                _context28.next = 79;
                break;
              }

              host = _step10.value;
              _context28.next = 62;
              return _this25.getVendorGroupId(host);

            case 62:
              res = _context28.sent;

              if (!(res && res !== -999)) {
                _context28.next = 75;
                break;
              }

              // 记录在线的host
              _this25.hostObj[region] = host;
              _this25.logoutSite[region] = false; // 切换离线任务状态

              _this25.changeOfflineTask(); // 切换离线图标


              _this25.changeOfflineIcon(); // 填充sellerId，sellerId = amzn1.vg.${vendorGroupId}


              vendorGroupIdMap[region] = res;
              siteInfo.sellerId = "amzn1.vg.".concat(res[site]);
              siteInfo.vendorGroupId = res[site];
              _this25.sellerObj[name][region] = siteInfo.sellerId;
              return _context28.abrupt("break", 79);

            case 75:
              // 获取用户信息失败
              _this25.Refreshing = false;
              return _context28.abrupt("return", false);

            case 77:
              _context28.next = 58;
              break;

            case 79:
              _context28.next = 84;
              break;

            case 81:
              _context28.prev = 81;
              _context28.t2 = _context28["catch"](56);

              _iterator10.e(_context28.t2);

            case 84:
              _context28.prev = 84;

              _iterator10.f();

              return _context28.finish(84);

            case 87:
              _this25.onlineSite[name].push(siteInfo);

            case 88:
              _context28.next = 27;
              break;

            case 90:
              _context28.next = 95;
              break;

            case 92:
              _context28.prev = 92;
              _context28.t3 = _context28["catch"](25);

              _iterator9.e(_context28.t3);

            case 95:
              _context28.prev = 95;

              _iterator9.f();

              return _context28.finish(95);

            case 98:
              // 区域去重
              _this25.existSite = _toConsumableArray(new Set(_this25.existSite));
              flag = true;
              return _context28.abrupt("break", 103);

            case 101:
              _context28.next = 11;
              break;

            case 103:
              if (flag) {
                _context28.next = 106;
                break;
              }

              // 获取用户信息失败
              _this25.Refreshing = false;
              return _context28.abrupt("return", false);

            case 106:
              _this25.getDupliteSite(); // await this.initHost()


              _this25.Refreshing = false;

              _this25.initSellerId();

              log["a" /* default */].setLog('检测到登录站点:', JSON.stringify(_this25.onlineSite));
              return _context28.abrupt("return", _this25.sellerId);

            case 113:
              _context28.prev = 113;
              _context28.t4 = _context28["catch"](0);
              log["a" /* default */].setLog("\u68C0\u6D4Bvc\u7AD9\u70B9\u4FE1\u606F\u5931\u8D25,----".concat(_context28.t4));
              _this25.Refreshing = false;
              return _context28.abrupt("return", false);

            case 118:
            case "end":
              return _context28.stop();
          }
        }
      }, _callee28, null, [[0, 113], [25, 92, 95, 98], [56, 81, 84, 87]]);
    }))();
  },
  // 获取vc账号信息
  getVcAccount: function getVcAccount(host) {
    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee29() {
      var res;
      return amazon_regeneratorRuntime().wrap(function _callee29$(_context29) {
        while (1) {
          switch (_context29.prev = _context29.next) {
            case 0:
              _context29.prev = 0;
              _context29.next = 3;
              return Object(util["z" /* nativeRequest */])("".concat(host, "/account-switcher/regional-accounts/vendorGroup"), 'get', {
                mock: "vcAccount"
              });

            case 3:
              res = _context29.sent;

              if (!(res.regionalAccounts && res.regionalAccounts.length > 0)) {
                _context29.next = 8;
                break;
              }

              return _context29.abrupt("return", res.regionalAccounts.map(function (item) {
                return _objectSpread(_objectSpread({}, item), {}, {
                  mons_sel_dir_vgid: item.ids.mons_sel_dir_vgid
                });
              }));

            case 8:
              log["a" /* default */].report("\u83B7\u53D6vc\u8D26\u53F7\u4FE1\u606F\u5931\u8D25,\u53EF\u80FD\u662F\u89C4\u5219\u5DF2\u53D8-----".concat(JSON.stringify(res)), 'except');
              return _context29.abrupt("return", -999);

            case 10:
              _context29.next = 16;
              break;

            case 12:
              _context29.prev = 12;
              _context29.t0 = _context29["catch"](0);
              log["a" /* default */].setLog("\u83B7\u53D6vc\u8D26\u53F7\u4FE1\u606F\u5931\u8D25,\u5931\u8D25\u539F\u56E0-----".concat(_context29.t0));
              return _context29.abrupt("return", false);

            case 16:
            case "end":
              return _context29.stop();
          }
        }
      }, _callee29, null, [[0, 12]]);
    }))();
  },
  // 获取vc csrftoken
  getVcCsrftoken: function getVcCsrftoken(host) {
    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee30() {
      var _yield$axios, headers, data;

      return amazon_regeneratorRuntime().wrap(function _callee30$(_context30) {
        while (1) {
          switch (_context30.prev = _context30.next) {
            case 0:
              _context30.prev = 0;
              _context30.next = 3;
              return axios_default()({
                url: "".concat(host, "/retail-analytics"),
                method: 'get',
                params: {
                  ref_: 'vc_xx_favb'
                }
              });

            case 3:
              _yield$axios = _context30.sent;
              headers = _yield$axios.headers;
              data = _yield$axios.data;

              if (!(headers && headers['anti-csrftoken-a2z'])) {
                _context30.next = 10;
                break;
              }

              return _context30.abrupt("return", headers['anti-csrftoken-a2z']);

            case 10:
              log["a" /* default */].report("\u83B7\u53D6vc csrftoken\u5931\u8D25,\u5931\u8D25\u539F\u56E0-----".concat(JSON.stringify(data)));
              return _context30.abrupt("return", false);

            case 12:
              _context30.next = 18;
              break;

            case 14:
              _context30.prev = 14;
              _context30.t0 = _context30["catch"](0);
              log["a" /* default */].setLog("\u8BF7\u6C42\u83B7\u53D6vc csrftoken\u5931\u8D25,\u5931\u8D25\u539F\u56E0-----".concat(Object(util["u" /* isError */])(_context30.t0)));
              return _context30.abrupt("return", false);

            case 18:
            case "end":
              return _context30.stop();
          }
        }
      }, _callee30, null, [[0, 14]]);
    }))();
  },
  // 获取vc sellerId，也可用这个来判断店铺是否登录
  getVendorGroupId: function getVendorGroupId(host) {
    var _this26 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee31() {
      var csrftoken, requestHearderId, _yield$nativeRequest3, userVendorGroups, map;

      return amazon_regeneratorRuntime().wrap(function _callee31$(_context31) {
        while (1) {
          switch (_context31.prev = _context31.next) {
            case 0:
              _context31.prev = 0;
              _context31.next = 3;
              return _this26.getVcCsrftoken(host);

            case 3:
              csrftoken = _context31.sent;

              if (csrftoken) {
                _context31.next = 6;
                break;
              }

              return _context31.abrupt("return", false);

            case 6:
              _context31.next = 8;
              return Object(util["I" /* setRequestHearder */])([{
                name: 'Referer',
                value: host
              }, {
                name: 'Origin',
                value: host
              }], "".concat(host, "/api/retail-analytics/v1/get-page-context"));

            case 8:
              requestHearderId = _context31.sent;
              _context31.next = 11;
              return Object(util["z" /* nativeRequest */])("".concat(host, "/api/retail-analytics/v1/get-page-context"), 'POST', {}, {
                'anti-csrftoken-a2z': csrftoken
              });

            case 11:
              _yield$nativeRequest3 = _context31.sent;
              userVendorGroups = _yield$nativeRequest3.userVendorGroups;
              requestHearderId && Object(util["D" /* removeDeclarativeNetRequestRules */])([requestHearderId]);

              if (!(userVendorGroups && userVendorGroups.length)) {
                _context31.next = 20;
                break;
              }

              map = {};
              userVendorGroups.forEach(function (_ref14) {
                var vendorGroupId = _ref14.vendorGroupId,
                    marketplaceId = _ref14.marketplaceId;
                var site = _this26.codeToSiteMap[marketplaceId];
                map[site] = vendorGroupId;
              });
              return _context31.abrupt("return", map);

            case 20:
              return _context31.abrupt("return", -999);

            case 21:
              _context31.next = 27;
              break;

            case 23:
              _context31.prev = 23;
              _context31.t0 = _context31["catch"](0);
              log["a" /* default */].setLog("\u83B7\u53D6vc VendorGroupId\u5931\u8D25,\u5931\u8D25\u539F\u56E0-----".concat(Object(util["u" /* isError */])(_context31.t0)));
              return _context31.abrupt("return", false);

            case 27:
            case "end":
              return _context31.stop();
          }
        }
      }, _callee31, null, [[0, 23]]);
    }))();
  },
  // vc切换站点
  vcChangeSite: function vcChangeSite(find) {
    var _this27 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee32() {
      var region, loggedUrl, urlArr, count, flag, isLogin, _iterator11, _step11, url, _isLogin, _flag;

      return amazon_regeneratorRuntime().wrap(function _callee32$(_context32) {
        while (1) {
          switch (_context32.prev = _context32.next) {
            case 0:
              _context32.prev = 0;
              region = find.region;
              loggedUrl = _this27.hostObj[region];
              urlArr = _this27.vcSiteToUrlMap[region];
              count = 0;

              if (!loggedUrl) {
                _context32.next = 20;
                break;
              }

              _context32.next = 8;
              return Object(util["J" /* suspend */])();

            case 8:
              if (!_context32.sent) {
                _context32.next = 10;
                break;
              }

              return _context32.abrupt("return");

            case 10:
              _context32.next = 12;
              return _this27.getVcAccount(loggedUrl);

            case 12:
              isLogin = _context32.sent;

              if (!(isLogin && isLogin !== -999)) {
                _context32.next = 19;
                break;
              }

              _context32.next = 16;
              return _this27.requestVcChangeSite(loggedUrl, find);

            case 16:
              flag = _context32.sent;
              _context32.next = 20;
              break;

            case 19:
              flag = isLogin;

            case 20:
              if (!(flag === -999)) {
                _context32.next = 24;
                break;
              }

              count++;
              _context32.next = 30;
              break;

            case 24:
              if (!flag) {
                _context32.next = 30;
                break;
              }

              _context32.next = 27;
              return _this27.siteSwitched(loggedUrl, _this27.MarketplaceObj[find.site]);

            case 27:
              log["a" /* default */].setLog('vc站点切换成功');
              _this27.host = loggedUrl;
              return _context32.abrupt("return", true);

            case 30:
              // 检测该区域其余站点
              _iterator11 = _createForOfIteratorHelper(urlArr);
              _context32.prev = 31;

              _iterator11.s();

            case 33:
              if ((_step11 = _iterator11.n()).done) {
                _context32.next = 65;
                break;
              }

              url = _step11.value;
              _context32.next = 37;
              return Object(util["J" /* suspend */])();

            case 37:
              if (!_context32.sent) {
                _context32.next = 39;
                break;
              }

              return _context32.abrupt("return");

            case 39:
              if (!(url === loggedUrl)) {
                _context32.next = 41;
                break;
              }

              return _context32.abrupt("continue", 63);

            case 41:
              _context32.next = 43;
              return _this27.getVcAccount(url);

            case 43:
              _isLogin = _context32.sent;
              _flag = void 0;

              if (!(_isLogin && _isLogin !== -999)) {
                _context32.next = 51;
                break;
              }

              _context32.next = 48;
              return _this27.requestVcChangeSite(url, find);

            case 48:
              _flag = _context32.sent;
              _context32.next = 52;
              break;

            case 51:
              _flag = _isLogin;

            case 52:
              if (!(_flag === -999)) {
                _context32.next = 56;
                break;
              }

              count++;
              _context32.next = 63;
              break;

            case 56:
              if (!_flag) {
                _context32.next = 63;
                break;
              }

              _context32.next = 59;
              return _this27.siteSwitched(url, _this27.MarketplaceObj[find.site]);

            case 59:
              log["a" /* default */].setLog('vc站点切换成功');
              _this27.hostObj[region] = url;
              _this27.host = url;
              return _context32.abrupt("return", true);

            case 63:
              _context32.next = 33;
              break;

            case 65:
              _context32.next = 70;
              break;

            case 67:
              _context32.prev = 67;
              _context32.t0 = _context32["catch"](31);

              _iterator11.e(_context32.t0);

            case 70:
              _context32.prev = 70;

              _iterator11.f();

              return _context32.finish(70);

            case 73:
              if (!(count === urlArr.length)) {
                _context32.next = 77;
                break;
              }

              return _context32.abrupt("return", -999);

            case 77:
              log["a" /* default */].setLog("vc\u7AD9\u70B9\u5207\u6362\u5931\u8D25[\u9875\u9762\u8BBF\u95EE\u5F02\u5E38]:".concat(JSON.stringify(find.site)));
              return _context32.abrupt("return", false);

            case 79:
              _context32.next = 85;
              break;

            case 81:
              _context32.prev = 81;
              _context32.t1 = _context32["catch"](0);
              log["a" /* default */].setLog("vc\u7AD9\u70B9\u5207\u6362\u5931\u8D25-----".concat(JSON.stringify(_context32.t1)));
              return _context32.abrupt("return", false);

            case 85:
            case "end":
              return _context32.stop();
          }
        }
      }, _callee32, null, [[0, 81], [31, 67, 70, 73]]);
    }))();
  },
  // 请求vc切换站点接口
  requestVcChangeSite: function requestVcChangeSite(host, find) {
    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee33() {
      return amazon_regeneratorRuntime().wrap(function _callee33$(_context33) {
        while (1) {
          switch (_context33.prev = _context33.next) {
            case 0:
              _context33.prev = 0;
              _context33.next = 3;
              return Object(util["z" /* nativeRequest */])("".concat(host, "/gp/vendor/members/home"), 'get', {
                mons_sel_dir_vgid: find.mons_sel_dir_vgid // mons_sel_dir_paid: find.mons_sel_dir_paid

              });

            case 3:
              return _context33.abrupt("return", true);

            case 6:
              _context33.prev = 6;
              _context33.t0 = _context33["catch"](0);
              log["a" /* default */].setLog("\u8BF7\u6C42\u7AD9\u70B9\u5207\u6362\u5931\u8D25-----".concat(JSON.stringify(_context33.t0)));

            case 9:
            case "end":
              return _context33.stop();
          }
        }
      }, _callee33, null, [[0, 6]]);
    }))();
  },
  // vc切换语言
  vcCheckLanguage: function vcCheckLanguage(site, task) {
    var _this28 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee34() {
      return amazon_regeneratorRuntime().wrap(function _callee34$(_context34) {
        while (1) {
          switch (_context34.prev = _context34.next) {
            case 0:
              _context34.prev = 0;
              _context34.next = 3;
              return Object(util["z" /* nativeRequest */])(_this28.host, 'get', {
                mons_sel_locale: "en_".concat(site.toLocaleUpperCase())
              });

            case 3:
              return _context34.abrupt("return", true);

            case 6:
              _context34.prev = 6;
              _context34.t0 = _context34["catch"](0);
              task.status = 13;
              task.msg = "[\u6CE8\u610F]\u8BE5vc\u5E97\u94FA\u5207\u6362\u8BED\u8A00\u5931\u8D25----".concat(JSON.stringify(_context34.t0));
              log["a" /* default */].report("[\u6CE8\u610F]\u8BE5vc\u5E97\u94FA\u5207\u6362\u8BED\u8A00\u5931\u8D25----".concat(JSON.stringify(_context34.t0)), 'error', {
                task_id: task.task_id
              });
              return _context34.abrupt("return", false);

            case 12:
            case "end":
              return _context34.stop();
          }
        }
      }, _callee34, null, [[0, 6]]);
    }))();
  },

  /**
  * 检测vc vendorGroupId
  */
  checkVcSellerId: function checkVcSellerId(res, task) {
    var _this29 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee35() {
      var host, taskVcId, _i3, _Object$values3, account, _iterator12, _step12, country, map, msg;

      return amazon_regeneratorRuntime().wrap(function _callee35$(_context35) {
        while (1) {
          switch (_context35.prev = _context35.next) {
            case 0:
              _context35.prev = 0;
              host = _this29.host;

              for (_i3 = 0, _Object$values3 = Object.values(_this29.onlineSite); _i3 < _Object$values3.length; _i3++) {
                account = _Object$values3[_i3];
                _iterator12 = _createForOfIteratorHelper(account);

                try {
                  for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) {
                    country = _step12.value;
                    if (country.site === task.market_code) taskVcId = country.vendorGroupId;
                  }
                } catch (err) {
                  _iterator12.e(err);
                } finally {
                  _iterator12.f();
                }
              } // 获取当前vendorGroupId


              _context35.next = 5;
              return _this29.getVcAccount(host);

            case 5:
              map = _context35.sent;

              if (!(map && map !== -999 && map[task.market_code] === taskVcId)) {
                _context35.next = 10;
                break;
              }

              return _context35.abrupt("return");

            case 10:
              if (!(!map || map === -999)) {
                _context35.next = 15;
                break;
              }

              msg = "[\u68C0\u6D4Bvc vendorGroupId]\u63A5\u53E3\u62A5\u9519\u6216".concat(task.market_code, "\u5DF2\u6389\u7EBF");
              return _context35.abrupt("return");

            case 15:
              if (!(map[task.market_code] !== taskVcId)) {
                _context35.next = 18;
                break;
              }

              msg = '检测到vendorGroupId已切换，请确认登录的店铺后，重启插件再试';
              return _context35.abrupt("return");

            case 18:
              res.code = 2;
              res.msg = msg;
              task.error_time = 10;
              log["a" /* default */].setLog(res.msg + ',检测到的vendorGroupId：' + taskVcId);
              _context35.next = 27;
              break;

            case 24:
              _context35.prev = 24;
              _context35.t0 = _context35["catch"](0);
              log["a" /* default */].setLog('上传前，检测vc vendorGroupId失败', JSON.stringify(_context35.t0));

            case 27:
            case "end":
              return _context35.stop();
          }
        }
      }, _callee35, null, [[0, 24]]);
    }))();
  },

  /********** 亚马逊广告 **********/
  adsHost: {
    US: 'https://advertising.amazon.com',
    UK: 'https://advertising.amazon.co.uk',
    JP: 'https://advertising.amazon.jp',
    AU: 'https://advertising.amazon.com.au',
    IN: 'https://advertising.amazon.in',
    SG: 'https://advertising.amazon.sg',
    CA: 'https://advertising.amazon.ca',
    DE: 'https://advertising.amazon.de',
    ES: 'https://advertising.amazon.es',
    FR: 'https://advertising.amazon.fr',
    IT: 'https://advertising.amazon.it',
    NL: 'https://advertising.amazon.nl',
    MX: 'https://advertising.amazon.com.mx',
    BE: 'https://advertising.amazon.com.be',
    IE: 'https://advertising.amazon.ie',
    EG: 'https://advertising.amazon.eg',
    PL: 'https://advertising.amazon.pl',
    TR: 'https://advertising.amazon.com.tr',
    SA: 'https://advertising.amazon.sa',
    SE: 'https://advertising.amazon.se',
    AE: 'https://advertising.amazon.ae',
    BR: 'https://advertising.amazon.com.br'
  },

  /**
   * 检测亚马逊广告是否登录
   * @param {*} task
   * @returns 
   */
  checkAmazonAdsLogin: function checkAmazonAdsLogin(task) {
    var _this30 = this;

    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee36() {
      var locale, entityId, marketplaceIdToAdvertiserId, marketplaceId;
      return amazon_regeneratorRuntime().wrap(function _callee36$(_context36) {
        while (1) {
          switch (_context36.prev = _context36.next) {
            case 0:
              // const locale = `en_${task.market_code.toUpperCase()}`
              locale = 'en_US';
              task.adHost = _this30.adsHost[task.market_code];
              _context36.next = 4;
              return _this30.getEntityId(task);

            case 4:
              entityId = _context36.sent;

              if (entityId) {
                _context36.next = 13;
                break;
              }

              _context36.next = 8;
              return _this30.amazonAdsSso(task, locale);

            case 8:
              _context36.next = 10;
              return _this30.getEntityId(task);

            case 10:
              entityId = _context36.sent;

              if (entityId) {
                _context36.next = 13;
                break;
              }

              return _context36.abrupt("return", false);

            case 13:
              _context36.next = 15;
              return _this30.getSellerIdInAds(task, entityId);

            case 15:
              marketplaceIdToAdvertiserId = _context36.sent;

              if (marketplaceIdToAdvertiserId) {
                _context36.next = 18;
                break;
              }

              return _context36.abrupt("return", false);

            case 18:
              // 判断是否和任务同一个店铺
              marketplaceId = _this30.MarketplaceObj[task.market_code];

              if (!(marketplaceIdToAdvertiserId[marketplaceId] && marketplaceIdToAdvertiserId[marketplaceId] === task.seller_id)) {
                _context36.next = 25;
                break;
              }

              _context36.next = 22;
              return _this30.changeAdsLanguage(task, locale);

            case 22:
              return _context36.abrupt("return", _context36.sent);

            case 25:
              task.status = 16;
              task.msg = "\u68C0\u6D4B\u5E7F\u544A\u5E97\u94FA\u5931\u8D25---\u5E97\u94FA\u4E0D\u5339\u914D---".concat(JSON.stringify(marketplaceIdToAdvertiserId));
              log["a" /* default */].setLog(task.msg);
              return _context36.abrupt("return", false);

            case 29:
            case "end":
              return _context36.stop();
          }
        }
      }, _callee36);
    }))();
  },

  /**
   * 亚马逊广告sso
   * @param {*} url 
   * @returns 
   */
  amazonAdsSso: function amazonAdsSso(task, locale) {
    return Object(util["z" /* nativeRequest */])("".concat(task.adHost, "/cm/ref=xx_cmpmgr_dnav_xx?merchantId=").concat(task.seller_id, "&locale=").concat(locale, "&ref=RedirectedFromSellerCentralByRoutingService"), 'get');
  },

  /**
   * 获取entityId（可用于检测当前广告域名下是否登录）
   */
  getEntityId: function getEntityId(task) {
    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee37() {
      var _yield$nativeRequest4, accountInfo;

      return amazon_regeneratorRuntime().wrap(function _callee37$(_context37) {
        while (1) {
          switch (_context37.prev = _context37.next) {
            case 0:
              _context37.prev = 0;
              _context37.next = 3;
              return Object(util["z" /* nativeRequest */])("".concat(task.adHost, "/ccx/ajax/navState"), 'get');

            case 3:
              _yield$nativeRequest4 = _context37.sent;
              accountInfo = _yield$nativeRequest4.accountInfo;

              if (!(accountInfo && accountInfo.currentEntityId)) {
                _context37.next = 9;
                break;
              }

              return _context37.abrupt("return", accountInfo.currentEntityId);

            case 9:
              task.status = 11;
              task.msg = "\u83B7\u53D6entityId\u5931\u8D25---".concat(task.adHost, "\u672A\u767B\u5F55");
              log["a" /* default */].setLog(task.msg);
              return _context37.abrupt("return", false);

            case 13:
              _context37.next = 21;
              break;

            case 15:
              _context37.prev = 15;
              _context37.t0 = _context37["catch"](0);
              task.status = 16;
              task.msg = "\u83B7\u53D6entityId\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context37.t0));
              log["a" /* default */].setLog(task.msg);
              return _context37.abrupt("return", false);

            case 21:
            case "end":
              return _context37.stop();
          }
        }
      }, _callee37, null, [[0, 15]]);
    }))();
  },

  /**
   * 在广告域名下获取seller_id（可用于检测店铺是否正确）
   */
  getSellerIdInAds: function getSellerIdInAds(task, entityId) {
    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee38() {
      var _res$globalMarketplac, res;

      return amazon_regeneratorRuntime().wrap(function _callee38$(_context38) {
        while (1) {
          switch (_context38.prev = _context38.next) {
            case 0:
              _context38.prev = 0;
              _context38.next = 3;
              return Object(util["z" /* nativeRequest */])("".concat(task.adHost, "/recommendations/api/placements/globalallcampaigns/cards"), 'get', {
                entityId: entityId
              });

            case 3:
              res = _context38.sent;

              if (!(res !== null && res !== void 0 && (_res$globalMarketplac = res.globalMarketplaceMapping) !== null && _res$globalMarketplac !== void 0 && _res$globalMarketplac.marketplaceIdToAdvertiserId)) {
                _context38.next = 8;
                break;
              }

              return _context38.abrupt("return", res.globalMarketplaceMapping.marketplaceIdToAdvertiserId);

            case 8:
              task.status = 16;
              task.msg = "\u68C0\u6D4B\u5E7F\u544A\u5E97\u94FA\u5931\u8D25---\u8FD4\u56DE\u7ED3\u679C\uFF1A".concat(JSON.stringify(res));
              log["a" /* default */].setLog(task.msg);
              return _context38.abrupt("return", false);

            case 12:
              _context38.next = 20;
              break;

            case 14:
              _context38.prev = 14;
              _context38.t0 = _context38["catch"](0);
              task.status = 16;
              task.msg = "\u68C0\u6D4B\u5E7F\u544A\u5E97\u94FA\u5931\u8D25----".concat(Object(util["u" /* isError */])(_context38.t0));
              log["a" /* default */].setLog(task.msg);
              return _context38.abrupt("return", false);

            case 20:
            case "end":
              return _context38.stop();
          }
        }
      }, _callee38, null, [[0, 14]]);
    }))();
  },

  /**
   * 切换广告域名下语言
   */
  changeAdsLanguage: function changeAdsLanguage(task, newLanguage) {
    return amazon_asyncToGenerator( /*#__PURE__*/amazon_regeneratorRuntime().mark(function _callee39() {
      var res;
      return amazon_regeneratorRuntime().wrap(function _callee39$(_context39) {
        while (1) {
          switch (_context39.prev = _context39.next) {
            case 0:
              _context39.prev = 0;
              _context39.next = 3;
              return Object(util["z" /* nativeRequest */])("".concat(task.adHost, "/common/language/change"), 'post', {
                newLanguage: newLanguage
              });

            case 3:
              res = _context39.sent;

              if (!(res !== null && res !== void 0 && res.message)) {
                _context39.next = 8;
                break;
              }

              return _context39.abrupt("return", true);

            case 8:
              task.status = 13;
              task.msg = "\u5207\u6362\u5E7F\u544A\u57DF\u540D\u4E0B\u8BED\u8A00\u5931\u8D25---language: ".concat(newLanguage, "---\u8FD4\u56DE\u7ED3\u679C\uFF1A").concat(JSON.stringify(res));
              log["a" /* default */].setLog(task.msg);
              return _context39.abrupt("return", false);

            case 12:
              _context39.next = 20;
              break;

            case 14:
              _context39.prev = 14;
              _context39.t0 = _context39["catch"](0);
              task.status = 13;
              task.msg = "\u5207\u6362\u5E7F\u544A\u57DF\u540D\u4E0B\u8BED\u8A00\u5931\u8D25----language: ".concat(newLanguage, "---").concat(Object(util["u" /* isError */])(_context39.t0));
              log["a" /* default */].setLog(task.msg);
              return _context39.abrupt("return", false);

            case 20:
            case "end":
              return _context39.stop();
          }
        }
      }, _callee39, null, [[0, 14]]);
    }))();
  }
});

/***/ }),

/***/ "ef19":
/***/ (function(module) {

module.exports = JSON.parse("{\"code\":0,\"message\":\"success\",\"data\":[{\"invitation_group_status\":4,\"count\":30},{\"invitation_group_status\":1,\"count\":0},{\"invitation_group_status\":2,\"count\":6},{\"invitation_group_status\":3,\"count\":0}]}");

/***/ }),

/***/ "ef5d":
/***/ (function(module, exports) {

/**
 * The base implementation of `_.property` without support for deep paths.
 *
 * @private
 * @param {string} key The key of the property to get.
 * @returns {Function} Returns the new accessor function.
 */
function baseProperty(key) {
  return function(object) {
    return object == null ? undefined : object[key];
  };
}

module.exports = baseProperty;


/***/ }),

/***/ "efb6":
/***/ (function(module, exports, __webpack_require__) {

var ListCache = __webpack_require__("5e2e");

/**
 * Removes all key-value entries from the stack.
 *
 * @private
 * @name clear
 * @memberOf Stack
 */
function stackClear() {
  this.__data__ = new ListCache;
  this.size = 0;
}

module.exports = stackClear;


/***/ }),

/***/ "f029":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return uuid; });
/* harmony import */ var uuid_v1__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("c437");
/* harmony import */ var uuid_v1__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(uuid_v1__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var uuid_v4__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("c64e");
/* harmony import */ var uuid_v4__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(uuid_v4__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var uuid_v5__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("6ba3");
/* harmony import */ var uuid_v5__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(uuid_v5__WEBPACK_IMPORTED_MODULE_2__);
/*!
 * vue-uuid v1.1.1
 * (c) 2017-present Vitor Luiz Cavalcanti
 * Released under the MIT License.
 */




/**
 * @typedef {{ v1: typeof v1, v4: typeof v4, v5: typeof v5 }} UUID
 */

/**
 * An object with uuid's v1, v4 and v5 functions.
 * @type {UUI}
 */

var uuid = {
  v1: uuid_v1__WEBPACK_IMPORTED_MODULE_0___default.a,
  v4: uuid_v4__WEBPACK_IMPORTED_MODULE_1___default.a,
  v5: uuid_v5__WEBPACK_IMPORTED_MODULE_2___default.a
};
/**
 * Installs UUID on Vue instance. It creates a property on Vue instance to
 * expose an object with uuid's v1, v4 and v5 functions.
 * @example ```js
 * import Vue from 'vue';
 * import VueUUID from 'vue-uuid';
 *
 * Vue.use(VueUUID);
 *
 * new Vue({
 *   mounted () {
 *     console.log(this.$uuid.v1());
 *   }
 * });
 * ```
 * @param {import('vue').default} Vue Vue constructor.
 */

function install(Vue) {
  Vue.prototype.$uuid = uuid;
}

/* harmony default export */ __webpack_exports__["a"] = (install);



/***/ }),

/***/ "f1d3":
/***/ (function(module, exports, __webpack_require__) {

var ElementType = __webpack_require__("af98");

var re_whitespace = /\s+/g;
var NodePrototype = __webpack_require__("54d4");
var ElementPrototype = __webpack_require__("1d65");

function DomHandler(callback, options, elementCB){
	if(typeof callback === "object"){
		elementCB = options;
		options = callback;
		callback = null;
	} else if(typeof options === "function"){
		elementCB = options;
		options = defaultOpts;
	}
	this._callback = callback;
	this._options = options || defaultOpts;
	this._elementCB = elementCB;
	this.dom = [];
	this._done = false;
	this._tagStack = [];
	this._parser = this._parser || null;
}

//default options
var defaultOpts = {
	normalizeWhitespace: false, //Replace all whitespace with single spaces
	withStartIndices: false, //Add startIndex properties to nodes
	withEndIndices: false, //Add endIndex properties to nodes
};

DomHandler.prototype.onparserinit = function(parser){
	this._parser = parser;
};

//Resets the handler back to starting state
DomHandler.prototype.onreset = function(){
	DomHandler.call(this, this._callback, this._options, this._elementCB);
};

//Signals the handler that parsing is done
DomHandler.prototype.onend = function(){
	if(this._done) return;
	this._done = true;
	this._parser = null;
	this._handleCallback(null);
};

DomHandler.prototype._handleCallback =
DomHandler.prototype.onerror = function(error){
	if(typeof this._callback === "function"){
		this._callback(error, this.dom);
	} else {
		if(error) throw error;
	}
};

DomHandler.prototype.onclosetag = function(){
	//if(this._tagStack.pop().name !== name) this._handleCallback(Error("Tagname didn't match!"));
	
	var elem = this._tagStack.pop();

	if(this._options.withEndIndices && elem){
		elem.endIndex = this._parser.endIndex;
	}

	if(this._elementCB) this._elementCB(elem);
};

DomHandler.prototype._createDomElement = function(properties){
	if (!this._options.withDomLvl1) return properties;

	var element;
	if (properties.type === "tag") {
		element = Object.create(ElementPrototype);
	} else {
		element = Object.create(NodePrototype);
	}

	for (var key in properties) {
		if (properties.hasOwnProperty(key)) {
			element[key] = properties[key];
		}
	}

	return element;
};

DomHandler.prototype._addDomElement = function(element){
	var parent = this._tagStack[this._tagStack.length - 1];
	var siblings = parent ? parent.children : this.dom;
	var previousSibling = siblings[siblings.length - 1];

	element.next = null;

	if(this._options.withStartIndices){
		element.startIndex = this._parser.startIndex;
	}
	if(this._options.withEndIndices){
		element.endIndex = this._parser.endIndex;
	}

	if(previousSibling){
		element.prev = previousSibling;
		previousSibling.next = element;
	} else {
		element.prev = null;
	}

	siblings.push(element);
	element.parent = parent || null;
};

DomHandler.prototype.onopentag = function(name, attribs){
	var properties = {
		type: name === "script" ? ElementType.Script : name === "style" ? ElementType.Style : ElementType.Tag,
		name: name,
		attribs: attribs,
		children: []
	};

	var element = this._createDomElement(properties);

	this._addDomElement(element);

	this._tagStack.push(element);
};

DomHandler.prototype.ontext = function(data){
	//the ignoreWhitespace is officially dropped, but for now,
	//it's an alias for normalizeWhitespace
	var normalize = this._options.normalizeWhitespace || this._options.ignoreWhitespace;

	var lastTag;

	if(!this._tagStack.length && this.dom.length && (lastTag = this.dom[this.dom.length-1]).type === ElementType.Text){
		if(normalize){
			lastTag.data = (lastTag.data + data).replace(re_whitespace, " ");
		} else {
			lastTag.data += data;
		}
	} else {
		if(
			this._tagStack.length &&
			(lastTag = this._tagStack[this._tagStack.length - 1]) &&
			(lastTag = lastTag.children[lastTag.children.length - 1]) &&
			lastTag.type === ElementType.Text
		){
			if(normalize){
				lastTag.data = (lastTag.data + data).replace(re_whitespace, " ");
			} else {
				lastTag.data += data;
			}
		} else {
			if(normalize){
				data = data.replace(re_whitespace, " ");
			}

			var element = this._createDomElement({
				data: data,
				type: ElementType.Text
			});

			this._addDomElement(element);
		}
	}
};

DomHandler.prototype.oncomment = function(data){
	var lastTag = this._tagStack[this._tagStack.length - 1];

	if(lastTag && lastTag.type === ElementType.Comment){
		lastTag.data += data;
		return;
	}

	var properties = {
		data: data,
		type: ElementType.Comment
	};

	var element = this._createDomElement(properties);

	this._addDomElement(element);
	this._tagStack.push(element);
};

DomHandler.prototype.oncdatastart = function(){
	var properties = {
		children: [{
			data: "",
			type: ElementType.Text
		}],
		type: ElementType.CDATA
	};

	var element = this._createDomElement(properties);

	this._addDomElement(element);
	this._tagStack.push(element);
};

DomHandler.prototype.oncommentend = DomHandler.prototype.oncdataend = function(){
	this._tagStack.pop();
};

DomHandler.prototype.onprocessinginstruction = function(name, data){
	var element = this._createDomElement({
		name: name,
		data: data,
		type: ElementType.Directive
	});

	this._addDomElement(element);
};

module.exports = DomHandler;


/***/ }),

/***/ "f28c":
/***/ (function(module, exports) {

// shim for using process in browser
var process = module.exports = {};

// cached from whatever global is present so that test runners that stub it
// don't break things.  But we need to wrap it in a try catch in case it is
// wrapped in strict mode code which doesn't define any globals.  It's inside a
// function because try/catches deoptimize in certain engines.

var cachedSetTimeout;
var cachedClearTimeout;

function defaultSetTimout() {
    throw new Error('setTimeout has not been defined');
}
function defaultClearTimeout () {
    throw new Error('clearTimeout has not been defined');
}
(function () {
    try {
        if (typeof setTimeout === 'function') {
            cachedSetTimeout = setTimeout;
        } else {
            cachedSetTimeout = defaultSetTimout;
        }
    } catch (e) {
        cachedSetTimeout = defaultSetTimout;
    }
    try {
        if (typeof clearTimeout === 'function') {
            cachedClearTimeout = clearTimeout;
        } else {
            cachedClearTimeout = defaultClearTimeout;
        }
    } catch (e) {
        cachedClearTimeout = defaultClearTimeout;
    }
} ())
function runTimeout(fun) {
    if (cachedSetTimeout === setTimeout) {
        //normal enviroments in sane situations
        return setTimeout(fun, 0);
    }
    // if setTimeout wasn't available but was latter defined
    if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
        cachedSetTimeout = setTimeout;
        return setTimeout(fun, 0);
    }
    try {
        // when when somebody has screwed with setTimeout but no I.E. maddness
        return cachedSetTimeout(fun, 0);
    } catch(e){
        try {
            // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
            return cachedSetTimeout.call(null, fun, 0);
        } catch(e){
            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
            return cachedSetTimeout.call(this, fun, 0);
        }
    }


}
function runClearTimeout(marker) {
    if (cachedClearTimeout === clearTimeout) {
        //normal enviroments in sane situations
        return clearTimeout(marker);
    }
    // if clearTimeout wasn't available but was latter defined
    if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
        cachedClearTimeout = clearTimeout;
        return clearTimeout(marker);
    }
    try {
        // when when somebody has screwed with setTimeout but no I.E. maddness
        return cachedClearTimeout(marker);
    } catch (e){
        try {
            // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally
            return cachedClearTimeout.call(null, marker);
        } catch (e){
            // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
            // Some versions of I.E. have different rules for clearTimeout vs setTimeout
            return cachedClearTimeout.call(this, marker);
        }
    }



}
var queue = [];
var draining = false;
var currentQueue;
var queueIndex = -1;

function cleanUpNextTick() {
    if (!draining || !currentQueue) {
        return;
    }
    draining = false;
    if (currentQueue.length) {
        queue = currentQueue.concat(queue);
    } else {
        queueIndex = -1;
    }
    if (queue.length) {
        drainQueue();
    }
}

function drainQueue() {
    if (draining) {
        return;
    }
    var timeout = runTimeout(cleanUpNextTick);
    draining = true;

    var len = queue.length;
    while(len) {
        currentQueue = queue;
        queue = [];
        while (++queueIndex < len) {
            if (currentQueue) {
                currentQueue[queueIndex].run();
            }
        }
        queueIndex = -1;
        len = queue.length;
    }
    currentQueue = null;
    draining = false;
    runClearTimeout(timeout);
}

process.nextTick = function (fun) {
    var args = new Array(arguments.length - 1);
    if (arguments.length > 1) {
        for (var i = 1; i < arguments.length; i++) {
            args[i - 1] = arguments[i];
        }
    }
    queue.push(new Item(fun, args));
    if (queue.length === 1 && !draining) {
        runTimeout(drainQueue);
    }
};

// v8 likes predictible objects
function Item(fun, array) {
    this.fun = fun;
    this.array = array;
}
Item.prototype.run = function () {
    this.fun.apply(null, this.array);
};
process.title = 'browser';
process.browser = true;
process.env = {};
process.argv = [];
process.version = ''; // empty string to avoid regexp issues
process.versions = {};

function noop() {}

process.on = noop;
process.addListener = noop;
process.once = noop;
process.off = noop;
process.removeListener = noop;
process.removeAllListeners = noop;
process.emit = noop;
process.prependListener = noop;
process.prependOnceListener = noop;

process.listeners = function (name) { return [] }

process.binding = function (name) {
    throw new Error('process.binding is not supported');
};

process.cwd = function () { return '/' };
process.chdir = function (dir) {
    throw new Error('process.chdir is not supported');
};
process.umask = function() { return 0; };


/***/ }),

/***/ "f30b":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var NS = exports.NAMESPACES = {
    HTML: 'http://www.w3.org/1999/xhtml',
    MATHML: 'http://www.w3.org/1998/Math/MathML',
    SVG: 'http://www.w3.org/2000/svg',
    XLINK: 'http://www.w3.org/1999/xlink',
    XML: 'http://www.w3.org/XML/1998/namespace',
    XMLNS: 'http://www.w3.org/2000/xmlns/'
};

exports.ATTRS = {
    TYPE: 'type',
    ACTION: 'action',
    ENCODING: 'encoding',
    PROMPT: 'prompt',
    NAME: 'name',
    COLOR: 'color',
    FACE: 'face',
    SIZE: 'size'
};

exports.DOCUMENT_MODE = {
    NO_QUIRKS: 'no-quirks',
    QUIRKS: 'quirks',
    LIMITED_QUIRKS: 'limited-quirks'
};

var $ = exports.TAG_NAMES = {
    A: 'a',
    ADDRESS: 'address',
    ANNOTATION_XML: 'annotation-xml',
    APPLET: 'applet',
    AREA: 'area',
    ARTICLE: 'article',
    ASIDE: 'aside',

    B: 'b',
    BASE: 'base',
    BASEFONT: 'basefont',
    BGSOUND: 'bgsound',
    BIG: 'big',
    BLOCKQUOTE: 'blockquote',
    BODY: 'body',
    BR: 'br',
    BUTTON: 'button',

    CAPTION: 'caption',
    CENTER: 'center',
    CODE: 'code',
    COL: 'col',
    COLGROUP: 'colgroup',

    DD: 'dd',
    DESC: 'desc',
    DETAILS: 'details',
    DIALOG: 'dialog',
    DIR: 'dir',
    DIV: 'div',
    DL: 'dl',
    DT: 'dt',

    EM: 'em',
    EMBED: 'embed',

    FIELDSET: 'fieldset',
    FIGCAPTION: 'figcaption',
    FIGURE: 'figure',
    FONT: 'font',
    FOOTER: 'footer',
    FOREIGN_OBJECT: 'foreignObject',
    FORM: 'form',
    FRAME: 'frame',
    FRAMESET: 'frameset',

    H1: 'h1',
    H2: 'h2',
    H3: 'h3',
    H4: 'h4',
    H5: 'h5',
    H6: 'h6',
    HEAD: 'head',
    HEADER: 'header',
    HGROUP: 'hgroup',
    HR: 'hr',
    HTML: 'html',

    I: 'i',
    IMG: 'img',
    IMAGE: 'image',
    INPUT: 'input',
    IFRAME: 'iframe',

    KEYGEN: 'keygen',

    LABEL: 'label',
    LI: 'li',
    LINK: 'link',
    LISTING: 'listing',

    MAIN: 'main',
    MALIGNMARK: 'malignmark',
    MARQUEE: 'marquee',
    MATH: 'math',
    MENU: 'menu',
    MENUITEM: 'menuitem',
    META: 'meta',
    MGLYPH: 'mglyph',
    MI: 'mi',
    MO: 'mo',
    MN: 'mn',
    MS: 'ms',
    MTEXT: 'mtext',

    NAV: 'nav',
    NOBR: 'nobr',
    NOFRAMES: 'noframes',
    NOEMBED: 'noembed',
    NOSCRIPT: 'noscript',

    OBJECT: 'object',
    OL: 'ol',
    OPTGROUP: 'optgroup',
    OPTION: 'option',

    P: 'p',
    PARAM: 'param',
    PLAINTEXT: 'plaintext',
    PRE: 'pre',

    RB: 'rb',
    RP: 'rp',
    RT: 'rt',
    RTC: 'rtc',
    RUBY: 'ruby',

    S: 's',
    SCRIPT: 'script',
    SECTION: 'section',
    SELECT: 'select',
    SOURCE: 'source',
    SMALL: 'small',
    SPAN: 'span',
    STRIKE: 'strike',
    STRONG: 'strong',
    STYLE: 'style',
    SUB: 'sub',
    SUMMARY: 'summary',
    SUP: 'sup',

    TABLE: 'table',
    TBODY: 'tbody',
    TEMPLATE: 'template',
    TEXTAREA: 'textarea',
    TFOOT: 'tfoot',
    TD: 'td',
    TH: 'th',
    THEAD: 'thead',
    TITLE: 'title',
    TR: 'tr',
    TRACK: 'track',
    TT: 'tt',

    U: 'u',
    UL: 'ul',

    SVG: 'svg',

    VAR: 'var',

    WBR: 'wbr',

    XMP: 'xmp'
};

var SPECIAL_ELEMENTS = exports.SPECIAL_ELEMENTS = Object.create(null);

SPECIAL_ELEMENTS[NS.HTML] = Object.create(null);
SPECIAL_ELEMENTS[NS.HTML][$.ADDRESS] = true;
SPECIAL_ELEMENTS[NS.HTML][$.APPLET] = true;
SPECIAL_ELEMENTS[NS.HTML][$.AREA] = true;
SPECIAL_ELEMENTS[NS.HTML][$.ARTICLE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.ASIDE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.BASE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.BASEFONT] = true;
SPECIAL_ELEMENTS[NS.HTML][$.BGSOUND] = true;
SPECIAL_ELEMENTS[NS.HTML][$.BLOCKQUOTE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.BODY] = true;
SPECIAL_ELEMENTS[NS.HTML][$.BR] = true;
SPECIAL_ELEMENTS[NS.HTML][$.BUTTON] = true;
SPECIAL_ELEMENTS[NS.HTML][$.CAPTION] = true;
SPECIAL_ELEMENTS[NS.HTML][$.CENTER] = true;
SPECIAL_ELEMENTS[NS.HTML][$.COL] = true;
SPECIAL_ELEMENTS[NS.HTML][$.COLGROUP] = true;
SPECIAL_ELEMENTS[NS.HTML][$.DD] = true;
SPECIAL_ELEMENTS[NS.HTML][$.DETAILS] = true;
SPECIAL_ELEMENTS[NS.HTML][$.DIR] = true;
SPECIAL_ELEMENTS[NS.HTML][$.DIV] = true;
SPECIAL_ELEMENTS[NS.HTML][$.DL] = true;
SPECIAL_ELEMENTS[NS.HTML][$.DT] = true;
SPECIAL_ELEMENTS[NS.HTML][$.EMBED] = true;
SPECIAL_ELEMENTS[NS.HTML][$.FIELDSET] = true;
SPECIAL_ELEMENTS[NS.HTML][$.FIGCAPTION] = true;
SPECIAL_ELEMENTS[NS.HTML][$.FIGURE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.FOOTER] = true;
SPECIAL_ELEMENTS[NS.HTML][$.FORM] = true;
SPECIAL_ELEMENTS[NS.HTML][$.FRAME] = true;
SPECIAL_ELEMENTS[NS.HTML][$.FRAMESET] = true;
SPECIAL_ELEMENTS[NS.HTML][$.H1] = true;
SPECIAL_ELEMENTS[NS.HTML][$.H2] = true;
SPECIAL_ELEMENTS[NS.HTML][$.H3] = true;
SPECIAL_ELEMENTS[NS.HTML][$.H4] = true;
SPECIAL_ELEMENTS[NS.HTML][$.H5] = true;
SPECIAL_ELEMENTS[NS.HTML][$.H6] = true;
SPECIAL_ELEMENTS[NS.HTML][$.HEAD] = true;
SPECIAL_ELEMENTS[NS.HTML][$.HEADER] = true;
SPECIAL_ELEMENTS[NS.HTML][$.HGROUP] = true;
SPECIAL_ELEMENTS[NS.HTML][$.HR] = true;
SPECIAL_ELEMENTS[NS.HTML][$.HTML] = true;
SPECIAL_ELEMENTS[NS.HTML][$.IFRAME] = true;
SPECIAL_ELEMENTS[NS.HTML][$.IMG] = true;
SPECIAL_ELEMENTS[NS.HTML][$.INPUT] = true;
SPECIAL_ELEMENTS[NS.HTML][$.LI] = true;
SPECIAL_ELEMENTS[NS.HTML][$.LINK] = true;
SPECIAL_ELEMENTS[NS.HTML][$.LISTING] = true;
SPECIAL_ELEMENTS[NS.HTML][$.MAIN] = true;
SPECIAL_ELEMENTS[NS.HTML][$.MARQUEE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.MENU] = true;
SPECIAL_ELEMENTS[NS.HTML][$.META] = true;
SPECIAL_ELEMENTS[NS.HTML][$.NAV] = true;
SPECIAL_ELEMENTS[NS.HTML][$.NOEMBED] = true;
SPECIAL_ELEMENTS[NS.HTML][$.NOFRAMES] = true;
SPECIAL_ELEMENTS[NS.HTML][$.NOSCRIPT] = true;
SPECIAL_ELEMENTS[NS.HTML][$.OBJECT] = true;
SPECIAL_ELEMENTS[NS.HTML][$.OL] = true;
SPECIAL_ELEMENTS[NS.HTML][$.P] = true;
SPECIAL_ELEMENTS[NS.HTML][$.PARAM] = true;
SPECIAL_ELEMENTS[NS.HTML][$.PLAINTEXT] = true;
SPECIAL_ELEMENTS[NS.HTML][$.PRE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.SCRIPT] = true;
SPECIAL_ELEMENTS[NS.HTML][$.SECTION] = true;
SPECIAL_ELEMENTS[NS.HTML][$.SELECT] = true;
SPECIAL_ELEMENTS[NS.HTML][$.SOURCE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.STYLE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.SUMMARY] = true;
SPECIAL_ELEMENTS[NS.HTML][$.TABLE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.TBODY] = true;
SPECIAL_ELEMENTS[NS.HTML][$.TD] = true;
SPECIAL_ELEMENTS[NS.HTML][$.TEMPLATE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.TEXTAREA] = true;
SPECIAL_ELEMENTS[NS.HTML][$.TFOOT] = true;
SPECIAL_ELEMENTS[NS.HTML][$.TH] = true;
SPECIAL_ELEMENTS[NS.HTML][$.THEAD] = true;
SPECIAL_ELEMENTS[NS.HTML][$.TITLE] = true;
SPECIAL_ELEMENTS[NS.HTML][$.TR] = true;
SPECIAL_ELEMENTS[NS.HTML][$.TRACK] = true;
SPECIAL_ELEMENTS[NS.HTML][$.UL] = true;
SPECIAL_ELEMENTS[NS.HTML][$.WBR] = true;
SPECIAL_ELEMENTS[NS.HTML][$.XMP] = true;

SPECIAL_ELEMENTS[NS.MATHML] = Object.create(null);
SPECIAL_ELEMENTS[NS.MATHML][$.MI] = true;
SPECIAL_ELEMENTS[NS.MATHML][$.MO] = true;
SPECIAL_ELEMENTS[NS.MATHML][$.MN] = true;
SPECIAL_ELEMENTS[NS.MATHML][$.MS] = true;
SPECIAL_ELEMENTS[NS.MATHML][$.MTEXT] = true;
SPECIAL_ELEMENTS[NS.MATHML][$.ANNOTATION_XML] = true;

SPECIAL_ELEMENTS[NS.SVG] = Object.create(null);
SPECIAL_ELEMENTS[NS.SVG][$.TITLE] = true;
SPECIAL_ELEMENTS[NS.SVG][$.FOREIGN_OBJECT] = true;
SPECIAL_ELEMENTS[NS.SVG][$.DESC] = true;


/***/ }),

/***/ "f3c1":
/***/ (function(module, exports) {

/** Used to detect hot functions by number of calls within a span of milliseconds. */
var HOT_COUNT = 800,
    HOT_SPAN = 16;

/* Built-in method references for those with the same name as other `lodash` methods. */
var nativeNow = Date.now;

/**
 * Creates a function that'll short out and invoke `identity` instead
 * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`
 * milliseconds.
 *
 * @private
 * @param {Function} func The function to restrict.
 * @returns {Function} Returns the new shortable function.
 */
function shortOut(func) {
  var count = 0,
      lastCalled = 0;

  return function() {
    var stamp = nativeNow(),
        remaining = HOT_SPAN - (stamp - lastCalled);

    lastCalled = stamp;
    if (remaining > 0) {
      if (++count >= HOT_COUNT) {
        return arguments[0];
      }
    } else {
      count = 0;
    }
    return func.apply(undefined, arguments);
  };
}

module.exports = shortOut;


/***/ }),

/***/ "f4d6":
/***/ (function(module, exports, __webpack_require__) {

var isSymbol = __webpack_require__("ffd6");

/** Used as references for various `Number` constants. */
var INFINITY = 1 / 0;

/**
 * Converts `value` to a string key if it's not a string or symbol.
 *
 * @private
 * @param {*} value The value to inspect.
 * @returns {string|symbol} Returns the key.
 */
function toKey(value) {
  if (typeof value == 'string' || isSymbol(value)) {
    return value;
  }
  var result = (value + '');
  return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
}

module.exports = toKey;


/***/ }),

/***/ "f608":
/***/ (function(module, exports, __webpack_require__) {

var isArray = __webpack_require__("6747"),
    isSymbol = __webpack_require__("ffd6");

/** Used to match property names within property paths. */
var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,
    reIsPlainProp = /^\w*$/;

/**
 * Checks if `value` is a property name and not a property path.
 *
 * @private
 * @param {*} value The value to check.
 * @param {Object} [object] The object to query keys on.
 * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
 */
function isKey(value, object) {
  if (isArray(value)) {
    return false;
  }
  var type = typeof value;
  if (type == 'number' || type == 'symbol' || type == 'boolean' ||
      value == null || isSymbol(value)) {
    return true;
  }
  return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
    (object != null && value in Object(object));
}

module.exports = isKey;


/***/ }),

/***/ "f60b":
/***/ (function(module, exports) {

throw new Error("Module parse failed: Unexpected token (1:0)\nYou may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders\n> <!doctype html><html lang=\"en-GB\" data-19ax5a9jf=\"dingo\" class=\"a-no-js\"><head><script>var aPageStart = (new Date()).getTime();</script><meta charset=\"utf-8\"/>\n|   <script type='text/javascript'>window.ue_mkt = \"vceu\";</script>\n|   <script type='text/javascript'>var ue_t0=ue_t0||+new Date();</script>");

/***/ }),

/***/ "f6b4":
/***/ (function(module, exports, __webpack_require__) {

"use strict";


var utils = __webpack_require__("c532");

function InterceptorManager() {
  this.handlers = [];
}

/**
 * Add a new interceptor to the stack
 *
 * @param {Function} fulfilled The function to handle `then` for a `Promise`
 * @param {Function} rejected The function to handle `reject` for a `Promise`
 *
 * @return {Number} An ID used to remove interceptor later
 */
InterceptorManager.prototype.use = function use(fulfilled, rejected) {
  this.handlers.push({
    fulfilled: fulfilled,
    rejected: rejected
  });
  return this.handlers.length - 1;
};

/**
 * Remove an interceptor from the stack
 *
 * @param {Number} id The ID that was returned by `use`
 */
InterceptorManager.prototype.eject = function eject(id) {
  if (this.handlers[id]) {
    this.handlers[id] = null;
  }
};

/**
 * Iterate over all the registered interceptors
 *
 * This method is particularly useful for skipping over any
 * interceptors that may have become `null` calling `eject`.
 *
 * @param {Function} fn The function to call for each interceptor
 */
InterceptorManager.prototype.forEach = function forEach(fn) {
  utils.forEach(this.handlers, function forEachHandler(h) {
    if (h !== null) {
      fn(h);
    }
  });
};

module.exports = InterceptorManager;


/***/ }),

/***/ "f7d3":
/***/ (function(module, exports, __webpack_require__) {

var baseSetData = __webpack_require__("b343"),
    shortOut = __webpack_require__("f3c1");

/**
 * Sets metadata for `func`.
 *
 * **Note:** If this function becomes hot, i.e. is invoked a lot in a short
 * period of time, it will trip its breaker and transition to an identity
 * function to avoid garbage collection pauses in V8. See
 * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070)
 * for more details.
 *
 * @private
 * @param {Function} func The function to associate metadata with.
 * @param {*} data The metadata.
 * @returns {Function} Returns `func`.
 */
var setData = shortOut(baseSetData);

module.exports = setData;


/***/ }),

/***/ "f84c":
/***/ (function(module, exports, __webpack_require__) {

var select = __webpack_require__("cc5b"),
    utils = __webpack_require__("4a1c"),
    domEach = utils.domEach,
    uniqueSort = __webpack_require__("d2de").DomUtils.uniqueSort,
    isTag = utils.isTag,
    _ = {
      bind: __webpack_require__("2696"),
      forEach: __webpack_require__("6cd4"),
      reject: __webpack_require__("1d32"),
      filter: __webpack_require__("9380"),
      reduce: __webpack_require__("c5a2")
    };

exports.find = function(selectorOrHaystack) {
  var elems = _.reduce(this, function(memo, elem) {
    return memo.concat(_.filter(elem.children, isTag));
  }, []);
  var contains = this.constructor.contains;
  var haystack;

  if (selectorOrHaystack && typeof selectorOrHaystack !== 'string') {
    if (selectorOrHaystack.cheerio) {
      haystack = selectorOrHaystack.get();
    } else {
      haystack = [selectorOrHaystack];
    }

    return this._make(haystack.filter(function(elem) {
      var idx, len;
      for (idx = 0, len = this.length; idx < len; ++idx) {
        if (contains(this[idx], elem)) {
          return true;
        }
      }
    }, this));
  }

  var options = {__proto__: this.options, context: this.toArray()};

  return this._make(select(selectorOrHaystack, elems, options));
};

// Get the parent of each element in the current set of matched elements,
// optionally filtered by a selector.
exports.parent = function(selector) {
  var set = [];

  domEach(this, function(idx, elem) {
    var parentElem = elem.parent;
    if (parentElem && set.indexOf(parentElem) < 0) {
      set.push(parentElem);
    }
  });

  if (arguments.length) {
    set = exports.filter.call(set, selector, this);
  }

  return this._make(set);
};

exports.parents = function(selector) {
  var parentNodes = [];

  // When multiple DOM elements are in the original set, the resulting set will
  // be in *reverse* order of the original elements as well, with duplicates
  // removed.
  this.get().reverse().forEach(function(elem) {
    traverseParents(this, elem.parent, selector, Infinity)
      .forEach(function(node) {
        if (parentNodes.indexOf(node) === -1) {
          parentNodes.push(node);
        }
      }
    );
  }, this);

  return this._make(parentNodes);
};

exports.parentsUntil = function(selector, filter) {
  var parentNodes = [], untilNode, untilNodes;

  if (typeof selector === 'string') {
    untilNode = select(selector, this.parents().toArray(), this.options)[0];
  } else if (selector && selector.cheerio) {
    untilNodes = selector.toArray();
  } else if (selector) {
    untilNode = selector;
  }

  // When multiple DOM elements are in the original set, the resulting set will
  // be in *reverse* order of the original elements as well, with duplicates
  // removed.

  this.toArray().reverse().forEach(function(elem) {
    while ((elem = elem.parent)) {
      if ((untilNode && elem !== untilNode) ||
        (untilNodes && untilNodes.indexOf(elem) === -1) ||
        (!untilNode && !untilNodes)) {
        if (isTag(elem) && parentNodes.indexOf(elem) === -1) { parentNodes.push(elem); }
      } else {
        break;
      }
    }
  }, this);

  return this._make(filter ? select(filter, parentNodes, this.options) : parentNodes);
};

// For each element in the set, get the first element that matches the selector
// by testing the element itself and traversing up through its ancestors in the
// DOM tree.
exports.closest = function(selector) {
  var set = [];

  if (!selector) {
    return this._make(set);
  }

  domEach(this, function(idx, elem) {
    var closestElem = traverseParents(this, elem, selector, 1)[0];

    // Do not add duplicate elements to the set
    if (closestElem && set.indexOf(closestElem) < 0) {
      set.push(closestElem);
    }
  }.bind(this));

  return this._make(set);
};

exports.next = function(selector) {
  if (!this[0]) { return this; }
  var elems = [];

  _.forEach(this, function(elem) {
    while ((elem = elem.next)) {
      if (isTag(elem)) {
        elems.push(elem);
        return;
      }
    }
  });

  return selector ?
    exports.filter.call(elems, selector, this) :
    this._make(elems);
};

exports.nextAll = function(selector) {
  if (!this[0]) { return this; }
  var elems = [];

  _.forEach(this, function(elem) {
    while ((elem = elem.next)) {
      if (isTag(elem) && elems.indexOf(elem) === -1) {
        elems.push(elem);
      }
    }
  });

  return selector ?
    exports.filter.call(elems, selector, this) :
    this._make(elems);
};

exports.nextUntil = function(selector, filterSelector) {
  if (!this[0]) { return this; }
  var elems = [], untilNode, untilNodes;

  if (typeof selector === 'string') {
    untilNode = select(selector, this.nextAll().get(), this.options)[0];
  } else if (selector && selector.cheerio) {
    untilNodes = selector.get();
  } else if (selector) {
    untilNode = selector;
  }

  _.forEach(this, function(elem) {
    while ((elem = elem.next)) {
      if ((untilNode && elem !== untilNode) ||
        (untilNodes && untilNodes.indexOf(elem) === -1) ||
        (!untilNode && !untilNodes)) {
        if (isTag(elem) && elems.indexOf(elem) === -1) {
          elems.push(elem);
        }
      } else {
        break;
      }
    }
  });

  return filterSelector ?
    exports.filter.call(elems, filterSelector, this) :
    this._make(elems);
};

exports.prev = function(selector) {
  if (!this[0]) { return this; }
  var elems = [];

  _.forEach(this, function(elem) {
    while ((elem = elem.prev)) {
      if (isTag(elem)) {
        elems.push(elem);
        return;
      }
    }
  });

  return selector ?
    exports.filter.call(elems, selector, this) :
    this._make(elems);
};

exports.prevAll = function(selector) {
  if (!this[0]) { return this; }
  var elems = [];

  _.forEach(this, function(elem) {
    while ((elem = elem.prev)) {
      if (isTag(elem) && elems.indexOf(elem) === -1) {
        elems.push(elem);
      }
    }
  });

  return selector ?
    exports.filter.call(elems, selector, this) :
    this._make(elems);
};

exports.prevUntil = function(selector, filterSelector) {
  if (!this[0]) { return this; }
  var elems = [], untilNode, untilNodes;

  if (typeof selector === 'string') {
    untilNode = select(selector, this.prevAll().get(), this.options)[0];
  } else if (selector && selector.cheerio) {
    untilNodes = selector.get();
  } else if (selector) {
    untilNode = selector;
  }

  _.forEach(this, function(elem) {
    while ((elem = elem.prev)) {
      if ((untilNode && elem !== untilNode) ||
        (untilNodes && untilNodes.indexOf(elem) === -1) ||
        (!untilNode && !untilNodes)) {
        if (isTag(elem) && elems.indexOf(elem) === -1) {
          elems.push(elem);
        }
      } else {
        break;
      }
    }
  });

  return filterSelector ?
    exports.filter.call(elems, filterSelector, this) :
    this._make(elems);
};

exports.siblings = function(selector) {
  var parent = this.parent();

  var elems = _.filter(
    parent ? parent.children() : this.siblingsAndMe(),
    _.bind(function(elem) { return isTag(elem) && !this.is(elem); }, this)
  );

  if (selector !== undefined) {
    return exports.filter.call(elems, selector, this);
  } else {
    return this._make(elems);
  }
};

exports.children = function(selector) {

  var elems = _.reduce(this, function(memo, elem) {
    return memo.concat(_.filter(elem.children, isTag));
  }, []);

  if (selector === undefined) return this._make(elems);

  return exports.filter.call(elems, selector, this);
};

exports.contents = function() {
  return this._make(_.reduce(this, function(all, elem) {
    all.push.apply(all, elem.children);
    return all;
  }, []));
};

exports.each = function(fn) {
  var i = 0, len = this.length;
  while (i < len && fn.call(this[i], i, this[i]) !== false) ++i;
  return this;
};

exports.map = function(fn) {
  return this._make(_.reduce(this, function(memo, el, i) {
    var val = fn.call(el, i, el);
    return val == null ? memo : memo.concat(val);
  }, []));
};

var makeFilterMethod = function(filterFn) {
  return function(match, container) {
    var testFn;
    container = container || this;

    if (typeof match === 'string') {
      testFn = select.compile(match, container.options);
    } else if (typeof match === 'function') {
      testFn = function(el, i) {
        return match.call(el, i, el);
      };
    } else if (match.cheerio) {
      testFn = match.is.bind(match);
    } else {
      testFn = function(el) {
        return match === el;
      };
    }

    return container._make(filterFn(this, testFn));
  };
};

exports.filter = makeFilterMethod(_.filter);
exports.not = makeFilterMethod(_.reject);

exports.has = function(selectorOrHaystack) {
  var that = this;
  return exports.filter.call(this, function() {
    return that._make(this).find(selectorOrHaystack).length > 0;
  });
};

exports.first = function() {
  return this.length > 1 ? this._make(this[0]) : this;
};

exports.last = function() {
  return this.length > 1 ? this._make(this[this.length - 1]) : this;
};

// Reduce the set of matched elements to the one at the specified index.
exports.eq = function(i) {
  i = +i;

  // Use the first identity optimization if possible
  if (i === 0 && this.length <= 1) return this;

  if (i < 0) i = this.length + i;
  return this[i] ? this._make(this[i]) : this._make([]);
};

// Retrieve the DOM elements matched by the jQuery object.
exports.get = function(i) {
  if (i == null) {
    return Array.prototype.slice.call(this);
  } else {
    return this[i < 0 ? (this.length + i) : i];
  }
};

// Search for a given element from among the matched elements.
exports.index = function(selectorOrNeedle) {
  var $haystack, needle;

  if (arguments.length === 0) {
    $haystack = this.parent().children();
    needle = this[0];
  } else if (typeof selectorOrNeedle === 'string') {
    $haystack = this._make(selectorOrNeedle);
    needle = this[0];
  } else {
    $haystack = this;
    needle = selectorOrNeedle.cheerio ? selectorOrNeedle[0] : selectorOrNeedle;
  }

  return $haystack.get().indexOf(needle);
};

exports.slice = function() {
  return this._make([].slice.apply(this, arguments));
};

function traverseParents(self, elem, selector, limit) {
  var elems = [];
  while (elem && elems.length < limit) {
    if (!selector || exports.filter.call([elem], selector, self).length) {
      elems.push(elem);
    }
    elem = elem.parent;
  }
  return elems;
}

// End the most recent filtering operation in the current chain and return the
// set of matched elements to its previous state.
exports.end = function() {
  return this.prevObject || this._make([]);
};

exports.add = function(other, context) {
  var selection = this._make(other, context);
  var contents = uniqueSort(selection.get().concat(this.get()));

  for (var i = 0; i < contents.length; ++i) {
    selection[i] = contents[i];
  }
  selection.length = contents.length;

  return selection;
};

// Add the previous set of elements on the stack to the current set, optionally
// filtered by a selector.
exports.addBack = function(selector) {
  return this.add(
    arguments.length ? this.prevObject.filter(selector) : this.prevObject
  );
};


/***/ }),

/***/ "f8af":
/***/ (function(module, exports, __webpack_require__) {

var Uint8Array = __webpack_require__("2474");

/**
 * Creates a clone of `arrayBuffer`.
 *
 * @private
 * @param {ArrayBuffer} arrayBuffer The array buffer to clone.
 * @returns {ArrayBuffer} Returns the cloned array buffer.
 */
function cloneArrayBuffer(arrayBuffer) {
  var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
  new Uint8Array(result).set(new Uint8Array(arrayBuffer));
  return result;
}

module.exports = cloneArrayBuffer;


/***/ }),

/***/ "f909":
/***/ (function(module, exports, __webpack_require__) {

var Stack = __webpack_require__("7e64"),
    assignMergeValue = __webpack_require__("b760"),
    baseFor = __webpack_require__("72af"),
    baseMergeDeep = __webpack_require__("4f50"),
    isObject = __webpack_require__("1a8c"),
    keysIn = __webpack_require__("9934"),
    safeGet = __webpack_require__("8adb");

/**
 * The base implementation of `_.merge` without support for multiple sources.
 *
 * @private
 * @param {Object} object The destination object.
 * @param {Object} source The source object.
 * @param {number} srcIndex The index of `source`.
 * @param {Function} [customizer] The function to customize merged values.
 * @param {Object} [stack] Tracks traversed source values and their merged
 *  counterparts.
 */
function baseMerge(object, source, srcIndex, customizer, stack) {
  if (object === source) {
    return;
  }
  baseFor(source, function(srcValue, key) {
    stack || (stack = new Stack);
    if (isObject(srcValue)) {
      baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);
    }
    else {
      var newValue = customizer
        ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)
        : undefined;

      if (newValue === undefined) {
        newValue = srcValue;
      }
      assignMergeValue(object, key, newValue);
    }
  }, keysIn);
}

module.exports = baseMerge;


/***/ }),

/***/ "f9ce":
/***/ (function(module, exports, __webpack_require__) {

var baseProperty = __webpack_require__("ef5d"),
    basePropertyDeep = __webpack_require__("e3f8"),
    isKey = __webpack_require__("f608"),
    toKey = __webpack_require__("f4d6");

/**
 * Creates a function that returns the value at `path` of a given object.
 *
 * @static
 * @memberOf _
 * @since 2.4.0
 * @category Util
 * @param {Array|string} path The path of the property to get.
 * @returns {Function} Returns the new accessor function.
 * @example
 *
 * var objects = [
 *   { 'a': { 'b': 2 } },
 *   { 'a': { 'b': 1 } }
 * ];
 *
 * _.map(objects, _.property('a.b'));
 * // => [2, 1]
 *
 * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');
 * // => [1, 2]
 */
function property(path) {
  return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);
}

module.exports = property;


/***/ }),

/***/ "fa21":
/***/ (function(module, exports, __webpack_require__) {

var baseCreate = __webpack_require__("7530"),
    getPrototype = __webpack_require__("2dcb"),
    isPrototype = __webpack_require__("eac5");

/**
 * Initializes an object clone.
 *
 * @private
 * @param {Object} object The object to clone.
 * @returns {Object} Returns the initialized clone.
 */
function initCloneObject(object) {
  return (typeof object.constructor == 'function' && !isPrototype(object))
    ? baseCreate(getPrototype(object))
    : {};
}

module.exports = initCloneObject;


/***/ }),

/***/ "faa1":
/***/ (function(module, exports, __webpack_require__) {

"use strict";
// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.



var R = typeof Reflect === 'object' ? Reflect : null
var ReflectApply = R && typeof R.apply === 'function'
  ? R.apply
  : function ReflectApply(target, receiver, args) {
    return Function.prototype.apply.call(target, receiver, args);
  }

var ReflectOwnKeys
if (R && typeof R.ownKeys === 'function') {
  ReflectOwnKeys = R.ownKeys
} else if (Object.getOwnPropertySymbols) {
  ReflectOwnKeys = function ReflectOwnKeys(target) {
    return Object.getOwnPropertyNames(target)
      .concat(Object.getOwnPropertySymbols(target));
  };
} else {
  ReflectOwnKeys = function ReflectOwnKeys(target) {
    return Object.getOwnPropertyNames(target);
  };
}

function ProcessEmitWarning(warning) {
  if (console && console.warn) console.warn(warning);
}

var NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {
  return value !== value;
}

function EventEmitter() {
  EventEmitter.init.call(this);
}
module.exports = EventEmitter;
module.exports.once = once;

// Backwards-compat with node 0.10.x
EventEmitter.EventEmitter = EventEmitter;

EventEmitter.prototype._events = undefined;
EventEmitter.prototype._eventsCount = 0;
EventEmitter.prototype._maxListeners = undefined;

// By default EventEmitters will print a warning if more than 10 listeners are
// added to it. This is a useful default which helps finding memory leaks.
var defaultMaxListeners = 10;

function checkListener(listener) {
  if (typeof listener !== 'function') {
    throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof listener);
  }
}

Object.defineProperty(EventEmitter, 'defaultMaxListeners', {
  enumerable: true,
  get: function() {
    return defaultMaxListeners;
  },
  set: function(arg) {
    if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {
      throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + arg + '.');
    }
    defaultMaxListeners = arg;
  }
});

EventEmitter.init = function() {

  if (this._events === undefined ||
      this._events === Object.getPrototypeOf(this)._events) {
    this._events = Object.create(null);
    this._eventsCount = 0;
  }

  this._maxListeners = this._maxListeners || undefined;
};

// Obviously not all Emitters should be limited to 10. This function allows
// that to be increased. Set to zero for unlimited.
EventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {
  if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {
    throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + n + '.');
  }
  this._maxListeners = n;
  return this;
};

function _getMaxListeners(that) {
  if (that._maxListeners === undefined)
    return EventEmitter.defaultMaxListeners;
  return that._maxListeners;
}

EventEmitter.prototype.getMaxListeners = function getMaxListeners() {
  return _getMaxListeners(this);
};

EventEmitter.prototype.emit = function emit(type) {
  var args = [];
  for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);
  var doError = (type === 'error');

  var events = this._events;
  if (events !== undefined)
    doError = (doError && events.error === undefined);
  else if (!doError)
    return false;

  // If there is no 'error' event listener then throw.
  if (doError) {
    var er;
    if (args.length > 0)
      er = args[0];
    if (er instanceof Error) {
      // Note: The comments on the `throw` lines are intentional, they show
      // up in Node's output if this results in an unhandled exception.
      throw er; // Unhandled 'error' event
    }
    // At least give some kind of context to the user
    var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));
    err.context = er;
    throw err; // Unhandled 'error' event
  }

  var handler = events[type];

  if (handler === undefined)
    return false;

  if (typeof handler === 'function') {
    ReflectApply(handler, this, args);
  } else {
    var len = handler.length;
    var listeners = arrayClone(handler, len);
    for (var i = 0; i < len; ++i)
      ReflectApply(listeners[i], this, args);
  }

  return true;
};

function _addListener(target, type, listener, prepend) {
  var m;
  var events;
  var existing;

  checkListener(listener);

  events = target._events;
  if (events === undefined) {
    events = target._events = Object.create(null);
    target._eventsCount = 0;
  } else {
    // To avoid recursion in the case that type === "newListener"! Before
    // adding it to the listeners, first emit "newListener".
    if (events.newListener !== undefined) {
      target.emit('newListener', type,
                  listener.listener ? listener.listener : listener);

      // Re-assign `events` because a newListener handler could have caused the
      // this._events to be assigned to a new object
      events = target._events;
    }
    existing = events[type];
  }

  if (existing === undefined) {
    // Optimize the case of one listener. Don't need the extra array object.
    existing = events[type] = listener;
    ++target._eventsCount;
  } else {
    if (typeof existing === 'function') {
      // Adding the second element, need to change to array.
      existing = events[type] =
        prepend ? [listener, existing] : [existing, listener];
      // If we've already got an array, just append.
    } else if (prepend) {
      existing.unshift(listener);
    } else {
      existing.push(listener);
    }

    // Check for listener leak
    m = _getMaxListeners(target);
    if (m > 0 && existing.length > m && !existing.warned) {
      existing.warned = true;
      // No error code for this since it is a Warning
      // eslint-disable-next-line no-restricted-syntax
      var w = new Error('Possible EventEmitter memory leak detected. ' +
                          existing.length + ' ' + String(type) + ' listeners ' +
                          'added. Use emitter.setMaxListeners() to ' +
                          'increase limit');
      w.name = 'MaxListenersExceededWarning';
      w.emitter = target;
      w.type = type;
      w.count = existing.length;
      ProcessEmitWarning(w);
    }
  }

  return target;
}

EventEmitter.prototype.addListener = function addListener(type, listener) {
  return _addListener(this, type, listener, false);
};

EventEmitter.prototype.on = EventEmitter.prototype.addListener;

EventEmitter.prototype.prependListener =
    function prependListener(type, listener) {
      return _addListener(this, type, listener, true);
    };

function onceWrapper() {
  if (!this.fired) {
    this.target.removeListener(this.type, this.wrapFn);
    this.fired = true;
    if (arguments.length === 0)
      return this.listener.call(this.target);
    return this.listener.apply(this.target, arguments);
  }
}

function _onceWrap(target, type, listener) {
  var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };
  var wrapped = onceWrapper.bind(state);
  wrapped.listener = listener;
  state.wrapFn = wrapped;
  return wrapped;
}

EventEmitter.prototype.once = function once(type, listener) {
  checkListener(listener);
  this.on(type, _onceWrap(this, type, listener));
  return this;
};

EventEmitter.prototype.prependOnceListener =
    function prependOnceListener(type, listener) {
      checkListener(listener);
      this.prependListener(type, _onceWrap(this, type, listener));
      return this;
    };

// Emits a 'removeListener' event if and only if the listener was removed.
EventEmitter.prototype.removeListener =
    function removeListener(type, listener) {
      var list, events, position, i, originalListener;

      checkListener(listener);

      events = this._events;
      if (events === undefined)
        return this;

      list = events[type];
      if (list === undefined)
        return this;

      if (list === listener || list.listener === listener) {
        if (--this._eventsCount === 0)
          this._events = Object.create(null);
        else {
          delete events[type];
          if (events.removeListener)
            this.emit('removeListener', type, list.listener || listener);
        }
      } else if (typeof list !== 'function') {
        position = -1;

        for (i = list.length - 1; i >= 0; i--) {
          if (list[i] === listener || list[i].listener === listener) {
            originalListener = list[i].listener;
            position = i;
            break;
          }
        }

        if (position < 0)
          return this;

        if (position === 0)
          list.shift();
        else {
          spliceOne(list, position);
        }

        if (list.length === 1)
          events[type] = list[0];

        if (events.removeListener !== undefined)
          this.emit('removeListener', type, originalListener || listener);
      }

      return this;
    };

EventEmitter.prototype.off = EventEmitter.prototype.removeListener;

EventEmitter.prototype.removeAllListeners =
    function removeAllListeners(type) {
      var listeners, events, i;

      events = this._events;
      if (events === undefined)
        return this;

      // not listening for removeListener, no need to emit
      if (events.removeListener === undefined) {
        if (arguments.length === 0) {
          this._events = Object.create(null);
          this._eventsCount = 0;
        } else if (events[type] !== undefined) {
          if (--this._eventsCount === 0)
            this._events = Object.create(null);
          else
            delete events[type];
        }
        return this;
      }

      // emit removeListener for all listeners on all events
      if (arguments.length === 0) {
        var keys = Object.keys(events);
        var key;
        for (i = 0; i < keys.length; ++i) {
          key = keys[i];
          if (key === 'removeListener') continue;
          this.removeAllListeners(key);
        }
        this.removeAllListeners('removeListener');
        this._events = Object.create(null);
        this._eventsCount = 0;
        return this;
      }

      listeners = events[type];

      if (typeof listeners === 'function') {
        this.removeListener(type, listeners);
      } else if (listeners !== undefined) {
        // LIFO order
        for (i = listeners.length - 1; i >= 0; i--) {
          this.removeListener(type, listeners[i]);
        }
      }

      return this;
    };

function _listeners(target, type, unwrap) {
  var events = target._events;

  if (events === undefined)
    return [];

  var evlistener = events[type];
  if (evlistener === undefined)
    return [];

  if (typeof evlistener === 'function')
    return unwrap ? [evlistener.listener || evlistener] : [evlistener];

  return unwrap ?
    unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);
}

EventEmitter.prototype.listeners = function listeners(type) {
  return _listeners(this, type, true);
};

EventEmitter.prototype.rawListeners = function rawListeners(type) {
  return _listeners(this, type, false);
};

EventEmitter.listenerCount = function(emitter, type) {
  if (typeof emitter.listenerCount === 'function') {
    return emitter.listenerCount(type);
  } else {
    return listenerCount.call(emitter, type);
  }
};

EventEmitter.prototype.listenerCount = listenerCount;
function listenerCount(type) {
  var events = this._events;

  if (events !== undefined) {
    var evlistener = events[type];

    if (typeof evlistener === 'function') {
      return 1;
    } else if (evlistener !== undefined) {
      return evlistener.length;
    }
  }

  return 0;
}

EventEmitter.prototype.eventNames = function eventNames() {
  return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];
};

function arrayClone(arr, n) {
  var copy = new Array(n);
  for (var i = 0; i < n; ++i)
    copy[i] = arr[i];
  return copy;
}

function spliceOne(list, index) {
  for (; index + 1 < list.length; index++)
    list[index] = list[index + 1];
  list.pop();
}

function unwrapListeners(arr) {
  var ret = new Array(arr.length);
  for (var i = 0; i < ret.length; ++i) {
    ret[i] = arr[i].listener || arr[i];
  }
  return ret;
}

function once(emitter, name) {
  return new Promise(function (resolve, reject) {
    function errorListener(err) {
      emitter.removeListener(name, resolver);
      reject(err);
    }

    function resolver() {
      if (typeof emitter.removeListener === 'function') {
        emitter.removeListener('error', errorListener);
      }
      resolve([].slice.call(arguments));
    };

    eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });
    if (name !== 'error') {
      addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });
    }
  });
}

function addErrorHandlerIfEventEmitter(emitter, handler, flags) {
  if (typeof emitter.on === 'function') {
    eventTargetAgnosticAddListener(emitter, 'error', handler, flags);
  }
}

function eventTargetAgnosticAddListener(emitter, name, listener, flags) {
  if (typeof emitter.on === 'function') {
    if (flags.once) {
      emitter.once(name, listener);
    } else {
      emitter.on(name, listener);
    }
  } else if (typeof emitter.addEventListener === 'function') {
    // EventTarget does not have `error` event semantics like Node
    // EventEmitters, we do not listen for `error` events here.
    emitter.addEventListener(name, function wrapListener(arg) {
      // IE does not have builtin `{ once: true }` support so we
      // have to do it manually.
      if (flags.once) {
        emitter.removeEventListener(name, wrapListener);
      }
      listener(arg);
    });
  } else {
    throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type ' + typeof emitter);
  }
}


/***/ }),

/***/ "fb27":
/***/ (function(module, exports, __webpack_require__) {

var DomHandler = __webpack_require__("f1d3");
var DomUtils = __webpack_require__("2241");

//TODO: make this a streamable handler
function FeedHandler(callback, options) {
    this.init(callback, options);
}

__webpack_require__("3fb5")(FeedHandler, DomHandler);

FeedHandler.prototype.init = DomHandler;

function getElements(what, where) {
    return DomUtils.getElementsByTagName(what, where, true);
}
function getOneElement(what, where) {
    return DomUtils.getElementsByTagName(what, where, true, 1)[0];
}
function fetch(what, where, recurse) {
    return DomUtils.getText(
        DomUtils.getElementsByTagName(what, where, recurse, 1)
    ).trim();
}

function addConditionally(obj, prop, what, where, recurse) {
    var tmp = fetch(what, where, recurse);
    if (tmp) obj[prop] = tmp;
}

var isValidFeed = function(value) {
    return value === "rss" || value === "feed" || value === "rdf:RDF";
};

FeedHandler.prototype.onend = function() {
    var feed = {},
        feedRoot = getOneElement(isValidFeed, this.dom),
        tmp,
        childs;

    if (feedRoot) {
        if (feedRoot.name === "feed") {
            childs = feedRoot.children;

            feed.type = "atom";
            addConditionally(feed, "id", "id", childs);
            addConditionally(feed, "title", "title", childs);
            if (
                (tmp = getOneElement("link", childs)) &&
                (tmp = tmp.attribs) &&
                (tmp = tmp.href)
            )
                feed.link = tmp;
            addConditionally(feed, "description", "subtitle", childs);
            if ((tmp = fetch("updated", childs))) feed.updated = new Date(tmp);
            addConditionally(feed, "author", "email", childs, true);

            feed.items = getElements("entry", childs).map(function(item) {
                var entry = {},
                    tmp;

                item = item.children;

                addConditionally(entry, "id", "id", item);
                addConditionally(entry, "title", "title", item);
                if (
                    (tmp = getOneElement("link", item)) &&
                    (tmp = tmp.attribs) &&
                    (tmp = tmp.href)
                )
                    entry.link = tmp;
                if ((tmp = fetch("summary", item) || fetch("content", item)))
                    entry.description = tmp;
                if ((tmp = fetch("updated", item)))
                    entry.pubDate = new Date(tmp);
                return entry;
            });
        } else {
            childs = getOneElement("channel", feedRoot.children).children;

            feed.type = feedRoot.name.substr(0, 3);
            feed.id = "";
            addConditionally(feed, "title", "title", childs);
            addConditionally(feed, "link", "link", childs);
            addConditionally(feed, "description", "description", childs);
            if ((tmp = fetch("lastBuildDate", childs)))
                feed.updated = new Date(tmp);
            addConditionally(feed, "author", "managingEditor", childs, true);

            feed.items = getElements("item", feedRoot.children).map(function(
                item
            ) {
                var entry = {},
                    tmp;

                item = item.children;

                addConditionally(entry, "id", "guid", item);
                addConditionally(entry, "title", "title", item);
                addConditionally(entry, "link", "link", item);
                addConditionally(entry, "description", "description", item);
                if ((tmp = fetch("pubDate", item)))
                    entry.pubDate = new Date(tmp);
                return entry;
            });
        }
    }
    this.dom = feed;
    DomHandler.prototype._handleCallback.call(
        this,
        feedRoot ? null : Error("couldn't find root of feed")
    );
};

module.exports = FeedHandler;


/***/ }),

/***/ "fba5":
/***/ (function(module, exports, __webpack_require__) {

var assocIndexOf = __webpack_require__("cb5a");

/**
 * Checks if a list cache value for `key` exists.
 *
 * @private
 * @name has
 * @memberOf ListCache
 * @param {string} key The key of the entry to check.
 * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
 */
function listCacheHas(key) {
  return assocIndexOf(this.__data__, key) > -1;
}

module.exports = listCacheHas;


/***/ }),

/***/ "fce2":
/***/ (function(module, exports, __webpack_require__) {

var parse = __webpack_require__("807c"),
    compile = __webpack_require__("08c7");

module.exports = function nthCheck(formula){
	return compile(parse(formula));
};

module.exports.parse = parse;
module.exports.compile = compile;

/***/ }),

/***/ "fe50":
/***/ (function(module, exports, __webpack_require__) {

var arrayEach = __webpack_require__("8057"),
    arrayIncludes = __webpack_require__("8db3");

/** Used to compose bitmasks for function metadata. */
var WRAP_BIND_FLAG = 1,
    WRAP_BIND_KEY_FLAG = 2,
    WRAP_CURRY_FLAG = 8,
    WRAP_CURRY_RIGHT_FLAG = 16,
    WRAP_PARTIAL_FLAG = 32,
    WRAP_PARTIAL_RIGHT_FLAG = 64,
    WRAP_ARY_FLAG = 128,
    WRAP_REARG_FLAG = 256,
    WRAP_FLIP_FLAG = 512;

/** Used to associate wrap methods with their bit flags. */
var wrapFlags = [
  ['ary', WRAP_ARY_FLAG],
  ['bind', WRAP_BIND_FLAG],
  ['bindKey', WRAP_BIND_KEY_FLAG],
  ['curry', WRAP_CURRY_FLAG],
  ['curryRight', WRAP_CURRY_RIGHT_FLAG],
  ['flip', WRAP_FLIP_FLAG],
  ['partial', WRAP_PARTIAL_FLAG],
  ['partialRight', WRAP_PARTIAL_RIGHT_FLAG],
  ['rearg', WRAP_REARG_FLAG]
];

/**
 * Updates wrapper `details` based on `bitmask` flags.
 *
 * @private
 * @returns {Array} details The details to modify.
 * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
 * @returns {Array} Returns `details`.
 */
function updateWrapDetails(details, bitmask) {
  arrayEach(wrapFlags, function(pair) {
    var value = '_.' + pair[0];
    if ((bitmask & pair[1]) && !arrayIncludes(details, value)) {
      details.push(value);
    }
  });
  return details.sort();
}

module.exports = updateWrapDetails;


/***/ }),

/***/ "fe77":
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var cheerio__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("02cc");
/* harmony import */ var cheerio__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(cheerio__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("ef13");
/* harmony import */ var _data_task_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("cec6");
/* harmony import */ var _data_log_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("6b23");
/* harmony import */ var _utils_websocket__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("b2eb");
/* harmony import */ var _utils_event__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("42a5");
/* harmony import */ var _utils_util_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("ca00");
/* harmony import */ var _config_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("db49");
/* harmony import */ var _platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("a1d0");
/* harmony import */ var _platform_tiktok_xGnarly_inedx__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("6a0a");
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }

function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return exports; }; var exports = {}, Op = Object.prototype, hasOwn = Op.hasOwnProperty, $Symbol = "function" == typeof Symbol ? Symbol : {}, iteratorSymbol = $Symbol.iterator || "@@iterator", asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator", toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag"; function define(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: !0, configurable: !0, writable: !0 }), obj[key]; } try { define({}, ""); } catch (err) { define = function define(obj, key, value) { return obj[key] = value; }; } function wrap(innerFn, outerFn, self, tryLocsList) { var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator, generator = Object.create(protoGenerator.prototype), context = new Context(tryLocsList || []); return generator._invoke = function (innerFn, self, context) { var state = "suspendedStart"; return function (method, arg) { if ("executing" === state) throw new Error("Generator is already running"); if ("completed" === state) { if ("throw" === method) throw arg; return doneResult(); } for (context.method = method, context.arg = arg;;) { var delegate = context.delegate; if (delegate) { var delegateResult = maybeInvokeDelegate(delegate, context); if (delegateResult) { if (delegateResult === ContinueSentinel) continue; return delegateResult; } } if ("next" === context.method) context.sent = context._sent = context.arg;else if ("throw" === context.method) { if ("suspendedStart" === state) throw state = "completed", context.arg; context.dispatchException(context.arg); } else "return" === context.method && context.abrupt("return", context.arg); state = "executing"; var record = tryCatch(innerFn, self, context); if ("normal" === record.type) { if (state = context.done ? "completed" : "suspendedYield", record.arg === ContinueSentinel) continue; return { value: record.arg, done: context.done }; } "throw" === record.type && (state = "completed", context.method = "throw", context.arg = record.arg); } }; }(innerFn, self, context), generator; } function tryCatch(fn, obj, arg) { try { return { type: "normal", arg: fn.call(obj, arg) }; } catch (err) { return { type: "throw", arg: err }; } } exports.wrap = wrap; var ContinueSentinel = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var IteratorPrototype = {}; define(IteratorPrototype, iteratorSymbol, function () { return this; }); var getProto = Object.getPrototypeOf, NativeIteratorPrototype = getProto && getProto(getProto(values([]))); NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype); var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype); function defineIteratorMethods(prototype) { ["next", "throw", "return"].forEach(function (method) { define(prototype, method, function (arg) { return this._invoke(method, arg); }); }); } function AsyncIterator(generator, PromiseImpl) { function invoke(method, arg, resolve, reject) { var record = tryCatch(generator[method], generator, arg); if ("throw" !== record.type) { var result = record.arg, value = result.value; return value && "object" == _typeof(value) && hasOwn.call(value, "__await") ? PromiseImpl.resolve(value.__await).then(function (value) { invoke("next", value, resolve, reject); }, function (err) { invoke("throw", err, resolve, reject); }) : PromiseImpl.resolve(value).then(function (unwrapped) { result.value = unwrapped, resolve(result); }, function (error) { return invoke("throw", error, resolve, reject); }); } reject(record.arg); } var previousPromise; this._invoke = function (method, arg) { function callInvokeWithMethodAndArg() { return new PromiseImpl(function (resolve, reject) { invoke(method, arg, resolve, reject); }); } return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); }; } function maybeInvokeDelegate(delegate, context) { var method = delegate.iterator[context.method]; if (undefined === method) { if (context.delegate = null, "throw" === context.method) { if (delegate.iterator.return && (context.method = "return", context.arg = undefined, maybeInvokeDelegate(delegate, context), "throw" === context.method)) return ContinueSentinel; context.method = "throw", context.arg = new TypeError("The iterator does not provide a 'throw' method"); } return ContinueSentinel; } var record = tryCatch(method, delegate.iterator, context.arg); if ("throw" === record.type) return context.method = "throw", context.arg = record.arg, context.delegate = null, ContinueSentinel; var info = record.arg; return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, "return" !== context.method && (context.method = "next", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = "throw", context.arg = new TypeError("iterator result is not an object"), context.delegate = null, ContinueSentinel); } function pushTryEntry(locs) { var entry = { tryLoc: locs[0] }; 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry); } function resetTryEntry(entry) { var record = entry.completion || {}; record.type = "normal", delete record.arg, entry.completion = record; } function Context(tryLocsList) { this.tryEntries = [{ tryLoc: "root" }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0); } function values(iterable) { if (iterable) { var iteratorMethod = iterable[iteratorSymbol]; if (iteratorMethod) return iteratorMethod.call(iterable); if ("function" == typeof iterable.next) return iterable; if (!isNaN(iterable.length)) { var i = -1, next = function next() { for (; ++i < iterable.length;) { if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next; } return next.value = undefined, next.done = !0, next; }; return next.next = next; } } return { next: doneResult }; } function doneResult() { return { value: undefined, done: !0 }; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, define(Gp, "constructor", GeneratorFunctionPrototype), define(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, "GeneratorFunction"), exports.isGeneratorFunction = function (genFun) { var ctor = "function" == typeof genFun && genFun.constructor; return !!ctor && (ctor === GeneratorFunction || "GeneratorFunction" === (ctor.displayName || ctor.name)); }, exports.mark = function (genFun) { return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, "GeneratorFunction")), genFun.prototype = Object.create(Gp), genFun; }, exports.awrap = function (arg) { return { __await: arg }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () { return this; }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) { void 0 === PromiseImpl && (PromiseImpl = Promise); var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl); return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) { return result.done ? result.value : iter.next(); }); }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, "Generator"), define(Gp, iteratorSymbol, function () { return this; }), define(Gp, "toString", function () { return "[object Generator]"; }), exports.keys = function (object) { var keys = []; for (var key in object) { keys.push(key); } return keys.reverse(), function next() { for (; keys.length;) { var key = keys.pop(); if (key in object) return next.value = key, next.done = !1, next; } return next.done = !0, next; }; }, exports.values = values, Context.prototype = { constructor: Context, reset: function reset(skipTempReset) { if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = "next", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) { "t" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined); } }, stop: function stop() { this.done = !0; var rootRecord = this.tryEntries[0].completion; if ("throw" === rootRecord.type) throw rootRecord.arg; return this.rval; }, dispatchException: function dispatchException(exception) { if (this.done) throw exception; var context = this; function handle(loc, caught) { return record.type = "throw", record.arg = exception, context.next = loc, caught && (context.method = "next", context.arg = undefined), !!caught; } for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i], record = entry.completion; if ("root" === entry.tryLoc) return handle("end"); if (entry.tryLoc <= this.prev) { var hasCatch = hasOwn.call(entry, "catchLoc"), hasFinally = hasOwn.call(entry, "finallyLoc"); if (hasCatch && hasFinally) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } else if (hasCatch) { if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0); } else { if (!hasFinally) throw new Error("try statement without catch or finally"); if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc); } } } }, abrupt: function abrupt(type, arg) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc <= this.prev && hasOwn.call(entry, "finallyLoc") && this.prev < entry.finallyLoc) { var finallyEntry = entry; break; } } finallyEntry && ("break" === type || "continue" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null); var record = finallyEntry ? finallyEntry.completion : {}; return record.type = type, record.arg = arg, finallyEntry ? (this.method = "next", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record); }, complete: function complete(record, afterLoc) { if ("throw" === record.type) throw record.arg; return "break" === record.type || "continue" === record.type ? this.next = record.arg : "return" === record.type ? (this.rval = this.arg = record.arg, this.method = "return", this.next = "end") : "normal" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel; }, finish: function finish(finallyLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel; } }, catch: function _catch(tryLoc) { for (var i = this.tryEntries.length - 1; i >= 0; --i) { var entry = this.tryEntries[i]; if (entry.tryLoc === tryLoc) { var record = entry.completion; if ("throw" === record.type) { var thrown = record.arg; resetTryEntry(entry); } return thrown; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(iterable, resultName, nextLoc) { return this.delegate = { iterator: values(iterable), resultName: resultName, nextLoc: nextLoc }, "next" === this.method && (this.arg = undefined), ContinueSentinel; } }, exports; }

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }













if (false) {} // 添加响应拦截事件 - 拦截亚马逊接口提示验证码


_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* responseInterceptorsEvent */ "F"].push( /*#__PURE__*/function () {
  var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(response) {
    var url, _yield$localStorage$g, company_id, $, host, msg;

    return _regeneratorRuntime().wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            _context.prev = 0;
            url = response.url;
            _context.next = 4;
            return _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].getItem(['company_id']);

          case 4:
            _yield$localStorage$g = _context.sent;
            company_id = _yield$localStorage$g.company_id;

            // 此功能目前只对部分客户开放
            if (url.toLocaleLowerCase().indexOf('amazon') > -1 && _config_js__WEBPACK_IMPORTED_MODULE_7__[/* InterceptVCCompanyid */ "a"].indexOf(company_id) > -1) {
              if (JSON.stringify(response.data).indexOf('auth-mfa-otpcode') > -1 || chrome.amazonVerifycodeText) {
                // 二次校验是否是验证码页面
                $ = cheerio__WEBPACK_IMPORTED_MODULE_0___default.a.load(response.data);

                if ($('#auth-mfa-form #auth-mfa-otpcode') || chrome.amazonVerifycodeText) {
                  host = url.match(/^(https?:\/\/[^/]+)/)[1];
                  _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].amazonVerifycode = {
                    host: host,
                    sellerId: _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId && _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId.split(',')[0]
                  }; // 存到本地

                  _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].setItem({
                    amazonVerifycode: _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].amazonVerifycode
                  }); // 暂停

                  Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* suspend */ "J"])(60 * 1000 * 60 * 24 * 365, '99'); // 通知弹窗

                  chrome.runtime.sendMessage({
                    type: 'amazonVerifycode'
                  }, function () {}); // 上报

                  _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].report("".concat(host, "\u9700\u8981\u8F93\u5165\u9A8C\u8BC1\u7801-verifyCodeStart"), 'sensitive', _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].amazonVerifycode);
                }
              }
            }

            _context.next = 13;
            break;

          case 9:
            _context.prev = 9;
            _context.t0 = _context["catch"](0);
            msg = "\u62E6\u622A\u4E9A\u9A6C\u900A\u63A5\u53E3\u63D0\u793A\u9A8C\u8BC1\u7801\u5931\u8D25---".concat(Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* isError */ "u"])(_context.t0));
            _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog(msg);

          case 13:
          case "end":
            return _context.stop();
        }
      }
    }, _callee, null, [[0, 9]]);
  }));

  return function (_x) {
    return _ref.apply(this, arguments);
  };
}());
/**
 * @description 监听页面发送消息
 */

chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) {
  switch (request.type) {
    case 'suspend':
      // 如果是用户手动暂停的，则停止中断
      Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* suspend */ "J"])().then(function (res) {
        if (res !== '99') {
          _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('用户切换站点，中断执行');
          Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* suspend */ "J"])(20 * 60 * 1000);
        }
      });
      break;
    // 切换站点，尝试三次，如果都失败，通知页面error

    case 'changeSite':
      // for (let i = 3; i--;) {
      //   const flag = await amazon.onlyChangeSite(request)
      //   if (flag && flag !== -999) {
      //     log.setLog(`尝试切换回原站点成功`)
      //     // 通知contentjs记录当前站点
      //     await amazon.siteSwitched(request.origin, request.marketplaceId)
      //     sendResponse({ result: 'success' })
      //     res = { result: 'success' }
      //     break
      //   } else {
      //     log.setLog('尝试切换回原站点失败')
      //     sendResponse({ result: 'error' })
      //     res = { result: 'error' }
      //   }
      // }
      _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].onlyChangeSite(request).then(function (flag) {
        if (flag && flag !== -999) {
          _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("\u5C1D\u8BD5\u5207\u6362\u56DE\u539F\u7AD9\u70B9\u6210\u529F"); // 通知contentjs记录当前站点
          // amazon.siteSwitched(request.origin, request.marketplaceId)

          sendResponse({
            code: 1,
            countryCode: request.marketplaceId
          });
        } else {
          _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('尝试切换回原站点失败');
          sendResponse({
            code: 0
          });
        }
      }); // 如果是用户手动暂停的，则停止中断

      Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* suspend */ "J"])().then(function (res) {
        if (res !== '99') {
          // 中断任务标志，一小时后过期
          Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* suspend */ "J"])(60 * 60 * 1000);
        }
      });
      break;
    // 监听pop页面自定义获取

    case 'popCustom':
      _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("\u81EA\u5B9A\u4E49\u83B7\u53D6-\u51C6\u5907\u63D2\u5165\u961F\u5217-".concat(request.params));

      if (request.params) {
        _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].initTaskList(JSON.parse(request.params));
        sendResponse({
          result: 'success'
        });
        sendDataToPopup();
      }

      break;
    // 监听Temu pop页面自定义获取

    case 'popTemuCustom':
      _platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatform */ "a"].multiPlatformTaskInstance.getTaskList().then(function () {
        sendDataToPopup();
        sendResponse({
          result: 'success'
        });
      });
      break;
    // 监听pop页面发送的goExecute事件

    case 'goExecute':
      // 恢复运行（触发tas.js taskSchedule方法）
      Object(_utils_event__WEBPACK_IMPORTED_MODULE_5__[/* distribute */ "a"])('GoExecute');
      break;

    case 'goExecuteTemu':
      Object(_utils_event__WEBPACK_IMPORTED_MODULE_5__[/* distribute */ "a"])('GoExecuteTemu');
      break;
    // 重启插件

    case 'reload':
      Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* forceUpdate */ "j"])();
      break;
    // 监听popup getBgData

    case 'getBgData':
      sendDataToPopup();
      break;
    // 插件初始化

    case 'backgroundInit':
      bgInit();
      break;
    // 退出登录时，清除数据

    case 'clear':
      clear();
      break;
    // 检测站点

    case 'refreshSellerId':
      {
        _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].refreshSellerId(0).then(function (result) {
          sendResponse({
            result: result
          });
        });
      }
      break;
    // temu检测站点

    case 'multiPlatformRefreshSellerId':
      {
        // 记录当前店铺id
        var oldStoreId = _platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatform */ "a"].storeInfo && _platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatform */ "a"].storeInfo.length ? _platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatform */ "a"].storeInfo[0] : '';
        Object(_platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatformInitSite */ "e"])().then(function (result) {
          sendDataToPopup();

          if (result !== 'refreshing' && result) {
            if (!_platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatform */ "a"].multiPlatformTaskInstance) {
              Object(_platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatformInitTask */ "f"])();
            } else if (!_platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatform */ "a"].storeInfo.find(function (mallId) {
              return mallId === oldStoreId;
            })) {
              // 如果店铺被切换，则重新初始化
              result = 'changeSite';
              Object(_platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatformTaskClear */ "h"])();
              Object(_platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatformInitTask */ "f"])();
            }
          } else if (result !== 'refreshing') {
            Object(_platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatformTaskClear */ "h"])();
          }

          sendResponse({
            result: result
          });
        });
      }
      break;
    // 获取任务列表

    case 'getTaskList':
      {
        if (request.params.platform === 'amazon') {
          _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].getTaskList(_data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId, 1).then(function () {
            sendDataToPopup();
          });
        } else {
          var multiPlatformTaskInstance = _platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatform */ "a"].multiPlatformTaskInstance;
          multiPlatformTaskInstance && multiPlatformTaskInstance.getTaskList(1).then(function () {
            sendDataToPopup();
          });
        }
      }
      break;
    // 获取ipi任务

    case 'getIpiData':
      {
        _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].immediatelyGetIpi(_data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId).then(function (result) {
          sendDataToPopup();
          sendResponse({
            result: result
          });
        });
      }
      break;
    // 删除任务

    case 'deleteTask':
      {
        if (request.params.platform === 'amazon') {
          _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].taskList.forEach(function (item) {
            if (item.task_id === request.params.taskId) item.isDelete = true;
          });
        } else {
          var _multiPlatformTaskInstance = _platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatform */ "a"].multiPlatformTaskInstance;
          _multiPlatformTaskInstance && _multiPlatformTaskInstance.taskList.forEach(function (item) {
            if (item.task_id === request.params.taskId) item.isDelete = true;
          });
        }

        sendDataToPopup();
      }
      break;
    // 清除amazon.amazonVerifycode

    case 'clearAmazonVerifycode':
      {
        _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].amazonVerifycode = null;
      }
      break;
    // 日志上报

    case 'reportLog':
      _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].report(request.text, request.reportType);
      break;
    // 记录是否不在提醒切换站点提醒

    case 'sitePopCheckbox':
      if (request.noRemind) {
        _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].setItem({
          sitePopCheckbox: Date.now()
        });
      }

      break;
    // 触发多平台弹窗重新获取按钮

    case 'multiPlatformReGet':
      {
        var _multiPlatformTaskInstance2 = _platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatform */ "a"].multiPlatformTaskInstance;
        _multiPlatformTaskInstance2 && _multiPlatformTaskInstance2.handleReGet();
        sendDataToPopup();
        sendResponse({
          result: 'success'
        });
      }
      break;
  }

  return true;
});
chrome.runtime.onInstalled.addListener(function (details) {
  if (details.reason === 'install') {
    _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].setItem({
      uuid: Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* _uuid */ "a"])()
    });
  }

  if (details.reason === 'update' || details.reason === 'chrome_update') {
    Object(_platform_tiktok_xGnarly_inedx__WEBPACK_IMPORTED_MODULE_9__[/* getSigner */ "c"])().closeSharedWindowOnly().catch(function () {});
  }
});
/**
 * Service Worker 终止前尽力关闭 TikTok 共享签名窗口（禁用/重载等场景）。
 * 用户从 Chrome 中「移除扩展」时通常无法再执行扩展代码，无法保证此处一定运行。
 */

self.addEventListener('unload', function () {
  try {
    var wid = Object(_platform_tiktok_xGnarly_inedx__WEBPACK_IMPORTED_MODULE_9__[/* getSigner */ "c"])().sharedWindowId;

    if (wid != null) {
      chrome.windows.remove(wid, function () {});
    }
  } catch (e) {
    /* ignore */
  }
});
/**
 * @description 监听onAlarm事件
 */

chrome.alarms.onAlarm.addListener( /*#__PURE__*/function () {
  var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(_ref2) {
    var name, alarmsMethod, onceNames;
    return _regeneratorRuntime().wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            name = _ref2.name;
            alarmsMethod = _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* alarms */ "b"].alarmsMethod, onceNames = _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* alarms */ "b"].onceNames;

            if (alarmsMethod[name]) {
              alarmsMethod[name](name);

              if (onceNames.has(name)) {
                delete alarmsMethod[name];
                onceNames.delete(name);
              }
            }

          case 3:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));

  return function (_x2) {
    return _ref3.apply(this, arguments);
  };
}()); // 不存在uuid重新写入

_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].getItem(['uuid']).then(function (_ref4) {
  var uuid = _ref4.uuid;
  if (!uuid) _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].setItem({
    uuid: Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* _uuid */ "a"])()
  });
});
/**
 * @description 获取sellerID
 */

var initBySellerId = /*#__PURE__*/function () {
  var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
    var time,
        status,
        _yield$localStorage$g2,
        token,
        _yield$localStorage$g3,
        checkUpdate,
        today,
        key,
        id,
        _args3 = arguments;

    return _regeneratorRuntime().wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            time = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : 0;
            _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].clearErrorTime();
            _context3.next = 4;
            return Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* checkVersion */ "c"])();

          case 4:
            _context3.next = 6;
            return _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].checkEnable();

          case 6:
            status = _context3.sent;
            _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].setItem({
              enableObj: {
                status: status
              }
            }); // 插件当前是否维护中 status为0：维护中，1：可运行

            _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('-------initSellerId-------');
            _context3.next = 11;
            return _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].getItem(['token']);

          case 11:
            _yield$localStorage$g2 = _context3.sent;
            token = _yield$localStorage$g2.token;

            if (!token) {
              _context3.next = 33;
              break;
            }

            _context3.prev = 14;
            _context3.next = 17;
            return _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].getItem(['checkUpdate']);

          case 17:
            _yield$localStorage$g3 = _context3.sent;
            checkUpdate = _yield$localStorage$g3.checkUpdate;
            today = new Date();
            key = today.getMonth() + 1 + '' + today.getDate(); // 如果没有获取到sellerId或第一次初始化或checkUpdate不等于当天key，则需要刷新获取sellerID

            if (!(!_data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId || checkUpdate == null || checkUpdate != key)) {
              _context3.next = 27;
              break;
            }

            _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].setItem({
              'checkUpdate': key
            });
            _context3.next = 25;
            return _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].refreshSellerId(time);

          case 25:
            id = _context3.sent;
            _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('sellerID:', id);

          case 27:
            // 隐藏站点徽章
            Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* setBadge */ "G"])(10);
            _context3.next = 33;
            break;

          case 30:
            _context3.prev = 30;
            _context3.t0 = _context3["catch"](14);
            _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("initBySellerId\u62A5\u9519---".concat(Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* isError */ "u"])(_context3.t0)));

          case 33:
            return _context3.abrupt("return", true);

          case 34:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3, null, [[14, 30]]);
  }));

  return function initBySellerId() {
    return _ref5.apply(this, arguments);
  };
}();
/**
 * @description 亚马逊初始化
 */


function amzonInit() {
  return _amzonInit.apply(this, arguments);
}
/**
 * @description 插件初始化
 */


function _amzonInit() {
  _amzonInit = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {
    var count,
        _yield$localStorage$g7,
        platform,
        _args11 = arguments;

    return _regeneratorRuntime().wrap(function _callee11$(_context11) {
      while (1) {
        switch (_context11.prev = _context11.next) {
          case 0:
            count = _args11.length > 0 && _args11[0] !== undefined ? _args11[0] : 0;
            // 先取消重试定时器，防止用户点击刷新时重复调用
            chrome.alarms.clear('amzonInit'); // 获取当前企业已授权站点

            _context11.next = 4;
            return _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].getItem(['platform']);

          case 4:
            _yield$localStorage$g7 = _context11.sent;
            platform = _yield$localStorage$g7.platform;
            _context11.next = 8;
            return Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* gatePost */ "m"])('api/v1/region', {
              platform: platform
            }, 'client').then(function (res) {
              if (res.code === 1) {
                _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].authorizedSite = res.data;
              }
            }).catch(function () {});

          case 8:
            _context11.next = 10;
            return initBySellerId(3000);

          case 10:
            if (!_data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId) {
              _context11.next = 29;
              break;
            }

            // 连接websocket
            _utils_websocket__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].init(_data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId); // 上传版本信息、店铺信息

            _context11.t0 = _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"];
            _context11.t1 = _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId;
            _context11.next = 16;
            return Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* suspend */ "J"])();

          case 16:
            _context11.t2 = !!_context11.sent;
            _context11.t3 = {
              seller_ids: _context11.t1,
              is_pause: _context11.t2
            };
            _context11.next = 20;
            return _context11.t0.uploadInfo.call(_context11.t0, _context11.t3);

          case 20:
            _context11.next = 22;
            return _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].getTaskType();

          case 22:
            _context11.next = 24;
            return _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].getTaskList(_data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId);

          case 24:
            // 设置轮询
            setTimerLoop();
            Object(_utils_event__WEBPACK_IMPORTED_MODULE_5__[/* monitor */ "b"])('ReceivePush', _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].receivePush);
            Object(_utils_event__WEBPACK_IMPORTED_MODULE_5__[/* monitor */ "b"])('GoExecute', _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].goExecute);
            _context11.next = 30;
            break;

          case 29:
            if (count < 3) {
              // 未检测到店铺时，重试三次
              _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* alarms */ "b"].setTimeout(function () {
                _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("[\u68C0\u6D4B\u7AD9\u70B9]\u91CD\u8BD5\u7B2C".concat(count + 1, "\u6B21"));
                amzonInit(++count);
              }, 'amzonInit', 10 * 1000);
            }

          case 30:
          case "end":
            return _context11.stop();
        }
      }
    }, _callee11);
  }));
  return _amzonInit.apply(this, arguments);
}

var bgInit = /*#__PURE__*/function () {
  var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
    var _yield$localStorage$g4, token, platform;

    return _regeneratorRuntime().wrap(function _callee4$(_context4) {
      while (1) {
        switch (_context4.prev = _context4.next) {
          case 0:
            // 清除所有请求监听
            Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* removeAllDeclarativeNetRequestRules */ "C"])();
            _context4.next = 3;
            return _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].getItem(['token', 'platform']);

          case 3:
            _yield$localStorage$g4 = _context4.sent;
            token = _yield$localStorage$g4.token;
            platform = _yield$localStorage$g4.platform;

            if (token) {
              _context4.next = 8;
              break;
            }

            return _context4.abrupt("return");

          case 8:
            // 启动插件内部心跳（让Service Worker一直工作）
            Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* keepServiceWorker */ "x"])(); // 兼容旧版本已登录亚马逊的插件

            if (!platform || ['vc', 'amazon'].indexOf(platform) > -1) {
              _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("---------\u8FDB\u5165\u4E9A\u9A6C\u900A".concat(platform, "---------"));
              amzonInit();
            } else {
              _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('---------进入多平台---------');
              Object(_platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatformInit */ "d"])();
            } // 往tab页注入脚本


            injectScriptToTab();

          case 11:
          case "end":
            return _context4.stop();
        }
      }
    }, _callee4);
  }));

  return function bgInit() {
    return _ref6.apply(this, arguments);
  };
}();
/**
 * @description
 */


var injectScriptToTab = /*#__PURE__*/function () {
  var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
    return _regeneratorRuntime().wrap(function _callee6$(_context6) {
      while (1) {
        switch (_context6.prev = _context6.next) {
          case 0:
            // 获取所有窗口中的所有标签页
            chrome.tabs.query({}, /*#__PURE__*/function () {
              var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(tabs) {
                var amazonPageIds;
                return _regeneratorRuntime().wrap(function _callee5$(_context5) {
                  while (1) {
                    switch (_context5.prev = _context5.next) {
                      case 0:
                        amazonPageIds = tabs.filter(function (_ref9) {
                          var url = _ref9.url;
                          return url && url.toLocaleLowerCase().indexOf('amazon') > -1;
                        }).map(function (_ref10) {
                          var id = _ref10.id,
                              url = _ref10.url;
                          return {
                            id: id,
                            url: url
                          };
                        }); // 注入单个脚本

                        amazonPageIds.map(function (_ref11) {
                          var id = _ref11.id,
                              url = _ref11.url;
                          chrome.scripting.executeScript({
                            target: {
                              tabId: id
                            },
                            // tabId 是目标标签页的 ID
                            files: ['/js/content.js'] // 相对于扩展根目录的路径

                          }).then(function () {
                            console.log('脚本注入成功', url); // 发通知

                            var port = chrome.tabs.connect(id, {
                              name: 'inject-script'
                            });
                            port.postMessage({
                              cmd: 'initScript'
                            });
                          }).catch(function (err) {
                            console.error('脚本注入失败:', err, 'url---:', url);
                          });
                        });

                      case 2:
                      case "end":
                        return _context5.stop();
                    }
                  }
                }, _callee5);
              }));

              return function (_x3) {
                return _ref8.apply(this, arguments);
              };
            }());

          case 1:
          case "end":
            return _context6.stop();
        }
      }
    }, _callee6);
  }));

  return function injectScriptToTab() {
    return _ref7.apply(this, arguments);
  };
}();
/**
 * @description 定时函数
 */


function handlePolling() {
  return _handlePolling.apply(this, arguments);
} // 恢复暂停状态


function _handlePolling() {
  _handlePolling = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee12() {
    return _regeneratorRuntime().wrap(function _callee12$(_context12) {
      while (1) {
        switch (_context12.prev = _context12.next) {
          case 0:
            if (!_data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId) {
              _context12.next = 11;
              break;
            }

            _context12.t0 = _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"];
            _context12.t1 = _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId;
            _context12.next = 5;
            return Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* suspend */ "J"])();

          case 5:
            _context12.t2 = !!_context12.sent;
            _context12.t3 = {
              seller_ids: _context12.t1,
              is_pause: _context12.t2
            };

            _context12.t0.uploadInfo.call(_context12.t0, _context12.t3);

            // 清空财务报告页面csrftoken
            _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].clearFinanceCsrfToken(_config_js__WEBPACK_IMPORTED_MODULE_7__[/* POLLING_TIME */ "c"]); // 五分钟请求一次获取任务接口

            _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].getTaskList(_data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId);
            if (_data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].taskTypes.length === 0) _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].getTaskType();

          case 11:
          case "end":
            return _context12.stop();
        }
      }
    }, _callee12);
  }));
  return _handlePolling.apply(this, arguments);
}

var handleRestoreSuspend = /*#__PURE__*/function () {
  var _ref12 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
    var _yield$localStorage$g5, suspend;

    return _regeneratorRuntime().wrap(function _callee7$(_context7) {
      while (1) {
        switch (_context7.prev = _context7.next) {
          case 0:
            _context7.next = 2;
            return _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].getItem(['suspend']);

          case 2:
            _yield$localStorage$g5 = _context7.sent;
            suspend = _yield$localStorage$g5.suspend;

            if (suspend) {
              _context7.next = 6;
              break;
            }

            return _context7.abrupt("return");

          case 6:
            if (!(suspend == '99')) {
              _context7.next = 8;
              break;
            }

            return _context7.abrupt("return");

          case 8:
            if (suspend == '1' || Number(suspend) < Date.now()) {
              _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].report("\u3010sellerID:".concat(_data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId, "\u3011\u4EFB\u52A1\u6062\u590D\u6267\u884C\u3002"), 'info');
              _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].removeItem(['suspend']); // 恢复运行（触发tas.js taskSchedule方法）

              Object(_utils_event__WEBPACK_IMPORTED_MODULE_5__[/* distribute */ "a"])('GoExecute');
            }

          case 9:
          case "end":
            return _context7.stop();
        }
      }
    }, _callee7);
  }));

  return function handleRestoreSuspend() {
    return _ref12.apply(this, arguments);
  };
}();
/**
 * @description 往popup发送数据
 */


var sendDataToPopup = function sendDataToPopup() {
  var params = {
    amazon: _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"],
    amazonDone: true,
    task: _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"],
    log: _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"],
    PLUGIN_ENV: 'background',
    amazonObj: {},
    multiPlatform: _platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatform */ "a"]
  };
  chrome.runtime.sendMessage({
    type: 'updateBgData',
    params: JSON.stringify(params)
  }, function () {});
};
/**
 * @description 设置轮询
 */


var setTimerLoop = /*#__PURE__*/function () {
  var _ref13 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9() {
    var count;
    return _regeneratorRuntime().wrap(function _callee9$(_context9) {
      while (1) {
        switch (_context9.prev = _context9.next) {
          case 0:
            count = 0;
            _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* alarms */ "b"].setInterval( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {
              return _regeneratorRuntime().wrap(function _callee8$(_context8) {
                while (1) {
                  switch (_context8.prev = _context8.next) {
                    case 0:
                      count++;
                      _context8.next = 3;
                      return handlePolling();

                    case 3:
                      // 处理暂停状态（防止非手动暂停后关闭插件使插件永久暂停）
                      handleRestoreSuspend(); // 十分钟执行一次initBySellerId

                      if (!(count === 2)) {
                        _context8.next = 9;
                        break;
                      }

                      _context8.next = 7;
                      return initBySellerId();

                    case 7:
                      _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].checkDeleteAutoTask();
                      count = 0;

                    case 9:
                      // 执行重复任务
                      _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].runRepeat();

                    case 10:
                    case "end":
                      return _context8.stop();
                  }
                }
              }, _callee8);
            })), 'bgLoop', 5);

          case 2:
          case "end":
            return _context9.stop();
        }
      }
    }, _callee9);
  }));

  return function setTimerLoop() {
    return _ref13.apply(this, arguments);
  };
}();

var amazonClear = function amazonClear() {
  try {
    _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog('----退出登录，清除登录信息----');
    _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].removeItem(['token', 'refresh_token', 'company_id', 'uid', 'username', 'env_key', 'amazonVerifycode', 'domain', 'platform']);
    _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].clear();
    Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* clearKeepServiceWorker */ "d"])();
    _data_amazon_js__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"].sellerId = '';
    Object(_utils_event__WEBPACK_IMPORTED_MODULE_5__[/* removeMonitor */ "c"])('ReceivePush', _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].receivePush);
    Object(_utils_event__WEBPACK_IMPORTED_MODULE_5__[/* removeMonitor */ "c"])('GoExecute', _data_task_js__WEBPACK_IMPORTED_MODULE_2__[/* default */ "b"].goExecute);
    _utils_websocket__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"] && _utils_websocket__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"].webSocketClose();
  } catch (e) {
    _data_log_js__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"].setLog("amazonClear\u62A5\u9519---".concat(Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* isError */ "u"])(e)));
  }
};

var clear = /*#__PURE__*/function () {
  var _ref15 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {
    var _yield$localStorage$g6, platform;

    return _regeneratorRuntime().wrap(function _callee10$(_context10) {
      while (1) {
        switch (_context10.prev = _context10.next) {
          case 0:
            _context10.next = 2;
            return _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].getItem(['platform']);

          case 2:
            _yield$localStorage$g6 = _context10.sent;
            platform = _yield$localStorage$g6.platform;
            _utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* localStorage */ "y"].removeItem(['platform']);

            if (!platform || platform === 'amazon') {
              amazonClear();
            } else {
              Object(_platform_common_index_js__WEBPACK_IMPORTED_MODULE_8__[/* multiPlatformClear */ "c"])();
            } // 退出登录时同步清理 TikTok 签名共享窗口和缓存


            _context10.next = 8;
            return Object(_platform_tiktok_xGnarly_inedx__WEBPACK_IMPORTED_MODULE_9__[/* getSigner */ "c"])().close();

          case 8:
            // 清除定时器
            chrome.alarms.clearAll(); // 清除所有请求监听

            Object(_utils_util_js__WEBPACK_IMPORTED_MODULE_6__[/* removeAllDeclarativeNetRequestRules */ "C"])();

          case 10:
          case "end":
            return _context10.stop();
        }
      }
    }, _callee10);
  }));

  return function clear() {
    return _ref15.apply(this, arguments);
  };
}();

bgInit(); // window.bgInit()

/***/ }),

/***/ "ff13":
/***/ (function(module, exports, __webpack_require__) {

module.exports = CollectingHandler;

function CollectingHandler(cbs) {
    this._cbs = cbs || {};
    this.events = [];
}

var EVENTS = __webpack_require__("d2de").EVENTS;
Object.keys(EVENTS).forEach(function(name) {
    if (EVENTS[name] === 0) {
        name = "on" + name;
        CollectingHandler.prototype[name] = function() {
            this.events.push([name]);
            if (this._cbs[name]) this._cbs[name]();
        };
    } else if (EVENTS[name] === 1) {
        name = "on" + name;
        CollectingHandler.prototype[name] = function(a) {
            this.events.push([name, a]);
            if (this._cbs[name]) this._cbs[name](a);
        };
    } else if (EVENTS[name] === 2) {
        name = "on" + name;
        CollectingHandler.prototype[name] = function(a, b) {
            this.events.push([name, a, b]);
            if (this._cbs[name]) this._cbs[name](a, b);
        };
    } else {
        throw Error("wrong number of arguments");
    }
});

CollectingHandler.prototype.onreset = function() {
    this.events = [];
    if (this._cbs.onreset) this._cbs.onreset();
};

CollectingHandler.prototype.restart = function() {
    if (this._cbs.onreset) this._cbs.onreset();

    for (var i = 0, len = this.events.length; i < len; i++) {
        if (this._cbs[this.events[i][0]]) {
            var num = this.events[i].length;

            if (num === 1) {
                this._cbs[this.events[i][0]]();
            } else if (num === 2) {
                this._cbs[this.events[i][0]](this.events[i][1]);
            } else {
                this._cbs[this.events[i][0]](
                    this.events[i][1],
                    this.events[i][2]
                );
            }
        }
    }
};


/***/ }),

/***/ "ffd6":
/***/ (function(module, exports, __webpack_require__) {

var baseGetTag = __webpack_require__("3729"),
    isObjectLike = __webpack_require__("1310");

/** `Object#toString` result references. */
var symbolTag = '[object Symbol]';

/**
 * Checks if `value` is classified as a `Symbol` primitive or object.
 *
 * @static
 * @memberOf _
 * @since 4.0.0
 * @category Lang
 * @param {*} value The value to check.
 * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
 * @example
 *
 * _.isSymbol(Symbol.iterator);
 * // => true
 *
 * _.isSymbol('abc');
 * // => false
 */
function isSymbol(value) {
  return typeof value == 'symbol' ||
    (isObjectLike(value) && baseGetTag(value) == symbolTag);
}

module.exports = isSymbol;


/***/ })

/******/ });