var grid=function(t){var e={};function r(n){if(e[n])return e[n].exports;var i=e[n]={i:n,l:!1,exports:{}};return t[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)r.d(n,i,function(e){return t[e]}.bind(null,i));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=1)}([function(t,e,r){"use strict";t.exports=function(t){return"function"==typeof t}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=r(2);t.exports=function(){var t=new n.Grid;return{fetchBids:t.fetchBids.bind(t),que:t.que,renderAd:t.renderAd.bind(t)}}()},function(t,e,r){"use strict";var n=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});var i=n(r(3)),o=n(r(4)),u=n(r(5)),s=n(r(6)),a=n(r(16)),c=n(r(17)),d=n(r(0)),f=n(r(18)),p=n(r(19)),l=n(r(20)),h=n(r(21)),v=function(){function t(t){void 0===t&&(t=window),this.win=t,this.que=[],this.counter=0,this.bidResponses={},t&&t.grid&&t.grid.que&&(this.que=window.grid.que),this.que.push=function(t){return t(),0},this.processQueue()}return t.prototype.fetchBids=function(t,e){var r,n=this;if(void 0===e&&(e=s.default),!p.default(t))throw new Error("Params should be an object");try{r=this.getQueryParams(t,this.win)}catch(t){}if(!p.default(r)||!d.default(t.callback)||!l.default(t.endpoint))throw new Error("Wrong params for fetchBids");try{e({method:"GET",queryParams:r,timeout:t.timeout||3e3,url:t.endpoint,withCredentials:!0},function(e,r){if(e)t.callback("Network error: "+e);else{var i=void 0;try{i=n.parseServerResponse(t,r)}catch(e){return void t.callback("Can't parse the server's response")}var o=void 0;try{o=n.registerBidsAndFormResponse(i,t)}catch(e){return void t.callback("Can't form the server targeting")}t.callback(null,o)}})}catch(e){t.callback("Can't initiate network request: "+e)}},t.prototype.renderAd=function(t,e){var r=this.bidResponses[t];if(!r)throw new Error("Can't find bid with id: "+t);e.write(r.html)},t.prototype.processQueue=function(){var t=this;setTimeout(function(){t.que.forEach(function(t){try{t()}catch(t){console.log("grid: error occured while running a command from queue",t)}})},0)},t.prototype.registerCreative=function(t){var e=""+this.counter++;return this.bidResponses[e]=t,e},t.prototype.registerBidsAndFormResponse=function(t,e){var r=this,n={};return t.forEach(function(t){var i=t.adUnit,o=t.dealId,u=t.size,s=u[0],a=u[1],c=t.price,d={gridId:r.registerCreative(t),gridPb:h.default(c,e.bucketsConfig),gridSize:s+"x"+a};o&&(d.gridDealId=o),n[i]=d}),n},t.prototype.parseServerResponse=function(t,e){var r=this,n=[],i=JSON.parse(e).seatbid;return a.default(t.adUnits,function(t,e){var u=t.bids,s=t.size;return r.validateSize(s)&&(s=[s]),u.forEach(function(t){var r,u=t.id,a=o.default(i,function(t,e){var n=t.bid[0];r=e;var i=n.auid,a=n.w,c=n.h,d=o.default(s,function(t){var e=t[0],r=t[1];return e===a&&r===c});return!(!n||!d||i!==u)});if(a){i.splice(r,1);var c=a.bid[0];n.push({adUnit:e,dealId:c.dealid,html:c.adm,price:c.price,size:[c.w,c.h]})}}),!0}),n},t.prototype.validateSize=function(t){return c.default(t)&&f.default(t[0])&&f.default(t[1])},t.prototype.getQueryParams=function(t,e){var r=this,n=[],o=[];if(a.default(t.adUnits,function(t){return t.bids.forEach(function(e){var u=e.id;if(n.push(u),r.validateSize(t.size)){var s=t.size,a=s[0]+"x"+s[1];i.default(o,a)||o.push(a)}else{t.size.forEach(function(t){if(r.validateSize(t)){var e=t[0]+"x"+t[1];i.default(o,e)||o.push(e)}})}}),!0}),0===n.length)throw new Error("Can't find auids for an ad request");return{auids:n.join(","),keywords:t.keyWords||null,libv:"0.1.1",r:String(u.default()),sizes:o.join(","),u:e.location.href}},t}();e.Grid=v},function(t,e,r){"use strict";t.exports=function(t,e){return-1!==t.indexOf(e)}},function(t,e,r){"use strict";t.exports=function(t,e){for(var r=0,n=t.length;r=200&&e.status<300||304===e.status?r&&r(void 0,e.responseText):0!==e.status&&r&&r("error: "+e.status))},e.onerror=function(){r("error")},e.ontimeout=function(){r("timeout")},e.onabort=function(){r("aborted")},e.send(o)}},function(t,e,r){"use strict";var n=r(12),i=r(13);t.exports=function(t,e){var r=i(e);return 0===r.length?t:t+(n(t,"?")?"&":"?")+r}},function(t,e,r){"use strict";t.exports=function(t,e){return t.indexOf(e)>-1}},function(t,e,r){"use strict";var n=r(14),i=r(15);t.exports=function(t){var e=Object.keys(t),r=[];return e.forEach(function(e){var o=t[e];n(o)||i(o)||r.push(e+"="+encodeURIComponent(t[e]))}),r.join("&")}},function(t,e,r){"use strict";t.exports=function(t){return null===t}},function(t,e,r){"use strict";t.exports=function(t){return void 0===t}},function(t,e,r){"use strict";t.exports=function(t,e){for(var r in t)if(t.hasOwnProperty(r)&&!1===e(t[r],r,t))return}},function(t,e,r){"use strict";t.exports=Array.isArray},function(t,e,r){"use strict";t.exports=function(t){return"number"==typeof t}},function(t,e,r){"use strict";t.exports=function(t){var e=typeof t;return"object"===e&&null!=t||"function"===e}},function(t,e,r){"use strict";t.exports=function(t){return"string"==typeof t}},function(t,e,r){"use strict";var n=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});var i=n(r(22)),o=[{increment:.01,max:3,min:0,precision:2},{increment:.05,max:10,min:3,precision:2},{increment:.1,max:20,min:10,precision:2},{increment:.5,max:35,min:20,precision:2},{increment:1,max:100,min:35,precision:2}];e.default=function(t,e){return void 0===e&&(e=o),i.default(t,e)}},function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t,e){if(0===e.length)throw new Error("No buckets");if(t<0)throw new Error("Cpm must be >= 0");var r,n,i;e.forEach(function(t){if(void 0===t.min||void 0===t.max||void 0===t.increment||void 0===t.precision||t.min>t.max||t.min<0||t.max<0||t.increment<=0||t.precision<=1)throw new Error("Invalid buckets structure")});for(var o=0;o=(i=e[o]).min&&ti.max&&(void 0===n||i.max>n.max)&&(n=i)}if(void 0===r){if(void 0===n)throw new Error("Cant find a matching bucket");return n.max.toFixed(n.precision)}var u=i.precision,s=i.increment,a=i.min,c=Math.pow(10,u+2),d=(t*c-a*c)/(s*c),f=Math.floor(d)*s+a;return(f=Number(f.toFixed(10))).toFixed(u)}}]);