text: (function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.nolimit = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
  "use strict";var info={load:function(e,r,t){function o(){t({error:s.statusText})}if(r)return void t({name:r.game,version:r.version});var s=new XMLHttpRequest;s.open("GET",e,!0),s.onload=function(){if(s.status>=200&&s.status<400)try{var e=JSON.parse(s.responseText);t(e)}catch(r){t({error:r.message})}else o()},s.onerror=o,s.send()}};module.exports=info;
  
  },{}],2:[function(require,module,exports){
  "use strict";var nolimitApiFactory=function(n){function t(n){n.addEventListener("message",function(n){n.ports.length>0&&(i=n.ports[0],i.onmessage=e,o(Object.keys(r)))})}function e(n){a(n.data.method,n.data.params)}function o(n){if(i){var t={method:"register",params:n};i.postMessage(t)}}function a(n,t){r[n]?r[n].forEach(function(n){n(t)}):(s[name]=s[name]||[],s[name].push(t))}var i,r={},s={};"IFRAME"===n.nodeName?n.addEventListener("load",function(){t(n.contentWindow)}):t(n);var c={on:function(n,t){for(r[n]=r[n]||[],r[n].push(t);s[n]&&s[n].length>0;)a(n,s[n].pop());o([n])}};return c};module.exports=nolimitApiFactory;
  
  },{}],3:[function(require,module,exports){
  module.exports="html, body {\n    overflow: hidden;\n    margin: 0;\n    width: 100%;\n    height: 100%;\n}\n\nbody {\n    position: relative;\n}\n";
  
  },{}],4:[function(require,module,exports){
  "use strict";function makeIframe(e){var t=document.createElement("iframe");copyAttributes(e,t),t.setAttribute("frameBorder","0");var n=generateName(t.getAttribute("name")||t.id);return t.setAttribute("name",n),t.style.display=getComputedStyle(e).display,t}function mergeOptions(e,t){var n,i={};for(n in DEFAULT_OPTIONS)i[n]=DEFAULT_OPTIONS[n];for(n in e)i[n]=e[n];for(n in t)i[n]=t[n];return i}function insertCss(e){var t=e.createElement("style");t.textContent=require("./nolimit.css"),e.head.appendChild(t)}function setupViewport(e){var t=e.querySelector('meta[name="viewport"]');t||e.insertAdjacentHTML("beforeend",'<meta name="viewport" content="width=device-width, initial-scale=1">')}function html(e,t){var n=e.document;insertCss(n),setupViewport(n.head);var i=n.createElement("iframe");i.setAttribute("frameBorder","0"),i.style.backgroundColor="black",i.style.width="100vw",i.style.height="100vh",i.style.zIndex="2147483647";var r=CDN.replace("{ENV}",t.environment.toLowerCase());i.src=LOADER_URL.replace("{CDN}",r).replace("{DEVICE}",t.device.toLowerCase()),e.nolimit=e.nolimit||{},e.nolimit.options=t,n.body.innerHTML="",i.onload=function(){var i=t.staticRoot||GAMES_URL.replace("{CDN}",r),o=t.game,a=i+INFO_JSON_URL.replace("{GAME}",o);info.load(a,t,function(t){e.nolimit.info=t;var r=/^\d+\.\d+\.\d+$/.test(t.version)?"/"+t.version:"",a=n.createElement("script");a.src=i+GAME_JS_URL.replace("{GAME}",o).replace("{VERSION}",r),n.body.appendChild(a)})},n.body.appendChild(i)}function copyAttributes(e,t){for(var n=e.attributes,i=0;i<n.length;i++){var r=n[i];t.setAttribute(r.name,r.value)}}var nolimitApiFactory=require("./nolimit-api"),info=require("./info"),CDN="https://{ENV}.nolimitcdn.com",LOADER_URL="{CDN}/loader/loader-{DEVICE}.html",GAMES_URL="{CDN}/games",INFO_JSON_URL="/{GAME}/info.json",GAME_JS_URL="/{GAME}{VERSION}/game.js",DEFAULT_OPTIONS={currency:"EUR",device:"desktop",environment:"partner",language:"en",loader:"nolimit.js"},nolimit={init:function(e){this.options=e},load:function(e){var t=e.target||window;e.mute=e.mute||!1;var n=mergeOptions(this.options,e);if(t instanceof HTMLElement){var i=makeIframe(t);i.addEventListener("load",function(){html(i.contentWindow,n)});var r=nolimitApiFactory(i);return t.parentNode.replaceChild(i,t),r}if(t.Window&&t instanceof t.Window){var o=nolimitApiFactory(t);return html(t,n),o}throw"Invalid option target: "+t}},generateName=function(){var e=1;return function(t){return t||"Nolimit-"+e++}}();module.exports=nolimit;
  },{"./info":1,"./nolimit-api":2,"./nolimit.css":3}]},{},[4])(4)
  });