{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///vam.js","webpack:///webpack/bootstrap 35cafb5f7d52ba8b855c","webpack:///./node_modules/core-js/library/modules/_core.js","webpack:///./node_modules/core-js/library/modules/_wks.js","webpack:///./node_modules/core-js/library/modules/_global.js","webpack:///./src/constants.js","webpack:///./node_modules/core-js/library/modules/_object-dp.js","webpack:///./node_modules/core-js/library/modules/_descriptors.js","webpack:///./src/logger.js","webpack:///./node_modules/core-js/library/modules/_export.js","webpack:///./node_modules/core-js/library/modules/_is-object.js","webpack:///./node_modules/core-js/library/modules/_hide.js","webpack:///./node_modules/core-js/library/modules/_an-object.js","webpack:///./node_modules/core-js/library/modules/_ctx.js","webpack:///./node_modules/core-js/library/modules/_fails.js","webpack:///./node_modules/core-js/library/modules/_has.js","webpack:///./node_modules/core-js/library/modules/_to-iobject.js","webpack:///./src/application.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/babel-runtime/core-js/promise.js","webpack:///./node_modules/core-js/library/modules/es6.string.iterator.js","webpack:///./node_modules/core-js/library/modules/_iterators.js","webpack:///./node_modules/core-js/library/modules/_object-keys.js","webpack:///./node_modules/babel-runtime/core-js/object/keys.js","webpack:///./node_modules/core-js/library/modules/_property-desc.js","webpack:///./node_modules/core-js/library/modules/_cof.js","webpack:///./node_modules/core-js/library/modules/_set-to-string-tag.js","webpack:///./node_modules/core-js/library/modules/_to-object.js","webpack:///./node_modules/core-js/library/modules/web.dom.iterable.js","webpack:///./node_modules/core-js/library/modules/_meta.js","webpack:///./node_modules/core-js/library/modules/_defined.js","webpack:///./node_modules/core-js/library/modules/_library.js","webpack:///./node_modules/core-js/library/modules/_to-length.js","webpack:///./node_modules/core-js/library/modules/_uid.js","webpack:///./node_modules/core-js/library/modules/_classof.js","webpack:///./node_modules/core-js/library/modules/_for-of.js","webpack:///./node_modules/core-js/library/modules/_object-pie.js","webpack:///./node_modules/babel-runtime/core-js/object/prevent-extensions.js","webpack:///./node_modules/babel-runtime/helpers/typeof.js","webpack:///./node_modules/core-js/library/modules/_to-integer.js","webpack:///./node_modules/core-js/library/modules/_iter-define.js","webpack:///./node_modules/core-js/library/modules/_a-function.js","webpack:///./node_modules/core-js/library/modules/_dom-create.js","webpack:///./node_modules/core-js/library/modules/_to-primitive.js","webpack:///./node_modules/core-js/library/modules/_object-create.js","webpack:///./node_modules/core-js/library/modules/_iobject.js","webpack:///./node_modules/core-js/library/modules/_shared-key.js","webpack:///./node_modules/core-js/library/modules/_shared.js","webpack:///./node_modules/core-js/library/modules/_enum-bug-keys.js","webpack:///./node_modules/core-js/library/modules/_an-instance.js","webpack:///./node_modules/core-js/library/modules/core.get-iterator-method.js","webpack:///./node_modules/core-js/library/modules/_redefine-all.js","webpack:///./node_modules/core-js/library/modules/_wks-ext.js","webpack:///./node_modules/core-js/library/modules/_wks-define.js","webpack:///./node_modules/core-js/library/modules/_object-gops.js","webpack:///./node_modules/core-js/library/modules/_object-sap.js","webpack:///./src/utils.js","webpack:///./node_modules/babel-runtime/helpers/classCallCheck.js","webpack:///./node_modules/babel-runtime/helpers/createClass.js","webpack:///./node_modules/core-js/library/modules/_ie8-dom-define.js","webpack:///./node_modules/core-js/library/modules/_redefine.js","webpack:///./node_modules/core-js/library/modules/_object-keys-internal.js","webpack:///./node_modules/core-js/library/modules/_html.js","webpack:///./node_modules/core-js/library/modules/_iter-step.js","webpack:///./node_modules/core-js/library/modules/_iter-call.js","webpack:///./node_modules/core-js/library/modules/_is-array-iter.js","webpack:///./node_modules/core-js/library/modules/_task.js","webpack:///./node_modules/core-js/library/modules/_set-species.js","webpack:///./node_modules/core-js/library/modules/_iter-detect.js","webpack:///./node_modules/babel-runtime/helpers/slicedToArray.js","webpack:///./node_modules/core-js/library/modules/_is-array.js","webpack:///./node_modules/core-js/library/modules/_object-gopn.js","webpack:///./node_modules/babel-runtime/core-js/object/freeze.js","webpack:///./src/mixins/mixin.js","webpack:///./package.json","webpack:///./src/config-manager.js","webpack:///./node_modules/babel-runtime/core-js/symbol/iterator.js","webpack:///./node_modules/babel-runtime/core-js/symbol.js","webpack:///./node_modules/babel-runtime/helpers/toConsumableArray.js","webpack:///./src/index.js","webpack:///./node_modules/babel-runtime/regenerator/index.js","webpack:///./node_modules/regenerator-runtime/runtime-module.js","webpack:///./node_modules/regenerator-runtime/runtime.js","webpack:///./node_modules/babel-runtime/helpers/asyncToGenerator.js","webpack:///./node_modules/core-js/library/fn/promise.js","webpack:///./node_modules/core-js/library/modules/_string-at.js","webpack:///./node_modules/core-js/library/modules/_iter-create.js","webpack:///./node_modules/core-js/library/modules/_object-dps.js","webpack:///./node_modules/core-js/library/modules/_array-includes.js","webpack:///./node_modules/core-js/library/modules/_to-index.js","webpack:///./node_modules/core-js/library/modules/_object-gpo.js","webpack:///./node_modules/core-js/library/modules/es6.array.iterator.js","webpack:///./node_modules/core-js/library/modules/_add-to-unscopables.js","webpack:///./node_modules/core-js/library/modules/es6.promise.js","webpack:///./node_modules/core-js/library/modules/_species-constructor.js","webpack:///./node_modules/core-js/library/modules/_invoke.js","webpack:///./node_modules/core-js/library/modules/_microtask.js","webpack:///./node_modules/babel-runtime/core-js/is-iterable.js","webpack:///./node_modules/core-js/library/fn/is-iterable.js","webpack:///./node_modules/core-js/library/modules/core.is-iterable.js","webpack:///./node_modules/babel-runtime/core-js/get-iterator.js","webpack:///./node_modules/core-js/library/fn/get-iterator.js","webpack:///./node_modules/core-js/library/modules/core.get-iterator.js","webpack:///./src/check-dependencies.js","webpack:///./node_modules/core-js/library/fn/symbol/iterator.js","webpack:///./node_modules/core-js/library/fn/symbol/index.js","webpack:///./node_modules/core-js/library/modules/es6.symbol.js","webpack:///./node_modules/core-js/library/modules/_keyof.js","webpack:///./node_modules/core-js/library/modules/_enum-keys.js","webpack:///./node_modules/core-js/library/modules/_object-gopn-ext.js","webpack:///./node_modules/core-js/library/modules/_object-gopd.js","webpack:///./node_modules/core-js/library/modules/es7.symbol.async-iterator.js","webpack:///./node_modules/core-js/library/modules/es7.symbol.observable.js","webpack:///./src/legacy/dfp-pixel.js","webpack:///./node_modules/core-js/library/fn/object/freeze.js","webpack:///./node_modules/core-js/library/modules/es6.object.freeze.js","webpack:///./src/mixins/evented.js","webpack:///./node_modules/core-js/library/fn/object/prevent-extensions.js","webpack:///./node_modules/core-js/library/modules/es6.object.prevent-extensions.js","webpack:///./src/mixins/deferred.js","webpack:///./src/mixins/globalized.js","webpack:///./node_modules/core-js/library/fn/object/keys.js","webpack:///./node_modules/core-js/library/modules/es6.object.keys.js","webpack:///./src/mixins/user.js","webpack:///./src/advertising.js","webpack:///./node_modules/babel-runtime/core-js/set.js","webpack:///./node_modules/core-js/library/fn/set.js","webpack:///./node_modules/core-js/library/modules/es6.set.js","webpack:///./node_modules/core-js/library/modules/_collection-strong.js","webpack:///./node_modules/core-js/library/modules/_collection.js","webpack:///./node_modules/core-js/library/modules/_array-methods.js","webpack:///./node_modules/core-js/library/modules/_array-species-create.js","webpack:///./node_modules/core-js/library/modules/_array-species-constructor.js","webpack:///./node_modules/core-js/library/modules/es7.set.to-json.js","webpack:///./node_modules/core-js/library/modules/_collection-to-json.js","webpack:///./node_modules/core-js/library/modules/_array-from-iterable.js","webpack:///./node_modules/babel-runtime/core-js/json/stringify.js","webpack:///./node_modules/core-js/library/fn/json/stringify.js","webpack:///./node_modules/babel-runtime/core-js/object/define-property.js","webpack:///./node_modules/core-js/library/fn/object/define-property.js","webpack:///./node_modules/core-js/library/modules/es6.object.define-property.js","webpack:///./src/header-bidding/provider-manager.js","webpack:///./src/header-bidding/providers/amazon.js","webpack:///./src/header-bidding/providers/amazon-script.js","webpack:///./src/header-bidding/providers/prebid.js","webpack:///./src/header-bidding/config-manager.js","webpack:///./node_modules/babel-runtime/core-js/array/from.js","webpack:///./node_modules/core-js/library/fn/array/from.js","webpack:///./node_modules/core-js/library/modules/es6.array.from.js","webpack:///./node_modules/core-js/library/modules/_create-property.js","webpack:///./src/store/store.js","webpack:///./node_modules/babel-runtime/helpers/extends.js","webpack:///./node_modules/babel-runtime/core-js/object/assign.js","webpack:///./node_modules/core-js/library/fn/object/assign.js","webpack:///./node_modules/core-js/library/modules/es6.object.assign.js","webpack:///./node_modules/core-js/library/modules/_object-assign.js","webpack:///./src/redux/redux.js","webpack:///./src/actions/queue.js"],"names":["root","factory","exports","module","define","amd","self","this","modules","__webpack_require__","moduleId","installedModules","i","l","call","parentJsonpFunction","window","chunkIds","moreModules","executeModules","chunkId","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","shift","3","e","onScriptComplete","script","onerror","onload","clearTimeout","timeout","chunk","Error","undefined","installedChunkData","Promise","resolve","promise","reject","head","document","getElementsByTagName","createElement","type","charset","async","nc","setAttribute","src","p","0","setTimeout","appendChild","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","oe","err","console","error","s","core","version","__e","store","uid","Symbol","USE_SYMBOL","global","Math","Function","__g","value","NAMESPACE","PROMISES_PROPERTY","DEFAULT_TIMEOUT","VOCUSER_COOKIE","PAYWALL_COOKIE","SHOW_LOGS","location","search","indexOf","DEFAULT_LOG_TEMPLATE","CONFIG_NAMESPACE","EDITIONS_NAMESPACE","GPT_ID_VOCENTO","GPT_READY","GPT_TIMEOUT","TIMEOUT_POSICIONES_ESTANDAR","ALTOS_MINIMOS_DISPOSITIVOS","mobile","tablet","desktop","POSITION_FLUID","SLOT_RENDERED","SLOT_EMPTY","SLOT_VIEWABLE","SLOT_INACTIVE","DEFAULTS","hideNoAds","refresh","responsive","CAPTURADOR_WS","MCRYPT_KEY","VAM_CSS_URL","JSON_GDP2_0","JSON_GDP2_1","JSON_GDP2_2","NOMBRE_FORMATO_JSON","GPT_URL","HEADER_BIDDING_READY","AFTER_RELOAD_HB_TIMEOUT","PREBID_URL","PREBID_AUCTION_ENDED","PREBID_SET_TARGETINGS","DEFAULT_PREBID_LOAD_TIMEOUT","AMAZON_URL","DEFAULT_AMAZON_LOAD_TIMEOUT","AMAZON_CONFIG","pubID","adServer","OLD_PREFIX","NEW_SUFFIX","anObject","IE8_DOM_DEFINE","toPrimitive","dP","f","O","P","Attributes","TypeError","a","showLog","_console","_constants","log","apply","concat","Array","slice","arguments","showWarn","_console2","warn","showError","_console3","ctx","hide","$export","source","key","own","out","IS_FORCED","F","IS_GLOBAL","G","IS_STATIC","S","IS_PROTO","IS_BIND","B","IS_WRAP","W","expProto","target","C","b","virtual","R","U","it","createDesc","isObject","aFunction","fn","that","exec","IObject","defined","_interopRequireDefault","obj","default","_evented","_evented2","_deferred","_deferred2","_user","_user2","_mixin","_scripts","_hasOwnProperty","Application","load","url","options","split","text","RSVP","extend","app","Voonto","getInstance","g","eval","$at","String","iterated","_t","_i","point","index","done","$keys","enumBugKeys","keys","bitmap","writable","toString","def","has","TAG","tag","stat","Iterators","TO_STRING_TAG","collections","NAME","Collection","proto","META","setDesc","id","isExtensible","FREEZE","preventExtensions","setMeta","w","fastKey","create","getWeak","onFreeze","meta","NEED","KEY","toInteger","min","px","random","cof","ARG","tryGet","T","callee","isArrayIter","toLength","getIterFn","BREAK","RETURN","iterable","entries","ITERATOR","step","iterator","result","iterFn","next","propertyIsEnumerable","_iterator","_iterator2","_symbol","_symbol2","_typeof","constructor","ceil","floor","isNaN","LIBRARY","redefine","$iterCreate","setToStringTag","getPrototypeOf","BUGGY","returnThis","Base","Constructor","DEFAULT","IS_SET","FORCED","methods","IteratorPrototype","getMethod","kind","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","values","is","val","valueOf","dPs","IE_PROTO","Empty","createDict","iframeDocument","iframe","style","display","contentWindow","open","write","lt","close","Properties","shared","forbiddenField","classof","getIteratorMethod","safe","wksExt","$Symbol","charAt","getOwnPropertySymbols","fails","exp","isEmpty","_typeof3","_keys2","getParameterByName","paramName","regExp","results","href","replace","RegExp","decodeURIComponent","file","_files","rel","_promise2","cargaLibreriaGPT","gads","useSSL","node","googletag","cmd","customcmd","$","protocol","parentNode","insertBefore","func","_logger","splice","args","map","forEach","argument","pos","endsWith","str","suffix","startsWith","needle","urlToSection","sectionUrl","_promise","_keys","_typeof2","instance","_defineProperty","_defineProperty2","defineProperties","props","descriptor","protoProps","staticProps","toIObject","arrayIndexOf","names","documentElement","ret","ArrayProto","defer","channel","port","invoke","html","cel","process","setTask","setImmediate","clearTask","clearImmediate","MessageChannel","counter","queue","run","listener","event","data","nextTick","port2","port1","onmessage","postMessage","addEventListener","importScripts","removeChild","set","clear","DESCRIPTORS","SPECIES","SAFE_CLOSING","riter","from","skipClosing","arr","iter","_isIterable2","_isIterable3","_getIterator2","_getIterator3","sliceIterator","_arr","_n","_d","_e","_s","isArray","arg","hiddenKeys","getOwnPropertyNames","destination","description","main","scripts","test","tdd","start","build","prebid","contributors","license","devDependencies","babel-core","babel-eslint","babel-loader","babel-plugin-syntax-dynamic-import","babel-plugin-transform-object-rest-spread","babel-plugin-transform-runtime","babel-polyfill","babel-preset-env","chai","chalk","clean-webpack-plugin","copy-webpack-plugin","css-loader","eslint","eslint-config-airbnb","eslint-config-airbnb-base","eslint-plugin-import","extract-text-webpack-plugin","file-loader","html-loader","html-webpack-plugin","json-loader","mocha","mocha-loader","mocha-phantomjs","mocha-webpack","nyc","style-loader","webpack","webpack-dev-server","webpack-merge","webpack-shell-plugin","dependencies","jquery-inview","js-cookie","prebid.js","rijndael-js","rsvp","_getTipoDispositivo","max","screenWidth","deviceType","configGDPMedio","esResponsive","parseInt","innerWidth","resolucionMaxima","resolucionMinima","toLowerCase","tipoDispositivo","_getMedio","medio","_getTipoPagina","_app$lookup","_application2","lookup","pageType","tipoContenido","_getTipoPaginaABC","_getTipoPaginaMujerhoy","_getTipoPaginaPortalesLocales","oldVideosRegExp","videosRegExp","oldGaleryRegExp2","oldGaleryRegExp","galeryRegExp","graphicRegExp","oldNewsRegExp","newsRegExp","pathname","videoRegExp","oldVideoRegExp","videoBlogRegExp","galeryBlogRegExp","newsBlogRegExp","newsRecipesRegExp","isNews","hostname","oldGraphicRegExp","videoChatRegExp","_getDefineSlotParam","defineSlot","_getServerType","position","configServerType","serverType","_utils","_isResponsiveMedia","isResponsive","_getResponsiveParam","params","isResponsiveMedia","_createResponsive","resolution","minWidth","maxWidth","dimension","googleSize","size","dispositivos","device","existePosEnConfigGDPMedio","getSizesGoogle","JSON","parse","sort","pair1","pair2","_getEdition","editions","current","_capturadorGetPreviewData","legacyPreview","ajax","success","_getValueUser","suscriptor","trial","registrado","anonimo","getUserType","_getDelayed","delayedPositions","configGDP","filter","trim","_getPrioritized","prioritizedPositions","_decriptUrl","Rijndael","legacyCmvkey","mcrypt","preparedCode","_prevUnencryptedCode","_prevEncryptedCode","atob","charCodeAt","decrypt","_getDefineSlotTargetings","medioTargetings","pageTargetings","targetings","defineSlotTargetings","_classCallCheck2","_classCallCheck3","_createClass2","_createClass3","_configManager","_configManager2","_application","_dynamicId","ConfigManager","modifyOAS","dynamicId","context$","capturadorDataPreview","valueUserType","globalTargetings","processConfig","container$","configPosition","configSchedules","currentDate","forceActivePosition","getIdDiv","trigger","desactivadoen","round","Date","some","beginDate","endDate","programacion","fecha_in","fecha_fin","adsId","idAds","outOfPage","offset","pre_callback","pre_event","post_callback","post_event","oas","tags","attr","oasSitepage","decryptedURL","legacyAdUnit","macroEdition","edition","OAS","adunit","configSize","legacyCode","code","prebidDisabledBidders","headerBidding","biddersConfig","disabled","hbAmazon","enableAmazonAds","singleRequest","syncRendering","enableKrux","infoSlot","then","preview","priorizadas","retrasadas","decodeURI","bind","unixTime","excepciones","match","thereAreDelayedPositions","thereArePrioritizedPositions","_this","_modifyOAS","section","forcedOas","newOas","option","_from","_from2","arr2","_init","_initialized","when","pubads","setRequestNonPersonalizedAds","on","_enqueueReload","_refresh","_store","subscribe","_store$getState","getState","processing","_queue$","_slicedToArray3","reload","dispatch","_queue","toggleProcessing","sliceFn","configManager","_advertising2","init","_printAds","each","printAds","reloadObj","_reload","pushFn","VERSION","_regenerator","_regenerator2","_asyncToGenerator2","_asyncToGenerator3","_slicedToArray2","_ref","mark","_callee","media","rawSection","oasOptions","wrap","_context","prev","dynamicOas","stop","_x","_package","_package2","_advertising","_window","Vocento","Publicidad","jQuery","datos","getOasSitepage","getValueUser","ready","config","hadRuntime","regeneratorRuntime","oldRuntime","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","context","Context","_invoke","makeInvokeMethod","tryCatch","GeneratorFunction","GeneratorFunctionPrototype","defineIteratorMethods","method","AsyncIterator","record","hasOwn","__await","unwrapped","enqueue","callInvokeWithMethodAndArg","previousPromise","domain","state","GenStateSuspendedStart","GenStateExecuting","GenStateCompleted","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","sent","_sent","dispatchException","abrupt","GenStateSuspendedYield","return","info","resultName","nextLoc","pushTryEntry","locs","entry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iteratorMethod","iteratorSymbol","Op","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","inModule","runtime","getProto","NativeIteratorPrototype","Gp","displayName","isGeneratorFunction","genFun","ctor","setPrototypeOf","__proto__","awrap","reverse","pop","skipTempReset","rootEntry","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","gen","TO_STRING","getKeys","toIndex","IS_INCLUDES","$this","el","fromIndex","toObject","ObjectProto","addToUnscopables","_k","Arguments","Internal","GenericPromiseCapability","Wrapper","anInstance","forOf","speciesConstructor","task","microtask","$Promise","isNode","empty","USE_NATIVE","FakePromise","PromiseRejectionEvent","sameConstructor","isThenable","newPromiseCapability","PromiseCapability","$$resolve","$$reject","perform","notify","isReject","chain","_c","_v","ok","reaction","handler","fail","_h","onHandleUnhandled","enter","exit","onUnhandled","isUnhandled","emit","onunhandledrejection","reason","_a","onrejectionhandled","$reject","_w","$resolve","wrapper","executor","onFulfilled","onRejected","r","capability","x","all","remaining","$index","alreadyCalled","race","D","un","macrotask","Observer","MutationObserver","WebKitMutationObserver","last","flush","parent","toggle","createTextNode","observe","characterData","isIterable","getIterator","Cookies","special","inview","$fails","wks","wksDefine","keyOf","enumKeys","_create","gOPNExt","$GOPD","$DP","gOPD","gOPN","$JSON","_stringify","stringify","HIDDEN","TO_PRIMITIVE","isEnum","SymbolRegistry","AllSymbols","OPSymbols","QObject","setter","findChild","setSymbolDesc","protoDesc","sym","isSymbol","$defineProperty","$defineProperties","$create","$propertyIsEnumerable","E","$getOwnPropertyDescriptor","$getOwnPropertyNames","$getOwnPropertySymbols","IS_OP","$set","symbols","for","keyFor","useSetter","useSimple","getOwnPropertyDescriptor","replacer","$replacer","gOPS","pIE","getSymbols","windowNames","getWindowNames","_ord","_onVocUserReady","gigyaux","UserTypes","ANONYMOUS","append","VOCUSER_DATA","userData","gender","age","responseGetUserInfo","user","_onVocUserData","gigya_event","profile","Genders","FEM","MAS","_freeze","_freeze2","gigyaUX","freeze","$freeze","_preventExtensions","_preventExtensions2","Evented","_window$$","one","_window$$2","off","_window$$3","_window$$4","$preventExtensions","_globalized","_globalized2","_defers","Deferred","whenUntil","promiseNS","time","owner","_promiseNS$split","_promiseNS$split2","createGlobal","promised","_promiseNS$split3","_promiseNS$split4","Globalized","namespace","nso","prop","reduce","_jsonParse","vocUid","e1","e2","UserType","REGISTERED","SUBSCRIBER","TRIAL","User","userType","paywall","pwUserType","cookie","_defineSlot","scriptText","insertedPositionkey","hideText","targetingText","targetingsTags","deviceTypeTargeting","pattern","isValid","decodedURLTargetings","chunksURLTargetings","topics","mappingObj","sizeMapping","defineSizeMapping","_configManager5","chunck","pair","keyChunk","valueChunk","_getTopics","enableTpag","_getSizeMapping","definition","_getNombreSlot","_getClavePosicionInsertada","_insertedPositions","_executeDefineSlot","_notDisplayedSlots","_display","idDiv","_providerManager2","isActive","auctionPromiseTimer","auctionPromise","auctionsCount","targetingsCount","getTargetingsCount","getIsEmptyResponse","setTargetings","_setTargetingsTimeout","mappingName","finalDefinition","addSize","viewportSize","responsiveSizes","singleSize","j","_displayStandarQueued","_standardDelayed","Advertising","_displayPrioritized","_pintaListaPosiciones","listaPositions","sonPosicionesPriorizadas","posCuyoDivExiste","normalizaParams","_stringify2","pushAdUnitForTargetings","setReload","legacyParams","_displayDelayed","isInView","dataset","vocVamDisplayed","_getAdGoogle","esPosPriorizada","activo","eventParams","tParams","hasPreevent","_getEventsPosition","_pintarPosicionRefresh","tipoDispositivoAux","positionEvents","dynamic","dynamicSuffix","_infoSlotRender","isSlotRendered","width","height","arrayObj","numSlots","numTopics","numOas","show","addClass","_infoSlotFormateaDimensiones","_isLocalPosition","_infoSlotRenderSlots","_infoSlotRenderTopics","_infoSlotRenderOAS","_applyFilter","dimensionsArray","notRepeatedDimensions","_set2","dimen","filtered","substring","add","topic","forzarEnableTopics","enableTopics","voc_top","includes","_capturadorExistsPreview","_capturadorSetPreview","previewJSON","div","creatividad","previewUrl","_set","_providerManager","_configManager4","_gptInitialized","_completadasPriorizadas","kruxSegments","kruxUser","timeoutSetTargetings","checkConfigFromURL","setConfig","startNewAuction","collapseEmptyDivs","setTargeting","Krux","vocento","segments","enableSingleRequest","enableSyncRendering","enableServices","checkExceptions","ev","divId","paramsSlot","slot","getSlotElementId","getTargeting","removePrioritizedPosition","isPrioritized","find","parameters","prioritized","delayed","isDelayed","_configManager3","Set","strong","redefineAll","$iterDefine","setSpecies","SIZE","getEntry","_f","k","getConstructor","IS_MAP","ADDER","_l","delete","callbackfn","v","setStrong","common","IS_WEAK","IS_ADDER","asc","TYPE","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","res","original","toJSON","$Object","desc","_loadActivesGateways","_gatewaysAdded","GATEWAYS","gateway","gatewayName","setTotalAuctions","_auctionsCount","_gatewaysAdUnitCodes","adUnitCodes","getLoadPromise","_amazon","_amazon2","_prebid","_prebid2","_gatewaysPromises","_gatewaysNewAuctionPromises","pubadsReady","adUnits","response","emptyResponse","adUnit","getAuctionsCount","totalAuctions","isReload","_loadLibrary","REASONS","ERROR_LOAD_LIBRARY","_setConfig","apstag","ERROR_INIT_CONFIG","_fetchBid","bidConfig","slots","fetchBids","bids","_emptyResponse","TIMEOUT_REACHED_FETCH_BIDS","targetingKeys","_adserverRequestResponse","_config","TIMEOUT_REACHED_GLOBAL","_ref2","_ref3","setDisplayBids","apstagGlobalName","_Q","hbPrebid","pbjsConfig","debug","enableSendAllBids","priceGranularity","consentManagement","cmpApi","allowAuctionWithoutConsent","pbjs","bidderSettings","_fetchBiddersSettings","getConfig","EMPTY_ADUNITS","que","addAdUnits","requestBids","bidsBackHandler","biddersResponse","getAdserverTargeting","bidderName","bidCpmAdjustment","bidCpm","bid","percent","bidderCode","_auctionHasEnded","auctionId","_setTargettingsEvent","_targetingsCount","onEvent","addUnits","setTargetingForGPTAsync","_processPrebidConfig","newConfig","biddersDisabled","newBids","infiniteScrollPositions","bidder","_processAmazonConfig","positions","slotID","slotName","_getAmazonSlotName","createProperty","arrayLike","aLen","mapfn","mapping","queueManager","defaultState","action","_extends3","_toConsumableArray2","_toConsumableArray3","_extends2","_redux","createStore","_assign","_assign2","assign","$assign","A","K","join","reducer","initialState","currentReducer","currentState","newListener","drain"],"mappings":"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","file":"vam.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"AdsManager\"] = factory();\n\telse\n\t\troot[\"AdsManager\"] = factory();\n})(typeof self !== 'undefined' ? self : this, function() {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"AdsManager\"] = factory();\n\telse\n\t\troot[\"AdsManager\"] = factory();\n})(typeof self !== 'undefined' ? self : this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// install a JSONP callback for chunk loading\n/******/ \tvar parentJsonpFunction = window[\"webpackJsonpAdsManager\"];\n/******/ \twindow[\"webpackJsonpAdsManager\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n/******/ \t\t// add \"moreModules\" to the modules object,\n/******/ \t\t// then flag all \"chunkIds\" as loaded and fire callback\n/******/ \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n/******/ \t\tfor(;i < chunkIds.length; i++) {\n/******/ \t\t\tchunkId = chunkIds[i];\n/******/ \t\t\tif(installedChunks[chunkId]) {\n/******/ \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n/******/ \t\t\t}\n/******/ \t\t\tinstalledChunks[chunkId] = 0;\n/******/ \t\t}\n/******/ \t\tfor(moduleId in moreModules) {\n/******/ \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n/******/ \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n/******/ \t\t\t}\n/******/ \t\t}\n/******/ \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n/******/ \t\twhile(resolves.length) {\n/******/ \t\t\tresolves.shift()();\n/******/ \t\t}\n/******/\n/******/ \t};\n/******/\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// objects to store loaded and loading chunks\n/******/ \tvar installedChunks = {\n/******/ \t\t3: 0\n/******/ \t};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/ \t// This file contains only the entry chunk.\n/******/ \t// The chunk loading function for additional chunks\n/******/ \t__webpack_require__.e = function requireEnsure(chunkId) {\n/******/ \t\tvar installedChunkData = installedChunks[chunkId];\n/******/ \t\tif(installedChunkData === 0) {\n/******/ \t\t\treturn new Promise(function(resolve) { resolve(); });\n/******/ \t\t}\n/******/\n/******/ \t\t// a Promise means \"currently loading\".\n/******/ \t\tif(installedChunkData) {\n/******/ \t\t\treturn installedChunkData[2];\n/******/ \t\t}\n/******/\n/******/ \t\t// setup Promise in chunk cache\n/******/ \t\tvar promise = new Promise(function(resolve, reject) {\n/******/ \t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n/******/ \t\t});\n/******/ \t\tinstalledChunkData[2] = promise;\n/******/\n/******/ \t\t// start chunk loading\n/******/ \t\tvar head = document.getElementsByTagName('head')[0];\n/******/ \t\tvar script = document.createElement('script');\n/******/ \t\tscript.type = \"text/javascript\";\n/******/ \t\tscript.charset = 'utf-8';\n/******/ \t\tscript.async = true;\n/******/ \t\tscript.timeout = 120000;\n/******/\n/******/ \t\tif (__webpack_require__.nc) {\n/******/ \t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n/******/ \t\t}\n/******/ \t\tscript.src = __webpack_require__.p + \"\" + ({\"0\":\"rijndael-js\"}[chunkId]||chunkId) + \".js\";\n/******/ \t\tvar timeout = setTimeout(onScriptComplete, 120000);\n/******/ \t\tscript.onerror = script.onload = onScriptComplete;\n/******/ \t\tfunction onScriptComplete() {\n/******/ \t\t\t// avoid mem leaks in IE.\n/******/ \t\t\tscript.onerror = script.onload = null;\n/******/ \t\t\tclearTimeout(timeout);\n/******/ \t\t\tvar chunk = installedChunks[chunkId];\n/******/ \t\t\tif(chunk !== 0) {\n/******/ \t\t\t\tif(chunk) {\n/******/ \t\t\t\t\tchunk[1](new Error('Loading chunk ' + chunkId + ' failed.'));\n/******/ \t\t\t\t}\n/******/ \t\t\t\tinstalledChunks[chunkId] = undefined;\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t\thead.appendChild(script);\n/******/\n/******/ \t\treturn promise;\n/******/ \t};\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"//static.vocento.com/vam/3.14.0/\";\n/******/\n/******/ \t// on error function for async loading\n/******/ \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 215);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\nvar core = module.exports = {version: '2.4.0'};\nif(typeof __e == 'number')__e = core; // eslint-disable-line no-undef\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar store = __webpack_require__(46)('wks')\n , uid = __webpack_require__(31)\n , Symbol = __webpack_require__(2).Symbol\n , USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function(name){\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports) {\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();\nif(typeof __g == 'number')__g = global; // eslint-disable-line no-undef\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar NAMESPACE = exports.NAMESPACE = 'vocento';\nvar PROMISES_PROPERTY = exports.PROMISES_PROPERTY = '__PROMISES__';\nvar DEFAULT_TIMEOUT = exports.DEFAULT_TIMEOUT = 2000;\nvar VOCUSER_COOKIE = exports.VOCUSER_COOKIE = 'voc_uid';\nvar PAYWALL_COOKIE = exports.PAYWALL_COOKIE = 'voc_paywall';\nvar SHOW_LOGS = exports.SHOW_LOGS = document.location.search.indexOf('vam_debug=1') > -1 || document.location.search.indexOf('gdp_debug=1') > -1;\nvar DEFAULT_LOG_TEMPLATE = exports.DEFAULT_LOG_TEMPLATE = '[Ads Manager]';\nvar CONFIG_NAMESPACE = exports.CONFIG_NAMESPACE = 'vocento.config.vam';\nvar EDITIONS_NAMESPACE = exports.EDITIONS_NAMESPACE = 'vocento.site.editions';\nvar GPT_ID_VOCENTO = exports.GPT_ID_VOCENTO = '4900';\nvar GPT_READY = exports.GPT_READY = 'vam:gpt:ready';\nvar GPT_TIMEOUT = exports.GPT_TIMEOUT = 2000;\nvar TIMEOUT_POSICIONES_ESTANDAR = exports.TIMEOUT_POSICIONES_ESTANDAR = 3000;\nvar ALTOS_MINIMOS_DISPOSITIVOS = exports.ALTOS_MINIMOS_DISPOSITIVOS = {\n mobile: 0,\n tablet: 200,\n desktop: 300\n};\nvar POSITION_FLUID = exports.POSITION_FLUID = \"'fluid'\";\nvar SLOT_RENDERED = exports.SLOT_RENDERED = 'vam:slotrendered';\nvar SLOT_EMPTY = exports.SLOT_EMPTY = 'vam:isempty';\nvar SLOT_VIEWABLE = exports.SLOT_VIEWABLE = 'vam:viewable';\nvar SLOT_INACTIVE = exports.SLOT_INACTIVE = 'vam:inactive';\nvar DEFAULTS = exports.DEFAULTS = {\n hideNoAds: true,\n refresh: false,\n responsive: false\n};\nvar CAPTURADOR_WS = exports.CAPTURADOR_WS = '//publi.cmvocento.com/capturador/preview';\nvar MCRYPT_KEY = exports.MCRYPT_KEY = 'acsNdl09acs72AEdacsNdl09acs72AEd';\nvar VAM_CSS_URL = exports.VAM_CSS_URL = '//netssl.vocento.com/cmvocento/css/vam.css';\nvar JSON_GDP2_0 = exports.JSON_GDP2_0 = 0;\nvar JSON_GDP2_1 = exports.JSON_GDP2_1 = 1;\nvar JSON_GDP2_2 = exports.JSON_GDP2_2 = 2;\nvar NOMBRE_FORMATO_JSON = exports.NOMBRE_FORMATO_JSON = ['GDP2.0', 'GDP2.1', 'GDP2.2+'];\nvar GPT_URL = exports.GPT_URL = 'www.googletagservices.com/tag/js/gpt.js';\n\n/* header bidding */\nvar HEADER_BIDDING_READY = exports.HEADER_BIDDING_READY = 'vam:headerbidding-ready';\nvar AFTER_RELOAD_HB_TIMEOUT = exports.AFTER_RELOAD_HB_TIMEOUT = 600;\nvar PREBID_URL = exports.PREBID_URL = \"//static.vocento.com/vam/3.14.0/\" + 'prebid.js';\nvar PREBID_AUCTION_ENDED = exports.PREBID_AUCTION_ENDED = 'vam:headerbidding-auctionended';\nvar PREBID_SET_TARGETINGS = exports.PREBID_SET_TARGETINGS = 'vam:headerbidding-settargetings';\nvar DEFAULT_PREBID_LOAD_TIMEOUT = exports.DEFAULT_PREBID_LOAD_TIMEOUT = 7000;\nvar AMAZON_URL = exports.AMAZON_URL = '//c.amazon-adsystem.com/aax2/apstag.js';\nvar DEFAULT_AMAZON_LOAD_TIMEOUT = exports.DEFAULT_AMAZON_LOAD_TIMEOUT = 7000;\nvar AMAZON_CONFIG = exports.AMAZON_CONFIG = {\n pubID: '3470', // Amazon publisher ID\n adServer: 'googletag' // AdServer type that contains apstag line-items\n};\n\n/* legacy */\nvar OLD_PREFIX = exports.OLD_PREFIX = 'publi_';\nvar NEW_SUFFIX = exports.NEW_SUFFIX = '-id';\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar anObject = __webpack_require__(10)\n , IE8_DOM_DEFINE = __webpack_require__(60)\n , toPrimitive = __webpack_require__(42)\n , dP = Object.defineProperty;\n\nexports.f = __webpack_require__(5) ? Object.defineProperty : function defineProperty(O, P, Attributes){\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if(IE8_DOM_DEFINE)try {\n return dP(O, P, Attributes);\n } catch(e){ /* empty */ }\n if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');\n if('value' in Attributes)O[P] = Attributes.value;\n return O;\n};\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !__webpack_require__(12)(function(){\n return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;\n});\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.showLog = showLog;\nexports.showWarn = showWarn;\nexports.showError = showError;\n\nvar _constants = __webpack_require__(3);\n\nfunction showLog() {\n var _console;\n\n _constants.SHOW_LOGS && (_console = console).log.apply(_console, [_constants.DEFAULT_LOG_TEMPLATE].concat(Array.prototype.slice.call(arguments)));\n}\n\nfunction showWarn() {\n var _console2;\n\n _constants.SHOW_LOGS && (_console2 = console).warn.apply(_console2, [_constants.DEFAULT_LOG_TEMPLATE].concat(Array.prototype.slice.call(arguments)));\n}\n\nfunction showError() {\n var _console3;\n\n _constants.SHOW_LOGS && (_console3 = console).error.apply(_console3, [_constants.DEFAULT_LOG_TEMPLATE].concat(Array.prototype.slice.call(arguments)));\n}\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(2)\n , core = __webpack_require__(0)\n , ctx = __webpack_require__(11)\n , hide = __webpack_require__(9)\n , PROTOTYPE = 'prototype';\n\nvar $export = function(type, name, source){\n var IS_FORCED = type & $export.F\n , IS_GLOBAL = type & $export.G\n , IS_STATIC = type & $export.S\n , IS_PROTO = type & $export.P\n , IS_BIND = type & $export.B\n , IS_WRAP = type & $export.W\n , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})\n , expProto = exports[PROTOTYPE]\n , target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]\n , key, own, out;\n if(IS_GLOBAL)source = name;\n for(key in source){\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n if(own && key in exports)continue;\n // export native or passed\n out = own ? target[key] : source[key];\n // prevent global pollution for namespaces\n exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]\n // bind timers to global for call from export context\n : IS_BIND && own ? ctx(out, global)\n // wrap global constructors for prevent change them in library\n : IS_WRAP && target[key] == out ? (function(C){\n var F = function(a, b, c){\n if(this instanceof C){\n switch(arguments.length){\n case 0: return new C;\n case 1: return new C(a);\n case 2: return new C(a, b);\n } return new C(a, b, c);\n } return C.apply(this, arguments);\n };\n F[PROTOTYPE] = C[PROTOTYPE];\n return F;\n // make static versions for prototype methods\n })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%\n if(IS_PROTO){\n (exports.virtual || (exports.virtual = {}))[key] = out;\n // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%\n if(type & $export.R && expProto && !expProto[key])hide(expProto, key, out);\n }\n }\n};\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library` \nmodule.exports = $export;\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports) {\n\nmodule.exports = function(it){\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar dP = __webpack_require__(4)\n , createDesc = __webpack_require__(22);\nmodule.exports = __webpack_require__(5) ? function(object, key, value){\n return dP.f(object, key, createDesc(1, value));\n} : function(object, key, value){\n object[key] = value;\n return object;\n};\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(8);\nmodule.exports = function(it){\n if(!isObject(it))throw TypeError(it + ' is not an object!');\n return it;\n};\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// optional / simple context binding\nvar aFunction = __webpack_require__(40);\nmodule.exports = function(fn, that, length){\n aFunction(fn);\n if(that === undefined)return fn;\n switch(length){\n case 1: return function(a){\n return fn.call(that, a);\n };\n case 2: return function(a, b){\n return fn.call(that, a, b);\n };\n case 3: return function(a, b, c){\n return fn.call(that, a, b, c);\n };\n }\n return function(/* ...args */){\n return fn.apply(that, arguments);\n };\n};\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports) {\n\nmodule.exports = function(exec){\n try {\n return !!exec();\n } catch(e){\n return true;\n }\n};\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports) {\n\nvar hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function(it, key){\n return hasOwnProperty.call(it, key);\n};\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = __webpack_require__(44)\n , defined = __webpack_require__(28);\nmodule.exports = function(it){\n return IObject(defined(it));\n};\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _evented = __webpack_require__(128);\n\nvar _evented2 = _interopRequireDefault(_evented);\n\nvar _deferred = __webpack_require__(131);\n\nvar _deferred2 = _interopRequireDefault(_deferred);\n\nvar _user = __webpack_require__(135);\n\nvar _user2 = _interopRequireDefault(_user);\n\nvar _mixin = __webpack_require__(74);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar _scripts = {},\n _hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar Application = {\n load: function load(url) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n var promise, script, src, key;\n\n src = url;\n key = url.split('?').shift();\n if (_hasOwnProperty.call(_scripts, key)) {\n return _scripts[key];\n }\n\n script = document.createElement('script');\n script.type = 'text/javascript';\n script.src = src;\n script.async = true;\n options.text && (script.text = options.text);\n\n promise = new window.RSVP.Promise(function (resolve, reject) {\n script.onload = function () {\n return resolve(script);\n };\n script.onerror = reject;\n\n document.head.appendChild(script);\n });\n\n _scripts[key] = promise;\n return promise;\n }\n};\n\n(0, _mixin.extend)(Application, _evented2.default);\n(0, _mixin.extend)(Application, _deferred2.default);\n(0, _mixin.extend)(Application, _user2.default);\n\nvar app = 'Voonto' in window && 'getInstance' in window.Voonto ? window.Voonto.getInstance() : Application;\n\nexports.default = app;\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports) {\n\nvar g;\r\n\r\n// This works in non-strict mode\r\ng = (function() {\r\n\treturn this;\r\n})();\r\n\r\ntry {\r\n\t// This works if eval is allowed (see CSP)\r\n\tg = g || Function(\"return this\")() || (1,eval)(\"this\");\r\n} catch(e) {\r\n\t// This works if the window reference is available\r\n\tif(typeof window === \"object\")\r\n\t\tg = window;\r\n}\r\n\r\n// g can still be undefined, but nothing to do about it...\r\n// We return undefined, instead of nothing here, so it's\r\n// easier to handle this case. if(!global) { ...}\r\n\r\nmodule.exports = g;\r\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(96), __esModule: true };\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $at = __webpack_require__(97)(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\n__webpack_require__(39)(String, 'String', function(iterated){\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function(){\n var O = this._t\n , index = this._i\n , point;\n if(index >= O.length)return {value: undefined, done: true};\n point = $at(O, index);\n this._i += point.length;\n return {value: point, done: false};\n});\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports) {\n\nmodule.exports = {};\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = __webpack_require__(62)\n , enumBugKeys = __webpack_require__(47);\n\nmodule.exports = Object.keys || function keys(O){\n return $keys(O, enumBugKeys);\n};\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(133), __esModule: true };\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports) {\n\nmodule.exports = function(bitmap, value){\n return {\n enumerable : !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable : !(bitmap & 4),\n value : value\n };\n};\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports) {\n\nvar toString = {}.toString;\n\nmodule.exports = function(it){\n return toString.call(it).slice(8, -1);\n};\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar def = __webpack_require__(4).f\n , has = __webpack_require__(13)\n , TAG = __webpack_require__(1)('toStringTag');\n\nmodule.exports = function(it, tag, stat){\n if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});\n};\n\n/***/ }),\n/* 25 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.13 ToObject(argument)\nvar defined = __webpack_require__(28);\nmodule.exports = function(it){\n return Object(defined(it));\n};\n\n/***/ }),\n/* 26 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(103);\nvar global = __webpack_require__(2)\n , hide = __webpack_require__(9)\n , Iterators = __webpack_require__(19)\n , TO_STRING_TAG = __webpack_require__(1)('toStringTag');\n\nfor(var collections = ['NodeList', 'DOMTokenList', 'MediaList', 'StyleSheetList', 'CSSRuleList'], i = 0; i < 5; i++){\n var NAME = collections[i]\n , Collection = global[NAME]\n , proto = Collection && Collection.prototype;\n if(proto && !proto[TO_STRING_TAG])hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = Iterators.Array;\n}\n\n/***/ }),\n/* 27 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar META = __webpack_require__(31)('meta')\n , isObject = __webpack_require__(8)\n , has = __webpack_require__(13)\n , setDesc = __webpack_require__(4).f\n , id = 0;\nvar isExtensible = Object.isExtensible || function(){\n return true;\n};\nvar FREEZE = !__webpack_require__(12)(function(){\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function(it){\n setDesc(it, META, {value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n }});\n};\nvar fastKey = function(it, create){\n // return primitive with prefix\n if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if(!has(it, META)){\n // can't set metadata to uncaught frozen object\n if(!isExtensible(it))return 'F';\n // not necessary to add metadata\n if(!create)return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function(it, create){\n if(!has(it, META)){\n // can't set metadata to uncaught frozen object\n if(!isExtensible(it))return true;\n // not necessary to add metadata\n if(!create)return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function(it){\n if(FREEZE && meta.NEED && isExtensible(it) && !has(it, META))setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n\n/***/ }),\n/* 28 */\n/***/ (function(module, exports) {\n\n// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function(it){\n if(it == undefined)throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n/***/ }),\n/* 29 */\n/***/ (function(module, exports) {\n\nmodule.exports = true;\n\n/***/ }),\n/* 30 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.15 ToLength\nvar toInteger = __webpack_require__(38)\n , min = Math.min;\nmodule.exports = function(it){\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n\n/***/ }),\n/* 31 */\n/***/ (function(module, exports) {\n\nvar id = 0\n , px = Math.random();\nmodule.exports = function(key){\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n/***/ }),\n/* 32 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = __webpack_require__(23)\n , TAG = __webpack_require__(1)('toStringTag')\n // ES3 wrong here\n , ARG = cof(function(){ return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function(it, key){\n try {\n return it[key];\n } catch(e){ /* empty */ }\n};\n\nmodule.exports = function(it){\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n\n/***/ }),\n/* 33 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar ctx = __webpack_require__(11)\n , call = __webpack_require__(65)\n , isArrayIter = __webpack_require__(66)\n , anObject = __webpack_require__(10)\n , toLength = __webpack_require__(30)\n , getIterFn = __webpack_require__(49)\n , BREAK = {}\n , RETURN = {};\nvar exports = module.exports = function(iterable, entries, fn, that, ITERATOR){\n var iterFn = ITERATOR ? function(){ return iterable; } : getIterFn(iterable)\n , f = ctx(fn, that, entries ? 2 : 1)\n , index = 0\n , length, step, iterator, result;\n if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');\n // fast case for arrays with default iterator\n if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){\n result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);\n if(result === BREAK || result === RETURN)return result;\n } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){\n result = call(iterator, f, step.value, entries);\n if(result === BREAK || result === RETURN)return result;\n }\n};\nexports.BREAK = BREAK;\nexports.RETURN = RETURN;\n\n/***/ }),\n/* 34 */\n/***/ (function(module, exports) {\n\nexports.f = {}.propertyIsEnumerable;\n\n/***/ }),\n/* 35 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(129), __esModule: true };\n\n/***/ }),\n/* 36 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\n\nvar _iterator = __webpack_require__(80);\n\nvar _iterator2 = _interopRequireDefault(_iterator);\n\nvar _symbol = __webpack_require__(81);\n\nvar _symbol2 = _interopRequireDefault(_symbol);\n\nvar _typeof = typeof _symbol2.default === \"function\" && typeof _iterator2.default === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === \"function\" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? \"symbol\" : typeof obj; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = typeof _symbol2.default === \"function\" && _typeof(_iterator2.default) === \"symbol\" ? function (obj) {\n return typeof obj === \"undefined\" ? \"undefined\" : _typeof(obj);\n} : function (obj) {\n return obj && typeof _symbol2.default === \"function\" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? \"symbol\" : typeof obj === \"undefined\" ? \"undefined\" : _typeof(obj);\n};\n\n/***/ }),\n/* 37 */\n/***/ (function(module, exports) {\n\n\n\n/***/ }),\n/* 38 */\n/***/ (function(module, exports) {\n\n// 7.1.4 ToInteger\nvar ceil = Math.ceil\n , floor = Math.floor;\nmodule.exports = function(it){\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n\n/***/ }),\n/* 39 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar LIBRARY = __webpack_require__(29)\n , $export = __webpack_require__(7)\n , redefine = __webpack_require__(61)\n , hide = __webpack_require__(9)\n , has = __webpack_require__(13)\n , Iterators = __webpack_require__(19)\n , $iterCreate = __webpack_require__(98)\n , setToStringTag = __webpack_require__(24)\n , getPrototypeOf = __webpack_require__(102)\n , ITERATOR = __webpack_require__(1)('iterator')\n , BUGGY = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`\n , FF_ITERATOR = '@@iterator'\n , KEYS = 'keys'\n , VALUES = 'values';\n\nvar returnThis = function(){ return this; };\n\nmodule.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){\n $iterCreate(Constructor, NAME, next);\n var getMethod = function(kind){\n if(!BUGGY && kind in proto)return proto[kind];\n switch(kind){\n case KEYS: return function keys(){ return new Constructor(this, kind); };\n case VALUES: return function values(){ return new Constructor(this, kind); };\n } return function entries(){ return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator'\n , DEF_VALUES = DEFAULT == VALUES\n , VALUES_BUG = false\n , proto = Base.prototype\n , $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]\n , $default = $native || getMethod(DEFAULT)\n , $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined\n , $anyNative = NAME == 'Array' ? proto.entries || $native : $native\n , methods, key, IteratorPrototype;\n // Fix native\n if($anyNative){\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base));\n if(IteratorPrototype !== Object.prototype){\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if(!LIBRARY && !has(IteratorPrototype, ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if(DEF_VALUES && $native && $native.name !== VALUES){\n VALUES_BUG = true;\n $default = function values(){ return $native.call(this); };\n }\n // Define iterator\n if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if(DEFAULT){\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if(FORCED)for(key in methods){\n if(!(key in proto))redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n\n/***/ }),\n/* 40 */\n/***/ (function(module, exports) {\n\nmodule.exports = function(it){\n if(typeof it != 'function')throw TypeError(it + ' is not a function!');\n return it;\n};\n\n/***/ }),\n/* 41 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(8)\n , document = __webpack_require__(2).document\n // in old IE typeof document.createElement is 'object'\n , is = isObject(document) && isObject(document.createElement);\nmodule.exports = function(it){\n return is ? document.createElement(it) : {};\n};\n\n/***/ }),\n/* 42 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = __webpack_require__(8);\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function(it, S){\n if(!isObject(it))return it;\n var fn, val;\n if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;\n if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;\n if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n\n/***/ }),\n/* 43 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = __webpack_require__(10)\n , dPs = __webpack_require__(99)\n , enumBugKeys = __webpack_require__(47)\n , IE_PROTO = __webpack_require__(45)('IE_PROTO')\n , Empty = function(){ /* empty */ }\n , PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function(){\n // Thrash, waste and sodomy: IE GC bug\n var iframe = __webpack_require__(41)('iframe')\n , i = enumBugKeys.length\n , lt = '<'\n , gt = '>'\n , iframeDocument;\n iframe.style.display = 'none';\n __webpack_require__(63).appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties){\n var result;\n if(O !== null){\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty;\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n\n\n/***/ }),\n/* 44 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = __webpack_require__(23);\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n\n/***/ }),\n/* 45 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar shared = __webpack_require__(46)('keys')\n , uid = __webpack_require__(31);\nmodule.exports = function(key){\n return shared[key] || (shared[key] = uid(key));\n};\n\n/***/ }),\n/* 46 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(2)\n , SHARED = '__core-js_shared__'\n , store = global[SHARED] || (global[SHARED] = {});\nmodule.exports = function(key){\n return store[key] || (store[key] = {});\n};\n\n/***/ }),\n/* 47 */\n/***/ (function(module, exports) {\n\n// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n\n/***/ }),\n/* 48 */\n/***/ (function(module, exports) {\n\nmodule.exports = function(it, Constructor, name, forbiddenField){\n if(!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)){\n throw TypeError(name + ': incorrect invocation!');\n } return it;\n};\n\n/***/ }),\n/* 49 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar classof = __webpack_require__(32)\n , ITERATOR = __webpack_require__(1)('iterator')\n , Iterators = __webpack_require__(19);\nmodule.exports = __webpack_require__(0).getIteratorMethod = function(it){\n if(it != undefined)return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n\n/***/ }),\n/* 50 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar hide = __webpack_require__(9);\nmodule.exports = function(target, src, safe){\n for(var key in src){\n if(safe && target[key])target[key] = src[key];\n else hide(target, key, src[key]);\n } return target;\n};\n\n/***/ }),\n/* 51 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports.f = __webpack_require__(1);\n\n/***/ }),\n/* 52 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(2)\n , core = __webpack_require__(0)\n , LIBRARY = __webpack_require__(29)\n , wksExt = __webpack_require__(51)\n , defineProperty = __webpack_require__(4).f;\nmodule.exports = function(name){\n var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\n if(name.charAt(0) != '_' && !(name in $Symbol))defineProperty($Symbol, name, {value: wksExt.f(name)});\n};\n\n/***/ }),\n/* 53 */\n/***/ (function(module, exports) {\n\nexports.f = Object.getOwnPropertySymbols;\n\n/***/ }),\n/* 54 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// most Object methods by ES6 should accept primitives\nvar $export = __webpack_require__(7)\n , core = __webpack_require__(0)\n , fails = __webpack_require__(12);\nmodule.exports = function(KEY, exec){\n var fn = (core.Object || {})[KEY] || Object[KEY]\n , exp = {};\n exp[KEY] = exec(fn);\n $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);\n};\n\n/***/ }),\n/* 55 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _promise = __webpack_require__(17);\n\nvar _promise2 = _interopRequireDefault(_promise);\n\nvar _keys = __webpack_require__(21);\n\nvar _keys2 = _interopRequireDefault(_keys);\n\nvar _typeof2 = __webpack_require__(36);\n\nvar _typeof3 = _interopRequireDefault(_typeof2);\n\nexports.isEmpty = isEmpty;\nexports.getParameterByName = getParameterByName;\nexports.load = load;\nexports.cargaLibreriaGPT = cargaLibreriaGPT;\nexports.extend = extend;\nexports.endsWith = endsWith;\nexports.startsWith = startsWith;\nexports.urlToSection = urlToSection;\n\nvar _logger = __webpack_require__(6);\n\nvar _constants = __webpack_require__(3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar _files = {};\n\n/**\n * Check if a object is empty or is undefined. Not be used for arrays or strings\n * @param {mixed} value\n * @return {boolean}\n */\nfunction isEmpty(value) {\n // OK\n if ((typeof value === 'undefined' ? 'undefined' : (0, _typeof3.default)(value)) === 'object' && (0, _keys2.default)(value).length || (typeof value === 'undefined' ? 'undefined' : (0, _typeof3.default)(value)) !== 'object' && typeof value !== 'undefined') {\n return false;\n }\n\n return true;\n}\n\n/**\n * Get a URL param value\n * @param {string} paramName\n * @param {string} url\n */\nfunction getParameterByName(paramName) {\n var url = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window.location.href;\n\n var regExp, results;\n\n // NOTE: replace the '[element]' with '\\[element\\]' using '\\\\$&'\n paramName = paramName.replace(/[[\\]]/g, '\\\\$&');\n regExp = new RegExp('[?&]' + paramName + '(=([^&#]+)|&|#|$)');\n results = regExp.exec(url);\n\n if (!results) return '';\n if (!results[2]) return '';\n\n return decodeURIComponent(results[2].replace(/\\+/g, ' '));\n}\n\nfunction load(url) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n var promise, file, key;\n\n key = url.split('?').shift();\n if (Object.hasOwnProperty.call(_files, key)) {\n return _files[key];\n }\n\n options.type = options.type || 'script';\n\n file = document.createElement(options.type);\n switch (options.type) {\n case 'link':\n file.type = 'text/css';\n file.rel = 'stylesheet';\n file.href = url;\n break;\n case 'script':\n default:\n file.type = 'text/javascript';\n file.src = url;\n file.async = true;\n options.text && (file.text = options.text);\n break;\n }\n\n promise = new _promise2.default(function (resolve, reject) {\n file.onload = function () {\n return resolve(file);\n };\n file.onerror = reject;\n\n document.head.appendChild(file);\n });\n\n _files[key] = promise;\n return promise;\n}\n\n/**\n * Carga del JS para la publicidad de Google\n */\nfunction cargaLibreriaGPT() {\n var gads, useSSL, node;\n window.googletag = window.googletag || {};\n window.googletag.cmd = window.googletag.cmd || [];\n window.customcmd = window.customcmd || [];\n try {\n if ($('script[src*=\\'' + _constants.GPT_URL + '\\']').length === 0) {\n gads = document.createElement('script');\n gads.async = true;\n gads.type = 'text/javascript';\n useSSL = document.location.protocol === 'https:';\n gads.src = (useSSL ? 'https:' : 'http:') + ('//' + _constants.GPT_URL);\n node = document.getElementsByTagName('script')[0];\n node.parentNode.insertBefore(gads, node);\n window.googletag.cmd.push(function () {\n var func;\n (0, _logger.showLog)('First function', window.customcmd.length);\n while (window.customcmd.length) {\n func = window.customcmd.splice(0, 1)[0];\n window.googletag.cmd.push(func);\n }\n (0, _logger.showLog)('Finish Pushing to googletag.cmd', window.customcmd.length);\n window.customcmd = window.googletag.cmd;\n });\n }\n } catch (err) {\n (0, _logger.showError)('Utils:cargaLibreriaGPT:Error loading GPT library');\n }\n}\n\nfunction extend() {\n var args = arguments;\n var objectValues = (0, _keys2.default)(args).map(function (e) {\n return args[e];\n });\n // sustituto de Object.values(args)\n\n objectValues.forEach(function (argument, pos) {\n pos !== 0 && (0, _keys2.default)(argument).forEach(function (key) {\n args[0][key] = argument[key];\n });\n });\n\n return args[0];\n}\n\nfunction endsWith(str, suffix) {\n return str.indexOf(suffix, str.length - suffix.length) !== -1;\n}\n\nfunction startsWith(str, needle) {\n return str.indexOf(needle) === 0;\n}\n\nfunction urlToSection(sectionUrl) {\n return sectionUrl.replace(/^\\/|\\/$/g, '');\n}\n\n/***/ }),\n/* 56 */,\n/* 57 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\n\nexports.default = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\n/***/ }),\n/* 58 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\n\nvar _defineProperty = __webpack_require__(150);\n\nvar _defineProperty2 = _interopRequireDefault(_defineProperty);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n (0, _defineProperty2.default)(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n/***/ }),\n/* 59 */,\n/* 60 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = !__webpack_require__(5) && !__webpack_require__(12)(function(){\n return Object.defineProperty(__webpack_require__(41)('div'), 'a', {get: function(){ return 7; }}).a != 7;\n});\n\n/***/ }),\n/* 61 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(9);\n\n/***/ }),\n/* 62 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar has = __webpack_require__(13)\n , toIObject = __webpack_require__(14)\n , arrayIndexOf = __webpack_require__(100)(false)\n , IE_PROTO = __webpack_require__(45)('IE_PROTO');\n\nmodule.exports = function(object, names){\n var O = toIObject(object)\n , i = 0\n , result = []\n , key;\n for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while(names.length > i)if(has(O, key = names[i++])){\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n\n/***/ }),\n/* 63 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(2).document && document.documentElement;\n\n/***/ }),\n/* 64 */\n/***/ (function(module, exports) {\n\nmodule.exports = function(done, value){\n return {value: value, done: !!done};\n};\n\n/***/ }),\n/* 65 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// call something on iterator step with safe closing on error\nvar anObject = __webpack_require__(10);\nmodule.exports = function(iterator, fn, value, entries){\n try {\n return entries ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch(e){\n var ret = iterator['return'];\n if(ret !== undefined)anObject(ret.call(iterator));\n throw e;\n }\n};\n\n/***/ }),\n/* 66 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// check on default Array iterator\nvar Iterators = __webpack_require__(19)\n , ITERATOR = __webpack_require__(1)('iterator')\n , ArrayProto = Array.prototype;\n\nmodule.exports = function(it){\n return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);\n};\n\n/***/ }),\n/* 67 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar ctx = __webpack_require__(11)\n , invoke = __webpack_require__(107)\n , html = __webpack_require__(63)\n , cel = __webpack_require__(41)\n , global = __webpack_require__(2)\n , process = global.process\n , setTask = global.setImmediate\n , clearTask = global.clearImmediate\n , MessageChannel = global.MessageChannel\n , counter = 0\n , queue = {}\n , ONREADYSTATECHANGE = 'onreadystatechange'\n , defer, channel, port;\nvar run = function(){\n var id = +this;\n if(queue.hasOwnProperty(id)){\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\nvar listener = function(event){\n run.call(event.data);\n};\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif(!setTask || !clearTask){\n setTask = function setImmediate(fn){\n var args = [], i = 1;\n while(arguments.length > i)args.push(arguments[i++]);\n queue[++counter] = function(){\n invoke(typeof fn == 'function' ? fn : Function(fn), args);\n };\n defer(counter);\n return counter;\n };\n clearTask = function clearImmediate(id){\n delete queue[id];\n };\n // Node.js 0.8-\n if(__webpack_require__(23)(process) == 'process'){\n defer = function(id){\n process.nextTick(ctx(run, id, 1));\n };\n // Browsers with MessageChannel, includes WebWorkers\n } else if(MessageChannel){\n channel = new MessageChannel;\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = ctx(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if(global.addEventListener && typeof postMessage == 'function' && !global.importScripts){\n defer = function(id){\n global.postMessage(id + '', '*');\n };\n global.addEventListener('message', listener, false);\n // IE8-\n } else if(ONREADYSTATECHANGE in cel('script')){\n defer = function(id){\n html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function(){\n html.removeChild(this);\n run.call(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function(id){\n setTimeout(ctx(run, id, 1), 0);\n };\n }\n}\nmodule.exports = {\n set: setTask,\n clear: clearTask\n};\n\n/***/ }),\n/* 68 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar global = __webpack_require__(2)\n , core = __webpack_require__(0)\n , dP = __webpack_require__(4)\n , DESCRIPTORS = __webpack_require__(5)\n , SPECIES = __webpack_require__(1)('species');\n\nmodule.exports = function(KEY){\n var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];\n if(DESCRIPTORS && C && !C[SPECIES])dP.f(C, SPECIES, {\n configurable: true,\n get: function(){ return this; }\n });\n};\n\n/***/ }),\n/* 69 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar ITERATOR = __webpack_require__(1)('iterator')\n , SAFE_CLOSING = false;\n\ntry {\n var riter = [7][ITERATOR]();\n riter['return'] = function(){ SAFE_CLOSING = true; };\n Array.from(riter, function(){ throw 2; });\n} catch(e){ /* empty */ }\n\nmodule.exports = function(exec, skipClosing){\n if(!skipClosing && !SAFE_CLOSING)return false;\n var safe = false;\n try {\n var arr = [7]\n , iter = arr[ITERATOR]();\n iter.next = function(){ return {done: safe = true}; };\n arr[ITERATOR] = function(){ return iter; };\n exec(arr);\n } catch(e){ /* empty */ }\n return safe;\n};\n\n/***/ }),\n/* 70 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\n\nvar _isIterable2 = __webpack_require__(109);\n\nvar _isIterable3 = _interopRequireDefault(_isIterable2);\n\nvar _getIterator2 = __webpack_require__(112);\n\nvar _getIterator3 = _interopRequireDefault(_getIterator2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n function sliceIterator(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = (0, _getIterator3.default)(arr), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"]) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n }\n\n return function (arr, i) {\n if (Array.isArray(arr)) {\n return arr;\n } else if ((0, _isIterable3.default)(Object(arr))) {\n return sliceIterator(arr, i);\n } else {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n }\n };\n}();\n\n/***/ }),\n/* 71 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.2.2 IsArray(argument)\nvar cof = __webpack_require__(23);\nmodule.exports = Array.isArray || function isArray(arg){\n return cof(arg) == 'Array';\n};\n\n/***/ }),\n/* 72 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = __webpack_require__(62)\n , hiddenKeys = __webpack_require__(47).concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O){\n return $keys(O, hiddenKeys);\n};\n\n/***/ }),\n/* 73 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(126), __esModule: true };\n\n/***/ }),\n/* 74 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _keys = __webpack_require__(21);\n\nvar _keys2 = _interopRequireDefault(_keys);\n\nexports.extend = extend;\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction extend(destination, source) {\n (0, _keys2.default)(source).forEach(function (key) {\n destination[key] = source[key];\n });\n}\n\n/***/ }),\n/* 75 */\n/***/ (function(module, exports) {\n\nmodule.exports = {\"name\":\"vam\",\"version\":\"3.14.0\",\"description\":\"\",\"main\":\"src/index.js\",\"scripts\":{\"test\":\"./node_modules/.bin/nyc ./node_modules/.bin/mocha-webpack tests/index.js --require jsdom-global/register --webpack-config webpack.test.js\",\"tdd\":\"./node_modules/.bin/mocha-webpack tests/index.js --require jsdom-global/register --webpack-config webpack.test.js --watch\",\"start\":\"./node_modules/.bin/webpack-dev-server --open --config webpack.dev.js\",\"build\":\"./node_modules/.bin/webpack --optimize-minimize --config webpack.prod.js\",\"prebid\":\"cd ./node_modules/prebid.js/ && npm install && \\\"./node_modules/.bin/gulp\\\" build --modules=../../src/header-bidding/prebid-modules.json && cd ../..\"},\"contributors\":[\"Jose Manuel Ortega \",\"Ernesto V. \",\"Iván Pérez \",\"Mario Cadenas \"],\"license\":\"SEE LICENSE IN LICENSE.md\",\"devDependencies\":{\"babel-core\":\"^6.26.0\",\"babel-eslint\":\"^8.0.1\",\"babel-loader\":\"^7.1.2\",\"babel-plugin-syntax-dynamic-import\":\"^6.18.0\",\"babel-plugin-transform-object-rest-spread\":\"^6.26.0\",\"babel-plugin-transform-runtime\":\"^6.23.0\",\"babel-polyfill\":\"^6.16.0\",\"babel-preset-env\":\"^1.6.1\",\"chai\":\"^4.1.2\",\"chalk\":\"^1.1.3\",\"clean-webpack-plugin\":\"^0.1.17\",\"copy-webpack-plugin\":\"^4.3.1\",\"css-loader\":\"^0.28.4\",\"eslint\":\"^4.19.1\",\"eslint-config-airbnb\":\"^17.0.0\",\"eslint-config-airbnb-base\":\"^12.0.1\",\"eslint-plugin-import\":\"^2.12.0\",\"extract-text-webpack-plugin\":\"^1.0.1\",\"file-loader\":\"^1.1.6\",\"html-loader\":\"^0.5.5\",\"html-webpack-plugin\":\"^2.30.1\",\"json-loader\":\"^0.5.7\",\"mocha\":\"^4.0.1\",\"mocha-loader\":\"^1.0.0\",\"mocha-phantomjs\":\"^4.1.0\",\"mocha-webpack\":\"^1.0.1\",\"nyc\":\"^11.4.1\",\"style-loader\":\"^0.18.2\",\"webpack\":\"^3.10.0\",\"webpack-dev-server\":\"^2.9.7\",\"webpack-merge\":\"^4.1.1\",\"webpack-shell-plugin\":\"^0.5.0\"},\"dependencies\":{\"jquery-inview\":\"^1.1.2\",\"js-cookie\":\"^2.1.4\",\"prebid.js\":\"1.12.0\",\"rijndael-js\":\"^1.0.0\",\"rsvp\":\"^3.5.0\"}}\n\n/***/ }),\n/* 76 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _promise = __webpack_require__(17);\n\nvar _promise2 = _interopRequireDefault(_promise);\n\nvar _keys = __webpack_require__(21);\n\nvar _keys2 = _interopRequireDefault(_keys);\n\nvar _classCallCheck2 = __webpack_require__(57);\n\nvar _classCallCheck3 = _interopRequireDefault(_classCallCheck2);\n\nvar _createClass2 = __webpack_require__(58);\n\nvar _createClass3 = _interopRequireDefault(_createClass2);\n\nvar _configManager = __webpack_require__(157);\n\nvar _configManager2 = _interopRequireDefault(_configManager);\n\nvar _application = __webpack_require__(15);\n\nvar _application2 = _interopRequireDefault(_application);\n\nvar _utils = __webpack_require__(55);\n\nvar _logger = __webpack_require__(6);\n\nvar _constants = __webpack_require__(3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar URL_PARAM_ALL = 'all';\n\nvar _dynamicId = -1,\n _prevEncryptedCode = '',\n _prevUnencryptedCode = '';\n\nvar ConfigManager = function () {\n function ConfigManager(configGDPMedio, configGDP) {\n var modifyOAS = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n (0, _classCallCheck3.default)(this, ConfigManager);\n\n _prevEncryptedCode = '';\n _prevUnencryptedCode = '';\n this.configGDPMedio = $.extend(true, {}, configGDPMedio);\n this.configGDP = $.extend(true, {}, configGDP);\n this.modifyOAS = modifyOAS;\n this.deviceType = _getTipoDispositivo.call(this);\n this.pageType = _getTipoPagina.call(this);\n this.dynamicId = ++_dynamicId;\n this.context$ = null;\n this.isResponsiveMedia = _isResponsiveMedia.call(this);\n this.capturadorDataPreview = '';\n this.valueUserType = _getValueUser();\n this.delayedPositions = _getDelayed.call(this);\n this.prioritizedPositions = _getPrioritized.call(this);\n this.globalTargetings = _getDefineSlotTargetings.call(this);\n }\n\n /**\n * Process the configGDPMedia\n */\n\n\n (0, _createClass3.default)(ConfigManager, [{\n key: 'processConfig',\n value: function processConfig() {\n _configManager2.default.processConfig(this);\n }\n\n /**\n * Check if a position is enabled or disabled\n * @param {object} params\n * @return {boolean}\n */\n\n }, {\n key: 'isActive',\n value: function isActive(params) {\n // OK\n var container$, configPosition, configSchedules, currentDate, found;\n\n // check if all positions or the given in params are actives by URL\n if ('forceActivePosition' in this.configGDPMedio && (this.configGDPMedio.forceActivePosition.indexOf('1') > -1 || this.configGDPMedio.forceActivePosition.indexOf(URL_PARAM_ALL) > -1 || this.configGDPMedio.forceActivePosition.indexOf(params.position) > -1)) {\n return true;\n }\n\n container$ = $('#' + this.getIdDiv(params));\n configPosition = _application2.default.lookup('posicion_' + this.deviceType + '.' + params.position, this.configGDP);\n\n // Checking that the config of the device type is added\n\n if (!(0, _utils.isEmpty)(configPosition)) {\n // Check if the position is active for the page type\n if (configPosition.desactivadoen && configPosition.desactivadoen.length && configPosition.desactivadoen !== '' && configPosition.desactivadoen.indexOf(this.pageType) !== -1) {\n (0, _logger.showLog)('ConfigManager:isActive:Position ' + params.position + ' is not active for the pageType ' + this.pageType);\n container$.trigger(_constants.SLOT_INACTIVE);\n return false;\n }\n\n // Check if the position has programming\n currentDate = Math.round(+new Date() / 1000);\n found = false;\n configSchedules = _application2.default.lookup('posicion_' + this.deviceType + '.' + params.position + '.programaciones', this.configGDP);\n if (!(0, _utils.isEmpty)(configSchedules) && configSchedules.length) {\n found = configSchedules.some(function (current) {\n var beginDate, endDate;\n beginDate = current.programacion ? current.programacion.fecha_in : 0;\n endDate = current.programacion ? current.programacion.fecha_fin : 0;\n return (beginDate === 0 || currentDate >= beginDate) && (endDate === 0 || currentDate <= endDate);\n });\n\n if (!found) {\n (0, _logger.showLog)('ConfigManager:isActive:Position ' + params.position + ' is not active for the current date');\n container$.trigger(_constants.SLOT_INACTIVE);\n return false;\n }\n }\n } else {\n (0, _logger.showLog)('ConfigManager:isActive:Position ' + params.position + ' is not active');\n container$.trigger(_constants.SLOT_INACTIVE);\n return false;\n }\n\n return true;\n }\n\n /**\n * Generate position identifier\n * FUTURE: Clean this method when all pages(ABC, MH, PPLL) use the\n * new ADS strategy(PREFIX or SUFIX come from GDP)\n * @param {object} params\n * @return {string}\n */\n\n }, {\n key: 'getIdDiv',\n value: function getIdDiv(params) {\n // OK\n var adsId, dynamicId;\n\n (0, _logger.showLog)('ConfigManager:getIdDiv:Dinamic ID', params.dynamicId, this.dynamicId);\n dynamicId = this.dynamicId ? '-' + this.dynamicId : '';\n if (params.dynamicId !== undefined) {\n dynamicId = params.dynamicId ? '-' + params.dynamicId : '';\n }\n if (params.id && typeof params.id === 'string') {\n (0, _logger.showLog)('ConfigManager:getIdDiv:With Id param', params);\n adsId = params.id.indexOf(_constants.OLD_PREFIX) > -1 ? params.id : '' + _constants.OLD_PREFIX + params.id;\n if (!$('#' + adsId).length) {\n (0, _logger.showLog)('ConfigManager:getIdDiv:With Id param. Not found ID', adsId);\n adsId = params.id.indexOf(_constants.NEW_SUFFIX) > -1 ? params.id : '' + params.id + _constants.NEW_SUFFIX;\n }\n adsId += (0, _utils.endsWith)(adsId, dynamicId) ? '' : dynamicId;\n (0, _logger.showLog)('ConfigManager:getIdDiv:With Id param. Id calculated', adsId);\n } else {\n (0, _logger.showLog)('ConfigManager:getIdDiv:No Id param', params);\n adsId = '' + _constants.OLD_PREFIX + params.position;\n if (!$('#' + adsId).length) {\n (0, _logger.showLog)('ConfigManager:getIdDiv:No Id param. Not found ID', adsId);\n adsId = '' + params.position + _constants.NEW_SUFFIX + dynamicId;\n }\n (0, _logger.showLog)('ConfigManager:getIdDiv:No Id param. Id calculated', adsId);\n }\n\n return adsId;\n }\n\n /**\n * Check if position exist in media config\n * @param {string} position\n * @param {string} deviceType\n * @returns {boolean} - TRUE if exist, FALSE otherwise\n */\n\n }, {\n key: 'existePosEnConfigGDPMedio',\n value: function existePosEnConfigGDPMedio(position) {\n var deviceType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.deviceType;\n // OK\n var idAds;\n\n if (!(0, _utils.isEmpty)(_application2.default.lookup('posicion_' + deviceType + '.' + position, this.configGDPMedio))) {\n return true;\n }\n // If position do not exist, hide the container DIV\n idAds = this.getIdDiv({ position: position });\n $('#' + idAds).length && $('#' + idAds).hide();\n\n return false;\n }\n\n /**\n * Normalize the position's parameters\n */\n\n }, {\n key: 'normalizaParams',\n value: function normalizaParams(data) {\n // OK\n var params, outOfPage, idAds, offset;\n\n params = {};\n // jQuery object or JSON object\n if (data instanceof $) {\n (0, _utils.extend)(params, _constants.DEFAULTS, {\n position: data.data('voc-vam-position') || null,\n serverType: data.data('voc-vam-servertype') || _getServerType.call(this, params.position),\n hideNoAds: data.data('voc-vam-hidenoads'),\n outOfPage: data.data('voc-vam-outofpage'),\n defineSlot: data.data('voc-vam-defineslot') || _getDefineSlotParam.call(this),\n refresh: data.data('voc-vam-refresh'),\n responsive: data.data('voc-vam-responsive'),\n pre_callback: data.data('voc-vam-precallback') || '',\n pre_event: data.data('voc-vam-preevent') || '',\n post_callback: data.data('voc-vam-postcallback') || '',\n post_event: data.data('voc-vam-postevent') || '',\n oas: data.data('voc-vam-oas') || '',\n tags: data.data('voc-vam-tags'),\n dynamicId: this.dynamicId\n });\n } else {\n (0, _utils.extend)(params, _constants.DEFAULTS, {\n position: data.position || null,\n id: data.id || null,\n serverType: data.serverType || _getServerType.call(this, params.position),\n hideNoAds: data.hideNoAds,\n outOfPage: data.outOfPage,\n defineSlot: data.defineSlot || _getDefineSlotParam.call(this),\n refresh: data.refresh,\n responsive: data.responsive,\n pre_callback: data.pre_callback || '',\n pre_event: data.pre_event || '',\n post_callback: data.post_callback || '',\n post_event: data.post_event || '',\n oas: data.oas || '',\n tags: data.tags,\n dynamicId: data.dynamicId || this.dynamicId\n });\n }\n\n // if some required parameter is missing, return null\n if (params.position === null) {\n (0, _logger.showWarn)('ConfigManager:normalizaParams:Position param is required', data);\n return null;\n }\n\n if (!this.existePosEnConfigGDPMedio(params.position)) {\n (0, _logger.showWarn)('ConfigManager:normalizaParams:Position ' + params.position + ' does not exists in configGDPMedio');\n return null;\n }\n\n // OutOfPage param\n if (typeof params.outOfPage !== 'boolean') {\n outOfPage = _application2.default.lookup('posicion_' + this.deviceType + '.' + params.position + '.outofpage', this.configGDPMedio);\n params.outOfPage = (0, _utils.isEmpty)(outOfPage) || typeof outOfPage !== 'boolean' ? false : outOfPage;\n }\n\n // ads container DIV\n idAds = this.getIdDiv(params);\n if (!$('#' + idAds).length && $('[data-voc-vam-position = \\'' + params.position + '\\']', this.context$).length && !$('[data-voc-vam-position = \\'' + params.position + '\\']', this.context$).attr('id')) {\n $('[data-voc-vam-position = \\'' + params.position + '\\']', this.context$).attr('id', idAds);\n }\n params.id = idAds;\n\n // global targetings\n if (!params.tags) {\n params.tags = _application2.default.lookup('posicion_' + this.deviceType + '.' + params.position + '.targetings', this.configGDPMedio) || {};\n }\n\n // offset\n offset = _application2.default.lookup('posicion_' + this.deviceType + '.' + params.position + '.offset', this.configGDP);\n if (!(0, _utils.isEmpty)(offset)) {\n $('#' + params.id).attr('data-offset', offset);\n (0, _logger.showLog)('ConfigManager:normalizaParams:Offset ' + offset + ' configurer for position: ' + params.position);\n }\n\n // build the responsive parameter if it doesn't come in the data\n if (!params.outOfPage && !params.responsive && this.isResponsiveMedia) {\n params.responsive = _getResponsiveParam.call(this, params);\n }\n\n return params;\n }\n\n /**\n * Get OAS value from config\n * FUTURE: create final OAS config on GDP\n * @return string\n */\n\n }, {\n key: 'getOasSitepage',\n value: function getOasSitepage() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var oasSitepage, decryptedURL, legacyAdUnit, regExp, result, macroEdition, edition;\n\n if (params.oas) {\n oasSitepage = params.oas.trim();\n } else {\n oasSitepage = _application2.default.lookup('OAS.' + this.deviceType + '.' + this.pageType, this.configGDP);\n oasSitepage = (0, _utils.isEmpty)(oasSitepage) ? '' : oasSitepage.trim();\n }\n\n // check if adUnit is forced by URL\n try {\n decryptedURL = ConfigManager.decryptedURL();\n if (window.location.href.indexOf('vam_adunit=') > -1 || window.location.href.indexOf('adunit=') > -1 || decryptedURL !== '') {\n legacyAdUnit = window.location.href.indexOf('vam_adunit=') > -1 ? 'vam_adunit' : 'adunit';\n regExp = new RegExp('(\\\\?|&)' + legacyAdUnit + '=([^?&]+)');\n result = decryptedURL !== '' ? regExp.exec(decryptedURL) : regExp.exec(window.location.href);\n\n if (result) {\n oasSitepage = result[2].indexOf('/' + _constants.GPT_ID_VOCENTO + '/') > -1 ? result[2] : '/' + _constants.GPT_ID_VOCENTO + '/' + result[2];\n }\n }\n } catch (err) {\n (0, _logger.showError)('ConfigManager:getOasSitepage:Error checking adUnit', err);\n }\n\n // check macro edition\n try {\n regExp = /{(\\/)?edicion(\\/)?}/;\n macroEdition = regExp.exec(oasSitepage);\n if (macroEdition) {\n edition = _getEdition();\n if ((0, _utils.startsWith)(macroEdition[0], '{/') && edition) edition = '/' + edition;\n if ((0, _utils.endsWith)(macroEdition[0], '/}') && edition) edition += '/';\n\n oasSitepage = oasSitepage.replace(macroEdition[0], edition);\n }\n } catch (err) {\n (0, _logger.showError)('ConfigManager:getOasSitepage:Error checking edition', err);\n }\n\n // Guardamos el valor del adunit calculado por si no lo esta\n if (typeof this.configGDP.OAS.adunit === 'undefined') this.configGDP.OAS.adunit = oasSitepage;\n\n return oasSitepage;\n }\n\n /**\n * Calculate the sizes for a given position\n * FUTURE: move config to GDP\n * @param {string} position\n * @param {string} deviceType - default is _deviceType\n * @return {object}\n */\n\n }, {\n key: 'getSizesGoogle',\n value: function getSizesGoogle(position) {\n var deviceType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.deviceType;\n // OK\n var configSize, size, defineSlot;\n\n configSize = _application2.default.lookup('posicion_' + deviceType + '.' + position + '.dimensiones', this.configGDPMedio);\n\n size = !(0, _utils.isEmpty)(configSize) ? configSize : '[]';\n defineSlot = _getDefineSlotParam.call(this);\n\n if (size.indexOf('[fluid]') > -1) {\n if (!defineSlot) return ['fluid'];\n\n size = size.replace('[fluid]', '\\'fluid\\'');\n }\n\n return defineSlot ? size : JSON.parse(size);\n }\n\n /**\n * Detect forced config by URL.\n * Support params:\n * vam_adunit\n * vam_cmvkey\n * vam_debug\n * vam_enable_single_request\n * vam_enable_sync_rendering\n * vam_enable_krux\n * vam_force_positions\n * vam_info_slot\n */\n\n }, {\n key: 'checkConfigFromURL',\n value: function checkConfigFromURL() {\n var legacyCode, code, prebidDisabledBidders;\n if (typeof window.location === 'undefined') return;\n\n // Disable Prebid\n if ('headerBidding' in this.configGDPMedio && window.location.href.indexOf('vam_prebid_disabled=') > -1) {\n prebidDisabledBidders = (0, _utils.getParameterByName)('vam_prebid_disabled', window.location.href).split(',');\n this.configGDPMedio.headerBidding.biddersConfig.disabled = prebidDisabledBidders;\n if (prebidDisabledBidders.indexOf(URL_PARAM_ALL) > -1) {\n this.configGDPMedio.headerBidding = null;\n }\n }\n\n // Disable HB Amazon\n if ('hbAmazon' in this.configGDPMedio) {\n this.configGDPMedio.hbAmazon = window.location.href.indexOf('vam_amazon_disabled=1') > -1 || window.location.href.indexOf('gdp_enableAmazonAds=0') > -1 || !this.configGDPMedio.enableAmazonAds ? false : this.configGDPMedio.hbAmazon;\n }\n\n // Single Request\n this.configGDPMedio.singleRequest = window.location.href.indexOf('vam_single_request=1') > -1 || window.location.href.indexOf('gdp_singleRequest=1') > -1 || this.configGDPMedio.singleRequest;\n\n // SyncRendering\n this.configGDPMedio.syncRendering = window.location.href.indexOf('vam_sync_rendering=1') > -1 || window.location.href.indexOf('gdp_syncRendering=1') > -1 || this.configGDPMedio.syncRendering;\n\n // Krux\n this.configGDPMedio.enableKrux = window.location.href.indexOf('vam_krux=1') > -1 || window.location.href.indexOf('gdp_enableKrux=1') > -1 || this.configGDPMedio.enableKrux;\n\n // Force active position\n this.configGDPMedio.forceActivePosition = window.location.href.indexOf('vam_force_positions=') > -1 ? (0, _utils.getParameterByName)('vam_force_positions', window.location.href).split(',') : (0, _utils.getParameterByName)('gdp_forceActivePosition', window.location.href).split(',');\n\n // InfoSlot\n this.configGDPMedio.infoSlot = window.location.href.indexOf('vam_info_slot=1') > -1 || window.location.href.indexOf('gdp_infoSlot=1') > -1;\n if (this.configGDPMedio.infoSlot) {\n (0, _utils.load)(_constants.VAM_CSS_URL, {\n type: 'link'\n }).then(function () {\n (0, _logger.showLog)('ConfigManager:checkConfigFromURL:CSS loaded', _constants.VAM_CSS_URL);\n });\n }\n\n // Capturador (modo preview)\n this.configGDPMedio.preview = window.location.href.indexOf('vam_preview') > -1 || window.location.href.indexOf('preview') > -1;\n if (this.configGDPMedio.preview) {\n (0, _logger.showLog)('ConfigManager:checkConfigFromURL:Detected capture mode. Call capture SW');\n this.capturadorDataPreview = _capturadorGetPreviewData();\n\n // En modo capturador no pondremos priorizadas ni retrasadas\n this.configGDP.priorizadas = {};\n this.configGDP.retrasadas = {};\n }\n\n // Previsualizador\n if (window.location.href.indexOf('vam_code=') > -1 || window.location.href.indexOf('code=') > -1) {\n (0, _logger.showLog)('ConfigManager:checkConfigFromURL:Detected preview mode');\n legacyCode = window.location.href.indexOf('vam_code=') > -1 ? 'vam_code' : 'code';\n code = (0, _utils.getParameterByName)(legacyCode, window.location.href);\n _prevEncryptedCode = decodeURI(code);\n\n // En modo previsualizador no pondremos priorizadas ni retrasadas\n this.configGDP.priorizadas = {};\n this.configGDP.retrasadas = {};\n\n if (_prevEncryptedCode !== '') {\n __webpack_require__.e/* import() */(0).then(__webpack_require__.bind(null, 175)).then(function (Rijndael) {\n (0, _logger.showLog)('ConfigManager:Rijndael library is loaded', Rijndael);\n _decriptUrl(Rijndael);\n });\n }\n }\n }\n\n /**\n * Comprobacion de si existen excepciones para la pagina donde nos encontramos.\n * @return object configGDP\n */\n\n }, {\n key: 'checkExceptions',\n value: function checkExceptions() {\n var value, unixTime, beginDate, endDate;\n\n if (this.configGDPMedio.excepciones && (0, _keys2.default)(this.configGDPMedio.excepciones).length > 0) {\n (0, _logger.showLog)('ConfigManager:checkExceptions:There are configured exceptions');\n (0, _keys2.default)(this.configGDPMedio.excepciones).forEach(function (key) {\n if (key !== 'priorizadas' && key !== 'retrasadas') {\n if (window.location.pathname === key || window.location.pathname.match(key)) {\n value = this.configGDPMedio.excepciones[key];\n unixTime = Math.round(new Date() / 1000);\n beginDate = value.fecha_in;\n endDate = value.fecha_fin;\n if ((beginDate === 0 || beginDate <= unixTime) && (endDate === 0 || unixTime <= endDate)) {\n this.configGDP = value;\n (0, _logger.showLog)('ConfigManager:checkExceptions:Applying the following exception:\"' + key + '\"');\n }\n }\n }\n }, this);\n }\n }\n\n /**\n * Funcion que devuelve la URL desencriptada\n * @returns {string}\n */\n\n }, {\n key: 'isDelayed',\n\n\n /**\n * Funcion que comprueba si una posicion es retrasada\n * FUTURE: listaRetrasadas come in array format from GDP\n */\n value: function isDelayed(position) {\n return this.thereAreDelayedPositions() && this.delayedPositions.indexOf(position) > -1;\n }\n }, {\n key: 'thereAreDelayedPositions',\n value: function thereAreDelayedPositions() {\n return this.delayedPositions.length;\n }\n\n /**\n * Funcion que comprueba si una posicion es retrasada\n * FUTURE: listaRetrasadas come in array format from GDP\n */\n\n }, {\n key: 'isPrioritized',\n value: function isPrioritized(position) {\n return this.thereArePrioritizedPositions() && this.prioritizedPositions.indexOf(position) > -1;\n }\n }, {\n key: 'thereArePrioritizedPositions',\n value: function thereArePrioritizedPositions() {\n return this.prioritizedPositions.length;\n }\n }, {\n key: 'removePrioritizedPosition',\n value: function removePrioritizedPosition(position) {\n var index = this.prioritizedPositions.indexOf(position);\n\n if (index !== -1) {\n this.prioritizedPositions.splice(index, 1);\n }\n }\n }, {\n key: 'dynamicOas',\n value: function dynamicOas() {\n var _this = this;\n\n var _modifyOAS = this.modifyOAS,\n section = _modifyOAS.section,\n forcedOas = _modifyOAS.forcedOas;\n\n var newOas = forcedOas ? section + '/' + forcedOas : section;\n\n if (!section || !forcedOas) {\n return _promise2.default.resolve();\n }\n\n (0, _keys2.default)(this.configGDP.OAS).forEach(function (device) {\n if (device !== 'adunit') {\n (0, _keys2.default)(_this.configGDP.OAS[device]).forEach(function (option) {\n if ((0, _utils.endsWith)(_this.configGDP.OAS[device][option], 'portada')) {\n _this.configGDP.OAS[device][option] = _this.configGDP.OAS[device][option].replace(new RegExp('portada?$', 'g'), newOas);\n } else {\n _this.configGDP.OAS[device][option] = _this.configGDP.OAS[device][option] + '/' + section;\n }\n });\n }\n });\n return _promise2.default.resolve();\n }\n }], [{\n key: 'decryptedURL',\n value: function decryptedURL() {\n return _prevUnencryptedCode;\n }\n }]);\n return ConfigManager;\n}();\n\nexports.default = ConfigManager;\n\n/* Private */\n\n/**\n * Get the device type depending on the size of the screen\n * @return string\n */\n\nfunction _getTipoDispositivo() {\n // OK\n var max, min, screenWidth, deviceType;\n\n deviceType = 'desktop';\n\n if (!this.configGDPMedio.responsive.esResponsive) {\n if (this.configGDPMedio && this.configGDPMedio.tipoDispositivo) {\n deviceType = this.configGDPMedio.tipoDispositivo;\n }\n } else {\n screenWidth = parseInt(window.innerWidth, 10);\n\n (0, _keys2.default)(this.configGDPMedio.responsive).forEach(function (key) {\n var value = this.configGDPMedio.responsive[key];\n if (key !== 'esResponsive' && (value.resolucionMaxima || value.resolucionMinima)) {\n max = value.resolucionMaxima ? value.resolucionMaxima : 999999;\n min = value.resolucionMinima ? value.resolucionMinima : 0;\n\n if (screenWidth <= max && screenWidth > min) {\n deviceType = key.replace('resolucion', '').toLowerCase();\n }\n }\n }, this);\n }\n\n return deviceType;\n}\n\n/**\n * Look for the medium where we are, from the configuration\n * @return string\n */\nfunction _getMedio() {\n // OK\n return this.configGDPMedio.medio ? this.configGDPMedio.medio : '';\n}\n\n/**\n * Get the page type from the URL pattern\n * NOTE: Each medium has its own URL rules so each one has its own function to calculate them\n * FUTURE: set the page type in global namespace on each page\n */\nfunction _getTipoPagina() {\n // OK\n var medio = _getMedio.call(this);\n\n var _app$lookup = _application2.default.lookup(_constants.CONFIG_NAMESPACE),\n pageType = _app$lookup.pageType;\n\n if (pageType) return pageType;\n\n pageType = 'portada';\n\n if (medio === 'xlsemanal' && window.tipoContenido && window.tipoContenido !== 'portadilla') return window.tipoContenido;\n\n if (['abc', 'lavozdigital', 'abcdesevilla'].indexOf(medio) > -1) {\n pageType = _getTipoPaginaABC();\n } else if (medio === 'mujerhoy') {\n pageType = _getTipoPaginaMujerhoy();\n } else {\n pageType = _getTipoPaginaPortalesLocales();\n }\n\n return pageType;\n}\n\n/**\n * Get the page type from the URL for abc.es, sevilla.abc.es and lavozdigital.es\n * @return {string}\n */\nfunction _getTipoPaginaABC() {\n // OK\n var oldVideosRegExp, videosRegExp, oldGaleryRegExp2, oldGaleryRegExp, galeryRegExp, graphicRegExp, oldNewsRegExp, newsRegExp;\n\n oldVideosRegExp = /\\/videos\\/(.*)?\\/\\d{6}\\/\\d{2}\\/((?!index.html).)*.html/;\n videosRegExp = /_video.html/;\n if (videosRegExp.exec(window.location.pathname) || oldVideosRegExp.exec(window.location.pathname)) return 'video';\n\n oldGaleryRegExp2 = /\\/multimedia\\/fotos\\/(.*)?\\/((?!index.html).)*.html/;\n oldGaleryRegExp = /\\/fotos-(.*)?\\/\\d{8}\\/((?!index.html).)*.html/;\n galeryRegExp = /_galeria.html/;\n if (galeryRegExp.exec(window.location.pathname) || oldGaleryRegExp.exec(window.location.pathname) || oldGaleryRegExp2.exec(window.location.pathname)) return 'galeria';\n\n graphicRegExp = /\\/multimedia\\/(graficos\\/(.)*|infografias)\\/((?!index.html).)*.html/;\n if (graphicRegExp.exec(window.location.pathname)) return 'grafico';\n\n oldNewsRegExp = /\\d{8}\\/(.*)?((?!index.html).)*.html/;\n newsRegExp = /(_noticia.html|_directo.html)/;\n if (newsRegExp.exec(window.location.pathname) || oldNewsRegExp.exec(window.location.pathname)) return 'noticia';\n\n return 'portada';\n}\n\n/**\n * Get the page type from the URL for mujerhoy.com\n * @return {string}\n */\nfunction _getTipoPaginaMujerhoy() {\n // OK\n var videoRegExp, oldVideoRegExp, videoBlogRegExp, isVideo, galeryRegExp, oldGaleryRegExp, galeryBlogRegExp, isGalery, newsRegExp, newsBlogRegExp, newsRecipesRegExp, isNews;\n\n videoRegExp = /-vi.html/;\n oldVideoRegExp = /\\/videos\\/(.*)?\\/\\d{6}\\/\\d{2}\\/.*-mm.html/;\n videoBlogRegExp = /\\/videos\\/\\d{4}\\/\\d{2}\\/\\d{2}\\/(.*).html/;\n isVideo = window.location.hostname.indexOf('blogs.') > -1 ? videoBlogRegExp.exec(window.location.pathname) : videoRegExp.exec(window.location.pathname) || oldVideoRegExp.exec(window.location.pathname);\n if (isVideo) return 'video';\n\n galeryRegExp = /-ga.html/;\n oldGaleryRegExp = /^\\/galerias\\/(.*)?\\d{6}\\/\\d{2}\\/.*-mm.html/;\n galeryBlogRegExp = /\\/galerias\\/\\d{4}\\/\\d{2}\\/\\d{2}\\/(.*).html/;\n isGalery = window.location.hostname.indexOf('blogs.') > -1 ? galeryBlogRegExp.exec(window.location.pathname) : galeryRegExp.exec(window.location.pathname) || oldGaleryRegExp.exec(window.location.pathname);\n if (isGalery) return 'galeria';\n\n newsRegExp = /\\/\\d{6}\\/\\d{2}\\/((?!index.html).)*.html/;\n newsBlogRegExp = /\\/\\d{4}\\/\\d{2}\\/\\d{2}\\/((?!index.html).)*.html/;\n newsRecipesRegExp = /\\/\\d{6}\\/((?!index.html).)*.html/;\n if (window.location.hostname.indexOf('blogs.') > -1) {\n isNews = newsBlogRegExp.exec(window.location.pathname);\n } else if (window.location.hostname.indexOf('recetas.') > -1) {\n isNews = newsRecipesRegExp.exec(window.location.pathname);\n } else {\n isNews = newsRegExp.exec(window.location.pathname);\n }\n if (isNews) return 'noticia';\n\n return 'portada';\n}\n\n/**\n * Get the page type from the URL for PPLL\n * @return {string}\n */\nfunction _getTipoPaginaPortalesLocales() {\n // OK\n var videoRegExp, oldVideoRegExp, galeryRegExp, oldGaleryRegExp, newsRegExp, oldNewsRegExp, graphicRegExp, oldGraphicRegExp, videoChatRegExp;\n\n videoRegExp = /-(vi|virc|vivo)(_amp)?.html/;\n oldVideoRegExp = /^\\/videos\\/(.*)?\\/\\d{6}\\/\\d{2}\\/.*-mm.html/;\n if (videoRegExp.exec(window.location.pathname) || oldVideoRegExp.exec(window.location.pathname)) return 'video';\n\n galeryRegExp = /-(ga|garc|gavo|ft|ftrc|ftvo)(_amp)?.html/;\n oldGaleryRegExp = /^\\/fotos\\/(.*)?\\d{6}\\/\\d{2}\\/.*-mm.html/;\n if (galeryRegExp.exec(window.location.pathname) || oldGaleryRegExp.exec(window.location.pathname)) return 'galeria';\n\n newsRegExp = /-(nt|ntrc|ntvo)(_amp)?.html/;\n oldNewsRegExp = /\\/\\d{6}\\/\\d{2}\\/((?!index.html).)*.html/;\n if (newsRegExp.exec(window.location.pathname) || oldNewsRegExp.exec(window.location.pathname)) return 'noticia';\n\n // NOTA: En PLs, a nivel de publicidad, contemplaremos graficos y videochats como noticias\n graphicRegExp = /-(in|inrc|invo)(_amp)?.html/;\n oldGraphicRegExp = /^\\/graficos\\/(.*)?\\/\\d{6}\\/\\d{2}\\/.*-mm.html/;\n videoChatRegExp = /\\/videochats\\/((?!index.html).)\\w+/;\n if (graphicRegExp.exec(window.location.pathname) || oldGraphicRegExp.exec(window.location.pathname) || videoChatRegExp.exec(window.location.pathname)) return 'noticia';\n\n return 'portada';\n}\n\n/**\n * Get defineSlot param from config\n * @return {boolean|undefined}\n */\nfunction _getDefineSlotParam() {\n // OK\n return this.configGDPMedio.defineSlot || undefined;\n}\n\n/**\n * Get the serverType of given position\n * @param {string} position\n * @return {string}\n */\nfunction _getServerType(position) {\n // OK\n var configServerType,\n serverType = 'google';\n\n configServerType = _application2.default.lookup('posicion_' + this.deviceType + '.' + position + '.tipo', this.configGDPMedio);\n serverType = !(0, _utils.isEmpty)(configServerType) ? configServerType : serverType;\n\n return serverType;\n}\n\n/**\n * Check if is responsive from config\n * @return {boolean}\n */\nfunction _isResponsiveMedia() {\n // OK\n var isResponsive = _application2.default.lookup('responsive.esResponsive', this.configGDPMedio);\n\n return !(0, _utils.isEmpty)(isResponsive) ? isResponsive : false;\n}\n\n/**\n * Build responsive param for the position\n * @return object\n */\nfunction _getResponsiveParam(params) {\n // OK\n if (params.responsive && Array.isArray(params.responsive) && params.responsive.length) {\n return params.responsive;\n }\n\n /**\n * It doesn't have responsive param but it is\n * responsive medium so we build responsive param with\n * the corresponding resolutions and sizes\n */\n if (this.isResponsiveMedia) {\n return _createResponsive.call(this, params.position);\n }\n\n return false;\n}\n\n/**\n * Build responsive param\n * FUTURE: move config to GDP\n * @return object\n */\nfunction _createResponsive(position) {\n // OK\n var responsive, resolution, minWidth, maxWidth, dimension, googleSize, size;\n\n (0, _logger.showLog)('ConfigManager:createResponsive:Build responsive for', position);\n responsive = [];\n this.configGDPMedio.dispositivos.forEach(function (device) {\n if (!this.existePosEnConfigGDPMedio(position, device)) return;\n\n resolution = _application2.default.lookup('responsive.resolucion' + device, this.configGDPMedio);\n if (!(0, _utils.isEmpty)(resolution)) {\n minWidth = resolution.resolucionMinima;\n maxWidth = resolution.resolucionMaxima;\n\n if (!(0, _utils.isEmpty)(minWidth) && !(0, _utils.isEmpty)(maxWidth) && (minWidth || maxWidth)) {\n dimension = [parseInt(minWidth, 10) || 0, _constants.ALTOS_MINIMOS_DISPOSITIVOS[device]];\n\n googleSize = this.getSizesGoogle(position, device);\n try {\n if (googleSize && googleSize.indexOf('fluid') > -1) {\n size = 'fluid';\n } else {\n size = JSON.parse(googleSize);\n }\n } catch (e) {\n (0, _logger.showWarn)('ConfigManager:createResponsive:Processing position ' + position + ': ' + e);\n size = googleSize;\n }\n\n // Insert the dimension mapping ordered from lowest to highest by width\n responsive.push([dimension, size]);\n }\n }\n }, this);\n responsive.sort(function (pair1, pair2) {\n return pair1[0][0] - pair2[0][0];\n });\n\n responsive.sort(function (pair1, pair2) {\n return pair1[0][0] - pair2[0][0];\n });\n (0, _logger.showLog)('ConfigManager:createResponsive:Build responsive param for position ' + position, responsive);\n\n return responsive;\n}\n\n/**\n * Get edition from config\n */\nfunction _getEdition() {\n // OK\n var editions = _application2.default.lookup(_constants.EDITIONS_NAMESPACE);\n\n return editions.current || editions.main || '';\n}\n\n/**\n * Invoca al Servicio Web del Capturador para obtener las creatividades indicadas en el parametro\n * preview directamente desde DFP.\n */\nfunction _capturadorGetPreviewData() {\n var legacyPreview, url, data;\n\n legacyPreview = window.location.href.indexOf('vam_preview') > -1 ? 'vam_preview' : 'preview';\n url = _constants.CAPTURADOR_WS + '?id=' + (0, _utils.getParameterByName)(legacyPreview);\n data = '';\n $.ajax({\n url: url,\n type: 'POST',\n async: false,\n success: function success(result) {\n data = result;\n }\n });\n\n return data;\n}\n\n/**\n * Convert Gigya user format to advertising format\n */\nfunction _getValueUser() {\n // OK\n var valueUser,\n arrayUsers = {\n suscriptor: 's',\n trial: 't',\n registrado: 'r',\n anonimo: 'a'\n };\n\n valueUser = arrayUsers[_application2.default.getUserType()] || 'a';\n\n return valueUser;\n}\n\nfunction _getDelayed() {\n var delayedPositions;\n\n delayedPositions = _application2.default.lookup('retrasadas.' + this.deviceType + '.listaPosiciones', this.configGDP);\n\n if ((0, _utils.isEmpty)(delayedPositions) || !delayedPositions.length) {\n (0, _logger.showLog)('ConfigManager:getDelayed:There are NOT delayed positions');\n return [];\n }\n\n (0, _logger.showLog)('ConfigManager:getDelayed:There are delayed positions:', delayedPositions);\n delayedPositions = delayedPositions.split(',').filter(function (position) {\n return position.trim();\n });\n\n return delayedPositions;\n}\n\nfunction _getPrioritized() {\n var prioritizedPositions;\n\n prioritizedPositions = _application2.default.lookup('priorizadas.' + this.deviceType + '.listaPosiciones', this.configGDP);\n\n if ((0, _utils.isEmpty)(prioritizedPositions) || !prioritizedPositions.length) {\n (0, _logger.showLog)('ConfigManager:getPrioritized:There are NOT prioritized positions');\n return [];\n }\n\n (0, _logger.showLog)('ConfigManager:getDelayed:There are prioritized positions:', prioritizedPositions);\n prioritizedPositions = prioritizedPositions.split(',').filter(function (position) {\n return position.trim();\n });\n\n return prioritizedPositions;\n}\n\n/**\n * Decrypt url to get cmvkey param\n * @param {object} mcrypt - Rijndael object\n */\nfunction _decriptUrl(Rijndael) {\n var legacyCmvkey, mcrypt, preparedCode;\n (0, _logger.showLog)('ConfigManager:decriptUrl:Actual prevUnencryptedCode', _prevUnencryptedCode, 'and prevEncryptedCode', _prevEncryptedCode);\n if (_prevUnencryptedCode === '' && _prevEncryptedCode !== '') {\n mcrypt = new Rijndael(_constants.MCRYPT_KEY, 'cbc');\n (0, _logger.showLog)('ConfigManager:decriptUrl:Decrypting', mcrypt);\n preparedCode = atob(_prevEncryptedCode).split('').map(function (value) {\n return value.charCodeAt(0);\n });\n _prevUnencryptedCode = '?' + mcrypt.decrypt(preparedCode, 256, _constants.MCRYPT_KEY);\n (0, _logger.showLog)('ConfigManager:decriptUrl:', _prevUnencryptedCode);\n // NOTE: remove special characters from string\n _prevUnencryptedCode = _prevUnencryptedCode.replace(/[^A-Za-z 0-9.,?\"\"!@#$%^&*()\\-_=+;:<>/\\\\|}{[\\]`~]*/g, '');\n\n if ((0, _utils.endsWith)(_prevUnencryptedCode, '&vam_cmvkey=') || (0, _utils.endsWith)(_prevUnencryptedCode, '&cmvkey=')) {\n legacyCmvkey = (0, _utils.endsWith)(_prevUnencryptedCode, '&vam_cmvkey=') ? '&vam_cmvkey=' : '&cmvkey=';\n _prevUnencryptedCode = _prevUnencryptedCode.replace(legacyCmvkey, '');\n }\n (0, _logger.showLog)('ConfigManager:decriptUrl:String decrypted: ' + _prevUnencryptedCode);\n }\n\n return _prevUnencryptedCode;\n}\n\n/**\n * Funcion que obtiene los tag definidos en los archivos de configuración\n * FUTURE: move config to GDP\n * @return object\n */\nfunction _getDefineSlotTargetings() {\n var medioTargetings, pageTargetings, targetings, defineSlotTargetings;\n\n medioTargetings = this.configGDPMedio.targetings ? this.configGDPMedio.targetings : {};\n pageTargetings = this.configGDP.targetings ? this.configGDP.targetings : {};\n targetings = {};\n (0, _utils.extend)(targetings, medioTargetings, pageTargetings);\n\n defineSlotTargetings = '';\n (0, _keys2.default)(targetings).forEach(function (key) {\n defineSlotTargetings += '.setTargeting(\"' + key + '\", \"' + targetings[key] + '\")';\n });\n\n return defineSlotTargetings;\n}\n\n/***/ }),\n/* 77 */,\n/* 78 */,\n/* 79 */,\n/* 80 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(116), __esModule: true };\n\n/***/ }),\n/* 81 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(117), __esModule: true };\n\n/***/ }),\n/* 82 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\n\nvar _from = __webpack_require__(158);\n\nvar _from2 = _interopRequireDefault(_from);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n } else {\n return (0, _from2.default)(arr);\n }\n};\n\n/***/ }),\n/* 83 */,\n/* 84 */,\n/* 85 */,\n/* 86 */,\n/* 87 */,\n/* 88 */,\n/* 89 */,\n/* 90 */,\n/* 91 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.VERSION = undefined;\n\nvar _regenerator = __webpack_require__(92);\n\nvar _regenerator2 = _interopRequireDefault(_regenerator);\n\nvar _asyncToGenerator2 = __webpack_require__(95);\n\nvar _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2);\n\nvar _slicedToArray2 = __webpack_require__(70);\n\nvar _slicedToArray3 = _interopRequireDefault(_slicedToArray2);\n\n/**\n * Reload ads inside given context with given config\n * @param {jQueryEvent} event\n * @param {null|jQueryObject} context$\n */\nvar _reload = function () {\n var _ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee(context$) {\n var _app$lookup, media, options, rawSection, forcedOas, section, oasOptions, configManager;\n\n return _regenerator2.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _app$lookup = _application2.default.lookup(_constants.CONFIG_NAMESPACE), media = _app$lookup.media, options = _app$lookup.options;\n rawSection = context$.data('sectionUrl') || '';\n forcedOas = context$.data('voc-vam-force-oas') || '';\n section = (0, _utils.urlToSection)(rawSection);\n oasOptions = { section: section, forcedOas: forcedOas };\n configManager = new _configManager2.default(media, options, oasOptions);\n _context.next = 8;\n return configManager.dynamicOas();\n\n case 8:\n\n setTimeout(function () {\n _store.store.dispatch((0, _queue.toggleProcessing)());\n }, 700);\n\n if (context$.data('voc-vam-configgdp')) {\n context$.data('voc-vam-configgdp', null);\n }\n\n (0, _logger.showLog)('Reload event has been invoked. Config value: ', { media: configManager.configGDPMedio, options: configManager.configGDP });\n _advertising2.default.init(configManager, true, context$);\n _printAds(context$);\n\n case 13:\n case 'end':\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n return function _reload(_x) {\n return _ref.apply(this, arguments);\n };\n}();\n\n/**\n * Refresh the ads position received on 'data' parameter\n * @param {string|object} data\n */\n\n\n__webpack_require__(115);\n\n__webpack_require__(125);\n\nvar _package = __webpack_require__(75);\n\nvar _package2 = _interopRequireDefault(_package);\n\nvar _application = __webpack_require__(15);\n\nvar _application2 = _interopRequireDefault(_application);\n\nvar _advertising = __webpack_require__(136);\n\nvar _advertising2 = _interopRequireDefault(_advertising);\n\nvar _configManager = __webpack_require__(76);\n\nvar _configManager2 = _interopRequireDefault(_configManager);\n\nvar _constants = __webpack_require__(3);\n\nvar _logger = __webpack_require__(6);\n\nvar _store = __webpack_require__(162);\n\nvar _utils = __webpack_require__(55);\n\nvar _queue = __webpack_require__(169);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar _window = window,\n $ = _window.$;\n\nvar _initialized = false;\n\n_legacyInit();\n$(document).ready(function () {\n var config = _application2.default.lookup(_constants.CONFIG_NAMESPACE);\n\n config = !(0, _utils.isEmpty)(config) ? config : {\n media: window.configGDPMedio,\n options: window.configGDP\n };\n _init(config.media, config.options);\n});\n\nvar VERSION = exports.VERSION = _package2.default.version;\n\n/* Private */\n\n/**\n * Build legacy object\n * @deprecated\n */\nfunction _legacyInit() {\n window.Vocento = window.Vocento || {};\n window.Vocento.Publicidad = function () {};\n window.Vocento.Publicidad.prototype = {\n init: function init(jQuery, configGDPMedio, configGDP) {\n _init(configGDPMedio, configGDP);\n },\n printAds: function printAds(datos) {\n return _advertising2.default.printAds(datos);\n },\n getOasSitepage: function getOasSitepage() {\n return _advertising2.default.getOasSitepage.apply(_advertising2.default, arguments);\n },\n getSizesGoogle: function getSizesGoogle() {\n return _advertising2.default.getSizesGoogle.apply(_advertising2.default, arguments);\n },\n getValueUser: function getValueUser() {\n return _advertising2.default.getValueUser.apply(_advertising2.default, arguments);\n }\n };\n}\n\nfunction _init(configGDPMedio, configGDP) {\n if (_initialized) {\n return;\n }\n\n if (!configGDPMedio || !configGDP) {\n throw Error('[Ads Manager] missing configuration');\n }\n\n _initialized = true;\n // promise to wait advertising user consent\n _application2.default.when('consent:advertising').then(function (result) {\n (0, _logger.showLog)('Advertising Consent promise has been resolved with result: ', result);\n window.customcmd.push(function () {\n window.googletag.pubads().setRequestNonPersonalizedAds(result ? 0 : 1);\n });\n });\n _application2.default.on('consent:updated:advertising', function (event, result) {\n (0, _logger.showLog)('Advertising Consent has been updated with result: ', result);\n window.customcmd.push(function () {\n window.googletag.pubads().setRequestNonPersonalizedAds(result ? 0 : 1);\n });\n });\n _application2.default.on('voonto:reload', _enqueueReload);\n _application2.default.on('vam:refresh', _refresh);\n\n _store.store.subscribe(function () {\n var _store$getState = _store.store.getState(),\n processing = _store$getState.processing,\n queue = _store$getState.queue;\n\n if (!processing && queue.length) {\n var _queue$ = (0, _slicedToArray3.default)(queue[0], 2),\n reload = _queue$[1];\n\n if (reload) {\n reload();\n _store.store.dispatch((0, _queue.toggleProcessing)());\n _store.store.dispatch((0, _queue.sliceFn)());\n }\n }\n });\n\n var configManager = new _configManager2.default(configGDPMedio, configGDP);\n _advertising2.default.init(configManager, false);\n _printAds();\n}\n\n/**\n * Print Ads configured inside context or whole page\n * Config must be passed to Advertising.init before calling printAds()\n * @param {null|jQueryObject} context$\n */\nfunction _printAds(context$) {\n $('[data-voc-vam]', context$).each(function () {\n _advertising2.default.printAds($(this));\n });\n}\n\nfunction _enqueueReload(event, context$) {\n var reloadObj = {\n reload: function reload() {\n _reload(context$);\n },\n\n context$: context$\n };\n _store.store.dispatch((0, _queue.pushFn)(reloadObj));\n}function _refresh(event, data) {\n var params = typeof data === 'string' ? JSON.parse(data) : data;\n\n _advertising2.default.printAds(params);\n}\n\n/***/ }),\n/* 92 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(93);\n\n\n/***/ }),\n/* 93 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(global) {// This method of obtaining a reference to the global object needs to be\n// kept identical to the way it is obtained in runtime.js\nvar g =\n typeof global === \"object\" ? global :\n typeof window === \"object\" ? window :\n typeof self === \"object\" ? self : this;\n\n// Use `getOwnPropertyNames` because not all browsers support calling\n// `hasOwnProperty` on the global `self` object in a worker. See #183.\nvar hadRuntime = g.regeneratorRuntime &&\n Object.getOwnPropertyNames(g).indexOf(\"regeneratorRuntime\") >= 0;\n\n// Save the old regeneratorRuntime in case it needs to be restored later.\nvar oldRuntime = hadRuntime && g.regeneratorRuntime;\n\n// Force reevalutation of runtime.js.\ng.regeneratorRuntime = undefined;\n\nmodule.exports = __webpack_require__(94);\n\nif (hadRuntime) {\n // Restore the original runtime.\n g.regeneratorRuntime = oldRuntime;\n} else {\n // Remove the global property added by runtime.js.\n try {\n delete g.regeneratorRuntime;\n } catch(e) {\n g.regeneratorRuntime = undefined;\n }\n}\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(16)))\n\n/***/ }),\n/* 94 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(global) {/**\n * Copyright (c) 2014, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * https://raw.github.com/facebook/regenerator/master/LICENSE file. An\n * additional grant of patent rights can be found in the PATENTS file in\n * the same directory.\n */\n\n!(function(global) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n var inModule = typeof module === \"object\";\n var runtime = global.regeneratorRuntime;\n if (runtime) {\n if (inModule) {\n // If regeneratorRuntime is defined globally and we're in a module,\n // make the exports object identical to regeneratorRuntime.\n module.exports = runtime;\n }\n // Don't bother evaluating the rest of this file if the runtime was\n // already defined globally.\n return;\n }\n\n // Define the runtime globally (as expected by generated code) as either\n // module.exports (if we're in a module) or a new, empty object.\n runtime = global.regeneratorRuntime = inModule ? module.exports : {};\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n runtime.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunctionPrototype[toStringTagSymbol] =\n GeneratorFunction.displayName = \"GeneratorFunction\";\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n prototype[method] = function(arg) {\n return this._invoke(method, arg);\n };\n });\n }\n\n runtime.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n runtime.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n if (!(toStringTagSymbol in genFun)) {\n genFun[toStringTagSymbol] = \"GeneratorFunction\";\n }\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n runtime.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return Promise.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return Promise.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration. If the Promise is rejected, however, the\n // result for this iteration will be rejected with the same\n // reason. Note that rejections of yielded Promises are not\n // thrown back into the generator function, as is the case\n // when an awaited Promise is rejected. This difference in\n // behavior between yield and await is important, because it\n // allows the consumer to decide what to do with the yielded\n // rejection (swallow it and continue, manually .throw it back\n // into the generator, abandon iteration, whatever). With\n // await, by contrast, there is no opportunity to examine the\n // rejection reason outside the generator function, so the\n // only option is to throw it from the await expression, and\n // let the generator function handle the exception.\n result.value = unwrapped;\n resolve(result);\n }, reject);\n }\n }\n\n if (typeof global.process === \"object\" && global.process.domain) {\n invoke = global.process.domain.bind(invoke);\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new Promise(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n runtime.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n runtime.async = function(innerFn, outerFn, self, tryLocsList) {\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList)\n );\n\n return runtime.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n if (delegate.iterator.return) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n Gp[toStringTagSymbol] = \"Generator\";\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n runtime.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n runtime.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n})(\n // Among the various tricks for obtaining a reference to the global\n // object, this seems to be the most reliable technique that does not\n // use indirect eval (which violates Content Security Policy).\n typeof global === \"object\" ? global :\n typeof window === \"object\" ? window :\n typeof self === \"object\" ? self : this\n);\n\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(16)))\n\n/***/ }),\n/* 95 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\n\nvar _promise = __webpack_require__(17);\n\nvar _promise2 = _interopRequireDefault(_promise);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (fn) {\n return function () {\n var gen = fn.apply(this, arguments);\n return new _promise2.default(function (resolve, reject) {\n function step(key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n return _promise2.default.resolve(value).then(function (value) {\n step(\"next\", value);\n }, function (err) {\n step(\"throw\", err);\n });\n }\n }\n\n return step(\"next\");\n });\n };\n};\n\n/***/ }),\n/* 96 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(37);\n__webpack_require__(18);\n__webpack_require__(26);\n__webpack_require__(105);\nmodule.exports = __webpack_require__(0).Promise;\n\n/***/ }),\n/* 97 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar toInteger = __webpack_require__(38)\n , defined = __webpack_require__(28);\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function(TO_STRING){\n return function(that, pos){\n var s = String(defined(that))\n , i = toInteger(pos)\n , l = s.length\n , a, b;\n if(i < 0 || i >= l)return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n\n/***/ }),\n/* 98 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar create = __webpack_require__(43)\n , descriptor = __webpack_require__(22)\n , setToStringTag = __webpack_require__(24)\n , IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\n__webpack_require__(9)(IteratorPrototype, __webpack_require__(1)('iterator'), function(){ return this; });\n\nmodule.exports = function(Constructor, NAME, next){\n Constructor.prototype = create(IteratorPrototype, {next: descriptor(1, next)});\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n\n/***/ }),\n/* 99 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar dP = __webpack_require__(4)\n , anObject = __webpack_require__(10)\n , getKeys = __webpack_require__(20);\n\nmodule.exports = __webpack_require__(5) ? Object.defineProperties : function defineProperties(O, Properties){\n anObject(O);\n var keys = getKeys(Properties)\n , length = keys.length\n , i = 0\n , P;\n while(length > i)dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n\n/***/ }),\n/* 100 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = __webpack_require__(14)\n , toLength = __webpack_require__(30)\n , toIndex = __webpack_require__(101);\nmodule.exports = function(IS_INCLUDES){\n return function($this, el, fromIndex){\n var O = toIObject($this)\n , length = toLength(O.length)\n , index = toIndex(fromIndex, length)\n , value;\n // Array#includes uses SameValueZero equality algorithm\n if(IS_INCLUDES && el != el)while(length > index){\n value = O[index++];\n if(value != value)return true;\n // Array#toIndex ignores holes, Array#includes - not\n } else for(;length > index; index++)if(IS_INCLUDES || index in O){\n if(O[index] === el)return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\n/***/ }),\n/* 101 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar toInteger = __webpack_require__(38)\n , max = Math.max\n , min = Math.min;\nmodule.exports = function(index, length){\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n\n/***/ }),\n/* 102 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = __webpack_require__(13)\n , toObject = __webpack_require__(25)\n , IE_PROTO = __webpack_require__(45)('IE_PROTO')\n , ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function(O){\n O = toObject(O);\n if(has(O, IE_PROTO))return O[IE_PROTO];\n if(typeof O.constructor == 'function' && O instanceof O.constructor){\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n\n/***/ }),\n/* 103 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar addToUnscopables = __webpack_require__(104)\n , step = __webpack_require__(64)\n , Iterators = __webpack_require__(19)\n , toIObject = __webpack_require__(14);\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = __webpack_require__(39)(Array, 'Array', function(iterated, kind){\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function(){\n var O = this._t\n , kind = this._k\n , index = this._i++;\n if(!O || index >= O.length){\n this._t = undefined;\n return step(1);\n }\n if(kind == 'keys' )return step(0, index);\n if(kind == 'values')return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n/***/ }),\n/* 104 */\n/***/ (function(module, exports) {\n\nmodule.exports = function(){ /* empty */ };\n\n/***/ }),\n/* 105 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar LIBRARY = __webpack_require__(29)\n , global = __webpack_require__(2)\n , ctx = __webpack_require__(11)\n , classof = __webpack_require__(32)\n , $export = __webpack_require__(7)\n , isObject = __webpack_require__(8)\n , aFunction = __webpack_require__(40)\n , anInstance = __webpack_require__(48)\n , forOf = __webpack_require__(33)\n , speciesConstructor = __webpack_require__(106)\n , task = __webpack_require__(67).set\n , microtask = __webpack_require__(108)()\n , PROMISE = 'Promise'\n , TypeError = global.TypeError\n , process = global.process\n , $Promise = global[PROMISE]\n , process = global.process\n , isNode = classof(process) == 'process'\n , empty = function(){ /* empty */ }\n , Internal, GenericPromiseCapability, Wrapper;\n\nvar USE_NATIVE = !!function(){\n try {\n // correct subclassing with @@species support\n var promise = $Promise.resolve(1)\n , FakePromise = (promise.constructor = {})[__webpack_require__(1)('species')] = function(exec){ exec(empty, empty); };\n // unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return (isNode || typeof PromiseRejectionEvent == 'function') && promise.then(empty) instanceof FakePromise;\n } catch(e){ /* empty */ }\n}();\n\n// helpers\nvar sameConstructor = function(a, b){\n // with library wrapper special case\n return a === b || a === $Promise && b === Wrapper;\n};\nvar isThenable = function(it){\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\nvar newPromiseCapability = function(C){\n return sameConstructor($Promise, C)\n ? new PromiseCapability(C)\n : new GenericPromiseCapability(C);\n};\nvar PromiseCapability = GenericPromiseCapability = function(C){\n var resolve, reject;\n this.promise = new C(function($$resolve, $$reject){\n if(resolve !== undefined || reject !== undefined)throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\nvar perform = function(exec){\n try {\n exec();\n } catch(e){\n return {error: e};\n }\n};\nvar notify = function(promise, isReject){\n if(promise._n)return;\n promise._n = true;\n var chain = promise._c;\n microtask(function(){\n var value = promise._v\n , ok = promise._s == 1\n , i = 0;\n var run = function(reaction){\n var handler = ok ? reaction.ok : reaction.fail\n , resolve = reaction.resolve\n , reject = reaction.reject\n , domain = reaction.domain\n , result, then;\n try {\n if(handler){\n if(!ok){\n if(promise._h == 2)onHandleUnhandled(promise);\n promise._h = 1;\n }\n if(handler === true)result = value;\n else {\n if(domain)domain.enter();\n result = handler(value);\n if(domain)domain.exit();\n }\n if(result === reaction.promise){\n reject(TypeError('Promise-chain cycle'));\n } else if(then = isThenable(result)){\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch(e){\n reject(e);\n }\n };\n while(chain.length > i)run(chain[i++]); // variable length - can't use forEach\n promise._c = [];\n promise._n = false;\n if(isReject && !promise._h)onUnhandled(promise);\n });\n};\nvar onUnhandled = function(promise){\n task.call(global, function(){\n var value = promise._v\n , abrupt, handler, console;\n if(isUnhandled(promise)){\n abrupt = perform(function(){\n if(isNode){\n process.emit('unhandledRejection', value, promise);\n } else if(handler = global.onunhandledrejection){\n handler({promise: promise, reason: value});\n } else if((console = global.console) && console.error){\n console.error('Unhandled promise rejection', value);\n }\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n promise._h = isNode || isUnhandled(promise) ? 2 : 1;\n } promise._a = undefined;\n if(abrupt)throw abrupt.error;\n });\n};\nvar isUnhandled = function(promise){\n if(promise._h == 1)return false;\n var chain = promise._a || promise._c\n , i = 0\n , reaction;\n while(chain.length > i){\n reaction = chain[i++];\n if(reaction.fail || !isUnhandled(reaction.promise))return false;\n } return true;\n};\nvar onHandleUnhandled = function(promise){\n task.call(global, function(){\n var handler;\n if(isNode){\n process.emit('rejectionHandled', promise);\n } else if(handler = global.onrejectionhandled){\n handler({promise: promise, reason: promise._v});\n }\n });\n};\nvar $reject = function(value){\n var promise = this;\n if(promise._d)return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n promise._v = value;\n promise._s = 2;\n if(!promise._a)promise._a = promise._c.slice();\n notify(promise, true);\n};\nvar $resolve = function(value){\n var promise = this\n , then;\n if(promise._d)return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n try {\n if(promise === value)throw TypeError(\"Promise can't be resolved itself\");\n if(then = isThenable(value)){\n microtask(function(){\n var wrapper = {_w: promise, _d: false}; // wrap\n try {\n then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));\n } catch(e){\n $reject.call(wrapper, e);\n }\n });\n } else {\n promise._v = value;\n promise._s = 1;\n notify(promise, false);\n }\n } catch(e){\n $reject.call({_w: promise, _d: false}, e); // wrap\n }\n};\n\n// constructor polyfill\nif(!USE_NATIVE){\n // 25.4.3.1 Promise(executor)\n $Promise = function Promise(executor){\n anInstance(this, $Promise, PROMISE, '_h');\n aFunction(executor);\n Internal.call(this);\n try {\n executor(ctx($resolve, this, 1), ctx($reject, this, 1));\n } catch(err){\n $reject.call(this, err);\n }\n };\n Internal = function Promise(executor){\n this._c = []; // <- awaiting reactions\n this._a = undefined; // <- checked in isUnhandled reactions\n this._s = 0; // <- state\n this._d = false; // <- done\n this._v = undefined; // <- value\n this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled\n this._n = false; // <- notify\n };\n Internal.prototype = __webpack_require__(50)($Promise.prototype, {\n // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)\n then: function then(onFulfilled, onRejected){\n var reaction = newPromiseCapability(speciesConstructor(this, $Promise));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = isNode ? process.domain : undefined;\n this._c.push(reaction);\n if(this._a)this._a.push(reaction);\n if(this._s)notify(this, false);\n return reaction.promise;\n },\n // 25.4.5.1 Promise.prototype.catch(onRejected)\n 'catch': function(onRejected){\n return this.then(undefined, onRejected);\n }\n });\n PromiseCapability = function(){\n var promise = new Internal;\n this.promise = promise;\n this.resolve = ctx($resolve, promise, 1);\n this.reject = ctx($reject, promise, 1);\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, {Promise: $Promise});\n__webpack_require__(24)($Promise, PROMISE);\n__webpack_require__(68)(PROMISE);\nWrapper = __webpack_require__(0)[PROMISE];\n\n// statics\n$export($export.S + $export.F * !USE_NATIVE, PROMISE, {\n // 25.4.4.5 Promise.reject(r)\n reject: function reject(r){\n var capability = newPromiseCapability(this)\n , $$reject = capability.reject;\n $$reject(r);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {\n // 25.4.4.6 Promise.resolve(x)\n resolve: function resolve(x){\n // instanceof instead of internal slot check because we should fix it without replacement native Promise core\n if(x instanceof $Promise && sameConstructor(x.constructor, this))return x;\n var capability = newPromiseCapability(this)\n , $$resolve = capability.resolve;\n $$resolve(x);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(69)(function(iter){\n $Promise.all(iter)['catch'](empty);\n})), PROMISE, {\n // 25.4.4.1 Promise.all(iterable)\n all: function all(iterable){\n var C = this\n , capability = newPromiseCapability(C)\n , resolve = capability.resolve\n , reject = capability.reject;\n var abrupt = perform(function(){\n var values = []\n , index = 0\n , remaining = 1;\n forOf(iterable, false, function(promise){\n var $index = index++\n , alreadyCalled = false;\n values.push(undefined);\n remaining++;\n C.resolve(promise).then(function(value){\n if(alreadyCalled)return;\n alreadyCalled = true;\n values[$index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if(abrupt)reject(abrupt.error);\n return capability.promise;\n },\n // 25.4.4.4 Promise.race(iterable)\n race: function race(iterable){\n var C = this\n , capability = newPromiseCapability(C)\n , reject = capability.reject;\n var abrupt = perform(function(){\n forOf(iterable, false, function(promise){\n C.resolve(promise).then(capability.resolve, reject);\n });\n });\n if(abrupt)reject(abrupt.error);\n return capability.promise;\n }\n});\n\n/***/ }),\n/* 106 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.3.20 SpeciesConstructor(O, defaultConstructor)\nvar anObject = __webpack_require__(10)\n , aFunction = __webpack_require__(40)\n , SPECIES = __webpack_require__(1)('species');\nmodule.exports = function(O, D){\n var C = anObject(O).constructor, S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);\n};\n\n/***/ }),\n/* 107 */\n/***/ (function(module, exports) {\n\n// fast apply, http://jsperf.lnkit.com/fast-apply/5\nmodule.exports = function(fn, args, that){\n var un = that === undefined;\n switch(args.length){\n case 0: return un ? fn()\n : fn.call(that);\n case 1: return un ? fn(args[0])\n : fn.call(that, args[0]);\n case 2: return un ? fn(args[0], args[1])\n : fn.call(that, args[0], args[1]);\n case 3: return un ? fn(args[0], args[1], args[2])\n : fn.call(that, args[0], args[1], args[2]);\n case 4: return un ? fn(args[0], args[1], args[2], args[3])\n : fn.call(that, args[0], args[1], args[2], args[3]);\n } return fn.apply(that, args);\n};\n\n/***/ }),\n/* 108 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(2)\n , macrotask = __webpack_require__(67).set\n , Observer = global.MutationObserver || global.WebKitMutationObserver\n , process = global.process\n , Promise = global.Promise\n , isNode = __webpack_require__(23)(process) == 'process';\n\nmodule.exports = function(){\n var head, last, notify;\n\n var flush = function(){\n var parent, fn;\n if(isNode && (parent = process.domain))parent.exit();\n while(head){\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch(e){\n if(head)notify();\n else last = undefined;\n throw e;\n }\n } last = undefined;\n if(parent)parent.enter();\n };\n\n // Node.js\n if(isNode){\n notify = function(){\n process.nextTick(flush);\n };\n // browsers with MutationObserver\n } else if(Observer){\n var toggle = true\n , node = document.createTextNode('');\n new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new\n notify = function(){\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if(Promise && Promise.resolve){\n var promise = Promise.resolve();\n notify = function(){\n promise.then(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function(){\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n\n return function(fn){\n var task = {fn: fn, next: undefined};\n if(last)last.next = task;\n if(!head){\n head = task;\n notify();\n } last = task;\n };\n};\n\n/***/ }),\n/* 109 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(110), __esModule: true };\n\n/***/ }),\n/* 110 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(26);\n__webpack_require__(18);\nmodule.exports = __webpack_require__(111);\n\n/***/ }),\n/* 111 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar classof = __webpack_require__(32)\n , ITERATOR = __webpack_require__(1)('iterator')\n , Iterators = __webpack_require__(19);\nmodule.exports = __webpack_require__(0).isIterable = function(it){\n var O = Object(it);\n return O[ITERATOR] !== undefined\n || '@@iterator' in O\n || Iterators.hasOwnProperty(classof(O));\n};\n\n/***/ }),\n/* 112 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(113), __esModule: true };\n\n/***/ }),\n/* 113 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(26);\n__webpack_require__(18);\nmodule.exports = __webpack_require__(114);\n\n/***/ }),\n/* 114 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar anObject = __webpack_require__(10)\n , get = __webpack_require__(49);\nmodule.exports = __webpack_require__(0).getIterator = function(it){\n var iterFn = get(it);\n if(typeof iterFn != 'function')throw TypeError(it + ' is not iterable!');\n return anObject(iterFn.call(it));\n};\n\n/***/ }),\n/* 115 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar _typeof2 = __webpack_require__(36);\n\nvar _typeof3 = _interopRequireDefault(_typeof2);\n\nvar _constants = __webpack_require__(3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// NOTE: jQuery checking\nif (!('$' in window) || typeof window.$ !== 'function') {\n throw Error(_constants.DEFAULT_LOG_TEMPLATE + ' missing jQuery library on page');\n}\n\n// NOTE: Cookies checking\nif (!('Cookies' in window) || typeof window.Cookies !== 'function') {\n throw Error(_constants.DEFAULT_LOG_TEMPLATE + ' missing Cookies library on page');\n}\n\n// NOTE: RSVP checking\nif (!('RSVP' in window) || (0, _typeof3.default)(window.RSVP) !== 'object') {\n throw Error(_constants.DEFAULT_LOG_TEMPLATE + ' missing RSVP library on page');\n}\n\n// NOTE: InView jQuery Plugin checking\nif (!('event' in window.$) || !('special' in window.$.event) || !('inview' in window.$.event.special) || (0, _typeof3.default)(window.$.event.special.inview) !== 'object') {\n throw Error(_constants.DEFAULT_LOG_TEMPLATE + ' missing InView jQuery plugin on page');\n}\n\n/***/ }),\n/* 116 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(18);\n__webpack_require__(26);\nmodule.exports = __webpack_require__(51).f('iterator');\n\n/***/ }),\n/* 117 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(118);\n__webpack_require__(37);\n__webpack_require__(123);\n__webpack_require__(124);\nmodule.exports = __webpack_require__(0).Symbol;\n\n/***/ }),\n/* 118 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// ECMAScript 6 symbols shim\nvar global = __webpack_require__(2)\n , has = __webpack_require__(13)\n , DESCRIPTORS = __webpack_require__(5)\n , $export = __webpack_require__(7)\n , redefine = __webpack_require__(61)\n , META = __webpack_require__(27).KEY\n , $fails = __webpack_require__(12)\n , shared = __webpack_require__(46)\n , setToStringTag = __webpack_require__(24)\n , uid = __webpack_require__(31)\n , wks = __webpack_require__(1)\n , wksExt = __webpack_require__(51)\n , wksDefine = __webpack_require__(52)\n , keyOf = __webpack_require__(119)\n , enumKeys = __webpack_require__(120)\n , isArray = __webpack_require__(71)\n , anObject = __webpack_require__(10)\n , toIObject = __webpack_require__(14)\n , toPrimitive = __webpack_require__(42)\n , createDesc = __webpack_require__(22)\n , _create = __webpack_require__(43)\n , gOPNExt = __webpack_require__(121)\n , $GOPD = __webpack_require__(122)\n , $DP = __webpack_require__(4)\n , $keys = __webpack_require__(20)\n , gOPD = $GOPD.f\n , dP = $DP.f\n , gOPN = gOPNExt.f\n , $Symbol = global.Symbol\n , $JSON = global.JSON\n , _stringify = $JSON && $JSON.stringify\n , PROTOTYPE = 'prototype'\n , HIDDEN = wks('_hidden')\n , TO_PRIMITIVE = wks('toPrimitive')\n , isEnum = {}.propertyIsEnumerable\n , SymbolRegistry = shared('symbol-registry')\n , AllSymbols = shared('symbols')\n , OPSymbols = shared('op-symbols')\n , ObjectProto = Object[PROTOTYPE]\n , USE_NATIVE = typeof $Symbol == 'function'\n , QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function(){\n return _create(dP({}, 'a', {\n get: function(){ return dP(this, 'a', {value: 7}).a; }\n })).a != 7;\n}) ? function(it, key, D){\n var protoDesc = gOPD(ObjectProto, key);\n if(protoDesc)delete ObjectProto[key];\n dP(it, key, D);\n if(protoDesc && it !== ObjectProto)dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function(tag){\n var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n sym._k = tag;\n return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function(it){\n return typeof it == 'symbol';\n} : function(it){\n return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D){\n if(it === ObjectProto)$defineProperty(OPSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if(has(AllSymbols, key)){\n if(!D.enumerable){\n if(!has(it, HIDDEN))dP(it, HIDDEN, createDesc(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;\n D = _create(D, {enumerable: createDesc(0, false)});\n } return setSymbolDesc(it, key, D);\n } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P){\n anObject(it);\n var keys = enumKeys(P = toIObject(P))\n , i = 0\n , l = keys.length\n , key;\n while(l > i)$defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\nvar $create = function create(it, P){\n return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key){\n var E = isEnum.call(this, key = toPrimitive(key, true));\n if(this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){\n it = toIObject(it);\n key = toPrimitive(key, true);\n if(it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return;\n var D = gOPD(it, key);\n if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;\n return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it){\n var names = gOPN(toIObject(it))\n , result = []\n , i = 0\n , key;\n while(names.length > i){\n if(!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META)result.push(key);\n } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it){\n var IS_OP = it === ObjectProto\n , names = gOPN(IS_OP ? OPSymbols : toIObject(it))\n , result = []\n , i = 0\n , key;\n while(names.length > i){\n if(has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true))result.push(AllSymbols[key]);\n } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif(!USE_NATIVE){\n $Symbol = function Symbol(){\n if(this instanceof $Symbol)throw TypeError('Symbol is not a constructor!');\n var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n var $set = function(value){\n if(this === ObjectProto)$set.call(OPSymbols, value);\n if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;\n setSymbolDesc(this, tag, createDesc(1, value));\n };\n if(DESCRIPTORS && setter)setSymbolDesc(ObjectProto, tag, {configurable: true, set: $set});\n return wrap(tag);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString(){\n return this._k;\n });\n\n $GOPD.f = $getOwnPropertyDescriptor;\n $DP.f = $defineProperty;\n __webpack_require__(72).f = gOPNExt.f = $getOwnPropertyNames;\n __webpack_require__(34).f = $propertyIsEnumerable;\n __webpack_require__(53).f = $getOwnPropertySymbols;\n\n if(DESCRIPTORS && !__webpack_require__(29)){\n redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n }\n\n wksExt.f = function(name){\n return wrap(wks(name));\n }\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, {Symbol: $Symbol});\n\nfor(var symbols = (\n // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), i = 0; symbols.length > i; )wks(symbols[i++]);\n\nfor(var symbols = $keys(wks.store), i = 0; symbols.length > i; )wksDefine(symbols[i++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n // 19.4.2.1 Symbol.for(key)\n 'for': function(key){\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // 19.4.2.5 Symbol.keyFor(sym)\n keyFor: function keyFor(key){\n if(isSymbol(key))return keyOf(SymbolRegistry, key);\n throw TypeError(key + ' is not a symbol!');\n },\n useSetter: function(){ setter = true; },\n useSimple: function(){ setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n // 19.1.2.2 Object.create(O [, Properties])\n create: $create,\n // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n defineProperty: $defineProperty,\n // 19.1.2.3 Object.defineProperties(O, Properties)\n defineProperties: $defineProperties,\n // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n // 19.1.2.7 Object.getOwnPropertyNames(O)\n getOwnPropertyNames: $getOwnPropertyNames,\n // 19.1.2.8 Object.getOwnPropertySymbols(O)\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function(){\n var S = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n // WebKit converts symbol values to JSON as null\n // V8 throws on boxed symbols\n return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n stringify: function stringify(it){\n if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined\n var args = [it]\n , i = 1\n , replacer, $replacer;\n while(arguments.length > i)args.push(arguments[i++]);\n replacer = args[1];\n if(typeof replacer == 'function')$replacer = replacer;\n if($replacer || !isArray(replacer))replacer = function(key, value){\n if($replacer)value = $replacer.call(this, key, value);\n if(!isSymbol(value))return value;\n };\n args[1] = replacer;\n return _stringify.apply($JSON, args);\n }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(9)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n\n/***/ }),\n/* 119 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar getKeys = __webpack_require__(20)\n , toIObject = __webpack_require__(14);\nmodule.exports = function(object, el){\n var O = toIObject(object)\n , keys = getKeys(O)\n , length = keys.length\n , index = 0\n , key;\n while(length > index)if(O[key = keys[index++]] === el)return key;\n};\n\n/***/ }),\n/* 120 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// all enumerable object keys, includes symbols\nvar getKeys = __webpack_require__(20)\n , gOPS = __webpack_require__(53)\n , pIE = __webpack_require__(34);\nmodule.exports = function(it){\n var result = getKeys(it)\n , getSymbols = gOPS.f;\n if(getSymbols){\n var symbols = getSymbols(it)\n , isEnum = pIE.f\n , i = 0\n , key;\n while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))result.push(key);\n } return result;\n};\n\n/***/ }),\n/* 121 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = __webpack_require__(14)\n , gOPN = __webpack_require__(72).f\n , toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function(it){\n try {\n return gOPN(it);\n } catch(e){\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it){\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n\n\n/***/ }),\n/* 122 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar pIE = __webpack_require__(34)\n , createDesc = __webpack_require__(22)\n , toIObject = __webpack_require__(14)\n , toPrimitive = __webpack_require__(42)\n , has = __webpack_require__(13)\n , IE8_DOM_DEFINE = __webpack_require__(60)\n , gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = __webpack_require__(5) ? gOPD : function getOwnPropertyDescriptor(O, P){\n O = toIObject(O);\n P = toPrimitive(P, true);\n if(IE8_DOM_DEFINE)try {\n return gOPD(O, P);\n } catch(e){ /* empty */ }\n if(has(O, P))return createDesc(!pIE.f.call(O, P), O[P]);\n};\n\n/***/ }),\n/* 123 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(52)('asyncIterator');\n\n/***/ }),\n/* 124 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(52)('observable');\n\n/***/ }),\n/* 125 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar _freeze = __webpack_require__(73);\n\nvar _freeze2 = _interopRequireDefault(_freeze);\n\nvar _application = __webpack_require__(15);\n\nvar _application2 = _interopRequireDefault(_application);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar UserTypes = (0, _freeze2.default)({\n ANONYMOUS: 'anonimo'\n}),\n Genders = (0, _freeze2.default)({\n FEM: 'f',\n MAS: 'm'\n}),\n VOCUSER_READY = 'vocuser:ready',\n VOCUSER_DATA = 'vocuser:userdata';\n\n$(document).ready(function () {\n _application2.default.when(VOCUSER_READY).then(_onVocUserReady);\n $('body').on('vocento.gigya.products.onReady', function (event, gigyaux) {\n var gigyaUX;\n\n gigyaUX = gigyaux || window.gigyaUX;\n if (gigyaUX) {\n _onVocUserReady(gigyaUX);\n }\n });\n});\n\n/* Private */\n\nfunction _ord() {\n return Math.random() * 10000000000000;\n}\n\nfunction _onVocUserReady(gigyaux) {\n if (gigyaux.getUserType() === UserTypes.ANONYMOUS) {\n $('head').append('');\n } else {\n $('head').append('');\n if (typeof Voonto !== 'undefined') {\n _application2.default.when(VOCUSER_DATA).then(function (userData) {\n var gender, age;\n\n // NOTE: vocUserData promise object\n if (userData.responseGetUserInfo) {\n gender = userData.responseGetUserInfo.user && userData.responseGetUserInfo.user.gender ? userData.responseGetUserInfo.user.gender : null;\n age = userData.responseGetUserInfo.user && userData.responseGetUserInfo.user.age ? userData.responseGetUserInfo.user.age : null;\n }\n _onVocUserData(gender, age);\n });\n } else {\n $('body').on('vocento.gigya.accounts.onDataReady', function (event) {\n var gender, age;\n\n // NOTE: vocUserData promise object\n if (event.gigya_event) {\n gender = event.gigya_event.profile && event.gigya_event.profile.gender ? event.gigya_event.profile.gender : null;\n age = event.gigya_event.profile && event.gigya_event.profile.age ? event.gigya_event.profile.age : null;\n }\n _onVocUserData(gender, age);\n });\n }\n }\n}\n\nfunction _onVocUserData(gender, age) {\n switch (gender) {\n case Genders.FEM:\n $('head').append('');\n break;\n case Genders.MAS:\n $('head').append('');\n break;\n default:\n }\n\n switch (true) {\n case age !== '' && age <= 17:\n $('head').append('');\n break;\n case age >= 18 && age <= 24:\n $('head').append('');\n break;\n case age >= 25 && age <= 34:\n $('head').append('');\n break;\n case age >= 35 && age <= 44:\n $('head').append('');\n break;\n case age >= 45 && age <= 54:\n $('head').append('');\n break;\n case age !== '' && age < 54:\n $('head').append('');\n break;\n default:\n }\n}\n\n/***/ }),\n/* 126 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(127);\nmodule.exports = __webpack_require__(0).Object.freeze;\n\n/***/ }),\n/* 127 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.5 Object.freeze(O)\nvar isObject = __webpack_require__(8)\n , meta = __webpack_require__(27).onFreeze;\n\n__webpack_require__(54)('freeze', function($freeze){\n return function freeze(it){\n return $freeze && isObject(it) ? $freeze(meta(it)) : it;\n };\n});\n\n/***/ }),\n/* 128 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _preventExtensions = __webpack_require__(35);\n\nvar _preventExtensions2 = _interopRequireDefault(_preventExtensions);\n\nvar _logger = __webpack_require__(6);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar Evented = (0, _preventExtensions2.default)({\n on: function on() {\n var _window$$;\n\n (_window$$ = window.$(this)).on.apply(_window$$, arguments);\n },\n one: function one() {\n var _window$$2;\n\n (_window$$2 = window.$(this)).one.apply(_window$$2, arguments);\n },\n off: function off() {\n var _window$$3;\n\n (_window$$3 = window.$(this)).off.apply(_window$$3, arguments);\n },\n trigger: function trigger() {\n var _window$$4;\n\n _logger.showLog.apply(undefined, ['Evented::trigger'].concat(Array.prototype.slice.call(arguments)));\n (_window$$4 = window.$(this)).trigger.apply(_window$$4, arguments);\n }\n});\n\nexports.default = Evented;\n\n/***/ }),\n/* 129 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(130);\nmodule.exports = __webpack_require__(0).Object.preventExtensions;\n\n/***/ }),\n/* 130 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.15 Object.preventExtensions(O)\nvar isObject = __webpack_require__(8)\n , meta = __webpack_require__(27).onFreeze;\n\n__webpack_require__(54)('preventExtensions', function($preventExtensions){\n return function preventExtensions(it){\n return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it;\n };\n});\n\n/***/ }),\n/* 131 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _slicedToArray2 = __webpack_require__(70);\n\nvar _slicedToArray3 = _interopRequireDefault(_slicedToArray2);\n\nvar _globalized = __webpack_require__(132);\n\nvar _globalized2 = _interopRequireDefault(_globalized);\n\nvar _mixin = __webpack_require__(74);\n\nvar _constants = __webpack_require__(3);\n\nvar _logger = __webpack_require__(6);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar _defers = {},\n _hasOwnProperty = Object.prototype.hasOwnProperty;\n\nvar Deferred = {\n whenUntil: function whenUntil(promiseNS) {\n var _this = this;\n\n var time = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _constants.DEFAULT_TIMEOUT;\n\n (0, _logger.showLog)('[Deferred] whenUntil', { promiseNS: promiseNS, time: time });\n return new window.RSVP.Promise(function (resolve, reject) {\n setTimeout(reject, time);\n _this.when(promiseNS).then(resolve);\n });\n },\n when: function when(promiseNS) {\n var owner, name, global;\n\n (0, _logger.showLog)('[Deferred] when', promiseNS);\n\n if (!promiseNS) {\n throw Error(_constants.DEFAULT_LOG_TEMPLATE + ' [Deferred] At least 1 argument needed. 0 passed.');\n }\n\n var _promiseNS$split = promiseNS.split(':');\n\n var _promiseNS$split2 = (0, _slicedToArray3.default)(_promiseNS$split, 2);\n\n owner = _promiseNS$split2[0];\n name = _promiseNS$split2[1];\n\n if (!owner || !name) {\n throw Error(_constants.DEFAULT_LOG_TEMPLATE + ' [Deferred] Illegal promise namespace name. Expected \"owner:name\".');\n }\n\n if (_hasOwnProperty.call(_defers, promiseNS)) {\n return _defers[promiseNS].promise;\n }\n\n global = this.createGlobal(_constants.NAMESPACE + '.' + owner + '.' + _constants.PROMISES_PROPERTY);\n global[name] = window.RSVP.defer();\n _defers[promiseNS] = global[name];\n\n return global[name].promise;\n },\n promised: function promised(promiseNS, value) {\n var owner, name, global;\n\n (0, _logger.showLog)('[Deferred] promised', { promiseNS: promiseNS, value: value });\n\n if (!promiseNS) {\n throw Error(_constants.DEFAULT_LOG_TEMPLATE + ' [Deferred] At least 1 argument needed. 0 passed.');\n }\n\n var _promiseNS$split3 = promiseNS.split(':');\n\n var _promiseNS$split4 = (0, _slicedToArray3.default)(_promiseNS$split3, 2);\n\n owner = _promiseNS$split4[0];\n name = _promiseNS$split4[1];\n\n if (!owner || !name) {\n throw Error(_constants.DEFAULT_LOG_TEMPLATE + ' [Deferred] Illegal promise namespace name. Expected \"owner:name\".');\n }\n\n if (_hasOwnProperty.call(_defers, promiseNS)) {\n _defers[promiseNS].resolve(value);\n return this;\n }\n\n global = this.createGlobal(_constants.NAMESPACE + '.' + owner + '.' + _constants.PROMISES_PROPERTY);\n global[name] = window.RSVP.defer();\n global[name].resolve(value);\n _defers[promiseNS] = global[name];\n\n return this;\n }\n};\n\n(0, _mixin.extend)(Deferred, _globalized2.default);\n\nexports.default = Deferred;\n\n/***/ }),\n/* 132 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _constants = __webpack_require__(3);\n\nvar Globalized = {\n createGlobal: function createGlobal(namespace) {\n var nso = window;\n\n if (!namespace) {\n return undefined;\n }\n\n namespace.split('.').forEach(function (prop) {\n nso[prop] = nso[prop] || {};\n nso = nso[prop];\n });\n\n return nso;\n },\n lookup: function lookup() {\n var namespace = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _constants.NAMESPACE;\n var root = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window;\n\n return namespace.split('.').reduce(function (that, o) {\n return that && o in that ? that[o] : {};\n }, root);\n }\n};\n\nexports.default = Globalized;\n\n/***/ }),\n/* 133 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(134);\nmodule.exports = __webpack_require__(0).Object.keys;\n\n/***/ }),\n/* 134 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.14 Object.keys(O)\nvar toObject = __webpack_require__(25)\n , $keys = __webpack_require__(20);\n\n__webpack_require__(54)('keys', function(){\n return function keys(it){\n return $keys(toObject(it));\n };\n});\n\n/***/ }),\n/* 135 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _freeze = __webpack_require__(73);\n\nvar _freeze2 = _interopRequireDefault(_freeze);\n\nvar _constants = __webpack_require__(3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar _window = window,\n Cookies = _window.Cookies,\n UserType = (0, _freeze2.default)({\n ANONYMOUS: 'anonimo',\n REGISTERED: 'registrado',\n SUBSCRIBER: 'suscriptor',\n TRIAL: 'trial'\n});\n\n\nvar User = {\n getUserType: function getUserType() {\n var userType, paywall, pwUserType, vocUid, cookie;\n\n vocUid = decodeURIComponent(Cookies.get(_constants.VOCUSER_COOKIE));\n cookie = vocUid === 'undefined' ? {} : _jsonParse(vocUid);\n userType = UserType.ANONYMOUS; // <'anonimo' | 'registrado' | 'trial' | 'suscriptor'>\n paywall = Cookies.get(_constants.PAYWALL_COOKIE);\n if (paywall) {\n pwUserType = paywall.split('|').pop();\n }\n\n if (pwUserType) {\n userType = pwUserType;\n } else if (cookie.uid) {\n userType = UserType.REGISTERED;\n }\n\n return userType;\n }\n};\n\nexports.default = User;\n\n/* Private */\n\nfunction _jsonParse(vocUid) {\n var result;\n\n try {\n result = JSON.parse(vocUid);\n } catch (e1) {\n // NOTE: fix issue https://agil.vocento.com/browse/MEC-2575\n vocUid = vocUid.replace(/\\+/g, '');\n try {\n result = JSON.parse(vocUid);\n } catch (e2) {\n result = {};\n }\n }\n\n return result;\n}\n\n/***/ }),\n/* 136 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _set = __webpack_require__(137);\n\nvar _set2 = _interopRequireDefault(_set);\n\nvar _stringify = __webpack_require__(148);\n\nvar _stringify2 = _interopRequireDefault(_stringify);\n\nvar _keys = __webpack_require__(21);\n\nvar _keys2 = _interopRequireDefault(_keys);\n\nvar _typeof2 = __webpack_require__(36);\n\nvar _typeof3 = _interopRequireDefault(_typeof2);\n\nvar _classCallCheck2 = __webpack_require__(57);\n\nvar _classCallCheck3 = _interopRequireDefault(_classCallCheck2);\n\nvar _createClass2 = __webpack_require__(58);\n\nvar _createClass3 = _interopRequireDefault(_createClass2);\n\nvar _package = __webpack_require__(75);\n\nvar _providerManager = __webpack_require__(153);\n\nvar _providerManager2 = _interopRequireDefault(_providerManager);\n\nvar _application = __webpack_require__(15);\n\nvar _application2 = _interopRequireDefault(_application);\n\nvar _configManager4 = __webpack_require__(76);\n\nvar _configManager5 = _interopRequireDefault(_configManager4);\n\nvar _utils = __webpack_require__(55);\n\nvar _logger = __webpack_require__(6);\n\nvar _constants = __webpack_require__(3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar _configManager = null,\n _standardDelayed = [],\n _gptInitialized = false,\n _insertedPositions = {},\n _notDisplayedSlots = [],\n _completadasPriorizadas = false,\n _reload = false,\n _setTargetingsTimeout = 50;\n\nvar Advertising = function () {\n function Advertising() {\n (0, _classCallCheck3.default)(this, Advertising);\n }\n\n (0, _createClass3.default)(Advertising, null, [{\n key: 'init',\n\n /**\n * Function that initialize the advertising\n * @param {object} app - Evented object\n * @param {object} configGDPMedio\n * @param {object} configGDP\n * @param {context} context$\n */\n value: function init(configManager, reload, context$) {\n var kruxSegments, kruxUser;\n\n var _ref = configManager.configGDPMedio.headerBidding ? configManager.configGDPMedio.headerBidding : {},\n timeoutSetTargetings = _ref.timeoutSetTargetings;\n\n _configManager = null;\n _standardDelayed = [];\n _gptInitialized = false;\n _insertedPositions = {};\n _notDisplayedSlots = [];\n _completadasPriorizadas = false;\n _reload = reload;\n _setTargetingsTimeout = timeoutSetTargetings || 50;\n _configManager = configManager;\n _configManager.context$ = context$;\n // Detectamos si se fuerza via URL alguna configuracion\n _configManager.checkConfigFromURL();\n\n if (!_configManager.configGDPMedio.activo) {\n (0, _logger.showWarn)('Advertising:init:The advertising has been deactivated in the configuration of the medium!');\n return;\n }\n (0, _logger.showLog)('Advertising:init:deviceType: ' + _configManager.deviceType + ' , pageType: ' + _configManager.pageType + ' , (Version ' + _package.version + ')');\n\n _configManager.processConfig();\n\n if (_reload) {\n _providerManager2.default.setConfig(_configManager.configGDPMedio);\n _providerManager2.default.startNewAuction();\n }\n\n // Load HB and GPT libraries soon as posible for not penalize the ad visualization\n if (!_reload) {\n (0, _logger.showLog)('init:HeaderBidding init');\n _providerManager2.default.init(_configManager.configGDPMedio);\n (0, _utils.cargaLibreriaGPT)();\n }\n\n // Inicializacion de la libreria GPT\n window.customcmd.push(function () {\n /**\n * Setting nonPersonalizedAds by default to 1.\n * if promise is resolved this value will be updated with\n * value received in the promise.\n * */\n if (!_reload) {\n window.googletag.pubads().setRequestNonPersonalizedAds(1);\n }\n window.googletag.pubads().collapseEmptyDivs();\n kruxSegments = _application2.default.lookup('Krux.vocento.segments');\n kruxUser = _application2.default.lookup('Krux.vocento.user');\n /**\n * Ambos namespace se setean unicamente en antiguo, en lo nuevo no existe.\n */\n if (_configManager.configGDPMedio.enableKrux && ['object', 'undefined'].indexOf(typeof kruxSegments === 'undefined' ? 'undefined' : (0, _typeof3.default)(kruxSegments)) < 0 && ['object', 'undefined'].indexOf(typeof kruxUser === 'undefined' ? 'undefined' : (0, _typeof3.default)(kruxUser)) < 0) {\n window.googletag.pubads().setTargeting('ksg', window.Krux.vocento.segments);\n window.googletag.pubads().setTargeting('kuid', window.Krux.vocento.user);\n }\n _configManager.configGDPMedio.singleRequest && window.googletag.pubads().enableSingleRequest();\n _configManager.configGDPMedio.syncRendering && window.googletag.pubads().enableSyncRendering();\n window.googletag.enableServices();\n\n // Disparamos el evento de GPT inicializada\n (0, _logger.showLog)('En constructor. Disparamos evento ' + _constants.GPT_READY);\n _application2.default.trigger(_constants.GPT_READY);\n _gptInitialized = true;\n });\n\n /* NOTE: Disparamos el evento de GPT inicializado tras N segundos para liberar posibles\n recursos que esten bloqueados */\n setTimeout(function () {\n if (!_gptInitialized) {\n (0, _logger.showWarn)('Advertising:init:Trigger event ' + _constants.GPT_READY + ' after ' + _constants.GPT_TIMEOUT);\n _application2.default.trigger(_constants.GPT_READY);\n }\n }, _constants.GPT_TIMEOUT);\n\n // Tratamiento de excepciones\n _configManager.checkExceptions();\n\n // Gestion de eventos de pintado de publicidad\n window.customcmd.push(function () {\n /**\n * Solo se añaden los eventListeners de slotRenderEnded e impressionViewable\n * en la primera carga. De esta forma optimizamos el rendimiento y solo se lanzan\n * los eventos necesarios y no se encolan.\n */\n if (!_reload) {\n // Gestion de evento slotRenderEnded\n window.googletag.pubads().addEventListener('slotRenderEnded', function (ev) {\n var divId, position, container$, paramsSlot, index, found;\n\n divId = ev.slot.getSlotElementId();\n position = ev.slot.getTargeting('pos');\n container$ = $('#' + divId);\n paramsSlot = container$.data('params');\n index = -1;\n\n if (ev.isEmpty) {\n (0, _logger.showLog)('En constructor. slotRenderEnded. La posicion ' + position + ' isEmpty');\n container$.trigger(_constants.SLOT_EMPTY);\n if (_configManager.configGDPMedio.infoSlot) _infoSlotRender(paramsSlot, false);\n } else {\n (0, _logger.showLog)('En constructor. slotRenderEnded. La posicion ' + position + ' ha sido pintada en el DIV ' + divId);\n container$.trigger(_constants.SLOT_RENDERED);\n if (_configManager.configGDPMedio.infoSlot) _infoSlotRender(paramsSlot, true);\n }\n\n // Añadimos el data que nos informa de que la posicion ha sido pintada.\n container$.get(0).dataset.vocVamDisplayed = true;\n\n // Comprobacion si tiene eventos post_callback o post_event\n if (paramsSlot) {\n if (paramsSlot.post_callback) {\n (0, _logger.showLog)('En constructor. slotRenderEnded. La posicion ' + position + ' tiene el siguiente postCallback: ' + paramsSlot.post_callback);\n paramsSlot.post_callback();\n }\n\n if (paramsSlot.post_event) {\n (0, _logger.showLog)('En constructor. slotRenderEnded. La posicion ' + position + ' tiene el siguiente postEvent: ' + paramsSlot.post_event);\n _application2.default.trigger(paramsSlot.post_event);\n }\n }\n\n // Quitamos la posicion de la lista de posiciones priorizadas\n _configManager.removePrioritizedPosition();\n\n // Quitamos la posicion de la lista de posiciones estandar encoladas\n if (_configManager.thereArePrioritizedPositions() && _standardDelayed.length && !_configManager.isPrioritized(paramsSlot)) {\n found = _standardDelayed.find(function (parameters) {\n index++;\n return parameters.position === position[0];\n });\n if (found) {\n _standardDelayed.splice(index, 1);\n }\n }\n\n // Si esta era la ultima priorizada pintamos las estandar\n if (!_completadasPriorizadas && !_configManager.thereArePrioritizedPositions()) {\n _completadasPriorizadas = true;\n _displayStandarQueued();\n }\n });\n\n // Gestion de evento impressionViewable\n window.googletag.pubads().addEventListener('impressionViewable', function (ev) {\n var divId = ev.slot.getSlotElementId();\n var position = ev.slot.getTargeting('pos');\n var container$ = $('#' + divId);\n\n (0, _logger.showLog)('En constructor. impressionViewable. La posicion ' + position + ' es visible');\n container$.trigger(_constants.SLOT_VIEWABLE);\n });\n }\n });\n\n /* NOTE: Si hay posiciones priorizadas las pintamos e invocamos el pintado de las estandar\n una vez pintadas estas */\n if (_configManager.thereArePrioritizedPositions()) {\n _displayPrioritized();\n\n /* NOTE: Si han transcurrido N segundos y todavia no se han lanzado las posiciones\n estandar las forzamos */\n setTimeout(function () {\n if (_standardDelayed.length) {\n (0, _logger.showWarn)('Advertising:init:Display queued positions after ' + _constants.TIMEOUT_POSICIONES_ESTANDAR);\n _completadasPriorizadas = true;\n _displayStandarQueued();\n }\n }, _constants.TIMEOUT_POSICIONES_ESTANDAR);\n }\n }\n\n /**\n * Muestra la Advertising.\n * @param {Object} datos - Puede ser un DIV obtenido con jQuery con los atributos de\n * configuracion, o bien un objeto JSON con la configuracion a aplicar\n *\n * Descripcion de parametros que puede contener el objeto JSON:\n * position => string. Posicion publicitaria a mostrar\n * id => string. ID del elemento HTML en el que se muestra\n * serverType => string. Servidor de publicidad a usar\n * hideNoAds => boolean. Oculta el elemento HTML si el adserver no ha devuelto publi\n * outOfPage => boolean. Determina si el slot de publicidad es outOfPage o no. Por\n * defecto vale false\n * defineSlot => boolean. Indica si hay que definir o no el slot\n * refresh => boolean. Se pide la posicion de publicidad aunque ya se hubiera mostrado\n * antes. Por defecto false\n * responsive => Array. Indicamos si una publi se debe pintar solo en una(s)\n * determinada(s) resolucion(es)\n * pre_callback => function. Función javascript a la que invocar previamente\n * pre_event => string. evento de precondicion\n * post_callback => function. Función javascript a la que invocar una vez disparado\n * el slotRendered\n * post_event => string. evento a disparar una vez disparado evento de slotRendered\n * oas => string. Si se rellena es el OAS a utilizar en la posicion de publicidad\n *\n * Objeto Responsive\n * El primer par de valores indica la resolucion, y en el segundo los tamanos de la posicion de\n * publi a servir, el cual puede definirse como sigue:\n * - vacio: []\n * - single array: [ancho, alto]\n * - multi array: [ [ancho1, alto1], [ancho2, alto2], ... ]\n * - string: En cuyo caso usa la funcion ads.getSizesGoogle para obtener el array\n *\n * Ejemplo llamada:\n * ads.printAds({'position': 'robapaginas', 'id': 'roba2', 'responsive': [\n * [[0, 0], []] // Small Mobile\n * ,[[350, 200], [300,150]] // Mobile\n * ,[[750, 200], 'robapaginas'] // Tablet\n * ,[[1050, 300], [[300,150],[300,250]]] // Desktop\n * ]});\n *\n *\n *\n *\n */\n\n }, {\n key: 'printAds',\n value: function printAds(datos) {\n var params, position, idAds, prioritized, delayed;\n\n (0, _logger.showLog)('Advertising:printAds', datos);\n if (!_configManager.configGDPMedio.activo) {\n (0, _logger.showWarn)('Advertising:printAds:Ads was disabled in Media Config');\n return;\n }\n\n params = _configManager.normalizaParams(datos);\n if (params === null) {\n (0, _logger.showWarn)('Advertising:printAds:Empty params', datos);\n return;\n }\n\n position = params.position;\n idAds = _configManager.getIdDiv(params);\n if (!_configManager.isActive(params)) {\n if ($('#' + idAds).length && params.hideNoAds) {\n (0, _logger.showWarn)('Advertising:printAds:Hiding ADs DIV container if hideNoAds is anabled', params);\n $('#' + idAds).hide();\n }\n (0, _logger.showWarn)('Advertising:printAds:Position ' + position + ' is not active', params);\n return;\n }\n\n if (!$('#' + idAds).length) {\n (0, _logger.showWarn)('Advertising:printAds:DIV with ID ' + idAds + ' does not exist', params);\n return;\n }\n\n if (params.serverType === 'google') {\n /* NOTE: Si estamos en modo preview comprobamos si esta posicion hay que traerla desde el\n SW del capturador */\n if (_configManager.configGDPMedio.preview && _capturadorExistsPreview(params)) {\n (0, _logger.showLog)('Advertising:printAds:Preview mode. Getting form grabber service');\n _capturadorSetPreview(params);\n return;\n }\n\n (0, _logger.showLog)('Advertising:printAds:Check Ad-Type', params);\n prioritized = _configManager.isPrioritized(position);\n delayed = _configManager.isDelayed(position);\n\n if (prioritized && !delayed) {\n (0, _logger.showLog)('Advertising:printAds:Painting prioritized', params);\n _getAdGoogle(params, true);\n } else if (delayed) {\n (0, _logger.showLog)('Advertising:printAds:Wait for INVIEW event delayed', params);\n _displayDelayed(params);\n } else if (!_configManager.thereArePrioritizedPositions() || _completadasPriorizadas) {\n (0, _logger.showLog)('Advertising:printAds:Painting standard', params);\n if (_providerManager2.default.isActive()) {\n _providerManager2.default.pushAdUnitForTargetings(params.id);\n }\n _getAdGoogle(params, false);\n } else {\n (0, _logger.showLog)('Advertising:printAds:Painting queued standards', params);\n _standardDelayed.push(params);\n }\n } else {\n (0, _logger.showWarn)('Advertising:printAds:ServerType is different from google', params);\n }\n }\n\n /**\n * Get user type\n * NOTE: legacy code\n */\n\n }, {\n key: 'getValueUser',\n value: function getValueUser() {\n if (!_configManager) {\n throw Error('Advertising:getValueUser:Config object not initialized');\n }\n\n return _configManager.valueUserType;\n }\n\n /**\n * Get google sizes for a given position\n * NOTE: legacy code\n */\n\n }, {\n key: 'getSizesGoogle',\n value: function getSizesGoogle() {\n var _configManager2;\n\n if (!_configManager) {\n throw Error('Advertising:getSizesGoogle:Config object not initialized');\n }\n\n return (_configManager2 = _configManager).getSizesGoogle.apply(_configManager2, arguments);\n }\n\n /**\n * Get OAS value from config\n * NOTE: legacy code\n */\n\n }, {\n key: 'getOasSitepage',\n value: function getOasSitepage() {\n var _configManager3;\n\n if (!_configManager) {\n throw Error('Advertising:getOasSitepage:Config object not initialized');\n }\n\n return (_configManager3 = _configManager).getOasSitepage.apply(_configManager3, arguments);\n }\n }]);\n return Advertising;\n}();\n\nexports.default = Advertising;\n\n/* Private */\n\n/**\n * Funcion que genera el scriptText que pinta la Advertising.\n * @param object params\n */\n\nfunction _defineSlot(params) {\n var scriptText, legacyCmvkey, insertedPositionkey, hideText, targetingText, size, idAds, targetingsTags, deviceTypeTargeting, decryptedURL, pattern, isValid, decodedURLTargetings, chunksURLTargetings, topics, mappingObj, sizeMapping, defineSizeMapping;\n\n size = _configManager.getSizesGoogle(params.position);\n idAds = _configManager.getIdDiv(params);\n targetingsTags = params.tags || {};\n // Codigo para ocultar el div si no hay publi\n hideText = params.hideNoAds ? '.setCollapseEmptyDiv(true)' : '';\n targetingText = _configManager.globalTargetings;\n\n (0, _keys2.default)(targetingsTags).forEach(function (key) {\n targetingText += '.setTargeting(\"' + key + '\", \"' + targetingsTags[key] + '\")';\n });\n\n // Targeting con tipo de usuario de Gigya\n deviceTypeTargeting = _configManager.deviceType === 'mobile' ? 'm' : 'w';\n targetingText += '.setTargeting(\\'st\\', \\'' + _configManager.valueUserType + '\\').setTargeting(\\'stt\\', \\'' + deviceTypeTargeting + _configManager.valueUserType + '\\')';\n\n // Se comprueba si se fuerza algun targeting via URL con el parametro vam_cmvkey\n decryptedURL = _configManager5.default.decryptedURL();\n if (typeof window.location !== 'undefined' && (window.location.href.indexOf('vam_cmvkey=') > -1 || window.location.href.indexOf('cmvkey=') > -1) || decryptedURL !== '') {\n legacyCmvkey = window.location.href.indexOf('vam_cmvkey=') > -1 ? 'vam_cmvkey' : 'cmvkey';\n pattern = new RegExp('(\\\\?|&)' + legacyCmvkey + '=([^?&]+)');\n isValid = decryptedURL !== '' ? pattern.exec(decryptedURL) : pattern.exec(window.location.href);\n\n if (isValid) {\n try {\n decodedURLTargetings = decodeURIComponent(isValid[2]);\n chunksURLTargetings = decodedURLTargetings.split(',');\n\n chunksURLTargetings.forEach(function (chunck) {\n var pair, keyChunk, valueChunk;\n\n pair = chunck.split('=');\n keyChunk = pair[0];\n valueChunk = pair[1];\n targetingText += '.setTargeting(\"' + keyChunk + '\", \"' + valueChunk + '\")';\n });\n } catch (e) {\n (0, _logger.showWarn)('Advertising:defineSlot:Error processing ' + legacyCmvkey + ': ' + e);\n }\n }\n }\n\n // Incluimos los topics como targeting si asi corresponde\n try {\n topics = _getTopics(false);\n if (topics.length) {\n targetingText += '.setTargeting(\"topics\", \"' + topics + '\")';\n }\n } catch (e) {\n (0, _logger.showWarn)('Advertising:defineSlot:Error processing enableTopics: ' + e);\n }\n\n // Se comprueba si enableTpag esta habilitado\n try {\n if (_configManager.configGDPMedio.enableTpag) {\n targetingText += '.setTargeting(\"tpag\", \"' + _configManager.pageType + '\")';\n }\n } catch (e) {\n (0, _logger.showWarn)('Advertising:defineSlot:Error processing tpag: ' + e);\n }\n\n // Comprobaciones para medios responsives\n mappingObj = {};\n sizeMapping = '';\n defineSizeMapping = '';\n if (!params.outOfPage && params.responsive && Array.isArray(params.responsive) && params.responsive.length > 0) {\n mappingObj = _getSizeMapping(params);\n sizeMapping = mappingObj && mappingObj.definition ? mappingObj.definition : '';\n defineSizeMapping = mappingObj && mappingObj.script ? mappingObj.script : '';\n }\n\n if (!params.outOfPage) {\n if (params.defineSlot) {\n scriptText = sizeMapping + 'window.' + _getNombreSlot(params) + ' = window.googletag.defineSlot(\\'' + _configManager.getOasSitepage(params) + '\\', ' + size + ', \\'' + idAds + '\\')' + defineSizeMapping + '.setTargeting(\\'pos\\',\\'' + params.position + '\\')' + targetingText + hideText + '.addService(googletag.pubads());';\n }\n } else if (params.defineSlot) {\n scriptText = sizeMapping + 'window.' + _getNombreSlot(params) + ' = window.googletag.defineOutOfPageSlot(\\'' + _configManager.getOasSitepage(params) + '\\', \\'' + idAds + '\\')' + defineSizeMapping + '.setTargeting(\\'pos\\',\\'' + params.position + '\\')' + targetingText + hideText + '.addService(googletag.pubads());';\n }\n\n insertedPositionkey = _getClavePosicionInsertada(params);\n _insertedPositions[insertedPositionkey] = scriptText;\n (0, _logger.showLog)('Advertising:defineSlot:Ads ID', idAds);\n window.customcmd.push(_executeDefineSlot(scriptText, params));\n}\n\nfunction _executeDefineSlot(scriptText, params) {\n (0, _logger.showLog)('En defineSlot. defineSlot: ' + scriptText);\n eval(scriptText); // eslint-disable-line no-eval\n _notDisplayedSlots.push(params.position);\n}\n\n/**\n * Hace display de una posicion\n */\nfunction _display(params) {\n // Comprobamos si la posicion esta en la lista de posiciones definidas y pendientes de display\n var index, idDiv;\n\n (0, _logger.showLog)('Advertising:display:Display position ' + params.position + ' with params', params);\n index = _notDisplayedSlots.indexOf(params.position);\n if (index < 0) {\n (0, _logger.showLog)('Advertising:display:Position ' + params.position + ' has already been displayed');\n return;\n }\n\n (0, _logger.showLog)('Advertising:display:Position ' + params.position + ' is not displayed yet');\n idDiv = _configManager.getIdDiv(params);\n if (!$('#' + idDiv).length) {\n (0, _logger.showWarn)('Advertising:display:DIV with ID ' + idDiv + ' does not exist');\n return;\n }\n (0, _logger.showLog)('Advertising:display:Queued position ' + params.position + ' to display');\n window.customcmd.push(function () {\n (0, _logger.showLog)('Advertising:display:Displaying ' + params.position);\n if (_providerManager2.default.isActive()) {\n var auctionPromiseTimer = _reload ? _constants.AFTER_RELOAD_HB_TIMEOUT : 0;\n var auctionPromise = '' + _constants.PREBID_AUCTION_ENDED + _providerManager2.default.auctionsCount;\n var targetingsCount = _providerManager2.default.getTargetingsCount();\n\n _application2.default.whenUntil(auctionPromise, auctionPromiseTimer).then(function () {\n if (!_providerManager2.default.getIsEmptyResponse()) {\n _providerManager2.default.setTargetings();\n _application2.default.whenUntil('' + _constants.PREBID_SET_TARGETINGS + targetingsCount, _setTargetingsTimeout).then(function () {\n window.googletag.display(idDiv);\n }).catch(function () {\n window.googletag.display(idDiv);\n });\n } else {\n window.googletag.display(idDiv);\n }\n }).catch(function () {\n window.googletag.display(idDiv);\n });\n } else {\n window.googletag.display(idDiv);\n }\n\n /* NOTE: Si singleRequest esta habilitado un unico display sirve para todas las posiciones\n para las que hemos hecho defineSlot previamente. En caso contrario solo quitamos la\n posicion concreta de la lista.\n */\n if (_configManager.configGDPMedio.singleRequest) {\n _notDisplayedSlots = [];\n } else {\n _notDisplayedSlots.splice(index, 1);\n }\n });\n}\n\n/**\n * Funcion que obtiene las medidas en caso de que sea responsive.\n * FUTURE: move config to GDP\n * FUTURE: move logic to GoogleTag component\n * @param object responsive\n * @return string sizeMapping\n */\nfunction _getSizeMapping(params) {\n var mappingName, mappingObj, responsive, finalDefinition;\n\n mappingName = 'window.mapping_' + _getNombreSlot(params);\n mappingObj = {\n definition: mappingName + ' = window.googletag.sizeMapping()',\n script: '.defineSizeMapping(' + mappingName + ')'\n };\n responsive = params.responsive;\n (0, _logger.showLog)('Advertising:getSizeMapping:Resposive param for position ' + params.position, responsive);\n\n finalDefinition = responsive.reduce(function (definition, pair) {\n var addSize, viewportSize, responsiveSizes, singleSize;\n\n if (definition !== '' && !definition) {\n return undefined;\n }\n\n viewportSize = pair[0];\n if (pair.length !== 2 || !Array.isArray(viewportSize) || viewportSize.length !== 2) {\n (0, _logger.showWarn)('Advertising:getSizeMapping:Malformed responsive param in position ' + params.position + '. responsive: ' + responsive);\n return undefined;\n }\n\n addSize = '';\n responsiveSizes = pair[1];\n if (typeof responsiveSizes === 'string') {\n if (responsiveSizes.indexOf('fluid') !== -1) {\n responsiveSizes = _constants.POSITION_FLUID;\n } else {\n responsiveSizes = _configManager.getSizesGoogle(responsiveSizes);\n if (typeof responsiveSizes !== 'undefined' && typeof responsiveSizes === 'string') {\n responsiveSizes = JSON.parse(responsiveSizes);\n }\n }\n }\n if (!Array.isArray(responsiveSizes) && responsiveSizes !== _constants.POSITION_FLUID) {\n (0, _logger.showWarn)('Advertising:getSizeMapping:Malformed responsive param in position ' + params.position + '. responsive: ' + responsive);\n return undefined;\n }\n\n addSize = '[' + viewportSize[0] + ',' + viewportSize[1] + '],';\n if (responsiveSizes.length > 0 && Array.isArray(responsiveSizes[0])) {\n addSize += '[';\n for (var j = 0; j < responsiveSizes.length; j++) {\n singleSize = responsiveSizes[j];\n if (singleSize.length === 2) {\n addSize += (j === 0 ? '[' : ',[') + singleSize[0] + ',' + singleSize[1] + ']';\n }\n }\n addSize += ']';\n } else if (responsiveSizes.length === 2) {\n addSize += '[' + responsiveSizes[0] + ',' + responsiveSizes[1] + ']';\n } else if (responsiveSizes === _constants.POSITION_FLUID) {\n addSize += _constants.POSITION_FLUID;\n } else {\n addSize += '[]';\n }\n\n return definition + '.addSize(' + addSize + ')';\n }, '');\n\n if (!finalDefinition) return undefined;\n\n mappingObj.definition += finalDefinition + '.build();';\n\n return mappingObj;\n}\n\n/**\n * Lanza los printAds que se han encolado cuando hay priorizadas\n */\nfunction _displayStandarQueued() {\n (0, _logger.showLog)('Advertising:displayStandarQueued:Display queued positions');\n while (_standardDelayed.length) {\n Advertising.printAds(_standardDelayed.shift());\n }\n}\n\n/**\n * Funcion para pintar la publicidad priorizada\n */\nfunction _displayPrioritized() {\n (0, _logger.showLog)('Advertising:pintaPriorizadas:Painting the following positions : ' + _configManager.prioritizedPositions);\n _pintaListaPosiciones(_configManager.prioritizedPositions, true);\n}\n\n/**\n * Funcion que recorre y pinta una lista de posiciones.\n * Si singleRequest esta habilitado las posiciones priorizadas funcionan como un Roadblock y se\n * piden todas juntas (no llevaran eventos ni callbacks)\n */\nfunction _pintaListaPosiciones(listaPositions, sonPosicionesPriorizadas) {\n if (_configManager.configGDPMedio.singleRequest && sonPosicionesPriorizadas) {\n (0, _logger.showLog)('Advertising:pintaListaPosiciones:There is prioritized positions and SingleRequest is enabled -> get with Roadblock');\n\n window.customcmd.push(function () {\n var params, container$, posCuyoDivExiste;\n\n posCuyoDivExiste = null;\n listaPositions.forEach(function (position) {\n params = { position: position };\n\n if (!_configManager.existePosEnConfigGDPMedio(position)) {\n (0, _logger.showWarn)('Advertising:pintaListaPosiciones:SingleRequest position ' + position + ' does not exist configGDPMedio');\n return;\n }\n\n if (!_configManager.isActive(params)) {\n (0, _logger.showWarn)('Advertising:pintaListaPosiciones:SingleRequest position ' + position + ' is NOT active');\n return;\n }\n\n // Recuperamos los parametros del DIV en caso de que exista en la pagina\n container$ = $('[data-voc-vam-position = \\'' + position + '\\']', _configManager.context$);\n if (container$.length) {\n params = _configManager.normalizaParams(container$);\n if (posCuyoDivExiste === null) {\n posCuyoDivExiste = params;\n }\n } else {\n // NOTE: find legacy DIV\n container$ = $('#' + _configManager.getIdDiv(params));\n if (container$.length) {\n params = _configManager.normalizaParams(params);\n if (posCuyoDivExiste === null) {\n posCuyoDivExiste = params;\n }\n } else {\n (0, _logger.showWarn)('En pintaListaPosiciones. No existe el DIV de la posicion priorizada ' + position);\n }\n }\n if ('id' in params) {\n (0, _logger.showLog)('En pintaListaPosiciones. Llamando a defineSlot: ' + (0, _stringify2.default)(params));\n if (_providerManager2.default.isActive()) {\n _providerManager2.default.pushAdUnitForTargetings(params.id);\n }\n _defineSlot(params);\n }\n });\n\n if (posCuyoDivExiste === null) {\n (0, _logger.showError)('ERROR En pintaListaPosiciones. No existe el DIV de ninguna de las posiciones priorizadas en la pagina, por lo que no se hara el display');\n } else {\n params = posCuyoDivExiste;\n }\n\n // NOTE: If there is Header Bidding wait for bidders promises\n if (_providerManager2.default.isActive()) {\n (0, _logger.showLog)('pintaListaPosiciones:Waiting for HB`s promises to be solved');\n (0, _logger.showLog)('HB is active', _providerManager2.default.isActive());\n _application2.default.when(_constants.HEADER_BIDDING_READY).then(function () {\n (0, _logger.showLog)('HB promise resolved reload', _providerManager2.default.isActive());\n (0, _logger.showLog)('pintaListaPosiciones:HB promises resolved');\n (0, _logger.showLog)('Setting reload parameter', _reload);\n _providerManager2.default.setReload(_reload);\n (0, _logger.showLog)('pintaListaPosiciones:Params object', params);\n _display(params);\n });\n } else {\n (0, _logger.showLog)('En pintaListaPosiciones. Print without wait HB');\n _display(params);\n }\n });\n } else {\n !_configManager.configGDPMedio.singleRequest && (0, _logger.showLog)('Advertising:pintaListaPosiciones:SingleRequest DISABLED');\n !sonPosicionesPriorizadas && (0, _logger.showLog)('Advertising:pintaListaPosiciones:There are NOT prioritized positions');\n // window.customcmd.push(function () {\n listaPositions.forEach(function (position) {\n var params, container$, legacyParams;\n\n if (!_configManager.existePosEnConfigGDPMedio(position)) {\n (0, _logger.showWarn)('Advertising:pintaListaPosiciones:Prioritized position ' + position + ' does not exist configGDPMedio');\n return;\n }\n\n params = { position: position };\n if (!_configManager.isActive(params)) {\n (0, _logger.showWarn)('Advertising:pintaListaPosiciones:Prioritized position ' + position + ' is NOT active');\n return;\n }\n\n // Recuperamos los paramteros del DIV en caso de que exista en la pagina\n container$ = $('[data-voc-vam-position = \\'' + position + '\\']', _configManager.context$);\n if (container$.length) {\n params = _configManager.normalizaParams(container$);\n } else {\n container$ = $('#' + _configManager.getIdDiv(params));\n if (container$.length) {\n legacyParams = _configManager.normalizaParams(container$);\n }\n params = !legacyParams ? _configManager.normalizaParams(params) : legacyParams;\n }\n\n (0, _logger.showLog)('Advertising:pintaListaPosiciones:Calling printAds with', params);\n if (_providerManager2.default.isActive()) {\n _providerManager2.default.pushAdUnitForTargetings(params.id);\n }\n Advertising.printAds(params);\n });\n // });\n }\n}\n\n/**\n * Display delayed positions when it is on viewport\n * @param {object} params\n */\nfunction _displayDelayed(params) {\n var idAds = _configManager.getIdDiv(params);\n\n $('#' + idAds).on('inview', function (event, isInView) {\n (0, _logger.showLog)('Advertising:displayDelayed:INVIEW_EVENT trigger', params, event, isInView);\n if (isInView && !this.dataset.vocVamDisplayed) {\n if (_providerManager2.default.isActive()) {\n _providerManager2.default.pushAdUnitForTargetings(params.id);\n }\n (0, _logger.showLog)('Advertising:displayDelayed:Painting delayed', idAds, params);\n _getAdGoogle(params, false);\n }\n });\n}\n\n/**\n * Pintado de publicidad de GPT\n */\nfunction _getAdGoogle(params, esPosPriorizada) {\n if (!_configManager.configGDPMedio.activo) {\n (0, _logger.showWarn)('Advertising:getAdGoogle:Ads was disabled in Media Config');\n return;\n }\n\n (0, _logger.showLog)('Advertising:getAdGoogle:Queuing with', params);\n window.customcmd.push(function () {\n var idDiv, eventParams, tParams, key, hasPreevent;\n\n if (!_configManager.existePosEnConfigGDPMedio(params.position)) {\n (0, _logger.showWarn)('Advertising:getAdGoogle:Position ' + params.position + ' does not exist in configGDPMedio');\n return;\n }\n\n (0, _logger.showLog)('Advertising:getAdGoogle:googletag exec with', params);\n idDiv = _configManager.getIdDiv(params);\n eventParams = _getEventsPosition(params);\n\n tParams = params;\n tParams.pre_callback = eventParams.pre_callback;\n tParams.pre_event = eventParams.pre_event;\n\n tParams.post_callback = eventParams.post_callback;\n tParams.post_event = eventParams.post_event;\n (0, _logger.showLog)('Advertising:getAdGoogle:Set params to DIV with id = ', idDiv);\n $('#' + idDiv).data('params', tParams);\n\n key = _getClavePosicionInsertada(params);\n if (!_insertedPositions[key]) {\n hasPreevent = false;\n if (params.defineSlot) {\n (0, _logger.showLog)('Advertising:getAdGoogle:defineSlot', params);\n _defineSlot(params);\n if (!esPosPriorizada) {\n (0, _logger.showLog)('Advertising:getAdGoogle:It is not prioritized', params);\n if (eventParams.pre_callback && !eventParams.pre_event) {\n eventParams.pre_callback();\n } else if (eventParams.pre_event) {\n (0, _logger.showLog)('Advertising:getAdGoogle:Has pre-event', params);\n hasPreevent = true;\n _application2.default.one(eventParams.pre_event, params, function () {\n // NOTE: If there is Header Bidding wait for bidders promises\n if (_providerManager2.default.isActive()) {\n (0, _logger.showLog)('Advertising:getAdGoogle:Waiting for HB`s promises to be solved');\n _application2.default.when(_constants.HEADER_BIDDING_READY).then(function () {\n (0, _logger.showLog)('Advertising:getAdGoogle:HB promises resolved with preEvents', params);\n if (params.pre_callback) {\n params.pre_callback();\n }\n _providerManager2.default.setReload(_reload);\n // HBProviderManager.setTargetings();\n _display(params);\n });\n }\n });\n } else {\n (0, _logger.showLog)('Advertising:getAdGoogle:Has NO pre-event', params);\n if (_providerManager2.default.isActive()) {\n hasPreevent = true;\n (0, _logger.showLog)('Advertising:getAdGoogle:Waiting for HB`s promises to be solved');\n _application2.default.when(_constants.HEADER_BIDDING_READY).then(function () {\n (0, _logger.showLog)('Advertising:getAdGoogle:HB promises resolved without preEvents with', params);\n if (params.pre_callback) {\n params.pre_callback();\n }\n _providerManager2.default.setReload(_reload);\n // HBProviderManager.setTargetings();\n _display(params);\n });\n }\n }\n } else {\n (0, _logger.showLog)('Advertising:getAdGoogle:Is prioritized', params);\n if (_providerManager2.default.isActive()) {\n hasPreevent = true;\n (0, _logger.showLog)('Advertising:getAdGoogle:Waiting for HB`s promises to be solved');\n\n _application2.default.when(_constants.HEADER_BIDDING_READY).then(function () {\n (0, _logger.showLog)('Advertising:getAdGoogle:HB promises resolved on prioritized position with', params);\n _providerManager2.default.setReload(_reload);\n // HBProviderManager.setTargetings();\n _display(params);\n });\n }\n }\n }\n\n // No tiene evento de activacion\n if (!hasPreevent) {\n (0, _logger.showLog)('Advertising:getAdGoogle:Has no pre-event. Painting', params);\n _providerManager2.default.setReload(_reload);\n // HBProviderManager.setTargetings();\n _display(params);\n }\n } else {\n (0, _logger.showLog)('Advertising:getAdGoogle:Position ' + params.position + ' has already been previously invoked. Checking the value of the refresh parameter', params.refresh);\n if (params.refresh) _pintarPosicionRefresh(params);\n }\n });\n}\n\n/**\n * Funcion que recuperar si tiene evento pre o post callback, los parametros llegados por funcion\n * prevalecen sobre los del CONFIG\n * @param object params\n */\nfunction _getEventsPosition(params) {\n var tipoDispositivoAux, positionEvents;\n\n tipoDispositivoAux = _configManager.deviceType;\n positionEvents = _application2.default.lookup('posicion_' + tipoDispositivoAux + '[\"' + params.position + '\"]', _configManager.configGDP);\n\n if ((0, _utils.isEmpty)(positionEvents)) {\n return positionEvents;\n }\n\n positionEvents.pre_callback = params.pre_callback || params.pre_callback;\n positionEvents.pre_event = params.pre_event || params.pre_event;\n positionEvents.post_callback = params.post_callback || params.post_callback;\n positionEvents.post_event = params.post_event || params.post_event;\n\n return positionEvents;\n}\n\n/**\n * Devuelve el nombre de la variable que almacenara el slot\n */\nfunction _getNombreSlot(params) {\n var dynamicSuffix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n var dynamicId, dynamic;\n\n dynamicId = _configManager.dynamicId;\n dynamic = dynamicId && dynamicSuffix ? '_' + dynamicId : '';\n\n return 'slot_' + params.position.replace('-', '_') + dynamic;\n}\n\n/**\n * Clave unica de la posicion\n */\nfunction _getClavePosicionInsertada(params) {\n return _getNombreSlot(params) + '_' + _configManager.getIdDiv(params);\n}\n\n/**\n * Refresh de una posicion\n */\nfunction _pintarPosicionRefresh(params) {\n (0, _logger.showLog)('En pintarPosicionRefresh. Refrescamos la posicion ' + params.position);\n window.googletag.pubads().refresh([_application2.default.lookup(_getNombreSlot(params))]);\n}\n\n/**\n * INICIO: Renderizado de tablas de informacion cuando vam_info_slot=1\n * --------------------------------------------------------------------------\n */\n/**\n * Metodo de entrada de tablas de informacion\n */\nfunction _infoSlotRender(params, isSlotRendered) {\n var idDiv, container$, width, height, dimension, arrayObj, numSlots, numTopics, numOas, max;\n\n idDiv = _configManager.getIdDiv(params);\n container$ = $('#' + idDiv);\n width = $('#' + idDiv + ' div iframe').width();\n height = $('#' + idDiv + ' div iframe').height();\n\n // Obtenemos el tamano de la publi pintada y la borramos\n if (isSlotRendered) {\n container$.empty();\n } else {\n // Si DFP devuelve isEmpty cogemos la primera dimension del array, o 150x150 si es fluid\n try {\n height = 150;\n width = 150;\n dimension = _configManager.getSizesGoogle(params.position);\n if (dimension && dimension.indexOf('fluid') < 0) {\n arrayObj = JSON.parse(dimension);\n\n if (Array.isArray(arrayObj[0])) {\n width = arrayObj[0][0];\n height = arrayObj[0][1];\n } else {\n width = arrayObj[0];\n height = arrayObj[1];\n }\n }\n } catch (e) {\n (0, _logger.showError)('Advertising:infoSlotRender:Error building size.', e);\n }\n\n container$.show();\n }\n\n // Rectangulo con color azul o rojo (si es local)\n container$.addClass('gdp_infoSlot_rectangle').html('

' + params.position + ' ' + _infoSlotFormateaDimensiones(params) + '

');\n if (_isLocalPosition(params)) container$.addClass('gdp_infoSlot_localPosition');\n if (!isSlotRendered) container$.addClass('gdp_infoSlot_inactive');\n\n if (!$('#gdp_infoSlot_tableInfo').length > 0) {\n $('body').append('
');\n }\n\n // Tablas de info adicional\n _infoSlotRenderSlots(params);\n _infoSlotRenderTopics();\n _infoSlotRenderOAS(params);\n\n numSlots = $('#gdp_infoSlot_tableInfo-slots').length > 0 ? $('#gdp_infoSlot_tableInfo-slots tbody tr').length : 0;\n numTopics = $('#gdp_infoSlot_tableInfo-topics').length > 0 ? $('#gdp_infoSlot_tableInfo-topics tbody tr').length : 0;\n numOas = $('#gdp_infoSlot_tableInfo-oas').length > 0 ? $('#gdp_infoSlot_tableInfo-oas tbody tr').length : 0;\n max = Math.max(numSlots, numTopics);\n if (max > numSlots && $('#gdp_infoSlot_tableInfo-slots').length > 0) {\n for (var i = 0; i < max - numSlots; i++) {\n $('#gdp_infoSlot_tableInfo-slots tbody').append(' ');\n }\n }\n if (max > numTopics && $('#gdp_infoSlot_tableInfo-topics').length > 0) {\n for (var _i = 0; _i < max - numTopics; _i++) {\n $('#gdp_infoSlot_tableInfo-topics tbody').append(' ');\n }\n }\n if (max > numOas && $('#gdp_infoSlot_tableInfo-oas').length > 0) {\n for (var _i2 = 0; _i2 < max - numOas; _i2++) {\n $('#gdp_infoSlot_tableInfo-oas tbody').append(' ');\n }\n }\n}\n\nfunction _applyFilter(value) {\n return value.replace(new RegExp(\"'fluid'\", 'g'), '[fluid]').replace(new RegExp('\\\\],\\\\[', 'g'), '_').replace(new RegExp(',', 'g'), 'x').replace(new RegExp('\\\\[', 'g'), '').replace(new RegExp('\\\\]', 'g'), '').replace(new RegExp('_', 'g'), ',');\n}\n\nfunction _infoSlotFormateaDimensiones(params) {\n var result, dimensionsArray, mappingObj, sizeMapping, dimension, resolution, notRepeatedDimensions;\n\n result = '';\n dimensionsArray = [];\n mappingObj = {};\n sizeMapping = '';\n\n try {\n if (params.outOfPage) {\n dimensionsArray.push('oop');\n } else if (params.responsive && Array.isArray(params.responsive) && params.responsive.length > 0) {\n mappingObj = _getSizeMapping(params);\n sizeMapping = typeof mappingObj !== 'undefined' && typeof mappingObj.definition !== 'undefined' ? mappingObj.definition : '';\n sizeMapping.split('.').forEach(function (size) {\n if (size.indexOf('addSize') > -1) {\n size = size.replace(new RegExp('addSize\\\\(', 'g'), '').replace(new RegExp('\\\\)', 'g'), '');\n dimensionsArray.push(size);\n }\n });\n } else {\n dimensionsArray.push(_application2.default.lookup('posicion_' + _configManager.deviceType + '.' + params.position + '.dimensiones', _configManager.configGDPMedio));\n }\n\n if (Array.isArray(dimensionsArray)) {\n if (params.outOfPage) {\n // Posicion OutOfPage\n result += '(oop)';\n } else if (!params.responsive) {\n // Posicion no responsive\n dimension = _applyFilter(dimensionsArray[0]);\n result += '(' + dimension + ')';\n } else {\n // Posicion responsive\n notRepeatedDimensions = new _set2.default();\n dimensionsArray.forEach(function (dimen) {\n var filtered = _applyFilter(dimen);\n\n // Quitamos la resolucion\n resolution = filtered.substring(0, filtered.indexOf(','));\n dimension = filtered.substring(filtered.indexOf(',') + 1);\n notRepeatedDimensions.add(dimension);\n result += '
' + resolution + ': (' + dimension + ')';\n });\n\n // Si todas las dimensiones de responsive son la misma escribimos solo una\n if (notRepeatedDimensions.size === 1) {\n result = '(' + dimension + ')';\n }\n }\n }\n } catch (err) {\n (0, _logger.showError)('Advertising:infoSlotFormateaDimensiones:Error', err);\n }\n\n return result;\n}\n\n/**\n * Tabla de informacion de SLOTS\n */\nfunction _infoSlotRenderSlots(params) {\n if (!$('#gdp_infoSlot_tableInfo-slots').length) {\n $('#gdp_infoSlot_tableInfo').append('
');\n $('#gdp_infoSlot_tableInfo-slots thead').append('posiciones');\n }\n $('#gdp_infoSlot_tableInfo-slots tbody').append('' + params.position + '');\n}\n\n/**\n * Tabla de informacion de TOPICS\n */\nfunction _infoSlotRenderTopics() {\n var topics = _getTopics(true);\n if (topics.length > 0) {\n if (!$('#gdp_infoSlot_tableInfo-topics').length) {\n $('#gdp_infoSlot_tableInfo').append('
');\n $('#gdp_infoSlot_tableInfo-topics thead').append('topics');\n\n topics.forEach(function (topic) {\n $('#gdp_infoSlot_tableInfo-topics tbody').append('' + topic + '');\n });\n }\n }\n}\n\n/**\n * Tabla de informacion de OAS\n */\nfunction _infoSlotRenderOAS(params) {\n if (!$('#gdp_infoSlot_tableInfo-oas').length) {\n $('#gdp_infoSlot_tableInfo').append('
');\n $('#gdp_infoSlot_tableInfo-oas thead').append('oas');\n $('#gdp_infoSlot_tableInfo-oas tbody').append('' + _configManager.getOasSitepage(params) + '');\n }\n}\n\n/**\n * Devuelve un array con los topics que contiene la pagina, en caso de que los contenga y que\n * enableTopics este habilitado.\n * @return array\n */\nfunction _getTopics(forzarEnableTopics) {\n var topics = [];\n\n if ((_configManager.configGDPMedio.enableTopics || forzarEnableTopics) && window.voc_top) {\n topics = window.voc_top.split(',');\n }\n\n return topics;\n}\n\n/**\n * Funcion que devuelve true si la posicion es local, false si no lo es\n * @return boolean\n */\nfunction _isLocalPosition(params) {\n return params.position.includes('_local');\n}\n/**\n * FIN: Renderizado de tablas de informacion cuando vam_info_slot=1\n * --------------------------------------------------------------------------\n */\n\n/**\n * INICIO: Capturador (modo preview)\n * --------------------------------------------------------------------------\n */\n\n/**\n * Devuelve true si hay preview para la posicion indicada o false en caso contrario\n * @returns {boolean}\n */\nfunction _capturadorExistsPreview(params) {\n return _configManager.capturadorDataPreview && _configManager.capturadorDataPreview[params.position];\n}\n\n/**\n * funcion que cambia la publicidad por defecto, por una que se indica\n */\nfunction _capturadorSetPreview(params) {\n var previewJSON, preview, idDiv, div, creatividad;\n\n try {\n previewJSON = JSON.parse(_configManager.capturadorDataPreview[params.position]);\n preview = previewJSON[0];\n idDiv = _configManager.getIdDiv(params);\n creatividad = '';\n div = $('#' + idDiv);\n div.empty();\n div.html(creatividad);\n (0, _logger.showLog)('En capturadorSetPreview. Pintada preview para la posicion ' + params.position);\n } catch (err) {\n (0, _logger.showError)('Advertising:capturadorSetPreview:Error', err);\n }\n}\n/**\n * FIN: Capturador (modo preview)\n * --------------------------------------------------------------------------\n */\n\n/***/ }),\n/* 137 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(138), __esModule: true };\n\n/***/ }),\n/* 138 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(37);\n__webpack_require__(18);\n__webpack_require__(26);\n__webpack_require__(139);\n__webpack_require__(145);\nmodule.exports = __webpack_require__(0).Set;\n\n/***/ }),\n/* 139 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar strong = __webpack_require__(140);\n\n// 23.2 Set Objects\nmodule.exports = __webpack_require__(141)('Set', function(get){\n return function Set(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value){\n return strong.def(this, value = value === 0 ? 0 : value, value);\n }\n}, strong);\n\n/***/ }),\n/* 140 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar dP = __webpack_require__(4).f\n , create = __webpack_require__(43)\n , redefineAll = __webpack_require__(50)\n , ctx = __webpack_require__(11)\n , anInstance = __webpack_require__(48)\n , defined = __webpack_require__(28)\n , forOf = __webpack_require__(33)\n , $iterDefine = __webpack_require__(39)\n , step = __webpack_require__(64)\n , setSpecies = __webpack_require__(68)\n , DESCRIPTORS = __webpack_require__(5)\n , fastKey = __webpack_require__(27).fastKey\n , SIZE = DESCRIPTORS ? '_s' : 'size';\n\nvar getEntry = function(that, key){\n // fast case\n var index = fastKey(key), entry;\n if(index !== 'F')return that._i[index];\n // frozen object case\n for(entry = that._f; entry; entry = entry.n){\n if(entry.k == key)return entry;\n }\n};\n\nmodule.exports = {\n getConstructor: function(wrapper, NAME, IS_MAP, ADDER){\n var C = wrapper(function(that, iterable){\n anInstance(that, C, NAME, '_i');\n that._i = create(null); // index\n that._f = undefined; // first entry\n that._l = undefined; // last entry\n that[SIZE] = 0; // size\n if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear(){\n for(var that = this, data = that._i, entry = that._f; entry; entry = entry.n){\n entry.r = true;\n if(entry.p)entry.p = entry.p.n = undefined;\n delete data[entry.i];\n }\n that._f = that._l = undefined;\n that[SIZE] = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function(key){\n var that = this\n , entry = getEntry(that, key);\n if(entry){\n var next = entry.n\n , prev = entry.p;\n delete that._i[entry.i];\n entry.r = true;\n if(prev)prev.n = next;\n if(next)next.p = prev;\n if(that._f == entry)that._f = next;\n if(that._l == entry)that._l = prev;\n that[SIZE]--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /*, that = undefined */){\n anInstance(this, C, 'forEach');\n var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3)\n , entry;\n while(entry = entry ? entry.n : this._f){\n f(entry.v, entry.k, this);\n // revert to the last existing entry\n while(entry && entry.r)entry = entry.p;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key){\n return !!getEntry(this, key);\n }\n });\n if(DESCRIPTORS)dP(C.prototype, 'size', {\n get: function(){\n return defined(this[SIZE]);\n }\n });\n return C;\n },\n def: function(that, key, value){\n var entry = getEntry(that, key)\n , prev, index;\n // change existing entry\n if(entry){\n entry.v = value;\n // create new entry\n } else {\n that._l = entry = {\n i: index = fastKey(key, true), // <- index\n k: key, // <- key\n v: value, // <- value\n p: prev = that._l, // <- previous entry\n n: undefined, // <- next entry\n r: false // <- removed\n };\n if(!that._f)that._f = entry;\n if(prev)prev.n = entry;\n that[SIZE]++;\n // add to index\n if(index !== 'F')that._i[index] = entry;\n } return that;\n },\n getEntry: getEntry,\n setStrong: function(C, NAME, IS_MAP){\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n $iterDefine(C, NAME, function(iterated, kind){\n this._t = iterated; // target\n this._k = kind; // kind\n this._l = undefined; // previous\n }, function(){\n var that = this\n , kind = that._k\n , entry = that._l;\n // revert to the last existing entry\n while(entry && entry.r)entry = entry.p;\n // get next entry\n if(!that._t || !(that._l = entry = entry ? entry.n : that._t._f)){\n // or finish the iteration\n that._t = undefined;\n return step(1);\n }\n // return step by kind\n if(kind == 'keys' )return step(0, entry.k);\n if(kind == 'values')return step(0, entry.v);\n return step(0, [entry.k, entry.v]);\n }, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(NAME);\n }\n};\n\n/***/ }),\n/* 141 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar global = __webpack_require__(2)\n , $export = __webpack_require__(7)\n , meta = __webpack_require__(27)\n , fails = __webpack_require__(12)\n , hide = __webpack_require__(9)\n , redefineAll = __webpack_require__(50)\n , forOf = __webpack_require__(33)\n , anInstance = __webpack_require__(48)\n , isObject = __webpack_require__(8)\n , setToStringTag = __webpack_require__(24)\n , dP = __webpack_require__(4).f\n , each = __webpack_require__(142)(0)\n , DESCRIPTORS = __webpack_require__(5);\n\nmodule.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){\n var Base = global[NAME]\n , C = Base\n , ADDER = IS_MAP ? 'set' : 'add'\n , proto = C && C.prototype\n , O = {};\n if(!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){\n new C().entries().next();\n }))){\n // create collection constructor\n C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);\n redefineAll(C.prototype, methods);\n meta.NEED = true;\n } else {\n C = wrapper(function(target, iterable){\n anInstance(target, C, NAME, '_c');\n target._c = new Base;\n if(iterable != undefined)forOf(iterable, IS_MAP, target[ADDER], target);\n });\n each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','),function(KEY){\n var IS_ADDER = KEY == 'add' || KEY == 'set';\n if(KEY in proto && !(IS_WEAK && KEY == 'clear'))hide(C.prototype, KEY, function(a, b){\n anInstance(this, C, KEY);\n if(!IS_ADDER && IS_WEAK && !isObject(a))return KEY == 'get' ? undefined : false;\n var result = this._c[KEY](a === 0 ? 0 : a, b);\n return IS_ADDER ? this : result;\n });\n });\n if('size' in proto)dP(C.prototype, 'size', {\n get: function(){\n return this._c.size;\n }\n });\n }\n\n setToStringTag(C, NAME);\n\n O[NAME] = C;\n $export($export.G + $export.W + $export.F, O);\n\n if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);\n\n return C;\n};\n\n/***/ }),\n/* 142 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 0 -> Array#forEach\n// 1 -> Array#map\n// 2 -> Array#filter\n// 3 -> Array#some\n// 4 -> Array#every\n// 5 -> Array#find\n// 6 -> Array#findIndex\nvar ctx = __webpack_require__(11)\n , IObject = __webpack_require__(44)\n , toObject = __webpack_require__(25)\n , toLength = __webpack_require__(30)\n , asc = __webpack_require__(143);\nmodule.exports = function(TYPE, $create){\n var IS_MAP = TYPE == 1\n , IS_FILTER = TYPE == 2\n , IS_SOME = TYPE == 3\n , IS_EVERY = TYPE == 4\n , IS_FIND_INDEX = TYPE == 6\n , NO_HOLES = TYPE == 5 || IS_FIND_INDEX\n , create = $create || asc;\n return function($this, callbackfn, that){\n var O = toObject($this)\n , self = IObject(O)\n , f = ctx(callbackfn, that, 3)\n , length = toLength(self.length)\n , index = 0\n , result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined\n , val, res;\n for(;length > index; index++)if(NO_HOLES || index in self){\n val = self[index];\n res = f(val, index, O);\n if(TYPE){\n if(IS_MAP)result[index] = res; // map\n else if(res)switch(TYPE){\n case 3: return true; // some\n case 5: return val; // find\n case 6: return index; // findIndex\n case 2: result.push(val); // filter\n } else if(IS_EVERY)return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;\n };\n};\n\n/***/ }),\n/* 143 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 9.4.2.3 ArraySpeciesCreate(originalArray, length)\nvar speciesConstructor = __webpack_require__(144);\n\nmodule.exports = function(original, length){\n return new (speciesConstructor(original))(length);\n};\n\n/***/ }),\n/* 144 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(8)\n , isArray = __webpack_require__(71)\n , SPECIES = __webpack_require__(1)('species');\n\nmodule.exports = function(original){\n var C;\n if(isArray(original)){\n C = original.constructor;\n // cross-realm fallback\n if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;\n if(isObject(C)){\n C = C[SPECIES];\n if(C === null)C = undefined;\n }\n } return C === undefined ? Array : C;\n};\n\n/***/ }),\n/* 145 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// https://github.com/DavidBruant/Map-Set.prototype.toJSON\nvar $export = __webpack_require__(7);\n\n$export($export.P + $export.R, 'Set', {toJSON: __webpack_require__(146)('Set')});\n\n/***/ }),\n/* 146 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// https://github.com/DavidBruant/Map-Set.prototype.toJSON\nvar classof = __webpack_require__(32)\n , from = __webpack_require__(147);\nmodule.exports = function(NAME){\n return function toJSON(){\n if(classof(this) != NAME)throw TypeError(NAME + \"#toJSON isn't generic\");\n return from(this);\n };\n};\n\n/***/ }),\n/* 147 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar forOf = __webpack_require__(33);\n\nmodule.exports = function(iter, ITERATOR){\n var result = [];\n forOf(iter, false, result.push, result, ITERATOR);\n return result;\n};\n\n\n/***/ }),\n/* 148 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(149), __esModule: true };\n\n/***/ }),\n/* 149 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar core = __webpack_require__(0)\n , $JSON = core.JSON || (core.JSON = {stringify: JSON.stringify});\nmodule.exports = function stringify(it){ // eslint-disable-line no-unused-vars\n return $JSON.stringify.apply($JSON, arguments);\n};\n\n/***/ }),\n/* 150 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(151), __esModule: true };\n\n/***/ }),\n/* 151 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(152);\nvar $Object = __webpack_require__(0).Object;\nmodule.exports = function defineProperty(it, key, desc){\n return $Object.defineProperty(it, key, desc);\n};\n\n/***/ }),\n/* 152 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(7);\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !__webpack_require__(5), 'Object', {defineProperty: __webpack_require__(4).f});\n\n/***/ }),\n/* 153 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _promise = __webpack_require__(17);\n\nvar _promise2 = _interopRequireDefault(_promise);\n\nvar _application = __webpack_require__(15);\n\nvar _application2 = _interopRequireDefault(_application);\n\nvar _amazon = __webpack_require__(154);\n\nvar _amazon2 = _interopRequireDefault(_amazon);\n\nvar _prebid = __webpack_require__(156);\n\nvar _prebid2 = _interopRequireDefault(_prebid);\n\nvar _logger = __webpack_require__(6);\n\nvar _constants = __webpack_require__(3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar GATEWAYS = [_amazon2.default, _prebid2.default];\n\nvar _gatewaysPromises = [];\nvar _gatewaysAdded = [];\nvar _gatewaysAdUnitCodes = [];\nvar _gatewaysNewAuctionPromises = [];\nvar _auctionsCount = 0;\n\nwindow.googletag = window.googletag || {};\nwindow.googletag.cmd = window.googletag.cmd || [];\nwindow.customcmd = window.customcmd || [];\n\nexports.default = {\n get auctionsCount() {\n return _auctionsCount;\n },\n /**\n * Get promises from gateways.\n * NOTE: Init method must be call before isActive method\n * @param {string} device - device type\n * @param {object} config - configGDPMedio object\n * @param {integer} dynamicId - dynamicId(infinite-scroll)\n */\n init: function init(config) {\n _gatewaysPromises = [];\n // NOTE: load promises of active gateways\n _loadActivesGateways.call(_gatewaysPromises, config);\n\n // NOTE: when all promises are resolved, rejected or timeout reached, resolve the HB-Promise\n return _promise2.default.all(_gatewaysPromises).then(function () {\n (0, _logger.showLog)('HBManager:init:All gateways have finished', window.googletag.pubadsReady);\n _application2.default.promised(_constants.HEADER_BIDDING_READY, true);\n }).catch(function (reason) {\n (0, _logger.showError)('HBManager:init:Error in gateways', reason);\n _application2.default.promised(_constants.HEADER_BIDDING_READY, false);\n });\n },\n\n /**\n * Set targeting to DFP request\n */\n setTargetings: function setTargetings() {\n (0, _logger.showLog)('HBManager:setTargetings:Setting targetings for each added gateways');\n _gatewaysAdded.forEach(function (gateway) {\n var adUnits = void 0;\n _gatewaysAdUnitCodes.forEach(function (g) {\n if (g.gatewayName === gateway.NAME) {\n adUnits = g.adUnitCodes;\n g.adUnitCodes = [];\n }\n });\n gateway.setTargetings(adUnits);\n });\n },\n\n /**\n * Check if there are gateways actives\n */\n isActive: function isActive() {\n return _gatewaysPromises.length;\n },\n getIsEmptyResponse: function getIsEmptyResponse() {\n var response = false;\n _gatewaysAdded.forEach(function (gateway) {\n if (gateway.emptyResponse) {\n response = true;\n }\n });\n return response;\n },\n pushAdUnitForTargetings: function pushAdUnitForTargetings(adUnit) {\n _gatewaysAdUnitCodes.forEach(function (gateway) {\n gateway.adUnitCodes.push(adUnit);\n });\n },\n getTargetingsCount: function getTargetingsCount() {\n var counter = 0;\n _gatewaysAdded.forEach(function (gateway) {\n if (gateway.NAME === 'PREBID') {\n counter = gateway.getTargetingsCount();\n }\n });\n return counter;\n },\n getAuctionsCount: function getAuctionsCount() {\n var counter = 0;\n _gatewaysAdded.forEach(function (gateway) {\n if (gateway.NAME === 'PREBID') {\n counter = gateway.totalAuctions;\n }\n });\n return counter;\n },\n setReload: function setReload(isReload) {\n _gatewaysAdded.forEach(function (gateway) {\n gateway.reload = isReload;\n });\n },\n setConfig: function setConfig(config) {\n _gatewaysAdded.forEach(function (gateway) {\n if (gateway.isActive(config)) {\n gateway.config = config;\n }\n });\n },\n startNewAuction: function startNewAuction() {\n _auctionsCount++;\n _gatewaysAdded.forEach(function (gateway) {\n gateway.setTotalAuctions(_auctionsCount);\n _gatewaysNewAuctionPromises.push(gateway.startNewAuction());\n });\n _promise2.default.all(_gatewaysNewAuctionPromises).then(function () {\n (0, _logger.showLog)('Prebid:getLoadPromise:Bids fetched');\n }).catch(function (reason) {\n (0, _logger.showLog)(reason);\n });\n }\n};\n\n/* Private */\n\n/**\n * Load active gateways by config\n * @param {object} configGDPMedio\n */\n\nfunction _loadActivesGateways(config) {\n var _this = this;\n\n _gatewaysAdded = [];\n GATEWAYS.forEach(function (gateway) {\n var gatewayName = gateway.NAME;\n if (gateway.isActive(config)) {\n (0, _logger.showLog)('HBManager:loadActivesGateways:Add promise', gateway.NAME);\n gateway.setTotalAuctions(_auctionsCount);\n _gatewaysAdded.push(gateway);\n _gatewaysAdUnitCodes.push({\n gatewayName: gatewayName,\n adUnitCodes: []\n });\n _this.push(gateway.getLoadPromise(config));\n }\n });\n}\n\n/***/ }),\n/* 154 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _keys = __webpack_require__(21);\n\nvar _keys2 = _interopRequireDefault(_keys);\n\nvar _promise = __webpack_require__(17);\n\nvar _promise2 = _interopRequireDefault(_promise);\n\nvar _preventExtensions = __webpack_require__(35);\n\nvar _preventExtensions2 = _interopRequireDefault(_preventExtensions);\n\nvar _application = __webpack_require__(15);\n\nvar _application2 = _interopRequireDefault(_application);\n\nvar _logger = __webpack_require__(6);\n\nvar _constants = __webpack_require__(3);\n\n__webpack_require__(155);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// NOTE: 'apstag' is the global variable that Amazon searches for\nvar _adserverRequestResponse = false;\nvar _emptyResponse = true;\nvar _reload = false;\nvar _auctionsCount = 0;\nvar _config = null;\n\nvar REASONS = {\n ERROR_LOAD_LIBRARY: 'ERROR_LOAD_LIBRARY',\n TIMEOUT_REACHED_GLOBAL: 'TIMEOUT_REACHED_GLOBAL',\n TIMEOUT_REACHED_FETCH_BIDS: 'TIMEOUT_REACHED_FETCH_BIDS',\n ERROR_INIT_CONFIG: 'ERROR_INIT_CONFIG'\n};\nvar NAME = 'AMAZON';\n\nexports.default = (0, _preventExtensions2.default)({\n NAME: NAME,\n isActive: function isActive(_ref) {\n var hbAmazon = _ref.hbAmazon;\n\n if (hbAmazon) {\n (0, _logger.showLog)('Amazon:Is active');\n } else {\n (0, _logger.showLog)('Amazon:Is NOT active');\n }\n return hbAmazon;\n },\n\n get emptyResponse() {\n return _emptyResponse;\n },\n set emptyResponse(response) {\n _emptyResponse = response;\n },\n get reload() {\n return _reload;\n },\n set reload(isReload) {\n _reload = isReload;\n },\n set config(_ref2) {\n var hbAmazon = _ref2.hbAmazon;\n\n (0, _logger.showError)('bbb', hbAmazon);\n _config = hbAmazon;\n },\n get config() {\n return _config;\n },\n setTotalAuctions: function setTotalAuctions(auctionsCount) {\n _auctionsCount = auctionsCount;\n },\n\n /**\n * Launch amazon behaviour\n * @param {object} adUnits - adUnits config\n * @param {object} biddersConfig\n * @param {integer} timeout\n * @return {Promise}\n */\n getLoadPromise: function getLoadPromise(_ref3) {\n var hbAmazon = _ref3.hbAmazon;\n\n return new _promise2.default(function (resolve, reject) {\n var timeout = hbAmazon.timeout || _constants.DEFAULT_AMAZON_LOAD_TIMEOUT;\n\n _adserverRequestResponse = false;\n _loadLibrary().then(function () {\n (0, _logger.showLog)('Amazon:getLoadPromise:Library loaded');\n return _setConfig();\n }).then(function () {\n (0, _logger.showLog)('Amazon:getLoadPromise:apstag is loaded');\n return _fetchBid(hbAmazon);\n }).then(function () {\n (0, _logger.showLog)('Amazon:getLoadPromise:Bids fetched');\n resolve(true);\n }).catch(function (reason) {\n reject(reason);\n });\n\n setTimeout(function () {\n if (!_adserverRequestResponse) {\n (0, _logger.showWarn)('Amazon:getLoadPromise:Timeout reached', timeout);\n reject(REASONS.TIMEOUT_REACHED_GLOBAL);\n }\n }, timeout);\n }).catch(function (reason) {\n switch (reason) {\n case REASONS.TIMEOUT_REACHED_GLOBAL:\n (0, _logger.showLog)('Amazon:getLoadPromise:TIMEOUT reached global');\n break;\n case REASONS.TIMEOUT_REACHED_FETCH_BIDS:\n (0, _logger.showLog)('Amazon:getLoadPromise:TIMEOUT reached in _fetchBid');\n break;\n case REASONS.ERROR_LOAD_LIBRARY:\n (0, _logger.showError)('Amazon:getLoadPromise:Error loading library');\n break;\n case REASONS.ERROR_INIT_CONFIG:\n (0, _logger.showError)('Amazon:getLoadPromise:Error on init config');\n break;\n default:\n (0, _logger.showError)('Amazon:getLoadPromise:Error in Amazon process', reason);\n }\n return false;\n });\n },\n\n\n /**\n * Force setTargeting\n */\n setTargetings: function setTargetings() {\n (0, _logger.showLog)('SetTargetings:adserverRequestResponse', _adserverRequestResponse);\n (0, _logger.showLog)('SetTargetings:adserverRequestResponse reload', _reload);\n if (_reload) {\n _adserverRequestResponse = true;\n }\n (0, _logger.showLog)('SetTargetings:adserverRequestResponse', _adserverRequestResponse);\n if (_adserverRequestResponse) {\n window.customcmd.push(function () {\n window.apstag.setDisplayBids();\n (0, _logger.showLog)('Amazon:setTargetings:Targetings added');\n });\n } else {\n (0, _logger.showLog)('Amazon:setTargetings:Targetings NOT added because no response from bidders');\n }\n },\n startNewAuction: function startNewAuction() {\n _setConfig(this.config);\n return _fetchBid(this.config);\n }\n});\n\n/* Private */\n\n/**\n * Load Amazon library\n * @return {Promise}\n */\n\nfunction _loadLibrary() {\n (0, _logger.showLog)('Amazon:loadLibrary:Loading library');\n return _application2.default.load(_constants.AMAZON_URL).catch(function (reason) {\n (0, _logger.showError)('Amazon:loadLibrary:Error', reason);\n return _promise2.default.reject(REASONS.ERROR_LOAD_LIBRARY);\n });\n}\n\n/**\n * Set apstag init config\n */\nfunction _setConfig() {\n return new _promise2.default(function (resolve, reject) {\n // NOTE: set custom config object\n (0, _logger.showLog)('Amazon:setConfig:Show Amazon config', _constants.AMAZON_CONFIG);\n try {\n window.apstag.init(_constants.AMAZON_CONFIG, function () {\n resolve();\n });\n } catch (error) {\n (0, _logger.showError)('Amazon:setConfig:Error', error);\n reject(REASONS.ERROR_INIT_CONFIG);\n }\n });\n}\n\n/**\n * Add slots config and make Amazon call\n * @param {object} config - hbAmazon config from configGDPMedio\n */\nfunction _fetchBid(config) {\n var bidConfig;\n\n bidConfig = {\n slots: config.slots,\n timeout: config.timeout || _constants.DEFAULT_AMAZON_LOAD_TIMEOUT\n };\n\n return new _promise2.default(function (resolve, reject) {\n (0, _logger.showLog)('Amazon:fetchBid:Add Slots', bidConfig.slots);\n (0, _logger.showLog)('Amazon:fetchBid:Request Amazon');\n window.apstag.fetchBids(bidConfig, function (bids) {\n (0, _logger.showLog)('Amazon:fetchBid:Response from Amazon', bids);\n // NOTE: When there are no bids returned, the bids array will be empty\n _emptyResponse = (0, _keys2.default)(bids).length === 0;\n if ((0, _keys2.default)(bids).length === 0) {\n reject(REASONS.TIMEOUT_REACHED_FETCH_BIDS);\n return;\n }\n (0, _logger.showLog)('Amazon:fetchBid:Targetings keys', window.apstag.targetingKeys());\n _adserverRequestResponse = true;\n resolve();\n });\n });\n}\n\n/***/ }),\n/* 155 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n// NOTE: function to queue the apstag calls before the library load, the original load the library too(https://ams.amazon.com/webpublisher/docs/help/web-integration-documentation/integration-guide/javascript-guide/display.html)\n(function IIFE(apstagGlobalName, root) {\n if (root[apstagGlobalName]) return;\n function queue(c, r) {\n root[apstagGlobalName]._Q.push([c, r]);\n }\n root[apstagGlobalName] = {\n init: function init() {\n queue('i', arguments);\n },\n fetchBids: function fetchBids() {\n queue('f', arguments);\n },\n setDisplayBids: function setDisplayBids() {},\n targetingKeys: function targetingKeys() {\n return [];\n },\n _Q: []\n };\n})('apstag', window);\n\n/***/ }),\n/* 156 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _keys = __webpack_require__(21);\n\nvar _keys2 = _interopRequireDefault(_keys);\n\nvar _promise = __webpack_require__(17);\n\nvar _promise2 = _interopRequireDefault(_promise);\n\nvar _preventExtensions = __webpack_require__(35);\n\nvar _preventExtensions2 = _interopRequireDefault(_preventExtensions);\n\nvar _application = __webpack_require__(15);\n\nvar _application2 = _interopRequireDefault(_application);\n\nvar _logger = __webpack_require__(6);\n\nvar _constants = __webpack_require__(3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar REASONS = {\n EMPTY_ADUNITS: 'EMPTY_ADUNITS',\n ERROR_LOAD_LIBRARY: 'ERROR_LOAD_LIBRARY',\n TIMEOUT_REACHED_GLOBAL: 'TIMEOUT_REACHED_GLOBAL',\n TIMEOUT_REACHED_FETCH_BIDS: 'TIMEOUT_REACHED_FETCH_BIDS'\n};\n\nvar NAME = 'PREBID';\n\nvar _emptyResponse = true;\nvar _targetingsCount = 0;\nvar _auctionsCount = 0;\nvar _adserverRequestResponse = false;\nvar _reload = false;\nvar _config = null;\n\n// NOTE: This is the global variable that Prebid searches for\nwindow.pbjs = window.pbjs || {};\nwindow.pbjs.que = window.pbjs.que || [];\n\nexports.default = (0, _preventExtensions2.default)({\n NAME: NAME,\n isActive: function isActive(_ref) {\n var hbPrebid = _ref.hbPrebid;\n\n if (hbPrebid) {\n (0, _logger.showLog)('Prebid:Is active');\n } else {\n (0, _logger.showLog)('Prebid:Is NOT active');\n }\n return hbPrebid;\n },\n\n get emptyResponse() {\n return _emptyResponse;\n },\n set emptyResponse(response) {\n _emptyResponse = response;\n },\n get reload() {\n return _reload;\n },\n set reload(isReload) {\n _reload = isReload;\n },\n set config(_ref2) {\n var hbPrebid = _ref2.hbPrebid;\n\n _config = hbPrebid;\n },\n get config() {\n return _config;\n },\n setTotalAuctions: function setTotalAuctions(auctionsCount) {\n _auctionsCount = auctionsCount;\n },\n\n /**\n * Launch prebid behaviour\n * @param {object} adUnits - adUnits config\n * @param {object} biddersConfig\n * @param {integer} timeout\n * @return {Promise}\n */\n getLoadPromise: function getLoadPromise(_ref3) {\n var hbPrebid = _ref3.hbPrebid;\n\n _adserverRequestResponse = false;\n return new _promise2.default(function (resolve, reject) {\n var timeout = hbPrebid.timeout || _constants.DEFAULT_PREBID_LOAD_TIMEOUT;\n _loadLibrary().then(function () {\n (0, _logger.showLog)('Prebid:getLoadPromise:Library loaded');\n _setConfig(hbPrebid);\n window.pbjs.onEvent('auctionEnd', _auctionHasEnded);\n window.pbjs.onEvent('setTargeting', _setTargettingsEvent);\n return _fetchBid(hbPrebid);\n }).then(function () {\n (0, _logger.showLog)('Prebid:getLoadPromise:Bids fetched');\n resolve(true);\n }).catch(function (reason) {\n reject(reason);\n });\n\n setTimeout(function () {\n if (!_adserverRequestResponse) {\n (0, _logger.showWarn)('Prebid:getLoadPromise:Timeout reached', timeout);\n reject(REASONS.TIMEOUT_REACHED_GLOBAL);\n }\n }, timeout);\n }).catch(function (reason) {\n switch (reason) {\n case REASONS.TIMEOUT_REACHED_GLOBAL:\n (0, _logger.showLog)('Prebid:getLoadPromise:TIMEOUT reached global');\n break;\n case REASONS.TIMEOUT_REACHED_FETCH_BIDS:\n (0, _logger.showLog)('Prebid:getLoadPromise:TIMEOUT reached in _fetchBid');\n break;\n case REASONS.ERROR_LOAD_LIBRARY:\n (0, _logger.showError)('Prebid:getLoadPromise:Error loading library', reason);\n break;\n case REASONS.EMPTY_ADUNITS:\n (0, _logger.showError)('Prebid:getLoadPromise:There are not adUnits');\n break;\n default:\n (0, _logger.showError)('Prebid:getLoadPromise:Error in Prebid process', reason);\n }\n return false;\n });\n },\n\n\n /**\n * @param {Array} addUnits Array with adunits id's eg: ['megabanner-id', 'robapaginas-id']\n */\n setTargetings: function setTargetings(addUnits) {\n if (_adserverRequestResponse) {\n window.customcmd.push(function () {\n window.pbjs.que.push(function () {\n window.pbjs.setTargetingForGPTAsync(addUnits);\n (0, _logger.showLog)('Prebid:setTargetings:Targetings added');\n });\n });\n } else {\n (0, _logger.showLog)('Prebid:setTargetings:Targetings NOT added because no response from bidders');\n }\n },\n getTargetingsCount: function getTargetingsCount() {\n return _targetingsCount;\n },\n startNewAuction: function startNewAuction() {\n window.pbjs.adUnits = [];\n _setConfig(this.config);\n return _fetchBid(this.config);\n }\n});\n\n/* Private */\n\n/**\n * Load prebid library\n * @return {Promise}\n */\n\nfunction _loadLibrary() {\n (0, _logger.showLog)('Prebid:loadLibrary:Loading library');\n return _application2.default.load(_constants.PREBID_URL).catch(function (reason) {\n (0, _logger.showError)('Prebid:loadLibrary', reason);\n return _promise2.default.reject(REASONS.ERROR_LOAD_LIBRARY);\n });\n}\n\nfunction _setConfig(hbPrebid) {\n var biddersConfig, pbjsConfig;\n\n biddersConfig = hbPrebid.biddersConfig;\n // NOTE: set custom config object\n pbjsConfig = {\n debug: _constants.SHOW_LOGS,\n enableSendAllBids: hbPrebid.enableSendAllBids || true,\n priceGranularity: 'dense',\n consentManagement: {\n cmpApi: 'iab',\n timeout: 8000,\n allowAuctionWithoutConsent: true\n }\n };\n\n (0, _logger.showLog)('Prebid:setConfig:biddersConfig', biddersConfig);\n window.pbjs.bidderSettings = _fetchBiddersSettings(biddersConfig);\n window.pbjs.setConfig(pbjsConfig);\n (0, _logger.showLog)('Prebid:setConfig:Show Prebid config', window.pbjs.getConfig());\n}\n\n/**\n * Add adUnits config and make prebid call\n * @param {object} config - hbPrebid config from configGDPMedio\n */\nfunction _fetchBid(hbPrebid) {\n var adUnits, timeout;\n\n adUnits = hbPrebid.adUnits;\n timeout = hbPrebid.timeout || _constants.DEFAULT_PREBID_LOAD_TIMEOUT;\n\n return new _promise2.default(function (resolve, reject) {\n if (!adUnits.length) {\n (0, _logger.showLog)('Prebid:fetchBid:There are not adUnits');\n reject(REASONS.EMPTY_ADUNITS);\n return;\n }\n window.pbjs.que.push(function () {\n (0, _logger.showLog)('Prebid:fetchBid:Add adUnits', adUnits);\n window.pbjs.addAdUnits(adUnits);\n (0, _logger.showLog)('Prebid:fetchBid:Request Prebid');\n window.pbjs.requestBids({\n timeout: timeout,\n bidsBackHandler: function bidsBackHandler(biddersResponse) {\n (0, _logger.showLog)('Prebid:fetchBid:Response from Prebid', biddersResponse);\n _emptyResponse = (0, _keys2.default)(biddersResponse).length === 0;\n if ((0, _keys2.default)(biddersResponse).length === 0) {\n reject(REASONS.TIMEOUT_REACHED_FETCH_BIDS);\n return;\n }\n (0, _logger.showLog)('Prebid:fetchBid:Targetings', window.pbjs.getAdserverTargeting());\n _adserverRequestResponse = true;\n resolve();\n }\n });\n });\n });\n}\n\n/**\n * Build bidders settings from config\n * @param {object} biddersConfig - biddersConfig from configGDPMedio.hbPrebid\n * @return {object} bidderSettings\n */\nfunction _fetchBiddersSettings(biddersConfig) {\n var bidderSettings = {};\n\n (0, _keys2.default)(biddersConfig).forEach(function (bidderName) {\n bidderSettings[bidderName] = {\n bidCpmAdjustment: function bidCpmAdjustment(bidCpm, bid) {\n var percent;\n\n percent = 1 - ('percent' in biddersConfig[bidderName] ? biddersConfig[bidderName].percent / 100 : 0);\n // NOTE: adjust the bid in real time before the auction takes place\n (0, _logger.showLog)('Prebid:fetchBiddersSettings:bidCpmAdjustment Bidder is:', bid.bidderCode, 'with percent:', percent);\n // NOTE: return bidCpm * .85; Ex.: rest 15% to the gross price\n return bidCpm * percent;\n }\n };\n });\n\n return bidderSettings;\n}\n\nfunction _auctionHasEnded() {\n var auctionId = arguments[0].auctionId;\n\n _application2.default.promised('' + _constants.PREBID_AUCTION_ENDED + _auctionsCount, auctionId);\n}\n\nfunction _setTargettingsEvent() {\n _targetingsCount++;\n _application2.default.promised('' + _constants.PREBID_SET_TARGETINGS + _targetingsCount, true);\n}\n\n/***/ }),\n/* 157 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _preventExtensions = __webpack_require__(35);\n\nvar _preventExtensions2 = _interopRequireDefault(_preventExtensions);\n\nvar _constants = __webpack_require__(3);\n\nvar _logger = __webpack_require__(6);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar infiniteScrollPositions = ['megabanner-id', 'robapaginas-id', 'megabanner_local-id', 'robapaginas_local-id'];\n\nexports.default = (0, _preventExtensions2.default)({\n processConfig: function processConfig(configManager) {\n (0, _logger.showLog)('HBConfigManager:processConfig:Process HB config');\n _processPrebidConfig(configManager);\n _processAmazonConfig(configManager);\n }\n});\n\n/**\n * Process Prebid HB config to set dynamicId\n * @param {object} configManager\n */\n\nfunction _processPrebidConfig(configManager) {\n var property, adUnits, newConfig, biddersDisabled;\n var headerBidding = configManager.configGDPMedio.headerBidding;\n\n\n (0, _logger.showLog)('HBConfigManager:processPrebidConfig:Process Prebid config');\n\n if (!headerBidding) {\n (0, _logger.showLog)('HBConfigManager:processPrebidConfig:There are not Prebid configuration');\n configManager.configGDPMedio.hbPrebid = null;\n return;\n }\n\n property = 'adUnits_' + configManager.deviceType;\n if (!(property in headerBidding) || !headerBidding[property].length) {\n (0, _logger.showLog)('HBConfigManager:processPrebidConfig:There are not bidders to device type', configManager.deviceType);\n configManager.configGDPMedio.hbPrebid = null;\n return;\n }\n\n // NOTE: 'disabled' key has the disabled bidders separated by comma\n biddersDisabled = [];\n if ('disabled' in headerBidding.biddersConfig) {\n biddersDisabled = headerBidding.biddersConfig.disabled.map(function (current) {\n return current.trim();\n });\n }\n\n adUnits = [];\n headerBidding[property].forEach(function (current) {\n var position,\n newBids = [];\n\n if (configManager.dynamicId > 0 && infiniteScrollPositions.indexOf(current.code, 0) === -1) {\n return;\n }\n\n position = current.code.replace(new RegExp('(' + _constants.OLD_PREFIX + '|' + _constants.NEW_SUFFIX + '|-([0-9]*))', 'g'), '');\n if (!configManager.existePosEnConfigGDPMedio(position)) {\n (0, _logger.showWarn)('HBConfigManager:processPrebidConfig:Position ' + position + ' does not exists in configGDPMedio');\n return;\n }\n if (!configManager.isActive({ position: position })) {\n (0, _logger.showWarn)('HBConfigManager:processPrebidConfig:Position ' + position + ' is not active');\n return;\n }\n\n current.code = configManager.dynamicId ? '' + position + _constants.NEW_SUFFIX + '-' + configManager.dynamicId : '' + position + _constants.NEW_SUFFIX;\n\n if (biddersDisabled.length) {\n current.bids.forEach(function (bid) {\n if (biddersDisabled.indexOf(bid.bidder) < 0) {\n newBids.push(bid);\n }\n });\n } else {\n newBids = current.bids;\n }\n\n if (!newBids.length) {\n (0, _logger.showWarn)('HBConfigManager:processPrebidConfig:Remove adUnit ' + current.code + ' because all bidders are disabled');\n return;\n }\n\n current.bids = newBids;\n adUnits.push(current);\n });\n\n newConfig = {\n adUnits: adUnits,\n biddersConfig: headerBidding.biddersConfig,\n enableSendAllBids: headerBidding.enableSendAllBids,\n timeout: headerBidding.timeout || _constants.DEFAULT_PREBID_LOAD_TIMEOUT\n };\n\n delete configManager.configGDPMedio.headerBidding;\n configManager.configGDPMedio.hbPrebid = newConfig;\n}\n\n/**\n * Process Amazon HB config to set dynamicId and slotName\n * @param {object} configManager\n */\nfunction _processAmazonConfig(configManager) {\n var property, slots, newConfig;\n var hbAmazon = configManager.configGDPMedio.hbAmazon;\n\n\n if (!hbAmazon) {\n (0, _logger.showLog)('HBConfigManager:processAmazonConfig:There are not Amazon configuration');\n configManager.configGDPMedio.hbAmazon = null;\n return;\n }\n\n property = 'slots_' + configManager.deviceType;\n if (!(property in hbAmazon) || !hbAmazon[property].length) {\n (0, _logger.showLog)('HBConfigManager:processAmazonConfig:There are not slots to device type', configManager.deviceType);\n configManager.configGDPMedio.hbAmazon = null;\n return;\n }\n\n slots = [];\n window.slots = slots;\n window.positions = [];\n hbAmazon[property].forEach(function (current) {\n var position;\n\n // position = current.slotID.replace(new RegExp(`(${OLD_PREFIX}|${NEW_SUFFIX})`, 'g'), '');\n position = current.slotID.replace(new RegExp('(' + _constants.OLD_PREFIX + '|' + _constants.NEW_SUFFIX + '|-([0-9]*))', 'g'), '');\n window.positions.push(position);\n current.slotID = current.slotID.replace(new RegExp('(-[0-9]*)$', 'g'), '');\n (0, _logger.showWarn)('HBConfigManager:processAmazonConfig:Position ' + current.slotID + ' current slot id and position: ' + position);\n if (!configManager.existePosEnConfigGDPMedio(position)) {\n (0, _logger.showWarn)('HBConfigManager:processAmazonConfig:Position ' + position + ' does not exists in configGDPMedio');\n return;\n }\n if (!configManager.isActive({ position: position })) {\n (0, _logger.showWarn)('HBConfigManager:processAmazonConfig:Position ' + position + ' is not active');\n return;\n }\n current.slotName = _getAmazonSlotName(configManager, position);\n current.slotID += configManager.dynamicId ? '-' + configManager.dynamicId : '';\n slots.push(current);\n });\n\n newConfig = {\n slots: slots,\n timeout: hbAmazon.timeout || _constants.DEFAULT_AMAZON_LOAD_TIMEOUT\n };\n\n configManager.configGDPMedio.hbAmazon = newConfig;\n}\n\nfunction _getAmazonSlotName(configManager, position) {\n var params;\n\n var container$ = $('[data-voc-vam-position = \\'' + position + '\\']', configManager.context$);\n if (container$.length) {\n params = configManager.normalizaParams(container$);\n } else {\n params = configManager.normalizaParams({ position: position });\n }\n\n return configManager.getOasSitepage(params);\n}\n\n/***/ }),\n/* 158 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(159), __esModule: true };\n\n/***/ }),\n/* 159 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(18);\n__webpack_require__(160);\nmodule.exports = __webpack_require__(0).Array.from;\n\n/***/ }),\n/* 160 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar ctx = __webpack_require__(11)\n , $export = __webpack_require__(7)\n , toObject = __webpack_require__(25)\n , call = __webpack_require__(65)\n , isArrayIter = __webpack_require__(66)\n , toLength = __webpack_require__(30)\n , createProperty = __webpack_require__(161)\n , getIterFn = __webpack_require__(49);\n\n$export($export.S + $export.F * !__webpack_require__(69)(function(iter){ Array.from(iter); }), 'Array', {\n // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)\n from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){\n var O = toObject(arrayLike)\n , C = typeof this == 'function' ? this : Array\n , aLen = arguments.length\n , mapfn = aLen > 1 ? arguments[1] : undefined\n , mapping = mapfn !== undefined\n , index = 0\n , iterFn = getIterFn(O)\n , length, result, step, iterator;\n if(mapping)mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);\n // if object isn't iterable or it's array with default iterator - use simple case\n if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){\n for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){\n createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);\n }\n } else {\n length = toLength(O.length);\n for(result = new C(length); length > index; index++){\n createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);\n }\n }\n result.length = index;\n return result;\n }\n});\n\n\n/***/ }),\n/* 161 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $defineProperty = __webpack_require__(4)\n , createDesc = __webpack_require__(22);\n\nmodule.exports = function(object, index, value){\n if(index in object)$defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n\n/***/ }),\n/* 162 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.store = undefined;\n\nvar _toConsumableArray2 = __webpack_require__(82);\n\nvar _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2);\n\nvar _extends2 = __webpack_require__(163);\n\nvar _extends3 = _interopRequireDefault(_extends2);\n\nvar _redux = __webpack_require__(168);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar defaultState = {\n queue: [],\n processing: false\n};\n\nfunction queueManager() {\n var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : defaultState;\n var action = arguments[1];\n\n switch (action.type) {\n case 'PUSH_FN':\n return (0, _extends3.default)({}, state, {\n queue: [].concat((0, _toConsumableArray3.default)(state.queue), [[action.context$, action.reload]])\n });\n case 'SLICE_FN':\n return (0, _extends3.default)({}, state, {\n queue: state.queue.length ? state.queue.slice(1) : state.queue\n });\n case 'TOGGLE_PROCESSING':\n return (0, _extends3.default)({}, state, {\n processing: !state.processing\n });\n case 'DRAIN':\n return (0, _extends3.default)({}, state, {\n queue: []\n });\n default:\n return state;\n }\n}\n\nvar store = exports.store = (0, _redux.createStore)(queueManager);\n\n/***/ }),\n/* 163 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nexports.__esModule = true;\n\nvar _assign = __webpack_require__(164);\n\nvar _assign2 = _interopRequireDefault(_assign);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _assign2.default || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/***/ }),\n/* 164 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = { \"default\": __webpack_require__(165), __esModule: true };\n\n/***/ }),\n/* 165 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(166);\nmodule.exports = __webpack_require__(0).Object.assign;\n\n/***/ }),\n/* 166 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.3.1 Object.assign(target, source)\nvar $export = __webpack_require__(7);\n\n$export($export.S + $export.F, 'Object', {assign: __webpack_require__(167)});\n\n/***/ }),\n/* 167 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 19.1.2.1 Object.assign(target, source, ...)\nvar getKeys = __webpack_require__(20)\n , gOPS = __webpack_require__(53)\n , pIE = __webpack_require__(34)\n , toObject = __webpack_require__(25)\n , IObject = __webpack_require__(44)\n , $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || __webpack_require__(12)(function(){\n var A = {}\n , B = {}\n , S = Symbol()\n , K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function(k){ B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source){ // eslint-disable-line no-unused-vars\n var T = toObject(target)\n , aLen = arguments.length\n , index = 1\n , getSymbols = gOPS.f\n , isEnum = pIE.f;\n while(aLen > index){\n var S = IObject(arguments[index++])\n , keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)\n , length = keys.length\n , j = 0\n , key;\n while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];\n } return T;\n} : $assign;\n\n/***/ }),\n/* 168 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.createStore = createStore;\nfunction createStore(reducer, initialState) {\n var currentReducer = reducer;\n var currentState = initialState;\n var listener = function listener() {};\n\n return {\n getState: function getState() {\n return currentState;\n },\n dispatch: function dispatch(action) {\n currentState = currentReducer(currentState, action);\n listener();\n return action;\n },\n subscribe: function subscribe(newListener) {\n listener = newListener;\n }\n };\n}\n\n/***/ }),\n/* 169 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nvar pushFn = exports.pushFn = function pushFn(_ref) {\n var reload = _ref.reload,\n context$ = _ref.context$;\n return {\n type: 'PUSH_FN',\n reload: reload,\n context$: context$\n };\n};\n\nvar sliceFn = exports.sliceFn = function sliceFn() {\n return {\n type: 'SLICE_FN'\n };\n};\n\nvar toggleProcessing = exports.toggleProcessing = function toggleProcessing() {\n return {\n type: 'TOGGLE_PROCESSING'\n };\n};\n\nvar drain = exports.drain = function drain() {\n return {\n type: 'DRAIN'\n };\n};\n\n/***/ }),\n/* 170 */,\n/* 171 */,\n/* 172 */,\n/* 173 */,\n/* 174 */,\n/* 175 */,\n/* 176 */,\n/* 177 */,\n/* 178 */,\n/* 179 */,\n/* 180 */,\n/* 181 */,\n/* 182 */,\n/* 183 */,\n/* 184 */,\n/* 185 */,\n/* 186 */,\n/* 187 */,\n/* 188 */,\n/* 189 */,\n/* 190 */,\n/* 191 */,\n/* 192 */,\n/* 193 */,\n/* 194 */,\n/* 195 */,\n/* 196 */,\n/* 197 */,\n/* 198 */,\n/* 199 */,\n/* 200 */,\n/* 201 */,\n/* 202 */,\n/* 203 */,\n/* 204 */,\n/* 205 */,\n/* 206 */,\n/* 207 */,\n/* 208 */,\n/* 209 */,\n/* 210 */,\n/* 211 */,\n/* 212 */,\n/* 213 */,\n/* 214 */,\n/* 215 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(91);\n\n\n/***/ })\n/******/ ]);\n});\n\n\n// WEBPACK FOOTER //\n// vam.js"," \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonpAdsManager\"];\n \twindow[\"webpackJsonpAdsManager\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t3: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData === 0) {\n \t\t\treturn new Promise(function(resolve) { resolve(); });\n \t\t}\n\n \t\t// a Promise means \"currently loading\".\n \t\tif(installedChunkData) {\n \t\t\treturn installedChunkData[2];\n \t\t}\n\n \t\t// setup Promise in chunk cache\n \t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t});\n \t\tinstalledChunkData[2] = promise;\n\n \t\t// start chunk loading\n \t\tvar head = document.getElementsByTagName('head')[0];\n \t\tvar script = document.createElement('script');\n \t\tscript.type = \"text/javascript\";\n \t\tscript.charset = 'utf-8';\n \t\tscript.async = true;\n \t\tscript.timeout = 120000;\n\n \t\tif (__webpack_require__.nc) {\n \t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t}\n \t\tscript.src = __webpack_require__.p + \"\" + ({\"0\":\"rijndael-js\"}[chunkId]||chunkId) + \".js\";\n \t\tvar timeout = setTimeout(onScriptComplete, 120000);\n \t\tscript.onerror = script.onload = onScriptComplete;\n \t\tfunction onScriptComplete() {\n \t\t\t// avoid mem leaks in IE.\n \t\t\tscript.onerror = script.onload = null;\n \t\t\tclearTimeout(timeout);\n \t\t\tvar chunk = installedChunks[chunkId];\n \t\t\tif(chunk !== 0) {\n \t\t\t\tif(chunk) {\n \t\t\t\t\tchunk[1](new Error('Loading chunk ' + chunkId + ' failed.'));\n \t\t\t\t}\n \t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t}\n \t\t};\n \t\thead.appendChild(script);\n\n \t\treturn promise;\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"//static.vocento.com/vam/3.14.0/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 215);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 35cafb5f7d52ba8b855c","var core = module.exports = {version: '2.4.0'};\nif(typeof __e == 'number')__e = core; // eslint-disable-line no-undef\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_core.js\n// module id = 0\n// module chunks = 1 2 3","var store = require('./_shared')('wks')\n , uid = require('./_uid')\n , Symbol = require('./_global').Symbol\n , USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function(name){\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_wks.js\n// module id = 1\n// module chunks = 1 2 3","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self : Function('return this')();\nif(typeof __g == 'number')__g = global; // eslint-disable-line no-undef\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_global.js\n// module id = 2\n// module chunks = 1 2 3","export const NAMESPACE = 'vocento';\nexport const PROMISES_PROPERTY = '__PROMISES__';\nexport const DEFAULT_TIMEOUT = 2000;\nexport const VOCUSER_COOKIE = 'voc_uid';\nexport const PAYWALL_COOKIE = 'voc_paywall';\nexport const SHOW_LOGS = document.location.search.indexOf('vam_debug=1') > -1 || document.location.search.indexOf('gdp_debug=1') > -1;\nexport const DEFAULT_LOG_TEMPLATE = '[Ads Manager]';\nexport const CONFIG_NAMESPACE = 'vocento.config.vam';\nexport const EDITIONS_NAMESPACE = 'vocento.site.editions';\nexport const GPT_ID_VOCENTO = '4900';\nexport const GPT_READY = 'vam:gpt:ready';\nexport const GPT_TIMEOUT = 2000;\nexport const TIMEOUT_POSICIONES_ESTANDAR = 3000;\nexport const ALTOS_MINIMOS_DISPOSITIVOS = {\n mobile: 0,\n tablet: 200,\n desktop: 300\n};\nexport const POSITION_FLUID = \"'fluid'\";\nexport const SLOT_RENDERED = 'vam:slotrendered';\nexport const SLOT_EMPTY = 'vam:isempty';\nexport const SLOT_VIEWABLE = 'vam:viewable';\nexport const SLOT_INACTIVE = 'vam:inactive';\nexport const DEFAULTS = {\n hideNoAds: true,\n refresh: false,\n responsive: false\n};\nexport const CAPTURADOR_WS = '//publi.cmvocento.com/capturador/preview';\nexport const MCRYPT_KEY = 'acsNdl09acs72AEdacsNdl09acs72AEd';\nexport const VAM_CSS_URL = '//netssl.vocento.com/cmvocento/css/vam.css';\nexport const JSON_GDP2_0 = 0;\nexport const JSON_GDP2_1 = 1;\nexport const JSON_GDP2_2 = 2;\nexport const NOMBRE_FORMATO_JSON = ['GDP2.0', 'GDP2.1', 'GDP2.2+'];\nexport const GPT_URL = 'www.googletagservices.com/tag/js/gpt.js';\n\n/* header bidding */\nexport const HEADER_BIDDING_READY = 'vam:headerbidding-ready';\nexport const AFTER_RELOAD_HB_TIMEOUT = 600;\nexport const PREBID_URL = `${process.env.ASSET_PATH}prebid.js`;\nexport const PREBID_AUCTION_ENDED = 'vam:headerbidding-auctionended';\nexport const PREBID_SET_TARGETINGS = 'vam:headerbidding-settargetings';\nexport const DEFAULT_PREBID_LOAD_TIMEOUT = 7000;\nexport const AMAZON_URL = '//c.amazon-adsystem.com/aax2/apstag.js';\nexport const DEFAULT_AMAZON_LOAD_TIMEOUT = 7000;\nexport const AMAZON_CONFIG = {\n pubID: '3470', // Amazon publisher ID\n adServer: 'googletag' // AdServer type that contains apstag line-items\n};\n\n/* legacy */\nexport const OLD_PREFIX = 'publi_';\nexport const NEW_SUFFIX = '-id';\n\n\n\n// WEBPACK FOOTER //\n// ./src/constants.js","var anObject = require('./_an-object')\n , IE8_DOM_DEFINE = require('./_ie8-dom-define')\n , toPrimitive = require('./_to-primitive')\n , dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes){\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if(IE8_DOM_DEFINE)try {\n return dP(O, P, Attributes);\n } catch(e){ /* empty */ }\n if('get' in Attributes || 'set' in Attributes)throw TypeError('Accessors not supported!');\n if('value' in Attributes)O[P] = Attributes.value;\n return O;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-dp.js\n// module id = 4\n// module chunks = 1 2 3","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function(){\n return Object.defineProperty({}, 'a', {get: function(){ return 7; }}).a != 7;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_descriptors.js\n// module id = 5\n// module chunks = 1 2 3","import {\n SHOW_LOGS,\n DEFAULT_LOG_TEMPLATE\n} from './constants';\n\nexport function showLog() {\n SHOW_LOGS && console.log(DEFAULT_LOG_TEMPLATE, ...arguments);\n}\n\nexport function showWarn() {\n SHOW_LOGS && console.warn(DEFAULT_LOG_TEMPLATE, ...arguments);\n}\n\nexport function showError() {\n SHOW_LOGS && console.error(DEFAULT_LOG_TEMPLATE, ...arguments);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/logger.js","var global = require('./_global')\n , core = require('./_core')\n , ctx = require('./_ctx')\n , hide = require('./_hide')\n , PROTOTYPE = 'prototype';\n\nvar $export = function(type, name, source){\n var IS_FORCED = type & $export.F\n , IS_GLOBAL = type & $export.G\n , IS_STATIC = type & $export.S\n , IS_PROTO = type & $export.P\n , IS_BIND = type & $export.B\n , IS_WRAP = type & $export.W\n , exports = IS_GLOBAL ? core : core[name] || (core[name] = {})\n , expProto = exports[PROTOTYPE]\n , target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE]\n , key, own, out;\n if(IS_GLOBAL)source = name;\n for(key in source){\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n if(own && key in exports)continue;\n // export native or passed\n out = own ? target[key] : source[key];\n // prevent global pollution for namespaces\n exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]\n // bind timers to global for call from export context\n : IS_BIND && own ? ctx(out, global)\n // wrap global constructors for prevent change them in library\n : IS_WRAP && target[key] == out ? (function(C){\n var F = function(a, b, c){\n if(this instanceof C){\n switch(arguments.length){\n case 0: return new C;\n case 1: return new C(a);\n case 2: return new C(a, b);\n } return new C(a, b, c);\n } return C.apply(this, arguments);\n };\n F[PROTOTYPE] = C[PROTOTYPE];\n return F;\n // make static versions for prototype methods\n })(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // export proto methods to core.%CONSTRUCTOR%.methods.%NAME%\n if(IS_PROTO){\n (exports.virtual || (exports.virtual = {}))[key] = out;\n // export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%\n if(type & $export.R && expProto && !expProto[key])hide(expProto, key, out);\n }\n }\n};\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library` \nmodule.exports = $export;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_export.js\n// module id = 7\n// module chunks = 1 2 3","module.exports = function(it){\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_is-object.js\n// module id = 8\n// module chunks = 1 2 3","var dP = require('./_object-dp')\n , createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function(object, key, value){\n return dP.f(object, key, createDesc(1, value));\n} : function(object, key, value){\n object[key] = value;\n return object;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_hide.js\n// module id = 9\n// module chunks = 1 2 3","var isObject = require('./_is-object');\nmodule.exports = function(it){\n if(!isObject(it))throw TypeError(it + ' is not an object!');\n return it;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_an-object.js\n// module id = 10\n// module chunks = 1 2 3","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function(fn, that, length){\n aFunction(fn);\n if(that === undefined)return fn;\n switch(length){\n case 1: return function(a){\n return fn.call(that, a);\n };\n case 2: return function(a, b){\n return fn.call(that, a, b);\n };\n case 3: return function(a, b, c){\n return fn.call(that, a, b, c);\n };\n }\n return function(/* ...args */){\n return fn.apply(that, arguments);\n };\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_ctx.js\n// module id = 11\n// module chunks = 1 2 3","module.exports = function(exec){\n try {\n return !!exec();\n } catch(e){\n return true;\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_fails.js\n// module id = 12\n// module chunks = 1 2 3","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function(it, key){\n return hasOwnProperty.call(it, key);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_has.js\n// module id = 13\n// module chunks = 1 2 3","// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = require('./_iobject')\n , defined = require('./_defined');\nmodule.exports = function(it){\n return IObject(defined(it));\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_to-iobject.js\n// module id = 14\n// module chunks = 1 2 3","import Evented from './mixins/evented';\nimport Deferred from './mixins/deferred';\nimport User from './mixins/user';\nimport { extend } from './mixins/mixin';\n\nconst\n _scripts = {},\n _hasOwnProperty = Object.prototype.hasOwnProperty\n ;\n\nconst Application = {\n load(url, options = {}) {\n var promise, script, src, key;\n\n src = url;\n key = url.split('?').shift();\n if (_hasOwnProperty.call(_scripts, key)) { return _scripts[key]; }\n\n script = document.createElement('script');\n script.type = 'text/javascript';\n script.src = src;\n script.async = true;\n options.text && (script.text = options.text);\n\n promise = new window.RSVP.Promise((resolve, reject) => {\n script.onload = () => resolve(script);\n script.onerror = reject;\n\n document.head.appendChild(script);\n });\n\n _scripts[key] = promise;\n return promise;\n }\n};\n\nextend(Application, Evented);\nextend(Application, Deferred);\nextend(Application, User);\n\nconst app = 'Voonto' in window && 'getInstance' in window.Voonto\n ? window.Voonto.getInstance()\n : Application;\n\nexport default app;\n\n\n\n// WEBPACK FOOTER //\n// ./src/application.js","var g;\r\n\r\n// This works in non-strict mode\r\ng = (function() {\r\n\treturn this;\r\n})();\r\n\r\ntry {\r\n\t// This works if eval is allowed (see CSP)\r\n\tg = g || Function(\"return this\")() || (1,eval)(\"this\");\r\n} catch(e) {\r\n\t// This works if the window reference is available\r\n\tif(typeof window === \"object\")\r\n\t\tg = window;\r\n}\r\n\r\n// g can still be undefined, but nothing to do about it...\r\n// We return undefined, instead of nothing here, so it's\r\n// easier to handle this case. if(!global) { ...}\r\n\r\nmodule.exports = g;\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/global.js\n// module id = 16\n// module chunks = 1 2 3 4 5","module.exports = { \"default\": require(\"core-js/library/fn/promise\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/promise.js\n// module id = 17\n// module chunks = 1 2 3","'use strict';\nvar $at = require('./_string-at')(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\nrequire('./_iter-define')(String, 'String', function(iterated){\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function(){\n var O = this._t\n , index = this._i\n , point;\n if(index >= O.length)return {value: undefined, done: true};\n point = $at(O, index);\n this._i += point.length;\n return {value: point, done: false};\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es6.string.iterator.js\n// module id = 18\n// module chunks = 1 2 3","module.exports = {};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_iterators.js\n// module id = 19\n// module chunks = 1 2 3","// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = require('./_object-keys-internal')\n , enumBugKeys = require('./_enum-bug-keys');\n\nmodule.exports = Object.keys || function keys(O){\n return $keys(O, enumBugKeys);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-keys.js\n// module id = 20\n// module chunks = 1 2 3","module.exports = { \"default\": require(\"core-js/library/fn/object/keys\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/object/keys.js\n// module id = 21\n// module chunks = 1 2 3","module.exports = function(bitmap, value){\n return {\n enumerable : !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable : !(bitmap & 4),\n value : value\n };\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_property-desc.js\n// module id = 22\n// module chunks = 1 2 3","var toString = {}.toString;\n\nmodule.exports = function(it){\n return toString.call(it).slice(8, -1);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_cof.js\n// module id = 23\n// module chunks = 1 2 3","var def = require('./_object-dp').f\n , has = require('./_has')\n , TAG = require('./_wks')('toStringTag');\n\nmodule.exports = function(it, tag, stat){\n if(it && !has(it = stat ? it : it.prototype, TAG))def(it, TAG, {configurable: true, value: tag});\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_set-to-string-tag.js\n// module id = 24\n// module chunks = 1 2 3","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function(it){\n return Object(defined(it));\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_to-object.js\n// module id = 25\n// module chunks = 1 2 3","require('./es6.array.iterator');\nvar global = require('./_global')\n , hide = require('./_hide')\n , Iterators = require('./_iterators')\n , TO_STRING_TAG = require('./_wks')('toStringTag');\n\nfor(var collections = ['NodeList', 'DOMTokenList', 'MediaList', 'StyleSheetList', 'CSSRuleList'], i = 0; i < 5; i++){\n var NAME = collections[i]\n , Collection = global[NAME]\n , proto = Collection && Collection.prototype;\n if(proto && !proto[TO_STRING_TAG])hide(proto, TO_STRING_TAG, NAME);\n Iterators[NAME] = Iterators.Array;\n}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/web.dom.iterable.js\n// module id = 26\n// module chunks = 1 2 3","var META = require('./_uid')('meta')\n , isObject = require('./_is-object')\n , has = require('./_has')\n , setDesc = require('./_object-dp').f\n , id = 0;\nvar isExtensible = Object.isExtensible || function(){\n return true;\n};\nvar FREEZE = !require('./_fails')(function(){\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function(it){\n setDesc(it, META, {value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n }});\n};\nvar fastKey = function(it, create){\n // return primitive with prefix\n if(!isObject(it))return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if(!has(it, META)){\n // can't set metadata to uncaught frozen object\n if(!isExtensible(it))return 'F';\n // not necessary to add metadata\n if(!create)return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function(it, create){\n if(!has(it, META)){\n // can't set metadata to uncaught frozen object\n if(!isExtensible(it))return true;\n // not necessary to add metadata\n if(!create)return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function(it){\n if(FREEZE && meta.NEED && isExtensible(it) && !has(it, META))setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_meta.js\n// module id = 27\n// module chunks = 1 2 3","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function(it){\n if(it == undefined)throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_defined.js\n// module id = 28\n// module chunks = 1 2 3","module.exports = true;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_library.js\n// module id = 29\n// module chunks = 1 2 3","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer')\n , min = Math.min;\nmodule.exports = function(it){\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_to-length.js\n// module id = 30\n// module chunks = 1 2 3","var id = 0\n , px = Math.random();\nmodule.exports = function(key){\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_uid.js\n// module id = 31\n// module chunks = 1 2 3","// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = require('./_cof')\n , TAG = require('./_wks')('toStringTag')\n // ES3 wrong here\n , ARG = cof(function(){ return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function(it, key){\n try {\n return it[key];\n } catch(e){ /* empty */ }\n};\n\nmodule.exports = function(it){\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_classof.js\n// module id = 32\n// module chunks = 1 2 3","var ctx = require('./_ctx')\n , call = require('./_iter-call')\n , isArrayIter = require('./_is-array-iter')\n , anObject = require('./_an-object')\n , toLength = require('./_to-length')\n , getIterFn = require('./core.get-iterator-method')\n , BREAK = {}\n , RETURN = {};\nvar exports = module.exports = function(iterable, entries, fn, that, ITERATOR){\n var iterFn = ITERATOR ? function(){ return iterable; } : getIterFn(iterable)\n , f = ctx(fn, that, entries ? 2 : 1)\n , index = 0\n , length, step, iterator, result;\n if(typeof iterFn != 'function')throw TypeError(iterable + ' is not iterable!');\n // fast case for arrays with default iterator\n if(isArrayIter(iterFn))for(length = toLength(iterable.length); length > index; index++){\n result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);\n if(result === BREAK || result === RETURN)return result;\n } else for(iterator = iterFn.call(iterable); !(step = iterator.next()).done; ){\n result = call(iterator, f, step.value, entries);\n if(result === BREAK || result === RETURN)return result;\n }\n};\nexports.BREAK = BREAK;\nexports.RETURN = RETURN;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_for-of.js\n// module id = 33\n// module chunks = 1 2 3","exports.f = {}.propertyIsEnumerable;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-pie.js\n// module id = 34\n// module chunks = 1 2 3","module.exports = { \"default\": require(\"core-js/library/fn/object/prevent-extensions\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/object/prevent-extensions.js\n// module id = 35\n// module chunks = 1 2 3","\"use strict\";\n\nexports.__esModule = true;\n\nvar _iterator = require(\"../core-js/symbol/iterator\");\n\nvar _iterator2 = _interopRequireDefault(_iterator);\n\nvar _symbol = require(\"../core-js/symbol\");\n\nvar _symbol2 = _interopRequireDefault(_symbol);\n\nvar _typeof = typeof _symbol2.default === \"function\" && typeof _iterator2.default === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === \"function\" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? \"symbol\" : typeof obj; };\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = typeof _symbol2.default === \"function\" && _typeof(_iterator2.default) === \"symbol\" ? function (obj) {\n return typeof obj === \"undefined\" ? \"undefined\" : _typeof(obj);\n} : function (obj) {\n return obj && typeof _symbol2.default === \"function\" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? \"symbol\" : typeof obj === \"undefined\" ? \"undefined\" : _typeof(obj);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/helpers/typeof.js\n// module id = 36\n// module chunks = 1 2 3","// 7.1.4 ToInteger\nvar ceil = Math.ceil\n , floor = Math.floor;\nmodule.exports = function(it){\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_to-integer.js\n// module id = 38\n// module chunks = 1 2 3","'use strict';\nvar LIBRARY = require('./_library')\n , $export = require('./_export')\n , redefine = require('./_redefine')\n , hide = require('./_hide')\n , has = require('./_has')\n , Iterators = require('./_iterators')\n , $iterCreate = require('./_iter-create')\n , setToStringTag = require('./_set-to-string-tag')\n , getPrototypeOf = require('./_object-gpo')\n , ITERATOR = require('./_wks')('iterator')\n , BUGGY = !([].keys && 'next' in [].keys()) // Safari has buggy iterators w/o `next`\n , FF_ITERATOR = '@@iterator'\n , KEYS = 'keys'\n , VALUES = 'values';\n\nvar returnThis = function(){ return this; };\n\nmodule.exports = function(Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED){\n $iterCreate(Constructor, NAME, next);\n var getMethod = function(kind){\n if(!BUGGY && kind in proto)return proto[kind];\n switch(kind){\n case KEYS: return function keys(){ return new Constructor(this, kind); };\n case VALUES: return function values(){ return new Constructor(this, kind); };\n } return function entries(){ return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator'\n , DEF_VALUES = DEFAULT == VALUES\n , VALUES_BUG = false\n , proto = Base.prototype\n , $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT]\n , $default = $native || getMethod(DEFAULT)\n , $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined\n , $anyNative = NAME == 'Array' ? proto.entries || $native : $native\n , methods, key, IteratorPrototype;\n // Fix native\n if($anyNative){\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base));\n if(IteratorPrototype !== Object.prototype){\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if(!LIBRARY && !has(IteratorPrototype, ITERATOR))hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if(DEF_VALUES && $native && $native.name !== VALUES){\n VALUES_BUG = true;\n $default = function values(){ return $native.call(this); };\n }\n // Define iterator\n if((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])){\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if(DEFAULT){\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if(FORCED)for(key in methods){\n if(!(key in proto))redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_iter-define.js\n// module id = 39\n// module chunks = 1 2 3","module.exports = function(it){\n if(typeof it != 'function')throw TypeError(it + ' is not a function!');\n return it;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_a-function.js\n// module id = 40\n// module chunks = 1 2 3","var isObject = require('./_is-object')\n , document = require('./_global').document\n // in old IE typeof document.createElement is 'object'\n , is = isObject(document) && isObject(document.createElement);\nmodule.exports = function(it){\n return is ? document.createElement(it) : {};\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_dom-create.js\n// module id = 41\n// module chunks = 1 2 3","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function(it, S){\n if(!isObject(it))return it;\n var fn, val;\n if(S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;\n if(typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it)))return val;\n if(!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it)))return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_to-primitive.js\n// module id = 42\n// module chunks = 1 2 3","// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = require('./_an-object')\n , dPs = require('./_object-dps')\n , enumBugKeys = require('./_enum-bug-keys')\n , IE_PROTO = require('./_shared-key')('IE_PROTO')\n , Empty = function(){ /* empty */ }\n , PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function(){\n // Thrash, waste and sodomy: IE GC bug\n var iframe = require('./_dom-create')('iframe')\n , i = enumBugKeys.length\n , lt = '<'\n , gt = '>'\n , iframeDocument;\n iframe.style.display = 'none';\n require('./_html').appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties){\n var result;\n if(O !== null){\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty;\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-create.js\n// module id = 43\n// module chunks = 1 2 3","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function(it){\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_iobject.js\n// module id = 44\n// module chunks = 1 2 3","var shared = require('./_shared')('keys')\n , uid = require('./_uid');\nmodule.exports = function(key){\n return shared[key] || (shared[key] = uid(key));\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_shared-key.js\n// module id = 45\n// module chunks = 1 2 3","var global = require('./_global')\n , SHARED = '__core-js_shared__'\n , store = global[SHARED] || (global[SHARED] = {});\nmodule.exports = function(key){\n return store[key] || (store[key] = {});\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_shared.js\n// module id = 46\n// module chunks = 1 2 3","// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_enum-bug-keys.js\n// module id = 47\n// module chunks = 1 2 3","module.exports = function(it, Constructor, name, forbiddenField){\n if(!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)){\n throw TypeError(name + ': incorrect invocation!');\n } return it;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_an-instance.js\n// module id = 48\n// module chunks = 1 2 3","var classof = require('./_classof')\n , ITERATOR = require('./_wks')('iterator')\n , Iterators = require('./_iterators');\nmodule.exports = require('./_core').getIteratorMethod = function(it){\n if(it != undefined)return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/core.get-iterator-method.js\n// module id = 49\n// module chunks = 1 2 3","var hide = require('./_hide');\nmodule.exports = function(target, src, safe){\n for(var key in src){\n if(safe && target[key])target[key] = src[key];\n else hide(target, key, src[key]);\n } return target;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_redefine-all.js\n// module id = 50\n// module chunks = 1 2 3","exports.f = require('./_wks');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_wks-ext.js\n// module id = 51\n// module chunks = 1 2 3","var global = require('./_global')\n , core = require('./_core')\n , LIBRARY = require('./_library')\n , wksExt = require('./_wks-ext')\n , defineProperty = require('./_object-dp').f;\nmodule.exports = function(name){\n var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\n if(name.charAt(0) != '_' && !(name in $Symbol))defineProperty($Symbol, name, {value: wksExt.f(name)});\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_wks-define.js\n// module id = 52\n// module chunks = 1 2 3","exports.f = Object.getOwnPropertySymbols;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-gops.js\n// module id = 53\n// module chunks = 1 2 3","// most Object methods by ES6 should accept primitives\nvar $export = require('./_export')\n , core = require('./_core')\n , fails = require('./_fails');\nmodule.exports = function(KEY, exec){\n var fn = (core.Object || {})[KEY] || Object[KEY]\n , exp = {};\n exp[KEY] = exec(fn);\n $export($export.S + $export.F * fails(function(){ fn(1); }), 'Object', exp);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-sap.js\n// module id = 54\n// module chunks = 1 2 3","import {\n showLog,\n showError\n} from './logger';\nimport { GPT_URL } from './constants';\nconst _files = {};\n\n/**\n * Check if a object is empty or is undefined. Not be used for arrays or strings\n * @param {mixed} value\n * @return {boolean}\n */\nexport function isEmpty(value) {// OK\n if ((typeof value === 'object' && Object.keys(value).length) ||\n (typeof value !== 'object' && typeof value !== 'undefined')) {\n return false;\n }\n\n return true;\n}\n\n/**\n * Get a URL param value\n * @param {string} paramName\n * @param {string} url\n */\nexport function getParameterByName(paramName, url = window.location.href) {\n var regExp, results;\n\n // NOTE: replace the '[element]' with '\\[element\\]' using '\\\\$&'\n paramName = paramName.replace(/[[\\]]/g, '\\\\$&');\n regExp = new RegExp(`[?&]${paramName}(=([^&#]+)|&|#|$)`);\n results = regExp.exec(url);\n\n if (!results) return '';\n if (!results[2]) return '';\n\n return decodeURIComponent(results[2].replace(/\\+/g, ' '));\n}\n\nexport function load(url, options = {}) {\n var promise, file, key;\n\n key = url.split('?').shift();\n if (Object.hasOwnProperty.call(_files, key)) {return _files[key];}\n\n options.type = options.type || 'script';\n\n file = document.createElement(options.type);\n switch (options.type) {\n case 'link':\n file.type = 'text/css';\n file.rel = 'stylesheet';\n file.href = url;\n break;\n case 'script':\n default:\n file.type = 'text/javascript';\n file.src = url;\n file.async = true;\n options.text && (file.text = options.text);\n break;\n }\n\n promise = new Promise((resolve, reject) => {\n file.onload = () => resolve(file);\n file.onerror = reject;\n\n document.head.appendChild(file);\n });\n\n _files[key] = promise;\n return promise;\n}\n\n/**\n * Carga del JS para la publicidad de Google\n */\nexport function cargaLibreriaGPT() {\n var gads, useSSL, node;\n window.googletag = window.googletag || {};\n window.googletag.cmd = window.googletag.cmd || [];\n window.customcmd = window.customcmd || [];\n try {\n if ($(`script[src*='${GPT_URL}']`).length === 0) {\n gads = document.createElement('script');\n gads.async = true;\n gads.type = 'text/javascript';\n useSSL = document.location.protocol === 'https:';\n gads.src = (useSSL ? 'https:' : 'http:') + `//${GPT_URL}`;\n node = document.getElementsByTagName('script')[0];\n node.parentNode.insertBefore(gads, node);\n window.googletag.cmd.push(function() {\n var func;\n showLog('First function', window.customcmd.length);\n while (window.customcmd.length) {\n func = window.customcmd.splice(0, 1)[0];\n window.googletag.cmd.push(func);\n }\n showLog('Finish Pushing to googletag.cmd', window.customcmd.length);\n window.customcmd = window.googletag.cmd;\n });\n }\n } catch (err) {\n showError('Utils:cargaLibreriaGPT:Error loading GPT library');\n }\n}\n\nexport function extend() {\n var args = arguments;\n var objectValues = Object.keys(args).map(e => args[e]);\n // sustituto de Object.values(args)\n\n objectValues.forEach(function(argument, pos) {\n pos !== 0 && Object.keys(argument).forEach((key) => {\n args[0][key] = argument[key];\n });\n });\n\n return args[0];\n}\n\nexport function endsWith(str, suffix) {\n return str.indexOf(suffix, str.length - suffix.length) !== -1;\n}\n\nexport function startsWith(str, needle) {\n return str.indexOf(needle) === 0;\n}\n\nexport function urlToSection(sectionUrl) {\n return sectionUrl.replace(/^\\/|\\/$/g, '');\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils.js","\"use strict\";\n\nexports.__esModule = true;\n\nexports.default = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/helpers/classCallCheck.js\n// module id = 57\n// module chunks = 1 2 3","\"use strict\";\n\nexports.__esModule = true;\n\nvar _defineProperty = require(\"../core-js/object/define-property\");\n\nvar _defineProperty2 = _interopRequireDefault(_defineProperty);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n (0, _defineProperty2.default)(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/helpers/createClass.js\n// module id = 58\n// module chunks = 1 2 3","module.exports = !require('./_descriptors') && !require('./_fails')(function(){\n return Object.defineProperty(require('./_dom-create')('div'), 'a', {get: function(){ return 7; }}).a != 7;\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_ie8-dom-define.js\n// module id = 60\n// module chunks = 1 2 3","module.exports = require('./_hide');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_redefine.js\n// module id = 61\n// module chunks = 1 2 3","var has = require('./_has')\n , toIObject = require('./_to-iobject')\n , arrayIndexOf = require('./_array-includes')(false)\n , IE_PROTO = require('./_shared-key')('IE_PROTO');\n\nmodule.exports = function(object, names){\n var O = toIObject(object)\n , i = 0\n , result = []\n , key;\n for(key in O)if(key != IE_PROTO)has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while(names.length > i)if(has(O, key = names[i++])){\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-keys-internal.js\n// module id = 62\n// module chunks = 1 2 3","module.exports = require('./_global').document && document.documentElement;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_html.js\n// module id = 63\n// module chunks = 1 2 3","module.exports = function(done, value){\n return {value: value, done: !!done};\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_iter-step.js\n// module id = 64\n// module chunks = 1 2 3","// call something on iterator step with safe closing on error\nvar anObject = require('./_an-object');\nmodule.exports = function(iterator, fn, value, entries){\n try {\n return entries ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch(e){\n var ret = iterator['return'];\n if(ret !== undefined)anObject(ret.call(iterator));\n throw e;\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_iter-call.js\n// module id = 65\n// module chunks = 1 2 3","// check on default Array iterator\nvar Iterators = require('./_iterators')\n , ITERATOR = require('./_wks')('iterator')\n , ArrayProto = Array.prototype;\n\nmodule.exports = function(it){\n return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_is-array-iter.js\n// module id = 66\n// module chunks = 1 2 3","var ctx = require('./_ctx')\n , invoke = require('./_invoke')\n , html = require('./_html')\n , cel = require('./_dom-create')\n , global = require('./_global')\n , process = global.process\n , setTask = global.setImmediate\n , clearTask = global.clearImmediate\n , MessageChannel = global.MessageChannel\n , counter = 0\n , queue = {}\n , ONREADYSTATECHANGE = 'onreadystatechange'\n , defer, channel, port;\nvar run = function(){\n var id = +this;\n if(queue.hasOwnProperty(id)){\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\nvar listener = function(event){\n run.call(event.data);\n};\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif(!setTask || !clearTask){\n setTask = function setImmediate(fn){\n var args = [], i = 1;\n while(arguments.length > i)args.push(arguments[i++]);\n queue[++counter] = function(){\n invoke(typeof fn == 'function' ? fn : Function(fn), args);\n };\n defer(counter);\n return counter;\n };\n clearTask = function clearImmediate(id){\n delete queue[id];\n };\n // Node.js 0.8-\n if(require('./_cof')(process) == 'process'){\n defer = function(id){\n process.nextTick(ctx(run, id, 1));\n };\n // Browsers with MessageChannel, includes WebWorkers\n } else if(MessageChannel){\n channel = new MessageChannel;\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = ctx(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if(global.addEventListener && typeof postMessage == 'function' && !global.importScripts){\n defer = function(id){\n global.postMessage(id + '', '*');\n };\n global.addEventListener('message', listener, false);\n // IE8-\n } else if(ONREADYSTATECHANGE in cel('script')){\n defer = function(id){\n html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function(){\n html.removeChild(this);\n run.call(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function(id){\n setTimeout(ctx(run, id, 1), 0);\n };\n }\n}\nmodule.exports = {\n set: setTask,\n clear: clearTask\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_task.js\n// module id = 67\n// module chunks = 1 2 3","'use strict';\nvar global = require('./_global')\n , core = require('./_core')\n , dP = require('./_object-dp')\n , DESCRIPTORS = require('./_descriptors')\n , SPECIES = require('./_wks')('species');\n\nmodule.exports = function(KEY){\n var C = typeof core[KEY] == 'function' ? core[KEY] : global[KEY];\n if(DESCRIPTORS && C && !C[SPECIES])dP.f(C, SPECIES, {\n configurable: true,\n get: function(){ return this; }\n });\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_set-species.js\n// module id = 68\n// module chunks = 1 2 3","var ITERATOR = require('./_wks')('iterator')\n , SAFE_CLOSING = false;\n\ntry {\n var riter = [7][ITERATOR]();\n riter['return'] = function(){ SAFE_CLOSING = true; };\n Array.from(riter, function(){ throw 2; });\n} catch(e){ /* empty */ }\n\nmodule.exports = function(exec, skipClosing){\n if(!skipClosing && !SAFE_CLOSING)return false;\n var safe = false;\n try {\n var arr = [7]\n , iter = arr[ITERATOR]();\n iter.next = function(){ return {done: safe = true}; };\n arr[ITERATOR] = function(){ return iter; };\n exec(arr);\n } catch(e){ /* empty */ }\n return safe;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_iter-detect.js\n// module id = 69\n// module chunks = 1 2 3","\"use strict\";\n\nexports.__esModule = true;\n\nvar _isIterable2 = require(\"../core-js/is-iterable\");\n\nvar _isIterable3 = _interopRequireDefault(_isIterable2);\n\nvar _getIterator2 = require(\"../core-js/get-iterator\");\n\nvar _getIterator3 = _interopRequireDefault(_getIterator2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function () {\n function sliceIterator(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = (0, _getIterator3.default)(arr), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"]) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n }\n\n return function (arr, i) {\n if (Array.isArray(arr)) {\n return arr;\n } else if ((0, _isIterable3.default)(Object(arr))) {\n return sliceIterator(arr, i);\n } else {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n }\n };\n}();\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/helpers/slicedToArray.js\n// module id = 70\n// module chunks = 1 2 3","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg){\n return cof(arg) == 'Array';\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_is-array.js\n// module id = 71\n// module chunks = 1 2 3","// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = require('./_object-keys-internal')\n , hiddenKeys = require('./_enum-bug-keys').concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O){\n return $keys(O, hiddenKeys);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-gopn.js\n// module id = 72\n// module chunks = 1 2 3","module.exports = { \"default\": require(\"core-js/library/fn/object/freeze\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/object/freeze.js\n// module id = 73\n// module chunks = 1 2 3","export function extend(destination, source) {\n Object.keys(source).forEach((key) => {\n destination[key] = source[key];\n });\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/mixins/mixin.js","module.exports = {\"name\":\"vam\",\"version\":\"3.14.0\",\"description\":\"\",\"main\":\"src/index.js\",\"scripts\":{\"test\":\"./node_modules/.bin/nyc ./node_modules/.bin/mocha-webpack tests/index.js --require jsdom-global/register --webpack-config webpack.test.js\",\"tdd\":\"./node_modules/.bin/mocha-webpack tests/index.js --require jsdom-global/register --webpack-config webpack.test.js --watch\",\"start\":\"./node_modules/.bin/webpack-dev-server --open --config webpack.dev.js\",\"build\":\"./node_modules/.bin/webpack --optimize-minimize --config webpack.prod.js\",\"prebid\":\"cd ./node_modules/prebid.js/ && npm install && \\\"./node_modules/.bin/gulp\\\" build --modules=../../src/header-bidding/prebid-modules.json && cd ../..\"},\"contributors\":[\"Jose Manuel Ortega \",\"Ernesto V. \",\"Iván Pérez \",\"Mario Cadenas \"],\"license\":\"SEE LICENSE IN LICENSE.md\",\"devDependencies\":{\"babel-core\":\"^6.26.0\",\"babel-eslint\":\"^8.0.1\",\"babel-loader\":\"^7.1.2\",\"babel-plugin-syntax-dynamic-import\":\"^6.18.0\",\"babel-plugin-transform-object-rest-spread\":\"^6.26.0\",\"babel-plugin-transform-runtime\":\"^6.23.0\",\"babel-polyfill\":\"^6.16.0\",\"babel-preset-env\":\"^1.6.1\",\"chai\":\"^4.1.2\",\"chalk\":\"^1.1.3\",\"clean-webpack-plugin\":\"^0.1.17\",\"copy-webpack-plugin\":\"^4.3.1\",\"css-loader\":\"^0.28.4\",\"eslint\":\"^4.19.1\",\"eslint-config-airbnb\":\"^17.0.0\",\"eslint-config-airbnb-base\":\"^12.0.1\",\"eslint-plugin-import\":\"^2.12.0\",\"extract-text-webpack-plugin\":\"^1.0.1\",\"file-loader\":\"^1.1.6\",\"html-loader\":\"^0.5.5\",\"html-webpack-plugin\":\"^2.30.1\",\"json-loader\":\"^0.5.7\",\"mocha\":\"^4.0.1\",\"mocha-loader\":\"^1.0.0\",\"mocha-phantomjs\":\"^4.1.0\",\"mocha-webpack\":\"^1.0.1\",\"nyc\":\"^11.4.1\",\"style-loader\":\"^0.18.2\",\"webpack\":\"^3.10.0\",\"webpack-dev-server\":\"^2.9.7\",\"webpack-merge\":\"^4.1.1\",\"webpack-shell-plugin\":\"^0.5.0\"},\"dependencies\":{\"jquery-inview\":\"^1.1.2\",\"js-cookie\":\"^2.1.4\",\"prebid.js\":\"1.12.0\",\"rijndael-js\":\"^1.0.0\",\"rsvp\":\"^3.5.0\"}}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./package.json\n// module id = 75\n// module chunks = 1 2 3","import HBConfigManager from './header-bidding/config-manager';\nimport app from './application';\nimport {\n isEmpty,\n getParameterByName,\n load,\n extend,\n endsWith,\n startsWith\n} from './utils';\nimport {\n showLog,\n showWarn,\n showError\n} from './logger';\nimport {\n DEFAULTS,\n SLOT_INACTIVE,\n OLD_PREFIX,\n NEW_SUFFIX,\n ALTOS_MINIMOS_DISPOSITIVOS,\n GPT_ID_VOCENTO,\n EDITIONS_NAMESPACE,\n CAPTURADOR_WS,\n VAM_CSS_URL,\n MCRYPT_KEY,\n CONFIG_NAMESPACE\n} from './constants';\n\nconst URL_PARAM_ALL = 'all';\n\nvar\n _dynamicId = -1,\n _prevEncryptedCode = '',\n _prevUnencryptedCode = ''\n;\n\nclass ConfigManager {\n constructor(configGDPMedio, configGDP, modifyOAS = {}) {\n _prevEncryptedCode = '';\n _prevUnencryptedCode = '';\n this.configGDPMedio = $.extend(true, {}, configGDPMedio);\n this.configGDP = $.extend(true, {}, configGDP);\n this.modifyOAS = modifyOAS;\n this.deviceType = _getTipoDispositivo.call(this);\n this.pageType = _getTipoPagina.call(this);\n this.dynamicId = ++_dynamicId;\n this.context$ = null;\n this.isResponsiveMedia = _isResponsiveMedia.call(this);\n this.capturadorDataPreview = '';\n this.valueUserType = _getValueUser();\n this.delayedPositions = _getDelayed.call(this);\n this.prioritizedPositions = _getPrioritized.call(this);\n this.globalTargetings = _getDefineSlotTargetings.call(this);\n }\n\n /**\n * Process the configGDPMedia\n */\n processConfig() {\n HBConfigManager.processConfig(this);\n }\n\n /**\n * Check if a position is enabled or disabled\n * @param {object} params\n * @return {boolean}\n */\n isActive(params) {// OK\n var container$, configPosition, configSchedules, currentDate, found;\n\n // check if all positions or the given in params are actives by URL\n if ('forceActivePosition' in this.configGDPMedio &&\n (this.configGDPMedio.forceActivePosition.indexOf('1') > -1 ||\n this.configGDPMedio.forceActivePosition.indexOf(URL_PARAM_ALL) > -1 ||\n this.configGDPMedio.forceActivePosition.indexOf(params.position) > -1)\n ) {\n return true;\n }\n\n container$ = $(`#${this.getIdDiv(params)}`);\n configPosition = app.lookup(`posicion_${this.deviceType}.${params.position}`, this.configGDP);\n\n // Checking that the config of the device type is added\n\n if (!isEmpty(configPosition)) {\n // Check if the position is active for the page type\n if (configPosition.desactivadoen && configPosition.desactivadoen.length\n && configPosition.desactivadoen !== ''\n && configPosition.desactivadoen.indexOf(this.pageType) !== -1\n ) {\n showLog(`ConfigManager:isActive:Position ${params.position} is not active for the pageType ${this.pageType}`);\n container$.trigger(SLOT_INACTIVE);\n return false;\n }\n\n // Check if the position has programming\n currentDate = Math.round(+new Date() / 1000);\n found = false;\n configSchedules = app.lookup(`posicion_${this.deviceType}.${params.position}.programaciones`, this.configGDP);\n if (!isEmpty(configSchedules) && configSchedules.length) {\n found = configSchedules.some(function(current) {\n var beginDate, endDate;\n beginDate = current.programacion ? current.programacion.fecha_in : 0;\n endDate = current.programacion ? current.programacion.fecha_fin : 0;\n return (beginDate === 0 || currentDate >= beginDate)\n && (endDate === 0 || currentDate <= endDate);\n });\n\n if (!found) {\n showLog(`ConfigManager:isActive:Position ${params.position} is not active for the current date`);\n container$.trigger(SLOT_INACTIVE);\n return false;\n }\n }\n } else {\n showLog(`ConfigManager:isActive:Position ${params.position} is not active`);\n container$.trigger(SLOT_INACTIVE);\n return false;\n }\n\n return true;\n }\n\n /**\n * Generate position identifier\n * FUTURE: Clean this method when all pages(ABC, MH, PPLL) use the\n * new ADS strategy(PREFIX or SUFIX come from GDP)\n * @param {object} params\n * @return {string}\n */\n getIdDiv(params) {// OK\n var adsId, dynamicId;\n\n showLog('ConfigManager:getIdDiv:Dinamic ID', params.dynamicId, this.dynamicId);\n dynamicId = this.dynamicId ? `-${this.dynamicId}` : '';\n if (params.dynamicId !== undefined) {\n dynamicId = params.dynamicId ? `-${params.dynamicId}` : '';\n }\n if (params.id && typeof params.id === 'string') {\n showLog('ConfigManager:getIdDiv:With Id param', params);\n adsId = params.id.indexOf(OLD_PREFIX) > -1 ? params.id : `${OLD_PREFIX}${params.id}`;\n if (!$(`#${adsId}`).length) {\n showLog('ConfigManager:getIdDiv:With Id param. Not found ID', adsId);\n adsId = params.id.indexOf(NEW_SUFFIX) > -1 ? params.id : `${params.id}${NEW_SUFFIX}`;\n }\n adsId += endsWith(adsId, dynamicId) ? '' : dynamicId;\n showLog('ConfigManager:getIdDiv:With Id param. Id calculated', adsId);\n } else {\n showLog('ConfigManager:getIdDiv:No Id param', params);\n adsId = `${OLD_PREFIX}${params.position}`;\n if (!$(`#${adsId}`).length) {\n showLog('ConfigManager:getIdDiv:No Id param. Not found ID', adsId);\n adsId = `${params.position}${NEW_SUFFIX}${dynamicId}`;\n }\n showLog('ConfigManager:getIdDiv:No Id param. Id calculated', adsId);\n }\n\n return adsId;\n }\n\n /**\n * Check if position exist in media config\n * @param {string} position\n * @param {string} deviceType\n * @returns {boolean} - TRUE if exist, FALSE otherwise\n */\n existePosEnConfigGDPMedio(position, deviceType = this.deviceType) {// OK\n var idAds;\n\n if (!isEmpty(app.lookup(`posicion_${deviceType}.${position}`, this.configGDPMedio))) {\n return true;\n }\n // If position do not exist, hide the container DIV\n idAds = this.getIdDiv({ position });\n $(`#${idAds}`).length && $(`#${idAds}`).hide();\n\n return false;\n }\n\n /**\n * Normalize the position's parameters\n */\n normalizaParams(data) {// OK\n var params, outOfPage, idAds, offset;\n\n params = {};\n // jQuery object or JSON object\n if (data instanceof $) {\n extend(params, DEFAULTS, {\n position: data.data('voc-vam-position') || null,\n serverType: data.data('voc-vam-servertype') || _getServerType.call(this, params.position),\n hideNoAds: data.data('voc-vam-hidenoads'),\n outOfPage: data.data('voc-vam-outofpage'),\n defineSlot: data.data('voc-vam-defineslot') || _getDefineSlotParam.call(this),\n refresh: data.data('voc-vam-refresh'),\n responsive: data.data('voc-vam-responsive'),\n pre_callback: data.data('voc-vam-precallback') || '',\n pre_event: data.data('voc-vam-preevent') || '',\n post_callback: data.data('voc-vam-postcallback') || '',\n post_event: data.data('voc-vam-postevent') || '',\n oas: data.data('voc-vam-oas') || '',\n tags: data.data('voc-vam-tags'),\n dynamicId: this.dynamicId\n });\n } else {\n extend(params, DEFAULTS, {\n position: data.position || null,\n id: data.id || null,\n serverType: data.serverType || _getServerType.call(this, params.position),\n hideNoAds: data.hideNoAds,\n outOfPage: data.outOfPage,\n defineSlot: data.defineSlot || _getDefineSlotParam.call(this),\n refresh: data.refresh,\n responsive: data.responsive,\n pre_callback: data.pre_callback || '',\n pre_event: data.pre_event || '',\n post_callback: data.post_callback || '',\n post_event: data.post_event || '',\n oas: data.oas || '',\n tags: data.tags,\n dynamicId: data.dynamicId || this.dynamicId\n });\n }\n\n // if some required parameter is missing, return null\n if (params.position === null) {\n showWarn('ConfigManager:normalizaParams:Position param is required', data);\n return null;\n }\n\n if (!this.existePosEnConfigGDPMedio(params.position)) {\n showWarn(`ConfigManager:normalizaParams:Position ${params.position} does not exists in configGDPMedio`);\n return null;\n }\n\n // OutOfPage param\n if (typeof params.outOfPage !== 'boolean') {\n outOfPage = app.lookup(`posicion_${this.deviceType}.${params.position}.outofpage`, this.configGDPMedio);\n params.outOfPage = isEmpty(outOfPage) || typeof outOfPage !== 'boolean' ? false : outOfPage;\n }\n\n // ads container DIV\n idAds = this.getIdDiv(params);\n if (!$(`#${idAds}`).length && $(`[data-voc-vam-position = '${params.position}']`, this.context$).length && !$(`[data-voc-vam-position = '${params.position}']`, this.context$).attr('id')) {\n $(`[data-voc-vam-position = '${params.position}']`, this.context$).attr('id', idAds);\n }\n params.id = idAds;\n\n // global targetings\n if (!params.tags) {\n params.tags = app.lookup(`posicion_${this.deviceType}.${params.position}.targetings`, this.configGDPMedio) || {};\n }\n\n // offset\n offset = app.lookup(`posicion_${this.deviceType}.${params.position}.offset`, this.configGDP);\n if (!isEmpty(offset)) {\n $(`#${params.id}`).attr('data-offset', offset);\n showLog(`ConfigManager:normalizaParams:Offset ${offset} configurer for position: ${params.position}`);\n }\n\n // build the responsive parameter if it doesn't come in the data\n if (!params.outOfPage\n && !params.responsive\n && this.isResponsiveMedia) {\n params.responsive = _getResponsiveParam.call(this, params);\n }\n\n return params;\n }\n\n /**\n * Get OAS value from config\n * FUTURE: create final OAS config on GDP\n * @return string\n */\n getOasSitepage(params = {}) {\n var oasSitepage, decryptedURL, legacyAdUnit, regExp, result, macroEdition, edition;\n\n if (params.oas) {\n oasSitepage = params.oas.trim();\n } else {\n oasSitepage = app.lookup(`OAS.${this.deviceType}.${this.pageType}`, this.configGDP);\n oasSitepage = isEmpty(oasSitepage) ? '' : oasSitepage.trim();\n }\n\n // check if adUnit is forced by URL\n try {\n decryptedURL = ConfigManager.decryptedURL();\n if (window.location.href.indexOf('vam_adunit=') > -1 || window.location.href.indexOf('adunit=') > -1 || decryptedURL !== '') {\n legacyAdUnit = window.location.href.indexOf('vam_adunit=') > -1 ? 'vam_adunit' : 'adunit';\n regExp = new RegExp(`(\\\\?|&)${legacyAdUnit}=([^?&]+)`);\n result = (decryptedURL !== '') ? regExp.exec(decryptedURL) : regExp.exec(window.location.href);\n\n if (result) {\n oasSitepage = result[2].indexOf('/' + GPT_ID_VOCENTO + '/') > -1\n ? result[2]\n : '/' + GPT_ID_VOCENTO + '/' + result[2];\n }\n }\n } catch (err) {\n showError('ConfigManager:getOasSitepage:Error checking adUnit', err);\n }\n\n // check macro edition\n try {\n regExp = /{(\\/)?edicion(\\/)?}/;\n macroEdition = regExp.exec(oasSitepage);\n if (macroEdition) {\n edition = _getEdition();\n if (startsWith(macroEdition[0], '{/') && edition) edition = '/' + edition;\n if (endsWith(macroEdition[0], '/}') && edition) edition += '/';\n\n oasSitepage = oasSitepage.replace(macroEdition[0], edition);\n }\n } catch (err) {\n showError('ConfigManager:getOasSitepage:Error checking edition', err);\n }\n\n // Guardamos el valor del adunit calculado por si no lo esta\n if (typeof this.configGDP.OAS.adunit === 'undefined') this.configGDP.OAS.adunit = oasSitepage;\n\n return oasSitepage;\n }\n\n /**\n * Calculate the sizes for a given position\n * FUTURE: move config to GDP\n * @param {string} position\n * @param {string} deviceType - default is _deviceType\n * @return {object}\n */\n getSizesGoogle(position, deviceType = this.deviceType) {// OK\n var configSize, size, defineSlot;\n\n configSize = app.lookup(`posicion_${deviceType}.${position}.dimensiones`, this.configGDPMedio);\n\n size = !isEmpty(configSize) ? configSize : '[]';\n defineSlot = _getDefineSlotParam.call(this);\n\n if (size.indexOf('[fluid]') > -1) {\n if (!defineSlot) return ['fluid'];\n\n size = size.replace('[fluid]', '\\'fluid\\'');\n }\n\n return defineSlot ? size : JSON.parse(size);\n }\n\n /**\n * Detect forced config by URL.\n * Support params:\n * vam_adunit\n * vam_cmvkey\n * vam_debug\n * vam_enable_single_request\n * vam_enable_sync_rendering\n * vam_enable_krux\n * vam_force_positions\n * vam_info_slot\n */\n checkConfigFromURL() {\n var legacyCode, code, prebidDisabledBidders;\n if (typeof window.location === 'undefined') return;\n\n // Disable Prebid\n if ('headerBidding' in this.configGDPMedio &&\n window.location.href.indexOf('vam_prebid_disabled=') > -1\n ) {\n prebidDisabledBidders = getParameterByName('vam_prebid_disabled', window.location.href).split(',');\n this.configGDPMedio.headerBidding.biddersConfig.disabled = prebidDisabledBidders;\n if (prebidDisabledBidders.indexOf(URL_PARAM_ALL) > -1) {\n this.configGDPMedio.headerBidding = null;\n }\n }\n\n // Disable HB Amazon\n if ('hbAmazon' in this.configGDPMedio) {\n this.configGDPMedio.hbAmazon = window.location.href.indexOf('vam_amazon_disabled=1') > -1 || window.location.href.indexOf('gdp_enableAmazonAds=0') > -1 || !this.configGDPMedio.enableAmazonAds ? false : this.configGDPMedio.hbAmazon;\n }\n\n // Single Request\n this.configGDPMedio.singleRequest = window.location.href.indexOf('vam_single_request=1') > -1 || window.location.href.indexOf('gdp_singleRequest=1') > -1 || this.configGDPMedio.singleRequest;\n\n // SyncRendering\n this.configGDPMedio.syncRendering = window.location.href.indexOf('vam_sync_rendering=1') > -1 || window.location.href.indexOf('gdp_syncRendering=1') > -1 || this.configGDPMedio.syncRendering;\n\n // Krux\n this.configGDPMedio.enableKrux = window.location.href.indexOf('vam_krux=1') > -1 || window.location.href.indexOf('gdp_enableKrux=1') > -1 || this.configGDPMedio.enableKrux;\n\n // Force active position\n this.configGDPMedio.forceActivePosition = window.location.href.indexOf('vam_force_positions=') > -1 ? getParameterByName('vam_force_positions', window.location.href).split(',') : getParameterByName('gdp_forceActivePosition', window.location.href).split(',');\n\n // InfoSlot\n this.configGDPMedio.infoSlot = window.location.href.indexOf('vam_info_slot=1') > -1 || window.location.href.indexOf('gdp_infoSlot=1') > -1;\n if (this.configGDPMedio.infoSlot) {\n load(VAM_CSS_URL, {\n type: 'link'\n }).then(function() {\n showLog('ConfigManager:checkConfigFromURL:CSS loaded', VAM_CSS_URL);\n });\n }\n\n // Capturador (modo preview)\n this.configGDPMedio.preview = window.location.href.indexOf('vam_preview') > -1 || window.location.href.indexOf('preview') > -1;\n if (this.configGDPMedio.preview) {\n showLog('ConfigManager:checkConfigFromURL:Detected capture mode. Call capture SW');\n this.capturadorDataPreview = _capturadorGetPreviewData();\n\n // En modo capturador no pondremos priorizadas ni retrasadas\n this.configGDP.priorizadas = {};\n this.configGDP.retrasadas = {};\n }\n\n // Previsualizador\n if (window.location.href.indexOf('vam_code=') > -1 || window.location.href.indexOf('code=') > -1) {\n showLog('ConfigManager:checkConfigFromURL:Detected preview mode');\n legacyCode = window.location.href.indexOf('vam_code=') > -1 ? 'vam_code' : 'code';\n code = getParameterByName(legacyCode, window.location.href);\n _prevEncryptedCode = decodeURI(code);\n\n // En modo previsualizador no pondremos priorizadas ni retrasadas\n this.configGDP.priorizadas = {};\n this.configGDP.retrasadas = {};\n\n if (_prevEncryptedCode !== '') {\n import(/* webpackChunkName: \"rijndael-js\" */ 'rijndael-js').then(function(Rijndael) {\n showLog('ConfigManager:Rijndael library is loaded', Rijndael);\n _decriptUrl(Rijndael);\n });\n }\n }\n }\n\n /**\n * Comprobacion de si existen excepciones para la pagina donde nos encontramos.\n * @return object configGDP\n */\n checkExceptions() {\n var value, unixTime, beginDate, endDate;\n\n if (this.configGDPMedio.excepciones\n && Object.keys(this.configGDPMedio.excepciones).length > 0\n ) {\n showLog('ConfigManager:checkExceptions:There are configured exceptions');\n Object.keys(this.configGDPMedio.excepciones).forEach(function(key) {\n if (key !== 'priorizadas' && key !== 'retrasadas') {\n if (window.location.pathname === key || window.location.pathname.match(key)) {\n value = this.configGDPMedio.excepciones[key];\n unixTime = Math.round(new Date() / 1000);\n beginDate = value.fecha_in;\n endDate = value.fecha_fin;\n if ((beginDate === 0 || beginDate <= unixTime) &&\n (endDate === 0 || unixTime <= endDate)\n ) {\n this.configGDP = value;\n showLog(`ConfigManager:checkExceptions:Applying the following exception:\"${key}\"`);\n }\n }\n }\n }, this);\n }\n }\n\n /**\n * Funcion que devuelve la URL desencriptada\n * @returns {string}\n */\n static decryptedURL() {\n return _prevUnencryptedCode;\n }\n\n /**\n * Funcion que comprueba si una posicion es retrasada\n * FUTURE: listaRetrasadas come in array format from GDP\n */\n isDelayed(position) {\n return this.thereAreDelayedPositions() && this.delayedPositions.indexOf(position) > -1;\n }\n\n thereAreDelayedPositions() {\n return this.delayedPositions.length;\n }\n\n /**\n * Funcion que comprueba si una posicion es retrasada\n * FUTURE: listaRetrasadas come in array format from GDP\n */\n isPrioritized(position) {\n return this.thereArePrioritizedPositions() &&\n this.prioritizedPositions.indexOf(position) > -1;\n }\n\n thereArePrioritizedPositions() {\n return this.prioritizedPositions.length;\n }\n\n removePrioritizedPosition(position) {\n var index = this.prioritizedPositions.indexOf(position);\n\n if (index !== -1) {\n this.prioritizedPositions.splice(index, 1);\n }\n }\n\n dynamicOas() {\n const { section, forcedOas } = this.modifyOAS;\n const newOas = forcedOas ? `${section}/${forcedOas}` : section;\n\n if (!section || !forcedOas) { return Promise.resolve(); }\n\n Object.keys(this.configGDP.OAS).forEach((device) => {\n if (device !== 'adunit') {\n Object.keys(this.configGDP.OAS[device]).forEach((option) => {\n if (endsWith(this.configGDP.OAS[device][option], 'portada')) {\n this.configGDP.OAS[device][option] = this.configGDP.OAS[device][option].replace(new RegExp('portada?$', 'g'), newOas);\n } else {\n this.configGDP.OAS[device][option] = `${this.configGDP.OAS[device][option]}/${section}`;\n }\n });\n }\n });\n return Promise.resolve();\n }\n}\n\nexport default ConfigManager;\n\n/* Private */\n\n/**\n * Get the device type depending on the size of the screen\n * @return string\n */\nfunction _getTipoDispositivo() {// OK\n var max, min, screenWidth, deviceType;\n\n deviceType = 'desktop';\n\n if (!this.configGDPMedio.responsive.esResponsive) {\n if (this.configGDPMedio && this.configGDPMedio.tipoDispositivo) {\n deviceType = this.configGDPMedio.tipoDispositivo;\n }\n } else {\n screenWidth = parseInt(window.innerWidth, 10);\n\n Object.keys(this.configGDPMedio.responsive).forEach(function(key) {\n var value = this.configGDPMedio.responsive[key];\n if ((key !== 'esResponsive') && (value.resolucionMaxima || value.resolucionMinima)) {\n max = value.resolucionMaxima ? value.resolucionMaxima : 999999;\n min = value.resolucionMinima ? value.resolucionMinima : 0;\n\n if ((screenWidth <= max) && (screenWidth > min)) {\n deviceType = key.replace('resolucion', '').toLowerCase();\n }\n }\n }, this);\n }\n\n return deviceType;\n}\n\n/**\n * Look for the medium where we are, from the configuration\n * @return string\n */\nfunction _getMedio() {// OK\n return this.configGDPMedio.medio ? this.configGDPMedio.medio : '';\n}\n\n/**\n * Get the page type from the URL pattern\n * NOTE: Each medium has its own URL rules so each one has its own function to calculate them\n * FUTURE: set the page type in global namespace on each page\n */\nfunction _getTipoPagina() {// OK\n const medio = _getMedio.call(this);\n let {pageType} = app.lookup(CONFIG_NAMESPACE);\n\n if (pageType) return pageType;\n\n pageType = 'portada';\n\n if (medio === 'xlsemanal' &&\n window.tipoContenido &&\n window.tipoContenido !== 'portadilla') return window.tipoContenido;\n\n if (['abc', 'lavozdigital', 'abcdesevilla'].indexOf(medio) > -1) {\n pageType = _getTipoPaginaABC();\n } else if (medio === 'mujerhoy') {\n pageType = _getTipoPaginaMujerhoy();\n } else {\n pageType = _getTipoPaginaPortalesLocales();\n }\n\n return pageType;\n}\n\n/**\n * Get the page type from the URL for abc.es, sevilla.abc.es and lavozdigital.es\n * @return {string}\n */\nfunction _getTipoPaginaABC() {// OK\n var\n oldVideosRegExp, videosRegExp, oldGaleryRegExp2, oldGaleryRegExp,\n galeryRegExp, graphicRegExp, oldNewsRegExp, newsRegExp;\n\n oldVideosRegExp = /\\/videos\\/(.*)?\\/\\d{6}\\/\\d{2}\\/((?!index.html).)*.html/;\n videosRegExp = /_video.html/;\n if (videosRegExp.exec(window.location.pathname) || oldVideosRegExp.exec(window.location.pathname)) return 'video';\n\n oldGaleryRegExp2 = /\\/multimedia\\/fotos\\/(.*)?\\/((?!index.html).)*.html/;\n oldGaleryRegExp = /\\/fotos-(.*)?\\/\\d{8}\\/((?!index.html).)*.html/;\n galeryRegExp = /_galeria.html/;\n if (galeryRegExp.exec(window.location.pathname) || oldGaleryRegExp.exec(window.location.pathname) || oldGaleryRegExp2.exec(window.location.pathname)) return 'galeria';\n\n graphicRegExp = /\\/multimedia\\/(graficos\\/(.)*|infografias)\\/((?!index.html).)*.html/;\n if (graphicRegExp.exec(window.location.pathname)) return 'grafico';\n\n oldNewsRegExp = /\\d{8}\\/(.*)?((?!index.html).)*.html/;\n newsRegExp = /(_noticia.html|_directo.html)/;\n if (newsRegExp.exec(window.location.pathname) || oldNewsRegExp.exec(window.location.pathname)) return 'noticia';\n\n return 'portada';\n}\n\n/**\n * Get the page type from the URL for mujerhoy.com\n * @return {string}\n */\nfunction _getTipoPaginaMujerhoy() {// OK\n var\n videoRegExp, oldVideoRegExp, videoBlogRegExp, isVideo, galeryRegExp, oldGaleryRegExp,\n galeryBlogRegExp, isGalery, newsRegExp, newsBlogRegExp, newsRecipesRegExp, isNews;\n\n videoRegExp = /-vi.html/;\n oldVideoRegExp = /\\/videos\\/(.*)?\\/\\d{6}\\/\\d{2}\\/.*-mm.html/;\n videoBlogRegExp = /\\/videos\\/\\d{4}\\/\\d{2}\\/\\d{2}\\/(.*).html/;\n isVideo = window.location.hostname.indexOf('blogs.') > -1\n ? videoBlogRegExp.exec(window.location.pathname)\n : videoRegExp.exec(window.location.pathname) || oldVideoRegExp.exec(window.location.pathname);\n if (isVideo) return 'video';\n\n galeryRegExp = /-ga.html/;\n oldGaleryRegExp = /^\\/galerias\\/(.*)?\\d{6}\\/\\d{2}\\/.*-mm.html/;\n galeryBlogRegExp = /\\/galerias\\/\\d{4}\\/\\d{2}\\/\\d{2}\\/(.*).html/;\n isGalery = window.location.hostname.indexOf('blogs.') > -1\n ? galeryBlogRegExp.exec(window.location.pathname)\n : galeryRegExp.exec(window.location.pathname) || oldGaleryRegExp.exec(window.location.pathname);\n if (isGalery) return 'galeria';\n\n newsRegExp = /\\/\\d{6}\\/\\d{2}\\/((?!index.html).)*.html/;\n newsBlogRegExp = /\\/\\d{4}\\/\\d{2}\\/\\d{2}\\/((?!index.html).)*.html/;\n newsRecipesRegExp = /\\/\\d{6}\\/((?!index.html).)*.html/;\n if (window.location.hostname.indexOf('blogs.') > -1) {\n isNews = newsBlogRegExp.exec(window.location.pathname);\n } else if (window.location.hostname.indexOf('recetas.') > -1) {\n isNews = newsRecipesRegExp.exec(window.location.pathname);\n } else {\n isNews = newsRegExp.exec(window.location.pathname);\n }\n if (isNews) return 'noticia';\n\n return 'portada';\n}\n\n/**\n * Get the page type from the URL for PPLL\n * @return {string}\n */\nfunction _getTipoPaginaPortalesLocales() {// OK\n var\n videoRegExp, oldVideoRegExp, galeryRegExp, oldGaleryRegExp, newsRegExp, oldNewsRegExp,\n graphicRegExp, oldGraphicRegExp, videoChatRegExp;\n\n videoRegExp = /-(vi|virc|vivo)(_amp)?.html/;\n oldVideoRegExp = /^\\/videos\\/(.*)?\\/\\d{6}\\/\\d{2}\\/.*-mm.html/;\n if (videoRegExp.exec(window.location.pathname) || oldVideoRegExp.exec(window.location.pathname)) return 'video';\n\n galeryRegExp = /-(ga|garc|gavo|ft|ftrc|ftvo)(_amp)?.html/;\n oldGaleryRegExp = /^\\/fotos\\/(.*)?\\d{6}\\/\\d{2}\\/.*-mm.html/;\n if (galeryRegExp.exec(window.location.pathname) || oldGaleryRegExp.exec(window.location.pathname)) return 'galeria';\n\n newsRegExp = /-(nt|ntrc|ntvo)(_amp)?.html/;\n oldNewsRegExp = /\\/\\d{6}\\/\\d{2}\\/((?!index.html).)*.html/;\n if (newsRegExp.exec(window.location.pathname) || oldNewsRegExp.exec(window.location.pathname)) return 'noticia';\n\n // NOTA: En PLs, a nivel de publicidad, contemplaremos graficos y videochats como noticias\n graphicRegExp = /-(in|inrc|invo)(_amp)?.html/;\n oldGraphicRegExp = /^\\/graficos\\/(.*)?\\/\\d{6}\\/\\d{2}\\/.*-mm.html/;\n videoChatRegExp = /\\/videochats\\/((?!index.html).)\\w+/;\n if (graphicRegExp.exec(window.location.pathname) ||\n oldGraphicRegExp.exec(window.location.pathname) ||\n videoChatRegExp.exec(window.location.pathname)\n ) return 'noticia';\n\n return 'portada';\n}\n\n/**\n * Get defineSlot param from config\n * @return {boolean|undefined}\n */\nfunction _getDefineSlotParam() {// OK\n return this.configGDPMedio.defineSlot || undefined;\n}\n\n/**\n * Get the serverType of given position\n * @param {string} position\n * @return {string}\n */\nfunction _getServerType(position) {// OK\n var configServerType, serverType = 'google';\n\n configServerType = app.lookup(\n `posicion_${this.deviceType}.${position}.tipo`,\n this.configGDPMedio\n );\n serverType = !isEmpty(configServerType) ? configServerType : serverType;\n\n return serverType;\n}\n\n/**\n * Check if is responsive from config\n * @return {boolean}\n */\nfunction _isResponsiveMedia() {// OK\n var isResponsive = app.lookup('responsive.esResponsive', this.configGDPMedio);\n\n return !isEmpty(isResponsive) ? isResponsive : false;\n}\n\n/**\n * Build responsive param for the position\n * @return object\n */\nfunction _getResponsiveParam(params) {// OK\n if (params.responsive\n && Array.isArray(params.responsive)\n && params.responsive.length\n ) {\n return params.responsive;\n }\n\n /**\n * It doesn't have responsive param but it is\n * responsive medium so we build responsive param with\n * the corresponding resolutions and sizes\n */\n if (this.isResponsiveMedia) {\n return _createResponsive.call(this, params.position);\n }\n\n return false;\n}\n\n/**\n * Build responsive param\n * FUTURE: move config to GDP\n * @return object\n */\nfunction _createResponsive(position) {// OK\n var responsive, resolution, minWidth, maxWidth, dimension, googleSize, size;\n\n showLog('ConfigManager:createResponsive:Build responsive for', position);\n responsive = [];\n this.configGDPMedio.dispositivos.forEach(function(device) {\n if (!this.existePosEnConfigGDPMedio(position, device)) return;\n\n resolution = app.lookup(`responsive.resolucion${device}`, this.configGDPMedio);\n if (!isEmpty(resolution)) {\n minWidth = resolution.resolucionMinima;\n maxWidth = resolution.resolucionMaxima;\n\n if (!isEmpty(minWidth) && !isEmpty(maxWidth) && (minWidth || maxWidth)) {\n dimension = [\n parseInt(minWidth, 10) || 0,\n ALTOS_MINIMOS_DISPOSITIVOS[device]\n ];\n\n googleSize = this.getSizesGoogle(position, device);\n try {\n if (googleSize && googleSize.indexOf('fluid') > -1) {\n size = 'fluid';\n } else {\n size = JSON.parse(googleSize);\n }\n } catch (e) {\n showWarn(`ConfigManager:createResponsive:Processing position ${position}: ${e}`);\n size = googleSize;\n }\n\n // Insert the dimension mapping ordered from lowest to highest by width\n responsive.push([dimension, size]);\n }\n }\n }, this);\n responsive.sort(function(pair1, pair2) {\n return pair1[0][0] - pair2[0][0];\n });\n\n responsive.sort(function(pair1, pair2) {\n return pair1[0][0] - pair2[0][0];\n });\n showLog(`ConfigManager:createResponsive:Build responsive param for position ${position}`, responsive);\n\n return responsive;\n}\n\n/**\n * Get edition from config\n */\nfunction _getEdition() {// OK\n var editions = app.lookup(EDITIONS_NAMESPACE);\n\n return editions.current || (editions.main || '');\n}\n\n/**\n * Invoca al Servicio Web del Capturador para obtener las creatividades indicadas en el parametro\n * preview directamente desde DFP.\n */\nfunction _capturadorGetPreviewData() {\n var legacyPreview, url, data;\n\n legacyPreview = window.location.href.indexOf('vam_preview') > -1 ? 'vam_preview' : 'preview';\n url = CAPTURADOR_WS + '?id=' + getParameterByName(legacyPreview);\n data = '';\n $.ajax({\n url: url,\n type: 'POST',\n async: false,\n success: function (result) {\n data = result;\n }\n });\n\n return data;\n}\n\n/**\n * Convert Gigya user format to advertising format\n */\nfunction _getValueUser() {// OK\n var valueUser, arrayUsers = {\n suscriptor: 's',\n trial: 't',\n registrado: 'r',\n anonimo: 'a'\n };\n\n valueUser = arrayUsers[app.getUserType()] || 'a';\n\n return valueUser;\n}\n\nfunction _getDelayed() {\n var delayedPositions;\n\n delayedPositions = app.lookup(`retrasadas.${this.deviceType}.listaPosiciones`, this.configGDP);\n\n if (isEmpty(delayedPositions) || !delayedPositions.length) {\n showLog('ConfigManager:getDelayed:There are NOT delayed positions');\n return [];\n }\n\n showLog('ConfigManager:getDelayed:There are delayed positions:', delayedPositions);\n delayedPositions = delayedPositions.split(',').filter(function(position) {\n return position.trim();\n });\n\n return delayedPositions;\n}\n\nfunction _getPrioritized() {\n var prioritizedPositions;\n\n prioritizedPositions = app.lookup(`priorizadas.${this.deviceType}.listaPosiciones`, this.configGDP);\n\n if (isEmpty(prioritizedPositions) || !prioritizedPositions.length) {\n showLog('ConfigManager:getPrioritized:There are NOT prioritized positions');\n return [];\n }\n\n showLog('ConfigManager:getDelayed:There are prioritized positions:', prioritizedPositions);\n prioritizedPositions = prioritizedPositions.split(',').filter(function(position) {\n return position.trim();\n });\n\n return prioritizedPositions;\n}\n\n/**\n * Decrypt url to get cmvkey param\n * @param {object} mcrypt - Rijndael object\n */\nfunction _decriptUrl(Rijndael) {\n var legacyCmvkey, mcrypt, preparedCode;\n showLog('ConfigManager:decriptUrl:Actual prevUnencryptedCode', _prevUnencryptedCode, 'and prevEncryptedCode', _prevEncryptedCode);\n if (_prevUnencryptedCode === '' && _prevEncryptedCode !== '') {\n mcrypt = new Rijndael(MCRYPT_KEY, 'cbc');\n showLog('ConfigManager:decriptUrl:Decrypting', mcrypt);\n preparedCode = atob(_prevEncryptedCode).split('').map(function(value) {\n return value.charCodeAt(0);\n });\n _prevUnencryptedCode = '?' + mcrypt.decrypt(preparedCode, 256, MCRYPT_KEY);\n showLog('ConfigManager:decriptUrl:', _prevUnencryptedCode);\n // NOTE: remove special characters from string\n _prevUnencryptedCode = _prevUnencryptedCode.replace(\n /[^A-Za-z 0-9.,?\"\"!@#$%^&*()\\-_=+;:<>/\\\\|}{[\\]`~]*/g,\n ''\n );\n\n if (endsWith(_prevUnencryptedCode, '&vam_cmvkey=') ||\n endsWith(_prevUnencryptedCode, '&cmvkey=')\n ) {\n legacyCmvkey = endsWith(_prevUnencryptedCode, '&vam_cmvkey=')\n ? '&vam_cmvkey='\n : '&cmvkey=';\n _prevUnencryptedCode = _prevUnencryptedCode.replace(legacyCmvkey, '');\n }\n showLog(`ConfigManager:decriptUrl:String decrypted: ${_prevUnencryptedCode}`);\n }\n\n return _prevUnencryptedCode;\n}\n\n/**\n * Funcion que obtiene los tag definidos en los archivos de configuración\n * FUTURE: move config to GDP\n * @return object\n */\nfunction _getDefineSlotTargetings() {\n var medioTargetings, pageTargetings, targetings, defineSlotTargetings;\n\n medioTargetings = this.configGDPMedio.targetings ? this.configGDPMedio.targetings : {};\n pageTargetings = this.configGDP.targetings ? this.configGDP.targetings : {};\n targetings = {};\n extend(targetings, medioTargetings, pageTargetings);\n\n defineSlotTargetings = '';\n Object.keys(targetings).forEach(function(key) {\n defineSlotTargetings += `.setTargeting(\"${key}\", \"${targetings[key]}\")`;\n });\n\n return defineSlotTargetings;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/config-manager.js","module.exports = { \"default\": require(\"core-js/library/fn/symbol/iterator\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/symbol/iterator.js\n// module id = 80\n// module chunks = 1 2 3","module.exports = { \"default\": require(\"core-js/library/fn/symbol\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/symbol.js\n// module id = 81\n// module chunks = 1 2 3","\"use strict\";\n\nexports.__esModule = true;\n\nvar _from = require(\"../core-js/array/from\");\n\nvar _from2 = _interopRequireDefault(_from);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n } else {\n return (0, _from2.default)(arr);\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/helpers/toConsumableArray.js\n// module id = 82\n// module chunks = 1 2 3","import './check-dependencies';\nimport './legacy/dfp-pixel';\nimport pkg from '../package.json';\nimport app from './application';\nimport Advertising from './advertising';\nimport ConfigManager from './config-manager';\nimport { CONFIG_NAMESPACE } from './constants';\nimport { showLog } from './logger';\nimport { store } from './store/store';\nimport {\n isEmpty,\n urlToSection\n} from './utils';\nimport {\n pushFn,\n toggleProcessing,\n sliceFn\n} from './actions/queue';\n\nconst { $ } = window;\nlet _initialized = false;\n\n_legacyInit();\n$(document).ready(function() {\n var config = app.lookup(CONFIG_NAMESPACE);\n\n config = !isEmpty(config) ? config : {\n media: window.configGDPMedio,\n options: window.configGDP\n };\n _init(config.media, config.options);\n});\n\nexport const VERSION = pkg.version;\n\n/* Private */\n\n/**\n * Build legacy object\n * @deprecated\n */\nfunction _legacyInit() {\n window.Vocento = window.Vocento || {};\n window.Vocento.Publicidad = function() {};\n window.Vocento.Publicidad.prototype = {\n init(jQuery, configGDPMedio, configGDP) {\n _init(configGDPMedio, configGDP);\n },\n printAds(datos) {\n return Advertising.printAds(datos);\n },\n getOasSitepage(...params) {\n return Advertising.getOasSitepage(...params);\n },\n getSizesGoogle(...params) {\n return Advertising.getSizesGoogle(...params);\n },\n getValueUser(...params) {\n return Advertising.getValueUser(...params);\n }\n };\n}\n\nfunction _init(configGDPMedio, configGDP) {\n if (_initialized) { return; }\n\n if (!configGDPMedio || !configGDP) { throw Error('[Ads Manager] missing configuration'); }\n\n _initialized = true;\n // promise to wait advertising user consent\n app.when('consent:advertising').then((result) => {\n showLog('Advertising Consent promise has been resolved with result: ', result);\n window.customcmd.push(() => {\n window.googletag.pubads().setRequestNonPersonalizedAds(result ? 0 : 1);\n });\n });\n app.on('consent:updated:advertising', (event, result) => {\n showLog('Advertising Consent has been updated with result: ', result);\n window.customcmd.push(() => {\n window.googletag.pubads().setRequestNonPersonalizedAds(result ? 0 : 1);\n });\n });\n app.on('voonto:reload', _enqueueReload);\n app.on('vam:refresh', _refresh);\n\n store.subscribe(() => {\n const { processing, queue } = store.getState();\n\n if (!processing && queue.length) {\n const [, reload] = queue[0];\n if (reload) {\n reload();\n store.dispatch(toggleProcessing());\n store.dispatch(sliceFn());\n }\n }\n });\n\n const configManager = new ConfigManager(configGDPMedio, configGDP);\n Advertising.init(configManager, false);\n _printAds();\n}\n\n\n/**\n * Print Ads configured inside context or whole page\n * Config must be passed to Advertising.init before calling printAds()\n * @param {null|jQueryObject} context$\n */\nfunction _printAds(context$) {\n $('[data-voc-vam]', context$).each(function () {\n Advertising.printAds($(this));\n });\n}\n\n\nfunction _enqueueReload(event, context$) {\n const reloadObj = {\n reload() {\n _reload(context$);\n },\n context$\n };\n store.dispatch(pushFn(reloadObj));\n}\n\n/**\n * Reload ads inside given context with given config\n * @param {jQueryEvent} event\n * @param {null|jQueryObject} context$\n */\nasync function _reload(context$) {\n const { media, options } = app.lookup(CONFIG_NAMESPACE);\n const rawSection = context$.data('sectionUrl') || '';\n const forcedOas = context$.data('voc-vam-force-oas') || '';\n const section = urlToSection(rawSection);\n const oasOptions = { section, forcedOas };\n const configManager = new ConfigManager(media, options, oasOptions);\n await configManager.dynamicOas();\n\n setTimeout(() => {\n store.dispatch(toggleProcessing());\n }, 700);\n\n if (context$.data('voc-vam-configgdp')) {\n context$.data('voc-vam-configgdp', null);\n }\n\n showLog('Reload event has been invoked. Config value: ', { media: configManager.configGDPMedio, options: configManager.configGDP });\n Advertising.init(configManager, true, context$);\n _printAds(context$);\n}\n\n/**\n * Refresh the ads position received on 'data' parameter\n * @param {string|object} data\n */\nfunction _refresh(event, data) {\n var params = typeof data === 'string' ? JSON.parse(data) : data;\n\n Advertising.printAds(params);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","module.exports = require(\"regenerator-runtime\");\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/regenerator/index.js\n// module id = 92\n// module chunks = 1 2 3","// This method of obtaining a reference to the global object needs to be\n// kept identical to the way it is obtained in runtime.js\nvar g =\n typeof global === \"object\" ? global :\n typeof window === \"object\" ? window :\n typeof self === \"object\" ? self : this;\n\n// Use `getOwnPropertyNames` because not all browsers support calling\n// `hasOwnProperty` on the global `self` object in a worker. See #183.\nvar hadRuntime = g.regeneratorRuntime &&\n Object.getOwnPropertyNames(g).indexOf(\"regeneratorRuntime\") >= 0;\n\n// Save the old regeneratorRuntime in case it needs to be restored later.\nvar oldRuntime = hadRuntime && g.regeneratorRuntime;\n\n// Force reevalutation of runtime.js.\ng.regeneratorRuntime = undefined;\n\nmodule.exports = require(\"./runtime\");\n\nif (hadRuntime) {\n // Restore the original runtime.\n g.regeneratorRuntime = oldRuntime;\n} else {\n // Remove the global property added by runtime.js.\n try {\n delete g.regeneratorRuntime;\n } catch(e) {\n g.regeneratorRuntime = undefined;\n }\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/regenerator-runtime/runtime-module.js\n// module id = 93\n// module chunks = 1 2 3","/**\n * Copyright (c) 2014, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * https://raw.github.com/facebook/regenerator/master/LICENSE file. An\n * additional grant of patent rights can be found in the PATENTS file in\n * the same directory.\n */\n\n!(function(global) {\n \"use strict\";\n\n var Op = Object.prototype;\n var hasOwn = Op.hasOwnProperty;\n var undefined; // More compressible than void 0.\n var $Symbol = typeof Symbol === \"function\" ? Symbol : {};\n var iteratorSymbol = $Symbol.iterator || \"@@iterator\";\n var asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\";\n var toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n\n var inModule = typeof module === \"object\";\n var runtime = global.regeneratorRuntime;\n if (runtime) {\n if (inModule) {\n // If regeneratorRuntime is defined globally and we're in a module,\n // make the exports object identical to regeneratorRuntime.\n module.exports = runtime;\n }\n // Don't bother evaluating the rest of this file if the runtime was\n // already defined globally.\n return;\n }\n\n // Define the runtime globally (as expected by generated code) as either\n // module.exports (if we're in a module) or a new, empty object.\n runtime = global.regeneratorRuntime = inModule ? module.exports : {};\n\n function wrap(innerFn, outerFn, self, tryLocsList) {\n // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;\n var generator = Object.create(protoGenerator.prototype);\n var context = new Context(tryLocsList || []);\n\n // The ._invoke method unifies the implementations of the .next,\n // .throw, and .return methods.\n generator._invoke = makeInvokeMethod(innerFn, self, context);\n\n return generator;\n }\n runtime.wrap = wrap;\n\n // Try/catch helper to minimize deoptimizations. Returns a completion\n // record like context.tryEntries[i].completion. This interface could\n // have been (and was previously) designed to take a closure to be\n // invoked without arguments, but in all the cases we care about we\n // already have an existing method we want to call, so there's no need\n // to create a new function object. We can even get away with assuming\n // the method takes exactly one argument, since that happens to be true\n // in every case, so we don't have to touch the arguments object. The\n // only additional allocation required is the completion record, which\n // has a stable shape and so hopefully should be cheap to allocate.\n function tryCatch(fn, obj, arg) {\n try {\n return { type: \"normal\", arg: fn.call(obj, arg) };\n } catch (err) {\n return { type: \"throw\", arg: err };\n }\n }\n\n var GenStateSuspendedStart = \"suspendedStart\";\n var GenStateSuspendedYield = \"suspendedYield\";\n var GenStateExecuting = \"executing\";\n var GenStateCompleted = \"completed\";\n\n // Returning this object from the innerFn has the same effect as\n // breaking out of the dispatch switch statement.\n var ContinueSentinel = {};\n\n // Dummy constructor functions that we use as the .constructor and\n // .constructor.prototype properties for functions that return Generator\n // objects. For full spec compliance, you may wish to configure your\n // minifier not to mangle the names of these two functions.\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n\n // This is a polyfill for %IteratorPrototype% for environments that\n // don't natively support it.\n var IteratorPrototype = {};\n IteratorPrototype[iteratorSymbol] = function () {\n return this;\n };\n\n var getProto = Object.getPrototypeOf;\n var NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n if (NativeIteratorPrototype &&\n NativeIteratorPrototype !== Op &&\n hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {\n // This environment has a native %IteratorPrototype%; use it instead\n // of the polyfill.\n IteratorPrototype = NativeIteratorPrototype;\n }\n\n var Gp = GeneratorFunctionPrototype.prototype =\n Generator.prototype = Object.create(IteratorPrototype);\n GeneratorFunction.prototype = Gp.constructor = GeneratorFunctionPrototype;\n GeneratorFunctionPrototype.constructor = GeneratorFunction;\n GeneratorFunctionPrototype[toStringTagSymbol] =\n GeneratorFunction.displayName = \"GeneratorFunction\";\n\n // Helper for defining the .next, .throw, and .return methods of the\n // Iterator interface in terms of a single ._invoke method.\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function(method) {\n prototype[method] = function(arg) {\n return this._invoke(method, arg);\n };\n });\n }\n\n runtime.isGeneratorFunction = function(genFun) {\n var ctor = typeof genFun === \"function\" && genFun.constructor;\n return ctor\n ? ctor === GeneratorFunction ||\n // For the native GeneratorFunction constructor, the best we can\n // do is to check its .name property.\n (ctor.displayName || ctor.name) === \"GeneratorFunction\"\n : false;\n };\n\n runtime.mark = function(genFun) {\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);\n } else {\n genFun.__proto__ = GeneratorFunctionPrototype;\n if (!(toStringTagSymbol in genFun)) {\n genFun[toStringTagSymbol] = \"GeneratorFunction\";\n }\n }\n genFun.prototype = Object.create(Gp);\n return genFun;\n };\n\n // Within the body of any async function, `await x` is transformed to\n // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test\n // `hasOwn.call(value, \"__await\")` to determine if the yielded value is\n // meant to be awaited.\n runtime.awrap = function(arg) {\n return { __await: arg };\n };\n\n function AsyncIterator(generator) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (record.type === \"throw\") {\n reject(record.arg);\n } else {\n var result = record.arg;\n var value = result.value;\n if (value &&\n typeof value === \"object\" &&\n hasOwn.call(value, \"__await\")) {\n return Promise.resolve(value.__await).then(function(value) {\n invoke(\"next\", value, resolve, reject);\n }, function(err) {\n invoke(\"throw\", err, resolve, reject);\n });\n }\n\n return Promise.resolve(value).then(function(unwrapped) {\n // When a yielded Promise is resolved, its final value becomes\n // the .value of the Promise<{value,done}> result for the\n // current iteration. If the Promise is rejected, however, the\n // result for this iteration will be rejected with the same\n // reason. Note that rejections of yielded Promises are not\n // thrown back into the generator function, as is the case\n // when an awaited Promise is rejected. This difference in\n // behavior between yield and await is important, because it\n // allows the consumer to decide what to do with the yielded\n // rejection (swallow it and continue, manually .throw it back\n // into the generator, abandon iteration, whatever). With\n // await, by contrast, there is no opportunity to examine the\n // rejection reason outside the generator function, so the\n // only option is to throw it from the await expression, and\n // let the generator function handle the exception.\n result.value = unwrapped;\n resolve(result);\n }, reject);\n }\n }\n\n if (typeof global.process === \"object\" && global.process.domain) {\n invoke = global.process.domain.bind(invoke);\n }\n\n var previousPromise;\n\n function enqueue(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new Promise(function(resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n\n return previousPromise =\n // If enqueue has been called before, then we want to wait until\n // all previous Promises have been resolved before calling invoke,\n // so that results are always delivered in the correct order. If\n // enqueue has not been called before, then it is important to\n // call invoke immediately, without waiting on a callback to fire,\n // so that the async generator function has the opportunity to do\n // any necessary setup in a predictable way. This predictability\n // is why the Promise constructor synchronously invokes its\n // executor callback, and why async functions synchronously\n // execute code before the first await. Since we implement simple\n // async functions in terms of async generators, it is especially\n // important to get this right, even though it requires care.\n previousPromise ? previousPromise.then(\n callInvokeWithMethodAndArg,\n // Avoid propagating failures to Promises returned by later\n // invocations of the iterator.\n callInvokeWithMethodAndArg\n ) : callInvokeWithMethodAndArg();\n }\n\n // Define the unified helper method that is used to implement .next,\n // .throw, and .return (see defineIteratorMethods).\n this._invoke = enqueue;\n }\n\n defineIteratorMethods(AsyncIterator.prototype);\n AsyncIterator.prototype[asyncIteratorSymbol] = function () {\n return this;\n };\n runtime.AsyncIterator = AsyncIterator;\n\n // Note that simple async functions are implemented on top of\n // AsyncIterator objects; they just return a Promise for the value of\n // the final result produced by the iterator.\n runtime.async = function(innerFn, outerFn, self, tryLocsList) {\n var iter = new AsyncIterator(\n wrap(innerFn, outerFn, self, tryLocsList)\n );\n\n return runtime.isGeneratorFunction(outerFn)\n ? iter // If outerFn is a generator, return the full iterator.\n : iter.next().then(function(result) {\n return result.done ? result.value : iter.next();\n });\n };\n\n function makeInvokeMethod(innerFn, self, context) {\n var state = GenStateSuspendedStart;\n\n return function invoke(method, arg) {\n if (state === GenStateExecuting) {\n throw new Error(\"Generator is already running\");\n }\n\n if (state === GenStateCompleted) {\n if (method === \"throw\") {\n throw arg;\n }\n\n // Be forgiving, per 25.3.3.3.3 of the spec:\n // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume\n return doneResult();\n }\n\n context.method = method;\n context.arg = arg;\n\n while (true) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n\n if (context.method === \"next\") {\n // Setting context._sent for legacy support of Babel's\n // function.sent implementation.\n context.sent = context._sent = context.arg;\n\n } else if (context.method === \"throw\") {\n if (state === GenStateSuspendedStart) {\n state = GenStateCompleted;\n throw context.arg;\n }\n\n context.dispatchException(context.arg);\n\n } else if (context.method === \"return\") {\n context.abrupt(\"return\", context.arg);\n }\n\n state = GenStateExecuting;\n\n var record = tryCatch(innerFn, self, context);\n if (record.type === \"normal\") {\n // If an exception is thrown from innerFn, we leave state ===\n // GenStateExecuting and loop back for another invocation.\n state = context.done\n ? GenStateCompleted\n : GenStateSuspendedYield;\n\n if (record.arg === ContinueSentinel) {\n continue;\n }\n\n return {\n value: record.arg,\n done: context.done\n };\n\n } else if (record.type === \"throw\") {\n state = GenStateCompleted;\n // Dispatch the exception by looping back around to the\n // context.dispatchException(context.arg) call above.\n context.method = \"throw\";\n context.arg = record.arg;\n }\n }\n };\n }\n\n // Call delegate.iterator[context.method](context.arg) and handle the\n // result, either by returning a { value, done } result from the\n // delegate iterator, or by modifying context.method and context.arg,\n // setting context.delegate to null, and returning the ContinueSentinel.\n function maybeInvokeDelegate(delegate, context) {\n var method = delegate.iterator[context.method];\n if (method === undefined) {\n // A .throw or .return when the delegate iterator has no .throw\n // method always terminates the yield* loop.\n context.delegate = null;\n\n if (context.method === \"throw\") {\n if (delegate.iterator.return) {\n // If the delegate iterator has a return method, give it a\n // chance to clean up.\n context.method = \"return\";\n context.arg = undefined;\n maybeInvokeDelegate(delegate, context);\n\n if (context.method === \"throw\") {\n // If maybeInvokeDelegate(context) changed context.method from\n // \"return\" to \"throw\", let that override the TypeError below.\n return ContinueSentinel;\n }\n }\n\n context.method = \"throw\";\n context.arg = new TypeError(\n \"The iterator does not provide a 'throw' method\");\n }\n\n return ContinueSentinel;\n }\n\n var record = tryCatch(method, delegate.iterator, context.arg);\n\n if (record.type === \"throw\") {\n context.method = \"throw\";\n context.arg = record.arg;\n context.delegate = null;\n return ContinueSentinel;\n }\n\n var info = record.arg;\n\n if (! info) {\n context.method = \"throw\";\n context.arg = new TypeError(\"iterator result is not an object\");\n context.delegate = null;\n return ContinueSentinel;\n }\n\n if (info.done) {\n // Assign the result of the finished delegate to the temporary\n // variable specified by delegate.resultName (see delegateYield).\n context[delegate.resultName] = info.value;\n\n // Resume execution at the desired location (see delegateYield).\n context.next = delegate.nextLoc;\n\n // If context.method was \"throw\" but the delegate handled the\n // exception, let the outer generator proceed normally. If\n // context.method was \"next\", forget context.arg since it has been\n // \"consumed\" by the delegate iterator. If context.method was\n // \"return\", allow the original .return call to continue in the\n // outer generator.\n if (context.method !== \"return\") {\n context.method = \"next\";\n context.arg = undefined;\n }\n\n } else {\n // Re-yield the result returned by the delegate method.\n return info;\n }\n\n // The delegate iterator is finished, so forget it and continue with\n // the outer generator.\n context.delegate = null;\n return ContinueSentinel;\n }\n\n // Define Generator.prototype.{next,throw,return} in terms of the\n // unified ._invoke helper method.\n defineIteratorMethods(Gp);\n\n Gp[toStringTagSymbol] = \"Generator\";\n\n // A Generator should always return itself as the iterator object when the\n // @@iterator function is called on it. Some browsers' implementations of the\n // iterator prototype chain incorrectly implement this, causing the Generator\n // object to not be returned from this call. This ensures that doesn't happen.\n // See https://github.com/facebook/regenerator/issues/274 for more details.\n Gp[iteratorSymbol] = function() {\n return this;\n };\n\n Gp.toString = function() {\n return \"[object Generator]\";\n };\n\n function pushTryEntry(locs) {\n var entry = { tryLoc: locs[0] };\n\n if (1 in locs) {\n entry.catchLoc = locs[1];\n }\n\n if (2 in locs) {\n entry.finallyLoc = locs[2];\n entry.afterLoc = locs[3];\n }\n\n this.tryEntries.push(entry);\n }\n\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\";\n delete record.arg;\n entry.completion = record;\n }\n\n function Context(tryLocsList) {\n // The root entry object (effectively a try statement without a catch\n // or a finally block) gives us a place to store values thrown from\n // locations where there is no enclosing try statement.\n this.tryEntries = [{ tryLoc: \"root\" }];\n tryLocsList.forEach(pushTryEntry, this);\n this.reset(true);\n }\n\n runtime.keys = function(object) {\n var keys = [];\n for (var key in object) {\n keys.push(key);\n }\n keys.reverse();\n\n // Rather than returning an object with a next method, we keep\n // things simple and return the next function itself.\n return function next() {\n while (keys.length) {\n var key = keys.pop();\n if (key in object) {\n next.value = key;\n next.done = false;\n return next;\n }\n }\n\n // To avoid creating an additional object, we just hang the .value\n // and .done properties off the next function object itself. This\n // also ensures that the minifier will not anonymize the function.\n next.done = true;\n return next;\n };\n };\n\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) {\n return iteratorMethod.call(iterable);\n }\n\n if (typeof iterable.next === \"function\") {\n return iterable;\n }\n\n if (!isNaN(iterable.length)) {\n var i = -1, next = function next() {\n while (++i < iterable.length) {\n if (hasOwn.call(iterable, i)) {\n next.value = iterable[i];\n next.done = false;\n return next;\n }\n }\n\n next.value = undefined;\n next.done = true;\n\n return next;\n };\n\n return next.next = next;\n }\n }\n\n // Return an iterator with no values.\n return { next: doneResult };\n }\n runtime.values = values;\n\n function doneResult() {\n return { value: undefined, done: true };\n }\n\n Context.prototype = {\n constructor: Context,\n\n reset: function(skipTempReset) {\n this.prev = 0;\n this.next = 0;\n // Resetting context._sent for legacy support of Babel's\n // function.sent implementation.\n this.sent = this._sent = undefined;\n this.done = false;\n this.delegate = null;\n\n this.method = \"next\";\n this.arg = undefined;\n\n this.tryEntries.forEach(resetTryEntry);\n\n if (!skipTempReset) {\n for (var name in this) {\n // Not sure about the optimal order of these conditions:\n if (name.charAt(0) === \"t\" &&\n hasOwn.call(this, name) &&\n !isNaN(+name.slice(1))) {\n this[name] = undefined;\n }\n }\n }\n },\n\n stop: function() {\n this.done = true;\n\n var rootEntry = this.tryEntries[0];\n var rootRecord = rootEntry.completion;\n if (rootRecord.type === \"throw\") {\n throw rootRecord.arg;\n }\n\n return this.rval;\n },\n\n dispatchException: function(exception) {\n if (this.done) {\n throw exception;\n }\n\n var context = this;\n function handle(loc, caught) {\n record.type = \"throw\";\n record.arg = exception;\n context.next = loc;\n\n if (caught) {\n // If the dispatched exception was caught by a catch block,\n // then let that catch block handle the exception normally.\n context.method = \"next\";\n context.arg = undefined;\n }\n\n return !! caught;\n }\n\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n var record = entry.completion;\n\n if (entry.tryLoc === \"root\") {\n // Exception thrown outside of any try block that could handle\n // it, so set the completion value of the entire function to\n // throw the exception.\n return handle(\"end\");\n }\n\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\");\n var hasFinally = hasOwn.call(entry, \"finallyLoc\");\n\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n } else if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) {\n return handle(entry.catchLoc, true);\n }\n\n } else if (hasFinally) {\n if (this.prev < entry.finallyLoc) {\n return handle(entry.finallyLoc);\n }\n\n } else {\n throw new Error(\"try statement without catch or finally\");\n }\n }\n }\n },\n\n abrupt: function(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev &&\n hasOwn.call(entry, \"finallyLoc\") &&\n this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n\n if (finallyEntry &&\n (type === \"break\" ||\n type === \"continue\") &&\n finallyEntry.tryLoc <= arg &&\n arg <= finallyEntry.finallyLoc) {\n // Ignore the finally entry if control is not jumping to a\n // location outside the try/catch block.\n finallyEntry = null;\n }\n\n var record = finallyEntry ? finallyEntry.completion : {};\n record.type = type;\n record.arg = arg;\n\n if (finallyEntry) {\n this.method = \"next\";\n this.next = finallyEntry.finallyLoc;\n return ContinueSentinel;\n }\n\n return this.complete(record);\n },\n\n complete: function(record, afterLoc) {\n if (record.type === \"throw\") {\n throw record.arg;\n }\n\n if (record.type === \"break\" ||\n record.type === \"continue\") {\n this.next = record.arg;\n } else if (record.type === \"return\") {\n this.rval = this.arg = record.arg;\n this.method = \"return\";\n this.next = \"end\";\n } else if (record.type === \"normal\" && afterLoc) {\n this.next = afterLoc;\n }\n\n return ContinueSentinel;\n },\n\n finish: function(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) {\n this.complete(entry.completion, entry.afterLoc);\n resetTryEntry(entry);\n return ContinueSentinel;\n }\n }\n },\n\n \"catch\": function(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (record.type === \"throw\") {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n\n // The context.catch method must only be called with a location\n // argument that corresponds to a known catch block.\n throw new Error(\"illegal catch attempt\");\n },\n\n delegateYield: function(iterable, resultName, nextLoc) {\n this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n };\n\n if (this.method === \"next\") {\n // Deliberately forget the last sent value so that we don't\n // accidentally pass it on to the delegate.\n this.arg = undefined;\n }\n\n return ContinueSentinel;\n }\n };\n})(\n // Among the various tricks for obtaining a reference to the global\n // object, this seems to be the most reliable technique that does not\n // use indirect eval (which violates Content Security Policy).\n typeof global === \"object\" ? global :\n typeof window === \"object\" ? window :\n typeof self === \"object\" ? self : this\n);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/regenerator-runtime/runtime.js\n// module id = 94\n// module chunks = 1 2 3","\"use strict\";\n\nexports.__esModule = true;\n\nvar _promise = require(\"../core-js/promise\");\n\nvar _promise2 = _interopRequireDefault(_promise);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = function (fn) {\n return function () {\n var gen = fn.apply(this, arguments);\n return new _promise2.default(function (resolve, reject) {\n function step(key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n return _promise2.default.resolve(value).then(function (value) {\n step(\"next\", value);\n }, function (err) {\n step(\"throw\", err);\n });\n }\n }\n\n return step(\"next\");\n });\n };\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/helpers/asyncToGenerator.js\n// module id = 95\n// module chunks = 1 2 3","require('../modules/es6.object.to-string');\nrequire('../modules/es6.string.iterator');\nrequire('../modules/web.dom.iterable');\nrequire('../modules/es6.promise');\nmodule.exports = require('../modules/_core').Promise;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/promise.js\n// module id = 96\n// module chunks = 1 2 3","var toInteger = require('./_to-integer')\n , defined = require('./_defined');\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function(TO_STRING){\n return function(that, pos){\n var s = String(defined(that))\n , i = toInteger(pos)\n , l = s.length\n , a, b;\n if(i < 0 || i >= l)return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_string-at.js\n// module id = 97\n// module chunks = 1 2 3","'use strict';\nvar create = require('./_object-create')\n , descriptor = require('./_property-desc')\n , setToStringTag = require('./_set-to-string-tag')\n , IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nrequire('./_hide')(IteratorPrototype, require('./_wks')('iterator'), function(){ return this; });\n\nmodule.exports = function(Constructor, NAME, next){\n Constructor.prototype = create(IteratorPrototype, {next: descriptor(1, next)});\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_iter-create.js\n// module id = 98\n// module chunks = 1 2 3","var dP = require('./_object-dp')\n , anObject = require('./_an-object')\n , getKeys = require('./_object-keys');\n\nmodule.exports = require('./_descriptors') ? Object.defineProperties : function defineProperties(O, Properties){\n anObject(O);\n var keys = getKeys(Properties)\n , length = keys.length\n , i = 0\n , P;\n while(length > i)dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-dps.js\n// module id = 99\n// module chunks = 1 2 3","// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = require('./_to-iobject')\n , toLength = require('./_to-length')\n , toIndex = require('./_to-index');\nmodule.exports = function(IS_INCLUDES){\n return function($this, el, fromIndex){\n var O = toIObject($this)\n , length = toLength(O.length)\n , index = toIndex(fromIndex, length)\n , value;\n // Array#includes uses SameValueZero equality algorithm\n if(IS_INCLUDES && el != el)while(length > index){\n value = O[index++];\n if(value != value)return true;\n // Array#toIndex ignores holes, Array#includes - not\n } else for(;length > index; index++)if(IS_INCLUDES || index in O){\n if(O[index] === el)return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_array-includes.js\n// module id = 100\n// module chunks = 1 2 3","var toInteger = require('./_to-integer')\n , max = Math.max\n , min = Math.min;\nmodule.exports = function(index, length){\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_to-index.js\n// module id = 101\n// module chunks = 1 2 3","// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = require('./_has')\n , toObject = require('./_to-object')\n , IE_PROTO = require('./_shared-key')('IE_PROTO')\n , ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function(O){\n O = toObject(O);\n if(has(O, IE_PROTO))return O[IE_PROTO];\n if(typeof O.constructor == 'function' && O instanceof O.constructor){\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-gpo.js\n// module id = 102\n// module chunks = 1 2 3","'use strict';\nvar addToUnscopables = require('./_add-to-unscopables')\n , step = require('./_iter-step')\n , Iterators = require('./_iterators')\n , toIObject = require('./_to-iobject');\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = require('./_iter-define')(Array, 'Array', function(iterated, kind){\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function(){\n var O = this._t\n , kind = this._k\n , index = this._i++;\n if(!O || index >= O.length){\n this._t = undefined;\n return step(1);\n }\n if(kind == 'keys' )return step(0, index);\n if(kind == 'values')return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es6.array.iterator.js\n// module id = 103\n// module chunks = 1 2 3","module.exports = function(){ /* empty */ };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_add-to-unscopables.js\n// module id = 104\n// module chunks = 1 2 3","'use strict';\nvar LIBRARY = require('./_library')\n , global = require('./_global')\n , ctx = require('./_ctx')\n , classof = require('./_classof')\n , $export = require('./_export')\n , isObject = require('./_is-object')\n , aFunction = require('./_a-function')\n , anInstance = require('./_an-instance')\n , forOf = require('./_for-of')\n , speciesConstructor = require('./_species-constructor')\n , task = require('./_task').set\n , microtask = require('./_microtask')()\n , PROMISE = 'Promise'\n , TypeError = global.TypeError\n , process = global.process\n , $Promise = global[PROMISE]\n , process = global.process\n , isNode = classof(process) == 'process'\n , empty = function(){ /* empty */ }\n , Internal, GenericPromiseCapability, Wrapper;\n\nvar USE_NATIVE = !!function(){\n try {\n // correct subclassing with @@species support\n var promise = $Promise.resolve(1)\n , FakePromise = (promise.constructor = {})[require('./_wks')('species')] = function(exec){ exec(empty, empty); };\n // unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return (isNode || typeof PromiseRejectionEvent == 'function') && promise.then(empty) instanceof FakePromise;\n } catch(e){ /* empty */ }\n}();\n\n// helpers\nvar sameConstructor = function(a, b){\n // with library wrapper special case\n return a === b || a === $Promise && b === Wrapper;\n};\nvar isThenable = function(it){\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\nvar newPromiseCapability = function(C){\n return sameConstructor($Promise, C)\n ? new PromiseCapability(C)\n : new GenericPromiseCapability(C);\n};\nvar PromiseCapability = GenericPromiseCapability = function(C){\n var resolve, reject;\n this.promise = new C(function($$resolve, $$reject){\n if(resolve !== undefined || reject !== undefined)throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n};\nvar perform = function(exec){\n try {\n exec();\n } catch(e){\n return {error: e};\n }\n};\nvar notify = function(promise, isReject){\n if(promise._n)return;\n promise._n = true;\n var chain = promise._c;\n microtask(function(){\n var value = promise._v\n , ok = promise._s == 1\n , i = 0;\n var run = function(reaction){\n var handler = ok ? reaction.ok : reaction.fail\n , resolve = reaction.resolve\n , reject = reaction.reject\n , domain = reaction.domain\n , result, then;\n try {\n if(handler){\n if(!ok){\n if(promise._h == 2)onHandleUnhandled(promise);\n promise._h = 1;\n }\n if(handler === true)result = value;\n else {\n if(domain)domain.enter();\n result = handler(value);\n if(domain)domain.exit();\n }\n if(result === reaction.promise){\n reject(TypeError('Promise-chain cycle'));\n } else if(then = isThenable(result)){\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch(e){\n reject(e);\n }\n };\n while(chain.length > i)run(chain[i++]); // variable length - can't use forEach\n promise._c = [];\n promise._n = false;\n if(isReject && !promise._h)onUnhandled(promise);\n });\n};\nvar onUnhandled = function(promise){\n task.call(global, function(){\n var value = promise._v\n , abrupt, handler, console;\n if(isUnhandled(promise)){\n abrupt = perform(function(){\n if(isNode){\n process.emit('unhandledRejection', value, promise);\n } else if(handler = global.onunhandledrejection){\n handler({promise: promise, reason: value});\n } else if((console = global.console) && console.error){\n console.error('Unhandled promise rejection', value);\n }\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n promise._h = isNode || isUnhandled(promise) ? 2 : 1;\n } promise._a = undefined;\n if(abrupt)throw abrupt.error;\n });\n};\nvar isUnhandled = function(promise){\n if(promise._h == 1)return false;\n var chain = promise._a || promise._c\n , i = 0\n , reaction;\n while(chain.length > i){\n reaction = chain[i++];\n if(reaction.fail || !isUnhandled(reaction.promise))return false;\n } return true;\n};\nvar onHandleUnhandled = function(promise){\n task.call(global, function(){\n var handler;\n if(isNode){\n process.emit('rejectionHandled', promise);\n } else if(handler = global.onrejectionhandled){\n handler({promise: promise, reason: promise._v});\n }\n });\n};\nvar $reject = function(value){\n var promise = this;\n if(promise._d)return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n promise._v = value;\n promise._s = 2;\n if(!promise._a)promise._a = promise._c.slice();\n notify(promise, true);\n};\nvar $resolve = function(value){\n var promise = this\n , then;\n if(promise._d)return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n try {\n if(promise === value)throw TypeError(\"Promise can't be resolved itself\");\n if(then = isThenable(value)){\n microtask(function(){\n var wrapper = {_w: promise, _d: false}; // wrap\n try {\n then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));\n } catch(e){\n $reject.call(wrapper, e);\n }\n });\n } else {\n promise._v = value;\n promise._s = 1;\n notify(promise, false);\n }\n } catch(e){\n $reject.call({_w: promise, _d: false}, e); // wrap\n }\n};\n\n// constructor polyfill\nif(!USE_NATIVE){\n // 25.4.3.1 Promise(executor)\n $Promise = function Promise(executor){\n anInstance(this, $Promise, PROMISE, '_h');\n aFunction(executor);\n Internal.call(this);\n try {\n executor(ctx($resolve, this, 1), ctx($reject, this, 1));\n } catch(err){\n $reject.call(this, err);\n }\n };\n Internal = function Promise(executor){\n this._c = []; // <- awaiting reactions\n this._a = undefined; // <- checked in isUnhandled reactions\n this._s = 0; // <- state\n this._d = false; // <- done\n this._v = undefined; // <- value\n this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled\n this._n = false; // <- notify\n };\n Internal.prototype = require('./_redefine-all')($Promise.prototype, {\n // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)\n then: function then(onFulfilled, onRejected){\n var reaction = newPromiseCapability(speciesConstructor(this, $Promise));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = isNode ? process.domain : undefined;\n this._c.push(reaction);\n if(this._a)this._a.push(reaction);\n if(this._s)notify(this, false);\n return reaction.promise;\n },\n // 25.4.5.1 Promise.prototype.catch(onRejected)\n 'catch': function(onRejected){\n return this.then(undefined, onRejected);\n }\n });\n PromiseCapability = function(){\n var promise = new Internal;\n this.promise = promise;\n this.resolve = ctx($resolve, promise, 1);\n this.reject = ctx($reject, promise, 1);\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, {Promise: $Promise});\nrequire('./_set-to-string-tag')($Promise, PROMISE);\nrequire('./_set-species')(PROMISE);\nWrapper = require('./_core')[PROMISE];\n\n// statics\n$export($export.S + $export.F * !USE_NATIVE, PROMISE, {\n // 25.4.4.5 Promise.reject(r)\n reject: function reject(r){\n var capability = newPromiseCapability(this)\n , $$reject = capability.reject;\n $$reject(r);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {\n // 25.4.4.6 Promise.resolve(x)\n resolve: function resolve(x){\n // instanceof instead of internal slot check because we should fix it without replacement native Promise core\n if(x instanceof $Promise && sameConstructor(x.constructor, this))return x;\n var capability = newPromiseCapability(this)\n , $$resolve = capability.resolve;\n $$resolve(x);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * !(USE_NATIVE && require('./_iter-detect')(function(iter){\n $Promise.all(iter)['catch'](empty);\n})), PROMISE, {\n // 25.4.4.1 Promise.all(iterable)\n all: function all(iterable){\n var C = this\n , capability = newPromiseCapability(C)\n , resolve = capability.resolve\n , reject = capability.reject;\n var abrupt = perform(function(){\n var values = []\n , index = 0\n , remaining = 1;\n forOf(iterable, false, function(promise){\n var $index = index++\n , alreadyCalled = false;\n values.push(undefined);\n remaining++;\n C.resolve(promise).then(function(value){\n if(alreadyCalled)return;\n alreadyCalled = true;\n values[$index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if(abrupt)reject(abrupt.error);\n return capability.promise;\n },\n // 25.4.4.4 Promise.race(iterable)\n race: function race(iterable){\n var C = this\n , capability = newPromiseCapability(C)\n , reject = capability.reject;\n var abrupt = perform(function(){\n forOf(iterable, false, function(promise){\n C.resolve(promise).then(capability.resolve, reject);\n });\n });\n if(abrupt)reject(abrupt.error);\n return capability.promise;\n }\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es6.promise.js\n// module id = 105\n// module chunks = 1 2 3","// 7.3.20 SpeciesConstructor(O, defaultConstructor)\nvar anObject = require('./_an-object')\n , aFunction = require('./_a-function')\n , SPECIES = require('./_wks')('species');\nmodule.exports = function(O, D){\n var C = anObject(O).constructor, S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_species-constructor.js\n// module id = 106\n// module chunks = 1 2 3","// fast apply, http://jsperf.lnkit.com/fast-apply/5\nmodule.exports = function(fn, args, that){\n var un = that === undefined;\n switch(args.length){\n case 0: return un ? fn()\n : fn.call(that);\n case 1: return un ? fn(args[0])\n : fn.call(that, args[0]);\n case 2: return un ? fn(args[0], args[1])\n : fn.call(that, args[0], args[1]);\n case 3: return un ? fn(args[0], args[1], args[2])\n : fn.call(that, args[0], args[1], args[2]);\n case 4: return un ? fn(args[0], args[1], args[2], args[3])\n : fn.call(that, args[0], args[1], args[2], args[3]);\n } return fn.apply(that, args);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_invoke.js\n// module id = 107\n// module chunks = 1 2 3","var global = require('./_global')\n , macrotask = require('./_task').set\n , Observer = global.MutationObserver || global.WebKitMutationObserver\n , process = global.process\n , Promise = global.Promise\n , isNode = require('./_cof')(process) == 'process';\n\nmodule.exports = function(){\n var head, last, notify;\n\n var flush = function(){\n var parent, fn;\n if(isNode && (parent = process.domain))parent.exit();\n while(head){\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch(e){\n if(head)notify();\n else last = undefined;\n throw e;\n }\n } last = undefined;\n if(parent)parent.enter();\n };\n\n // Node.js\n if(isNode){\n notify = function(){\n process.nextTick(flush);\n };\n // browsers with MutationObserver\n } else if(Observer){\n var toggle = true\n , node = document.createTextNode('');\n new Observer(flush).observe(node, {characterData: true}); // eslint-disable-line no-new\n notify = function(){\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if(Promise && Promise.resolve){\n var promise = Promise.resolve();\n notify = function(){\n promise.then(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function(){\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n\n return function(fn){\n var task = {fn: fn, next: undefined};\n if(last)last.next = task;\n if(!head){\n head = task;\n notify();\n } last = task;\n };\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_microtask.js\n// module id = 108\n// module chunks = 1 2 3","module.exports = { \"default\": require(\"core-js/library/fn/is-iterable\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/is-iterable.js\n// module id = 109\n// module chunks = 1 2 3","require('../modules/web.dom.iterable');\nrequire('../modules/es6.string.iterator');\nmodule.exports = require('../modules/core.is-iterable');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/is-iterable.js\n// module id = 110\n// module chunks = 1 2 3","var classof = require('./_classof')\n , ITERATOR = require('./_wks')('iterator')\n , Iterators = require('./_iterators');\nmodule.exports = require('./_core').isIterable = function(it){\n var O = Object(it);\n return O[ITERATOR] !== undefined\n || '@@iterator' in O\n || Iterators.hasOwnProperty(classof(O));\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/core.is-iterable.js\n// module id = 111\n// module chunks = 1 2 3","module.exports = { \"default\": require(\"core-js/library/fn/get-iterator\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/get-iterator.js\n// module id = 112\n// module chunks = 1 2 3","require('../modules/web.dom.iterable');\nrequire('../modules/es6.string.iterator');\nmodule.exports = require('../modules/core.get-iterator');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/get-iterator.js\n// module id = 113\n// module chunks = 1 2 3","var anObject = require('./_an-object')\n , get = require('./core.get-iterator-method');\nmodule.exports = require('./_core').getIterator = function(it){\n var iterFn = get(it);\n if(typeof iterFn != 'function')throw TypeError(it + ' is not iterable!');\n return anObject(iterFn.call(it));\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/core.get-iterator.js\n// module id = 114\n// module chunks = 1 2 3","import {DEFAULT_LOG_TEMPLATE} from './constants';\n\n// NOTE: jQuery checking\nif (!('$' in window) || typeof window.$ !== 'function') {\n throw Error(`${DEFAULT_LOG_TEMPLATE} missing jQuery library on page`);\n}\n\n// NOTE: Cookies checking\nif (!('Cookies' in window) || typeof window.Cookies !== 'function') {\n throw Error(`${DEFAULT_LOG_TEMPLATE} missing Cookies library on page`);\n}\n\n// NOTE: RSVP checking\nif (!('RSVP' in window) || typeof window.RSVP !== 'object') {\n throw Error(`${DEFAULT_LOG_TEMPLATE} missing RSVP library on page`);\n}\n\n// NOTE: InView jQuery Plugin checking\nif (!('event' in window.$) ||\n !('special' in window.$.event) ||\n !('inview' in window.$.event.special) ||\n typeof window.$.event.special.inview !== 'object'\n) {\n throw Error(`${DEFAULT_LOG_TEMPLATE} missing InView jQuery plugin on page`);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/check-dependencies.js","require('../../modules/es6.string.iterator');\nrequire('../../modules/web.dom.iterable');\nmodule.exports = require('../../modules/_wks-ext').f('iterator');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/symbol/iterator.js\n// module id = 116\n// module chunks = 1 2 3","require('../../modules/es6.symbol');\nrequire('../../modules/es6.object.to-string');\nrequire('../../modules/es7.symbol.async-iterator');\nrequire('../../modules/es7.symbol.observable');\nmodule.exports = require('../../modules/_core').Symbol;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/symbol/index.js\n// module id = 117\n// module chunks = 1 2 3","'use strict';\n// ECMAScript 6 symbols shim\nvar global = require('./_global')\n , has = require('./_has')\n , DESCRIPTORS = require('./_descriptors')\n , $export = require('./_export')\n , redefine = require('./_redefine')\n , META = require('./_meta').KEY\n , $fails = require('./_fails')\n , shared = require('./_shared')\n , setToStringTag = require('./_set-to-string-tag')\n , uid = require('./_uid')\n , wks = require('./_wks')\n , wksExt = require('./_wks-ext')\n , wksDefine = require('./_wks-define')\n , keyOf = require('./_keyof')\n , enumKeys = require('./_enum-keys')\n , isArray = require('./_is-array')\n , anObject = require('./_an-object')\n , toIObject = require('./_to-iobject')\n , toPrimitive = require('./_to-primitive')\n , createDesc = require('./_property-desc')\n , _create = require('./_object-create')\n , gOPNExt = require('./_object-gopn-ext')\n , $GOPD = require('./_object-gopd')\n , $DP = require('./_object-dp')\n , $keys = require('./_object-keys')\n , gOPD = $GOPD.f\n , dP = $DP.f\n , gOPN = gOPNExt.f\n , $Symbol = global.Symbol\n , $JSON = global.JSON\n , _stringify = $JSON && $JSON.stringify\n , PROTOTYPE = 'prototype'\n , HIDDEN = wks('_hidden')\n , TO_PRIMITIVE = wks('toPrimitive')\n , isEnum = {}.propertyIsEnumerable\n , SymbolRegistry = shared('symbol-registry')\n , AllSymbols = shared('symbols')\n , OPSymbols = shared('op-symbols')\n , ObjectProto = Object[PROTOTYPE]\n , USE_NATIVE = typeof $Symbol == 'function'\n , QObject = global.QObject;\n// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173\nvar setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;\n\n// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687\nvar setSymbolDesc = DESCRIPTORS && $fails(function(){\n return _create(dP({}, 'a', {\n get: function(){ return dP(this, 'a', {value: 7}).a; }\n })).a != 7;\n}) ? function(it, key, D){\n var protoDesc = gOPD(ObjectProto, key);\n if(protoDesc)delete ObjectProto[key];\n dP(it, key, D);\n if(protoDesc && it !== ObjectProto)dP(ObjectProto, key, protoDesc);\n} : dP;\n\nvar wrap = function(tag){\n var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);\n sym._k = tag;\n return sym;\n};\n\nvar isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function(it){\n return typeof it == 'symbol';\n} : function(it){\n return it instanceof $Symbol;\n};\n\nvar $defineProperty = function defineProperty(it, key, D){\n if(it === ObjectProto)$defineProperty(OPSymbols, key, D);\n anObject(it);\n key = toPrimitive(key, true);\n anObject(D);\n if(has(AllSymbols, key)){\n if(!D.enumerable){\n if(!has(it, HIDDEN))dP(it, HIDDEN, createDesc(1, {}));\n it[HIDDEN][key] = true;\n } else {\n if(has(it, HIDDEN) && it[HIDDEN][key])it[HIDDEN][key] = false;\n D = _create(D, {enumerable: createDesc(0, false)});\n } return setSymbolDesc(it, key, D);\n } return dP(it, key, D);\n};\nvar $defineProperties = function defineProperties(it, P){\n anObject(it);\n var keys = enumKeys(P = toIObject(P))\n , i = 0\n , l = keys.length\n , key;\n while(l > i)$defineProperty(it, key = keys[i++], P[key]);\n return it;\n};\nvar $create = function create(it, P){\n return P === undefined ? _create(it) : $defineProperties(_create(it), P);\n};\nvar $propertyIsEnumerable = function propertyIsEnumerable(key){\n var E = isEnum.call(this, key = toPrimitive(key, true));\n if(this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return false;\n return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;\n};\nvar $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key){\n it = toIObject(it);\n key = toPrimitive(key, true);\n if(it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key))return;\n var D = gOPD(it, key);\n if(D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key]))D.enumerable = true;\n return D;\n};\nvar $getOwnPropertyNames = function getOwnPropertyNames(it){\n var names = gOPN(toIObject(it))\n , result = []\n , i = 0\n , key;\n while(names.length > i){\n if(!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META)result.push(key);\n } return result;\n};\nvar $getOwnPropertySymbols = function getOwnPropertySymbols(it){\n var IS_OP = it === ObjectProto\n , names = gOPN(IS_OP ? OPSymbols : toIObject(it))\n , result = []\n , i = 0\n , key;\n while(names.length > i){\n if(has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true))result.push(AllSymbols[key]);\n } return result;\n};\n\n// 19.4.1.1 Symbol([description])\nif(!USE_NATIVE){\n $Symbol = function Symbol(){\n if(this instanceof $Symbol)throw TypeError('Symbol is not a constructor!');\n var tag = uid(arguments.length > 0 ? arguments[0] : undefined);\n var $set = function(value){\n if(this === ObjectProto)$set.call(OPSymbols, value);\n if(has(this, HIDDEN) && has(this[HIDDEN], tag))this[HIDDEN][tag] = false;\n setSymbolDesc(this, tag, createDesc(1, value));\n };\n if(DESCRIPTORS && setter)setSymbolDesc(ObjectProto, tag, {configurable: true, set: $set});\n return wrap(tag);\n };\n redefine($Symbol[PROTOTYPE], 'toString', function toString(){\n return this._k;\n });\n\n $GOPD.f = $getOwnPropertyDescriptor;\n $DP.f = $defineProperty;\n require('./_object-gopn').f = gOPNExt.f = $getOwnPropertyNames;\n require('./_object-pie').f = $propertyIsEnumerable;\n require('./_object-gops').f = $getOwnPropertySymbols;\n\n if(DESCRIPTORS && !require('./_library')){\n redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);\n }\n\n wksExt.f = function(name){\n return wrap(wks(name));\n }\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, {Symbol: $Symbol});\n\nfor(var symbols = (\n // 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14\n 'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'\n).split(','), i = 0; symbols.length > i; )wks(symbols[i++]);\n\nfor(var symbols = $keys(wks.store), i = 0; symbols.length > i; )wksDefine(symbols[i++]);\n\n$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {\n // 19.4.2.1 Symbol.for(key)\n 'for': function(key){\n return has(SymbolRegistry, key += '')\n ? SymbolRegistry[key]\n : SymbolRegistry[key] = $Symbol(key);\n },\n // 19.4.2.5 Symbol.keyFor(sym)\n keyFor: function keyFor(key){\n if(isSymbol(key))return keyOf(SymbolRegistry, key);\n throw TypeError(key + ' is not a symbol!');\n },\n useSetter: function(){ setter = true; },\n useSimple: function(){ setter = false; }\n});\n\n$export($export.S + $export.F * !USE_NATIVE, 'Object', {\n // 19.1.2.2 Object.create(O [, Properties])\n create: $create,\n // 19.1.2.4 Object.defineProperty(O, P, Attributes)\n defineProperty: $defineProperty,\n // 19.1.2.3 Object.defineProperties(O, Properties)\n defineProperties: $defineProperties,\n // 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\n getOwnPropertyDescriptor: $getOwnPropertyDescriptor,\n // 19.1.2.7 Object.getOwnPropertyNames(O)\n getOwnPropertyNames: $getOwnPropertyNames,\n // 19.1.2.8 Object.getOwnPropertySymbols(O)\n getOwnPropertySymbols: $getOwnPropertySymbols\n});\n\n// 24.3.2 JSON.stringify(value [, replacer [, space]])\n$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function(){\n var S = $Symbol();\n // MS Edge converts symbol values to JSON as {}\n // WebKit converts symbol values to JSON as null\n // V8 throws on boxed symbols\n return _stringify([S]) != '[null]' || _stringify({a: S}) != '{}' || _stringify(Object(S)) != '{}';\n})), 'JSON', {\n stringify: function stringify(it){\n if(it === undefined || isSymbol(it))return; // IE8 returns string on undefined\n var args = [it]\n , i = 1\n , replacer, $replacer;\n while(arguments.length > i)args.push(arguments[i++]);\n replacer = args[1];\n if(typeof replacer == 'function')$replacer = replacer;\n if($replacer || !isArray(replacer))replacer = function(key, value){\n if($replacer)value = $replacer.call(this, key, value);\n if(!isSymbol(value))return value;\n };\n args[1] = replacer;\n return _stringify.apply($JSON, args);\n }\n});\n\n// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)\n$Symbol[PROTOTYPE][TO_PRIMITIVE] || require('./_hide')($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);\n// 19.4.3.5 Symbol.prototype[@@toStringTag]\nsetToStringTag($Symbol, 'Symbol');\n// 20.2.1.9 Math[@@toStringTag]\nsetToStringTag(Math, 'Math', true);\n// 24.3.3 JSON[@@toStringTag]\nsetToStringTag(global.JSON, 'JSON', true);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es6.symbol.js\n// module id = 118\n// module chunks = 1 2 3","var getKeys = require('./_object-keys')\n , toIObject = require('./_to-iobject');\nmodule.exports = function(object, el){\n var O = toIObject(object)\n , keys = getKeys(O)\n , length = keys.length\n , index = 0\n , key;\n while(length > index)if(O[key = keys[index++]] === el)return key;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_keyof.js\n// module id = 119\n// module chunks = 1 2 3","// all enumerable object keys, includes symbols\nvar getKeys = require('./_object-keys')\n , gOPS = require('./_object-gops')\n , pIE = require('./_object-pie');\nmodule.exports = function(it){\n var result = getKeys(it)\n , getSymbols = gOPS.f;\n if(getSymbols){\n var symbols = getSymbols(it)\n , isEnum = pIE.f\n , i = 0\n , key;\n while(symbols.length > i)if(isEnum.call(it, key = symbols[i++]))result.push(key);\n } return result;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_enum-keys.js\n// module id = 120\n// module chunks = 1 2 3","// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = require('./_to-iobject')\n , gOPN = require('./_object-gopn').f\n , toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function(it){\n try {\n return gOPN(it);\n } catch(e){\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it){\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-gopn-ext.js\n// module id = 121\n// module chunks = 1 2 3","var pIE = require('./_object-pie')\n , createDesc = require('./_property-desc')\n , toIObject = require('./_to-iobject')\n , toPrimitive = require('./_to-primitive')\n , has = require('./_has')\n , IE8_DOM_DEFINE = require('./_ie8-dom-define')\n , gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P){\n O = toIObject(O);\n P = toPrimitive(P, true);\n if(IE8_DOM_DEFINE)try {\n return gOPD(O, P);\n } catch(e){ /* empty */ }\n if(has(O, P))return createDesc(!pIE.f.call(O, P), O[P]);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-gopd.js\n// module id = 122\n// module chunks = 1 2 3","require('./_wks-define')('asyncIterator');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es7.symbol.async-iterator.js\n// module id = 123\n// module chunks = 1 2 3","require('./_wks-define')('observable');\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es7.symbol.observable.js\n// module id = 124\n// module chunks = 1 2 3","import app from '../application';\n\nconst\n UserTypes = Object.freeze({\n ANONYMOUS: 'anonimo'\n }),\n Genders = Object.freeze({\n FEM: 'f',\n MAS: 'm'\n }),\n VOCUSER_READY = 'vocuser:ready',\n VOCUSER_DATA = 'vocuser:userdata'\n;\n\n$(document).ready(function() {\n app.when(VOCUSER_READY).then(_onVocUserReady);\n $('body').on('vocento.gigya.products.onReady', function(event, gigyaux) {\n var gigyaUX;\n\n gigyaUX = gigyaux || window.gigyaUX;\n if (gigyaUX) {_onVocUserReady(gigyaUX);}\n });\n});\n\n/* Private */\n\nfunction _ord() {\n return Math.random() * 10000000000000;\n}\n\nfunction _onVocUserReady(gigyaux) {\n if (gigyaux.getUserType() === UserTypes.ANONYMOUS) {\n $('head').append(``);\n } else {\n $('head').append(``);\n if (typeof Voonto !== 'undefined') {\n app.when(VOCUSER_DATA).then(function(userData) {\n var gender, age;\n\n // NOTE: vocUserData promise object\n if (userData.responseGetUserInfo) {\n gender = userData.responseGetUserInfo.user &&\n userData.responseGetUserInfo.user.gender ?\n userData.responseGetUserInfo.user.gender : null;\n age = userData.responseGetUserInfo.user &&\n userData.responseGetUserInfo.user.age ?\n userData.responseGetUserInfo.user.age : null;\n }\n _onVocUserData(gender, age);\n });\n } else {\n $('body').on('vocento.gigya.accounts.onDataReady', function(event) {\n var gender, age;\n\n // NOTE: vocUserData promise object\n if (event.gigya_event) {\n gender = event.gigya_event.profile &&\n event.gigya_event.profile.gender ?\n event.gigya_event.profile.gender : null;\n age = event.gigya_event.profile &&\n event.gigya_event.profile.age ?\n event.gigya_event.profile.age : null;\n }\n _onVocUserData(gender, age);\n });\n }\n }\n}\n\nfunction _onVocUserData(gender, age) {\n switch (gender) {\n case Genders.FEM:\n $('head').append(``);\n break;\n case Genders.MAS:\n $('head').append(``);\n break;\n default:\n }\n\n switch (true) {\n case age !== '' && age <= 17:\n $('head').append(``);\n break;\n case age >= 18 && age <= 24:\n $('head').append(``);\n break;\n case age >= 25 && age <= 34:\n $('head').append(``);\n break;\n case age >= 35 && age <= 44:\n $('head').append(``);\n break;\n case age >= 45 && age <= 54:\n $('head').append(``);\n break;\n case age !== '' && age < 54:\n $('head').append(``);\n break;\n default:\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/legacy/dfp-pixel.js","require('../../modules/es6.object.freeze');\nmodule.exports = require('../../modules/_core').Object.freeze;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/object/freeze.js\n// module id = 126\n// module chunks = 1 2 3","// 19.1.2.5 Object.freeze(O)\nvar isObject = require('./_is-object')\n , meta = require('./_meta').onFreeze;\n\nrequire('./_object-sap')('freeze', function($freeze){\n return function freeze(it){\n return $freeze && isObject(it) ? $freeze(meta(it)) : it;\n };\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es6.object.freeze.js\n// module id = 127\n// module chunks = 1 2 3","import {showLog} from '../logger';\n\nconst Evented = Object.preventExtensions({\n on() {window.$(this).on(...arguments);},\n one() {window.$(this).one(...arguments);},\n off() {window.$(this).off(...arguments);},\n trigger() {\n showLog('Evented::trigger', ...arguments);\n window.$(this).trigger(...arguments);\n }\n});\n\nexport default Evented;\n\n\n\n// WEBPACK FOOTER //\n// ./src/mixins/evented.js","require('../../modules/es6.object.prevent-extensions');\nmodule.exports = require('../../modules/_core').Object.preventExtensions;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/object/prevent-extensions.js\n// module id = 129\n// module chunks = 1 2 3","// 19.1.2.15 Object.preventExtensions(O)\nvar isObject = require('./_is-object')\n , meta = require('./_meta').onFreeze;\n\nrequire('./_object-sap')('preventExtensions', function($preventExtensions){\n return function preventExtensions(it){\n return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it;\n };\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es6.object.prevent-extensions.js\n// module id = 130\n// module chunks = 1 2 3","import Globalized from './globalized';\nimport {extend} from './mixin';\nimport {\n NAMESPACE,\n DEFAULT_TIMEOUT,\n PROMISES_PROPERTY,\n DEFAULT_LOG_TEMPLATE\n} from '../constants';\nimport {showLog} from '../logger';\n\nconst\n _defers = {},\n _hasOwnProperty = Object.prototype.hasOwnProperty\n;\n\nconst Deferred = {\n whenUntil(promiseNS, time = DEFAULT_TIMEOUT) {\n showLog('[Deferred] whenUntil', {promiseNS, time});\n return new window.RSVP.Promise((resolve, reject) => {\n setTimeout(reject, time);\n this.when(promiseNS).then(resolve);\n });\n },\n\n when(promiseNS) {\n var owner, name, global;\n\n showLog('[Deferred] when', promiseNS);\n\n if (!promiseNS) {throw Error(`${DEFAULT_LOG_TEMPLATE} [Deferred] At least 1 argument needed. 0 passed.`);}\n [owner, name] = promiseNS.split(':');\n if (!owner || !name) {throw Error(`${DEFAULT_LOG_TEMPLATE} [Deferred] Illegal promise namespace name. Expected \"owner:name\".`);}\n\n if (_hasOwnProperty.call(_defers, promiseNS)) {return _defers[promiseNS].promise;}\n\n global = this.createGlobal(`${NAMESPACE}.${owner}.${PROMISES_PROPERTY}`);\n global[name] = window.RSVP.defer();\n _defers[promiseNS] = global[name];\n\n return global[name].promise;\n },\n\n promised(promiseNS, value) {\n var owner, name, global;\n\n showLog('[Deferred] promised', {promiseNS, value});\n\n if (!promiseNS) {throw Error(`${DEFAULT_LOG_TEMPLATE} [Deferred] At least 1 argument needed. 0 passed.`);}\n [owner, name] = promiseNS.split(':');\n if (!owner || !name) {throw Error(`${DEFAULT_LOG_TEMPLATE} [Deferred] Illegal promise namespace name. Expected \"owner:name\".`);}\n\n if (_hasOwnProperty.call(_defers, promiseNS)) {\n _defers[promiseNS].resolve(value);\n return this;\n }\n\n global = this.createGlobal(`${NAMESPACE}.${owner}.${PROMISES_PROPERTY}`);\n global[name] = window.RSVP.defer();\n global[name].resolve(value);\n _defers[promiseNS] = global[name];\n\n return this;\n }\n};\n\nextend(Deferred, Globalized);\n\nexport default Deferred;\n\n\n\n// WEBPACK FOOTER //\n// ./src/mixins/deferred.js","import {NAMESPACE} from '../constants';\n\nconst Globalized = {\n createGlobal(namespace) {\n var nso = window;\n\n if (!namespace) {return undefined;}\n\n namespace.split('.').forEach((prop) => {\n nso[prop] = nso[prop] || {};\n nso = nso[prop];\n });\n\n return nso;\n },\n\n lookup(namespace = NAMESPACE, root = window) {\n return namespace.split('.').reduce((that, o) => {\n return that && o in that ? that[o] : {};\n }, root);\n }\n};\n\nexport default Globalized;\n\n\n\n// WEBPACK FOOTER //\n// ./src/mixins/globalized.js","require('../../modules/es6.object.keys');\nmodule.exports = require('../../modules/_core').Object.keys;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/object/keys.js\n// module id = 133\n// module chunks = 1 2 3","// 19.1.2.14 Object.keys(O)\nvar toObject = require('./_to-object')\n , $keys = require('./_object-keys');\n\nrequire('./_object-sap')('keys', function(){\n return function keys(it){\n return $keys(toObject(it));\n };\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es6.object.keys.js\n// module id = 134\n// module chunks = 1 2 3","import {\n PAYWALL_COOKIE,\n VOCUSER_COOKIE\n} from '../constants';\n\nconst\n {Cookies} = window,\n UserType = Object.freeze({\n ANONYMOUS: 'anonimo',\n REGISTERED: 'registrado',\n SUBSCRIBER: 'suscriptor',\n TRIAL: 'trial'\n })\n;\n\nconst User = {\n getUserType() {\n var userType, paywall, pwUserType, vocUid, cookie;\n\n vocUid = decodeURIComponent(Cookies.get(VOCUSER_COOKIE));\n cookie = vocUid === 'undefined' ? {} : _jsonParse(vocUid);\n userType = UserType.ANONYMOUS; // <'anonimo' | 'registrado' | 'trial' | 'suscriptor'>\n paywall = Cookies.get(PAYWALL_COOKIE);\n if (paywall) {pwUserType = paywall.split('|').pop();}\n\n if (pwUserType) {\n userType = pwUserType;\n } else if (cookie.uid) {\n userType = UserType.REGISTERED;\n }\n\n return userType;\n }\n};\n\nexport default User;\n\n/* Private */\n\nfunction _jsonParse(vocUid) {\n var result;\n\n try {\n result = JSON.parse(vocUid);\n } catch (e1) {\n // NOTE: fix issue https://agil.vocento.com/browse/MEC-2575\n vocUid = vocUid.replace(/\\+/g, '');\n try {\n result = JSON.parse(vocUid);\n } catch (e2) {\n result = {};\n }\n }\n\n return result;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/mixins/user.js","import { version } from '../package.json';\nimport HBProviderManager from './header-bidding/provider-manager';\nimport app from './application';\nimport ConfigManager from './config-manager';\nimport {\n cargaLibreriaGPT,\n isEmpty\n} from './utils';\nimport {\n showLog,\n showWarn,\n showError\n} from './logger';\nimport {\n GPT_READY,\n GPT_TIMEOUT,\n TIMEOUT_POSICIONES_ESTANDAR,\n POSITION_FLUID,\n SLOT_RENDERED,\n SLOT_EMPTY,\n SLOT_VIEWABLE,\n HEADER_BIDDING_READY,\n PREBID_SET_TARGETINGS,\n PREBID_AUCTION_ENDED,\n AFTER_RELOAD_HB_TIMEOUT\n} from './constants';\n\nvar\n _configManager = null,\n _standardDelayed = [],\n _gptInitialized = false,\n _insertedPositions = {},\n _notDisplayedSlots = [],\n _completadasPriorizadas = false,\n _reload = false,\n _setTargetingsTimeout = 50\n ;\n\nclass Advertising {\n /**\n * Function that initialize the advertising\n * @param {object} app - Evented object\n * @param {object} configGDPMedio\n * @param {object} configGDP\n * @param {context} context$\n */\n static init(configManager, reload, context$) {\n var kruxSegments, kruxUser;\n\n const { timeoutSetTargetings } = configManager.configGDPMedio.headerBidding\n ? configManager.configGDPMedio.headerBidding\n : {};\n _configManager = null;\n _standardDelayed = [];\n _gptInitialized = false;\n _insertedPositions = {};\n _notDisplayedSlots = [];\n _completadasPriorizadas = false;\n _reload = reload;\n _setTargetingsTimeout = timeoutSetTargetings || 50;\n _configManager = configManager;\n _configManager.context$ = context$;\n // Detectamos si se fuerza via URL alguna configuracion\n _configManager.checkConfigFromURL();\n\n if (!_configManager.configGDPMedio.activo) {\n showWarn('Advertising:init:The advertising has been deactivated in the configuration of the medium!');\n return;\n }\n showLog(`Advertising:init:deviceType: ${_configManager.deviceType} , pageType: ${_configManager.pageType} , (Version ${version})`);\n\n _configManager.processConfig();\n\n if (_reload) {\n HBProviderManager.setConfig(_configManager.configGDPMedio);\n HBProviderManager.startNewAuction();\n }\n\n // Load HB and GPT libraries soon as posible for not penalize the ad visualization\n if (!_reload) {\n showLog('init:HeaderBidding init');\n HBProviderManager.init(_configManager.configGDPMedio);\n cargaLibreriaGPT();\n }\n\n\n // Inicializacion de la libreria GPT\n window.customcmd.push(function() {\n /**\n * Setting nonPersonalizedAds by default to 1.\n * if promise is resolved this value will be updated with\n * value received in the promise.\n * */\n if (!_reload) {\n window.googletag.pubads().setRequestNonPersonalizedAds(1);\n }\n window.googletag.pubads().collapseEmptyDivs();\n kruxSegments = app.lookup('Krux.vocento.segments');\n kruxUser = app.lookup('Krux.vocento.user');\n /**\n * Ambos namespace se setean unicamente en antiguo, en lo nuevo no existe.\n */\n if (_configManager.configGDPMedio.enableKrux\n && ['object', 'undefined'].indexOf(typeof kruxSegments) < 0\n && ['object', 'undefined'].indexOf(typeof kruxUser) < 0\n ) {\n window.googletag.pubads().setTargeting('ksg', window.Krux.vocento.segments);\n window.googletag.pubads().setTargeting('kuid', window.Krux.vocento.user);\n }\n _configManager.configGDPMedio.singleRequest &&\n window.googletag.pubads().enableSingleRequest();\n _configManager.configGDPMedio.syncRendering &&\n window.googletag.pubads().enableSyncRendering();\n window.googletag.enableServices();\n\n // Disparamos el evento de GPT inicializada\n showLog(`En constructor. Disparamos evento ${GPT_READY}`);\n app.trigger(GPT_READY);\n _gptInitialized = true;\n });\n\n /* NOTE: Disparamos el evento de GPT inicializado tras N segundos para liberar posibles\n recursos que esten bloqueados */\n setTimeout(function () {\n if (!_gptInitialized) {\n showWarn(`Advertising:init:Trigger event ${GPT_READY} after ${GPT_TIMEOUT}`);\n app.trigger(GPT_READY);\n }\n }, GPT_TIMEOUT);\n\n // Tratamiento de excepciones\n _configManager.checkExceptions();\n\n // Gestion de eventos de pintado de publicidad\n window.customcmd.push(function() {\n /**\n * Solo se añaden los eventListeners de slotRenderEnded e impressionViewable\n * en la primera carga. De esta forma optimizamos el rendimiento y solo se lanzan\n * los eventos necesarios y no se encolan.\n */\n if (!_reload) {\n // Gestion de evento slotRenderEnded\n window.googletag.pubads().addEventListener('slotRenderEnded', function (ev) {\n var divId, position, container$, paramsSlot, index, found;\n\n divId = ev.slot.getSlotElementId();\n position = ev.slot.getTargeting('pos');\n container$ = $(`#${divId}`);\n paramsSlot = container$.data('params');\n index = -1;\n\n if (ev.isEmpty) {\n showLog(`En constructor. slotRenderEnded. La posicion ${position} isEmpty`);\n container$.trigger(SLOT_EMPTY);\n if (_configManager.configGDPMedio.infoSlot) _infoSlotRender(paramsSlot, false);\n } else {\n showLog(`En constructor. slotRenderEnded. La posicion ${position} ha sido pintada en el DIV ${divId}`);\n container$.trigger(SLOT_RENDERED);\n if (_configManager.configGDPMedio.infoSlot) _infoSlotRender(paramsSlot, true);\n }\n\n // Añadimos el data que nos informa de que la posicion ha sido pintada.\n container$.get(0).dataset.vocVamDisplayed = true;\n\n // Comprobacion si tiene eventos post_callback o post_event\n if (paramsSlot) {\n if (paramsSlot.post_callback) {\n showLog(`En constructor. slotRenderEnded. La posicion ${position} tiene el siguiente postCallback: ${paramsSlot.post_callback}`);\n paramsSlot.post_callback();\n }\n\n if (paramsSlot.post_event) {\n showLog(`En constructor. slotRenderEnded. La posicion ${position} tiene el siguiente postEvent: ${paramsSlot.post_event}`);\n app.trigger(paramsSlot.post_event);\n }\n }\n\n // Quitamos la posicion de la lista de posiciones priorizadas\n _configManager.removePrioritizedPosition();\n\n // Quitamos la posicion de la lista de posiciones estandar encoladas\n if (_configManager.thereArePrioritizedPositions() &&\n _standardDelayed.length && !_configManager.isPrioritized(paramsSlot)\n ) {\n found = _standardDelayed.find(function(parameters) {\n index++;\n return parameters.position === position[0];\n });\n if (found) {\n _standardDelayed.splice(index, 1);\n }\n }\n\n // Si esta era la ultima priorizada pintamos las estandar\n if (!_completadasPriorizadas && (!_configManager.thereArePrioritizedPositions())) {\n _completadasPriorizadas = true;\n _displayStandarQueued();\n }\n });\n\n // Gestion de evento impressionViewable\n window.googletag.pubads().addEventListener('impressionViewable', function (ev) {\n var divId = ev.slot.getSlotElementId();\n var position = ev.slot.getTargeting('pos');\n var container$ = $(`#${divId}`);\n\n showLog(`En constructor. impressionViewable. La posicion ${position} es visible`);\n container$.trigger(SLOT_VIEWABLE);\n });\n }\n });\n\n /* NOTE: Si hay posiciones priorizadas las pintamos e invocamos el pintado de las estandar\n una vez pintadas estas */\n if (_configManager.thereArePrioritizedPositions()) {\n _displayPrioritized();\n\n /* NOTE: Si han transcurrido N segundos y todavia no se han lanzado las posiciones\n estandar las forzamos */\n setTimeout(function () {\n if (_standardDelayed.length) {\n showWarn(`Advertising:init:Display queued positions after ${TIMEOUT_POSICIONES_ESTANDAR}`);\n _completadasPriorizadas = true;\n _displayStandarQueued();\n }\n }, TIMEOUT_POSICIONES_ESTANDAR);\n }\n }\n\n /**\n * Muestra la Advertising.\n * @param {Object} datos - Puede ser un DIV obtenido con jQuery con los atributos de\n * configuracion, o bien un objeto JSON con la configuracion a aplicar\n *\n * Descripcion de parametros que puede contener el objeto JSON:\n * position => string. Posicion publicitaria a mostrar\n * id => string. ID del elemento HTML en el que se muestra\n * serverType => string. Servidor de publicidad a usar\n * hideNoAds => boolean. Oculta el elemento HTML si el adserver no ha devuelto publi\n * outOfPage => boolean. Determina si el slot de publicidad es outOfPage o no. Por\n * defecto vale false\n * defineSlot => boolean. Indica si hay que definir o no el slot\n * refresh => boolean. Se pide la posicion de publicidad aunque ya se hubiera mostrado\n * antes. Por defecto false\n * responsive => Array. Indicamos si una publi se debe pintar solo en una(s)\n * determinada(s) resolucion(es)\n * pre_callback => function. Función javascript a la que invocar previamente\n * pre_event => string. evento de precondicion\n * post_callback => function. Función javascript a la que invocar una vez disparado\n * el slotRendered\n * post_event => string. evento a disparar una vez disparado evento de slotRendered\n * oas => string. Si se rellena es el OAS a utilizar en la posicion de publicidad\n *\n * Objeto Responsive\n * El primer par de valores indica la resolucion, y en el segundo los tamanos de la posicion de\n * publi a servir, el cual puede definirse como sigue:\n * - vacio: []\n * - single array: [ancho, alto]\n * - multi array: [ [ancho1, alto1], [ancho2, alto2], ... ]\n * - string: En cuyo caso usa la funcion ads.getSizesGoogle para obtener el array\n *\n * Ejemplo llamada:\n * ads.printAds({'position': 'robapaginas', 'id': 'roba2', 'responsive': [\n * [[0, 0], []] // Small Mobile\n * ,[[350, 200], [300,150]] // Mobile\n * ,[[750, 200], 'robapaginas'] // Tablet\n * ,[[1050, 300], [[300,150],[300,250]]] // Desktop\n * ]});\n *\n *\n *\n *\n */\n static printAds(datos) {\n var params, position, idAds, prioritized, delayed;\n\n showLog('Advertising:printAds', datos);\n if (!_configManager.configGDPMedio.activo) {\n showWarn('Advertising:printAds:Ads was disabled in Media Config');\n return;\n }\n\n params = _configManager.normalizaParams(datos);\n if (params === null) {\n showWarn('Advertising:printAds:Empty params', datos);\n return;\n }\n\n position = params.position;\n idAds = _configManager.getIdDiv(params);\n if (!_configManager.isActive(params)) {\n if ($(`#${idAds}`).length && params.hideNoAds) {\n showWarn('Advertising:printAds:Hiding ADs DIV container if hideNoAds is anabled', params);\n $(`#${idAds}`).hide();\n }\n showWarn(`Advertising:printAds:Position ${position} is not active`, params);\n return;\n }\n\n if (!$(`#${idAds}`).length) {\n showWarn(`Advertising:printAds:DIV with ID ${idAds} does not exist`, params);\n return;\n }\n\n if (params.serverType === 'google') {\n /* NOTE: Si estamos en modo preview comprobamos si esta posicion hay que traerla desde el\n SW del capturador */\n if (_configManager.configGDPMedio.preview && _capturadorExistsPreview(params)) {\n showLog('Advertising:printAds:Preview mode. Getting form grabber service');\n _capturadorSetPreview(params);\n return;\n }\n\n showLog('Advertising:printAds:Check Ad-Type', params);\n prioritized = _configManager.isPrioritized(position);\n delayed = _configManager.isDelayed(position);\n\n if (prioritized && !delayed) {\n showLog('Advertising:printAds:Painting prioritized', params);\n _getAdGoogle(params, true);\n } else if (delayed) {\n showLog('Advertising:printAds:Wait for INVIEW event delayed', params);\n _displayDelayed(params);\n } else if (!_configManager.thereArePrioritizedPositions() || _completadasPriorizadas) {\n showLog('Advertising:printAds:Painting standard', params);\n if (HBProviderManager.isActive()) {\n HBProviderManager.pushAdUnitForTargetings(params.id);\n }\n _getAdGoogle(params, false);\n } else {\n showLog('Advertising:printAds:Painting queued standards', params);\n _standardDelayed.push(params);\n }\n } else {\n showWarn('Advertising:printAds:ServerType is different from google', params);\n }\n }\n\n /**\n * Get user type\n * NOTE: legacy code\n */\n static getValueUser() {\n if (!_configManager) {\n throw Error('Advertising:getValueUser:Config object not initialized');\n }\n\n return _configManager.valueUserType;\n }\n\n /**\n * Get google sizes for a given position\n * NOTE: legacy code\n */\n static getSizesGoogle(...params) {\n if (!_configManager) {\n throw Error('Advertising:getSizesGoogle:Config object not initialized');\n }\n\n return _configManager.getSizesGoogle(...params);\n }\n\n /**\n * Get OAS value from config\n * NOTE: legacy code\n */\n static getOasSitepage(...params) {\n if (!_configManager) {\n throw Error('Advertising:getOasSitepage:Config object not initialized');\n }\n\n return _configManager.getOasSitepage(...params);\n }\n}\n\nexport default Advertising;\n\n/* Private */\n\n/**\n * Funcion que genera el scriptText que pinta la Advertising.\n * @param object params\n */\nfunction _defineSlot(params) {\n var\n scriptText, legacyCmvkey, insertedPositionkey, hideText, targetingText,\n size, idAds, targetingsTags, deviceTypeTargeting, decryptedURL, pattern, isValid,\n decodedURLTargetings, chunksURLTargetings, topics, mappingObj, sizeMapping, defineSizeMapping\n ;\n\n size = _configManager.getSizesGoogle(params.position);\n idAds = _configManager.getIdDiv(params);\n targetingsTags = params.tags || {};\n // Codigo para ocultar el div si no hay publi\n hideText = params.hideNoAds ? '.setCollapseEmptyDiv(true)' : '';\n targetingText = _configManager.globalTargetings;\n\n Object.keys(targetingsTags).forEach(function(key) {\n targetingText += `.setTargeting(\"${key}\", \"${targetingsTags[key]}\")`;\n });\n\n // Targeting con tipo de usuario de Gigya\n deviceTypeTargeting = _configManager.deviceType === 'mobile' ? 'm' : 'w';\n targetingText += `.setTargeting('st', '${_configManager.valueUserType}').setTargeting('stt', '${deviceTypeTargeting}${_configManager.valueUserType}')`;\n\n // Se comprueba si se fuerza algun targeting via URL con el parametro vam_cmvkey\n decryptedURL = ConfigManager.decryptedURL();\n if (((typeof window.location !== 'undefined') && (window.location.href.indexOf('vam_cmvkey=') > -1 || window.location.href.indexOf('cmvkey=') > -1)) || (decryptedURL !== '')) {\n legacyCmvkey = window.location.href.indexOf('vam_cmvkey=') > -1 ? 'vam_cmvkey' : 'cmvkey';\n pattern = new RegExp(`(\\\\?|&)${legacyCmvkey}=([^?&]+)`);\n isValid = (decryptedURL !== '') ? pattern.exec(decryptedURL) : pattern.exec(window.location.href);\n\n if (isValid) {\n try {\n decodedURLTargetings = decodeURIComponent(isValid[2]);\n chunksURLTargetings = decodedURLTargetings.split(',');\n\n chunksURLTargetings.forEach(function(chunck) {\n var pair, keyChunk, valueChunk;\n\n pair = chunck.split('=');\n keyChunk = pair[0];\n valueChunk = pair[1];\n targetingText += `.setTargeting(\"${keyChunk}\", \"${valueChunk}\")`;\n });\n } catch (e) {\n showWarn(`Advertising:defineSlot:Error processing ${legacyCmvkey}: ${e}`);\n }\n }\n }\n\n // Incluimos los topics como targeting si asi corresponde\n try {\n topics = _getTopics(false);\n if (topics.length) {\n targetingText += `.setTargeting(\"topics\", \"${topics}\")`;\n }\n } catch (e) {\n showWarn(`Advertising:defineSlot:Error processing enableTopics: ${e}`);\n }\n\n // Se comprueba si enableTpag esta habilitado\n try {\n if (_configManager.configGDPMedio.enableTpag) {\n targetingText += `.setTargeting(\"tpag\", \"${_configManager.pageType}\")`;\n }\n } catch (e) {\n showWarn(`Advertising:defineSlot:Error processing tpag: ${e}`);\n }\n\n // Comprobaciones para medios responsives\n mappingObj = {};\n sizeMapping = '';\n defineSizeMapping = '';\n if (!params.outOfPage && params.responsive &&\n Array.isArray(params.responsive) && params.responsive.length > 0) {\n mappingObj = _getSizeMapping(params);\n sizeMapping = mappingObj && mappingObj.definition ? mappingObj.definition : '';\n defineSizeMapping = mappingObj && mappingObj.script ? mappingObj.script : '';\n }\n\n if (!params.outOfPage) {\n if (params.defineSlot) {\n scriptText = `${sizeMapping}window.${_getNombreSlot(params)} = window.googletag.defineSlot('${_configManager.getOasSitepage(params)}', ${size}, '${idAds}')${defineSizeMapping}.setTargeting('pos','${params.position}')${targetingText}${hideText}.addService(googletag.pubads());`;\n }\n } else if (params.defineSlot) {\n scriptText = `${sizeMapping}window.${_getNombreSlot(params)} = window.googletag.defineOutOfPageSlot('${_configManager.getOasSitepage(params)}', '${idAds}')${defineSizeMapping}.setTargeting('pos','${params.position}')${targetingText}${hideText}.addService(googletag.pubads());`;\n }\n\n insertedPositionkey = _getClavePosicionInsertada(params);\n _insertedPositions[insertedPositionkey] = scriptText;\n showLog('Advertising:defineSlot:Ads ID', idAds);\n window.customcmd.push(_executeDefineSlot(scriptText, params));\n}\n\nfunction _executeDefineSlot(scriptText, params) {\n showLog(`En defineSlot. defineSlot: ${scriptText}`);\n eval(scriptText); // eslint-disable-line no-eval\n _notDisplayedSlots.push(params.position);\n}\n\n/**\n * Hace display de una posicion\n */\nfunction _display(params) {\n // Comprobamos si la posicion esta en la lista de posiciones definidas y pendientes de display\n var index, idDiv;\n\n showLog(`Advertising:display:Display position ${params.position} with params`, params);\n index = _notDisplayedSlots.indexOf(params.position);\n if (index < 0) {\n showLog(`Advertising:display:Position ${params.position} has already been displayed`);\n return;\n }\n\n showLog(`Advertising:display:Position ${params.position} is not displayed yet`);\n idDiv = _configManager.getIdDiv(params);\n if (!$('#' + idDiv).length) {\n showWarn(`Advertising:display:DIV with ID ${idDiv} does not exist`);\n return;\n }\n showLog(`Advertising:display:Queued position ${params.position} to display`);\n window.customcmd.push(() => {\n showLog(`Advertising:display:Displaying ${params.position}`);\n if (HBProviderManager.isActive()) {\n const auctionPromiseTimer = _reload ? AFTER_RELOAD_HB_TIMEOUT : 0;\n const auctionPromise = `${PREBID_AUCTION_ENDED}${HBProviderManager.auctionsCount}`;\n const targetingsCount = HBProviderManager.getTargetingsCount();\n\n app.whenUntil(auctionPromise, auctionPromiseTimer)\n .then(() => {\n if (!HBProviderManager.getIsEmptyResponse()) {\n HBProviderManager.setTargetings();\n app.whenUntil(`${PREBID_SET_TARGETINGS}${targetingsCount}`, _setTargetingsTimeout)\n .then(() => {\n window.googletag.display(idDiv);\n }).catch(() => {\n window.googletag.display(idDiv);\n });\n } else {\n window.googletag.display(idDiv);\n }\n })\n .catch(() => {\n window.googletag.display(idDiv);\n });\n } else {\n window.googletag.display(idDiv);\n }\n\n /* NOTE: Si singleRequest esta habilitado un unico display sirve para todas las posiciones\n para las que hemos hecho defineSlot previamente. En caso contrario solo quitamos la\n posicion concreta de la lista.\n */\n if (_configManager.configGDPMedio.singleRequest) {\n _notDisplayedSlots = [];\n } else {\n _notDisplayedSlots.splice(index, 1);\n }\n });\n}\n\n/**\n * Funcion que obtiene las medidas en caso de que sea responsive.\n * FUTURE: move config to GDP\n * FUTURE: move logic to GoogleTag component\n * @param object responsive\n * @return string sizeMapping\n */\nfunction _getSizeMapping(params) {\n var mappingName, mappingObj, responsive, finalDefinition;\n\n mappingName = `window.mapping_${_getNombreSlot(params)}`;\n mappingObj = {\n definition: `${mappingName} = window.googletag.sizeMapping()`,\n script: `.defineSizeMapping(${mappingName})`\n };\n responsive = params.responsive;\n showLog(`Advertising:getSizeMapping:Resposive param for position ${params.position}`, responsive);\n\n finalDefinition = responsive.reduce(function(definition, pair) {\n var addSize, viewportSize, responsiveSizes, singleSize;\n\n if (definition !== '' && !definition) { return undefined; }\n\n viewportSize = pair[0];\n if (pair.length !== 2 || !Array.isArray(viewportSize) || viewportSize.length !== 2) {\n showWarn(`Advertising:getSizeMapping:Malformed responsive param in position ${params.position}. responsive: ${responsive}`);\n return undefined;\n }\n\n addSize = '';\n responsiveSizes = pair[1];\n if (typeof responsiveSizes === 'string') {\n if (responsiveSizes.indexOf('fluid') !== -1) {\n responsiveSizes = POSITION_FLUID;\n } else {\n responsiveSizes = _configManager.getSizesGoogle(responsiveSizes);\n if ((typeof responsiveSizes !== 'undefined') && (typeof responsiveSizes === 'string')) {\n responsiveSizes = JSON.parse(responsiveSizes);\n }\n }\n }\n if (!Array.isArray(responsiveSizes) && responsiveSizes !== POSITION_FLUID) {\n showWarn(`Advertising:getSizeMapping:Malformed responsive param in position ${params.position}. responsive: ${responsive}`);\n return undefined;\n }\n\n addSize = '[' + viewportSize[0] + ',' + viewportSize[1] + '],';\n if (responsiveSizes.length > 0 && Array.isArray(responsiveSizes[0])) {\n addSize += '[';\n for (let j = 0; j < responsiveSizes.length; j++) {\n singleSize = responsiveSizes[j];\n if (singleSize.length === 2) {\n addSize += (j === 0 ? '[' : ',[') + singleSize[0] + ',' + singleSize[1] + ']';\n }\n }\n addSize += ']';\n } else if (responsiveSizes.length === 2) {\n addSize += '[' + responsiveSizes[0] + ',' + responsiveSizes[1] + ']';\n } else if (responsiveSizes === POSITION_FLUID) {\n addSize += POSITION_FLUID;\n } else {\n addSize += '[]';\n }\n\n return `${definition}.addSize(${addSize})`;\n }, '');\n\n if (!finalDefinition) return undefined;\n\n mappingObj.definition += `${finalDefinition}.build();`;\n\n return mappingObj;\n}\n\n/**\n * Lanza los printAds que se han encolado cuando hay priorizadas\n */\nfunction _displayStandarQueued() {\n showLog('Advertising:displayStandarQueued:Display queued positions');\n while (_standardDelayed.length) {\n Advertising.printAds(_standardDelayed.shift());\n }\n}\n\n/**\n * Funcion para pintar la publicidad priorizada\n */\nfunction _displayPrioritized() {\n showLog(`Advertising:pintaPriorizadas:Painting the following positions : ${_configManager.prioritizedPositions}`);\n _pintaListaPosiciones(_configManager.prioritizedPositions, true);\n}\n\n/**\n * Funcion que recorre y pinta una lista de posiciones.\n * Si singleRequest esta habilitado las posiciones priorizadas funcionan como un Roadblock y se\n * piden todas juntas (no llevaran eventos ni callbacks)\n */\nfunction _pintaListaPosiciones(listaPositions, sonPosicionesPriorizadas) {\n if (_configManager.configGDPMedio.singleRequest && sonPosicionesPriorizadas) {\n showLog('Advertising:pintaListaPosiciones:There is prioritized positions and SingleRequest is enabled -> get with Roadblock');\n\n window.customcmd.push(() => {\n var params, container$, posCuyoDivExiste;\n\n posCuyoDivExiste = null;\n listaPositions.forEach((position) => {\n params = { position };\n\n if (!_configManager.existePosEnConfigGDPMedio(position)) {\n showWarn(`Advertising:pintaListaPosiciones:SingleRequest position ${position} does not exist configGDPMedio`);\n return;\n }\n\n if (!_configManager.isActive(params)) {\n showWarn(`Advertising:pintaListaPosiciones:SingleRequest position ${position} is NOT active`);\n return;\n }\n\n // Recuperamos los parametros del DIV en caso de que exista en la pagina\n container$ = $(`[data-voc-vam-position = '${position}']`, _configManager.context$);\n if (container$.length) {\n params = _configManager.normalizaParams(container$);\n if (posCuyoDivExiste === null) { posCuyoDivExiste = params; }\n } else {\n // NOTE: find legacy DIV\n container$ = $(`#${_configManager.getIdDiv(params)}`);\n if (container$.length) {\n params = _configManager.normalizaParams(params);\n if (posCuyoDivExiste === null) { posCuyoDivExiste = params; }\n } else {\n showWarn(`En pintaListaPosiciones. No existe el DIV de la posicion priorizada ${position}`);\n }\n }\n if ('id' in params) {\n showLog(`En pintaListaPosiciones. Llamando a defineSlot: ${JSON.stringify(params)}`);\n if (HBProviderManager.isActive()) {\n HBProviderManager.pushAdUnitForTargetings(params.id);\n }\n _defineSlot(params);\n }\n });\n\n if (posCuyoDivExiste === null) {\n showError('ERROR En pintaListaPosiciones. No existe el DIV de ninguna de las posiciones priorizadas en la pagina, por lo que no se hara el display');\n } else {\n params = posCuyoDivExiste;\n }\n\n // NOTE: If there is Header Bidding wait for bidders promises\n if (HBProviderManager.isActive()) {\n showLog('pintaListaPosiciones:Waiting for HB`s promises to be solved');\n showLog('HB is active', HBProviderManager.isActive());\n app.when(HEADER_BIDDING_READY).then(() => {\n showLog('HB promise resolved reload', HBProviderManager.isActive());\n showLog('pintaListaPosiciones:HB promises resolved');\n showLog('Setting reload parameter', _reload);\n HBProviderManager.setReload(_reload);\n showLog('pintaListaPosiciones:Params object', params);\n _display(params);\n });\n } else {\n showLog('En pintaListaPosiciones. Print without wait HB');\n _display(params);\n }\n });\n } else {\n !_configManager.configGDPMedio.singleRequest && showLog('Advertising:pintaListaPosiciones:SingleRequest DISABLED');\n !sonPosicionesPriorizadas && showLog('Advertising:pintaListaPosiciones:There are NOT prioritized positions');\n // window.customcmd.push(function () {\n listaPositions.forEach(function(position) {\n var params, container$, legacyParams;\n\n if (!_configManager.existePosEnConfigGDPMedio(position)) {\n showWarn(`Advertising:pintaListaPosiciones:Prioritized position ${position} does not exist configGDPMedio`);\n return;\n }\n\n params = { position };\n if (!_configManager.isActive(params)) {\n showWarn(`Advertising:pintaListaPosiciones:Prioritized position ${position} is NOT active`);\n return;\n }\n\n // Recuperamos los paramteros del DIV en caso de que exista en la pagina\n container$ = $(`[data-voc-vam-position = '${position}']`, _configManager.context$);\n if (container$.length) {\n params = _configManager.normalizaParams(container$);\n } else {\n container$ = $(`#${_configManager.getIdDiv(params)}`);\n if (container$.length) {\n legacyParams = _configManager.normalizaParams(container$);\n }\n params = !legacyParams ? _configManager.normalizaParams(params) : legacyParams;\n }\n\n showLog('Advertising:pintaListaPosiciones:Calling printAds with', params);\n if (HBProviderManager.isActive()) {\n HBProviderManager.pushAdUnitForTargetings(params.id);\n }\n Advertising.printAds(params);\n });\n // });\n }\n}\n\n/**\n * Display delayed positions when it is on viewport\n * @param {object} params\n */\nfunction _displayDelayed(params) {\n var idAds = _configManager.getIdDiv(params);\n\n $(`#${idAds}`).on('inview', function (event, isInView) {\n showLog('Advertising:displayDelayed:INVIEW_EVENT trigger', params, event, isInView);\n if (isInView && !this.dataset.vocVamDisplayed) {\n if (HBProviderManager.isActive()) {\n HBProviderManager.pushAdUnitForTargetings(params.id);\n }\n showLog('Advertising:displayDelayed:Painting delayed', idAds, params);\n _getAdGoogle(params, false);\n }\n });\n}\n\n/**\n * Pintado de publicidad de GPT\n */\nfunction _getAdGoogle(params, esPosPriorizada) {\n if (!_configManager.configGDPMedio.activo) {\n showWarn('Advertising:getAdGoogle:Ads was disabled in Media Config');\n return;\n }\n\n showLog('Advertising:getAdGoogle:Queuing with', params);\n window.customcmd.push(function() {\n var idDiv, eventParams, tParams, key, hasPreevent;\n\n if (!_configManager.existePosEnConfigGDPMedio(params.position)) {\n showWarn(`Advertising:getAdGoogle:Position ${params.position} does not exist in configGDPMedio`);\n return;\n }\n\n showLog('Advertising:getAdGoogle:googletag exec with', params);\n idDiv = _configManager.getIdDiv(params);\n eventParams = _getEventsPosition(params);\n\n tParams = params;\n tParams.pre_callback = eventParams.pre_callback;\n tParams.pre_event = eventParams.pre_event;\n\n tParams.post_callback = eventParams.post_callback;\n tParams.post_event = eventParams.post_event;\n showLog('Advertising:getAdGoogle:Set params to DIV with id = ', idDiv);\n $(`#${idDiv}`).data('params', tParams);\n\n key = _getClavePosicionInsertada(params);\n if (!_insertedPositions[key]) {\n hasPreevent = false;\n if (params.defineSlot) {\n showLog('Advertising:getAdGoogle:defineSlot', params);\n _defineSlot(params);\n if (!esPosPriorizada) {\n showLog('Advertising:getAdGoogle:It is not prioritized', params);\n if (eventParams.pre_callback && !eventParams.pre_event) {\n eventParams.pre_callback();\n } else if (eventParams.pre_event) {\n showLog('Advertising:getAdGoogle:Has pre-event', params);\n hasPreevent = true;\n app.one(eventParams.pre_event, params, function () {\n // NOTE: If there is Header Bidding wait for bidders promises\n if (HBProviderManager.isActive()) {\n showLog('Advertising:getAdGoogle:Waiting for HB`s promises to be solved');\n app.when(HEADER_BIDDING_READY).then(() => {\n showLog('Advertising:getAdGoogle:HB promises resolved with preEvents', params);\n if (params.pre_callback) {\n params.pre_callback();\n }\n HBProviderManager.setReload(_reload);\n // HBProviderManager.setTargetings();\n _display(params);\n });\n }\n });\n } else {\n showLog('Advertising:getAdGoogle:Has NO pre-event', params);\n if (HBProviderManager.isActive()) {\n hasPreevent = true;\n showLog('Advertising:getAdGoogle:Waiting for HB`s promises to be solved');\n app.when(HEADER_BIDDING_READY).then(() => {\n showLog('Advertising:getAdGoogle:HB promises resolved without preEvents with', params);\n if (params.pre_callback) {\n params.pre_callback();\n }\n HBProviderManager.setReload(_reload);\n // HBProviderManager.setTargetings();\n _display(params);\n });\n }\n }\n } else {\n showLog('Advertising:getAdGoogle:Is prioritized', params);\n if (HBProviderManager.isActive()) {\n hasPreevent = true;\n showLog('Advertising:getAdGoogle:Waiting for HB`s promises to be solved');\n\n app.when(HEADER_BIDDING_READY).then(() => {\n showLog('Advertising:getAdGoogle:HB promises resolved on prioritized position with', params);\n HBProviderManager.setReload(_reload);\n // HBProviderManager.setTargetings();\n _display(params);\n });\n }\n }\n }\n\n // No tiene evento de activacion\n if (!hasPreevent) {\n showLog('Advertising:getAdGoogle:Has no pre-event. Painting', params);\n HBProviderManager.setReload(_reload);\n // HBProviderManager.setTargetings();\n _display(params);\n }\n } else {\n showLog(`Advertising:getAdGoogle:Position ${params.position} has already been previously invoked. Checking the value of the refresh parameter`, params.refresh);\n if (params.refresh) _pintarPosicionRefresh(params);\n }\n });\n}\n\n/**\n * Funcion que recuperar si tiene evento pre o post callback, los parametros llegados por funcion\n * prevalecen sobre los del CONFIG\n * @param object params\n */\nfunction _getEventsPosition(params) {\n var tipoDispositivoAux, positionEvents;\n\n tipoDispositivoAux = _configManager.deviceType;\n positionEvents = app.lookup(`posicion_${tipoDispositivoAux}[\"${params.position}\"]`, _configManager.configGDP);\n\n if (isEmpty(positionEvents)) { return positionEvents; }\n\n positionEvents.pre_callback = params.pre_callback || params.pre_callback;\n positionEvents.pre_event = params.pre_event || params.pre_event;\n positionEvents.post_callback = params.post_callback || params.post_callback;\n positionEvents.post_event = params.post_event || params.post_event;\n\n return positionEvents;\n}\n\n/**\n * Devuelve el nombre de la variable que almacenara el slot\n */\nfunction _getNombreSlot(params, dynamicSuffix = true) {\n var dynamicId, dynamic;\n\n dynamicId = _configManager.dynamicId;\n dynamic = dynamicId && dynamicSuffix ? `_${dynamicId}` : '';\n\n return `slot_${params.position.replace('-', '_')}${dynamic}`;\n}\n\n/**\n * Clave unica de la posicion\n */\nfunction _getClavePosicionInsertada(params) {\n return _getNombreSlot(params) + '_' + _configManager.getIdDiv(params);\n}\n\n/**\n * Refresh de una posicion\n */\nfunction _pintarPosicionRefresh(params) {\n showLog(`En pintarPosicionRefresh. Refrescamos la posicion ${params.position}`);\n window.googletag.pubads().refresh([app.lookup(_getNombreSlot(params))]);\n}\n\n/**\n * INICIO: Renderizado de tablas de informacion cuando vam_info_slot=1\n * --------------------------------------------------------------------------\n */\n/**\n * Metodo de entrada de tablas de informacion\n */\nfunction _infoSlotRender(params, isSlotRendered) {\n var idDiv, container$, width, height, dimension, arrayObj, numSlots, numTopics, numOas, max;\n\n idDiv = _configManager.getIdDiv(params);\n container$ = $(`#${idDiv}`);\n width = $(`#${idDiv} div iframe`).width();\n height = $(`#${idDiv} div iframe`).height();\n\n // Obtenemos el tamano de la publi pintada y la borramos\n if (isSlotRendered) {\n container$.empty();\n } else {\n // Si DFP devuelve isEmpty cogemos la primera dimension del array, o 150x150 si es fluid\n try {\n height = 150;\n width = 150;\n dimension = _configManager.getSizesGoogle(params.position);\n if (dimension && dimension.indexOf('fluid') < 0) {\n arrayObj = JSON.parse(dimension);\n\n if (Array.isArray(arrayObj[0])) {\n width = arrayObj[0][0];\n height = arrayObj[0][1];\n } else {\n width = arrayObj[0];\n height = arrayObj[1];\n }\n }\n } catch (e) {\n showError('Advertising:infoSlotRender:Error building size.', e);\n }\n\n container$.show();\n }\n\n // Rectangulo con color azul o rojo (si es local)\n container$.addClass('gdp_infoSlot_rectangle').html(`

${params.position} ${_infoSlotFormateaDimensiones(params)}

`);\n if (_isLocalPosition(params)) container$.addClass('gdp_infoSlot_localPosition');\n if (!isSlotRendered) container$.addClass('gdp_infoSlot_inactive');\n\n if (!$('#gdp_infoSlot_tableInfo').length > 0) {\n $('body').append('
');\n }\n\n // Tablas de info adicional\n _infoSlotRenderSlots(params);\n _infoSlotRenderTopics();\n _infoSlotRenderOAS(params);\n\n numSlots = $('#gdp_infoSlot_tableInfo-slots').length > 0 ? $('#gdp_infoSlot_tableInfo-slots tbody tr').length : 0;\n numTopics = $('#gdp_infoSlot_tableInfo-topics').length > 0 ? $('#gdp_infoSlot_tableInfo-topics tbody tr').length : 0;\n numOas = $('#gdp_infoSlot_tableInfo-oas').length > 0 ? $('#gdp_infoSlot_tableInfo-oas tbody tr').length : 0;\n max = Math.max(numSlots, numTopics);\n if (max > numSlots && $('#gdp_infoSlot_tableInfo-slots').length > 0) {\n for (let i = 0; i < max - numSlots; i++) {\n $('#gdp_infoSlot_tableInfo-slots tbody').append(' ');\n }\n }\n if (max > numTopics && $('#gdp_infoSlot_tableInfo-topics').length > 0) {\n for (let i = 0; i < max - numTopics; i++) {\n $('#gdp_infoSlot_tableInfo-topics tbody').append(' ');\n }\n }\n if (max > numOas && $('#gdp_infoSlot_tableInfo-oas').length > 0) {\n for (let i = 0; i < max - numOas; i++) {\n $('#gdp_infoSlot_tableInfo-oas tbody').append(' ');\n }\n }\n}\n\nfunction _applyFilter(value) {\n return value\n .replace(new RegExp(\"'fluid'\", 'g'), '[fluid]')\n .replace(new RegExp('\\\\],\\\\[', 'g'), '_')\n .replace(new RegExp(',', 'g'), 'x')\n .replace(new RegExp('\\\\[', 'g'), '')\n .replace(new RegExp('\\\\]', 'g'), '')\n .replace(new RegExp('_', 'g'), ',');\n}\n\nfunction _infoSlotFormateaDimensiones(params) {\n var\n result, dimensionsArray, mappingObj, sizeMapping,\n dimension, resolution, notRepeatedDimensions;\n\n result = '';\n dimensionsArray = [];\n mappingObj = {};\n sizeMapping = '';\n\n try {\n if (params.outOfPage) {\n dimensionsArray.push('oop');\n } else if (params.responsive &&\n Array.isArray(params.responsive) &&\n params.responsive.length > 0\n ) {\n mappingObj = _getSizeMapping(params);\n sizeMapping = ((typeof mappingObj !== 'undefined') && (typeof mappingObj.definition !== 'undefined')) ? mappingObj.definition : '';\n sizeMapping.split('.').forEach(function(size) {\n if (size.indexOf('addSize') > -1) {\n size = size.replace(new RegExp('addSize\\\\(', 'g'), '').replace(new RegExp('\\\\)', 'g'), '');\n dimensionsArray.push(size);\n }\n });\n } else {\n dimensionsArray.push(app.lookup(`posicion_${_configManager.deviceType}.${params.position}.dimensiones`, _configManager.configGDPMedio));\n }\n\n if (Array.isArray(dimensionsArray)) {\n if (params.outOfPage) { // Posicion OutOfPage\n result += '(oop)';\n } else if (!params.responsive) { // Posicion no responsive\n dimension = _applyFilter(dimensionsArray[0]);\n result += '(' + dimension + ')';\n } else { // Posicion responsive\n notRepeatedDimensions = new Set();\n dimensionsArray.forEach(function(dimen) {\n var filtered = _applyFilter(dimen);\n\n // Quitamos la resolucion\n resolution = filtered.substring(0, filtered.indexOf(','));\n dimension = filtered.substring(filtered.indexOf(',') + 1);\n notRepeatedDimensions.add(dimension);\n result += '
' + resolution + ': (' + dimension + ')';\n });\n\n // Si todas las dimensiones de responsive son la misma escribimos solo una\n if (notRepeatedDimensions.size === 1) { result = '(' + dimension + ')'; }\n }\n }\n } catch (err) {\n showError('Advertising:infoSlotFormateaDimensiones:Error', err);\n }\n\n return result;\n}\n\n/**\n * Tabla de informacion de SLOTS\n */\nfunction _infoSlotRenderSlots(params) {\n if (!$('#gdp_infoSlot_tableInfo-slots').length) {\n $('#gdp_infoSlot_tableInfo').append('
');\n $('#gdp_infoSlot_tableInfo-slots thead').append('posiciones');\n }\n $('#gdp_infoSlot_tableInfo-slots tbody').append(`${params.position}`);\n}\n\n/**\n * Tabla de informacion de TOPICS\n */\nfunction _infoSlotRenderTopics() {\n var topics = _getTopics(true);\n if (topics.length > 0) {\n if (!$('#gdp_infoSlot_tableInfo-topics').length) {\n $('#gdp_infoSlot_tableInfo').append('
');\n $('#gdp_infoSlot_tableInfo-topics thead').append('topics');\n\n topics.forEach(function(topic) {\n $('#gdp_infoSlot_tableInfo-topics tbody').append(`${topic}`);\n });\n }\n }\n}\n\n/**\n * Tabla de informacion de OAS\n */\nfunction _infoSlotRenderOAS(params) {\n if (!$('#gdp_infoSlot_tableInfo-oas').length) {\n $('#gdp_infoSlot_tableInfo').append('
');\n $('#gdp_infoSlot_tableInfo-oas thead').append('oas');\n $('#gdp_infoSlot_tableInfo-oas tbody').append(`${_configManager.getOasSitepage(params)}`);\n }\n}\n\n/**\n * Devuelve un array con los topics que contiene la pagina, en caso de que los contenga y que\n * enableTopics este habilitado.\n * @return array\n */\nfunction _getTopics(forzarEnableTopics) {\n var topics = [];\n\n if ((_configManager.configGDPMedio.enableTopics || forzarEnableTopics) && window.voc_top) {\n topics = window.voc_top.split(',');\n }\n\n return topics;\n}\n\n/**\n * Funcion que devuelve true si la posicion es local, false si no lo es\n * @return boolean\n */\nfunction _isLocalPosition(params) {\n return params.position.includes('_local');\n}\n/**\n * FIN: Renderizado de tablas de informacion cuando vam_info_slot=1\n * --------------------------------------------------------------------------\n */\n\n\n/**\n * INICIO: Capturador (modo preview)\n * --------------------------------------------------------------------------\n */\n\n/**\n * Devuelve true si hay preview para la posicion indicada o false en caso contrario\n * @returns {boolean}\n */\nfunction _capturadorExistsPreview(params) {\n return _configManager.capturadorDataPreview &&\n _configManager.capturadorDataPreview[params.position];\n}\n\n/**\n * funcion que cambia la publicidad por defecto, por una que se indica\n */\nfunction _capturadorSetPreview(params) {\n var previewJSON, preview, idDiv, div, creatividad;\n\n try {\n previewJSON = JSON.parse(_configManager.capturadorDataPreview[params.position]);\n preview = previewJSON[0];\n idDiv = _configManager.getIdDiv(params);\n creatividad = ``;\n div = $(`#${idDiv}`);\n div.empty();\n div.html(creatividad);\n showLog(`En capturadorSetPreview. Pintada preview para la posicion ${params.position}`);\n } catch (err) {\n showError('Advertising:capturadorSetPreview:Error', err);\n }\n}\n/**\n * FIN: Capturador (modo preview)\n * --------------------------------------------------------------------------\n */\n\n\n\n// WEBPACK FOOTER //\n// ./src/advertising.js","module.exports = { \"default\": require(\"core-js/library/fn/set\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/set.js\n// module id = 137\n// module chunks = 1 2 3","require('../modules/es6.object.to-string');\nrequire('../modules/es6.string.iterator');\nrequire('../modules/web.dom.iterable');\nrequire('../modules/es6.set');\nrequire('../modules/es7.set.to-json');\nmodule.exports = require('../modules/_core').Set;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/set.js\n// module id = 138\n// module chunks = 1 2 3","'use strict';\nvar strong = require('./_collection-strong');\n\n// 23.2 Set Objects\nmodule.exports = require('./_collection')('Set', function(get){\n return function Set(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value){\n return strong.def(this, value = value === 0 ? 0 : value, value);\n }\n}, strong);\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es6.set.js\n// module id = 139\n// module chunks = 1 2 3","'use strict';\nvar dP = require('./_object-dp').f\n , create = require('./_object-create')\n , redefineAll = require('./_redefine-all')\n , ctx = require('./_ctx')\n , anInstance = require('./_an-instance')\n , defined = require('./_defined')\n , forOf = require('./_for-of')\n , $iterDefine = require('./_iter-define')\n , step = require('./_iter-step')\n , setSpecies = require('./_set-species')\n , DESCRIPTORS = require('./_descriptors')\n , fastKey = require('./_meta').fastKey\n , SIZE = DESCRIPTORS ? '_s' : 'size';\n\nvar getEntry = function(that, key){\n // fast case\n var index = fastKey(key), entry;\n if(index !== 'F')return that._i[index];\n // frozen object case\n for(entry = that._f; entry; entry = entry.n){\n if(entry.k == key)return entry;\n }\n};\n\nmodule.exports = {\n getConstructor: function(wrapper, NAME, IS_MAP, ADDER){\n var C = wrapper(function(that, iterable){\n anInstance(that, C, NAME, '_i');\n that._i = create(null); // index\n that._f = undefined; // first entry\n that._l = undefined; // last entry\n that[SIZE] = 0; // size\n if(iterable != undefined)forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear(){\n for(var that = this, data = that._i, entry = that._f; entry; entry = entry.n){\n entry.r = true;\n if(entry.p)entry.p = entry.p.n = undefined;\n delete data[entry.i];\n }\n that._f = that._l = undefined;\n that[SIZE] = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function(key){\n var that = this\n , entry = getEntry(that, key);\n if(entry){\n var next = entry.n\n , prev = entry.p;\n delete that._i[entry.i];\n entry.r = true;\n if(prev)prev.n = next;\n if(next)next.p = prev;\n if(that._f == entry)that._f = next;\n if(that._l == entry)that._l = prev;\n that[SIZE]--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /*, that = undefined */){\n anInstance(this, C, 'forEach');\n var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3)\n , entry;\n while(entry = entry ? entry.n : this._f){\n f(entry.v, entry.k, this);\n // revert to the last existing entry\n while(entry && entry.r)entry = entry.p;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key){\n return !!getEntry(this, key);\n }\n });\n if(DESCRIPTORS)dP(C.prototype, 'size', {\n get: function(){\n return defined(this[SIZE]);\n }\n });\n return C;\n },\n def: function(that, key, value){\n var entry = getEntry(that, key)\n , prev, index;\n // change existing entry\n if(entry){\n entry.v = value;\n // create new entry\n } else {\n that._l = entry = {\n i: index = fastKey(key, true), // <- index\n k: key, // <- key\n v: value, // <- value\n p: prev = that._l, // <- previous entry\n n: undefined, // <- next entry\n r: false // <- removed\n };\n if(!that._f)that._f = entry;\n if(prev)prev.n = entry;\n that[SIZE]++;\n // add to index\n if(index !== 'F')that._i[index] = entry;\n } return that;\n },\n getEntry: getEntry,\n setStrong: function(C, NAME, IS_MAP){\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n $iterDefine(C, NAME, function(iterated, kind){\n this._t = iterated; // target\n this._k = kind; // kind\n this._l = undefined; // previous\n }, function(){\n var that = this\n , kind = that._k\n , entry = that._l;\n // revert to the last existing entry\n while(entry && entry.r)entry = entry.p;\n // get next entry\n if(!that._t || !(that._l = entry = entry ? entry.n : that._t._f)){\n // or finish the iteration\n that._t = undefined;\n return step(1);\n }\n // return step by kind\n if(kind == 'keys' )return step(0, entry.k);\n if(kind == 'values')return step(0, entry.v);\n return step(0, [entry.k, entry.v]);\n }, IS_MAP ? 'entries' : 'values' , !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(NAME);\n }\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_collection-strong.js\n// module id = 140\n// module chunks = 1 2 3","'use strict';\nvar global = require('./_global')\n , $export = require('./_export')\n , meta = require('./_meta')\n , fails = require('./_fails')\n , hide = require('./_hide')\n , redefineAll = require('./_redefine-all')\n , forOf = require('./_for-of')\n , anInstance = require('./_an-instance')\n , isObject = require('./_is-object')\n , setToStringTag = require('./_set-to-string-tag')\n , dP = require('./_object-dp').f\n , each = require('./_array-methods')(0)\n , DESCRIPTORS = require('./_descriptors');\n\nmodule.exports = function(NAME, wrapper, methods, common, IS_MAP, IS_WEAK){\n var Base = global[NAME]\n , C = Base\n , ADDER = IS_MAP ? 'set' : 'add'\n , proto = C && C.prototype\n , O = {};\n if(!DESCRIPTORS || typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function(){\n new C().entries().next();\n }))){\n // create collection constructor\n C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);\n redefineAll(C.prototype, methods);\n meta.NEED = true;\n } else {\n C = wrapper(function(target, iterable){\n anInstance(target, C, NAME, '_c');\n target._c = new Base;\n if(iterable != undefined)forOf(iterable, IS_MAP, target[ADDER], target);\n });\n each('add,clear,delete,forEach,get,has,set,keys,values,entries,toJSON'.split(','),function(KEY){\n var IS_ADDER = KEY == 'add' || KEY == 'set';\n if(KEY in proto && !(IS_WEAK && KEY == 'clear'))hide(C.prototype, KEY, function(a, b){\n anInstance(this, C, KEY);\n if(!IS_ADDER && IS_WEAK && !isObject(a))return KEY == 'get' ? undefined : false;\n var result = this._c[KEY](a === 0 ? 0 : a, b);\n return IS_ADDER ? this : result;\n });\n });\n if('size' in proto)dP(C.prototype, 'size', {\n get: function(){\n return this._c.size;\n }\n });\n }\n\n setToStringTag(C, NAME);\n\n O[NAME] = C;\n $export($export.G + $export.W + $export.F, O);\n\n if(!IS_WEAK)common.setStrong(C, NAME, IS_MAP);\n\n return C;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_collection.js\n// module id = 141\n// module chunks = 1 2 3","// 0 -> Array#forEach\n// 1 -> Array#map\n// 2 -> Array#filter\n// 3 -> Array#some\n// 4 -> Array#every\n// 5 -> Array#find\n// 6 -> Array#findIndex\nvar ctx = require('./_ctx')\n , IObject = require('./_iobject')\n , toObject = require('./_to-object')\n , toLength = require('./_to-length')\n , asc = require('./_array-species-create');\nmodule.exports = function(TYPE, $create){\n var IS_MAP = TYPE == 1\n , IS_FILTER = TYPE == 2\n , IS_SOME = TYPE == 3\n , IS_EVERY = TYPE == 4\n , IS_FIND_INDEX = TYPE == 6\n , NO_HOLES = TYPE == 5 || IS_FIND_INDEX\n , create = $create || asc;\n return function($this, callbackfn, that){\n var O = toObject($this)\n , self = IObject(O)\n , f = ctx(callbackfn, that, 3)\n , length = toLength(self.length)\n , index = 0\n , result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined\n , val, res;\n for(;length > index; index++)if(NO_HOLES || index in self){\n val = self[index];\n res = f(val, index, O);\n if(TYPE){\n if(IS_MAP)result[index] = res; // map\n else if(res)switch(TYPE){\n case 3: return true; // some\n case 5: return val; // find\n case 6: return index; // findIndex\n case 2: result.push(val); // filter\n } else if(IS_EVERY)return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;\n };\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_array-methods.js\n// module id = 142\n// module chunks = 1 2 3","// 9.4.2.3 ArraySpeciesCreate(originalArray, length)\nvar speciesConstructor = require('./_array-species-constructor');\n\nmodule.exports = function(original, length){\n return new (speciesConstructor(original))(length);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_array-species-create.js\n// module id = 143\n// module chunks = 1 2 3","var isObject = require('./_is-object')\n , isArray = require('./_is-array')\n , SPECIES = require('./_wks')('species');\n\nmodule.exports = function(original){\n var C;\n if(isArray(original)){\n C = original.constructor;\n // cross-realm fallback\n if(typeof C == 'function' && (C === Array || isArray(C.prototype)))C = undefined;\n if(isObject(C)){\n C = C[SPECIES];\n if(C === null)C = undefined;\n }\n } return C === undefined ? Array : C;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_array-species-constructor.js\n// module id = 144\n// module chunks = 1 2 3","// https://github.com/DavidBruant/Map-Set.prototype.toJSON\nvar $export = require('./_export');\n\n$export($export.P + $export.R, 'Set', {toJSON: require('./_collection-to-json')('Set')});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es7.set.to-json.js\n// module id = 145\n// module chunks = 1 2 3","// https://github.com/DavidBruant/Map-Set.prototype.toJSON\nvar classof = require('./_classof')\n , from = require('./_array-from-iterable');\nmodule.exports = function(NAME){\n return function toJSON(){\n if(classof(this) != NAME)throw TypeError(NAME + \"#toJSON isn't generic\");\n return from(this);\n };\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_collection-to-json.js\n// module id = 146\n// module chunks = 1 2 3","var forOf = require('./_for-of');\n\nmodule.exports = function(iter, ITERATOR){\n var result = [];\n forOf(iter, false, result.push, result, ITERATOR);\n return result;\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_array-from-iterable.js\n// module id = 147\n// module chunks = 1 2 3","module.exports = { \"default\": require(\"core-js/library/fn/json/stringify\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/json/stringify.js\n// module id = 148\n// module chunks = 1 2 3","var core = require('../../modules/_core')\n , $JSON = core.JSON || (core.JSON = {stringify: JSON.stringify});\nmodule.exports = function stringify(it){ // eslint-disable-line no-unused-vars\n return $JSON.stringify.apply($JSON, arguments);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/json/stringify.js\n// module id = 149\n// module chunks = 1 2 3","module.exports = { \"default\": require(\"core-js/library/fn/object/define-property\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/object/define-property.js\n// module id = 150\n// module chunks = 1 2 3","require('../../modules/es6.object.define-property');\nvar $Object = require('../../modules/_core').Object;\nmodule.exports = function defineProperty(it, key, desc){\n return $Object.defineProperty(it, key, desc);\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/object/define-property.js\n// module id = 151\n// module chunks = 1 2 3","var $export = require('./_export');\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !require('./_descriptors'), 'Object', {defineProperty: require('./_object-dp').f});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es6.object.define-property.js\n// module id = 152\n// module chunks = 1 2 3","import app from '../application';\nimport Amazon from './providers/amazon';\nimport Prebid from './providers/prebid';\nimport {\n showLog,\n showError\n} from '../logger';\nimport {HEADER_BIDDING_READY} from '../constants';\n\nconst GATEWAYS = [\n Amazon,\n Prebid\n];\n\nvar _gatewaysPromises = [];\nvar _gatewaysAdded = [];\nvar _gatewaysAdUnitCodes = [];\nconst _gatewaysNewAuctionPromises = [];\nlet _auctionsCount = 0;\n\nwindow.googletag = window.googletag || {};\nwindow.googletag.cmd = window.googletag.cmd || [];\nwindow.customcmd = window.customcmd || [];\n\nexport default {\n get auctionsCount() {\n return _auctionsCount;\n },\n /**\n * Get promises from gateways.\n * NOTE: Init method must be call before isActive method\n * @param {string} device - device type\n * @param {object} config - configGDPMedio object\n * @param {integer} dynamicId - dynamicId(infinite-scroll)\n */\n init(config) {\n _gatewaysPromises = [];\n // NOTE: load promises of active gateways\n _loadActivesGateways.call(_gatewaysPromises, config);\n\n // NOTE: when all promises are resolved, rejected or timeout reached, resolve the HB-Promise\n return Promise.all(_gatewaysPromises)\n .then(function() {\n showLog('HBManager:init:All gateways have finished', window.googletag.pubadsReady);\n app.promised(HEADER_BIDDING_READY, true);\n })\n .catch(function(reason) {\n showError('HBManager:init:Error in gateways', reason);\n app.promised(HEADER_BIDDING_READY, false);\n });\n },\n /**\n * Set targeting to DFP request\n */\n setTargetings() {\n showLog('HBManager:setTargetings:Setting targetings for each added gateways');\n _gatewaysAdded.forEach((gateway) => {\n let adUnits;\n _gatewaysAdUnitCodes.forEach(g => {\n if (g.gatewayName === gateway.NAME) {\n adUnits = g.adUnitCodes;\n g.adUnitCodes = [];\n }\n });\n gateway.setTargetings(adUnits);\n });\n },\n /**\n * Check if there are gateways actives\n */\n isActive() {\n return _gatewaysPromises.length;\n },\n getIsEmptyResponse() {\n let response = false;\n _gatewaysAdded.forEach((gateway) => {\n if (gateway.emptyResponse) {\n response = true;\n }\n });\n return response;\n },\n pushAdUnitForTargetings(adUnit) {\n _gatewaysAdUnitCodes.forEach((gateway) => {\n gateway.adUnitCodes.push(adUnit);\n });\n },\n getTargetingsCount() {\n let counter = 0;\n _gatewaysAdded.forEach(gateway => {\n if (gateway.NAME === 'PREBID') {\n counter = gateway.getTargetingsCount();\n }\n });\n return counter;\n },\n getAuctionsCount() {\n let counter = 0;\n _gatewaysAdded.forEach(gateway => {\n if (gateway.NAME === 'PREBID') {\n counter = gateway.totalAuctions;\n }\n });\n return counter;\n },\n setReload(isReload) {\n _gatewaysAdded.forEach(gateway => {\n gateway.reload = isReload;\n });\n },\n setConfig(config) {\n _gatewaysAdded.forEach(gateway => {\n if (gateway.isActive(config)) {\n gateway.config = config;\n }\n });\n },\n startNewAuction() {\n _auctionsCount++;\n _gatewaysAdded.forEach(gateway => {\n gateway.setTotalAuctions(_auctionsCount);\n _gatewaysNewAuctionPromises.push(gateway.startNewAuction());\n });\n Promise.all(_gatewaysNewAuctionPromises)\n .then(() => {\n showLog('Prebid:getLoadPromise:Bids fetched');\n })\n .catch((reason) => {\n showLog(reason);\n });\n }\n};\n\n/* Private */\n\n/**\n * Load active gateways by config\n * @param {object} configGDPMedio\n */\nfunction _loadActivesGateways(config) {\n _gatewaysAdded = [];\n GATEWAYS.forEach((gateway) => {\n const gatewayName = gateway.NAME;\n if (gateway.isActive(config)) {\n showLog('HBManager:loadActivesGateways:Add promise', gateway.NAME);\n gateway.setTotalAuctions(_auctionsCount);\n _gatewaysAdded.push(gateway);\n _gatewaysAdUnitCodes.push({\n gatewayName,\n adUnitCodes: []\n });\n this.push(gateway.getLoadPromise(config));\n }\n });\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/header-bidding/provider-manager.js","import app from '../../application';\nimport {\n showLog,\n showError,\n showWarn\n} from '../../logger';\nimport {\n DEFAULT_AMAZON_LOAD_TIMEOUT,\n AMAZON_URL,\n AMAZON_CONFIG\n} from '../../constants';\n\nimport './amazon-script';\n// NOTE: 'apstag' is the global variable that Amazon searches for\nlet _adserverRequestResponse = false;\nlet _emptyResponse = true;\nlet _reload = false;\nlet _auctionsCount = 0;\nlet _config = null;\n\nconst REASONS = {\n ERROR_LOAD_LIBRARY: 'ERROR_LOAD_LIBRARY',\n TIMEOUT_REACHED_GLOBAL: 'TIMEOUT_REACHED_GLOBAL',\n TIMEOUT_REACHED_FETCH_BIDS: 'TIMEOUT_REACHED_FETCH_BIDS',\n ERROR_INIT_CONFIG: 'ERROR_INIT_CONFIG'\n};\nconst NAME = 'AMAZON';\n\nexport default Object.preventExtensions({\n NAME,\n isActive({hbAmazon}) {\n if (hbAmazon) {\n showLog('Amazon:Is active');\n } else {\n showLog('Amazon:Is NOT active');\n }\n return hbAmazon;\n },\n get emptyResponse() {\n return _emptyResponse;\n },\n set emptyResponse(response) {\n _emptyResponse = response;\n },\n get reload() {\n return _reload;\n },\n set reload(isReload) {\n _reload = isReload;\n },\n set config({hbAmazon}) {\n showError('bbb', hbAmazon);\n _config = hbAmazon;\n },\n get config() {\n return _config;\n },\n setTotalAuctions(auctionsCount) {\n _auctionsCount = auctionsCount;\n },\n /**\n * Launch amazon behaviour\n * @param {object} adUnits - adUnits config\n * @param {object} biddersConfig\n * @param {integer} timeout\n * @return {Promise}\n */\n getLoadPromise({hbAmazon}) {\n return new Promise(function(resolve, reject) {\n var timeout = hbAmazon.timeout || DEFAULT_AMAZON_LOAD_TIMEOUT;\n\n _adserverRequestResponse = false;\n _loadLibrary()\n .then(function() {\n showLog('Amazon:getLoadPromise:Library loaded');\n return _setConfig();\n })\n .then(function() {\n showLog('Amazon:getLoadPromise:apstag is loaded');\n return _fetchBid(hbAmazon);\n })\n .then(function() {\n showLog('Amazon:getLoadPromise:Bids fetched');\n resolve(true);\n })\n .catch(function(reason) {\n reject(reason);\n });\n\n setTimeout(function() {\n if (!_adserverRequestResponse) {\n showWarn('Amazon:getLoadPromise:Timeout reached', timeout);\n reject(REASONS.TIMEOUT_REACHED_GLOBAL);\n }\n }, timeout);\n }).catch(function(reason) {\n switch (reason) {\n case REASONS.TIMEOUT_REACHED_GLOBAL:\n showLog('Amazon:getLoadPromise:TIMEOUT reached global');\n break;\n case REASONS.TIMEOUT_REACHED_FETCH_BIDS:\n showLog('Amazon:getLoadPromise:TIMEOUT reached in _fetchBid');\n break;\n case REASONS.ERROR_LOAD_LIBRARY:\n showError('Amazon:getLoadPromise:Error loading library');\n break;\n case REASONS.ERROR_INIT_CONFIG:\n showError('Amazon:getLoadPromise:Error on init config');\n break;\n default:\n showError('Amazon:getLoadPromise:Error in Amazon process', reason);\n }\n return false;\n });\n },\n\n /**\n * Force setTargeting\n */\n setTargetings() {\n showLog('SetTargetings:adserverRequestResponse', _adserverRequestResponse);\n showLog('SetTargetings:adserverRequestResponse reload', _reload);\n if (_reload) {\n _adserverRequestResponse = true;\n }\n showLog('SetTargetings:adserverRequestResponse', _adserverRequestResponse);\n if (_adserverRequestResponse) {\n window.customcmd.push(function() {\n window.apstag.setDisplayBids();\n showLog('Amazon:setTargetings:Targetings added');\n });\n } else {\n showLog('Amazon:setTargetings:Targetings NOT added because no response from bidders');\n }\n },\n startNewAuction() {\n _setConfig(this.config);\n return _fetchBid(this.config);\n }\n});\n\n/* Private */\n\n/**\n * Load Amazon library\n * @return {Promise}\n */\nfunction _loadLibrary() {\n showLog('Amazon:loadLibrary:Loading library');\n return app.load(AMAZON_URL)\n .catch(function(reason) {\n showError('Amazon:loadLibrary:Error', reason);\n return Promise.reject(REASONS.ERROR_LOAD_LIBRARY);\n });\n}\n\n/**\n * Set apstag init config\n */\nfunction _setConfig() {\n return new Promise(function(resolve, reject) {\n // NOTE: set custom config object\n showLog('Amazon:setConfig:Show Amazon config', AMAZON_CONFIG);\n try {\n window.apstag.init(AMAZON_CONFIG, function() {\n resolve();\n });\n } catch (error) {\n showError('Amazon:setConfig:Error', error);\n reject(REASONS.ERROR_INIT_CONFIG);\n }\n });\n}\n\n/**\n * Add slots config and make Amazon call\n * @param {object} config - hbAmazon config from configGDPMedio\n */\nfunction _fetchBid(config) {\n var bidConfig;\n\n bidConfig = {\n slots: config.slots,\n timeout: config.timeout || DEFAULT_AMAZON_LOAD_TIMEOUT\n };\n\n return new Promise((resolve, reject) => {\n showLog('Amazon:fetchBid:Add Slots', bidConfig.slots);\n showLog('Amazon:fetchBid:Request Amazon');\n window.apstag.fetchBids(bidConfig, (bids) => {\n showLog('Amazon:fetchBid:Response from Amazon', bids);\n // NOTE: When there are no bids returned, the bids array will be empty\n _emptyResponse = Object.keys(bids).length === 0;\n if (Object.keys(bids).length === 0) {\n reject(REASONS.TIMEOUT_REACHED_FETCH_BIDS);\n return;\n }\n showLog('Amazon:fetchBid:Targetings keys', window.apstag.targetingKeys());\n _adserverRequestResponse = true;\n resolve();\n });\n });\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/header-bidding/providers/amazon.js","// NOTE: function to queue the apstag calls before the library load, the original load the library too(https://ams.amazon.com/webpublisher/docs/help/web-integration-documentation/integration-guide/javascript-guide/display.html)\n(function IIFE(apstagGlobalName, root) {\n if (root[apstagGlobalName]) return;\n function queue(c, r) {\n root[apstagGlobalName]._Q.push([c, r]);\n }\n root[apstagGlobalName] = {\n init: function() {\n queue('i', arguments);\n },\n fetchBids: function() {\n queue('f', arguments);\n },\n setDisplayBids: function() {},\n targetingKeys: function() {\n return [];\n },\n _Q:[]\n };\n}('apstag', window));\n\n\n\n// WEBPACK FOOTER //\n// ./src/header-bidding/providers/amazon-script.js","import app from '../../application';\nimport {\n showLog,\n showError,\n showWarn\n} from '../../logger';\nimport {\n DEFAULT_PREBID_LOAD_TIMEOUT,\n PREBID_URL,\n SHOW_LOGS,\n PREBID_AUCTION_ENDED,\n PREBID_SET_TARGETINGS\n} from '../../constants';\n\nconst REASONS = {\n EMPTY_ADUNITS: 'EMPTY_ADUNITS',\n ERROR_LOAD_LIBRARY: 'ERROR_LOAD_LIBRARY',\n TIMEOUT_REACHED_GLOBAL: 'TIMEOUT_REACHED_GLOBAL',\n TIMEOUT_REACHED_FETCH_BIDS: 'TIMEOUT_REACHED_FETCH_BIDS'\n};\n\nconst NAME = 'PREBID';\n\nlet _emptyResponse = true;\nlet _targetingsCount = 0;\nlet _auctionsCount = 0;\nlet _adserverRequestResponse = false;\nlet _reload = false;\nlet _config = null;\n\n// NOTE: This is the global variable that Prebid searches for\nwindow.pbjs = window.pbjs || {};\nwindow.pbjs.que = window.pbjs.que || [];\n\nexport default Object.preventExtensions({\n NAME,\n isActive({hbPrebid}) {\n if (hbPrebid) {\n showLog('Prebid:Is active');\n } else {\n showLog('Prebid:Is NOT active');\n }\n return hbPrebid;\n },\n get emptyResponse() {\n return _emptyResponse;\n },\n set emptyResponse(response) {\n _emptyResponse = response;\n },\n get reload() {\n return _reload;\n },\n set reload(isReload) {\n _reload = isReload;\n },\n set config({hbPrebid}) {\n _config = hbPrebid;\n },\n get config() {\n return _config;\n },\n setTotalAuctions(auctionsCount) {\n _auctionsCount = auctionsCount;\n },\n /**\n * Launch prebid behaviour\n * @param {object} adUnits - adUnits config\n * @param {object} biddersConfig\n * @param {integer} timeout\n * @return {Promise}\n */\n getLoadPromise({hbPrebid}) {\n _adserverRequestResponse = false;\n return new Promise((resolve, reject) => {\n var timeout = hbPrebid.timeout || DEFAULT_PREBID_LOAD_TIMEOUT;\n _loadLibrary()\n .then(() => {\n showLog('Prebid:getLoadPromise:Library loaded');\n _setConfig(hbPrebid);\n window.pbjs.onEvent('auctionEnd', _auctionHasEnded);\n window.pbjs.onEvent('setTargeting', _setTargettingsEvent);\n return _fetchBid(hbPrebid);\n })\n .then(() => {\n showLog('Prebid:getLoadPromise:Bids fetched');\n resolve(true);\n })\n .catch((reason) => {\n reject(reason);\n });\n\n setTimeout(() => {\n if (!_adserverRequestResponse) {\n showWarn('Prebid:getLoadPromise:Timeout reached', timeout);\n reject(REASONS.TIMEOUT_REACHED_GLOBAL);\n }\n }, timeout);\n }).catch(function(reason) {\n switch (reason) {\n case REASONS.TIMEOUT_REACHED_GLOBAL:\n showLog('Prebid:getLoadPromise:TIMEOUT reached global');\n break;\n case REASONS.TIMEOUT_REACHED_FETCH_BIDS:\n showLog('Prebid:getLoadPromise:TIMEOUT reached in _fetchBid');\n break;\n case REASONS.ERROR_LOAD_LIBRARY:\n showError('Prebid:getLoadPromise:Error loading library', reason);\n break;\n case REASONS.EMPTY_ADUNITS:\n showError('Prebid:getLoadPromise:There are not adUnits');\n break;\n default:\n showError('Prebid:getLoadPromise:Error in Prebid process', reason);\n }\n return false;\n });\n },\n\n /**\n * @param {Array} addUnits Array with adunits id's eg: ['megabanner-id', 'robapaginas-id']\n */\n setTargetings(addUnits) {\n if (_adserverRequestResponse) {\n window.customcmd.push(function() {\n window.pbjs.que.push(function() {\n window.pbjs.setTargetingForGPTAsync(addUnits);\n showLog('Prebid:setTargetings:Targetings added');\n });\n });\n } else {\n showLog('Prebid:setTargetings:Targetings NOT added because no response from bidders');\n }\n },\n getTargetingsCount() {\n return _targetingsCount;\n },\n startNewAuction() {\n window.pbjs.adUnits = [];\n _setConfig(this.config);\n return _fetchBid(this.config);\n }\n});\n\n/* Private */\n\n/**\n * Load prebid library\n * @return {Promise}\n */\nfunction _loadLibrary() {\n showLog('Prebid:loadLibrary:Loading library');\n return app.load(PREBID_URL)\n .catch(function(reason) {\n showError('Prebid:loadLibrary', reason);\n return Promise.reject(REASONS.ERROR_LOAD_LIBRARY);\n });\n}\n\nfunction _setConfig(hbPrebid) {\n var biddersConfig, pbjsConfig;\n\n biddersConfig = hbPrebid.biddersConfig;\n // NOTE: set custom config object\n pbjsConfig = {\n debug : SHOW_LOGS,\n enableSendAllBids: hbPrebid.enableSendAllBids || true,\n priceGranularity : 'dense',\n consentManagement: {\n cmpApi: 'iab',\n timeout: 8000,\n allowAuctionWithoutConsent: true\n }\n };\n\n showLog('Prebid:setConfig:biddersConfig', biddersConfig);\n window.pbjs.bidderSettings = _fetchBiddersSettings(biddersConfig);\n window.pbjs.setConfig(pbjsConfig);\n showLog('Prebid:setConfig:Show Prebid config', window.pbjs.getConfig());\n}\n\n/**\n * Add adUnits config and make prebid call\n * @param {object} config - hbPrebid config from configGDPMedio\n */\nfunction _fetchBid(hbPrebid) {\n var adUnits, timeout;\n\n adUnits = hbPrebid.adUnits;\n timeout = hbPrebid.timeout || DEFAULT_PREBID_LOAD_TIMEOUT;\n\n return new Promise((resolve, reject) => {\n if (!adUnits.length) {\n showLog('Prebid:fetchBid:There are not adUnits');\n reject(REASONS.EMPTY_ADUNITS);\n return;\n }\n window.pbjs.que.push(() => {\n showLog('Prebid:fetchBid:Add adUnits', adUnits);\n window.pbjs.addAdUnits(adUnits);\n showLog('Prebid:fetchBid:Request Prebid');\n window.pbjs.requestBids({\n timeout,\n bidsBackHandler: (biddersResponse) => {\n showLog('Prebid:fetchBid:Response from Prebid', biddersResponse);\n _emptyResponse = Object.keys(biddersResponse).length === 0;\n if (Object.keys(biddersResponse).length === 0) {\n reject(REASONS.TIMEOUT_REACHED_FETCH_BIDS);\n return;\n }\n showLog('Prebid:fetchBid:Targetings', window.pbjs.getAdserverTargeting());\n _adserverRequestResponse = true;\n resolve();\n }\n });\n });\n });\n}\n\n/**\n * Build bidders settings from config\n * @param {object} biddersConfig - biddersConfig from configGDPMedio.hbPrebid\n * @return {object} bidderSettings\n */\nfunction _fetchBiddersSettings(biddersConfig) {\n const bidderSettings = {};\n\n Object.keys(biddersConfig).forEach(function(bidderName) {\n bidderSettings[bidderName] = {\n bidCpmAdjustment: function(bidCpm, bid) {\n var percent;\n\n percent = (1 - ('percent' in biddersConfig[bidderName] ? biddersConfig[bidderName].percent / 100 : 0));\n // NOTE: adjust the bid in real time before the auction takes place\n showLog('Prebid:fetchBiddersSettings:bidCpmAdjustment Bidder is:', bid.bidderCode, 'with percent:', percent);\n // NOTE: return bidCpm * .85; Ex.: rest 15% to the gross price\n return bidCpm * percent;\n }\n };\n });\n\n return bidderSettings;\n}\n\nfunction _auctionHasEnded() {\n const { auctionId } = arguments[0];\n app.promised(`${PREBID_AUCTION_ENDED}${_auctionsCount}`, auctionId);\n}\n\nfunction _setTargettingsEvent() {\n _targetingsCount++;\n app.promised(`${PREBID_SET_TARGETINGS}${_targetingsCount}`, true);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/header-bidding/providers/prebid.js","import {\n DEFAULT_PREBID_LOAD_TIMEOUT,\n DEFAULT_AMAZON_LOAD_TIMEOUT,\n OLD_PREFIX,\n NEW_SUFFIX\n} from '../constants';\nimport {\n showLog,\n showWarn\n} from '../logger';\n\nconst infiniteScrollPositions = [\n 'megabanner-id',\n 'robapaginas-id',\n 'megabanner_local-id',\n 'robapaginas_local-id'\n];\n\nexport default Object.preventExtensions({\n processConfig(configManager) {\n showLog('HBConfigManager:processConfig:Process HB config');\n _processPrebidConfig(configManager);\n _processAmazonConfig(configManager);\n }\n});\n\n/**\n * Process Prebid HB config to set dynamicId\n * @param {object} configManager\n */\nfunction _processPrebidConfig(configManager) {\n var property, adUnits, newConfig, biddersDisabled;\n var {headerBidding} = configManager.configGDPMedio;\n\n showLog('HBConfigManager:processPrebidConfig:Process Prebid config');\n\n if (!headerBidding) {\n showLog('HBConfigManager:processPrebidConfig:There are not Prebid configuration');\n configManager.configGDPMedio.hbPrebid = null;\n return;\n }\n\n property = `adUnits_${configManager.deviceType}`;\n if (!(property in headerBidding) || !headerBidding[property].length) {\n showLog('HBConfigManager:processPrebidConfig:There are not bidders to device type', configManager.deviceType);\n configManager.configGDPMedio.hbPrebid = null;\n return;\n }\n\n // NOTE: 'disabled' key has the disabled bidders separated by comma\n biddersDisabled = [];\n if ('disabled' in headerBidding.biddersConfig) {\n biddersDisabled = headerBidding.biddersConfig.disabled.map(current => current.trim());\n }\n\n adUnits = [];\n headerBidding[property].forEach((current) => {\n var position, newBids = [];\n\n if (\n configManager.dynamicId > 0\n && infiniteScrollPositions.indexOf(current.code, 0) === -1\n ) {\n return;\n }\n\n position = current.code.replace(new RegExp(`(${OLD_PREFIX}|${NEW_SUFFIX}|-([0-9]*))`, 'g'), '');\n if (!configManager.existePosEnConfigGDPMedio(position)) {\n showWarn(`HBConfigManager:processPrebidConfig:Position ${position} does not exists in configGDPMedio`);\n return;\n }\n if (!configManager.isActive({position})) {\n showWarn(`HBConfigManager:processPrebidConfig:Position ${position} is not active`);\n return;\n }\n\n current.code = configManager.dynamicId ? `${position}${NEW_SUFFIX}-${configManager.dynamicId}` : `${position}${NEW_SUFFIX}`;\n\n if (biddersDisabled.length) {\n current.bids.forEach((bid) => {\n if (biddersDisabled.indexOf(bid.bidder) < 0) {\n newBids.push(bid);\n }\n });\n } else {\n newBids = current.bids;\n }\n\n if (!newBids.length) {\n showWarn(`HBConfigManager:processPrebidConfig:Remove adUnit ${current.code} because all bidders are disabled`);\n return;\n }\n\n current.bids = newBids;\n adUnits.push(current);\n });\n\n newConfig = {\n adUnits,\n biddersConfig: headerBidding.biddersConfig,\n enableSendAllBids: headerBidding.enableSendAllBids,\n timeout: headerBidding.timeout || DEFAULT_PREBID_LOAD_TIMEOUT\n };\n\n delete configManager.configGDPMedio.headerBidding;\n configManager.configGDPMedio.hbPrebid = newConfig;\n}\n\n/**\n * Process Amazon HB config to set dynamicId and slotName\n * @param {object} configManager\n */\nfunction _processAmazonConfig(configManager) {\n var property, slots, newConfig;\n var {hbAmazon} = configManager.configGDPMedio;\n\n if (!hbAmazon) {\n showLog('HBConfigManager:processAmazonConfig:There are not Amazon configuration');\n configManager.configGDPMedio.hbAmazon = null;\n return;\n }\n\n property = `slots_${configManager.deviceType}`;\n if (!(property in hbAmazon) || !hbAmazon[property].length) {\n showLog('HBConfigManager:processAmazonConfig:There are not slots to device type', configManager.deviceType);\n configManager.configGDPMedio.hbAmazon = null;\n return;\n }\n\n slots = [];\n window.slots = slots;\n window.positions = [];\n hbAmazon[property].forEach((current) => {\n var position;\n\n // position = current.slotID.replace(new RegExp(`(${OLD_PREFIX}|${NEW_SUFFIX})`, 'g'), '');\n position = current.slotID.replace(new RegExp(`(${OLD_PREFIX}|${NEW_SUFFIX}|-([0-9]*))`, 'g'), '');\n window.positions.push(position);\n current.slotID = current.slotID.replace(new RegExp('(-[0-9]*)$', 'g'), '');\n showWarn(`HBConfigManager:processAmazonConfig:Position ${current.slotID} current slot id and position: ${position}`);\n if (!configManager.existePosEnConfigGDPMedio(position)) {\n showWarn(`HBConfigManager:processAmazonConfig:Position ${position} does not exists in configGDPMedio`);\n return;\n }\n if (!configManager.isActive({position})) {\n showWarn(`HBConfigManager:processAmazonConfig:Position ${position} is not active`);\n return;\n }\n current.slotName = _getAmazonSlotName(configManager, position);\n current.slotID += configManager.dynamicId ? `-${configManager.dynamicId}` : '';\n slots.push(current);\n });\n\n newConfig = {\n slots: slots,\n timeout: hbAmazon.timeout || DEFAULT_AMAZON_LOAD_TIMEOUT\n };\n\n configManager.configGDPMedio.hbAmazon = newConfig;\n}\n\nfunction _getAmazonSlotName(configManager, position) {\n var params;\n\n var container$ = $(`[data-voc-vam-position = '${position}']`, configManager.context$);\n if (container$.length) {\n params = configManager.normalizaParams(container$);\n } else {\n params = configManager.normalizaParams({position});\n }\n\n return configManager.getOasSitepage(params);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/header-bidding/config-manager.js","module.exports = { \"default\": require(\"core-js/library/fn/array/from\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/array/from.js\n// module id = 158\n// module chunks = 1 2 3","require('../../modules/es6.string.iterator');\nrequire('../../modules/es6.array.from');\nmodule.exports = require('../../modules/_core').Array.from;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/array/from.js\n// module id = 159\n// module chunks = 1 2 3","'use strict';\nvar ctx = require('./_ctx')\n , $export = require('./_export')\n , toObject = require('./_to-object')\n , call = require('./_iter-call')\n , isArrayIter = require('./_is-array-iter')\n , toLength = require('./_to-length')\n , createProperty = require('./_create-property')\n , getIterFn = require('./core.get-iterator-method');\n\n$export($export.S + $export.F * !require('./_iter-detect')(function(iter){ Array.from(iter); }), 'Array', {\n // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)\n from: function from(arrayLike/*, mapfn = undefined, thisArg = undefined*/){\n var O = toObject(arrayLike)\n , C = typeof this == 'function' ? this : Array\n , aLen = arguments.length\n , mapfn = aLen > 1 ? arguments[1] : undefined\n , mapping = mapfn !== undefined\n , index = 0\n , iterFn = getIterFn(O)\n , length, result, step, iterator;\n if(mapping)mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);\n // if object isn't iterable or it's array with default iterator - use simple case\n if(iterFn != undefined && !(C == Array && isArrayIter(iterFn))){\n for(iterator = iterFn.call(O), result = new C; !(step = iterator.next()).done; index++){\n createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);\n }\n } else {\n length = toLength(O.length);\n for(result = new C(length); length > index; index++){\n createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);\n }\n }\n result.length = index;\n return result;\n }\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es6.array.from.js\n// module id = 160\n// module chunks = 1 2 3","'use strict';\nvar $defineProperty = require('./_object-dp')\n , createDesc = require('./_property-desc');\n\nmodule.exports = function(object, index, value){\n if(index in object)$defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_create-property.js\n// module id = 161\n// module chunks = 1 2 3","import { createStore } from '../redux/redux';\n\nconst defaultState = {\n queue: [],\n processing: false\n};\n\nfunction queueManager(state = defaultState, action) {\n switch (action.type) {\n case 'PUSH_FN':\n return {\n ...state,\n queue: [\n ...state.queue,\n [\n action.context$,\n action.reload\n ]\n ]\n };\n case 'SLICE_FN':\n return {\n ...state,\n queue: state.queue.length ? state.queue.slice(1) : state.queue\n };\n case 'TOGGLE_PROCESSING':\n return {\n ...state,\n processing: !state.processing\n };\n case 'DRAIN':\n return {\n ...state,\n queue: []\n };\n default:\n return state;\n }\n}\n\nexport const store = createStore(queueManager);\n\n\n\n// WEBPACK FOOTER //\n// ./src/store/store.js","\"use strict\";\n\nexports.__esModule = true;\n\nvar _assign = require(\"../core-js/object/assign\");\n\nvar _assign2 = _interopRequireDefault(_assign);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _assign2.default || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/helpers/extends.js\n// module id = 163\n// module chunks = 1 2 3","module.exports = { \"default\": require(\"core-js/library/fn/object/assign\"), __esModule: true };\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/babel-runtime/core-js/object/assign.js\n// module id = 164\n// module chunks = 1 2 3","require('../../modules/es6.object.assign');\nmodule.exports = require('../../modules/_core').Object.assign;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/fn/object/assign.js\n// module id = 165\n// module chunks = 1 2 3","// 19.1.3.1 Object.assign(target, source)\nvar $export = require('./_export');\n\n$export($export.S + $export.F, 'Object', {assign: require('./_object-assign')});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/es6.object.assign.js\n// module id = 166\n// module chunks = 1 2 3","'use strict';\n// 19.1.2.1 Object.assign(target, source, ...)\nvar getKeys = require('./_object-keys')\n , gOPS = require('./_object-gops')\n , pIE = require('./_object-pie')\n , toObject = require('./_to-object')\n , IObject = require('./_iobject')\n , $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || require('./_fails')(function(){\n var A = {}\n , B = {}\n , S = Symbol()\n , K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function(k){ B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source){ // eslint-disable-line no-unused-vars\n var T = toObject(target)\n , aLen = arguments.length\n , index = 1\n , getSymbols = gOPS.f\n , isEnum = pIE.f;\n while(aLen > index){\n var S = IObject(arguments[index++])\n , keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S)\n , length = keys.length\n , j = 0\n , key;\n while(length > j)if(isEnum.call(S, key = keys[j++]))T[key] = S[key];\n } return T;\n} : $assign;\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/core-js/library/modules/_object-assign.js\n// module id = 167\n// module chunks = 1 2 3","export function createStore(reducer, initialState) {\n const currentReducer = reducer;\n let currentState = initialState;\n let listener = () => { };\n\n return {\n getState() {\n return currentState;\n },\n dispatch(action) {\n currentState = currentReducer(currentState, action);\n listener();\n return action;\n },\n subscribe(newListener) {\n listener = newListener;\n }\n };\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/redux/redux.js","export const pushFn = ({ reload, context$ }) => ({\n type: 'PUSH_FN',\n reload,\n context$\n});\n\nexport const sliceFn = () => ({\n type: 'SLICE_FN'\n});\n\nexport const toggleProcessing = () => ({\n type: 'TOGGLE_PROCESSING'\n});\n\nexport const drain = () => ({\n type: 'DRAIN'\n});\n\n\n\n// WEBPACK FOOTER //\n// ./src/actions/queue.js"],"sourceRoot":""}