powergrid-viewer 1.11.3 → 1.11.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -23,7 +23,7 @@ object-assign
23
23
  * (c) 2015-present Evan You
24
24
  * @license MIT
25
25
  */
26
- function T(e){return T="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},T(e)}function E(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function K(e){return I(e)||U(e)||W()}function I(e){if(Array.isArray(e)){for(var n=0,t=new Array(e.length);n<e.length;n++)t[n]=e[n];return t}}function U(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function W(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function H(){return"undefined"!==typeof Reflect&&Reflect.defineMetadata&&Reflect.getOwnMetadataKeys}function F(e,n){Y(e,n),Object.getOwnPropertyNames(n.prototype).forEach((function(t){Y(e.prototype,n.prototype,t)})),Object.getOwnPropertyNames(n).forEach((function(t){Y(e,n,t)}))}function Y(e,n,t){var r=t?Reflect.getOwnMetadataKeys(n,t):Reflect.getOwnMetadataKeys(n);r.forEach((function(r){var o=t?Reflect.getOwnMetadata(r,n,t):Reflect.getOwnMetadata(r,n);t?Reflect.defineMetadata(r,o,e,t):Reflect.defineMetadata(r,o,e)}))}var V={__proto__:[]},J=V instanceof Array;function $(e){return function(n,t,r){var o="function"===typeof n?n:n.constructor;o.__decorators__||(o.__decorators__=[]),"number"!==typeof r&&(r=void 0),o.__decorators__.push((function(n){return e(n,t,r)}))}}function q(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];return d.a.extend({mixins:n})}function Z(e){var n=T(e);return null==e||"object"!==n&&"function"!==n}function X(e,n){var t=n.prototype._init;n.prototype._init=function(){var n=this,t=Object.getOwnPropertyNames(e);if(e.$options.props)for(var r in e.$options.props)e.hasOwnProperty(r)||t.push(r);t.forEach((function(t){Object.defineProperty(n,t,{get:function(){return e[t]},set:function(n){e[t]=n},configurable:!0})}))};var r=new n;n.prototype._init=t;var o={};return Object.keys(r).forEach((function(e){void 0!==r[e]&&(o[e]=r[e])})),o}var Q=["data","beforeCreate","created","beforeMount","mounted","beforeDestroy","destroyed","beforeUpdate","updated","activated","deactivated","render","errorCaptured","serverPrefetch"];function ee(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};n.name=n.name||e._componentTag||e.name;var t=e.prototype;Object.getOwnPropertyNames(t).forEach((function(e){if("constructor"!==e)if(Q.indexOf(e)>-1)n[e]=t[e];else{var r=Object.getOwnPropertyDescriptor(t,e);void 0!==r.value?"function"===typeof r.value?(n.methods||(n.methods={}))[e]=r.value:(n.mixins||(n.mixins=[])).push({data:function(){return E({},e,r.value)}}):(r.get||r.set)&&((n.computed||(n.computed={}))[e]={get:r.get,set:r.set})}})),(n.mixins||(n.mixins=[])).push({data:function(){return X(this,e)}});var r=e.__decorators__;r&&(r.forEach((function(e){return e(n)})),delete e.__decorators__);var o=Object.getPrototypeOf(e.prototype),a=o instanceof d.a?o.constructor:d.a,i=a.extend(n);return te(i,e,a),H()&&F(i,e),i}var ne={prototype:!0,arguments:!0,callee:!0,caller:!0};function te(e,n,t){Object.getOwnPropertyNames(n).forEach((function(r){if(!ne[r]){var o=Object.getOwnPropertyDescriptor(e,r);if(!o||o.configurable){var a=Object.getOwnPropertyDescriptor(n,r);if(!J){if("cid"===r)return;var i=Object.getOwnPropertyDescriptor(t,r);if(!Z(a.value)&&i&&i.value===a.value)return}0,Object.defineProperty(e,r,a)}}}))}function re(e){return"function"===typeof e?ee(e):function(n){return ee(n,e)}}re.registerHooks=function(e){Q.push.apply(Q,K(e))};var oe=re,ae="__reactiveInject__";function ie(e){return $((function(n,t){"undefined"===typeof n.inject&&(n.inject={}),Array.isArray(n.inject)||(n.inject[t]=e||t)}))}function se(e){return $((function(n,t){if("undefined"===typeof n.inject&&(n.inject={}),!Array.isArray(n.inject)){var r=e?e.from||e:t,o=!!e&&e.default||void 0;n.computed||(n.computed={}),n.computed[t]=function(){var e=this[ae];return e?e[r]:o},n.inject[ae]=ae}}))}function ce(e){var n=function(){var t=this,r="function"===typeof e?e.call(this):e;for(var o in r=Object.create(r||null),r[ae]=this[ae]||{},n.managed)r[n.managed[o]]=this[o];var a=function(e){r[n.managedReactive[e]]=i[e],Object.defineProperty(r[ae],n.managedReactive[e],{enumerable:!0,get:function(){return t[e]}})},i=this;for(var o in n.managedReactive)a(o);return r};return n.managed={},n.managedReactive={},n}function ue(e){return"function"!==typeof e||!e.managed&&!e.managedReactive}function le(e){return $((function(n,t){var r=n.provide;ue(r)&&(r=n.provide=ce(r)),r.managed[t]=e||t}))}function de(e){return $((function(n,t){var r=n.provide;Array.isArray(n.inject)||(n.inject=n.inject||{},n.inject[ae]={from:ae,default:{}}),ue(r)&&(r=n.provide=ce(r)),r.managedReactive[t]=e||t}))}var fe="undefined"!==typeof Reflect&&"undefined"!==typeof Reflect.getMetadata;function pe(e,n,t){if(fe&&!Array.isArray(e)&&"function"!==typeof e&&"undefined"===typeof e.type){var r=Reflect.getMetadata("design:type",n,t);r!==Object&&(e.type=r)}}function he(e){return void 0===e&&(e={}),function(n,t){pe(e,n,t),$((function(n,t){(n.props||(n.props={}))[t]=e}))(n,t)}}function ge(e,n){void 0===n&&(n={});var t=n.deep,r=void 0!==t&&t,o=n.immediate,a=void 0!==o&&o;return $((function(n,t){"object"!==typeof n.watch&&(n.watch=Object.create(null));var o=n.watch;"object"!==typeof o[e]||Array.isArray(o[e])?"undefined"===typeof o[e]&&(o[e]=[]):o[e]=[o[e]],o[e].push({handler:t,deep:r,immediate:a})}))}function ye(e){return $((function(n,t){n.computed=n.computed||{},n.computed[t]={cache:!1,get:function(){return this.$refs[e||t]}}}))}t("22ea");var me,ve,be,we=t("0b6f");function xe(e,n){return"Australia"===e.map.name&&n.type===ve.Uranium}function ke(e,n){return n.powerPlants.filter((function(n){return!xe(e,n)})).length}(function(e){e["Coal"]="coal",e["Oil"]="oil",e["Garbage"]="garbage",e["Uranium"]="uranium"})(me||(me={})),function(e){e[e["Coal"]=0]="Coal",e[e["Oil"]=1]="Oil",e[e["Garbage"]=2]="Garbage",e[e["Uranium"]=3]="Uranium",e[e["Hybrid"]=4]="Hybrid",e[e["Wind"]=5]="Wind",e[e["Nuclear"]=6]="Nuclear",e[e["Step3"]=7]="Step3"}(ve||(ve={})),function(e){e["Order"]="Order",e["Auction"]="Auction",e["Resources"]="Resources",e["Building"]="Building",e["Bureaucracy"]="Bureaucracy",e["GameEnd"]="Game End"}(be||(be={}));var _e,Pe,Se=[2,3,4,5,6,7];function Me(e){for(var n=e.length-1;n>=0;n--)if(e[n]<2)return n;return-1}function Ce(e,n){if(!e.uraniumMineMarket)return{income:0,price:0,mines:0,cities:0};var t=n.powerPlants.filter((function(n){return xe(e,n)}));if(0===t.length)return{income:0,price:0,mines:0,cities:0};var r=t.reduce((function(e,n){return e+n.citiesPowered}),0),o=Me(e.uraniumMineMarket);if(o<0)return{income:0,price:0,mines:t.length,cities:r};var a=Se[o],i=a*r;n.money+=i,e.options.trackTotalSpent&&(n.totalIncome+=i);for(var s=0;s<t.length;s++){var c=Me(e.uraniumMineMarket);if(c<0)break;e.uraniumMineMarket[c]++}return{income:i,price:a,mines:t.length,cities:r}}function Be(e,n){if(!e.uraniumMineMarket)return 0;for(var t=0,r=0;r<n;r++){for(var o=-1,a=0;a<e.uraniumMineMarket.length;a++)if(e.uraniumMineMarket[a]>0){o=a;break}if(o<0)break;e.uraniumMineMarket[o]--,t++}return t}(function(e){e["ChoosePowerPlant"]="ChoosePowerPlant",e["Bid"]="Bid",e["DiscardPowerPlant"]="DiscardPowerPlant",e["DiscardResources"]="DiscardResources",e["BuyResource"]="BuyResource",e["Build"]="Build",e["UsePowerPlant"]="UsePowerPlant",e["Pass"]="Pass",e["Undo"]="Undo"})(_e||(_e={}));var Re=(Pe={},i(Pe,me.Coal,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Oil,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Garbage,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Uranium,[1,2,3,4,5,6,7,8,10,12,14,16]),Pe),Ae=Re,Le=(t("9cd8"),t("3a04")),Oe=t.n(Le);function Ge(e){}function je(e,n){var t,r,o=1/0,a=P(e);try{for(a.s();!(r=a.n()).done;){var i=r.value,s=n(i);s<o&&(t=i,o=s)}}catch(c){a.e(c)}finally{a.f()}return t}function De(e,n){var t=Oe.a.alea(n),r=new Map;return e.forEach((function(e,n){var o=t.int32();while(r.has(o))o=t.int32();r.set(o,n)})),_(r.keys()).sort().map((function(n){return e[r.get(n)]}))}function Ne(e,n){var t,r,o={},a=e.log[e.log.length-1];"move"==a.type&&e.currentPlayers.includes(n.id)&&((a.player==n.id&&(null===(t=n.lastMove)||void 0===t?void 0:t.name)!=_e.Pass||e.phase==be.Bureaucracy&&(null===(r=n.lastMove)||void 0===r?void 0:r.name)==_e.UsePowerPlant)&&(o[_e.Undo]=[!0,!1]));switch(e.phase){case be.Auction:if(ke(e,n)>4||e.players.length>2&&ke(e,n)>3)o[_e.DiscardPowerPlant]=n.powerPlants.filter((function(t,r){return r!=n.powerPlants.length-1&&!xe(e,t)})).map((function(e){return e.number}));else{var i=[],s=Math.max(0,n.oilLeft-n.oilCapacity);if(n.coalCapacity+n.hybridCapacity<n.coalLeft+s&&i.push(me.Coal),s=Math.max(0,n.coalLeft-n.coalCapacity),n.oilCapacity+n.hybridCapacity<n.oilLeft+s&&i.push(me.Oil),n.garbageCapacity<n.garbageLeft&&i.push(me.Garbage),n.uraniumCapacity<n.uraniumLeft&&i.push(me.Uranium),i.length>0)o[_e.DiscardResources]=i;else if(void 0==e.chosenPowerPlant){var c=e.actualMarket.filter((function(e){return n.money>=e.number}));if("Spain & Portugal"==e.map.name){var u=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));u.every((function(e){return"yellow"==e.region}))&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("Central Europe"==e.map.name){var l=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"green"==e.region||"brown"==e.region||"purple"==e.region}));0==l.length&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("UK & Ireland"==e.map.name){var d=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));d.every((function(e){return"green"==e.region}))&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("Northern Europe"==e.map.name){var f=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"purple"==e.region||"yellow"==e.region||"brown"==e.region||"pink"==e.region}));0==f.length&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}c.length>0&&(o[_e.ChoosePowerPlant]=c.map((function(e){return e.number}))),e.round>1&&(o[_e.Pass]=[!0])}else{if(e.options.fastBid?e.minimunBid<=n.money&&(o[_e.Bid]=Object(we["range"])(e.minimunBid,n.money+1)):e.currentBid?e.currentBid<n.money&&(o[_e.Bid]=Object(we["range"])(e.currentBid+1,n.money+1)):o[_e.Bid]=Object(we["range"])(e.minimunBid,n.money+1),"Spain & Portugal"==e.map.name){var p=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));p.every((function(e){return"yellow"==e.region}))&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("Central Europe"==e.map.name){var h=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"green"==e.region||"brown"==e.region||"purple"==e.region}));0==h.length&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("UK & Ireland"==e.map.name){var g=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));g.every((function(e){return"green"==e.region}))&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("Northern Europe"==e.map.name){var y=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"purple"==e.region||"yellow"==e.region||"brown"==e.region||"pink"==e.region}));0==y.length&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}e.options.fastBid?n.id!=e.auctioningPlayer&&(o[_e.Pass]=[!0]):null!=e.currentBid&&(o[_e.Pass]=[!0])}}break;case be.Resources:if("India"==e.map.name&&void 0!==e.chosenResource){o[_e.Pass]=[!0];break}var m,v=[];m=e.map.maxPriceAvailable?e.map.maxPriceAvailable[e.step-1]:16;var b=void 0!==e.coalResupplyNorth,w=!b||"north"!==e.chosenSide,x=b&&"south"!==e.chosenSide;if(w&&e.coalMarket>0){var k,P=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0,S=null!==(k=e.coalPrices)&&void 0!==k?k:Ae[me.Coal],M=S[S.length-e.coalMarket];n.money>=M&&n.coalCapacity+n.hybridCapacity>P+n.coalLeft&&M<=m&&v.push(b?{resource:me.Coal,side:"south"}:{resource:me.Coal})}else if(w&&"recharged"==e.options.variant&&"USA"==e.map.name&&e.coalSupply>0){var C=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0;n.money>=8&&n.coalCapacity+n.hybridCapacity>C+n.coalLeft&&v.push({resource:me.Coal})}if(w&&void 0!==e.coalStorage&&e.coalStorage>0){var B=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0;n.money>=8&&n.coalCapacity+n.hybridCapacity>B+n.coalLeft&&8<=m&&v.push({resource:me.Coal,fromStorage:!0})}if(x&&e.coalMarketNorth>0){var R=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0,A=e.coalPricesNorth,L=A[A.length-e.coalMarketNorth];n.money>=L&&n.coalCapacity+n.hybridCapacity>R+n.coalLeft&&L<=m&&v.push({resource:me.Coal,side:"north"})}if(w&&e.oilMarket>0){var O,G=n.hybridCapacity>0?Math.max(0,n.coalLeft-n.coalCapacity):0,j=null!==(O=e.oilPrices)&&void 0!==O?O:Ae[me.Oil],D=j[j.length-e.oilMarket];n.money>=D&&n.oilCapacity+n.hybridCapacity>G+n.oilLeft&&D<=m&&v.push(b?{resource:me.Oil,side:"south"}:{resource:me.Oil})}if(x&&e.oilMarketNorth>0){var N=n.hybridCapacity>0?Math.max(0,n.coalLeft-n.coalCapacity):0,z=e.oilPricesNorth,T=z[z.length-e.oilMarketNorth];n.money>=T&&n.oilCapacity+n.hybridCapacity>N+n.oilLeft&&T<=m&&v.push({resource:me.Oil,side:"north"})}if(w&&e.garbageMarket>0){var E,K=null!==(E=e.garbagePrices)&&void 0!==E?E:Ae[me.Garbage],I=K[K.length-e.garbageMarket];if("Central Europe"==e.map.name){var U=n.cities.filter((function(e){return"Wien"==e.name}));(null===U||void 0===U?void 0:U.length)>0&&I--}n.money>=I&&n.garbageCapacity>n.garbageLeft&&I<=m&&v.push(b?{resource:me.Garbage,side:"south"}:{resource:me.Garbage})}if(x&&e.garbageMarketNorth>0){var W=e.garbagePricesNorth,H=W[W.length-e.garbageMarketNorth];n.money>=H&&n.garbageCapacity>n.garbageLeft&&H<=m&&v.push({resource:me.Garbage,side:"north"})}if(w&&e.uraniumMarket>0){var F,Y=null!==(F=e.uraniumPrices)&&void 0!==F?F:Ae[me.Uranium],V=Y[Y.length-e.uraniumMarket];n.money>=V&&n.uraniumCapacity>n.uraniumLeft&&V<=m&&v.push(b?{resource:me.Uranium,side:"south"}:{resource:me.Uranium})}v.length>0&&(o[_e.BuyResource]=v),o[_e.Pass]=[!0];break;case be.Building:if(n.cities.length<21){var J,$,q="Japan"===e.map.name,Z=q?new Set(null!==(J=e.map.startingCities)&&void 0!==J?J:[]):new Set;if(0==n.cities.length){var X=q?e.map.cities.filter((function(e){return Z.has(e.name)})):e.map.cities;$=X.map((function(e){return{name:e.name,price:0}}))}else if(q&&1===e.round)$=e.map.cities.filter((function(e){return Z.has(e.name)})).map((function(e){return{name:e.name,price:0}}));else if($=Te(e,n).map((function(e){return{name:e.name,price:e.price}})),q&&!n.usedFreeJump&&ze(e.map.connections,n.cities.map((function(e){return e.name})))<2){var Q=[];Z.forEach((function(e){n.cities.find((function(n){return n.name===e}))||Q.push({name:e,price:0,freeJump:!0})})),$=[].concat(_($),Q)}$.forEach((function(t){var r=e.map.cities.find((function(e){return e.name==t.name}));if(r){var o=e.players.filter((function(e){return e.cities.find((function(e){return t.name==e.name}))})).length;if(r.transregional){if(e.step<2)return void(t.price=9999);var a=r.slotCosts,i=r.stepSlots?r.stepSlots[e.step-1]:e.step,s=a?a.length:3;return o>=i||o>=s?t.price=9999:t.price+=a?a[o]:3==e.step?20:15,void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999))}if(r.island&&void 0!==e.map.crossIslandSurcharge&&n.cities.length>0){var c=new Set(n.cities.map((function(n){var t;return null===(t=e.map.cities.find((function(e){return e.name==n.name})))||void 0===t?void 0:t.island})).filter((function(e){return!!e})));if(!c.has(r.island))return void(t.price=o>0?9999:10+e.map.crossIslandSurcharge)}if(r.singleOccupancy)return 0==n.cities.length||o>=1?void(t.price=9999):void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999));"Australia"==e.map.name&&n.cities.length>0&&(t.price=Math.min(t.price,20));var u=r.slotCosts,l=r.stepSlots?r.stepSlots[e.step-1]:e.step,d=u?u.length:3;o>=l||o>=d?t.price=9999:t.price+=u?u[o]:10+5*o,n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999)}else t.price=9999})),$=$.filter((function(e){return e.price<=n.money})),$.length>0&&(o[_e.Build]=$)}o[_e.Pass]=[!0];break;case be.Bureaucracy:var ee=[];n.powerPlants.forEach((function(t){if(!xe(e,t)&&n.powerPlantsNotUsed.includes(t.number))switch(t.type){case ve.Coal:n.coalLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Coal),citiesPowered:t.citiesPowered});break;case ve.Oil:n.oilLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Oil),citiesPowered:t.citiesPowered});break;case ve.Garbage:n.garbageLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Garbage),citiesPowered:t.citiesPowered});break;case ve.Uranium:n.uraniumLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Uranium),citiesPowered:t.citiesPowered});break;case ve.Wind:case ve.Nuclear:ee.push({powerPlant:t.number,resourcesSpent:[],citiesPowered:t.citiesPowered});break;case ve.Hybrid:var r;if(n.coalLeft+n.oilLeft>=t.cost)r=1==t.cost?[[me.Coal],[me.Oil]]:2==t.cost?[[me.Coal,me.Coal],[me.Coal,me.Oil],[me.Oil,me.Oil]]:[[me.Coal,me.Coal,me.Coal],[me.Coal,me.Coal,me.Oil],[me.Coal,me.Oil,me.Oil],[me.Oil,me.Oil,me.Oil]],r.forEach((function(e){e.filter((function(e){return e==me.Coal})).length<=n.coalLeft&&e.filter((function(e){return e==me.Oil})).length<=n.oilLeft&&ee.push({powerPlant:t.number,resourcesSpent:e,citiesPowered:t.citiesPowered})}))}})),ee.length>0&&(o[_e.UsePowerPlant]=ee),("India"!=e.map.name||n.citiesPowered>=n.targetCitiesPowered||n.isAI)&&(o[_e.Pass]=[!0]);break}return o}function ze(e,n){var t,r=new Set(n),o=new Set,a=0,i=P(n);try{for(i.s();!(t=i.n()).done;){var s=t.value;if(!o.has(s)){a++;var c=[s],u=function(){var n=c.pop();if(o.has(n))return"continue";o.add(n);var t,a=P(e);try{for(a.s();!(t=a.n()).done;){var i=t.value;if(i.nodes.includes(n)){var s=i.nodes.find((function(e){return e!==n}));r.has(s)&&!o.has(s)&&c.push(s)}}}catch(u){a.e(u)}finally{a.f()}};while(c.length>0)u()}}}catch(l){i.e(l)}finally{i.f()}return a}function Te(e,n){var t=e.map.cities.map((function(e){return{name:e.name,price:n.cities.find((function(n){return n.name==e.name}))?0:9999,visited:!1}})),r=t.find((function(e){return e.name==n.cities[0].name}));if(!r)return t;r.price=0;var o=r;while(1){var a=e.map.connections.filter((function(e){return e.nodes.includes(o.name)}));a.forEach((function(r){var a,i=r.nodes.filter((function(e){return e!=o.name}))[0],s=t.find((function(e){return e.name==i})),c=e.map.cities.find((function(e){return e.name==i})),u=null!==(a=null===c||void 0===c?void 0:c.connectionCost)&&void 0!==a?a:r.cost,l=n.cities.find((function(e){return e.name==s.name}))?0:o.price+u;!s.visited&&s.price>l&&(s.price=l)})),o.visited=!0;var i=t.filter((function(e){return!e.visited})),s=je(i,(function(e){return e.price}));if(!s||s.price>n.money)break;o=s}return t}t("a516"),t("7f32"),t("ec9f"),t("da71"),t("4311");var Ee,Ke,Ie=t("4cd2"),Ue=t.n(Ie);(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow",e["Cyan"]="cyan",e["Brown"]="brown"})(Ee||(Ee={})),function(e){e["Seattle"]="Seattle",e["Portland"]="Portland",e["Boise"]="Boise",e["Billings"]="Billings",e["Cheyenne"]="Cheyenne",e["Denver"]="Denver",e["Omaha"]="Omaha",e["SanFrancisco"]="San Francisco",e["LosAngeles"]="Los Angeles",e["SanDiego"]="San Diego",e["LasVegas"]="Las Vegas",e["SaltLakeCity"]="Salt Lake City",e["Phoenix"]="Phoenix",e["SantaFe"]="Santa Fe",e["KansasCity"]="Kansas City",e["OklahomaCity"]="Oklahoma City",e["Dallas"]="Dallas",e["Houston"]="Houston",e["Memphis"]="Memphis",e["Birmingham"]="Birmingham",e["NewOrleans"]="New Orleans",e["Fargo"]="Fargo",e["Duluth"]="Duluth",e["Minneapolis"]="Minneapolis",e["Chicago"]="Chicago",e["StLouis"]="St. Louis",e["Cincinnati"]="Cincinnati",e["Knoxvile"]="Knoxvile",e["Detroit"]="Detroit",e["Buffalo"]="Buffalo",e["Pittsburgh"]="Pittsburgh",e["Boston"]="Boston",e["NewYork"]="New York",e["Philadelphia"]="Philadelphia",e["Washington"]="Washington",e["Norfolk"]="Norfolk",e["Raleigh"]="Raleigh",e["Atlanta"]="Atlanta",e["Savannah"]="Savannah",e["Jacksonvile"]="Jacksonvile",e["Tampa"]="Tampa",e["Miami"]="Miami"}(Ke||(Ke={}));var We,He,Fe={name:"USA",cities:[{name:Ke.Seattle,region:Ee.Purple,x:74,y:99},{name:Ke.Portland,region:Ee.Purple,x:45,y:167},{name:Ke.Boise,region:Ee.Purple,x:180,y:220},{name:Ke.Billings,region:Ee.Purple,x:345,y:180},{name:Ke.Cheyenne,region:Ee.Purple,x:410,y:280},{name:Ke.Denver,region:Ee.Purple,x:400,y:333},{name:Ke.Omaha,region:Ee.Purple,x:566,y:293},{name:Ke.SanFrancisco,region:Ee.Cyan,x:48,y:371},{name:Ke.LosAngeles,region:Ee.Cyan,x:116,y:460},{name:Ke.SanDiego,region:Ee.Cyan,x:157,y:507},{name:Ke.LasVegas,region:Ee.Cyan,x:200,y:410},{name:Ke.SaltLakeCity,region:Ee.Cyan,x:266,y:311},{name:Ke.Phoenix,region:Ee.Cyan,x:260,y:486},{name:Ke.SantaFe,region:Ee.Cyan,x:371,y:435},{name:Ke.KansasCity,region:Ee.Red,x:587,y:356},{name:Ke.OklahomaCity,region:Ee.Red,x:550,y:437},{name:Ke.Dallas,region:Ee.Red,x:560,y:504},{name:Ke.Houston,region:Ee.Red,x:569,y:571},{name:Ke.Memphis,region:Ee.Red,x:678,y:449},{name:Ke.Birmingham,region:Ee.Red,x:739,y:486},{name:Ke.NewOrleans,region:Ee.Red,x:674,y:570},{name:Ke.Fargo,region:Ee.Yellow,x:551,y:152},{name:Ke.Duluth,region:Ee.Yellow,x:637,y:133},{name:Ke.Minneapolis,region:Ee.Yellow,x:621,y:190},{name:Ke.Chicago,region:Ee.Yellow,x:716,y:281},{name:Ke.StLouis,region:Ee.Yellow,x:678,y:362},{name:Ke.Cincinnati,region:Ee.Yellow,x:795,y:348},{name:Ke.Knoxvile,region:Ee.Yellow,x:796,y:422},{name:Ke.Detroit,region:Ee.Brown,x:803,y:262},{name:Ke.Buffalo,region:Ee.Brown,x:913,y:251},{name:Ke.Pittsburgh,region:Ee.Brown,x:884,y:316},{name:Ke.Boston,region:Ee.Brown,x:1052,y:252},{name:Ke.NewYork,region:Ee.Brown,x:1010,y:290},{name:Ke.Philadelphia,region:Ee.Brown,x:985,y:330},{name:Ke.Washington,region:Ee.Brown,x:934,y:357},{name:Ke.Norfolk,region:Ee.Green,x:969,y:405},{name:Ke.Raleigh,region:Ee.Green,x:915,y:437},{name:Ke.Atlanta,region:Ee.Green,x:801,y:487},{name:Ke.Savannah,region:Ee.Green,x:867,y:507},{name:Ke.Jacksonvile,region:Ee.Green,x:861,y:559},{name:Ke.Tampa,region:Ee.Green,x:819,y:621},{name:Ke.Miami,region:Ee.Green,x:883,y:670}],connections:[{nodes:[Ke.Seattle,Ke.Portland],cost:3},{nodes:[Ke.Seattle,Ke.Boise],cost:12},{nodes:[Ke.Seattle,Ke.Billings],cost:9},{nodes:[Ke.Portland,Ke.Boise],cost:13},{nodes:[Ke.Portland,Ke.SanFrancisco],cost:24},{nodes:[Ke.Boise,Ke.Billings],cost:12},{nodes:[Ke.Boise,Ke.Cheyenne],cost:24},{nodes:[Ke.Boise,Ke.SanFrancisco],cost:23},{nodes:[Ke.Boise,Ke.SaltLakeCity],cost:8},{nodes:[Ke.Billings,Ke.Cheyenne],cost:9},{nodes:[Ke.Billings,Ke.Fargo],cost:17},{nodes:[Ke.Billings,Ke.Minneapolis],cost:18},{nodes:[Ke.Cheyenne,Ke.Denver],cost:0},{nodes:[Ke.Cheyenne,Ke.Omaha],cost:14},{nodes:[Ke.Cheyenne,Ke.Minneapolis],cost:18},{nodes:[Ke.Denver,Ke.SaltLakeCity],cost:21},{nodes:[Ke.Denver,Ke.SantaFe],cost:13},{nodes:[Ke.Denver,Ke.KansasCity],cost:16},{nodes:[Ke.Omaha,Ke.KansasCity],cost:5},{nodes:[Ke.Omaha,Ke.Minneapolis],cost:8},{nodes:[Ke.Omaha,Ke.Chicago],cost:13},{nodes:[Ke.SanFrancisco,Ke.LosAngeles],cost:9},{nodes:[Ke.SanFrancisco,Ke.LasVegas],cost:14},{nodes:[Ke.SanFrancisco,Ke.SaltLakeCity],cost:27},{nodes:[Ke.LosAngeles,Ke.SanDiego],cost:3},{nodes:[Ke.LosAngeles,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.Phoenix],cost:14},{nodes:[Ke.LasVegas,Ke.SaltLakeCity],cost:18},{nodes:[Ke.LasVegas,Ke.Phoenix],cost:15},{nodes:[Ke.LasVegas,Ke.SantaFe],cost:27},{nodes:[Ke.SaltLakeCity,Ke.SantaFe],cost:28},{nodes:[Ke.Phoenix,Ke.SantaFe],cost:18},{nodes:[Ke.SantaFe,Ke.KansasCity],cost:16},{nodes:[Ke.SantaFe,Ke.OklahomaCity],cost:15},{nodes:[Ke.SantaFe,Ke.Dallas],cost:16},{nodes:[Ke.SantaFe,Ke.Houston],cost:21},{nodes:[Ke.KansasCity,Ke.OklahomaCity],cost:8},{nodes:[Ke.KansasCity,Ke.Memphis],cost:12},{nodes:[Ke.KansasCity,Ke.Chicago],cost:8},{nodes:[Ke.KansasCity,Ke.StLouis],cost:6},{nodes:[Ke.OklahomaCity,Ke.Dallas],cost:3},{nodes:[Ke.OklahomaCity,Ke.Memphis],cost:14},{nodes:[Ke.Dallas,Ke.Houston],cost:5},{nodes:[Ke.Dallas,Ke.Memphis],cost:12},{nodes:[Ke.Dallas,Ke.NewOrleans],cost:12},{nodes:[Ke.Houston,Ke.NewOrleans],cost:8},{nodes:[Ke.Memphis,Ke.Birmingham],cost:6},{nodes:[Ke.Memphis,Ke.NewOrleans],cost:7},{nodes:[Ke.Memphis,Ke.StLouis],cost:7},{nodes:[Ke.Birmingham,Ke.NewOrleans],cost:11},{nodes:[Ke.Birmingham,Ke.Atlanta],cost:3},{nodes:[Ke.Birmingham,Ke.Jacksonvile],cost:9},{nodes:[Ke.NewOrleans,Ke.Jacksonvile],cost:16},{nodes:[Ke.Fargo,Ke.Duluth],cost:6},{nodes:[Ke.Fargo,Ke.Minneapolis],cost:6},{nodes:[Ke.Duluth,Ke.Minneapolis],cost:5},{nodes:[Ke.Duluth,Ke.Chicago],cost:12},{nodes:[Ke.Duluth,Ke.Detroit],cost:15},{nodes:[Ke.Minneapolis,Ke.Chicago],cost:8},{nodes:[Ke.Chicago,Ke.StLouis],cost:10},{nodes:[Ke.Chicago,Ke.Cincinnati],cost:7},{nodes:[Ke.Chicago,Ke.Detroit],cost:7},{nodes:[Ke.StLouis,Ke.Cincinnati],cost:12},{nodes:[Ke.StLouis,Ke.Atlanta],cost:12},{nodes:[Ke.Cincinnati,Ke.Knoxvile],cost:6},{nodes:[Ke.Cincinnati,Ke.Detroit],cost:4},{nodes:[Ke.Cincinnati,Ke.Pittsburgh],cost:7},{nodes:[Ke.Cincinnati,Ke.Raleigh],cost:15},{nodes:[Ke.Knoxvile,Ke.Atlanta],cost:5},{nodes:[Ke.Detroit,Ke.Buffalo],cost:7},{nodes:[Ke.Detroit,Ke.Pittsburgh],cost:6},{nodes:[Ke.Buffalo,Ke.Pittsburgh],cost:7},{nodes:[Ke.Buffalo,Ke.NewYork],cost:8},{nodes:[Ke.Pittsburgh,Ke.Washington],cost:6},{nodes:[Ke.Pittsburgh,Ke.Raleigh],cost:7},{nodes:[Ke.Boston,Ke.NewYork],cost:3},{nodes:[Ke.NewYork,Ke.Philadelphia],cost:0},{nodes:[Ke.Philadelphia,Ke.Washington],cost:3},{nodes:[Ke.Washington,Ke.Norfolk],cost:5},{nodes:[Ke.Norfolk,Ke.Raleigh],cost:3},{nodes:[Ke.Raleigh,Ke.Atlanta],cost:7},{nodes:[Ke.Raleigh,Ke.Savannah],cost:7},{nodes:[Ke.Atlanta,Ke.Savannah],cost:7},{nodes:[Ke.Savannah,Ke.Jacksonvile],cost:0},{nodes:[Ke.Jacksonvile,Ke.Tampa],cost:4},{nodes:[Ke.Tampa,Ke.Miami],cost:4}],layout:"Landscape",polygons:[{region:Ee.Brown,points:[[930,423],[1082,331],[1075,231],[716,249],[758,303],[897,406]]},{region:Ee.Green,points:[[898,405],[762,499],[758,643],[887,744],[938,688],[889,618],[1014,432],[985,387],[929,420]]},{region:Ee.Yellow,points:[[895,403],[760,499],[630,393],[607,345],[608,275],[439,162],[654,114],[771,245],[716,247],[758,301]]},{region:Ee.Red,points:[[606,344],[476,371],[445,597],[546,664],[758,641],[760,497],[629,391]]},{region:Ee.Purple,points:[[606,342],[476,369],[347,395],[313,301],[18,287],[18,165],[76,74],[438,160],[607,275]]},{region:Ee.Cyan,points:[[18,285],[20,429],[142,583],[445,594],[476,368],[346,392],[312,300]]}]},Ye={name:"USA",cities:[{name:Ke.Seattle,region:Ee.Purple,x:74,y:99},{name:Ke.Portland,region:Ee.Purple,x:45,y:167},{name:Ke.Boise,region:Ee.Purple,x:180,y:220},{name:Ke.Billings,region:Ee.Purple,x:345,y:180},{name:Ke.Cheyenne,region:Ee.Purple,x:410,y:280},{name:Ke.Denver,region:Ee.Purple,x:400,y:333},{name:Ke.Omaha,region:Ee.Purple,x:566,y:293},{name:Ke.SanFrancisco,region:Ee.Cyan,x:48,y:371},{name:Ke.LosAngeles,region:Ee.Cyan,x:116,y:460},{name:Ke.SanDiego,region:Ee.Cyan,x:157,y:507},{name:Ke.LasVegas,region:Ee.Cyan,x:200,y:410},{name:Ke.SaltLakeCity,region:Ee.Cyan,x:266,y:311},{name:Ke.Phoenix,region:Ee.Cyan,x:260,y:486},{name:Ke.SantaFe,region:Ee.Cyan,x:371,y:435},{name:Ke.KansasCity,region:Ee.Red,x:587,y:356},{name:Ke.OklahomaCity,region:Ee.Red,x:550,y:437},{name:Ke.Dallas,region:Ee.Red,x:560,y:504},{name:Ke.Houston,region:Ee.Red,x:569,y:571},{name:Ke.Memphis,region:Ee.Red,x:678,y:449},{name:Ke.Birmingham,region:Ee.Red,x:739,y:486},{name:Ke.NewOrleans,region:Ee.Red,x:674,y:570},{name:Ke.Fargo,region:Ee.Yellow,x:551,y:152},{name:Ke.Duluth,region:Ee.Yellow,x:637,y:133},{name:Ke.Minneapolis,region:Ee.Yellow,x:621,y:190},{name:Ke.Chicago,region:Ee.Yellow,x:716,y:281},{name:Ke.StLouis,region:Ee.Yellow,x:678,y:362},{name:Ke.Cincinnati,region:Ee.Yellow,x:795,y:348},{name:Ke.Knoxvile,region:Ee.Yellow,x:796,y:422},{name:Ke.Detroit,region:Ee.Brown,x:803,y:262},{name:Ke.Buffalo,region:Ee.Brown,x:913,y:251},{name:Ke.Pittsburgh,region:Ee.Brown,x:884,y:316},{name:Ke.Boston,region:Ee.Brown,x:1052,y:252},{name:Ke.NewYork,region:Ee.Brown,x:1010,y:290},{name:Ke.Philadelphia,region:Ee.Brown,x:985,y:330},{name:Ke.Washington,region:Ee.Brown,x:934,y:357},{name:Ke.Norfolk,region:Ee.Green,x:969,y:405},{name:Ke.Raleigh,region:Ee.Green,x:915,y:437},{name:Ke.Atlanta,region:Ee.Green,x:801,y:487},{name:Ke.Savannah,region:Ee.Green,x:867,y:507},{name:Ke.Jacksonvile,region:Ee.Green,x:861,y:559},{name:Ke.Tampa,region:Ee.Green,x:819,y:621},{name:Ke.Miami,region:Ee.Green,x:883,y:670}],connections:[{nodes:[Ke.Seattle,Ke.Portland],cost:3},{nodes:[Ke.Seattle,Ke.Boise],cost:12},{nodes:[Ke.Seattle,Ke.Billings],cost:9},{nodes:[Ke.Portland,Ke.Boise],cost:13},{nodes:[Ke.Portland,Ke.SanFrancisco],cost:24},{nodes:[Ke.Boise,Ke.Billings],cost:12},{nodes:[Ke.Boise,Ke.SanFrancisco],cost:23},{nodes:[Ke.Boise,Ke.SaltLakeCity],cost:8},{nodes:[Ke.Billings,Ke.Cheyenne],cost:9},{nodes:[Ke.Billings,Ke.Fargo],cost:17},{nodes:[Ke.Billings,Ke.Minneapolis],cost:18},{nodes:[Ke.Cheyenne,Ke.Denver],cost:0},{nodes:[Ke.Cheyenne,Ke.Omaha],cost:14},{nodes:[Ke.Cheyenne,Ke.Minneapolis],cost:18},{nodes:[Ke.Denver,Ke.SaltLakeCity],cost:21},{nodes:[Ke.Denver,Ke.SantaFe],cost:13},{nodes:[Ke.Denver,Ke.KansasCity],cost:16},{nodes:[Ke.Omaha,Ke.KansasCity],cost:5},{nodes:[Ke.Omaha,Ke.Minneapolis],cost:8},{nodes:[Ke.Omaha,Ke.Chicago],cost:12},{nodes:[Ke.SanFrancisco,Ke.LosAngeles],cost:9},{nodes:[Ke.SanFrancisco,Ke.LasVegas],cost:14},{nodes:[Ke.SanFrancisco,Ke.SaltLakeCity],cost:27},{nodes:[Ke.LosAngeles,Ke.SanDiego],cost:3},{nodes:[Ke.LosAngeles,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.LasVegas],cost:9},{nodes:[Ke.SanDiego,Ke.Phoenix],cost:14},{nodes:[Ke.LasVegas,Ke.SaltLakeCity],cost:18},{nodes:[Ke.LasVegas,Ke.Phoenix],cost:15},{nodes:[Ke.LasVegas,Ke.SantaFe],cost:27},{nodes:[Ke.SaltLakeCity,Ke.SantaFe],cost:28},{nodes:[Ke.Phoenix,Ke.SantaFe],cost:18},{nodes:[Ke.SantaFe,Ke.KansasCity],cost:16},{nodes:[Ke.SantaFe,Ke.OklahomaCity],cost:15},{nodes:[Ke.SantaFe,Ke.Dallas],cost:16},{nodes:[Ke.SantaFe,Ke.Houston],cost:20},{nodes:[Ke.KansasCity,Ke.OklahomaCity],cost:8},{nodes:[Ke.KansasCity,Ke.Memphis],cost:12},{nodes:[Ke.KansasCity,Ke.Chicago],cost:8},{nodes:[Ke.KansasCity,Ke.StLouis],cost:6},{nodes:[Ke.OklahomaCity,Ke.Dallas],cost:3},{nodes:[Ke.OklahomaCity,Ke.Memphis],cost:14},{nodes:[Ke.Dallas,Ke.Houston],cost:5},{nodes:[Ke.Dallas,Ke.Memphis],cost:12},{nodes:[Ke.Dallas,Ke.NewOrleans],cost:12},{nodes:[Ke.Houston,Ke.NewOrleans],cost:8},{nodes:[Ke.Memphis,Ke.Birmingham],cost:6},{nodes:[Ke.Memphis,Ke.NewOrleans],cost:7},{nodes:[Ke.Memphis,Ke.StLouis],cost:7},{nodes:[Ke.Birmingham,Ke.NewOrleans],cost:11},{nodes:[Ke.Birmingham,Ke.Atlanta],cost:3},{nodes:[Ke.Birmingham,Ke.Jacksonvile],cost:9},{nodes:[Ke.NewOrleans,Ke.Jacksonvile],cost:16},{nodes:[Ke.Fargo,Ke.Duluth],cost:6},{nodes:[Ke.Fargo,Ke.Minneapolis],cost:6},{nodes:[Ke.Duluth,Ke.Minneapolis],cost:5},{nodes:[Ke.Duluth,Ke.Chicago],cost:12},{nodes:[Ke.Duluth,Ke.Detroit],cost:15},{nodes:[Ke.Minneapolis,Ke.Chicago],cost:8},{nodes:[Ke.Chicago,Ke.StLouis],cost:10},{nodes:[Ke.Chicago,Ke.Cincinnati],cost:7},{nodes:[Ke.Chicago,Ke.Detroit],cost:7},{nodes:[Ke.StLouis,Ke.Cincinnati],cost:12},{nodes:[Ke.StLouis,Ke.Atlanta],cost:12},{nodes:[Ke.Cincinnati,Ke.Knoxvile],cost:6},{nodes:[Ke.Cincinnati,Ke.Detroit],cost:4},{nodes:[Ke.Cincinnati,Ke.Pittsburgh],cost:7},{nodes:[Ke.Knoxvile,Ke.Atlanta],cost:5},{nodes:[Ke.Knoxvile,Ke.Raleigh],cost:11},{nodes:[Ke.Detroit,Ke.Buffalo],cost:7},{nodes:[Ke.Detroit,Ke.Pittsburgh],cost:6},{nodes:[Ke.Buffalo,Ke.Pittsburgh],cost:7},{nodes:[Ke.Buffalo,Ke.NewYork],cost:8},{nodes:[Ke.Pittsburgh,Ke.Washington],cost:6},{nodes:[Ke.Pittsburgh,Ke.Raleigh],cost:7},{nodes:[Ke.Boston,Ke.NewYork],cost:3},{nodes:[Ke.NewYork,Ke.Philadelphia],cost:0},{nodes:[Ke.Philadelphia,Ke.Washington],cost:3},{nodes:[Ke.Washington,Ke.Norfolk],cost:5},{nodes:[Ke.Norfolk,Ke.Raleigh],cost:3},{nodes:[Ke.Raleigh,Ke.Atlanta],cost:7},{nodes:[Ke.Raleigh,Ke.Savannah],cost:7},{nodes:[Ke.Atlanta,Ke.Savannah],cost:7},{nodes:[Ke.Savannah,Ke.Jacksonvile],cost:0},{nodes:[Ke.Jacksonvile,Ke.Tampa],cost:4},{nodes:[Ke.Tampa,Ke.Miami],cost:4}],layout:"Landscape",mapSpecificRules:"You can buy coal from the supply for $8."},Ve=[{number:3,type:ve.Oil,cost:2,citiesPowered:1},{number:4,type:ve.Coal,cost:2,citiesPowered:1},{number:5,type:ve.Hybrid,cost:2,citiesPowered:1},{number:6,type:ve.Garbage,cost:1,citiesPowered:1},{number:7,type:ve.Oil,cost:3,citiesPowered:2},{number:8,type:ve.Coal,cost:3,citiesPowered:2},{number:9,type:ve.Oil,cost:1,citiesPowered:1},{number:10,type:ve.Coal,cost:2,citiesPowered:2},{number:11,type:ve.Uranium,cost:1,citiesPowered:2},{number:12,type:ve.Hybrid,cost:2,citiesPowered:2},{number:13,type:ve.Wind,cost:0,citiesPowered:1},{number:14,type:ve.Garbage,cost:2,citiesPowered:2},{number:15,type:ve.Coal,cost:2,citiesPowered:3},{number:16,type:ve.Oil,cost:2,citiesPowered:3},{number:17,type:ve.Uranium,cost:1,citiesPowered:2},{number:18,type:ve.Wind,cost:0,citiesPowered:2},{number:19,type:ve.Garbage,cost:2,citiesPowered:3},{number:20,type:ve.Coal,cost:3,citiesPowered:5},{number:21,type:ve.Hybrid,cost:2,citiesPowered:4},{number:22,type:ve.Wind,cost:0,citiesPowered:2},{number:23,type:ve.Uranium,cost:1,citiesPowered:3},{number:24,type:ve.Garbage,cost:2,citiesPowered:4},{number:25,type:ve.Coal,cost:2,citiesPowered:5},{number:26,type:ve.Oil,cost:2,citiesPowered:5},{number:27,type:ve.Wind,cost:0,citiesPowered:3},{number:28,type:ve.Uranium,cost:1,citiesPowered:4},{number:29,type:ve.Hybrid,cost:1,citiesPowered:4},{number:30,type:ve.Garbage,cost:3,citiesPowered:6},{number:31,type:ve.Coal,cost:3,citiesPowered:6},{number:32,type:ve.Oil,cost:3,citiesPowered:6},{number:33,type:ve.Wind,cost:0,citiesPowered:4},{number:34,type:ve.Uranium,cost:1,citiesPowered:5},{number:35,type:ve.Oil,cost:1,citiesPowered:5},{number:36,type:ve.Coal,cost:3,citiesPowered:7},{number:37,type:ve.Wind,cost:0,citiesPowered:4},{number:38,type:ve.Garbage,cost:3,citiesPowered:7},{number:39,type:ve.Uranium,cost:1,citiesPowered:6},{number:40,type:ve.Oil,cost:2,citiesPowered:6},{number:42,type:ve.Coal,cost:2,citiesPowered:6},{number:44,type:ve.Wind,cost:0,citiesPowered:5},{number:46,type:ve.Hybrid,cost:3,citiesPowered:7},{number:50,type:ve.Nuclear,cost:0,citiesPowered:6},{number:99,type:ve.Step3,cost:0,citiesPowered:6}],Je=Object(we["cloneDeep"])(Ve).filter((function(e){return 11!=e.number}));Je.forEach((function(e){e.type==ve.Garbage&&(e.storage=2*e.cost,e.cost++)})),function(e){e["Pink"]="pink",e["Brown"]="brown",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow"}(We||(We={})),function(e){e["Hobart"]="Hobart",e["Launceston"]="Launceston",e["Geelong"]="Geelong",e["Melbourne1"]="Melbourne 1",e["Melbourne2"]="Melbourne 2",e["Bendigo"]="Bendigo",e["Albury"]="Albury",e["Wollongong"]="Wollongong",e["Mildura"]="Mildura",e["Dubbo"]="Dubbo",e["Canberra"]="Canberra",e["Sydney1"]="Sydney 1",e["Sydney2"]="Sydney 2",e["Newcastle"]="Newcastle",e["Toowoomba"]="Toowoomba",e["Goldcoast"]="Gold Coast",e["Brisbane"]="Brisbane",e["Rockhampton"]="Rockhampton",e["Mackay"]="Mackay",e["Townsville"]="Townsville",e["Cairns"]="Cairns",e["Porthedland"]="Port Hedland",e["Broome"]="Broome",e["Albany"]="Albany",e["Bunbury"]="Bunbury",e["Perth"]="Perth",e["Kalgoorlie"]="Kalgoorlie",e["Geraldton"]="Geraldton",e["Darwin"]="Darwin",e["Katherine"]="Katherine",e["Tennantcreek"]="Tennant Creek",e["Alicesprings"]="Alice Springs",e["Portaugusta"]="Port Augusta",e["CooberPedy"]="Coober Pedy",e["Adelaide"]="Adelaide"}(He||(He={}));var $e,qe,Ze={name:"Australia",layout:"Landscape",adjustRatio:[.33,.33],mapPosition:[40,-30],mapRotation:180,cities:[{name:He.Hobart,region:We.Pink,x:540,y:467},{name:He.Launceston,region:We.Pink,x:720,y:500},{name:He.Geelong,region:We.Pink,x:988,y:712},{name:He.Melbourne1,region:We.Pink,x:790,y:650},{name:He.Melbourne2,region:We.Pink,x:790,y:790},{name:He.Bendigo,region:We.Pink,x:1052,y:870},{name:He.Albury,region:We.Brown,x:810,y:983},{name:He.Wollongong,region:We.Brown,x:530,y:1080},{name:He.Mildura,region:We.Pink,x:1185,y:1010},{name:He.Dubbo,region:We.Brown,x:891,y:1364},{name:He.Canberra,region:We.Brown,x:804,y:1188},{name:He.Sydney1,region:We.Brown,x:550,y:1230},{name:He.Sydney2,region:We.Brown,x:550,y:1380},{name:He.Newcastle,region:We.Brown,x:530,y:1545},{name:He.Toowoomba,region:We.Green,x:1010,y:1660},{name:He.Goldcoast,region:We.Green,x:660,y:1730},{name:He.Brisbane,region:We.Green,x:740,y:1885},{name:He.Rockhampton,region:We.Green,x:1040,y:1987},{name:He.Mackay,region:We.Green,x:1260,y:2101},{name:He.Townsville,region:We.Green,x:1445,y:2193},{name:He.Cairns,region:We.Green,x:1652,y:2209},{name:He.Porthedland,region:We.Red,x:2741,y:2002},{name:He.Broome,region:We.Red,x:2503,y:2175},{name:He.Albany,region:We.Red,x:2400,y:850},{name:He.Bunbury,region:We.Red,x:2700,y:1030},{name:He.Perth,region:We.Red,x:2680,y:1230},{name:He.Kalgoorlie,region:We.Red,x:2177,y:1295},{name:He.Geraldton,region:We.Red,x:2747,y:1557},{name:He.Darwin,region:We.Yellow,x:2264,y:2016},{name:He.Katherine,region:We.Yellow,x:2105,y:1947},{name:He.Tennantcreek,region:We.Yellow,x:1905,y:1736},{name:He.Alicesprings,region:We.Yellow,x:1803,y:1512},{name:He.Portaugusta,region:We.Yellow,x:1520,y:1094},{name:He.CooberPedy,region:We.Yellow,x:1850,y:1232},{name:He.Adelaide,region:We.Yellow,x:1430,y:863}],connections:[{nodes:[He.Broome,He.Porthedland],cost:13},{nodes:[He.Kalgoorlie,He.Geraldton],cost:16},{nodes:[He.Geraldton,He.Perth],cost:9},{nodes:[He.Perth,He.Kalgoorlie],cost:12},{nodes:[He.Kalgoorlie,He.Albany],cost:16},{nodes:[He.Albany,He.Perth],cost:9},{nodes:[He.Perth,He.Bunbury],cost:4},{nodes:[He.Bunbury,He.Albany],cost:6},{nodes:[He.Cairns,He.Townsville],cost:9},{nodes:[He.Townsville,He.Mackay],cost:9},{nodes:[He.Mackay,He.Rockhampton],cost:8},{nodes:[He.Rockhampton,He.Toowoomba],cost:15},{nodes:[He.Toowoomba,He.Brisbane],cost:5},{nodes:[He.Brisbane,He.Rockhampton],cost:15},{nodes:[He.Brisbane,He.Goldcoast],cost:2},{nodes:[He.Goldcoast,He.Toowoomba],cost:6},{nodes:[He.Goldcoast,He.Newcastle],cost:15},{nodes:[He.Newcastle,He.Sydney2],cost:4},{nodes:[He.Sydney2,He.Sydney1],cost:0},{nodes:[He.Newcastle,He.Dubbo],cost:10},{nodes:[He.Dubbo,He.Toowoomba],cost:18},{nodes:[He.Sydney1,He.Wollongong],cost:2},{nodes:[He.Sydney1,He.Canberra],cost:8},{nodes:[He.Canberra,He.Dubbo],cost:11},{nodes:[He.Canberra,He.Newcastle],cost:10},{nodes:[He.Dubbo,He.Mildura],cost:16},{nodes:[He.Mildura,He.Canberra],cost:16},{nodes:[He.Canberra,He.Albury],cost:7},{nodes:[He.Mildura,He.Bendigo],cost:7},{nodes:[He.Bendigo,He.Melbourne2],cost:3},{nodes:[He.Melbourne2,He.Albury],cost:9},{nodes:[He.Mildura,He.Adelaide],cost:8},{nodes:[He.Adelaide,He.Portaugusta],cost:7},{nodes:[He.Portaugusta,He.CooberPedy],cost:11},{nodes:[He.Mildura,He.Portaugusta],cost:11},{nodes:[He.Adelaide,He.Geelong],cost:13},{nodes:[He.Geelong,He.Bendigo],cost:5},{nodes:[He.Bendigo,He.Albury],cost:6},{nodes:[He.Wollongong,He.Melbourne1],cost:19},{nodes:[He.Melbourne1,He.Launceston],cost:19},{nodes:[He.Launceston,He.Hobart],cost:5},{nodes:[He.Melbourne1,He.Geelong],cost:2},{nodes:[He.Melbourne2,He.Melbourne1],cost:0},{nodes:[He.CooberPedy,He.Alicesprings],cost:13},{nodes:[He.Alicesprings,He.Tennantcreek],cost:10},{nodes:[He.Tennantcreek,He.Katherine],cost:14},{nodes:[He.Katherine,He.Darwin],cost:6}],resupply:[[[3,5,4],[4,6,4],[4,7,5],[5,9,6],[7,10,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]],uraniumMineResupply:[[1,2,3],[1,2,3],[2,2,4],[2,3,5],[3,3,6]],startingResources:[24,18,15,0],startingSupply:[24,24,24,0],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve).filter((function(e){return 17!==e.number}));if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[qt(3),qt(4),qt(5),qt(6)],o=[qt(7),qt(8),qt(9),qt(10)]}else{var u=De(a.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Uranium mines: the five uranium power plants (11, 23, 28, 34, 39) are replaced by uranium mines. Power plant 17 is removed from the deck. Mines are bought in the normal power-plant auctions but do not power cities and do not count toward the 3-power-plant hand limit (a player may hold any number of mines plus up to 3 power plants). Mines DO count for player order. Instead of powering cities, during Bureaucracy each mine produces uranium for sale on the separate uranium market. Uranium market: a separate market of 12 slots (prices $2–$7, two slots each), all filled at game start. When selling, a player earns the highest available (empty-slot) price times the total cities their mines could power, then places one uranium token per mine on the highest empty slots. The resource-market refill REMOVES uranium tokens from the cheapest filled slots. Selling happens AUTOMATICALLY during Bureaucracy, in reverse turn order (the last player in turn order sells first). The printed rules let a player decline to sell; for simplicity this implementation always sells, so no player action is required. Unlike city income, uranium income is still paid in the final round. Main resource market: there is no uranium row — coal, oil and garbage only. Step 3 CO2 tax: when Step 3 begins, the six cheapest tokens of each resource move into new $9 and $10 spaces, and the $1 and $2 spaces become inactive for the rest of the game (the market shifts up by $2). General connection: any single build may connect a city for a flat 20 Elektro instead of the shortest-path connection cost, and this may be used multiple times in one turn. Metropolises: Melbourne and Sydney each consist of two cities (1 and 2) connected by a 0-cost edge. Regions need not be adjacent: any combination of regions may be in play."};(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Blue"]="blue",e["Yellow"]="yellow"})($e||($e={})),function(e){e["Friedrichshafen"]="Friedrichshafen",e["Ravensburg"]="Ravensburg",e["Biberach"]="Biberach",e["Sigmarincen"]="Sigmaringen",e["Konstanz"]="Konstanz",e["Ulm"]="Ulm",e["Augsburg"]="Augsburg",e["Basel"]="Basel",e["Waldshuttiencen"]="Waldshut-Tiengen",e["Singen"]="Singen",e["Tuttlincen"]="Tuttlingen",e["Donaueschingen"]="Donaueschingen",e["Freiburg"]="Freiburg",e["Lorrach"]="Lorrach",e["Tauberbischofsheim"]="Tauberbischofsheim",e["Schwabischhall"]="Schwabisch Hall",e["Heilbronn"]="Heilbronn",e["Sinsheim"]="Sinsheim",e["Heidelber"]="Heidelberg",e["Mannheim"]="Mannheim",e["Luowigshafen"]="Ludwigshafen",e["Nurnberg"]="Nurnberg",e["Ellwangen"]="Ellwangen",e["Coppingen"]="Göppingen",e["Reutlincen"]="Reutlingen",e["Stuttgart"]="Stuttgart",e["Ludwigsburg"]="Ludwigsburg",e["Boblingen"]="Boblingen",e["Laha"]="Lahr",e["Badenbaden"]="Baden-Baden",e["Offenburg"]="Offenburg",e["Strasbourg"]="Strasbourg",e["Pforzheim"]="Pforzheim",e["Rastatt"]="Rastatt",e["Karlsruhf"]="Karlsruhe"}(qe||(qe={}));var Xe,Qe,en={name:"Baden-Württemberg",cities:[{name:qe.Friedrichshafen,region:$e.Purple,x:1286,y:2177},{name:qe.Ravensburg,region:$e.Purple,x:1365,y:2023},{name:qe.Biberach,region:$e.Purple,x:1451,y:1779},{name:qe.Sigmarincen,region:$e.Purple,x:1111,y:1803},{name:qe.Konstanz,region:$e.Purple,x:1088,y:2163},{name:qe.Ulm,region:$e.Purple,x:1541,y:1499},{name:qe.Augsburg,region:$e.Purple,x:1830,y:1505,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Basel,region:$e.Green,x:103,y:2271,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Waldshuttiencen,region:$e.Green,x:502,y:2166},{name:qe.Singen,region:$e.Green,x:874,y:2084},{name:qe.Tuttlincen,region:$e.Green,x:870,y:1854},{name:qe.Donaueschingen,region:$e.Green,x:669,y:1923},{name:qe.Freiburg,region:$e.Green,x:290,y:1828},{name:qe.Lorrach,region:$e.Green,x:212,y:2141},{name:qe.Tauberbischofsheim,region:$e.Red,x:1354,y:450},{name:qe.Schwabischhall,region:$e.Red,x:1415,y:899},{name:qe.Heilbronn,region:$e.Red,x:1115,y:872},{name:qe.Sinsheim,region:$e.Red,x:920,y:785},{name:qe.Heidelber,region:$e.Red,x:817,y:660},{name:qe.Mannheim,region:$e.Red,x:710,y:540},{name:qe.Luowigshafen,region:$e.Red,x:579,y:588,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Nurnberg,region:$e.Blue,x:1837,y:771,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Ellwangen,region:$e.Blue,x:1637,y:1030},{name:qe.Coppingen,region:$e.Blue,x:1387,y:1233},{name:qe.Reutlincen,region:$e.Blue,x:1107,y:1443},{name:qe.Stuttgart,region:$e.Blue,x:1106,y:1217},{name:qe.Ludwigsburg,region:$e.Blue,x:1099,y:1047},{name:qe.Boblingen,region:$e.Blue,x:956,y:1277},{name:qe.Laha,region:$e.Yellow,x:296,y:1575},{name:qe.Badenbaden,region:$e.Yellow,x:554,y:1259},{name:qe.Offenburg,region:$e.Yellow,x:395,y:1422},{name:qe.Strasbourg,region:$e.Yellow,x:211,y:1330,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:qe.Pforzheim,region:$e.Yellow,x:794,y:1095},{name:qe.Rastatt,region:$e.Yellow,x:509,y:1109},{name:qe.Karlsruhf,region:$e.Yellow,x:638,y:974}],connections:[{nodes:[qe.Luowigshafen,qe.Mannheim],cost:0},{nodes:[qe.Mannheim,qe.Heidelber],cost:4},{nodes:[qe.Mannheim,qe.Karlsruhf],cost:10},{nodes:[qe.Karlsruhf,qe.Heidelber],cost:9},{nodes:[qe.Heidelber,qe.Sinsheim],cost:5},{nodes:[qe.Sinsheim,qe.Tauberbischofsheim],cost:15},{nodes:[qe.Tauberbischofsheim,qe.Heilbronn],cost:13},{nodes:[qe.Heilbronn,qe.Sinsheim],cost:6},{nodes:[qe.Sinsheim,qe.Karlsruhf],cost:9},{nodes:[qe.Karlsruhf,qe.Rastatt],cost:4},{nodes:[qe.Karlsruhf,qe.Pforzheim],cost:6},{nodes:[qe.Pforzheim,qe.Sinsheim],cost:10},{nodes:[qe.Tauberbischofsheim,qe.Schwabischhall],cost:13},{nodes:[qe.Schwabischhall,qe.Ellwangen],cost:8},{nodes:[qe.Ellwangen,qe.Nurnberg],cost:18},{nodes:[qe.Schwabischhall,qe.Coppingen],cost:11},{nodes:[qe.Coppingen,qe.Ellwangen],cost:10},{nodes:[qe.Ludwigsburg,qe.Heilbronn],cost:5},{nodes:[qe.Heilbronn,qe.Schwabischhall],cost:9},{nodes:[qe.Schwabischhall,qe.Ludwigsburg],cost:10},{nodes:[qe.Ludwigsburg,qe.Coppingen],cost:9},{nodes:[qe.Coppingen,qe.Stuttgart],cost:8},{nodes:[qe.Ludwigsburg,qe.Sinsheim],cost:10},{nodes:[qe.Ludwigsburg,qe.Pforzheim],cost:8},{nodes:[qe.Pforzheim,qe.Badenbaden],cost:9},{nodes:[qe.Badenbaden,qe.Rastatt],cost:2},{nodes:[qe.Strasbourg,qe.Offenburg],cost:5},{nodes:[qe.Offenburg,qe.Badenbaden],cost:8},{nodes:[qe.Pforzheim,qe.Stuttgart],cost:8},{nodes:[qe.Stuttgart,qe.Ludwigsburg],cost:2},{nodes:[qe.Stuttgart,qe.Boblingen],cost:4},{nodes:[qe.Boblingen,qe.Pforzheim],cost:7},{nodes:[qe.Boblingen,qe.Badenbaden],cost:15},{nodes:[qe.Reutlincen,qe.Stuttgart],cost:9},{nodes:[qe.Boblingen,qe.Reutlincen],cost:8},{nodes:[qe.Reutlincen,qe.Badenbaden],cost:22},{nodes:[qe.Offenburg,qe.Reutlincen],cost:30},{nodes:[qe.Reutlincen,qe.Coppingen],cost:10},{nodes:[qe.Coppingen,qe.Ulm],cost:10},{nodes:[qe.Ulm,qe.Reutlincen],cost:16},{nodes:[qe.Ellwangen,qe.Ulm],cost:19},{nodes:[qe.Ulm,qe.Augsburg],cost:16},{nodes:[qe.Reutlincen,qe.Tuttlincen],cost:17},{nodes:[qe.Reutlincen,qe.Sigmarincen],cost:11},{nodes:[qe.Sigmarincen,qe.Ulm],cost:14},{nodes:[qe.Ulm,qe.Biberach],cost:8},{nodes:[qe.Biberach,qe.Sigmarincen],cost:11},{nodes:[qe.Biberach,qe.Ravensburg],cost:9},{nodes:[qe.Ravensburg,qe.Sigmarincen],cost:10},{nodes:[qe.Sigmarincen,qe.Tuttlincen],cost:7},{nodes:[qe.Tuttlincen,qe.Offenburg],cost:27},{nodes:[qe.Offenburg,qe.Laha],cost:3},{nodes:[qe.Laha,qe.Freiburg],cost:8},{nodes:[qe.Laha,qe.Donaueschingen],cost:19},{nodes:[qe.Donaueschingen,qe.Tuttlincen],cost:6},{nodes:[qe.Tuttlincen,qe.Singen],cost:7},{nodes:[qe.Singen,qe.Donaueschingen],cost:7},{nodes:[qe.Donaueschingen,qe.Freiburg],cost:13},{nodes:[qe.Freiburg,qe.Lorrach],cost:10},{nodes:[qe.Freiburg,qe.Waldshuttiencen],cost:15},{nodes:[qe.Waldshuttiencen,qe.Lorrach],cost:9},{nodes:[qe.Lorrach,qe.Basel],cost:2},{nodes:[qe.Waldshuttiencen,qe.Donaueschingen],cost:11},{nodes:[qe.Singen,qe.Konstanz],cost:6},{nodes:[qe.Konstanz,qe.Friedrichshafen],cost:9},{nodes:[qe.Friedrichshafen,qe.Ravensburg],cost:3},{nodes:[qe.Friedrichshafen,qe.Sigmarincen],cost:11},{nodes:[qe.Sigmarincen,qe.Konstanz],cost:14},{nodes:[qe.Konstanz,qe.Tuttlincen],cost:11}],layout:"Portrait",adjustRatio:[.425,.425],mapPosition:[100,-90],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],mapSpecificRules:"Phase order change: buy power plants first, then determine player order. If no power plant is sold in a round, remove the two lowest-numbered plants from the market and replace them from the draw stack. Never remove a power plant whose number is equal to or lower than the number of cities any player has powered. Transregional cities (e.g. Strasbourg) are only available starting in Step 2. Step 2 begins when any player connects to 9 cities (2 players), 6 cities (3–5 players), or 5 cities (6 players)."};(function(e){e["Green"]="green",e["Brown"]="brown",e["Yellow"]="yellow",e["Red"]="red",e["Blue"]="blue"})(Xe||(Xe={})),function(e){e["Groningen"]="Groningen",e["Enschede"]="Enschede",e["Apeldoorn"]="Apeldoorn",e["Arnhem"]="Arnhem",e["Leeuwarden"]="Leeuwarden",e["Nijmegen"]="Nijmegen",e["Denhelder"]="Den Helder",e["Zaanstad"]="Zaanstad",e["Amsterdam"]="Amsterdam",e["Utrecht"]="Utrecht",e["Haarlem"]="Haarlem",e["Leiden"]="Leiden",e["Denhaas"]="Den Haas",e["Rotterdam"]="Rotterdam",e["Enbosch"]="En Bosch",e["Venlo"]="Venlo",e["Eindhoven"]="Eindhoven",e["Tilburg"]="Tilburg",e["Breda"]="Breda",e["Middelburg"]="Middelburg",e["Maastricht"]="Maastricht",e["Leuven"]="Leuven",e["Brussel"]="Brussel",e["Antwerpen"]="Antwerpen",e["Gent"]="Gent",e["Kortrijk"]="Kortrijk",e["Brugge"]="Brugge",e["Dostende"]="Dostende",e["Liege"]="Liege",e["Namur"]="Namur",e["Bruxelles"]="Bruxelles",e["Charleroi"]="Charleroi",e["Mons"]="Mons",e["Arlon"]="Arlon",e["Luxembourg"]="Luxembourg"}(Qe||(Qe={}));var nn,tn,rn={name:"Benelux",cities:[{name:Qe.Groningen,region:Xe.Green,x:654,y:147},{name:Qe.Enschede,region:Xe.Green,x:659,y:369},{name:Qe.Apeldoorn,region:Xe.Green,x:552,y:329},{name:Qe.Arnhem,region:Xe.Green,x:541,y:386},{name:Qe.Leeuwarden,region:Xe.Green,x:560,y:136},{name:Qe.Nijmegen,region:Xe.Green,x:518,y:445},{name:Qe.Denhelder,region:Xe.Green,x:411,y:169},{name:Qe.Zaanstad,region:Xe.Brown,x:432,y:245},{name:Qe.Amsterdam,region:Xe.Brown,x:437,y:299},{name:Qe.Utrecht,region:Xe.Brown,x:429,y:361},{name:Qe.Haarlem,region:Xe.Brown,x:373,y:259},{name:Qe.Leiden,region:Xe.Brown,x:355,y:322},{name:Qe.Denhaas,region:Xe.Brown,x:300,y:347},{name:Qe.Rotterdam,region:Xe.Brown,x:338,y:400},{name:Qe.Enbosch,region:Xe.Yellow,x:448,y:447},{name:Qe.Venlo,region:Xe.Yellow,x:550,y:526},{name:Qe.Eindhoven,region:Xe.Yellow,x:463,y:539},{name:Qe.Tilburg,region:Xe.Yellow,x:404,y:497},{name:Qe.Breda,region:Xe.Yellow,x:349,y:466},{name:Qe.Middelburg,region:Xe.Yellow,x:210,y:453},{name:Qe.Maastricht,region:Xe.Yellow,x:480,y:640},{name:Qe.Leuven,region:Xe.Red,x:352,y:619},{name:Qe.Brussel,region:Xe.Red,x:286,y:595},{name:Qe.Antwerpen,region:Xe.Red,x:304,y:526},{name:Qe.Gent,region:Xe.Red,x:206,y:562},{name:Qe.Kortrijk,region:Xe.Red,x:132,y:589},{name:Qe.Brugge,region:Xe.Red,x:160,y:511},{name:Qe.Dostende,region:Xe.Red,x:94,y:495},{name:Qe.Liege,region:Xe.Blue,x:445,y:705},{name:Qe.Namur,region:Xe.Blue,x:361,y:713},{name:Qe.Bruxelles,region:Xe.Blue,x:283,y:642},{name:Qe.Charleroi,region:Xe.Blue,x:278,y:725},{name:Qe.Mons,region:Xe.Blue,x:212,y:686},{name:Qe.Arlon,region:Xe.Blue,x:431,y:876},{name:Qe.Luxembourg,region:Xe.Blue,x:502,y:918}],connections:[{nodes:[Qe.Denhelder,Qe.Leeuwarden],cost:13},{nodes:[Qe.Leeuwarden,Qe.Groningen],cost:6},{nodes:[Qe.Groningen,Qe.Enschede],cost:12},{nodes:[Qe.Enschede,Qe.Apeldoorn],cost:9},{nodes:[Qe.Apeldoorn,Qe.Arnhem],cost:3},{nodes:[Qe.Arnhem,Qe.Nijmegen],cost:2},{nodes:[Qe.Nijmegen,Qe.Enbosch],cost:6},{nodes:[Qe.Nijmegen,Qe.Venlo],cost:7},{nodes:[Qe.Nijmegen,Qe.Eindhoven],cost:7},{nodes:[Qe.Eindhoven,Qe.Enbosch],cost:4},{nodes:[Qe.Enbosch,Qe.Utrecht],cost:8},{nodes:[Qe.Apeldoorn,Qe.Leeuwarden],cost:15},{nodes:[Qe.Leeuwarden,Qe.Enschede],cost:13},{nodes:[Qe.Enschede,Qe.Arnhem],cost:7},{nodes:[Qe.Arnhem,Qe.Utrecht],cost:6},{nodes:[Qe.Utrecht,Qe.Amsterdam],cost:4},{nodes:[Qe.Amsterdam,Qe.Haarlem],cost:2},{nodes:[Qe.Haarlem,Qe.Zaanstad],cost:2},{nodes:[Qe.Zaanstad,Qe.Denhelder],cost:6},{nodes:[Qe.Denhelder,Qe.Haarlem],cost:7},{nodes:[Qe.Haarlem,Qe.Leiden],cost:3},{nodes:[Qe.Leiden,Qe.Denhaas],cost:2},{nodes:[Qe.Denhaas,Qe.Rotterdam],cost:3},{nodes:[Qe.Rotterdam,Qe.Leiden],cost:3},{nodes:[Qe.Leiden,Qe.Amsterdam],cost:4},{nodes:[Qe.Leiden,Qe.Utrecht],cost:4},{nodes:[Qe.Utrecht,Qe.Rotterdam],cost:5},{nodes:[Qe.Rotterdam,Qe.Enbosch],cost:11},{nodes:[Qe.Breda,Qe.Rotterdam],cost:8},{nodes:[Qe.Breda,Qe.Middelburg],cost:9},{nodes:[Qe.Middelburg,Qe.Antwerpen],cost:8},{nodes:[Qe.Antwerpen,Qe.Brugge],cost:9},{nodes:[Qe.Brugge,Qe.Dostende],cost:2},{nodes:[Qe.Amsterdam,Qe.Zaanstad],cost:1},{nodes:[Qe.Amsterdam,Qe.Apeldoorn],cost:7},{nodes:[Qe.Apeldoorn,Qe.Utrecht],cost:6},{nodes:[Qe.Venlo,Qe.Eindhoven],cost:5},{nodes:[Qe.Eindhoven,Qe.Tilburg],cost:4},{nodes:[Qe.Tilburg,Qe.Breda],cost:2},{nodes:[Qe.Breda,Qe.Enbosch],cost:5},{nodes:[Qe.Breda,Qe.Antwerpen],cost:5},{nodes:[Qe.Antwerpen,Qe.Tilburg],cost:6},{nodes:[Qe.Antwerpen,Qe.Eindhoven],cost:8},{nodes:[Qe.Eindhoven,Qe.Maastricht],cost:8},{nodes:[Qe.Maastricht,Qe.Venlo],cost:10},{nodes:[Qe.Maastricht,Qe.Leuven],cost:7},{nodes:[Qe.Leuven,Qe.Eindhoven],cost:9},{nodes:[Qe.Leuven,Qe.Brussel],cost:2},{nodes:[Qe.Brussel,Qe.Bruxelles],cost:0},{nodes:[Qe.Bruxelles,Qe.Charleroi],cost:5},{nodes:[Qe.Charleroi,Qe.Namur],cost:3},{nodes:[Qe.Namur,Qe.Bruxelles],cost:5},{nodes:[Qe.Leuven,Qe.Namur],cost:5},{nodes:[Qe.Leuven,Qe.Liege],cost:7},{nodes:[Qe.Liege,Qe.Namur],cost:6},{nodes:[Qe.Liege,Qe.Maastricht],cost:3},{nodes:[Qe.Kortrijk,Qe.Dostende],cost:5},{nodes:[Qe.Brugge,Qe.Kortrijk],cost:4},{nodes:[Qe.Kortrijk,Qe.Gent],cost:4},{nodes:[Qe.Gent,Qe.Brugge],cost:3},{nodes:[Qe.Kortrijk,Qe.Bruxelles],cost:10},{nodes:[Qe.Bruxelles,Qe.Mons],cost:5},{nodes:[Qe.Mons,Qe.Kortrijk],cost:8},{nodes:[Qe.Gent,Qe.Antwerpen],cost:5},{nodes:[Qe.Antwerpen,Qe.Brussel],cost:4},{nodes:[Qe.Brussel,Qe.Gent],cost:7},{nodes:[Qe.Antwerpen,Qe.Leuven],cost:4},{nodes:[Qe.Mons,Qe.Charleroi],cost:4},{nodes:[Qe.Charleroi,Qe.Arlon],cost:18},{nodes:[Qe.Arlon,Qe.Luxembourg],cost:5},{nodes:[Qe.Luxembourg,Qe.Liege],cost:20},{nodes:[Qe.Liege,Qe.Arlon],cost:18},{nodes:[Qe.Arlon,Qe.Namur],cost:16},{nodes:[Qe.Tilburg,Qe.Enbosch],cost:3}],layout:"Portrait",mapPosition:[0,-50],adjustRatio:[1.15,1.15],resupply:[[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[1,2,3],[2,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[18,24,6,2],viewBox:[1530,1060],playerOrderPosition:[1225,140],buttonsPosition:[1370,0],playerBoardsPosition:[1170,200],actualMarketWidth:495,mapSpecificRules:"Ecological plants can enter the market earlier. Remove smallest power plant after each round (unless discount plant was removed)."};(function(e){e["Red"]="red",e["Pink"]="pink",e["Purple"]="purple",e["Green"]="green",e["Brown"]="brown",e["Yellow"]="yellow"})(nn||(nn={})),function(e){e["Parnaiba"]="Parnaiba",e["Fortaleza"]="Fortaleza",e["Sadluis"]="Sadluis",e["Belem"]="Belem",e["Teresina"]="Teresina",e["Imperatriz"]="Imperatriz",e["Maraba"]="Maraba",e["Campinagrande"]="Campina Grande",e["Petrolina"]="Petrolina",e["Natal"]="Natal",e["Joaopessoa"]="Joaopessoa",e["Recife"]="Recife",e["Maceio"]="Maceio",e["Aracaju"]="Aracaju",e["Salvadordabahia"]="Salvador Da Bahia",e["Montesclaros"]="Montes Claros",e["Brasilia"]="Brasilia",e["Palmas"]="Palmas",e["Porangatu"]="Porangatu",e["Goiania"]="Goiania",e["Uberlandia"]="Uberlandia",e["Vitoria"]="Vitoria",e["Riodejaneiro"]="Rio De Janeiro",e["Saogoncalo"]="Sao Goncalo",e["Saopaulo"]="Sao Paulo",e["Guarulhos"]="Guarulhos",e["Campinas"]="Campinas",e["Belohorizonte"]="Belo Horizonte",e["Curitiba"]="Curitiba",e["Florianopolis"]="Florianopolis",e["Portoalecre"]="Porto Alecre",e["Pelotas"]="Pelotas",e["Urucuaiana"]="Urucuaiana",e["Londrina"]="Londrina",e["Campogrande"]="Campo Grande",e["Macapa"]="Macapa",e["Boavista"]="Boavista",e["Manaus"]="Manaus",e["Portovelho"]="Porto Velho",e["Cuiaba"]="Cuiaba",e["Vilhena"]="Vilhena",e["Riobranco"]="Rio Branco"}(tn||(tn={}));var on,an,sn={name:"Brazil",cities:[{name:tn.Parnaiba,region:nn.Red,x:855,y:458},{name:tn.Fortaleza,region:nn.Red,x:961,y:478},{name:tn.Sadluis,region:nn.Red,x:772,y:418},{name:tn.Belem,region:nn.Red,x:655,y:378},{name:tn.Teresina,region:nn.Red,x:846,y:548},{name:tn.Imperatriz,region:nn.Red,x:697,y:535},{name:tn.Maraba,region:nn.Red,x:581,y:492},{name:tn.Campinagrande,region:nn.Pink,x:976,y:587},{name:tn.Petrolina,region:nn.Pink,x:872,y:648},{name:tn.Natal,region:nn.Pink,x:1061,y:518},{name:tn.Joaopessoa,region:nn.Pink,x:1097,y:576},{name:tn.Recife,region:nn.Pink,x:1083,y:637},{name:tn.Maceio,region:nn.Pink,x:1040,y:699},{name:tn.Aracaju,region:nn.Pink,x:995,y:750},{name:tn.Salvadordabahia,region:nn.Purple,x:960,y:808},{name:tn.Montesclaros,region:nn.Purple,x:795,y:847},{name:tn.Brasilia,region:nn.Purple,x:671,y:817},{name:tn.Palmas,region:nn.Purple,x:648,y:663},{name:tn.Porangatu,region:nn.Purple,x:598,y:762},{name:tn.Goiania,region:nn.Purple,x:601,y:889},{name:tn.Uberlandia,region:nn.Purple,x:646,y:964},{name:tn.Vitoria,region:nn.Green,x:910,y:971},{name:tn.Riodejaneiro,region:nn.Green,x:795,y:1076},{name:tn.Saogoncalo,region:nn.Green,x:843,y:1033},{name:tn.Saopaulo,region:nn.Green,x:721,y:1134},{name:tn.Guarulhos,region:nn.Green,x:678,y:1089},{name:tn.Campinas,region:nn.Green,x:629,y:1037},{name:tn.Belohorizonte,region:nn.Green,x:771,y:960},{name:tn.Curitiba,region:nn.Brown,x:615,y:1144},{name:tn.Florianopolis,region:nn.Brown,x:665,y:1214},{name:tn.Portoalecre,region:nn.Brown,x:590,y:1281},{name:tn.Pelotas,region:nn.Brown,x:551,y:1346},{name:tn.Urucuaiana,region:nn.Brown,x:444,y:1250},{name:tn.Londrina,region:nn.Brown,x:516,y:1075},{name:tn.Campogrande,region:nn.Brown,x:440,y:983},{name:tn.Macapa,region:nn.Yellow,x:561,y:317},{name:tn.Boavista,region:nn.Yellow,x:308,y:269},{name:tn.Manaus,region:nn.Yellow,x:258,y:466},{name:tn.Portovelho,region:nn.Yellow,x:238,y:620},{name:tn.Cuiaba,region:nn.Yellow,x:432,y:850},{name:tn.Vilhena,region:nn.Yellow,x:328,y:741},{name:tn.Riobranco,region:nn.Yellow,x:87,y:666}],connections:[{nodes:[tn.Boavista,tn.Macapa],cost:22},{nodes:[tn.Macapa,tn.Belem],cost:10},{nodes:[tn.Belem,tn.Sadluis],cost:10},{nodes:[tn.Sadluis,tn.Imperatriz],cost:9},{nodes:[tn.Belem,tn.Imperatriz],cost:9},{nodes:[tn.Belem,tn.Maraba],cost:9},{nodes:[tn.Macapa,tn.Maraba],cost:16},{nodes:[tn.Maraba,tn.Manaus],cost:22},{nodes:[tn.Macapa,tn.Manaus],cost:18},{nodes:[tn.Boavista,tn.Manaus],cost:13},{nodes:[tn.Boavista,tn.Riobranco],cost:30},{nodes:[tn.Riobranco,tn.Manaus],cost:23},{nodes:[tn.Manaus,tn.Portovelho],cost:15},{nodes:[tn.Portovelho,tn.Riobranco],cost:10},{nodes:[tn.Riobranco,tn.Vilhena],cost:18},{nodes:[tn.Portovelho,tn.Vilhena],cost:12},{nodes:[tn.Manaus,tn.Vilhena],cost:21},{nodes:[tn.Vilhena,tn.Cuiaba],cost:10},{nodes:[tn.Vilhena,tn.Maraba],cost:31},{nodes:[tn.Maraba,tn.Imperatriz],cost:4},{nodes:[tn.Sadluis,tn.Teresina],cost:8},{nodes:[tn.Teresina,tn.Imperatriz],cost:11},{nodes:[tn.Imperatriz,tn.Palmas],cost:9},{nodes:[tn.Palmas,tn.Maraba],cost:10},{nodes:[tn.Maraba,tn.Porangatu],cost:17},{nodes:[tn.Porangatu,tn.Goiania],cost:8},{nodes:[tn.Porangatu,tn.Vilhena],cost:23},{nodes:[tn.Cuiaba,tn.Porangatu],cost:16},{nodes:[tn.Porangatu,tn.Palmas],cost:8},{nodes:[tn.Palmas,tn.Brasilia],cost:13},{nodes:[tn.Brasilia,tn.Porangatu],cost:6},{nodes:[tn.Brasilia,tn.Goiania],cost:4},{nodes:[tn.Goiania,tn.Cuiaba],cost:15},{nodes:[tn.Sadluis,tn.Parnaiba],cost:5},{nodes:[tn.Parnaiba,tn.Teresina],cost:5},{nodes:[tn.Parnaiba,tn.Fortaleza],cost:7},{nodes:[tn.Fortaleza,tn.Natal],cost:8},{nodes:[tn.Natal,tn.Joaopessoa],cost:3},{nodes:[tn.Joaopessoa,tn.Recife],cost:2},{nodes:[tn.Recife,tn.Maceio],cost:3},{nodes:[tn.Maceio,tn.Aracaju],cost:3},{nodes:[tn.Aracaju,tn.Salvadordabahia],cost:4},{nodes:[tn.Natal,tn.Campinagrande],cost:4},{nodes:[tn.Fortaleza,tn.Teresina],cost:10},{nodes:[tn.Teresina,tn.Petrolina],cost:12},{nodes:[tn.Petrolina,tn.Palmas],cost:19},{nodes:[tn.Petrolina,tn.Brasilia],cost:22},{nodes:[tn.Petrolina,tn.Montesclaros],cost:19},{nodes:[tn.Montesclaros,tn.Salvadordabahia],cost:16},{nodes:[tn.Salvadordabahia,tn.Petrolina],cost:10},{nodes:[tn.Petrolina,tn.Campinagrande],cost:12},{nodes:[tn.Petrolina,tn.Aracaju],cost:11},{nodes:[tn.Vitoria,tn.Salvadordabahia],cost:16},{nodes:[tn.Montesclaros,tn.Vitoria],cost:14},{nodes:[tn.Vitoria,tn.Saogoncalo],cost:6},{nodes:[tn.Vitoria,tn.Belohorizonte],cost:9},{nodes:[tn.Belohorizonte,tn.Montesclaros],cost:8},{nodes:[tn.Montesclaros,tn.Brasilia],cost:9},{nodes:[tn.Brasilia,tn.Uberlandia],cost:8},{nodes:[tn.Uberlandia,tn.Goiania],cost:7},{nodes:[tn.Goiania,tn.Campogrande],cost:16},{nodes:[tn.Campogrande,tn.Cuiaba],cost:13},{nodes:[tn.Campogrande,tn.Londrina],cost:10},{nodes:[tn.Campogrande,tn.Uberlandia],cost:13},{nodes:[tn.Uberlandia,tn.Londrina],cost:12},{nodes:[tn.Londrina,tn.Campinas],cost:9},{nodes:[tn.Campinas,tn.Uberlandia],cost:9},{nodes:[tn.Uberlandia,tn.Belohorizonte],cost:10},{nodes:[tn.Uberlandia,tn.Brasilia],cost:8},{nodes:[tn.Brasilia,tn.Belohorizonte],cost:14},{nodes:[tn.Belohorizonte,tn.Saogoncalo],cost:7},{nodes:[tn.Saogoncalo,tn.Riodejaneiro],cost:0},{nodes:[tn.Riodejaneiro,tn.Saopaulo],cost:7},{nodes:[tn.Saopaulo,tn.Guarulhos],cost:0},{nodes:[tn.Guarulhos,tn.Campinas],cost:0},{nodes:[tn.Campinas,tn.Curitiba],cost:6},{nodes:[tn.Curitiba,tn.Londrina],cost:7},{nodes:[tn.Saopaulo,tn.Florianopolis],cost:9},{nodes:[tn.Florianopolis,tn.Curitiba],cost:4},{nodes:[tn.Londrina,tn.Urucuaiana],cost:18},{nodes:[tn.Urucuaiana,tn.Pelotas],cost:9},{nodes:[tn.Pelotas,tn.Portoalecre],cost:4},{nodes:[tn.Portoalecre,tn.Urucuaiana],cost:10},{nodes:[tn.Londrina,tn.Portoalecre],cost:16},{nodes:[tn.Portoalecre,tn.Curitiba],cost:11},{nodes:[tn.Portoalecre,tn.Florianopolis],cost:7},{nodes:[tn.Guarulhos,tn.Belohorizonte],cost:10},{nodes:[tn.Maceio,tn.Campinagrande],cost:6},{nodes:[tn.Petrolina,tn.Fortaleza],cost:14},{nodes:[tn.Recife,tn.Campinagrande],cost:3}],layout:"Portrait",adjustRatio:[.85,.85],mapPosition:[-20,-130],resupply:[[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[24,18,6,2],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve),i=a.filter((function(e){return e.type==ve.Garbage&&e.number>14}));if("original"==n){a=a.slice(8);var s=a.splice(2,1)[0],c=a.splice(2,1)[0],u=a.pop();a=De(a.filter((function(e){return e.type!=ve.Garbage})),t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a=a.concat(i),a=De(a,t()+""),a.unshift(c),a.unshift(s),a.push(u),r=[qt(3),qt(4),qt(5),qt(6)],o=[qt(7),qt(8),qt(9),qt(10)]}else{var l=a.splice(3,1)[0],d=a.splice(10,1)[0],f=De(a.splice(0,11),t()+""),p=f.splice(0,6);p.push(l,d),p=p.sort((function(e,n){return e.number-n.number})),r=p.slice(0,4),o=p.slice(4);var h=f.shift(),g=a.pop();a=De(a.filter((function(e){return e.type!=ve.Garbage})),t()+""),2==e?(f=f.slice(1),a=De(a.slice(5).concat(f),t()+"")):3==e?(f=f.slice(2),a=De(a.slice(6).concat(f),t()+"")):4==e?(f=f.slice(1),a=De(a.slice(3).concat(f),t()+"")):a=De(a.concat(f),t()+""),a=a.concat(i),a=De(a,t()+""),a.unshift(h),a.push(g)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Play with all garbage power plants."};(function(e){e["Blue"]="blue",e["Pink"]="pink",e["Purple"]="purple",e["Red"]="red",e["Orange"]="orange"})(on||(on={})),function(e){e["Borgfeld"]="Borgfeld",e["Oberneuland"]="Oberneuland",e["Osterholz"]="Osterholz",e["HornLehe"]="Horn-Lehe",e["Vahr"]="Vahr",e["Schwachhausen"]="Schwachhausen",e["OstlicheVorstadt"]="Östliche Vorstadt",e["Findorff"]="Findorff",e["Walle"]="Walle",e["Mitte"]="Mitte",e["Hemelingen"]="Hemelingen",e["Mahndorf"]="Mahndorf",e["Neustadt"]="Neustadt",e["Obervieland"]="Obervieland",e["Huchting"]="Huchting",e["Hofen"]="Höfen",e["Pusdorf"]="Pusdorf",e["Neustadtshafen"]="Neustadtshafen",e["Strom"]="Strom",e["Seehausen"]="Seehausen",e["Blockland"]="Blockland",e["Gropelingen"]="Gröpelingen",e["Burglesum"]="Burglesum",e["Vegesack"]="Vegesack",e["Blumenthal"]="Blumenthal"}(an||(an={}));var cn,un,ln={name:"Bremen",cities:[{name:an.Borgfeld,region:on.Blue,connectionCost:15,slotCosts:[8,14],x:645,y:273},{name:an.Oberneuland,region:on.Blue,connectionCost:14,slotCosts:[8,14,20],x:652,y:342},{name:an.Osterholz,region:on.Blue,connectionCost:11,slotCosts:[8,14,20],x:660,y:434},{name:an.HornLehe,region:on.Blue,connectionCost:9,slotCosts:[8,14,20],x:572,y:322},{name:an.Vahr,region:on.Blue,connectionCost:6,slotCosts:[8,14,20],x:583,y:376},{name:an.Schwachhausen,region:on.Pink,connectionCost:5,slotCosts:[8,14,20],x:517,y:357},{name:an.OstlicheVorstadt,region:on.Pink,connectionCost:2,slotCosts:[8,14,20],x:536,y:409},{name:an.Findorff,region:on.Pink,connectionCost:3,slotCosts:[8,14],x:488,y:311},{name:an.Walle,region:on.Pink,connectionCost:6,slotCosts:[8,14,20],x:438,y:342},{name:an.Mitte,region:on.Pink,connectionCost:1,slotCosts:[8,14,20],x:472,y:388},{name:an.Hemelingen,region:on.Purple,connectionCost:8,slotCosts:[8,14,20],x:600,y:453},{name:an.Mahndorf,region:on.Purple,connectionCost:10,slotCosts:[8,14,20],x:666,y:499},{name:an.Neustadt,region:on.Purple,connectionCost:5,slotCosts:[8,14,20],x:464,y:452},{name:an.Obervieland,region:on.Purple,connectionCost:10,slotCosts:[8,14,20],x:529,y:479},{name:an.Huchting,region:on.Purple,connectionCost:12,slotCosts:[8,14],x:386,y:442},{name:an.Hofen,region:on.Red,connectionCost:9,slotCosts:[8,14,20],x:352,y:272},{name:an.Pusdorf,region:on.Red,connectionCost:7,slotCosts:[8,14,20],x:399,y:386},{name:an.Neustadtshafen,region:on.Red,connectionCost:8,slotCosts:[8,14,20],x:375,y:340},{name:an.Strom,region:on.Red,connectionCost:14,slotCosts:[8,14,20],x:328,y:393},{name:an.Seehausen,region:on.Red,connectionCost:14,slotCosts:[8,14],x:290,y:321},{name:an.Blockland,region:on.Orange,connectionCost:11,slotCosts:[8,14,20],x:476,y:251},{name:an.Gropelingen,region:on.Orange,connectionCost:8,slotCosts:[8,14,20],x:426,y:280},{name:an.Burglesum,region:on.Orange,connectionCost:13,slotCosts:[8,14,20],x:337,y:197},{name:an.Vegesack,region:on.Orange,connectionCost:10,slotCosts:[8,14,20],x:248,y:170},{name:an.Blumenthal,region:on.Orange,connectionCost:15,slotCosts:[8,14],x:154,y:135}],connections:[{nodes:[an.Borgfeld,an.Oberneuland],cost:0},{nodes:[an.Oberneuland,an.Osterholz],cost:0},{nodes:[an.Borgfeld,an.HornLehe],cost:0},{nodes:[an.Oberneuland,an.HornLehe],cost:0},{nodes:[an.Oberneuland,an.Vahr],cost:0},{nodes:[an.Osterholz,an.Vahr],cost:0},{nodes:[an.HornLehe,an.Vahr],cost:0},{nodes:[an.HornLehe,an.Schwachhausen],cost:0},{nodes:[an.HornLehe,an.Findorff],cost:0},{nodes:[an.Vahr,an.Hemelingen],cost:0},{nodes:[an.Osterholz,an.Mahndorf],cost:0},{nodes:[an.Hofen,an.Neustadtshafen],cost:0},{nodes:[an.Hofen,an.Seehausen],cost:0},{nodes:[an.Pusdorf,an.Neustadtshafen],cost:0},{nodes:[an.Neustadtshafen,an.Seehausen],cost:0},{nodes:[an.Neustadtshafen,an.Strom],cost:0},{nodes:[an.Seehausen,an.Strom],cost:0},{nodes:[an.Blockland,an.Gropelingen],cost:0},{nodes:[an.Blockland,an.Burglesum],cost:0},{nodes:[an.Gropelingen,an.Burglesum],cost:0},{nodes:[an.Burglesum,an.Vegesack],cost:0},{nodes:[an.Vegesack,an.Blumenthal],cost:0},{nodes:[an.Mahndorf,an.Hemelingen],cost:0},{nodes:[an.Hemelingen,an.Obervieland],cost:0},{nodes:[an.Obervieland,an.Neustadt],cost:0},{nodes:[an.Neustadt,an.Huchting],cost:0},{nodes:[an.Hemelingen,an.OstlicheVorstadt],cost:0},{nodes:[an.Obervieland,an.OstlicheVorstadt],cost:0},{nodes:[an.Neustadt,an.Mitte],cost:0},{nodes:[an.Neustadt,an.OstlicheVorstadt],cost:0},{nodes:[an.Huchting,an.Strom],cost:0},{nodes:[an.Huchting,an.Pusdorf],cost:0},{nodes:[an.Findorff,an.Walle],cost:0},{nodes:[an.Findorff,an.Mitte],cost:0},{nodes:[an.Findorff,an.Schwachhausen],cost:0},{nodes:[an.Schwachhausen,an.OstlicheVorstadt],cost:0},{nodes:[an.Schwachhausen,an.Mitte],cost:0},{nodes:[an.Walle,an.Mitte],cost:0},{nodes:[an.Mitte,an.OstlicheVorstadt],cost:0},{nodes:[an.Strom,an.Pusdorf],cost:0},{nodes:[an.Vahr,an.Schwachhausen],cost:0},{nodes:[an.Blockland,an.HornLehe],cost:0},{nodes:[an.Hemelingen,an.Osterholz],cost:0},{nodes:[an.Hofen,an.Gropelingen],cost:0},{nodes:[an.Hofen,an.Burglesum],cost:0},{nodes:[an.Burglesum,an.Seehausen],cost:0},{nodes:[an.Walle,an.Gropelingen],cost:0},{nodes:[an.Walle,an.Blockland],cost:0},{nodes:[an.Findorff,an.Blockland],cost:0},{nodes:[an.Walle,an.Hofen],cost:0},{nodes:[an.Walle,an.Neustadtshafen],cost:0},{nodes:[an.Walle,an.Pusdorf],cost:0},{nodes:[an.Pusdorf,an.Neustadt],cost:0}],layout:"Landscape",adjustRatio:[1.75,1.75],mapPosition:[-120,-140],mapRotation:0,resupply:[[[4,5,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,3,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,1],[1,2,1],[2,3,2],[3,3,3],[3,5,3]],[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]],coalPrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,8,8],oilPrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,8,8],garbagePrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,8,8],startingResources:[22,16,16,0],startingSupply:[22,22,22,0],setupDeck:function(e,n,t){var r=new Set([11,17,23,28,34,36,38,39,46]);e<=4&&(r.add(31),r.add(50));var o,a,i=Object(we["cloneDeep"])(Ve).filter((function(e){return!r.has(e.number)})),s=i.pop();if("original"==n){o=[qt(3),qt(4),qt(5),qt(6)],a=[qt(7),qt(8),qt(9),qt(10)];var c=new Set([3,4,5,6,7,8,9,10]),u=i.find((function(e){return 13==e.number})),l=i.filter((function(e){return!c.has(e.number)&&13!=e.number}));return l=De(l,t()+""),l.unshift(u),l.push(s),{actualMarket:o,futureMarket:a,powerPlantsDeck:l}}var d=De(i.filter((function(e){return e.number<=15})),t()+""),f=i.filter((function(e){return e.number>15})),p=d.splice(0,8).sort((function(e,n){return e.number-n.number}));o=p.slice(0,4),a=p.slice(4);var h=d.shift();return f=De(f.concat(d),t()+""),f.unshift(h),f.push(s),{actualMarket:o,futureMarket:a,powerPlantsDeck:f}},mapSpecificRules:"Flat district costs: instead of connection costs between cities, each district has a single cost. Connecting a new district to your network costs the sum of the district costs along the cheapest path from your network (you pay for each district entered, including ones you only pass through), plus the cheapest building cost (8 / 14 / 20 Elektro) in the new district. Small districts have only two spaces (8 / 14) and can hold just two networks. The Weser and Lesum rivers can be crossed without extra cost. No nuclear: nuclear power plants and uranium are not used. Step 2 begins once a player has 5 connected districts (4 for 6 players); the game ends when a player connects 13 districts (12 for 5 players, 11 for 6)."};(function(e){e["Blue"]="blue",e["Brown"]="brown",e["Purple"]="purple",e["Red"]="red",e["Yellow"]="yellow",e["Green"]="green"})(cn||(cn={})),function(e){e["Bialystok"]="Bialystok",e["Lublin"]="Lublin",e["Warszawa"]="Warszawa",e["Krakow"]="Krakow",e["Sosnowiec"]="Sosnowiec",e["Katowice"]="Katowice",e["Czestochowa"]="Czesto Chowa",e["Presov"]="Presov",e["Kosice"]="Kosice",e["Poprad"]="Poprad",e["Zilina"]="Zilina",e["Bratislava"]="Bratislava",e["Trnava"]="Trnava",e["Nyiregyhaza"]="Nyiregyhaza",e["Miskolc"]="Miskolc",e["Szeged"]="Szeged",e["Kecskeme"]="Kecskeme",e["Budapest"]="Budapest",e["Pecs"]="Pecs",e["Gyor"]="Gyor",e["Banskabystrica"]="Banska Bystrica",e["Goansk"]="Goansk",e["Goynia"]="Goynia",e["Byogoszcz"]="Byogoszcz",e["Wroclaw"]="Wroclaw",e["Poznan"]="Poznan",e["Szczecin"]="Szczecin",e["Lodz"]="Lodz",e["Graz"]="Graz",e["Klagenfurt"]="Klagenfurt",e["Villach"]="Villach",e["Innsbruck"]="Innsbruck",e["Salzburg"]="Salzburg",e["Linz"]="Linz",e["Wien"]="Wien",e["Hradeckralove"]="Hradec Kralove",e["Brno"]="Brno",e["Ceskebudejovice"]="Ceske Budejovice",e["Praha"]="Praha",e["Ostrava"]="Ostrava",e["Plzen"]="Plzen",e["Ustinadlaben"]="Ustinad Laben"}(un||(un={}));var dn,fn,pn={name:"Central Europe",cities:[{name:un.Bialystok,region:cn.Blue,x:543,y:135},{name:un.Lublin,region:cn.Blue,x:590,y:294},{name:un.Warszawa,region:cn.Blue,x:482,y:253},{name:un.Krakow,region:cn.Blue,x:533,y:443},{name:un.Sosnowiec,region:cn.Blue,x:468,y:443},{name:un.Katowice,region:cn.Blue,x:446,y:483},{name:un.Czestochowa,region:cn.Blue,x:419,y:397},{name:un.Presov,region:cn.Brown,x:619,y:487},{name:un.Kosice,region:cn.Brown,x:646,y:538},{name:un.Poprad,region:cn.Brown,x:565,y:529},{name:un.Zilina,region:cn.Brown,x:476,y:551},{name:un.Bratislava,region:cn.Brown,x:423,y:693},{name:un.Trnava,region:cn.Brown,x:452,y:638},{name:un.Nyiregyhaza,region:cn.Purple,x:698,y:582},{name:un.Miskolc,region:cn.Purple,x:621,y:597},{name:un.Szeged,region:cn.Purple,x:680,y:764},{name:un.Kecskeme,region:cn.Purple,x:630,y:727},{name:un.Budapest,region:cn.Purple,x:557,y:689},{name:un.Pecs,region:cn.Purple,x:566,y:832},{name:un.Gyor,region:cn.Purple,x:489,y:729},{name:un.Banskabystrica,region:cn.Brown,x:525,y:601},{name:un.Goansk,region:cn.Red,x:286,y:158},{name:un.Goynia,region:cn.Red,x:249,y:131},{name:un.Byogoszcz,region:cn.Red,x:297,y:257},{name:un.Wroclaw,region:cn.Red,x:321,y:445},{name:un.Poznan,region:cn.Red,x:261,y:342},{name:un.Szczecin,region:cn.Red,x:110,y:316},{name:un.Lodz,region:cn.Red,x:420,y:337},{name:un.Graz,region:cn.Yellow,x:376,y:811},{name:un.Klagenfurt,region:cn.Yellow,x:340,y:875},{name:un.Villach,region:cn.Yellow,x:272,y:875},{name:un.Innsbruck,region:cn.Yellow,x:140,y:879},{name:un.Salzburg,region:cn.Yellow,x:209,y:805},{name:un.Linz,region:cn.Yellow,x:265,y:744},{name:un.Wien,region:cn.Yellow,x:366,y:701},{name:un.Hradeckralove,region:cn.Green,x:291,y:546},{name:un.Brno,region:cn.Green,x:354,y:597},{name:un.Ceskebudejovice,region:cn.Green,x:248,y:670},{name:un.Praha,region:cn.Green,x:220,y:593},{name:un.Ostrava,region:cn.Green,x:413,y:535},{name:un.Plzen,region:cn.Green,x:158,y:645},{name:un.Ustinadlaben,region:cn.Green,x:165,y:537}],connections:[{nodes:[un.Goynia,un.Goansk],cost:0},{nodes:[un.Goansk,un.Byogoszcz],cost:8},{nodes:[un.Goynia,un.Szczecin],cost:17},{nodes:[un.Szczecin,un.Poznan],cost:14},{nodes:[un.Szczecin,un.Wroclaw],cost:22},{nodes:[un.Wroclaw,un.Poznan],cost:9},{nodes:[un.Poznan,un.Lodz],cost:13},{nodes:[un.Lodz,un.Byogoszcz],cost:12},{nodes:[un.Byogoszcz,un.Szczecin],cost:15},{nodes:[un.Wroclaw,un.Lodz],cost:12},{nodes:[un.Lodz,un.Czestochowa],cost:7},{nodes:[un.Czestochowa,un.Wroclaw],cost:9},{nodes:[un.Wroclaw,un.Ostrava],cost:11},{nodes:[un.Ostrava,un.Hradeckralove],cost:16},{nodes:[un.Hradeckralove,un.Wroclaw],cost:10},{nodes:[un.Wroclaw,un.Ustinadlaben],cost:17},{nodes:[un.Ustinadlaben,un.Hradeckralove],cost:10},{nodes:[un.Hradeckralove,un.Brno],cost:9},{nodes:[un.Brno,un.Ostrava],cost:12},{nodes:[un.Ostrava,un.Katowice],cost:4},{nodes:[un.Czestochowa,un.Lublin],cost:17},{nodes:[un.Lublin,un.Presov],cost:20},{nodes:[un.Presov,un.Krakow],cost:13},{nodes:[un.Krakow,un.Poprad],cost:11},{nodes:[un.Poprad,un.Zilina],cost:11},{nodes:[un.Zilina,un.Krakow],cost:12},{nodes:[un.Krakow,un.Sosnowiec],cost:4},{nodes:[un.Warszawa,un.Bialystok],cost:14},{nodes:[un.Bialystok,un.Goansk],cost:20},{nodes:[un.Byogoszcz,un.Warszawa],cost:15},{nodes:[un.Warszawa,un.Lublin],cost:10},{nodes:[un.Lodz,un.Warszawa],cost:7},{nodes:[un.Bialystok,un.Lublin],cost:15},{nodes:[un.Lublin,un.Krakow],cost:16},{nodes:[un.Poprad,un.Kosice],cost:6},{nodes:[un.Kosice,un.Nyiregyhaza],cost:8},{nodes:[un.Kosice,un.Miskolc],cost:4},{nodes:[un.Miskolc,un.Poprad],cost:9},{nodes:[un.Poprad,un.Banskabystrica],cost:11},{nodes:[un.Banskabystrica,un.Zilina],cost:6},{nodes:[un.Zilina,un.Trnava],cost:10},{nodes:[un.Zilina,un.Brno],cost:14},{nodes:[un.Brno,un.Wien],cost:8},{nodes:[un.Bratislava,un.Brno],cost:10},{nodes:[un.Brno,un.Trnava],cost:10},{nodes:[un.Trnava,un.Banskabystrica],cost:10},{nodes:[un.Banskabystrica,un.Miskolc],cost:11},{nodes:[un.Miskolc,un.Nyiregyhaza],cost:7},{nodes:[un.Nyiregyhaza,un.Szeged],cost:16},{nodes:[un.Szeged,un.Kecskeme],cost:5},{nodes:[un.Budapest,un.Trnava],cost:9},{nodes:[un.Trnava,un.Bratislava],cost:2},{nodes:[un.Bratislava,un.Wien],cost:3},{nodes:[un.Wien,un.Ceskebudejovice],cost:14},{nodes:[un.Ceskebudejovice,un.Praha],cost:10},{nodes:[un.Praha,un.Brno],cost:13},{nodes:[un.Brno,un.Ceskebudejovice],cost:15},{nodes:[un.Ceskebudejovice,un.Plzen],cost:11},{nodes:[un.Plzen,un.Praha],cost:7},{nodes:[un.Praha,un.Ustinadlaben],cost:6},{nodes:[un.Ustinadlaben,un.Plzen],cost:9},{nodes:[un.Ceskebudejovice,un.Linz],cost:8},{nodes:[un.Linz,un.Wien],cost:11},{nodes:[un.Wien,un.Graz],cost:12},{nodes:[un.Graz,un.Linz],cost:16},{nodes:[un.Linz,un.Salzburg],cost:9},{nodes:[un.Salzburg,un.Graz],cost:22},{nodes:[un.Graz,un.Gyor],cost:14},{nodes:[un.Gyor,un.Wien],cost:8},{nodes:[un.Bratislava,un.Gyor],cost:6},{nodes:[un.Gyor,un.Trnava],cost:5},{nodes:[un.Banskabystrica,un.Budapest],cost:12},{nodes:[un.Budapest,un.Gyor],cost:5},{nodes:[un.Budapest,un.Kecskeme],cost:6},{nodes:[un.Kecskeme,un.Miskolc],cost:10},{nodes:[un.Miskolc,un.Budapest],cost:9},{nodes:[un.Szeged,un.Pecs],cost:12},{nodes:[un.Pecs,un.Kecskeme],cost:11},{nodes:[un.Budapest,un.Pecs],cost:12},{nodes:[un.Pecs,un.Gyor],cost:15},{nodes:[un.Graz,un.Pecs],cost:19},{nodes:[un.Graz,un.Klagenfurt],cost:10},{nodes:[un.Klagenfurt,un.Villach],cost:4},{nodes:[un.Klagenfurt,un.Salzburg],cost:20},{nodes:[un.Salzburg,un.Innsbruck],cost:15},{nodes:[un.Innsbruck,un.Villach],cost:22},{nodes:[un.Poznan,un.Byogoszcz],cost:7},{nodes:[un.Lublin,un.Lodz],cost:16},{nodes:[un.Czestochowa,un.Sosnowiec],cost:4},{nodes:[un.Sosnowiec,un.Katowice],cost:0},{nodes:[un.Czestochowa,un.Krakow],cost:6},{nodes:[un.Poprad,un.Presov],cost:7},{nodes:[un.Presov,un.Kosice],cost:2},{nodes:[un.Ostrava,un.Zilina],cost:7},{nodes:[un.Ostrava,un.Krakow],cost:7},{nodes:[un.Praha,un.Hradeckralove],cost:8}],layout:"Portrait",mapPosition:[70,-60],adjustRatio:[1.15,1.15],startingResources:[24,18,6,5],resupply:[[[4,5,3],[5,6,3],[6,7,5],[7,8,5],[8,10,6]],[[1,2,3],[2,2,3],[2,3,4],[3,4,5],[4,5,6]],[[1,3,3],[1,3,3],[2,4,4],[3,4,5],[3,6,6]],[[1,1,1],[1,1,1],[1,2,1],[2,2,2],[2,3,2]]]};(function(e){e["Pink"]="pink",e["Green"]="green",e["Red"]="red",e["Brown"]="brown",e["Purple"]="purple",e["Yellow"]="yellow"})(dn||(dn={})),function(e){e["Hegang"]="Hegang",e["Qiqhaer"]="Qiqhaer",e["Haerbin"]="Haerbin",e["Jilin"]="Jilin",e["Fushun"]="Fushun",e["Anshan"]="Anshan",e["Dalian"]="Dalian",e["Shanghai"]="Shanghai",e["Hangzhou"]="Hangzhou",e["Nanjing"]="Nanjing",e["Qingoad"]="Qingoad",e["Jinan"]="Jinan",e["Zhengzhou"]="Zhengzhou",e["Shijiazhuang"]="Shijiazhuang",e["Changchun"]="Changchun",e["Shenyang"]="Shenyang",e["Tangshan"]="Tangshan",e["Tianjin"]="Tianjin",e["Beijing"]="Beijing",e["Taiyuan"]="Taiyuan",e["Badtou"]="Badtou",e["Fuzhou"]="Fuzhou",e["Nanchang"]="Nanchang",e["Chaozhou"]="Chaozhou",e["Hongkong"]="Hong Kong",e["Guangzhou"]="Guangzhou",e["Changsha"]="Changsha",e["Wuhan"]="Wuhan",e["Hami"]="Hami",e["Karamay"]="Karamay",e["Wulumuqi"]="Wulumuqi",e["Kuerle"]="Kuerle",e["Yinchjan"]="Yinchjan",e["Xining"]="Xining",e["Lanzhou"]="Lanzhou",e["Kunming"]="Kunming",e["Chengou"]="Chengou",e["Xian"]="Xian",e["Chongqing"]="Chongqing",e["Nanning"]="Nanning",e["Haikou"]="Haikou",e["Chiyang"]="Chiyang"}(fn||(fn={}));var hn,gn,yn={name:"China",cities:[{name:fn.Hegang,region:dn.Pink,x:3920,y:290},{name:fn.Qiqhaer,region:dn.Pink,x:3422,y:262},{name:fn.Haerbin,region:dn.Pink,x:3672,y:434},{name:fn.Jilin,region:dn.Pink,x:3744,y:614},{name:fn.Fushun,region:dn.Pink,x:3712,y:784},{name:fn.Anshan,region:dn.Pink,x:3510,y:902},{name:fn.Dalian,region:dn.Pink,x:3424,y:1052},{name:fn.Shanghai,region:dn.Green,x:3462,y:1672},{name:fn.Hangzhou,region:dn.Green,x:3280,y:1824},{name:fn.Nanjing,region:dn.Green,x:3130,y:1632},{name:fn.Qingoad,region:dn.Green,x:3322,y:1316},{name:fn.Jinan,region:dn.Green,x:3002,y:1292},{name:fn.Zhengzhou,region:dn.Green,x:2778,y:1438},{name:fn.Shijiazhuang,region:dn.Green,x:2866,y:1152},{name:fn.Changchun,region:dn.Red,x:3504,y:590},{name:fn.Shenyang,region:dn.Red,x:3458,y:778},{name:fn.Tangshan,region:dn.Red,x:3158,y:908},{name:fn.Tianjin,region:dn.Red,x:3134,y:1016},{name:fn.Beijing,region:dn.Red,x:2886,y:910},{name:fn.Taiyuan,region:dn.Red,x:2588,y:1130},{name:fn.Badtou,region:dn.Red,x:2500,y:862},{name:fn.Fuzhou,region:dn.Brown,x:3290,y:2132},{name:fn.Nanchang,region:dn.Brown,x:3004,y:1974},{name:fn.Chaozhou,region:dn.Brown,x:3096,y:2322},{name:fn.Hongkong,region:dn.Brown,x:2902,y:2552},{name:fn.Guangzhou,region:dn.Brown,x:2694,y:2352},{name:fn.Changsha,region:dn.Brown,x:2682,y:1988},{name:fn.Wuhan,region:dn.Brown,x:2810,y:1786},{name:fn.Hami,region:dn.Purple,x:1816,y:698},{name:fn.Karamay,region:dn.Purple,x:1304,y:372},{name:fn.Wulumuqi,region:dn.Purple,x:1520,y:558},{name:fn.Kuerle,region:dn.Purple,x:1326,y:756},{name:fn.Yinchjan,region:dn.Purple,x:2208,y:1058},{name:fn.Xining,region:dn.Purple,x:1868,y:1226},{name:fn.Lanzhou,region:dn.Purple,x:2142,y:1328},{name:fn.Kunming,region:dn.Yellow,x:1840,y:2248},{name:fn.Chengou,region:dn.Yellow,x:1988,y:1736},{name:fn.Xian,region:dn.Yellow,x:2440,y:1478},{name:fn.Chongqing,region:dn.Yellow,x:2300,y:1880},{name:fn.Nanning,region:dn.Yellow,x:2318,y:2452},{name:fn.Haikou,region:dn.Yellow,x:2524,y:2680},{name:fn.Chiyang,region:dn.Yellow,x:2212,y:2112}],connections:[{nodes:[fn.Kunming,fn.Chengou],cost:16},{nodes:[fn.Nanning,fn.Haikou],cost:10},{nodes:[fn.Guangzhou,fn.Hongkong],cost:4},{nodes:[fn.Guangzhou,fn.Chaozhou],cost:7},{nodes:[fn.Chaozhou,fn.Hongkong],cost:7},{nodes:[fn.Guangzhou,fn.Haikou],cost:13},{nodes:[fn.Nanning,fn.Guangzhou],cost:11},{nodes:[fn.Xining,fn.Chengou],cost:20},{nodes:[fn.Chengou,fn.Chongqing],cost:6},{nodes:[fn.Chongqing,fn.Chiyang],cost:9},{nodes:[fn.Chiyang,fn.Kunming],cost:12},{nodes:[fn.Chiyang,fn.Nanning],cost:12},{nodes:[fn.Chiyang,fn.Guangzhou],cost:18},{nodes:[fn.Guangzhou,fn.Changsha],cost:14},{nodes:[fn.Changsha,fn.Chongqing],cost:16},{nodes:[fn.Changsha,fn.Wuhan],cost:6},{nodes:[fn.Wuhan,fn.Nanchang],cost:6},{nodes:[fn.Nanchang,fn.Changsha],cost:7},{nodes:[fn.Changsha,fn.Chiyang],cost:15},{nodes:[fn.Chiyang,fn.Chengou],cost:13},{nodes:[fn.Guangzhou,fn.Nanchang],cost:16},{nodes:[fn.Nanchang,fn.Chaozhou],cost:14},{nodes:[fn.Chaozhou,fn.Fuzhou],cost:9},{nodes:[fn.Fuzhou,fn.Nanchang],cost:13},{nodes:[fn.Wuhan,fn.Hangzhou],cost:13},{nodes:[fn.Hangzhou,fn.Fuzhou],cost:13},{nodes:[fn.Hangzhou,fn.Shanghai],cost:4},{nodes:[fn.Shanghai,fn.Nanjing],cost:6},{nodes:[fn.Nanjing,fn.Hangzhou],cost:5},{nodes:[fn.Hangzhou,fn.Nanchang],cost:10},{nodes:[fn.Chongqing,fn.Wuhan],cost:18},{nodes:[fn.Lanzhou,fn.Chengou],cost:16},{nodes:[fn.Chengou,fn.Xian],cost:14},{nodes:[fn.Xian,fn.Chongqing],cost:14},{nodes:[fn.Xian,fn.Wuhan],cost:15},{nodes:[fn.Wuhan,fn.Zhengzhou],cost:10},{nodes:[fn.Zhengzhou,fn.Xian],cost:10},{nodes:[fn.Xian,fn.Lanzhou],cost:15},{nodes:[fn.Lanzhou,fn.Yinchjan],cost:9},{nodes:[fn.Yinchjan,fn.Xining],cost:11},{nodes:[fn.Lanzhou,fn.Taiyuan],cost:18},{nodes:[fn.Taiyuan,fn.Xian],cost:12},{nodes:[fn.Taiyuan,fn.Zhengzhou],cost:11},{nodes:[fn.Taiyuan,fn.Shijiazhuang],cost:5},{nodes:[fn.Shijiazhuang,fn.Tianjin],cost:5},{nodes:[fn.Shijiazhuang,fn.Jinan],cost:6},{nodes:[fn.Shijiazhuang,fn.Zhengzhou],cost:9},{nodes:[fn.Zhengzhou,fn.Jinan],cost:7},{nodes:[fn.Zhengzhou,fn.Nanjing],cost:12},{nodes:[fn.Nanjing,fn.Wuhan],cost:10},{nodes:[fn.Jinan,fn.Nanjing],cost:11},{nodes:[fn.Nanjing,fn.Qingoad],cost:12},{nodes:[fn.Qingoad,fn.Jinan],cost:6},{nodes:[fn.Jinan,fn.Tianjin],cost:6},{nodes:[fn.Xining,fn.Lanzhou],cost:6},{nodes:[fn.Yinchjan,fn.Badtou],cost:9},{nodes:[fn.Badtou,fn.Taiyuan],cost:9},{nodes:[fn.Taiyuan,fn.Yinchjan],cost:14},{nodes:[fn.Yinchjan,fn.Hami],cost:25},{nodes:[fn.Hami,fn.Xining],cost:25},{nodes:[fn.Wulumuqi,fn.Kuerle],cost:9},{nodes:[fn.Kuerle,fn.Karamay],cost:12},{nodes:[fn.Karamay,fn.Wulumuqi],cost:7},{nodes:[fn.Wulumuqi,fn.Hami],cost:12},{nodes:[fn.Hami,fn.Kuerle],cost:15},{nodes:[fn.Taiyuan,fn.Beijing],cost:10},{nodes:[fn.Beijing,fn.Shijiazhuang],cost:6},{nodes:[fn.Beijing,fn.Tangshan],cost:3},{nodes:[fn.Tangshan,fn.Tianjin],cost:0},{nodes:[fn.Beijing,fn.Badtou],cost:14},{nodes:[fn.Tangshan,fn.Shenyang],cost:11},{nodes:[fn.Dalian,fn.Anshan],cost:6},{nodes:[fn.Qiqhaer,fn.Hegang],cost:11},{nodes:[fn.Hegang,fn.Haerbin],cost:7},{nodes:[fn.Haerbin,fn.Qiqhaer],cost:6},{nodes:[fn.Changchun,fn.Jilin],cost:5},{nodes:[fn.Jilin,fn.Haerbin],cost:5},{nodes:[fn.Haerbin,fn.Changchun],cost:5},{nodes:[fn.Changchun,fn.Shenyang],cost:5},{nodes:[fn.Shenyang,fn.Anshan],cost:2},{nodes:[fn.Jilin,fn.Fushun],cost:6},{nodes:[fn.Fushun,fn.Shenyang],cost:0},{nodes:[fn.Changchun,fn.Qiqhaer],cost:9}],layout:"Portrait",mapPosition:[-400,70],adjustRatio:[.35,.35],resupply:[[[4,4,3],[5,5,3],[6,6,4],[7,7,5],[9,9,6]],[[2,2,4],[3,3,4],[4,4,5],[5,5,6],[6,6,7]],[[2,2,1],[2,2,1],[3,3,2],[3,3,3],[5,5,3]],[[1,1,1],[1,1,1],[2,2,2],[3,3,2],[3,3,3]]],startingResources:[12,12,6,0],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ve),o=[];2==e||3==e?o=[3,4,9,11,16,18,20,24,30,33,46]:4==e?o=[3,4,11,18,24,33,46]:5!=e&&6!=e||(o=[3,4,33]);var a=r.filter((function(e){return!o.includes(e.number)})),i=a.filter((function(e){return e.number<=30})),s=a.filter((function(e){return e.type==ve.Step3})),c=De(a.filter((function(e){return e.number>=31&&e.number<=35})).concat(s),t()+""),u=De(a.filter((function(e){return e.number>=36&&e.number<=50})),t()+""),l=i.splice(0,e),d=[],f=i.concat(c).concat(u);return{actualMarket:l,futureMarket:d,powerPlantsDeck:f}},mapSpecificRules:"The power plant deck is arranged as follows: plants from 3-30 in order, plants from 31-35 and step 3 card shuffled, plants from 36-50 shuffled.\nThe same set of plants are removed in every game.\nThere are several changes to when new plants are drawn. In particular, during steps 1 and 2, plants are only drawn from the deck during the bureaucracy phase."};(function(e){e["Pink"]="pink",e["Red"]="red",e["Brown"]="brown",e["Yellow"]="yellow",e["Orange"]="orange",e["Blue"]="blue",e["Green"]="green"})(hn||(hn={})),function(e){e["Glasgow"]="Glasgow",e["Dublin"]="Dublin",e["Birmingham"]="Birmingham",e["London"]="London",e["Randstad"]="Randstad",e["Vlaanderen"]="Vlaanderen",e["RheinRuhr"]="Rhein-Ruhr",e["Paris"]="Paris",e["Bordeaux"]="Bordeaux",e["Lyon"]="Lyon",e["Marseille"]="Marseille",e["Lisboa"]="Lisboa",e["Madrid"]="Madrid",e["Barcelona"]="Barcelona",e["Bremen"]="Bremen",e["Berlin"]="Berlin",e["RheinMain"]="Rhein-Main",e["Stuttgart"]="Stuttgart",e["Praha"]="Praha",e["Katowice"]="Katowice",e["München"]="München",e["Zürich"]="Zürich",e["Milano"]="Milano",e["Roma"]="Roma",e["Napoli"]="Napoli",e["Wien"]="Wien",e["Budapest"]="Budapest",e["Zagreb"]="Zagreb",e["Oslo"]="Oslo",e["Stockholm"]="Stockholm",e["Helsinki"]="Helsinki",e["Tallinn"]="Tallinn",e["Kobenhavn"]="København",e["Riga"]="Riga",e["StPetersburg"]="St. Petersburg",e["Minsk"]="Minsk",e["Moskwa"]="Moskwa",e["Warszawa"]="Warszawa",e["Kyjiv"]="Kyjiv",e["Kharkiv"]="Kharkiv",e["Odessa"]="Odessa",e["Bucuresti"]="Bucureşti",e["Beograd"]="Beograd",e["Sofia"]="Sofia",e["Tirana"]="Tirana",e["Athina"]="Athina",e["Istanbul"]="Istanbul",e["Izmir"]="Izmir",e["Ankara"]="Ankara"}(gn||(gn={}));var mn,vn,bn={name:"Europe",cities:[{name:gn.Glasgow,region:hn.Pink,x:490,y:510},{name:gn.Dublin,region:hn.Pink,x:390,y:660},{name:gn.Birmingham,region:hn.Pink,x:485,y:695},{name:gn.London,region:hn.Pink,x:545,y:800},{name:gn.Randstad,region:hn.Pink,x:786,y:594},{name:gn.Vlaanderen,region:hn.Pink,x:794,y:756},{name:gn.RheinRuhr,region:hn.Pink,x:820,y:884},{name:gn.Paris,region:hn.Red,x:632,y:926},{name:gn.Bordeaux,region:hn.Red,x:655,y:1095},{name:gn.Lyon,region:hn.Red,x:785,y:1100},{name:gn.Marseille,region:hn.Red,x:815,y:1240},{name:gn.Barcelona,region:hn.Red,x:650,y:1280},{name:gn.Madrid,region:hn.Red,x:435,y:1335},{name:gn.Lisboa,region:hn.Red,x:255,y:1335},{name:gn.Bremen,region:hn.Brown,x:1010,y:770},{name:gn.Berlin,region:hn.Brown,x:1180,y:800},{name:gn.RheinMain,region:hn.Brown,x:982,y:898},{name:gn.Stuttgart,region:hn.Brown,x:995,y:1e3},{name:gn.München,region:hn.Brown,x:1114,y:1020},{name:gn.Praha,region:hn.Brown,x:1235,y:940},{name:gn.Katowice,region:hn.Brown,x:1380,y:940},{name:gn.Zürich,region:hn.Yellow,x:1010,y:1100},{name:gn.Milano,region:hn.Yellow,x:1075,y:1180},{name:gn.Roma,region:hn.Yellow,x:1180,y:1310},{name:gn.Napoli,region:hn.Yellow,x:1235,y:1430},{name:gn.Wien,region:hn.Yellow,x:1265,y:1080},{name:gn.Budapest,region:hn.Yellow,x:1390,y:1080},{name:gn.Zagreb,region:hn.Yellow,x:1300,y:1180},{name:gn.Oslo,region:hn.Orange,x:1015,y:365},{name:gn.Stockholm,region:hn.Orange,x:1170,y:415},{name:gn.Helsinki,region:hn.Orange,x:1395,y:360},{name:gn.Tallinn,region:hn.Orange,x:1410,y:470},{name:gn.Riga,region:hn.Orange,x:1395,y:575},{name:gn.Kobenhavn,region:hn.Orange,x:1180,y:660},{name:gn.StPetersburg,region:hn.Orange,x:1620,y:460},{name:gn.Warszawa,region:hn.Blue,x:1500,y:815},{name:gn.Minsk,region:hn.Blue,x:1610,y:815},{name:gn.Moskwa,region:hn.Blue,x:1830,y:600},{name:gn.Kyjiv,region:hn.Blue,x:1690,y:980},{name:gn.Kharkiv,region:hn.Blue,x:1860,y:980},{name:gn.Odessa,region:hn.Blue,x:1720,y:1100},{name:gn.Bucuresti,region:hn.Blue,x:1610,y:1175},{name:gn.Beograd,region:hn.Green,x:1390,y:1175},{name:gn.Sofia,region:hn.Green,x:1505,y:1240},{name:gn.Tirana,region:hn.Green,x:1370,y:1330},{name:gn.Athina,region:hn.Green,x:1480,y:1450},{name:gn.Istanbul,region:hn.Green,x:1665,y:1335},{name:gn.Izmir,region:hn.Green,x:1730,y:1430},{name:gn.Ankara,region:hn.Green,x:1850,y:1380}],connections:[{nodes:[gn.Dublin,gn.Glasgow],cost:17},{nodes:[gn.Glasgow,gn.Birmingham],cost:13},{nodes:[gn.Dublin,gn.Birmingham],cost:15},{nodes:[gn.Birmingham,gn.London],cost:4},{nodes:[gn.London,gn.Vlaanderen],cost:15},{nodes:[gn.London,gn.Randstad],cost:18},{nodes:[gn.Randstad,gn.Vlaanderen],cost:4},{nodes:[gn.Vlaanderen,gn.RheinRuhr],cost:4},{nodes:[gn.Paris,gn.Bordeaux],cost:12},{nodes:[gn.Paris,gn.Lyon],cost:11},{nodes:[gn.Bordeaux,gn.Lyon],cost:12},{nodes:[gn.Lyon,gn.Marseille],cost:8},{nodes:[gn.Bordeaux,gn.Marseille],cost:12},{nodes:[gn.Marseille,gn.Barcelona],cost:11},{nodes:[gn.Bordeaux,gn.Barcelona],cost:15},{nodes:[gn.Bordeaux,gn.Madrid],cost:15},{nodes:[gn.Madrid,gn.Barcelona],cost:14},{nodes:[gn.Madrid,gn.Lisboa],cost:13},{nodes:[gn.Paris,gn.London],cost:16},{nodes:[gn.Paris,gn.Vlaanderen],cost:7},{nodes:[gn.Paris,gn.RheinRuhr],cost:10},{nodes:[gn.Bremen,gn.Berlin],cost:6},{nodes:[gn.Bremen,gn.RheinMain],cost:9},{nodes:[gn.Berlin,gn.RheinMain],cost:10},{nodes:[gn.Berlin,gn.Praha],cost:7},{nodes:[gn.RheinMain,gn.Praha],cost:10},{nodes:[gn.RheinMain,gn.München],cost:6},{nodes:[gn.RheinMain,gn.Stuttgart],cost:3},{nodes:[gn.Stuttgart,gn.München],cost:5},{nodes:[gn.München,gn.Praha],cost:6},{nodes:[gn.Praha,gn.Katowice],cost:8},{nodes:[gn.Bremen,gn.Randstad],cost:8},{nodes:[gn.Bremen,gn.Vlaanderen],cost:10},{nodes:[gn.RheinMain,gn.Vlaanderen],cost:6},{nodes:[gn.RheinMain,gn.RheinRuhr],cost:3},{nodes:[gn.Stuttgart,gn.Paris],cost:14},{nodes:[gn.Zürich,gn.Milano],cost:11},{nodes:[gn.Milano,gn.Zagreb],cost:17},{nodes:[gn.Milano,gn.Roma],cost:19},{nodes:[gn.Roma,gn.Napoli],cost:7},{nodes:[gn.Wien,gn.Budapest],cost:5},{nodes:[gn.Wien,gn.Zagreb],cost:8},{nodes:[gn.Budapest,gn.Zagreb],cost:7},{nodes:[gn.Paris,gn.Zürich],cost:14},{nodes:[gn.Lyon,gn.Zürich],cost:14},{nodes:[gn.Lyon,gn.Milano],cost:11},{nodes:[gn.Marseille,gn.Milano],cost:13},{nodes:[gn.Zürich,gn.München],cost:8},{nodes:[gn.Zürich,gn.Stuttgart],cost:5},{nodes:[gn.München,gn.Wien],cost:9},{nodes:[gn.Praha,gn.Wien],cost:7},{nodes:[gn.Wien,gn.Katowice],cost:8},{nodes:[gn.Budapest,gn.Katowice],cost:11},{nodes:[gn.Oslo,gn.Kobenhavn],cost:17},{nodes:[gn.Oslo,gn.Stockholm],cost:13},{nodes:[gn.Stockholm,gn.Kobenhavn],cost:18},{nodes:[gn.Stockholm,gn.Helsinki],cost:21},{nodes:[gn.Helsinki,gn.StPetersburg],cost:11},{nodes:[gn.Tallinn,gn.StPetersburg],cost:9},{nodes:[gn.Tallinn,gn.Riga],cost:7},{nodes:[gn.Riga,gn.StPetersburg],cost:13},{nodes:[gn.Kobenhavn,gn.Bremen],cost:12},{nodes:[gn.Kobenhavn,gn.Berlin],cost:15},{nodes:[gn.Warszawa,gn.Minsk],cost:10},{nodes:[gn.Warszawa,gn.Kyjiv],cost:14},{nodes:[gn.Minsk,gn.Moskwa],cost:14},{nodes:[gn.Minsk,gn.Kyjiv],cost:10},{nodes:[gn.Moskwa,gn.Kharkiv],cost:16},{nodes:[gn.Kyjiv,gn.Kharkiv],cost:9},{nodes:[gn.Kyjiv,gn.Odessa],cost:9},{nodes:[gn.Kharkiv,gn.Odessa],cost:13},{nodes:[gn.Odessa,gn.Bucuresti],cost:10},{nodes:[gn.Berlin,gn.Warszawa],cost:11},{nodes:[gn.Praha,gn.Warszawa],cost:11},{nodes:[gn.Katowice,gn.Warszawa],cost:5},{nodes:[gn.Kobenhavn,gn.Warszawa],cost:25},{nodes:[gn.Riga,gn.Warszawa],cost:12},{nodes:[gn.Riga,gn.Minsk],cost:8},{nodes:[gn.Riga,gn.Moskwa],cost:18},{nodes:[gn.StPetersburg,gn.Moskwa],cost:14},{nodes:[gn.Kyjiv,gn.Budapest],cost:21},{nodes:[gn.Odessa,gn.Budapest],cost:25},{nodes:[gn.Bucuresti,gn.Budapest],cost:16},{nodes:[gn.Beograd,gn.Sofia],cost:11},{nodes:[gn.Beograd,gn.Tirana],cost:15},{nodes:[gn.Sofia,gn.Tirana],cost:13},{nodes:[gn.Sofia,gn.Athina],cost:17},{nodes:[gn.Sofia,gn.Istanbul],cost:13},{nodes:[gn.Tirana,gn.Athina],cost:16},{nodes:[gn.Istanbul,gn.Izmir],cost:8},{nodes:[gn.Istanbul,gn.Ankara],cost:9},{nodes:[gn.Izmir,gn.Ankara],cost:10},{nodes:[gn.Bucuresti,gn.Beograd],cost:12},{nodes:[gn.Bucuresti,gn.Sofia],cost:9},{nodes:[gn.Bucuresti,gn.Istanbul],cost:13},{nodes:[gn.Beograd,gn.Zagreb],cost:9},{nodes:[gn.Beograd,gn.Napoli],cost:18},{nodes:[gn.Beograd,gn.Budapest],cost:10},{nodes:[gn.Tirana,gn.Napoli],cost:25}],layout:"Landscape",adjustRatio:[.5,.5],mapPosition:[-30,-50],mapRotation:10,resupply:[[[2,6,2],[2,6,2],[3,7,4],[3,8,4],[5,10,5]],[[2,2,3],[2,2,3],[3,3,4],[4,3,5],[4,5,6]],[[2,3,5],[2,3,5],[3,4,5],[3,5,7],[4,6,8]],[[1,1,2],[1,1,2],[1,2,2],[2,3,3],[2,3,4]]],coalPrices:[1,1,1,1,2,2,2,2,3,3,3,3,4,4,5,5,6,6,7,7,8,8,9,9],oilPrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,9,9],garbagePrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8],uraniumPrices:[1,2,3,4,5,6,7,7,8,8,9,9],startingResources:[20,16,18,4],startingSupply:[24,24,24,12],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ve),o=r.findIndex((function(e){return e.type===ve.Step3})),a=r.splice(o,1)[0],i=De(r.splice(0,13),t()+""),s=De(r,t()+""),c=i.splice(0,9).sort((function(e,n){return e.number-n.number})),u=c.slice(0,4),l=c.slice(4),d=0,f=0;2==e?(d=1,f=5):3==e?(d=2,f=6):4==e&&(d=1,f=3);var p=Math.max(0,d-i.length),h=i.slice(d),g=s.slice(f+p),y=De(h.concat(g),t()+"");if(y.length>0&&y[0].number<=15){var m=y.findIndex((function(e){return e.number>15}));if(m>0){var v=[y[m],y[0]];y[0]=v[0],y[m]=v[1]}}return y.push(a),{actualMarket:u,futureMarket:l,powerPlantsDeck:y}},mapSpecificRules:"Europe uses the New Power Plants Set 2 deck (cards with a plug on the back). The power plant market starts as 4 current + 5 future power plants (9 total). When Step 2 begins, remove the lowest-numbered plant from the current market from the game once and do not replace it; the future market then has 4 plants instead of 5."};(function(e){e["Brown"]="brown",e["Purple"]="purple",e["Blue"]="blue",e["Yellow"]="yellow",e["Green"]="green",e["Red"]="red"})(mn||(mn={})),function(e){e["Calais"]="Calais",e["Lile"]="Lile",e["Amiens"]="Amiens",e["Reims"]="Reims",e["Metz"]="Metz",e["Nancy"]="Nancy",e["Strasbourg"]="Strasbourg",e["Havre"]="Havre",e["Caen"]="Caen",e["Brest"]="Brest",e["Rennes"]="Rennes",e["Lemans"]="Le Mans",e["Angers"]="Angers",e["Rouen"]="Rouen",e["Paris1"]="Paris 1",e["Paris2"]="Paris 2",e["Paris3"]="Paris 3",e["Orleans"]="Orleans",e["Tours"]="Tours",e["Limoges"]="Limoges",e["Clermontferrand"]="Clermont-Ferrand",e["Besancon"]="Besancon",e["Dijon"]="Dijon",e["Lyon"]="Lyon",e["Chamonix"]="Chamonix",e["Mulhouse"]="Mulhouse",e["Grenoble"]="Grenoble",e["Saintetienne"]="Saint-Etienne",e["Nice"]="Nice",e["Toulon"]="Toulon",e["Aimenprovence"]="Aim-En-Provence",e["Marseille"]="Marseille",e["Nimes"]="Nimes",e["Montpellier"]="Montpellier",e["Perpignan"]="Perpignan",e["Nantes"]="Nantes",e["Larochelle"]="La Rochelle",e["Bordeaux"]="Bordeaux",e["Biarritz"]="Biarritz",e["Toulous"]="Toulous",e["Carcassone"]="Carcas Sone",e["Lourdes"]="Lourdes"}(vn||(vn={}));var wn,xn,kn={name:"France",cities:[{name:vn.Calais,region:mn.Brown,x:661,y:294},{name:vn.Lile,region:mn.Brown,x:791,y:328},{name:vn.Amiens,region:mn.Brown,x:700,y:433},{name:vn.Reims,region:mn.Brown,x:888,y:531},{name:vn.Metz,region:mn.Brown,x:1076,y:528},{name:vn.Nancy,region:mn.Brown,x:1078,y:643},{name:vn.Strasbourg,region:mn.Brown,x:1208,y:615},{name:vn.Havre,region:mn.Purple,x:487,y:471},{name:vn.Caen,region:mn.Purple,x:423,y:567},{name:vn.Brest,region:mn.Purple,x:79,y:654},{name:vn.Rennes,region:mn.Purple,x:326,y:695},{name:vn.Lemans,region:mn.Purple,x:516,y:699},{name:vn.Angers,region:mn.Purple,x:446,y:798},{name:vn.Rouen,region:mn.Purple,x:598,y:506},{name:vn.Paris1,region:mn.Blue,x:693,y:553},{name:vn.Paris2,region:mn.Blue,x:779,y:566},{name:vn.Paris3,region:mn.Blue,x:722,y:633},{name:vn.Orleans,region:mn.Blue,x:684,y:736},{name:vn.Tours,region:mn.Blue,x:564,y:813},{name:vn.Limoges,region:mn.Blue,x:605,y:1009},{name:vn.Clermontferrand,region:mn.Blue,x:777,y:1017},{name:vn.Besancon,region:mn.Yellow,x:1084,y:828},{name:vn.Dijon,region:mn.Yellow,x:964,y:801},{name:vn.Lyon,region:mn.Yellow,x:964,y:973},{name:vn.Chamonix,region:mn.Yellow,x:1153,y:987},{name:vn.Mulhouse,region:mn.Yellow,x:1180,y:742},{name:vn.Grenoble,region:mn.Yellow,x:1048,y:1116},{name:vn.Saintetienne,region:mn.Yellow,x:892,y:1088},{name:vn.Nice,region:mn.Green,x:1178,y:1302},{name:vn.Toulon,region:mn.Green,x:1070,y:1397},{name:vn.Aimenprovence,region:mn.Green,x:1016,y:1304},{name:vn.Marseille,region:mn.Green,x:954,y:1369},{name:vn.Nimes,region:mn.Green,x:889,y:1256},{name:vn.Montpellier,region:mn.Green,x:816,y:1330},{name:vn.Perpignan,region:mn.Green,x:767,y:1460},{name:vn.Nantes,region:mn.Red,x:330,y:833},{name:vn.Larochelle,region:mn.Red,x:379,y:959},{name:vn.Bordeaux,region:mn.Red,x:435,y:1148},{name:vn.Biarritz,region:mn.Red,x:345,y:1328},{name:vn.Toulous,region:mn.Red,x:621,y:1309},{name:vn.Carcassone,region:mn.Red,x:700,y:1382},{name:vn.Lourdes,region:mn.Red,x:479,y:1393}],connections:[{nodes:[vn.Calais,vn.Havre],cost:13},{nodes:[vn.Calais,vn.Lile],cost:7},{nodes:[vn.Calais,vn.Amiens],cost:8},{nodes:[vn.Lile,vn.Reims],cost:9},{nodes:[vn.Havre,vn.Rouen],cost:5},{nodes:[vn.Havre,vn.Caen],cost:5},{nodes:[vn.Caen,vn.Rennes],cost:12},{nodes:[vn.Rennes,vn.Brest],cost:16},{nodes:[vn.Brest,vn.Nantes],cost:19},{nodes:[vn.Rennes,vn.Nantes],cost:7},{nodes:[vn.Rennes,vn.Angers],cost:7},{nodes:[vn.Rennes,vn.Lemans],cost:9},{nodes:[vn.Caen,vn.Lemans],cost:10},{nodes:[vn.Lemans,vn.Paris3],cost:10},{nodes:[vn.Paris3,vn.Caen],cost:12},{nodes:[vn.Caen,vn.Rouen],cost:9},{nodes:[vn.Rouen,vn.Paris1],cost:9},{nodes:[vn.Rouen,vn.Amiens],cost:6},{nodes:[vn.Lile,vn.Amiens],cost:7},{nodes:[vn.Amiens,vn.Reims],cost:11},{nodes:[vn.Reims,vn.Metz],cost:12},{nodes:[vn.Metz,vn.Strasbourg],cost:11},{nodes:[vn.Strasbourg,vn.Nancy],cost:10},{nodes:[vn.Strasbourg,vn.Mulhouse],cost:6},{nodes:[vn.Mulhouse,vn.Besancon],cost:8},{nodes:[vn.Besancon,vn.Nancy],cost:14},{nodes:[vn.Nancy,vn.Dijon],cost:15},{nodes:[vn.Reims,vn.Nancy],cost:13},{nodes:[vn.Nancy,vn.Paris2],cost:21},{nodes:[vn.Paris1,vn.Paris2],cost:0},{nodes:[vn.Paris1,vn.Paris3],cost:0},{nodes:[vn.Paris2,vn.Dijon],cost:20},{nodes:[vn.Dijon,vn.Orleans],cost:18},{nodes:[vn.Orleans,vn.Lemans],cost:8},{nodes:[vn.Lemans,vn.Tours],cost:5},{nodes:[vn.Tours,vn.Orleans],cost:7},{nodes:[vn.Paris1,vn.Amiens],cost:9},{nodes:[vn.Dijon,vn.Clermontferrand],cost:19},{nodes:[vn.Clermontferrand,vn.Limoges],cost:12},{nodes:[vn.Limoges,vn.Toulous],cost:19},{nodes:[vn.Toulous,vn.Clermontferrand],cost:24},{nodes:[vn.Clermontferrand,vn.Montpellier],cost:22},{nodes:[vn.Montpellier,vn.Nimes],cost:3},{nodes:[vn.Saintetienne,vn.Grenoble],cost:10},{nodes:[vn.Grenoble,vn.Chamonix],cost:12},{nodes:[vn.Chamonix,vn.Besancon],cost:19},{nodes:[vn.Besancon,vn.Dijon],cost:6},{nodes:[vn.Dijon,vn.Lyon],cost:13},{nodes:[vn.Lyon,vn.Clermontferrand],cost:11},{nodes:[vn.Saintetienne,vn.Montpellier],cost:18},{nodes:[vn.Saintetienne,vn.Nimes],cost:16},{nodes:[vn.Nimes,vn.Aimenprovence],cost:8},{nodes:[vn.Aimenprovence,vn.Nice],cost:8},{nodes:[vn.Nice,vn.Toulon],cost:7},{nodes:[vn.Toulon,vn.Marseille],cost:3},{nodes:[vn.Marseille,vn.Aimenprovence],cost:0},{nodes:[vn.Nice,vn.Grenoble],cost:19},{nodes:[vn.Grenoble,vn.Aimenprovence],cost:17},{nodes:[vn.Grenoble,vn.Nimes],cost:18},{nodes:[vn.Montpellier,vn.Toulous],cost:14},{nodes:[vn.Toulous,vn.Bordeaux],cost:14},{nodes:[vn.Bordeaux,vn.Limoges],cost:13},{nodes:[vn.Limoges,vn.Tours],cost:13},{nodes:[vn.Tours,vn.Larochelle],cost:13},{nodes:[vn.Larochelle,vn.Angers],cost:12},{nodes:[vn.Angers,vn.Lemans],cost:5},{nodes:[vn.Angers,vn.Nantes],cost:5},{nodes:[vn.Nantes,vn.Larochelle],cost:9},{nodes:[vn.Larochelle,vn.Bordeaux],cost:13},{nodes:[vn.Bordeaux,vn.Biarritz],cost:12},{nodes:[vn.Bordeaux,vn.Lourdes],cost:14},{nodes:[vn.Lourdes,vn.Biarritz],cost:9},{nodes:[vn.Lourdes,vn.Toulous],cost:10},{nodes:[vn.Lourdes,vn.Carcassone],cost:15},{nodes:[vn.Lourdes,vn.Perpignan],cost:20},{nodes:[vn.Perpignan,vn.Carcassone],cost:6},{nodes:[vn.Carcassone,vn.Toulous],cost:6},{nodes:[vn.Carcassone,vn.Montpellier],cost:9},{nodes:[vn.Montpellier,vn.Perpignan],cost:11},{nodes:[vn.Orleans,vn.Limoges],cost:19},{nodes:[vn.Orleans,vn.Clermontferrand],cost:18},{nodes:[vn.Paris3,vn.Orleans],cost:7},{nodes:[vn.Angers,vn.Tours],cost:6},{nodes:[vn.Larochelle,vn.Limoges],cost:13},{nodes:[vn.Nancy,vn.Metz],cost:3},{nodes:[vn.Nancy,vn.Mulhouse],cost:12},{nodes:[vn.Besancon,vn.Lyon],cost:16},{nodes:[vn.Lyon,vn.Grenoble],cost:7},{nodes:[vn.Lyon,vn.Chamonix],cost:13},{nodes:[vn.Lyon,vn.Saintetienne],cost:6},{nodes:[vn.Saintetienne,vn.Clermontferrand],cost:10},{nodes:[vn.Paris2,vn.Reims],cost:9},{nodes:[vn.Paris3,vn.Paris2],cost:0}],layout:"Portrait",mapPosition:[50,-100],adjustRatio:[.7,.7],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[24,18,6,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if("original"==n){a=a.slice(8);var i=a.splice(0,1)[0];a.splice(1,1)[0];var s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[qt(3),qt(4),qt(5),qt(6)],o=[qt(7),qt(8),qt(9),qt(10)]}else{a.splice(10,1)[0];var c=a.splice(8,1)[0],u=De(a.splice(0,11),t()+""),l=u.splice(0,7);l.push(c),l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?a=De(a.slice(6).concat(u),t()+""):3==e?(u=u.slice(1),a=De(a.slice(6).concat(u),t()+"")):a=De(4==e?a.slice(3).concat(u):a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Remove power plant 13. Put power plant 11 on top of the deck."};(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow",e["Cyan"]="cyan",e["Brown"]="brown"})(wn||(wn={})),function(e){e["Flensburg"]="Flensburg",e["Kiel"]="Kiel",e["Hamburg"]="Hamburg",e["Hannover"]="Hannover",e["Bremen"]="Bremen",e["Wilhelmshaven"]="Wilhelmshaven",e["Cuxhaven"]="Cuxhaven",e["Lubeck"]="Lubeck",e["Rostock"]="Rostock",e["Schwerin"]="Schwerin",e["Torgelow"]="Torgelow",e["Magdeburg"]="Magdeburg",e["Berlin"]="Berlin",e["FrankfurtO"]="Frankfurt-O",e["Halle"]="Halle",e["Leipzig"]="Leipzig",e["Dresden"]="Dresden",e["Erfurt"]="Erfurt",e["Fulda"]="Fulda",e["Würzburg"]="Würzburg",e["Nurnberg"]="Nurnberg",e["Osnabrück"]="Osnabrück",e["Münster"]="Münster",e["Essen"]="Essen",e["Duisburg"]="Duisburg",e["Dortmund"]="Dortmund",e["Dusseldorf"]="Dusseldorf",e["Kassel"]="Kassel",e["Aachen"]="Aachen",e["Köln"]="Köln",e["Trier"]="Trier",e["Wiesbaden"]="Wiesbaden",e["FrankfurtM"]="Frankfurt-M",e["Saarbrücken"]="Saarbrücken",e["Mannheim"]="Mannheim",e["Freiburg"]="Freiburg",e["Stuttgart"]="Stuttgart",e["Konstanz"]="Konstanz",e["Augsburg"]="Augsburg",e["Regensburg"]="Regensburg",e["München"]="München",e["Passau"]="Passau",e["Stralsund"]="Stralsund",e["Mainz"]="Mainz"}(xn||(xn={}));var _n,Pn,Sn={name:"Germany",cities:[{name:xn.Flensburg,region:wn.Green,x:37,y:427},{name:xn.Kiel,region:wn.Green,x:106,y:392},{name:xn.Hamburg,region:wn.Green,x:212,y:396},{name:xn.Hannover,region:wn.Green,x:378,y:395},{name:xn.Bremen,region:wn.Green,x:276,y:463},{name:xn.Wilhelmshaven,region:wn.Green,x:211,y:521},{name:xn.Cuxhaven,region:wn.Green,x:168,y:474},{name:xn.Lubeck,region:wn.Brown,x:153,y:341},{name:xn.Rostock,region:wn.Brown,x:128,y:256},{name:xn.Schwerin,region:wn.Brown,x:217,y:297},{name:xn.Torgelow,region:wn.Brown,x:210,y:126},{name:xn.Magdeburg,region:wn.Brown,x:389,y:271},{name:xn.Berlin,region:wn.Brown,x:355,y:170},{name:xn.FrankfurtO,region:wn.Brown,x:381,y:99},{name:xn.Halle,region:wn.Yellow,x:493,y:259},{name:xn.Leipzig,region:wn.Yellow,x:526,y:222},{name:xn.Dresden,region:wn.Yellow,x:572,y:126},{name:xn.Erfurt,region:wn.Yellow,x:567,y:309},{name:xn.Fulda,region:wn.Yellow,x:628,y:398},{name:xn.Würzburg,region:wn.Yellow,x:735,y:386},{name:xn.Nurnberg,region:wn.Yellow,x:780,y:309},{name:xn.Osnabrück,region:wn.Red,x:359,y:516},{name:xn.Münster,region:wn.Red,x:427,y:554},{name:xn.Essen,region:wn.Red,x:475,y:603},{name:xn.Duisburg,region:wn.Red,x:456,y:645},{name:xn.Dortmund,region:wn.Red,x:505,y:543},{name:xn.Dusseldorf,region:wn.Red,x:537,y:635},{name:xn.Kassel,region:wn.Red,x:524,y:430},{name:xn.Aachen,region:wn.Cyan,x:614,y:654},{name:xn.Köln,region:wn.Cyan,x:590,y:589},{name:xn.Trier,region:wn.Cyan,x:739,y:628},{name:xn.Wiesbaden,region:wn.Cyan,x:697,y:514},{name:xn.FrankfurtM,region:wn.Cyan,x:672,y:473},{name:xn.Saarbrücken,region:wn.Cyan,x:818,y:568},{name:xn.Mannheim,region:wn.Cyan,x:796,y:479},{name:xn.Freiburg,region:wn.Purple,x:966,y:537},{name:xn.Stuttgart,region:wn.Purple,x:884,y:458},{name:xn.Konstanz,region:wn.Purple,x:1011,y:459},{name:xn.Augsburg,region:wn.Purple,x:911,y:346},{name:xn.Regensburg,region:wn.Purple,x:846,y:256},{name:xn.München,region:wn.Purple,x:967,y:278},{name:xn.Passau,region:wn.Purple,x:904,y:153}],connections:[{nodes:[xn.Flensburg,xn.Kiel],cost:4},{nodes:[xn.Kiel,xn.Hamburg],cost:8},{nodes:[xn.Kiel,xn.Lubeck],cost:4},{nodes:[xn.Hamburg,xn.Hannover],cost:17},{nodes:[xn.Hamburg,xn.Bremen],cost:11},{nodes:[xn.Hamburg,xn.Cuxhaven],cost:11},{nodes:[xn.Hamburg,xn.Lubeck],cost:6},{nodes:[xn.Hamburg,xn.Schwerin],cost:8},{nodes:[xn.Bremen,xn.Wilhelmshaven],cost:11},{nodes:[xn.Bremen,xn.Hannover],cost:10},{nodes:[xn.Bremen,xn.Cuxhaven],cost:8},{nodes:[xn.Bremen,xn.Osnabrück],cost:11},{nodes:[xn.Hannover,xn.Schwerin],cost:19},{nodes:[xn.Hannover,xn.Magdeburg],cost:15},{nodes:[xn.Hannover,xn.Erfurt],cost:19},{nodes:[xn.Hannover,xn.Osnabrück],cost:16},{nodes:[xn.Hannover,xn.Kassel],cost:15},{nodes:[xn.Wilhelmshaven,xn.Osnabrück],cost:14},{nodes:[xn.Lubeck,xn.Schwerin],cost:6},{nodes:[xn.Schwerin,xn.Rostock],cost:6},{nodes:[xn.Schwerin,xn.Torgelow],cost:19},{nodes:[xn.Schwerin,xn.Berlin],cost:18},{nodes:[xn.Schwerin,xn.Magdeburg],cost:16},{nodes:[xn.Torgelow,xn.Rostock],cost:19},{nodes:[xn.Torgelow,xn.Berlin],cost:15},{nodes:[xn.Berlin,xn.Magdeburg],cost:10},{nodes:[xn.Berlin,xn.FrankfurtO],cost:6},{nodes:[xn.Berlin,xn.Halle],cost:17},{nodes:[xn.Magdeburg,xn.Halle],cost:11},{nodes:[xn.FrankfurtO,xn.Leipzig],cost:21},{nodes:[xn.FrankfurtO,xn.Dresden],cost:16},{nodes:[xn.Halle,xn.Leipzig],cost:0},{nodes:[xn.Leipzig,xn.Dresden],cost:13},{nodes:[xn.Erfurt,xn.Halle],cost:6},{nodes:[xn.Erfurt,xn.Dresden],cost:19},{nodes:[xn.Erfurt,xn.Nurnberg],cost:21},{nodes:[xn.Erfurt,xn.Fulda],cost:13},{nodes:[xn.Erfurt,xn.Kassel],cost:15},{nodes:[xn.Fulda,xn.Würzburg],cost:11},{nodes:[xn.Fulda,xn.Kassel],cost:8},{nodes:[xn.Fulda,xn.FrankfurtM],cost:8},{nodes:[xn.Würzburg,xn.Nurnberg],cost:8},{nodes:[xn.Würzburg,xn.FrankfurtM],cost:13},{nodes:[xn.Würzburg,xn.Mannheim],cost:10},{nodes:[xn.Würzburg,xn.Stuttgart],cost:12},{nodes:[xn.Würzburg,xn.Augsburg],cost:19},{nodes:[xn.Nurnberg,xn.Augsburg],cost:18},{nodes:[xn.Nurnberg,xn.Regensburg],cost:12},{nodes:[xn.Osnabrück,xn.Münster],cost:7},{nodes:[xn.Osnabrück,xn.Kassel],cost:20},{nodes:[xn.Münster,xn.Essen],cost:6},{nodes:[xn.Münster,xn.Dortmund],cost:2},{nodes:[xn.Essen,xn.Duisburg],cost:0},{nodes:[xn.Essen,xn.Dusseldorf],cost:2},{nodes:[xn.Essen,xn.Dortmund],cost:4},{nodes:[xn.Dortmund,xn.Kassel],cost:18},{nodes:[xn.Dortmund,xn.Köln],cost:10},{nodes:[xn.Dortmund,xn.FrankfurtM],cost:20},{nodes:[xn.Kassel,xn.FrankfurtM],cost:13},{nodes:[xn.Dusseldorf,xn.Aachen],cost:9},{nodes:[xn.Dusseldorf,xn.Köln],cost:4},{nodes:[xn.Aachen,xn.Köln],cost:7},{nodes:[xn.Aachen,xn.Trier],cost:19},{nodes:[xn.Trier,xn.Köln],cost:20},{nodes:[xn.Trier,xn.Wiesbaden],cost:18},{nodes:[xn.Trier,xn.Saarbrücken],cost:11},{nodes:[xn.Wiesbaden,xn.FrankfurtM],cost:0},{nodes:[xn.Wiesbaden,xn.Köln],cost:21},{nodes:[xn.Wiesbaden,xn.Saarbrücken],cost:10},{nodes:[xn.Wiesbaden,xn.Mannheim],cost:11},{nodes:[xn.Mannheim,xn.Saarbrücken],cost:11},{nodes:[xn.Mannheim,xn.Stuttgart],cost:6},{nodes:[xn.Stuttgart,xn.Saarbrücken],cost:17},{nodes:[xn.Stuttgart,xn.Freiburg],cost:16},{nodes:[xn.Stuttgart,xn.Konstanz],cost:16},{nodes:[xn.Stuttgart,xn.Augsburg],cost:15},{nodes:[xn.Konstanz,xn.Freiburg],cost:14},{nodes:[xn.Konstanz,xn.Augsburg],cost:17},{nodes:[xn.Regensburg,xn.Augsburg],cost:13},{nodes:[xn.Regensburg,xn.München],cost:10},{nodes:[xn.Regensburg,xn.Passau],cost:12},{nodes:[xn.Augsburg,xn.München],cost:6},{nodes:[xn.Passau,xn.München],cost:14}],layout:"Landscape",mapPosition:[20,20]},Mn={name:"Germany",cities:[{name:xn.Flensburg,region:wn.Green,x:37,y:427},{name:xn.Kiel,region:wn.Green,x:106,y:392},{name:xn.Hamburg,region:wn.Green,x:212,y:396},{name:xn.Hannover,region:wn.Green,x:378,y:395},{name:xn.Bremen,region:wn.Green,x:276,y:463},{name:xn.Wilhelmshaven,region:wn.Green,x:211,y:521},{name:xn.Cuxhaven,region:wn.Green,x:168,y:474},{name:xn.Lubeck,region:wn.Brown,x:153,y:341},{name:xn.Rostock,region:wn.Brown,x:128,y:256},{name:xn.Schwerin,region:wn.Brown,x:217,y:297},{name:xn.Stralsund,region:wn.Brown,x:210,y:126},{name:xn.Magdeburg,region:wn.Brown,x:389,y:271},{name:xn.Berlin,region:wn.Brown,x:355,y:170},{name:xn.FrankfurtO,region:wn.Brown,x:381,y:99},{name:xn.Halle,region:wn.Yellow,x:493,y:259},{name:xn.Leipzig,region:wn.Yellow,x:526,y:222},{name:xn.Dresden,region:wn.Yellow,x:572,y:126},{name:xn.Erfurt,region:wn.Yellow,x:567,y:309},{name:xn.Fulda,region:wn.Yellow,x:628,y:398},{name:xn.Würzburg,region:wn.Yellow,x:735,y:386},{name:xn.Nurnberg,region:wn.Yellow,x:780,y:309},{name:xn.Osnabrück,region:wn.Red,x:359,y:516},{name:xn.Münster,region:wn.Red,x:427,y:554},{name:xn.Essen,region:wn.Red,x:475,y:603},{name:xn.Duisburg,region:wn.Red,x:456,y:645},{name:xn.Dortmund,region:wn.Red,x:505,y:543},{name:xn.Dusseldorf,region:wn.Red,x:537,y:635},{name:xn.Kassel,region:wn.Red,x:524,y:430},{name:xn.Aachen,region:wn.Cyan,x:614,y:654},{name:xn.Köln,region:wn.Cyan,x:590,y:589},{name:xn.Trier,region:wn.Cyan,x:739,y:628},{name:xn.Mainz,region:wn.Cyan,x:697,y:514},{name:xn.FrankfurtM,region:wn.Cyan,x:672,y:473},{name:xn.Saarbrücken,region:wn.Cyan,x:818,y:568},{name:xn.Mannheim,region:wn.Cyan,x:796,y:479},{name:xn.Freiburg,region:wn.Purple,x:966,y:537},{name:xn.Stuttgart,region:wn.Purple,x:884,y:458},{name:xn.Konstanz,region:wn.Purple,x:1011,y:459},{name:xn.Augsburg,region:wn.Purple,x:911,y:346},{name:xn.Regensburg,region:wn.Purple,x:846,y:256},{name:xn.München,region:wn.Purple,x:967,y:278},{name:xn.Passau,region:wn.Purple,x:904,y:153}],connections:[{nodes:[xn.Flensburg,xn.Kiel],cost:4},{nodes:[xn.Kiel,xn.Hamburg],cost:8},{nodes:[xn.Kiel,xn.Lubeck],cost:4},{nodes:[xn.Hamburg,xn.Hannover],cost:17},{nodes:[xn.Hamburg,xn.Bremen],cost:11},{nodes:[xn.Hamburg,xn.Cuxhaven],cost:11},{nodes:[xn.Hamburg,xn.Lubeck],cost:6},{nodes:[xn.Hamburg,xn.Schwerin],cost:8},{nodes:[xn.Bremen,xn.Wilhelmshaven],cost:11},{nodes:[xn.Bremen,xn.Hannover],cost:10},{nodes:[xn.Bremen,xn.Cuxhaven],cost:8},{nodes:[xn.Bremen,xn.Osnabrück],cost:11},{nodes:[xn.Hannover,xn.Schwerin],cost:19},{nodes:[xn.Hannover,xn.Magdeburg],cost:15},{nodes:[xn.Hannover,xn.Erfurt],cost:19},{nodes:[xn.Hannover,xn.Osnabrück],cost:16},{nodes:[xn.Hannover,xn.Kassel],cost:15},{nodes:[xn.Wilhelmshaven,xn.Osnabrück],cost:14},{nodes:[xn.Lubeck,xn.Schwerin],cost:6},{nodes:[xn.Schwerin,xn.Rostock],cost:6},{nodes:[xn.Schwerin,xn.Stralsund],cost:19},{nodes:[xn.Schwerin,xn.Berlin],cost:18},{nodes:[xn.Schwerin,xn.Magdeburg],cost:16},{nodes:[xn.Stralsund,xn.Rostock],cost:19},{nodes:[xn.Stralsund,xn.Berlin],cost:15},{nodes:[xn.Berlin,xn.Magdeburg],cost:10},{nodes:[xn.Berlin,xn.FrankfurtO],cost:6},{nodes:[xn.Berlin,xn.Halle],cost:17},{nodes:[xn.Magdeburg,xn.Halle],cost:11},{nodes:[xn.FrankfurtO,xn.Leipzig],cost:21},{nodes:[xn.FrankfurtO,xn.Dresden],cost:16},{nodes:[xn.Halle,xn.Leipzig],cost:0},{nodes:[xn.Leipzig,xn.Dresden],cost:13},{nodes:[xn.Erfurt,xn.Halle],cost:6},{nodes:[xn.Erfurt,xn.Dresden],cost:19},{nodes:[xn.Erfurt,xn.Nurnberg],cost:21},{nodes:[xn.Erfurt,xn.Fulda],cost:13},{nodes:[xn.Erfurt,xn.Kassel],cost:15},{nodes:[xn.Fulda,xn.Würzburg],cost:11},{nodes:[xn.Fulda,xn.Kassel],cost:8},{nodes:[xn.Fulda,xn.FrankfurtM],cost:8},{nodes:[xn.Würzburg,xn.Nurnberg],cost:8},{nodes:[xn.Würzburg,xn.FrankfurtM],cost:13},{nodes:[xn.Würzburg,xn.Mannheim],cost:10},{nodes:[xn.Würzburg,xn.Stuttgart],cost:12},{nodes:[xn.Würzburg,xn.Augsburg],cost:19},{nodes:[xn.Nurnberg,xn.Augsburg],cost:18},{nodes:[xn.Nurnberg,xn.Regensburg],cost:12},{nodes:[xn.Osnabrück,xn.Münster],cost:7},{nodes:[xn.Osnabrück,xn.Kassel],cost:20},{nodes:[xn.Münster,xn.Essen],cost:6},{nodes:[xn.Münster,xn.Dortmund],cost:2},{nodes:[xn.Essen,xn.Duisburg],cost:0},{nodes:[xn.Essen,xn.Dusseldorf],cost:2},{nodes:[xn.Essen,xn.Dortmund],cost:5},{nodes:[xn.Dortmund,xn.Kassel],cost:18},{nodes:[xn.Dortmund,xn.Köln],cost:10},{nodes:[xn.Dortmund,xn.FrankfurtM],cost:20},{nodes:[xn.Kassel,xn.FrankfurtM],cost:13},{nodes:[xn.Dusseldorf,xn.Aachen],cost:9},{nodes:[xn.Dusseldorf,xn.Köln],cost:4},{nodes:[xn.Aachen,xn.Köln],cost:7},{nodes:[xn.Aachen,xn.Trier],cost:19},{nodes:[xn.Trier,xn.Köln],cost:20},{nodes:[xn.Trier,xn.Mainz],cost:18},{nodes:[xn.Trier,xn.Saarbrücken],cost:11},{nodes:[xn.Mainz,xn.FrankfurtM],cost:0},{nodes:[xn.Mainz,xn.Köln],cost:21},{nodes:[xn.Mainz,xn.Saarbrücken],cost:10},{nodes:[xn.Mainz,xn.Mannheim],cost:11},{nodes:[xn.Mannheim,xn.Saarbrücken],cost:16},{nodes:[xn.Mannheim,xn.Stuttgart],cost:6},{nodes:[xn.Stuttgart,xn.Saarbrücken],cost:17},{nodes:[xn.Stuttgart,xn.Freiburg],cost:16},{nodes:[xn.Stuttgart,xn.Konstanz],cost:16},{nodes:[xn.Stuttgart,xn.Augsburg],cost:15},{nodes:[xn.Konstanz,xn.Freiburg],cost:14},{nodes:[xn.Konstanz,xn.Augsburg],cost:17},{nodes:[xn.Regensburg,xn.Augsburg],cost:13},{nodes:[xn.Regensburg,xn.München],cost:10},{nodes:[xn.Regensburg,xn.Passau],cost:12},{nodes:[xn.Augsburg,xn.München],cost:6},{nodes:[xn.Passau,xn.München],cost:14}],layout:"Landscape",mapPosition:[20,20],mapSpecificRules:"Stop resupplying uranium after power plant 39 has been bought."};(function(e){e["Red"]="red",e["Brown"]="brown",e["Green"]="green",e["Orange"]="orange",e["Yellow"]="yellow",e["Pink"]="pink"})(_n||(_n={})),function(e){e["Thiruvananthapuram"]="Thiruvananthapuram",e["Madurai"]="Madurai",e["Coimbatore"]="Coimbatore",e["Chennai"]="Chennai",e["Hyderabad"]="Hyderabad",e["Bangalore1"]="Bangalore 1",e["Bangalore2"]="Bangalore 2",e["Dibrugarh"]="Dibrugarh",e["Imphal"]="Imphal",e["Aizawi"]="Aizawi",e["Chittagong"]="Chittagong",e["Shillong"]="Shillong",e["Dhaka"]="Dhaka",e["Khulna"]="Khulna",e["Darjeeling"]="Darjeeling",e["Kathmandu"]="Kathmandu",e["Patna"]="Patna",e["Lakhnau"]="Lakhnau",e["Varanasi"]="Varanasi",e["Agra"]="Agra",e["Kanpur"]="Kanpur",e["Srinagar"]="Srinagar",e["Ludhiana"]="Ludhiana",e["Delhi1"]="Delhi 1",e["Delhi2"]="Delhi 2",e["Jaipur"]="Jaipur",e["Udaipur"]="Udaipur",e["Ahmedabad"]="Ahmedabad",e["Dhanbad"]="Dhanbad",e["Kolkata"]="Kolkata",e["Bhudaneswar"]="Bhudaneswar",e["Sambalpur"]="Sambalpur",e["Jabalpur"]="Jabalpur",e["Nagpur"]="Nagpur",e["Visakhapatnam"]="Visakhapatnam",e["Goa"]="Goa",e["Pune"]="Pune",e["Surat"]="Surat",e["Indore"]="Indore",e["Bhopal"]="Bhopal",e["Mumbai1"]="Mumbai 1",e["Mumbai2"]="Mumbai 2"}(Pn||(Pn={}));var Cn,Bn,Rn={name:"India",cities:[{name:Pn.Thiruvananthapuram,region:_n.Red,x:217,y:868},{name:Pn.Madurai,region:_n.Red,x:230,y:829},{name:Pn.Coimbatore,region:_n.Red,x:197,y:797},{name:Pn.Chennai,region:_n.Red,x:289,y:740},{name:Pn.Hyderabad,region:_n.Red,x:232,y:618},{name:Pn.Bangalore1,region:_n.Red,x:205,y:710},{name:Pn.Bangalore2,region:_n.Red,x:205,y:735},{name:Pn.Dibrugarh,region:_n.Brown,x:669,y:328},{name:Pn.Imphal,region:_n.Brown,x:658,y:392},{name:Pn.Aizawi,region:_n.Brown,x:625,y:427},{name:Pn.Chittagong,region:_n.Brown,x:589,y:483},{name:Pn.Shillong,region:_n.Brown,x:586,y:395},{name:Pn.Dhaka,region:_n.Brown,x:548,y:432},{name:Pn.Khulna,region:_n.Brown,x:528,y:468},{name:Pn.Darjeeling,region:_n.Green,x:496,y:333},{name:Pn.Kathmandu,region:_n.Green,x:418,y:307},{name:Pn.Patna,region:_n.Green,x:416,y:373},{name:Pn.Lakhnau,region:_n.Green,x:310,y:338},{name:Pn.Varanasi,region:_n.Green,x:350,y:385},{name:Pn.Agra,region:_n.Green,x:228,y:335},{name:Pn.Kanpur,region:_n.Green,x:269,y:373},{name:Pn.Srinagar,region:_n.Orange,x:135,y:115},{name:Pn.Ludhiana,region:_n.Orange,x:186,y:215},{name:Pn.Delhi1,region:_n.Orange,x:190,y:281},{name:Pn.Delhi2,region:_n.Orange,x:190,y:303},{name:Pn.Jaipur,region:_n.Orange,x:158,y:341},{name:Pn.Udaipur,region:_n.Orange,x:105,y:410},{name:Pn.Ahmedabad,region:_n.Orange,x:75,y:456},{name:Pn.Dhanbad,region:_n.Yellow,x:424,y:427},{name:Pn.Kolkata,region:_n.Yellow,x:463,y:477},{name:Pn.Bhudaneswar,region:_n.Yellow,x:428,y:533},{name:Pn.Sambalpur,region:_n.Yellow,x:376,y:494},{name:Pn.Jabalpur,region:_n.Yellow,x:293,y:478},{name:Pn.Nagpur,region:_n.Yellow,x:250,y:510},{name:Pn.Visakhapatnam,region:_n.Yellow,x:358,y:597},{name:Pn.Goa,region:_n.Pink,x:109,y:677},{name:Pn.Pune,region:_n.Pink,x:133,y:587},{name:Pn.Surat,region:_n.Pink,x:80,y:510},{name:Pn.Indore,region:_n.Pink,x:160,y:476},{name:Pn.Bhopal,region:_n.Pink,x:208,y:437},{name:Pn.Mumbai1,region:_n.Pink,x:58,y:570},{name:Pn.Mumbai2,region:_n.Pink,x:58,y:593}],connections:[{nodes:[Pn.Srinagar,Pn.Ludhiana],cost:15},{nodes:[Pn.Ludhiana,Pn.Delhi1],cost:9},{nodes:[Pn.Delhi1,Pn.Delhi2],cost:0},{nodes:[Pn.Delhi2,Pn.Jaipur],cost:7},{nodes:[Pn.Delhi2,Pn.Agra],cost:6},{nodes:[Pn.Jaipur,Pn.Bhopal],cost:12},{nodes:[Pn.Jaipur,Pn.Kanpur],cost:12},{nodes:[Pn.Agra,Pn.Lakhnau],cost:8},{nodes:[Pn.Lakhnau,Pn.Kathmandu],cost:15},{nodes:[Pn.Kathmandu,Pn.Darjeeling],cost:13},{nodes:[Pn.Darjeeling,Pn.Shillong],cost:12},{nodes:[Pn.Shillong,Pn.Patna],cost:18},{nodes:[Pn.Patna,Pn.Kathmandu],cost:10},{nodes:[Pn.Imphal,Pn.Dibrugarh],cost:11},{nodes:[Pn.Dibrugarh,Pn.Shillong],cost:9},{nodes:[Pn.Shillong,Pn.Imphal],cost:12},{nodes:[Pn.Imphal,Pn.Aizawi],cost:7},{nodes:[Pn.Shillong,Pn.Dhaka],cost:10},{nodes:[Pn.Dhaka,Pn.Khulna],cost:6},{nodes:[Pn.Khulna,Pn.Kolkata],cost:3},{nodes:[Pn.Dhanbad,Pn.Dhaka],cost:14},{nodes:[Pn.Jabalpur,Pn.Sambalpur],cost:13},{nodes:[Pn.Sambalpur,Pn.Nagpur],cost:13},{nodes:[Pn.Nagpur,Pn.Visakhapatnam],cost:17},{nodes:[Pn.Visakhapatnam,Pn.Sambalpur],cost:12},{nodes:[Pn.Jabalpur,Pn.Kanpur],cost:11},{nodes:[Pn.Varanasi,Pn.Jabalpur],cost:11},{nodes:[Pn.Kanpur,Pn.Varanasi],cost:8},{nodes:[Pn.Varanasi,Pn.Patna],cost:5},{nodes:[Pn.Patna,Pn.Lakhnau],cost:11},{nodes:[Pn.Kanpur,Pn.Bhopal],cost:13},{nodes:[Pn.Ahmedabad,Pn.Bhopal],cost:11},{nodes:[Pn.Bhopal,Pn.Udaipur],cost:11},{nodes:[Pn.Udaipur,Pn.Jaipur],cost:9},{nodes:[Pn.Ahmedabad,Pn.Surat],cost:7},{nodes:[Pn.Ahmedabad,Pn.Indore],cost:8},{nodes:[Pn.Indore,Pn.Surat],cost:10},{nodes:[Pn.Mumbai1,Pn.Mumbai2],cost:0},{nodes:[Pn.Mumbai2,Pn.Pune],cost:4},{nodes:[Pn.Pune,Pn.Hyderabad],cost:13},{nodes:[Pn.Pune,Pn.Nagpur],cost:17},{nodes:[Pn.Pune,Pn.Indore],cost:15},{nodes:[Pn.Goa,Pn.Coimbatore],cost:18},{nodes:[Pn.Bangalore1,Pn.Bangalore2],cost:0},{nodes:[Pn.Bangalore2,Pn.Coimbatore],cost:9},{nodes:[Pn.Coimbatore,Pn.Thiruvananthapuram],cost:10},{nodes:[Pn.Thiruvananthapuram,Pn.Madurai],cost:7},{nodes:[Pn.Madurai,Pn.Chennai],cost:12},{nodes:[Pn.Chennai,Pn.Bangalore1],cost:9},{nodes:[Pn.Bangalore1,Pn.Hyderabad],cost:14},{nodes:[Pn.Hyderabad,Pn.Goa],cost:15},{nodes:[Pn.Goa,Pn.Bangalore2],cost:14},{nodes:[Pn.Mumbai2,Pn.Goa],cost:11},{nodes:[Pn.Indore,Pn.Nagpur],cost:10},{nodes:[Pn.Sambalpur,Pn.Dhanbad],cost:8},{nodes:[Pn.Sambalpur,Pn.Bhudaneswar],cost:7},{nodes:[Pn.Bhudaneswar,Pn.Kolkata],cost:11},{nodes:[Pn.Kolkata,Pn.Dhanbad],cost:9},{nodes:[Pn.Dhanbad,Pn.Patna],cost:8},{nodes:[Pn.Nagpur,Pn.Hyderabad],cost:12},{nodes:[Pn.Hyderabad,Pn.Visakhapatnam],cost:13},{nodes:[Pn.Visakhapatnam,Pn.Chennai],cost:17},{nodes:[Pn.Chittagong,Pn.Aizawi],cost:7},{nodes:[Pn.Dhaka,Pn.Aizawi],cost:8},{nodes:[Pn.Dhaka,Pn.Chittagong],cost:7},{nodes:[Pn.Patna,Pn.Darjeeling],cost:11},{nodes:[Pn.Visakhapatnam,Pn.Bhudaneswar],cost:12},{nodes:[Pn.Udaipur,Pn.Ahmedabad],cost:6},{nodes:[Pn.Madurai,Pn.Coimbatore],cost:6},{nodes:[Pn.Bangalore2,Pn.Madurai],cost:10},{nodes:[Pn.Bhopal,Pn.Jabalpur],cost:8},{nodes:[Pn.Bhopal,Pn.Nagpur],cost:7},{nodes:[Pn.Bhopal,Pn.Indore],cost:4},{nodes:[Pn.Surat,Pn.Mumbai1],cost:6},{nodes:[Pn.Agra,Pn.Kanpur],cost:8},{nodes:[Pn.Kanpur,Pn.Lakhnau],cost:3},{nodes:[Pn.Lakhnau,Pn.Varanasi],cost:7}],layout:"Portrait",mapPosition:[200,-60],adjustRatio:[1.25,1.25],resupply:[[[4,5,4],[5,6,4],[6,7,5],[7,8,6],[8,10,7]],[[1,2,2],[2,2,2],[2,3,3],[3,4,4],[4,5,5]],[[1,3,4],[1,3,4],[3,4,6],[4,5,7],[4,7,9]],[[1,1,1],[1,1,1],[1,2,1],[2,2,2],[2,3,2]]],startingResources:[24,21,20,2],startingSupply:[24,24,24,8],maxPriceAvailable:[3,5,8],coalPrices:[1,1,1,1,2,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,8,8],garbagePrices:[1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6],uraniumPrices:[1,2,3,4,5,6,7,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Je);if("original"==n){a=a.slice(8);var i=a.splice(2,1)[0],s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[qt(3,"India"),qt(4,"India"),qt(5,"India"),qt(6,"India")],o=[qt(7,"India"),qt(8,"India"),qt(9,"India"),qt(10,"India")]}else{var c=De(a.splice(0,12),t()+""),u=c.splice(0,8);u=u.sort((function(e,n){return e.number-n.number})),r=u.slice(0,4),o=u.slice(4);var l=c.shift(),d=a.pop();a=De(a,t()+""),2==e?(c=c.slice(1),a=De(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=De(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=De(a.slice(3).concat(c),t()+"")):a=De(a.concat(c),t()+""),a.unshift(l),a.push(d)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"The power grid will suffer a power outage if too many cities are built in one round, penalizing players $3 per city built.\nPlayers take turns buying one resource at a time. The resource market is limited in steps 1 and 2.\nGarbage plants are less efficient. Their cost is one higher, but their storage capacity is not changed.\nPlayers must power as many cities as possible in each round."};(function(e){e["Brown"]="brown",e["Purple"]="purple",e["Red"]="red",e["Green"]="green",e["Yellow"]="yellow",e["Blue"]="blue"})(Cn||(Cn={})),function(e){e["Siracusa"]="Siracusa",e["Reggiodical"]="Reggio Di Cal",e["Cosenza"]="Cosenza",e["Messina"]="Messina",e["Palermo"]="Palermo",e["Catania"]="Catania",e["Brindisi"]="Brindisi",e["Taranto"]="Taranto",e["Bari"]="Bari",e["Foggia"]="Foggia",e["Pesara"]="Pesara",e["Napoli"]="Napoli",e["Salerno"]="Salerno",e["Roma"]="Roma",e["Ancona"]="Ancona",e["Rimini"]="Rimini",e["Ravenna"]="Ravenna",e["Sanmarino"]="San Marino",e["Perugia"]="Perugia",e["Frienze"]="Frienze",e["Udine"]="Udine",e["Trieste"]="Trieste",e["Bolanzo"]="Bolanzo",e["Mestre"]="Mestre",e["Venezia"]="Venezia",e["Vicenza"]="Vicenza",e["Padua"]="Padua",e["Ferrara"]="Ferrara",e["Bologna"]="Bologna",e["Modena"]="Modena",e["Reggio"]="Reggio",e["Pisa"]="Pisa",e["Parma"]="Parma",e["Laspezia"]="La Spezia",e["Torino"]="Torino",e["Bergamo"]="Bergamo",e["Milano"]="Milano",e["Brescia"]="Brescia",e["Picenza"]="Picenza",e["Genova"]="Genova",e["Verona"]="Verona",e["Lovorno"]="Lovorno"}(Bn||(Bn={}));var An,Ln,On={name:"Italy",cities:[{name:Bn.Siracusa,region:Cn.Brown,x:1048,y:471},{name:Bn.Reggiodical,region:Cn.Brown,x:1013,y:346},{name:Bn.Cosenza,region:Cn.Brown,x:960,y:240},{name:Bn.Messina,region:Cn.Brown,x:975,y:365},{name:Bn.Palermo,region:Cn.Brown,x:875,y:468},{name:Bn.Catania,region:Cn.Brown,x:1007,y:460},{name:Bn.Brindisi,region:Cn.Purple,x:945,y:4},{name:Bn.Taranto,region:Cn.Brown,x:933,y:92},{name:Bn.Bari,region:Cn.Purple,x:871,y:32},{name:Bn.Foggia,region:Cn.Purple,x:777,y:69},{name:Bn.Pesara,region:Cn.Purple,x:646,y:76},{name:Bn.Napoli,region:Cn.Purple,x:747,y:222},{name:Bn.Salerno,region:Cn.Purple,x:799,y:212},{name:Bn.Roma,region:Cn.Purple,x:583,y:228},{name:Bn.Ancona,region:Cn.Red,x:549,y:16},{name:Bn.Rimini,region:Cn.Red,x:459,y:13},{name:Bn.Ravenna,region:Cn.Red,x:401,y:-5},{name:Bn.Sanmarino,region:Cn.Red,x:456,y:88},{name:Bn.Perugia,region:Cn.Red,x:507,y:123},{name:Bn.Frienze,region:Cn.Red,x:389,y:159},{name:Bn.Udine,region:Cn.Green,x:358,y:-207},{name:Bn.Trieste,region:Cn.Green,x:410,y:-181},{name:Bn.Bolanzo,region:Cn.Green,x:197,y:-172},{name:Bn.Mestre,region:Cn.Green,x:318,y:-115},{name:Bn.Venezia,region:Cn.Green,x:349,y:-103},{name:Bn.Vicenza,region:Cn.Green,x:235,y:-89},{name:Bn.Padua,region:Cn.Green,x:279,y:-72},{name:Bn.Torino,region:Cn.Blue,x:57,y:215},{name:Bn.Bergamo,region:Cn.Blue,x:125,y:14},{name:Bn.Milano,region:Cn.Blue,x:123,y:102},{name:Bn.Brescia,region:Cn.Blue,x:182,y:2},{name:Bn.Picenza,region:Cn.Blue,x:182,y:105},{name:Bn.Genova,region:Cn.Blue,x:182,y:217},{name:Bn.Verona,region:Cn.Blue,x:231,y:-13},{name:Bn.Lovorno,region:Cn.Red,x:333,y:216},{name:Bn.Ferrara,region:Cn.Yellow,x:333,y:-3},{name:Bn.Bologna,region:Cn.Yellow,x:350,y:85},{name:Bn.Modena,region:Cn.Yellow,x:303,y:72},{name:Bn.Reggio,region:Cn.Yellow,x:263,y:96},{name:Bn.Pisa,region:Cn.Yellow,x:304,y:197},{name:Bn.Parma,region:Cn.Yellow,x:224,y:81},{name:Bn.Laspezia,region:Cn.Yellow,x:245,y:206}],connections:[{nodes:[Bn.Palermo,Bn.Catania],cost:15},{nodes:[Bn.Catania,Bn.Siracusa],cost:3},{nodes:[Bn.Catania,Bn.Messina],cost:6},{nodes:[Bn.Messina,Bn.Palermo],cost:15},{nodes:[Bn.Messina,Bn.Reggiodical],cost:3},{nodes:[Bn.Reggiodical,Bn.Cosenza],cost:13},{nodes:[Bn.Cosenza,Bn.Salerno],cost:18},{nodes:[Bn.Cosenza,Bn.Taranto],cost:15},{nodes:[Bn.Taranto,Bn.Brindisi],cost:4},{nodes:[Bn.Brindisi,Bn.Bari],cost:7},{nodes:[Bn.Bari,Bn.Taranto],cost:7},{nodes:[Bn.Taranto,Bn.Salerno],cost:19},{nodes:[Bn.Salerno,Bn.Bari],cost:16},{nodes:[Bn.Bari,Bn.Foggia],cost:8},{nodes:[Bn.Foggia,Bn.Salerno],cost:10},{nodes:[Bn.Salerno,Bn.Napoli],cost:3},{nodes:[Bn.Napoli,Bn.Foggia],cost:12},{nodes:[Bn.Napoli,Bn.Roma],cost:14},{nodes:[Bn.Roma,Bn.Foggia],cost:22},{nodes:[Bn.Foggia,Bn.Pesara],cost:10},{nodes:[Bn.Pesara,Bn.Roma],cost:14},{nodes:[Bn.Roma,Bn.Ancona],cost:17},{nodes:[Bn.Roma,Bn.Perugia],cost:13},{nodes:[Bn.Perugia,Bn.Sanmarino],cost:12},{nodes:[Bn.Sanmarino,Bn.Rimini],cost:0},{nodes:[Bn.Rimini,Bn.Ancona],cost:6},{nodes:[Bn.Ancona,Bn.Perugia],cost:10},{nodes:[Bn.Ancona,Bn.Pesara],cost:9},{nodes:[Bn.Roma,Bn.Frienze],cost:20},{nodes:[Bn.Lovorno,Bn.Roma],cost:19},{nodes:[Bn.Frienze,Bn.Perugia],cost:13},{nodes:[Bn.Frienze,Bn.Sanmarino],cost:12},{nodes:[Bn.Genova,Bn.Torino],cost:12},{nodes:[Bn.Torino,Bn.Milano],cost:8},{nodes:[Bn.Milano,Bn.Bergamo],cost:3},{nodes:[Bn.Bergamo,Bn.Bolanzo],cost:12},{nodes:[Bn.Bolanzo,Bn.Brescia],cost:12},{nodes:[Bn.Bolanzo,Bn.Mestre],cost:12},{nodes:[Bn.Bolanzo,Bn.Udine],cost:14},{nodes:[Bn.Udine,Bn.Trieste],cost:4},{nodes:[Bn.Udine,Bn.Venezia],cost:7},{nodes:[Bn.Venezia,Bn.Mestre],cost:0},{nodes:[Bn.Genova,Bn.Laspezia],cost:5},{nodes:[Bn.Laspezia,Bn.Pisa],cost:5},{nodes:[Bn.Pisa,Bn.Lovorno],cost:0},{nodes:[Bn.Genova,Bn.Milano],cost:9},{nodes:[Bn.Milano,Bn.Picenza],cost:4},{nodes:[Bn.Picenza,Bn.Parma],cost:4},{nodes:[Bn.Parma,Bn.Reggio],cost:2},{nodes:[Bn.Reggio,Bn.Modena],cost:2},{nodes:[Bn.Modena,Bn.Bologna],cost:3},{nodes:[Bn.Bologna,Bn.Pisa],cost:12},{nodes:[Bn.Pisa,Bn.Reggio],cost:10},{nodes:[Bn.Laspezia,Bn.Parma],cost:9},{nodes:[Bn.Laspezia,Bn.Reggio],cost:9},{nodes:[Bn.Genova,Bn.Picenza],cost:7},{nodes:[Bn.Genova,Bn.Parma],cost:11},{nodes:[Bn.Milano,Bn.Brescia],cost:4},{nodes:[Bn.Brescia,Bn.Bergamo],cost:3},{nodes:[Bn.Brescia,Bn.Verona],cost:4},{nodes:[Bn.Brescia,Bn.Picenza],cost:5},{nodes:[Bn.Bolanzo,Bn.Vicenza],cost:10},{nodes:[Bn.Vicenza,Bn.Padua],cost:3},{nodes:[Bn.Vicenza,Bn.Verona],cost:3},{nodes:[Bn.Verona,Bn.Parma],cost:6},{nodes:[Bn.Parma,Bn.Brescia],cost:6},{nodes:[Bn.Verona,Bn.Padua],cost:5},{nodes:[Bn.Padua,Bn.Mestre],cost:3},{nodes:[Bn.Venezia,Bn.Ravenna],cost:12},{nodes:[Bn.Ravenna,Bn.Ferrara],cost:4},{nodes:[Bn.Ferrara,Bn.Venezia],cost:9},{nodes:[Bn.Ferrara,Bn.Padua],cost:7},{nodes:[Bn.Ferrara,Bn.Verona],cost:7},{nodes:[Bn.Verona,Bn.Modena],cost:8},{nodes:[Bn.Frienze,Bn.Pisa],cost:5},{nodes:[Bn.Frienze,Bn.Ravenna],cost:10},{nodes:[Bn.Ravenna,Bn.Rimini],cost:4},{nodes:[Bn.Frienze,Bn.Bologna],cost:8},{nodes:[Bn.Bologna,Bn.Ravenna],cost:4},{nodes:[Bn.Bologna,Bn.Ferrara],cost:3},{nodes:[Bn.Ferrara,Bn.Modena],cost:4}],mapPosition:[-20,320],mapSpecificRules:"Stop resupplying uranium after power plant 39 has been bought.",startingResources:[18,15,12,2]};(function(e){e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Yellow"]="yellow",e["Red"]="red"})(An||(An={})),function(e){e["Asahikawa"]="Asahikawa",e["Sapporo"]="Sapporo",e["Hakodate"]="Hakodate",e["Admori"]="Admori",e["Morioka"]="Morioka",e["Akita"]="Akita",e["Sendai"]="Sendai",e["Niigata"]="Niigata",e["Koriyama"]="Koriyama",e["Nagano"]="Nagano",e["Saitama"]="Saitama",e["Tokyo"]="Tokyo",e["Chiba"]="Chiba",e["Yokohama"]="Yokohama",e["Kanazawa"]="Kanazawa",e["Toyama"]="Toyama",e["Kyoto"]="Kyoto",e["Osaka"]="Osaka",e["Nagoya"]="Nagoya",e["Kofu"]="Kofu",e["Hamamatsu"]="Hamamatsu",e["Kobe"]="Kobe",e["Matsue"]="Matsue",e["Okayama"]="Okayama",e["Takamatsu"]="Takamatsu",e["Kochi"]="Kochi",e["Matsuyama"]="Matsuyama",e["Hiroshima"]="Hiroshima",e["Shimonoseki"]="Shimonoseki",e["Oita"]="Oita",e["Miyazaki"]="Miyazaki",e["Kagoshima"]="Kagoshima",e["Kumamoto"]="Kumamoto",e["Fukuoka"]="Fukuoka",e["Nagasaki"]="Nagasaki"}(Ln||(Ln={}));var Gn,jn,Dn={name:"Japan",cities:[{name:Ln.Asahikawa,region:An.Brown,x:3384,y:1014},{name:Ln.Sapporo,region:An.Brown,x:3028,y:982,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Ln.Hakodate,region:An.Brown,x:2622,y:1112},{name:Ln.Admori,region:An.Brown,x:3818,y:1336},{name:Ln.Morioka,region:An.Brown,x:3636,y:1646,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Ln.Akita,region:An.Brown,x:3472,y:1480},{name:Ln.Sendai,region:An.Brown,x:3408,y:1886},{name:Ln.Niigata,region:An.Green,x:2874,y:1628},{name:Ln.Koriyama,region:An.Green,x:3086,y:1932,slotCosts:[10,15]},{name:Ln.Nagano,region:An.Green,x:2486,y:1722},{name:Ln.Saitama,region:An.Green,x:2450,y:1986,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Ln.Tokyo,region:An.Green,x:2524,y:2122,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Ln.Chiba,region:An.Green,x:2650,y:2316},{name:Ln.Yokohama,region:An.Green,x:2306,y:2244,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Ln.Kanazawa,region:An.Purple,x:2207,y:1385},{name:Ln.Toyama,region:An.Purple,x:2257,y:1595,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Ln.Kyoto,region:An.Purple,x:1765,y:1595},{name:Ln.Osaka,region:An.Purple,x:1517,y:1631,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Ln.Nagoya,region:An.Purple,x:1942,y:1751},{name:Ln.Kofu,region:An.Purple,x:2179,y:1897},{name:Ln.Hamamatsu,region:An.Purple,x:1958,y:2024,slotCosts:[10,15]},{name:Ln.Kobe,region:An.Yellow,x:1555,y:1451,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Ln.Matsue,region:An.Yellow,x:1457,y:1006,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Ln.Okayama,region:An.Yellow,x:1390,y:1286},{name:Ln.Takamatsu,region:An.Yellow,x:1268,y:1507},{name:Ln.Kochi,region:An.Yellow,x:974,y:1472,slotCosts:[10,15]},{name:Ln.Matsuyama,region:An.Yellow,x:1036,y:1268},{name:Ln.Hiroshima,region:An.Yellow,x:1103,y:1078},{name:Ln.Shimonoseki,region:An.Red,x:856,y:962},{name:Ln.Oita,region:An.Red,x:731,y:1166,slotCosts:[10,15]},{name:Ln.Miyazaki,region:An.Red,x:469,y:1318,slotCosts:[15,20],stepSlots:[0,1,2]},{name:Ln.Kagoshima,region:An.Red,x:157,y:1255},{name:Ln.Kumamoto,region:An.Red,x:457,y:1045},{name:Ln.Fukuoka,region:An.Red,x:644,y:823,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:Ln.Nagasaki,region:An.Red,x:313,y:875}],layout:"Portrait",adjustRatio:[.28,.28],mapPosition:[0,120],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[21,15,9,3],startingCities:["Fukuoka","Kobe","Osaka","Sapporo","Tokyo","Yokohama"],mapSpecificRules:"Each player has one network but gets one free jump to start a city anywhere on the map, bypassing normal connection costs.\nAll first round house/city builds MUST be placed in one of six starting cities: Fukuoka, Kobe, Osaka, Sapporo, Tokyo, or Yokohama. If you build 2 cities in round 1, you must use your free jump and build in a second of these six starting cities. All 6 are marked with a 10 on the map.\nStarting cities have two first-connection spots (cost 10 Elektro each); two players can build there in Step 1.\nIn Step 3, a third connection spot opens in starting cities (cost 20 Elektro).\nSome smaller cities have only two building spots (costs 10 and 15, or 15 and 20 from Step 2). These cities are marked with an X - an X at the top means no Step 1 builds allowed ($15 and $20 will be available during Step 2/Step 3), an X at the bottom means no Step 3 builds allowed, only $10 and $15 (Step 1 and Step 2) builds are allowed.\nIf all starting city spots are taken, you cannot use your free jump.",connections:[{nodes:[Ln.Nagasaki,Ln.Fukuoka],cost:10},{nodes:[Ln.Fukuoka,Ln.Shimonoseki],cost:10},{nodes:[Ln.Shimonoseki,Ln.Hiroshima],cost:12},{nodes:[Ln.Hiroshima,Ln.Matsue],cost:13},{nodes:[Ln.Kumamoto,Ln.Kagoshima],cost:13},{nodes:[Ln.Kagoshima,Ln.Miyazaki],cost:8},{nodes:[Ln.Miyazaki,Ln.Kumamoto],cost:11},{nodes:[Ln.Kumamoto,Ln.Oita],cost:12},{nodes:[Ln.Oita,Ln.Miyazaki],cost:12},{nodes:[Ln.Oita,Ln.Matsuyama],cost:14},{nodes:[Ln.Matsuyama,Ln.Kochi],cost:7},{nodes:[Ln.Kochi,Ln.Takamatsu],cost:9},{nodes:[Ln.Hiroshima,Ln.Okayama],cost:11},{nodes:[Ln.Okayama,Ln.Matsue],cost:11},{nodes:[Ln.Okayama,Ln.Kobe],cost:9},{nodes:[Ln.Kobe,Ln.Matsue],cost:16},{nodes:[Ln.Matsuyama,Ln.Takamatsu],cost:10},{nodes:[Ln.Takamatsu,Ln.Okayama],cost:9},{nodes:[Ln.Osaka,Ln.Nagoya],cost:9},{nodes:[Ln.Nagoya,Ln.Kyoto],cost:9},{nodes:[Ln.Kyoto,Ln.Kobe],cost:3},{nodes:[Ln.Osaka,Ln.Kyoto],cost:0},{nodes:[Ln.Kyoto,Ln.Kanazawa],cost:19},{nodes:[Ln.Kanazawa,Ln.Toyama],cost:3},{nodes:[Ln.Kanazawa,Ln.Nagoya],cost:16},{nodes:[Ln.Nagoya,Ln.Toyama],cost:15},{nodes:[Ln.Toyama,Ln.Nagano],cost:9},{nodes:[Ln.Nagano,Ln.Niigata],cost:12},{nodes:[Ln.Niigata,Ln.Akita],cost:16},{nodes:[Ln.Hamamatsu,Ln.Kofu],cost:12},{nodes:[Ln.Kofu,Ln.Nagoya],cost:15},{nodes:[Ln.Nagoya,Ln.Hamamatsu],cost:6},{nodes:[Ln.Kofu,Ln.Saitama],cost:8},{nodes:[Ln.Saitama,Ln.Tokyo],cost:0},{nodes:[Ln.Tokyo,Ln.Yokohama],cost:0},{nodes:[Ln.Tokyo,Ln.Chiba],cost:4},{nodes:[Ln.Chiba,Ln.Sendai],cost:21},{nodes:[Ln.Tokyo,Ln.Koriyama],cost:14},{nodes:[Ln.Koriyama,Ln.Niigata],cost:11},{nodes:[Ln.Saitama,Ln.Nagano],cost:17},{nodes:[Ln.Saitama,Ln.Niigata],cost:21},{nodes:[Ln.Koriyama,Ln.Sendai],cost:7},{nodes:[Ln.Sendai,Ln.Akita],cost:14},{nodes:[Ln.Akita,Ln.Koriyama],cost:21},{nodes:[Ln.Sendai,Ln.Morioka],cost:10},{nodes:[Ln.Morioka,Ln.Akita],cost:7},{nodes:[Ln.Akita,Ln.Admori],cost:10},{nodes:[Ln.Admori,Ln.Morioka],cost:10},{nodes:[Ln.Admori,Ln.Hakodate],cost:15},{nodes:[Ln.Hakodate,Ln.Sapporo],cost:14},{nodes:[Ln.Sapporo,Ln.Asahikawa],cost:8},{nodes:[Ln.Kumamoto,Ln.Shimonoseki],cost:16},{nodes:[Ln.Kumamoto,Ln.Fukuoka],cost:8}]},Nn=c({},Dn);(function(e){e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Pink"]="pink"})(Gn||(Gn={})),function(e){e["Gyeongju"]="Gyeongju",e["Ulsan"]="Ulsan",e["Busan"]="Busan",e["Jinju"]="Jinju",e["Daegu"]="Daegu",e["Andong"]="Andong",e["Sangju"]="Sangju",e["Rasun"]="Rasun",e["Cheongjin"]="Cheongjin",e["Gyeongseong"]="Gyeongseong",e["Seongjin"]="Seongjin",e["Hyesan"]="Hyesan",e["Hamheung"]="Hamheung",e["Wonsan"]="Wonsan",e["Samcheok"]="Samcheok",e["Donghae"]="Donghae",e["Taeraek"]="Taeraek",e["Gangneung"]="Gangneung",e["Sokcho"]="Sokcho",e["Wonju"]="Wonju",e["Chuncheon"]="Chuncheon",e["Chungju"]="Chungju",e["Cheongju"]="Cheongju",e["Jeju"]="Jeju",e["Gwangju"]="Gwangju",e["Naju"]="Naju",e["Jeonju"]="Jeonju",e["Daejeon"]="Daejeon",e["Yongin"]="Yongin",e["Seoul"]="Seoul",e["Suwon"]="Suwon",e["Goyang"]="Goyang",e["Anyang"]="Anyang",e["Incheon"]="Incheon",e["Gaesung"]="Gaesung",e["Ganggye"]="Ganggye",e["Haeju"]="Haeju",e["Pyeongyang"]="Pyeongyang",e["Hwangju"]="Hwangju",e["Nampo"]="Nampo",e["Anju"]="Anju",e["Sinuiju"]="Sinuiju"}(jn||(jn={}));var zn,Tn,En={name:"Korea",cities:[{name:jn.Gyeongju,region:Gn.Yellow,x:2161,y:2980},{name:jn.Ulsan,region:Gn.Yellow,x:2185,y:3226},{name:jn.Busan,region:Gn.Yellow,x:2041,y:3440},{name:jn.Jinju,region:Gn.Yellow,x:1676,y:3431},{name:jn.Daegu,region:Gn.Yellow,x:1876,y:3062},{name:jn.Andong,region:Gn.Yellow,x:1987,y:2737},{name:jn.Sangju,region:Gn.Yellow,x:1747,y:2827},{name:jn.Rasun,region:Gn.Red,x:2485,y:361},{name:jn.Cheongjin,region:Gn.Red,x:2309,y:491},{name:jn.Gyeongseong,region:Gn.Red,x:2209,y:689},{name:jn.Seongjin,region:Gn.Red,x:2060,y:1001},{name:jn.Hyesan,region:Gn.Red,x:1783,y:665},{name:jn.Hamheung,region:Gn.Red,x:1516,y:1283},{name:jn.Wonsan,region:Gn.Red,x:1484,y:1600},{name:jn.Samcheok,region:Gn.Brown,x:2171,y:2437},{name:jn.Donghae,region:Gn.Brown,x:2041,y:2299},{name:jn.Taeraek,region:Gn.Brown,x:1999,y:2528},{name:jn.Gangneung,region:Gn.Brown,x:1949,y:2092},{name:jn.Sokcho,region:Gn.Brown,x:1832,y:1915},{name:jn.Wonju,region:Gn.Brown,x:1735,y:2293},{name:jn.Chuncheon,region:Gn.Brown,x:1594,y:2056},{name:jn.Chungju,region:Gn.Green,x:1744,y:2552},{name:jn.Cheongju,region:Gn.Green,x:1547,y:2645},{name:jn.Jeju,region:Gn.Green,x:1223,y:4051},{name:jn.Gwangju,region:Gn.Green,x:1309,y:3380},{name:jn.Naju,region:Gn.Green,x:1121,y:3569},{name:jn.Jeonju,region:Gn.Green,x:1363,y:3109},{name:jn.Daejeon,region:Gn.Green,x:1462,y:2839},{name:jn.Yongin,region:Gn.Purple,x:1532,y:2371},{name:jn.Seoul,region:Gn.Purple,x:1400,y:2203},{name:jn.Suwon,region:Gn.Purple,x:1366,y:2488},{name:jn.Goyang,region:Gn.Purple,x:1219,y:2270},{name:jn.Anyang,region:Gn.Purple,x:1156,y:2446},{name:jn.Incheon,region:Gn.Purple,x:1028,y:2311},{name:jn.Gaesung,region:Gn.Purple,x:1171,y:2042},{name:jn.Ganggye,region:Gn.Pink,x:1213,y:809},{name:jn.Haeju,region:Gn.Pink,x:856,y:2135},{name:jn.Pyeongyang,region:Gn.Pink,x:938,y:1642},{name:jn.Hwangju,region:Gn.Pink,x:901,y:1886},{name:jn.Nampo,region:Gn.Pink,x:677,y:1763},{name:jn.Anju,region:Gn.Pink,x:812,y:1391},{name:jn.Sinuiju,region:Gn.Pink,x:433,y:1105}],connections:[{nodes:[jn.Naju,jn.Jeju],cost:19},{nodes:[jn.Naju,jn.Jinju],cost:15},{nodes:[jn.Jinju,jn.Gwangju],cost:14},{nodes:[jn.Gwangju,jn.Naju],cost:2},{nodes:[jn.Gwangju,jn.Jeonju],cost:11},{nodes:[jn.Jeonju,jn.Jinju],cost:15},{nodes:[jn.Jinju,jn.Busan],cost:11},{nodes:[jn.Jinju,jn.Daegu],cost:11},{nodes:[jn.Daegu,jn.Jeonju],cost:16},{nodes:[jn.Daegu,jn.Busan],cost:12},{nodes:[jn.Busan,jn.Ulsan],cost:7},{nodes:[jn.Ulsan,jn.Daegu],cost:10},{nodes:[jn.Jeonju,jn.Daejeon],cost:9},{nodes:[jn.Daejeon,jn.Daegu],cost:15},{nodes:[jn.Andong,jn.Gyeongju],cost:11},{nodes:[jn.Gyeongju,jn.Daegu],cost:7},{nodes:[jn.Gyeongju,jn.Ulsan],cost:3},{nodes:[jn.Daegu,jn.Sangju],cost:9},{nodes:[jn.Sangju,jn.Daejeon],cost:8},{nodes:[jn.Daegu,jn.Andong],cost:10},{nodes:[jn.Andong,jn.Sangju],cost:6},{nodes:[jn.Andong,jn.Taeraek],cost:8},{nodes:[jn.Taeraek,jn.Samcheok],cost:5},{nodes:[jn.Samcheok,jn.Donghae],cost:0},{nodes:[jn.Donghae,jn.Gangneung],cost:4},{nodes:[jn.Chungju,jn.Taeraek],cost:13},{nodes:[jn.Andong,jn.Chungju],cost:11},{nodes:[jn.Chungju,jn.Cheongju],cost:7},{nodes:[jn.Cheongju,jn.Sangju],cost:8},{nodes:[jn.Sangju,jn.Chungju],cost:9},{nodes:[jn.Daejeon,jn.Cheongju],cost:4},{nodes:[jn.Wonju,jn.Donghae],cost:14},{nodes:[jn.Wonju,jn.Taeraek],cost:13},{nodes:[jn.Chungju,jn.Wonju],cost:5},{nodes:[jn.Wonju,jn.Gangneung],cost:12},{nodes:[jn.Wonju,jn.Sokcho],cost:15},{nodes:[jn.Sokcho,jn.Gangneung],cost:6},{nodes:[jn.Chuncheon,jn.Wonju],cost:7},{nodes:[jn.Sinuiju,jn.Ganggye],cost:25},{nodes:[jn.Ganggye,jn.Hyesan],cost:20},{nodes:[jn.Sinuiju,jn.Anju],cost:13},{nodes:[jn.Anju,jn.Ganggye],cost:22},{nodes:[jn.Ganggye,jn.Hamheung],cost:19},{nodes:[jn.Hamheung,jn.Anju],cost:20},{nodes:[jn.Anju,jn.Nampo],cost:10},{nodes:[jn.Anju,jn.Pyeongyang],cost:7},{nodes:[jn.Pyeongyang,jn.Nampo],cost:5},{nodes:[jn.Nampo,jn.Hwangju],cost:4},{nodes:[jn.Hwangju,jn.Pyeongyang],cost:4},{nodes:[jn.Pyeongyang,jn.Wonsan],cost:18},{nodes:[jn.Pyeongyang,jn.Hamheung],cost:23},{nodes:[jn.Hamheung,jn.Wonsan],cost:11},{nodes:[jn.Pyeongyang,jn.Gaesung],cost:14},{nodes:[jn.Gaesung,jn.Haeju],cost:8},{nodes:[jn.Haeju,jn.Hwangju],cost:8},{nodes:[jn.Gaesung,jn.Goyang],cost:7},{nodes:[jn.Anyang,jn.Suwon],cost:3},{nodes:[jn.Suwon,jn.Yongin],cost:2},{nodes:[jn.Goyang,jn.Incheon],cost:0},{nodes:[jn.Incheon,jn.Anyang],cost:0},{nodes:[jn.Goyang,jn.Seoul],cost:0},{nodes:[jn.Suwon,jn.Cheongju],cost:10},{nodes:[jn.Seoul,jn.Yongin],cost:2},{nodes:[jn.Gaesung,jn.Chuncheon],cost:13},{nodes:[jn.Gaesung,jn.Wonsan],cost:18},{nodes:[jn.Wonsan,jn.Sokcho],cost:18},{nodes:[jn.Wonsan,jn.Chuncheon],cost:19},{nodes:[jn.Sokcho,jn.Chuncheon],cost:10},{nodes:[jn.Chuncheon,jn.Seoul],cost:8},{nodes:[jn.Chuncheon,jn.Yongin],cost:9},{nodes:[jn.Yongin,jn.Wonju],cost:8},{nodes:[jn.Yongin,jn.Chungju],cost:10},{nodes:[jn.Yongin,jn.Cheongju],cost:10},{nodes:[jn.Rasun,jn.Cheongjin],cost:8},{nodes:[jn.Cheongjin,jn.Gyeongseong],cost:4},{nodes:[jn.Gyeongseong,jn.Seongjin],cost:16},{nodes:[jn.Hyesan,jn.Gyeongseong],cost:18},{nodes:[jn.Hyesan,jn.Seongjin],cost:14},{nodes:[jn.Seongjin,jn.Hamheung],cost:17},{nodes:[jn.Hamheung,jn.Hyesan],cost:23}],layout:"Portrait",adjustRatio:[.25,.25],mapPosition:[40,30],viewBox:[1480,1180],supplyPosition:[675,1040],resupply:[[[2,2,2],[2,3,2],[3,3,2],[3,4,3],[4,5,3]],[[1,1,3],[1,2,3],[2,3,3],[3,3,4],[3,4,4]],[[1,1,2],[1,1,2],[1,2,2],[2,2,3],[2,3,3]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],resupplyNorth:[[[1,2,1],[2,2,1],[2,3,2],[2,3,2],[3,4,3]],[[1,1,1],[1,1,1],[1,1,2],[1,2,2],[2,2,3]],[[0,1,1],[0,1,1],[1,1,2],[1,1,2],[1,2,3]]],startingResources:[12,12,4,2],startingResourcesNorth:[12,6,2],startingSupply:[24,24,24,12],coalPrices:[1,2,3,4,5,5,6,6,7,7,8,8],oilPrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8],garbagePrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8],uraniumPrices:[1,2,3,4,5,6,7,8,10,12,14,16],coalPricesNorth:[1,1,2,2,3,3,4,4,5,6,7,8],oilPricesNorth:[1,2,3,4,5,6,7,8],garbagePricesNorth:[1,2,3,4,5,6,7,8],mapSpecificRules:"Korea has two separate resource markets: North and South.\nOn your buying turn, choose one side — all resources you buy that turn must come from that side. The next turn you may choose the other side.\nThe North market has no uranium track; uranium is only available from the South.\nBoth markets share a single supply pool. During bureaucracy, North restocks first, then South from whatever remains."};(function(e){e["Pink"]="pink",e["Green"]="green",e["Orange"]="orange",e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown"})(zn||(zn={})),function(e){e["Mashhad"]="Mashhad",e["Corgan"]="Corgan",e["Tehran"]="Tehran",e["Tabriz"]="Tabriz",e["Mosul"]="Mosul",e["Kermanshah"]="Kermanshah",e["Baghdad"]="Baghdad",e["Isfahan"]="Isfahan",e["Yazo"]="Yazo",e["Zahedan"]="Zahedan",e["Kerman"]="Kerman",e["Shiraz"]="Shiraz",e["Bandarabbas"]="Bandar Abbas",e["Chabahar"]="Chabahar",e["Dubai"]="Dubai",e["Muscat"]="Muscat",e["Abudhari"]="Abu Dhari",e["Alain"]="Alain",e["Salalah"]="Salalah",e["Doha"]="Doha",e["Manama"]="Manama",e["Ahvaz"]="Ahvaz",e["Basra"]="Basra",e["Najaf"]="Najaf",e["Kuwaitcity"]="Kuwait City",e["Buraydah"]="Buraydah",e["Riyadh"]="Riyadh",e["Medina"]="Medina",e["Alhasahah"]="Al Hasahah",e["Aleppo"]="Aleppo",e["Damascus"]="Damascus",e["Amman"]="Amman",e["Beirut"]="Beirut",e["Jerusalem"]="Jerusalem",e["Aqaba"]="Aqaba",e["Mukalla"]="Mukalla",e["Sanaa"]="Sanaa",e["Aden"]="Aden",e["Alhudaydah"]="Al-Hudaydah",e["Abha"]="Abha",e["Mecca"]="Mecca",e["Jeddah"]="Jeddah"}(Tn||(Tn={}));var Kn,In,Un={name:"Middle East",cities:[{name:Tn.Mashhad,region:zn.Pink,x:859,y:327},{name:Tn.Corgan,region:zn.Pink,x:734,y:287},{name:Tn.Tehran,region:zn.Pink,x:633,y:342},{name:Tn.Tabriz,region:zn.Pink,x:450,y:251},{name:Tn.Mosul,region:zn.Pink,x:352,y:307},{name:Tn.Kermanshah,region:zn.Pink,x:503,y:391},{name:Tn.Baghdad,region:zn.Pink,x:393,y:406},{name:Tn.Isfahan,region:zn.Green,x:621,y:436},{name:Tn.Yazo,region:zn.Green,x:720,y:472},{name:Tn.Zahedan,region:zn.Green,x:896,y:547},{name:Tn.Kerman,region:zn.Green,x:784,y:534},{name:Tn.Shiraz,region:zn.Green,x:651,y:557},{name:Tn.Bandarabbas,region:zn.Green,x:756,y:629},{name:Tn.Chabahar,region:zn.Green,x:898,y:687},{name:Tn.Dubai,region:zn.Orange,x:752,y:690},{name:Tn.Muscat,region:zn.Orange,x:828,y:773},{name:Tn.Abudhari,region:zn.Orange,x:692,y:747},{name:Tn.Alain,region:zn.Orange,x:715,y:812},{name:Tn.Salalah,region:zn.Orange,x:694,y:981},{name:Tn.Doha,region:zn.Orange,x:596,y:713},{name:Tn.Manama,region:zn.Orange,x:532,y:652},{name:Tn.Ahvaz,region:zn.Yellow,x:555,y:499},{name:Tn.Basra,region:zn.Yellow,x:452,y:519},{name:Tn.Najaf,region:zn.Yellow,x:356,y:478},{name:Tn.Kuwaitcity,region:zn.Yellow,x:500,y:580},{name:Tn.Buraydah,region:zn.Yellow,x:360,y:674},{name:Tn.Riyadh,region:zn.Yellow,x:443,y:741},{name:Tn.Medina,region:zn.Yellow,x:264,y:738},{name:Tn.Alhasahah,region:zn.Red,x:248,y:300},{name:Tn.Aleppo,region:zn.Red,x:132,y:315},{name:Tn.Damascus,region:zn.Red,x:186,y:433},{name:Tn.Amman,region:zn.Red,x:171,y:493},{name:Tn.Beirut,region:zn.Red,x:94,y:401},{name:Tn.Jerusalem,region:zn.Red,x:76,y:481},{name:Tn.Aqaba,region:zn.Red,x:103,y:563},{name:Tn.Mukalla,region:zn.Brown,x:555,y:1059},{name:Tn.Sanaa,region:zn.Brown,x:426,y:1018},{name:Tn.Aden,region:zn.Brown,x:431,y:1105},{name:Tn.Alhudaydah,region:zn.Brown,x:317,y:1057},{name:Tn.Abha,region:zn.Brown,x:306,y:938},{name:Tn.Mecca,region:zn.Brown,x:280,y:850},{name:Tn.Jeddah,region:zn.Brown,x:190,y:800}],connections:[{nodes:[Tn.Tabriz,Tn.Tehran],cost:13},{nodes:[Tn.Tehran,Tn.Corgan],cost:9},{nodes:[Tn.Corgan,Tn.Mashhad],cost:12},{nodes:[Tn.Mashhad,Tn.Zahedan],cost:20},{nodes:[Tn.Zahedan,Tn.Kerman],cost:10},{nodes:[Tn.Kerman,Tn.Yazo],cost:7},{nodes:[Tn.Yazo,Tn.Mashhad],cost:18},{nodes:[Tn.Mashhad,Tn.Tehran],cost:19},{nodes:[Tn.Tehran,Tn.Yazo],cost:12},{nodes:[Tn.Yazo,Tn.Shiraz],cost:9},{nodes:[Tn.Shiraz,Tn.Kerman],cost:11},{nodes:[Tn.Yazo,Tn.Isfahan],cost:7},{nodes:[Tn.Isfahan,Tn.Shiraz],cost:10},{nodes:[Tn.Isfahan,Tn.Tehran],cost:9},{nodes:[Tn.Tehran,Tn.Kermanshah],cost:13},{nodes:[Tn.Kermanshah,Tn.Isfahan],cost:13},{nodes:[Tn.Isfahan,Tn.Ahvaz],cost:11},{nodes:[Tn.Ahvaz,Tn.Shiraz],cost:11},{nodes:[Tn.Ahvaz,Tn.Kermanshah],cost:11},{nodes:[Tn.Kermanshah,Tn.Tabriz],cost:13},{nodes:[Tn.Tabriz,Tn.Mosul],cost:13},{nodes:[Tn.Mosul,Tn.Baghdad],cost:8},{nodes:[Tn.Baghdad,Tn.Kermanshah],cost:8},{nodes:[Tn.Basra,Tn.Ahvaz],cost:3},{nodes:[Tn.Ahvaz,Tn.Kuwaitcity],cost:7},{nodes:[Tn.Kuwaitcity,Tn.Basra],cost:5},{nodes:[Tn.Basra,Tn.Najaf],cost:10},{nodes:[Tn.Najaf,Tn.Baghdad],cost:4},{nodes:[Tn.Baghdad,Tn.Basra],cost:12},{nodes:[Tn.Alhasahah,Tn.Mosul],cost:4},{nodes:[Tn.Alhasahah,Tn.Baghdad],cost:11},{nodes:[Tn.Baghdad,Tn.Damascus],cost:16},{nodes:[Tn.Damascus,Tn.Najaf],cost:15},{nodes:[Tn.Alhasahah,Tn.Damascus],cost:14},{nodes:[Tn.Damascus,Tn.Amman],cost:4},{nodes:[Tn.Amman,Tn.Aqaba],cost:7},{nodes:[Tn.Aqaba,Tn.Jerusalem],cost:6},{nodes:[Tn.Jerusalem,Tn.Amman],cost:3},{nodes:[Tn.Jerusalem,Tn.Beirut],cost:6},{nodes:[Tn.Beirut,Tn.Damascus],cost:4},{nodes:[Tn.Damascus,Tn.Aleppo],cost:8},{nodes:[Tn.Aleppo,Tn.Beirut],cost:9},{nodes:[Tn.Aleppo,Tn.Alhasahah],cost:7},{nodes:[Tn.Baghdad,Tn.Tabriz],cost:18},{nodes:[Tn.Zahedan,Tn.Chabahar],cost:13},{nodes:[Tn.Zahedan,Tn.Bandarabbas],cost:14},{nodes:[Tn.Bandarabbas,Tn.Kerman],cost:13},{nodes:[Tn.Shiraz,Tn.Bandarabbas],cost:14},{nodes:[Tn.Bandarabbas,Tn.Chabahar],cost:15},{nodes:[Tn.Kuwaitcity,Tn.Manama],cost:12},{nodes:[Tn.Manama,Tn.Doha],cost:6},{nodes:[Tn.Doha,Tn.Abudhari],cost:9},{nodes:[Tn.Abudhari,Tn.Dubai],cost:2},{nodes:[Tn.Dubai,Tn.Muscat],cost:9},{nodes:[Tn.Muscat,Tn.Alain],cost:7},{nodes:[Tn.Alain,Tn.Abudhari],cost:3},{nodes:[Tn.Alain,Tn.Dubai],cost:3},{nodes:[Tn.Riyadh,Tn.Alain],cost:23},{nodes:[Tn.Doha,Tn.Riyadh],cost:12},{nodes:[Tn.Riyadh,Tn.Manama],cost:10},{nodes:[Tn.Riyadh,Tn.Kuwaitcity],cost:12},{nodes:[Tn.Kuwaitcity,Tn.Buraydah],cost:12},{nodes:[Tn.Buraydah,Tn.Riyadh],cost:7},{nodes:[Tn.Buraydah,Tn.Medina],cost:10},{nodes:[Tn.Medina,Tn.Riyadh],cost:15},{nodes:[Tn.Buraydah,Tn.Najaf],cost:14},{nodes:[Tn.Aqaba,Tn.Jeddah],cost:23},{nodes:[Tn.Aqaba,Tn.Medina],cost:17},{nodes:[Tn.Medina,Tn.Jeddah],cost:7},{nodes:[Tn.Jeddah,Tn.Mecca],cost:1},{nodes:[Tn.Mecca,Tn.Medina],cost:7},{nodes:[Tn.Mecca,Tn.Riyadh],cost:17},{nodes:[Tn.Riyadh,Tn.Abha],cost:19},{nodes:[Tn.Abha,Tn.Mecca],cost:12},{nodes:[Tn.Salalah,Tn.Muscat],cost:21},{nodes:[Tn.Alain,Tn.Salalah],cost:18},{nodes:[Tn.Salalah,Tn.Mukalla],cost:15},{nodes:[Tn.Salalah,Tn.Sanaa],cost:25},{nodes:[Tn.Sanaa,Tn.Mukalla],cost:14},{nodes:[Tn.Mukalla,Tn.Aden],cost:13},{nodes:[Tn.Aden,Tn.Alhudaydah],cost:9},{nodes:[Tn.Alhudaydah,Tn.Abha],cost:10},{nodes:[Tn.Abha,Tn.Sanaa],cost:11},{nodes:[Tn.Sanaa,Tn.Alhudaydah],cost:5}],layout:"Portrait",mapPosition:[0,-100],resupply:[[[2,1,1],[2,1,1],[3,2,2],[4,3,2],[5,4,3]],[[5,3,2],[5,3,2],[6,3,2],[8,4,3],[9,5,4]],[[1,3,4],[1,3,4],[1,4,6],[1,4,8],[1,6,9]],[[0,2,2],[0,2,2],[0,3,3],[0,3,4],[0,4,5]]],startingResources:[21,21,3,3],startingSupply:[24,24,21,11],mapSpecificRules:"Only coal and oil can be bought for $1, and any number of oil can restock at $1.\nDuring step 1, garbage and uranium plants will be removed from the current market.\nStep 2 will be triggered after going through the deck once rather than by a specific number of cities.\nStep 3 will be triggered after going through the deck a second time."};(function(e){e["Pink"]="pink",e["Brown"]="brown",e["Orange"]="orange",e["Green"]="green",e["Blue"]="blue",e["Yellow"]="yellow",e["Red"]="red"})(Kn||(Kn={})),function(e){e["Edmonton"]="Edmonton",e["Calgary"]="Calgary",e["Vancouver"]="Vancouver",e["Seattle"]="Seattle",e["Regina"]="Regina",e["Winnipeg"]="Winnipeg",e["Minneapolis"]="Minneapolis",e["Portland"]="Portland",e["SanFrancisco"]="San Francisco",e["LosAngeles"]="Los Angeles",e["SanDiego"]="San Diego",e["SaltLakeCity"]="Salt Lake City",e["LasVegas"]="Las Vegas",e["Denver"]="Denver",e["Albuquerque"]="Albuquerque",e["Juarez"]="Juarez",e["Chihuahua"]="Chihuahua",e["Monterrey"]="Monterrey",e["Guadalajara"]="Guadalajara",e["MexicoCityN"]="Mexico City N",e["MexicoCityS"]="Mexico City S",e["SanAntonio"]="San Antonio",e["DallasFortWorth"]="Dallas-Fort Worth",e["Houston"]="Houston",e["NewOrleans"]="New Orleans",e["Atlanta"]="Atlanta",e["Jacksonville"]="Jacksonville",e["Miami"]="Miami",e["Milwaukee"]="Milwaukee",e["Chicago"]="Chicago",e["KansasCity"]="Kansas City",e["StLouis"]="St. Louis",e["Indianapolis"]="Indianapolis",e["OklahomaCity"]="Oklahoma City",e["Memphis"]="Memphis",e["Toronto"]="Toronto",e["Detroit"]="Detroit",e["Pittsburgh"]="Pittsburgh",e["Columbus"]="Columbus",e["Nashville"]="Nashville",e["Washington"]="Washington",e["Charlotte"]="Charlotte",e["Quebec"]="Quebec",e["Ottawa"]="Ottawa",e["Montreal"]="Montreal",e["NewYorkN"]="New York N",e["NewYorkS"]="New York S",e["Boston"]="Boston",e["Philadelphia"]="Philadelphia"}(In||(In={}));var Wn,Hn,Fn,Yn={name:"North America",cities:[{name:In.Edmonton,region:Kn.Pink,x:325,y:71},{name:In.Calgary,region:Kn.Pink,x:250,y:190},{name:In.Vancouver,region:Kn.Pink,x:114,y:266},{name:In.Seattle,region:Kn.Pink,x:100,y:387},{name:In.Regina,region:Kn.Pink,x:536,y:277},{name:In.Winnipeg,region:Kn.Pink,x:830,y:272},{name:In.Minneapolis,region:Kn.Pink,x:907,y:486},{name:In.Portland,region:Kn.Brown,x:122,y:516},{name:In.SanFrancisco,region:Kn.Brown,x:123,y:697},{name:In.LosAngeles,region:Kn.Brown,x:160,y:911},{name:In.SanDiego,region:Kn.Brown,x:223,y:1007},{name:In.SaltLakeCity,region:Kn.Brown,x:380,y:555},{name:In.LasVegas,region:Kn.Brown,x:322,y:760},{name:In.Denver,region:Kn.Brown,x:569,y:694},{name:In.Albuquerque,region:Kn.Orange,x:539,y:941},{name:In.Juarez,region:Kn.Orange,x:558,y:1043},{name:In.Chihuahua,region:Kn.Orange,x:577,y:1183},{name:In.Monterrey,region:Kn.Orange,x:791,y:1292},{name:In.Guadalajara,region:Kn.Orange,x:715,y:1391},{name:In.MexicoCityN,region:Kn.Orange,x:913,y:1335},{name:In.MexicoCityS,region:Kn.Orange,x:913,y:1425},{name:In.SanAntonio,region:Kn.Green,x:767,y:1172},{name:In.DallasFortWorth,region:Kn.Green,x:850,y:1020},{name:In.Houston,region:Kn.Green,x:940,y:1145},{name:In.NewOrleans,region:Kn.Green,x:1126,y:1095},{name:In.Atlanta,region:Kn.Green,x:1318,y:1021},{name:In.Jacksonville,region:Kn.Green,x:1398,y:1109},{name:In.Miami,region:Kn.Green,x:1398,y:1235},{name:In.Milwaukee,region:Kn.Blue,x:1206,y:414},{name:In.Chicago,region:Kn.Blue,x:1121,y:531},{name:In.KansasCity,region:Kn.Blue,x:825,y:720},{name:In.StLouis,region:Kn.Blue,x:1047,y:768},{name:In.Indianapolis,region:Kn.Blue,x:1206,y:694},{name:In.OklahomaCity,region:Kn.Blue,x:800,y:870},{name:In.Memphis,region:Kn.Blue,x:1099,y:938},{name:In.Toronto,region:Kn.Yellow,x:1488,y:513},{name:In.Detroit,region:Kn.Yellow,x:1390,y:590},{name:In.Pittsburgh,region:Kn.Yellow,x:1524,y:659},{name:In.Columbus,region:Kn.Yellow,x:1398,y:733},{name:In.Nashville,region:Kn.Yellow,x:1233,y:826},{name:In.Washington,region:Kn.Yellow,x:1554,y:829},{name:In.Charlotte,region:Kn.Yellow,x:1480,y:965},{name:In.Quebec,region:Kn.Red,x:1911,y:354},{name:In.Ottawa,region:Kn.Red,x:1653,y:458},{name:In.Montreal,region:Kn.Red,x:1875,y:461},{name:In.NewYorkN,region:Kn.Red,x:1727,y:561},{name:In.NewYorkS,region:Kn.Red,x:1727,y:637},{name:In.Boston,region:Kn.Red,x:1928,y:579},{name:In.Philadelphia,region:Kn.Red,x:1724,y:755}],connections:[{nodes:[In.Edmonton,In.Calgary],cost:5},{nodes:[In.Calgary,In.Vancouver],cost:16},{nodes:[In.Vancouver,In.Seattle],cost:4},{nodes:[In.Edmonton,In.Regina],cost:15},{nodes:[In.Calgary,In.Regina],cost:14},{nodes:[In.Vancouver,In.Regina],cost:28},{nodes:[In.Regina,In.Winnipeg],cost:11},{nodes:[In.Winnipeg,In.Minneapolis],cost:13},{nodes:[In.Seattle,In.Portland],cost:5},{nodes:[In.Regina,In.SaltLakeCity],cost:29},{nodes:[In.Regina,In.Denver],cost:24},{nodes:[In.Winnipeg,In.Denver],cost:26},{nodes:[In.Minneapolis,In.Denver],cost:23},{nodes:[In.Portland,In.SanFrancisco],cost:20},{nodes:[In.SanFrancisco,In.LosAngeles],cost:12},{nodes:[In.LosAngeles,In.SanDiego],cost:3},{nodes:[In.Portland,In.SaltLakeCity],cost:22},{nodes:[In.SanFrancisco,In.SaltLakeCity],cost:22},{nodes:[In.SanFrancisco,In.LasVegas],cost:16},{nodes:[In.SaltLakeCity,In.LasVegas],cost:14},{nodes:[In.LasVegas,In.LosAngeles],cost:8},{nodes:[In.SaltLakeCity,In.Denver],cost:14},{nodes:[In.LasVegas,In.Denver],cost:25},{nodes:[In.LosAngeles,In.Albuquerque],cost:25},{nodes:[In.LasVegas,In.Albuquerque],cost:18},{nodes:[In.Denver,In.Albuquerque],cost:12},{nodes:[In.SanDiego,In.Juarez],cost:22},{nodes:[In.Albuquerque,In.Juarez],cost:9},{nodes:[In.Juarez,In.Chihuahua],cost:8},{nodes:[In.Chihuahua,In.Monterrey],cost:14},{nodes:[In.Chihuahua,In.Guadalajara],cost:23},{nodes:[In.Monterrey,In.Guadalajara],cost:16},{nodes:[In.Monterrey,In.MexicoCityS],cost:17},{nodes:[In.Guadalajara,In.MexicoCityS],cost:10},{nodes:[In.MexicoCityN,In.MexicoCityS],cost:0},{nodes:[In.Albuquerque,In.OklahomaCity],cost:18},{nodes:[In.Juarez,In.DallasFortWorth],cost:19},{nodes:[In.Juarez,In.SanAntonio],cost:18},{nodes:[In.Chihuahua,In.SanAntonio],cost:16},{nodes:[In.Monterrey,In.SanAntonio],cost:10},{nodes:[In.Milwaukee,In.Chicago],cost:3},{nodes:[In.Chicago,In.KansasCity],cost:16},{nodes:[In.Chicago,In.StLouis],cost:9},{nodes:[In.Chicago,In.Indianapolis],cost:6},{nodes:[In.KansasCity,In.StLouis],cost:8},{nodes:[In.StLouis,In.Indianapolis],cost:8},{nodes:[In.KansasCity,In.OklahomaCity],cost:10},{nodes:[In.KansasCity,In.Memphis],cost:14},{nodes:[In.StLouis,In.Memphis],cost:9},{nodes:[In.OklahomaCity,In.Memphis],cost:15},{nodes:[In.Milwaukee,In.Minneapolis],cost:10},{nodes:[In.KansasCity,In.Minneapolis],cost:14},{nodes:[In.KansasCity,In.Denver],cost:19},{nodes:[In.OklahomaCity,In.Denver],cost:17},{nodes:[In.OklahomaCity,In.DallasFortWorth],cost:7},{nodes:[In.Memphis,In.DallasFortWorth],cost:15},{nodes:[In.Memphis,In.NewOrleans],cost:14},{nodes:[In.Memphis,In.Atlanta],cost:12},{nodes:[In.DallasFortWorth,In.SanAntonio],cost:9},{nodes:[In.DallasFortWorth,In.Houston],cost:8},{nodes:[In.DallasFortWorth,In.NewOrleans],cost:16},{nodes:[In.SanAntonio,In.Houston],cost:6},{nodes:[In.Houston,In.NewOrleans],cost:12},{nodes:[In.NewOrleans,In.Atlanta],cost:16},{nodes:[In.NewOrleans,In.Jacksonville],cost:20},{nodes:[In.Atlanta,In.Jacksonville],cost:10},{nodes:[In.Jacksonville,In.Miami],cost:12},{nodes:[In.Atlanta,In.Nashville],cost:9},{nodes:[In.Atlanta,In.Charlotte],cost:8},{nodes:[In.Jacksonville,In.Charlotte],cost:12},{nodes:[In.Toronto,In.Detroit],cost:8},{nodes:[In.Toronto,In.Pittsburgh],cost:11},{nodes:[In.Detroit,In.Columbus],cost:7},{nodes:[In.Columbus,In.Pittsburgh],cost:6},{nodes:[In.Nashville,In.Columbus],cost:15},{nodes:[In.Nashville,In.Washington],cost:22},{nodes:[In.Nashville,In.Charlotte],cost:12},{nodes:[In.Columbus,In.Washington],cost:12},{nodes:[In.Washington,In.Pittsburgh],cost:7},{nodes:[In.Washington,In.Charlotte],cost:12},{nodes:[In.Detroit,In.Chicago],cost:10},{nodes:[In.Columbus,In.Chicago],cost:10},{nodes:[In.Columbus,In.Indianapolis],cost:7},{nodes:[In.Nashville,In.Indianapolis],cost:9},{nodes:[In.Nashville,In.StLouis],cost:9},{nodes:[In.Nashville,In.Memphis],cost:7},{nodes:[In.Toronto,In.Ottawa],cost:8},{nodes:[In.Toronto,In.NewYorkS],cost:14},{nodes:[In.Pittsburgh,In.NewYorkS],cost:11},{nodes:[In.Pittsburgh,In.Philadelphia],cost:9},{nodes:[In.Washington,In.Philadelphia],cost:5},{nodes:[In.Quebec,In.Montreal],cost:5},{nodes:[In.Montreal,In.Boston],cost:9},{nodes:[In.Ottawa,In.Montreal],cost:3},{nodes:[In.Ottawa,In.NewYorkS],cost:13},{nodes:[In.Montreal,In.NewYorkS],cost:12},{nodes:[In.NewYorkS,In.Boston],cost:7},{nodes:[In.NewYorkS,In.Philadelphia],cost:3},{nodes:[In.NewYorkN,In.NewYorkS],cost:0}],layout:"Landscape",adjustRatio:[.5,.38],mapPosition:[70,50],mapRotation:-2,resupply:[[[2,5,2],[2,5,2],[3,6,3],[4,7,4],[5,8,5]],[[3,1,3],[3,1,3],[3,2,4],[4,2,5],[5,3,6]],[[2,2,4],[2,2,4],[3,3,5],[3,3,6],[4,4,7]],[[2,1,2],[2,1,2],[2,1,2],[3,2,3],[3,2,4]]],coalPrices:[1,1,1,1,2,2,2,2,3,3,3,3,4,4,5,5,6,6,7,7,8,8,9,9],oilPrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,9,9],garbagePrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8],uraniumPrices:[1,2,3,4,5,6,7,7,8,8,9,9],startingResources:[20,14,18,2],startingSupply:[24,24,24,12]};(function(e){e["Brown"]="brown",e["Yellow"]="yellow",e["Pink"]="pink",e["Purple"]="purple",e["Orange"]="orange",e["Red"]="red"})(Hn||(Hn={})),function(e){e["Oulu"]="Oulu",e["Kuopid"]="Kuopid",e["Tampere"]="Tampere",e["Helsinki"]="Helsinki",e["Espoo"]="Espoo",e["Pori"]="Pori",e["Turku"]="Turku",e["Uppsala"]="Uppsala",e["Stockholm"]="Stockholm",e["Vasteras"]="Vasteras",e["Drebro"]="Drebro",e["Sundsvall"]="Sundsvall",e["Lulea"]="Lulea",e["Ostersund"]="Ostersund",e["Tallinn"]="Tallinn",e["Tartu"]="Tartu",e["Daugavpils"]="Daugavpils",e["Vilnius"]="Vilnius",e["Kaunas"]="Kaunas",e["Rica"]="Rica",e["Klaipeda"]="Klaipeda",e["Karlstad"]="Karlstad",e["Linkopinc"]="Linkopinc",e["Jonkoping"]="Jonkoping",e["Visby"]="Visby",e["Kristianstad"]="Kristianstad",e["Malmo"]="Malmo",e["Goteborg"]="Goteborg",e["Aalborg"]="Aalborg",e["Aarhus"]="Aarhus",e["Kobenhavn"]="Kobenhavn",e["Nykobingfalster"]="Nykobing Falster",e["Ringkobing"]="Ringkobing",e["Esbjerg"]="Esbjerg",e["Odense"]="Odense",e["Tromso"]="Tromso",e["Bood"]="Bood",e["Trondheim"]="Trondheim",e["Oslo"]="Oslo",e["Arendal"]="Arendal",e["Bergen"]="Bergen",e["Stavanger"]="Stavanger"}(Fn||(Fn={}));var Vn,Jn,$n={name:"Northern Europe",cities:[{name:Fn.Oulu,region:Hn.Brown,x:514,y:376},{name:Fn.Kuopid,region:Hn.Brown,x:551,y:474},{name:Fn.Tampere,region:Hn.Brown,x:492,y:544},{name:Fn.Helsinki,region:Hn.Brown,x:530,y:602},{name:Fn.Espoo,region:Hn.Brown,x:457,y:603},{name:Fn.Pori,region:Hn.Brown,x:400,y:526},{name:Fn.Turku,region:Hn.Brown,x:409,y:593},{name:Fn.Uppsala,region:Hn.Yellow,x:350,y:585},{name:Fn.Stockholm,region:Hn.Yellow,x:380,y:660},{name:Fn.Vasteras,region:Hn.Yellow,x:295,y:576},{name:Fn.Drebro,region:Hn.Yellow,x:295,y:628},{name:Fn.Sundsvall,region:Hn.Yellow,x:332,y:506},{name:Fn.Lulea,region:Hn.Yellow,x:423,y:345},{name:Fn.Ostersund,region:Hn.Yellow,x:272,y:462},{name:Fn.Tallinn,region:Hn.Pink,x:475,y:656},{name:Fn.Tartu,region:Hn.Pink,x:544,y:689},{name:Fn.Daugavpils,region:Hn.Pink,x:547,y:771},{name:Fn.Vilnius,region:Hn.Pink,x:520,y:819},{name:Fn.Kaunas,region:Hn.Pink,x:458,y:811},{name:Fn.Rica,region:Hn.Pink,x:472,y:734},{name:Fn.Klaipeda,region:Hn.Pink,x:411,y:784},{name:Fn.Karlstad,region:Hn.Purple,x:246,y:629},{name:Fn.Linkopinc,region:Hn.Purple,x:309,y:676},{name:Fn.Jonkoping,region:Hn.Purple,x:285,y:712},{name:Fn.Visby,region:Hn.Purple,x:364,y:717},{name:Fn.Kristianstad,region:Hn.Purple,x:330,y:750},{name:Fn.Malmo,region:Hn.Purple,x:287,y:787},{name:Fn.Goteborg,region:Hn.Purple,x:231,y:700},{name:Fn.Aalborg,region:Hn.Orange,x:177,y:717},{name:Fn.Aarhus,region:Hn.Orange,x:195,y:758},{name:Fn.Kobenhavn,region:Hn.Orange,x:228,y:792},{name:Fn.Nykobingfalster,region:Hn.Orange,x:238,y:842},{name:Fn.Ringkobing,region:Hn.Orange,x:120,y:733},{name:Fn.Esbjerg,region:Hn.Orange,x:104,y:787},{name:Fn.Odense,region:Hn.Orange,x:148,y:824},{name:Fn.Tromso,region:Hn.Red,x:371,y:122},{name:Fn.Bood,region:Hn.Red,x:276,y:254},{name:Fn.Trondheim,region:Hn.Red,x:173,y:450},{name:Fn.Oslo,region:Hn.Red,x:176,y:606},{name:Fn.Arendal,region:Hn.Red,x:145,y:651},{name:Fn.Bergen,region:Hn.Red,x:68,y:586},{name:Fn.Stavanger,region:Hn.Red,x:72,y:647}],layout:"Portrait",adjustRatio:[1.5,1.2],mapPosition:[60,-40],mapRotation:20,viewBox:[1480,1326],supplyPosition:[675,1184],startingResources:[18,18,12,6],resupply:[[[2,4,3],[3,4,4],[4,5,5],[4,5,6],[6,8,5]],[[1,2,3],[2,2,3],[2,3,4],[3,4,5],[4,5,6]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,2,2],[1,2,2],[2,3,2],[2,4,3],[2,4,4]]],regionalPowerPlants:(Wn={},i(Wn,Hn.Orange,[{number:19,type:ve.Oil,cost:2,citiesPowered:4},{number:26,type:ve.Oil,cost:3,citiesPowered:5}]),i(Wn,Hn.Red,[{number:7,type:ve.Wind,cost:0,citiesPowered:1},{number:46,type:ve.Wind,cost:0,citiesPowered:6}]),i(Wn,Hn.Purple,[{number:10,type:ve.Uranium,cost:2,citiesPowered:3},{number:39,type:ve.Wind,cost:0,citiesPowered:5}]),i(Wn,Hn.Yellow,[{number:21,type:ve.Wind,cost:0,citiesPowered:2},{number:25,type:ve.Uranium,cost:1,citiesPowered:4}]),i(Wn,Hn.Brown,[{number:32,type:ve.Garbage,cost:2,citiesPowered:6},{number:44,type:ve.Uranium,cost:1,citiesPowered:7}]),i(Wn,Hn.Pink,[{number:18,type:ve.Oil,cost:1,citiesPowered:3},{number:22,type:ve.Wind,cost:0,citiesPowered:3}]),Wn),mapSpecificRules:"Nuclear plants may only be purchased by players with at least one city in Sweden, Finland, or the Baltic States. Players with cities only in Norway or Denmark may not bid on or buy nuclear plants. Resources start at: coal 3 Elektro, oil 3 Elektro, garbage 5 Elektro, uranium 7 Elektro.",connections:[{nodes:[Fn.Bood,Fn.Tromso],cost:17},{nodes:[Fn.Tromso,Fn.Oulu],cost:25},{nodes:[Fn.Oulu,Fn.Kuopid],cost:10},{nodes:[Fn.Lulea,Fn.Tromso],cost:19},{nodes:[Fn.Lulea,Fn.Oulu],cost:13},{nodes:[Fn.Oulu,Fn.Pori],cost:15},{nodes:[Fn.Oulu,Fn.Tampere],cost:14},{nodes:[Fn.Sundsvall,Fn.Lulea],cost:16},{nodes:[Fn.Lulea,Fn.Bood],cost:16},{nodes:[Fn.Bood,Fn.Ostersund],cost:18},{nodes:[Fn.Ostersund,Fn.Lulea],cost:17},{nodes:[Fn.Lulea,Fn.Pori],cost:22},{nodes:[Fn.Pori,Fn.Sundsvall],cost:17},{nodes:[Fn.Bood,Fn.Trondheim],cost:21},{nodes:[Fn.Trondheim,Fn.Bergen],cost:17},{nodes:[Fn.Trondheim,Fn.Oslo],cost:17},{nodes:[Fn.Oslo,Fn.Ostersund],cost:18},{nodes:[Fn.Ostersund,Fn.Karlstad],cost:16},{nodes:[Fn.Bergen,Fn.Oslo],cost:15},{nodes:[Fn.Oslo,Fn.Stavanger],cost:11},{nodes:[Fn.Stavanger,Fn.Arendal],cost:8},{nodes:[Fn.Arendal,Fn.Oslo],cost:7},{nodes:[Fn.Bergen,Fn.Stavanger],cost:9},{nodes:[Fn.Arendal,Fn.Ringkobing],cost:19},{nodes:[Fn.Ringkobing,Fn.Esbjerg],cost:4},{nodes:[Fn.Esbjerg,Fn.Odense],cost:5},{nodes:[Fn.Odense,Fn.Nykobingfalster],cost:8},{nodes:[Fn.Arendal,Fn.Aalborg],cost:16},{nodes:[Fn.Arendal,Fn.Goteborg],cost:19},{nodes:[Fn.Goteborg,Fn.Oslo],cost:11},{nodes:[Fn.Oslo,Fn.Karlstad],cost:7},{nodes:[Fn.Karlstad,Fn.Goteborg],cost:9},{nodes:[Fn.Karlstad,Fn.Jonkoping],cost:9},{nodes:[Fn.Karlstad,Fn.Linkopinc],cost:7},{nodes:[Fn.Tampere,Fn.Kuopid],cost:10},{nodes:[Fn.Tampere,Fn.Pori],cost:4},{nodes:[Fn.Tampere,Fn.Turku],cost:5},{nodes:[Fn.Tampere,Fn.Espoo],cost:5},{nodes:[Fn.Tampere,Fn.Helsinki],cost:6},{nodes:[Fn.Helsinki,Fn.Espoo],cost:2},{nodes:[Fn.Espoo,Fn.Tallinn],cost:7},{nodes:[Fn.Tallinn,Fn.Helsinki],cost:7},{nodes:[Fn.Visby,Fn.Kristianstad],cost:13},{nodes:[Fn.Visby,Fn.Klaipeda],cost:19},{nodes:[Fn.Visby,Fn.Rica],cost:20},{nodes:[Fn.Rica,Fn.Tallinn],cost:11},{nodes:[Fn.Tallinn,Fn.Tartu],cost:5},{nodes:[Fn.Tartu,Fn.Daugavpils],cost:9},{nodes:[Fn.Rica,Fn.Tartu],cost:7},{nodes:[Fn.Daugavpils,Fn.Kaunas],cost:7},{nodes:[Fn.Kaunas,Fn.Vilnius],cost:3},{nodes:[Fn.Kaunas,Fn.Klaipeda],cost:7},{nodes:[Fn.Klaipeda,Fn.Rica],cost:8},{nodes:[Fn.Rica,Fn.Kaunas],cost:8},{nodes:[Fn.Rica,Fn.Daugavpils],cost:7},{nodes:[Fn.Daugavpils,Fn.Vilnius],cost:5},{nodes:[Fn.Vasteras,Fn.Sundsvall],cost:10},{nodes:[Fn.Sundsvall,Fn.Ostersund],cost:7},{nodes:[Fn.Uppsala,Fn.Stockholm],cost:2},{nodes:[Fn.Uppsala,Fn.Turku],cost:15},{nodes:[Fn.Uppsala,Fn.Pori],cost:17},{nodes:[Fn.Uppsala,Fn.Sundsvall],cost:11},{nodes:[Fn.Vasteras,Fn.Drebro],cost:5},{nodes:[Fn.Drebro,Fn.Linkopinc],cost:3},{nodes:[Fn.Linkopinc,Fn.Stockholm],cost:7},{nodes:[Fn.Visby,Fn.Stockholm],cost:12},{nodes:[Fn.Visby,Fn.Linkopinc],cost:9},{nodes:[Fn.Jonkoping,Fn.Malmo],cost:10},{nodes:[Fn.Jonkoping,Fn.Kristianstad],cost:8},{nodes:[Fn.Kristianstad,Fn.Malmo],cost:3},{nodes:[Fn.Malmo,Fn.Kobenhavn],cost:3},{nodes:[Fn.Kobenhavn,Fn.Nykobingfalster],cost:6},{nodes:[Fn.Odense,Fn.Aarhus],cost:7},{nodes:[Fn.Aarhus,Fn.Aalborg],cost:3},{nodes:[Fn.Aalborg,Fn.Goteborg],cost:11},{nodes:[Fn.Kobenhavn,Fn.Goteborg],cost:18},{nodes:[Fn.Goteborg,Fn.Jonkoping],cost:4},{nodes:[Fn.Trondheim,Fn.Ostersund],cost:9},{nodes:[Fn.Vasteras,Fn.Stockholm],cost:4},{nodes:[Fn.Esbjerg,Fn.Aarhus],cost:5},{nodes:[Fn.Jonkoping,Fn.Linkopinc],cost:5},{nodes:[Fn.Kobenhavn,Fn.Jonkoping],cost:12},{nodes:[Fn.Karlstad,Fn.Drebro],cost:4},{nodes:[Fn.Vasteras,Fn.Uppsala],cost:2},{nodes:[Fn.Odense,Fn.Kobenhavn],cost:7},{nodes:[Fn.Kobenhavn,Fn.Aarhus],cost:10},{nodes:[Fn.Ringkobing,Fn.Aalborg],cost:5},{nodes:[Fn.Linkopinc,Fn.Kristianstad],cost:9},{nodes:[Fn.Drebro,Fn.Stockholm],cost:7},{nodes:[Fn.Espoo,Fn.Turku],cost:4},{nodes:[Fn.Pori,Fn.Turku],cost:4}]};(function(e){e["Green"]="green",e["Brown"]="brown",e["Pink"]="pink",e["Red"]="red",e["Yellow"]="yellow",e["Purple"]="purple"})(Vn||(Vn={})),function(e){e["Septiles"]="Sept-Iles",e["Portcartier"]="Port-Cartier",e["Baiecomeau"]="Baie-Comeau",e["Chicoutimi"]="Chicoutimi",e["Alma"]="Alma",e["Roberval"]="Roberval",e["Jonquiere"]="Jonquiere",e["Gaspe"]="Gaspe",e["Steannedesmonts"]="Ste-Anne-Des-Monts",e["Matane"]="Matane",e["Rimouski"]="Rimouski",e["Pointealacroix"]="Pointe-A-La-Croix",e["Riviereduloup"]="Riviere-Du-Loup",e["Montmagny"]="Montmagny",e["Stgeorges"]="St-Georges",e["Sherbrooke"]="Sherbrooke",e["Victoriaville"]="Victoriaville",e["Stsimeon"]="St-Simeon",e["Charlesbourg"]="Charlesbourg",e["Quebec"]="Quebec",e["Beauport"]="Beauport",e["Granby"]="Granby",e["Sthyacinthe"]="St-Hyacinthe",e["Brossard"]="Brossard",e["Valleyfield"]="Valleyfield",e["Vaudreuildorion"]="Vaudreuil-Dorion",e["Montreal"]="Montreal",e["Pointeclaire"]="Pointe-Claire",e["Shawinigan"]="Shawinigan",e["Troisrivieres"]="Trois-Rivieres",e["Drummondville"]="Drummond-Ville",e["Repentigny"]="Repentigny",e["Longueuil"]="Longueuil",e["Laval"]="Laval",e["Lachute"]="Lachute",e["Amos"]="Amos",e["Valdor"]="Val-Dor",e["Rouynnoranda"]="Rouyn-Noranda",e["Montlaurier"]="Mont-Laurier",e["Maniwaki"]="Maniwaki",e["Gatineau"]="Gatineau",e["Hull"]="Hull"}(Jn||(Jn={}));var qn,Zn,Xn={name:"Quebec",cities:[{name:Jn.Septiles,region:Vn.Green,x:3524,y:228},{name:Jn.Portcartier,region:Vn.Green,x:3328,y:370},{name:Jn.Baiecomeau,region:Vn.Green,x:3066,y:630},{name:Jn.Chicoutimi,region:Vn.Green,x:2392,y:898},{name:Jn.Alma,region:Vn.Green,x:2172,y:844},{name:Jn.Roberval,region:Vn.Green,x:1944,y:950},{name:Jn.Jonquiere,region:Vn.Green,x:2240,y:1052},{name:Jn.Gaspe,region:Vn.Brown,x:4014,y:808},{name:Jn.Steannedesmonts,region:Vn.Brown,x:3512,y:708},{name:Jn.Matane,region:Vn.Brown,x:3244,y:808},{name:Jn.Rimouski,region:Vn.Brown,x:2990,y:946},{name:Jn.Pointealacroix,region:Vn.Brown,x:3492,y:1094},{name:Jn.Riviereduloup,region:Vn.Brown,x:2780,y:1208},{name:Jn.Montmagny,region:Vn.Brown,x:2522,y:1534},{name:Jn.Stgeorges,region:Vn.Pink,x:2506,y:1836},{name:Jn.Sherbrooke,region:Vn.Pink,x:2242,y:2128},{name:Jn.Victoriaville,region:Vn.Pink,x:2178,y:1822},{name:Jn.Stsimeon,region:Vn.Pink,x:2576,y:1146},{name:Jn.Charlesbourg,region:Vn.Pink,x:2246,y:1434},{name:Jn.Quebec,region:Vn.Pink,x:2302,y:1536},{name:Jn.Beauport,region:Vn.Pink,x:2196,y:1524},{name:Jn.Granby,region:Vn.Red,x:1974,y:2160},{name:Jn.Sthyacinthe,region:Vn.Red,x:1796,y:2038},{name:Jn.Brossard,region:Vn.Red,x:1790,y:2296},{name:Jn.Valleyfield,region:Vn.Red,x:1576,y:2306},{name:Jn.Vaudreuildorion,region:Vn.Red,x:1414,y:2186},{name:Jn.Montreal,region:Vn.Red,x:1624,y:2052},{name:Jn.Pointeclaire,region:Vn.Red,x:1510,y:2060},{name:Jn.Shawinigan,region:Vn.Yellow,x:1864,y:1448},{name:Jn.Troisrivieres,region:Vn.Yellow,x:1918,y:1650},{name:Jn.Drummondville,region:Vn.Yellow,x:1984,y:1886},{name:Jn.Repentigny,region:Vn.Yellow,x:1696,y:1820},{name:Jn.Longueuil,region:Vn.Yellow,x:1598,y:1964},{name:Jn.Laval,region:Vn.Yellow,x:1512,y:1990},{name:Jn.Lachute,region:Vn.Yellow,x:1364,y:1944},{name:Jn.Amos,region:Vn.Purple,x:492,y:868},{name:Jn.Valdor,region:Vn.Purple,x:570,y:1098},{name:Jn.Rouynnoranda,region:Vn.Purple,x:236,y:1028},{name:Jn.Montlaurier,region:Vn.Purple,x:1180,y:1630},{name:Jn.Maniwaki,region:Vn.Purple,x:964,y:1760},{name:Jn.Gatineau,region:Vn.Purple,x:1076,y:2096},{name:Jn.Hull,region:Vn.Purple,x:862,y:2104}],connections:[{nodes:[Jn.Maniwaki,Jn.Montlaurier],cost:5},{nodes:[Jn.Maniwaki,Jn.Valdor],cost:24},{nodes:[Jn.Valdor,Jn.Amos],cost:8},{nodes:[Jn.Amos,Jn.Rouynnoranda],cost:9},{nodes:[Jn.Rouynnoranda,Jn.Valdor],cost:12},{nodes:[Jn.Hull,Jn.Maniwaki],cost:15},{nodes:[Jn.Hull,Jn.Gatineau],cost:0},{nodes:[Jn.Gatineau,Jn.Montlaurier],cost:16},{nodes:[Jn.Montlaurier,Jn.Lachute],cost:18},{nodes:[Jn.Shawinigan,Jn.Troisrivieres],cost:3},{nodes:[Jn.Troisrivieres,Jn.Drummondville],cost:9},{nodes:[Jn.Drummondville,Jn.Victoriaville],cost:6},{nodes:[Jn.Victoriaville,Jn.Stgeorges],cost:10},{nodes:[Jn.Stgeorges,Jn.Sherbrooke],cost:15},{nodes:[Jn.Sherbrooke,Jn.Granby],cost:8},{nodes:[Jn.Granby,Jn.Sthyacinthe],cost:4},{nodes:[Jn.Sthyacinthe,Jn.Drummondville],cost:6},{nodes:[Jn.Troisrivieres,Jn.Victoriaville],cost:9},{nodes:[Jn.Victoriaville,Jn.Sherbrooke],cost:9},{nodes:[Jn.Sherbrooke,Jn.Drummondville],cost:9},{nodes:[Jn.Sthyacinthe,Jn.Repentigny],cost:7},{nodes:[Jn.Sthyacinthe,Jn.Brossard],cost:5},{nodes:[Jn.Brossard,Jn.Valleyfield],cost:8},{nodes:[Jn.Valleyfield,Jn.Vaudreuildorion],cost:4},{nodes:[Jn.Gatineau,Jn.Lachute],cost:14},{nodes:[Jn.Montlaurier,Jn.Shawinigan],cost:28},{nodes:[Jn.Shawinigan,Jn.Beauport],cost:14},{nodes:[Jn.Beauport,Jn.Troisrivieres],cost:15},{nodes:[Jn.Troisrivieres,Jn.Repentigny],cost:13},{nodes:[Jn.Repentigny,Jn.Longueuil],cost:3},{nodes:[Jn.Laval,Jn.Lachute],cost:6},{nodes:[Jn.Vaudreuildorion,Jn.Pointeclaire],cost:3},{nodes:[Jn.Montreal,Jn.Brossard],cost:4},{nodes:[Jn.Laval,Jn.Longueuil],cost:0},{nodes:[Jn.Pointeclaire,Jn.Montreal],cost:0},{nodes:[Jn.Montreal,Jn.Longueuil],cost:0},{nodes:[Jn.Pointeclaire,Jn.Laval],cost:0},{nodes:[Jn.Beauport,Jn.Charlesbourg],cost:0},{nodes:[Jn.Charlesbourg,Jn.Quebec],cost:0},{nodes:[Jn.Quebec,Jn.Beauport],cost:0},{nodes:[Jn.Victoriaville,Jn.Beauport],cost:12},{nodes:[Jn.Quebec,Jn.Stgeorges],cost:12},{nodes:[Jn.Stgeorges,Jn.Montmagny],cost:12},{nodes:[Jn.Montmagny,Jn.Riviereduloup],cost:16},{nodes:[Jn.Jonquiere,Jn.Charlesbourg],cost:21},{nodes:[Jn.Montmagny,Jn.Quebec],cost:5},{nodes:[Jn.Stsimeon,Jn.Charlesbourg],cost:18},{nodes:[Jn.Drummondville,Jn.Granby],cost:4},{nodes:[Jn.Roberval,Jn.Shawinigan],cost:25},{nodes:[Jn.Jonquiere,Jn.Stsimeon],cost:16},{nodes:[Jn.Roberval,Jn.Jonquiere],cost:10},{nodes:[Jn.Jonquiere,Jn.Alma],cost:4},{nodes:[Jn.Alma,Jn.Chicoutimi],cost:4},{nodes:[Jn.Jonquiere,Jn.Chicoutimi],cost:0},{nodes:[Jn.Chicoutimi,Jn.Baiecomeau],cost:23},{nodes:[Jn.Stsimeon,Jn.Baiecomeau],cost:23},{nodes:[Jn.Baiecomeau,Jn.Portcartier],cost:16},{nodes:[Jn.Septiles,Jn.Portcartier],cost:6},{nodes:[Jn.Riviereduloup,Jn.Rimouski],cost:12},{nodes:[Jn.Rimouski,Jn.Matane],cost:11},{nodes:[Jn.Matane,Jn.Pointealacroix],cost:15},{nodes:[Jn.Matane,Jn.Steannedesmonts],cost:10},{nodes:[Jn.Pointealacroix,Jn.Steannedesmonts],cost:16},{nodes:[Jn.Steannedesmonts,Jn.Gaspe],cost:21},{nodes:[Jn.Gaspe,Jn.Pointealacroix],cost:25}],layout:"Portrait",adjustRatio:[.25,.35],mapPosition:[-20,75],resupply:[[[3,3,3],[4,4,3],[5,4,4],[5,5,5],[7,6,6]],[[2,2,3],[2,3,3],[3,4,4],[4,5,4],[5,6,5]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[21,21,6,2],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if("original"==n){var i=a.filter((function(e){return[13,18,22].includes(e.number)})),s=a.filter((function(e){return(e.type==ve.Wind||e.type==ve.Nuclear)&&![13,18,22].includes(e.number)})),c=a.filter((function(e){return e.type!=ve.Wind&&e.type!=ve.Nuclear}));a=c.slice(8),r=[qt(3),qt(4),qt(5),qt(6)],o=[qt(7),qt(8),qt(9),qt(10)];var u=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a=a.concat(s),a=De(a,t()+""),a=i.concat(a),a.push(u)}else{var l=a.pop(),d=a.filter((function(e){return e.number>=3&&e.number<=10})),f=a.filter((function(e){return 13==e.number})),p=a.filter((function(e){return 18==e.number||22==e.number})),h=a.filter((function(e){return![13,18,22].includes(e.number)&&(e.type==ve.Wind||e.type==ve.Nuclear)})),g=a.filter((function(e){return e.type!=ve.Wind&&e.number>=11&&e.number<=15})),y=a.filter((function(e){return e.type!=ve.Wind&&e.type!=ve.Nuclear&&e.number>=16}));2==e?(g=De(g,t()+"").slice(1),y=De(y,t()+"").slice(5)):3==e?(g=De(g,t()+"").slice(2),y=De(y,t()+"").slice(6)):4==e&&(g=De(g,t()+"").slice(1),y=De(y,t()+"").slice(3));var m=De(d.concat(f).concat(g),t()+""),v=m.splice(0,8);v=v.sort((function(e,n){return e.number-n.number})),r=v.splice(0,4),o=v;var b=m.splice(0,1);a=m.concat(h).concat(y),a=De(a,t()+""),a=b.concat(p).concat(a).concat([l])}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Put power plants 13, 18, 22 on top of the deck. Ecological power plants will never be put on the bottom of the deck."};(function(e){e["Green"]="green",e["Pink"]="pink",e["Red"]="red",e["Yellow"]="yellow",e["Purple"]="purple",e["Brown"]="brown"})(qn||(qn={})),function(e){e["Murmansk"]="Murmansk",e["Arkhangelsk"]="Arkhangelsk",e["Syktyvkar"]="Syktyvkar",e["Kirov"]="Kirov",e["Kazan"]="Kazan",e["Cheboksary"]="Cheboksary",e["Ulyanovsk"]="Ulyanovsk",e["Tula"]="Tula",e["Kaliningrad"]="Kaliningrad",e["Ryazan"]="Ryazan",e["Nizhnynovgorod"]="Nizhny Novgorod",e["Moscow"]="Moscow",e["Stpetersburg"]="St Petersburg",e["Yaroslavl"]="Yaroslavl",e["Chita"]="Chita",e["Bratsk"]="Bratsk",e["Krasnoyarsk"]="Krasnoyarsk",e["Kemerovd"]="Kemerovd",e["Novokuznetsk"]="Novokuznetsk",e["Irkutsk"]="Irkutsk",e["Ulanude"]="Ulan Ude",e["Norilsk"]="Norilsk",e["Surgut"]="Surgut",e["Tyumen"]="Tyumen",e["Tomsk"]="Tomsk",e["Novosibirsk"]="Novosibirsk",e["Barnaul"]="Barnaul",e["Omsk"]="Omsk",e["Chelyabinsk"]="Chelyabinsk",e["Ufa"]="Ufa",e["Perm"]="Perm",e["Yekaterinburg"]="Yekaterinburg",e["Orenburg"]="Orenburg",e["Naberezhnyechelny"]="Naberezhnye Chelny",e["Samara"]="Samara",e["Astrakhan"]="Astrakhan",e["Makhachkala"]="Makhachkala",e["Saratov"]="Saratov",e["Volgograd"]="Volgograd",e["Krasnodar"]="Krasnodar",e["Rostov"]="Rostov",e["Voronezh"]="Voronezh"}(Zn||(Zn={}));var Qn,et,nt={name:"Russia",cities:[{name:Zn.Murmansk,region:qn.Green,x:1574,y:351},{name:Zn.Arkhangelsk,region:qn.Green,x:1456,y:695},{name:Zn.Syktyvkar,region:qn.Green,x:1669,y:1005},{name:Zn.Kirov,region:qn.Green,x:1457,y:1172},{name:Zn.Kazan,region:qn.Green,x:1378,y:1478},{name:Zn.Cheboksary,region:qn.Green,x:1200,y:1328},{name:Zn.Ulyanovsk,region:qn.Green,x:884,y:1448},{name:Zn.Tula,region:qn.Pink,x:485,y:1077},{name:Zn.Kaliningrad,region:qn.Pink,x:394,y:606},{name:Zn.Ryazan,region:qn.Pink,x:793,y:1193},{name:Zn.Nizhnynovgorod,region:qn.Pink,x:1129,y:1116},{name:Zn.Moscow,region:qn.Pink,x:763,y:961},{name:Zn.Stpetersburg,region:qn.Pink,x:883,y:597},{name:Zn.Yaroslavl,region:qn.Pink,x:1018,y:915},{name:Zn.Chita,region:qn.Red,x:4168,y:2048},{name:Zn.Bratsk,region:qn.Red,x:3599,y:1808},{name:Zn.Krasnoyarsk,region:qn.Red,x:3230,y:1930},{name:Zn.Kemerovd,region:qn.Red,x:2953,y:1987},{name:Zn.Novokuznetsk,region:qn.Red,x:3041,y:2159},{name:Zn.Irkutsk,region:qn.Red,x:3721,y:2162},{name:Zn.Ulanude,region:qn.Red,x:4030,y:2228},{name:Zn.Norilsk,region:qn.Yellow,x:3001,y:856},{name:Zn.Surgut,region:qn.Yellow,x:2348,y:1411},{name:Zn.Tyumen,region:qn.Yellow,x:2060,y:1627},{name:Zn.Tomsk,region:qn.Yellow,x:2773,y:1835},{name:Zn.Novosibirsk,region:qn.Yellow,x:2647,y:2005},{name:Zn.Barnaul,region:qn.Yellow,x:2662,y:2191},{name:Zn.Omsk,region:qn.Yellow,x:2195,y:1957},{name:Zn.Chelyabinsk,region:qn.Purple,x:1768,y:1865},{name:Zn.Ufa,region:qn.Purple,x:1472,y:1907},{name:Zn.Perm,region:qn.Purple,x:1688,y:1388},{name:Zn.Yekaterinburg,region:qn.Purple,x:1757,y:1620},{name:Zn.Orenburg,region:qn.Purple,x:1250,y:1997},{name:Zn.Naberezhnyechelny,region:qn.Purple,x:1427,y:1709},{name:Zn.Samara,region:qn.Purple,x:1132,y:1701},{name:Zn.Astrakhan,region:qn.Brown,x:619,y:2092},{name:Zn.Makhachkala,region:qn.Brown,x:317,y:2262},{name:Zn.Saratov,region:qn.Brown,x:808,y:1661},{name:Zn.Volgograd,region:qn.Brown,x:589,y:1795},{name:Zn.Krasnodar,region:qn.Brown,x:260,y:1865},{name:Zn.Rostov,region:qn.Brown,x:311,y:1658},{name:Zn.Voronezh,region:qn.Brown,x:485,y:1409}],connections:[{nodes:[Zn.Kaliningrad,Zn.Stpetersburg],cost:15},{nodes:[Zn.Stpetersburg,Zn.Murmansk],cost:19},{nodes:[Zn.Murmansk,Zn.Arkhangelsk],cost:15},{nodes:[Zn.Arkhangelsk,Zn.Stpetersburg],cost:14},{nodes:[Zn.Tula,Zn.Kaliningrad],cost:20},{nodes:[Zn.Tula,Zn.Moscow],cost:3},{nodes:[Zn.Moscow,Zn.Ryazan],cost:3},{nodes:[Zn.Ryazan,Zn.Voronezh],cost:5},{nodes:[Zn.Voronezh,Zn.Tula],cost:5},{nodes:[Zn.Tula,Zn.Stpetersburg],cost:13},{nodes:[Zn.Tula,Zn.Ryazan],cost:0},{nodes:[Zn.Stpetersburg,Zn.Moscow],cost:10},{nodes:[Zn.Moscow,Zn.Yaroslavl],cost:3},{nodes:[Zn.Yaroslavl,Zn.Nizhnynovgorod],cost:4},{nodes:[Zn.Nizhnynovgorod,Zn.Moscow],cost:7},{nodes:[Zn.Yaroslavl,Zn.Stpetersburg],cost:9},{nodes:[Zn.Yaroslavl,Zn.Arkhangelsk],cost:12},{nodes:[Zn.Arkhangelsk,Zn.Syktyvkar],cost:10},{nodes:[Zn.Syktyvkar,Zn.Surgut],cost:21},{nodes:[Zn.Perm,Zn.Syktyvkar],cost:8},{nodes:[Zn.Syktyvkar,Zn.Kirov],cost:6},{nodes:[Zn.Syktyvkar,Zn.Nizhnynovgorod],cost:11},{nodes:[Zn.Nizhnynovgorod,Zn.Arkhangelsk],cost:15},{nodes:[Zn.Nizhnynovgorod,Zn.Cheboksary],cost:3},{nodes:[Zn.Cheboksary,Zn.Ulyanovsk],cost:4},{nodes:[Zn.Ulyanovsk,Zn.Voronezh],cost:11},{nodes:[Zn.Voronezh,Zn.Volgograd],cost:8},{nodes:[Zn.Volgograd,Zn.Saratov],cost:6},{nodes:[Zn.Saratov,Zn.Samara],cost:5},{nodes:[Zn.Samara,Zn.Ulyanovsk],cost:3},{nodes:[Zn.Ulyanovsk,Zn.Kazan],cost:3},{nodes:[Zn.Kazan,Zn.Samara],cost:4},{nodes:[Zn.Samara,Zn.Naberezhnyechelny],cost:5},{nodes:[Zn.Cheboksary,Zn.Kazan],cost:2},{nodes:[Zn.Cheboksary,Zn.Kirov],cost:5},{nodes:[Zn.Kirov,Zn.Kazan],cost:5},{nodes:[Zn.Kazan,Zn.Perm],cost:8},{nodes:[Zn.Kazan,Zn.Naberezhnyechelny],cost:3},{nodes:[Zn.Naberezhnyechelny,Zn.Ufa],cost:4},{nodes:[Zn.Ufa,Zn.Orenburg],cost:6},{nodes:[Zn.Orenburg,Zn.Samara],cost:6},{nodes:[Zn.Orenburg,Zn.Naberezhnyechelny],cost:7},{nodes:[Zn.Ufa,Zn.Chelyabinsk],cost:8},{nodes:[Zn.Chelyabinsk,Zn.Yekaterinburg],cost:3},{nodes:[Zn.Yekaterinburg,Zn.Perm],cost:5},{nodes:[Zn.Perm,Zn.Kirov],cost:6},{nodes:[Zn.Chelyabinsk,Zn.Tyumen],cost:5},{nodes:[Zn.Tyumen,Zn.Surgut],cost:10},{nodes:[Zn.Syktyvkar,Zn.Tyumen],cost:17},{nodes:[Zn.Tyumen,Zn.Yekaterinburg],cost:5},{nodes:[Zn.Chelyabinsk,Zn.Omsk],cost:13},{nodes:[Zn.Omsk,Zn.Tyumen],cost:9},{nodes:[Zn.Tyumen,Zn.Tomsk],cost:19},{nodes:[Zn.Tomsk,Zn.Surgut],cost:15},{nodes:[Zn.Tomsk,Zn.Novosibirsk],cost:4},{nodes:[Zn.Novosibirsk,Zn.Barnaul],cost:4},{nodes:[Zn.Barnaul,Zn.Omsk],cost:11},{nodes:[Zn.Omsk,Zn.Novosibirsk],cost:10},{nodes:[Zn.Omsk,Zn.Tomsk],cost:12},{nodes:[Zn.Rostov,Zn.Krasnodar],cost:4},{nodes:[Zn.Krasnodar,Zn.Volgograd],cost:9},{nodes:[Zn.Volgograd,Zn.Astrakhan],cost:6},{nodes:[Zn.Krasnodar,Zn.Makhachkala],cost:14},{nodes:[Zn.Makhachkala,Zn.Astrakhan],cost:8},{nodes:[Zn.Makhachkala,Zn.Volgograd],cost:11},{nodes:[Zn.Rostov,Zn.Volgograd],cost:7},{nodes:[Zn.Ryazan,Zn.Ulyanovsk],cost:9},{nodes:[Zn.Ulyanovsk,Zn.Saratov],cost:6},{nodes:[Zn.Saratov,Zn.Voronezh],cost:8},{nodes:[Zn.Rostov,Zn.Voronezh],cost:9},{nodes:[Zn.Naberezhnyechelny,Zn.Perm],cost:6},{nodes:[Zn.Naberezhnyechelny,Zn.Yekaterinburg],cost:8},{nodes:[Zn.Ufa,Zn.Yekaterinburg],cost:6},{nodes:[Zn.Chita,Zn.Ulanude],cost:6},{nodes:[Zn.Ulanude,Zn.Irkutsk],cost:6},{nodes:[Zn.Irkutsk,Zn.Novokuznetsk],cost:21},{nodes:[Zn.Novokuznetsk,Zn.Kemerovd],cost:3},{nodes:[Zn.Kemerovd,Zn.Tomsk],cost:3},{nodes:[Zn.Novosibirsk,Zn.Novokuznetsk],cost:5},{nodes:[Zn.Novosibirsk,Zn.Kemerovd],cost:4},{nodes:[Zn.Novokuznetsk,Zn.Barnaul],cost:6},{nodes:[Zn.Kemerovd,Zn.Krasnoyarsk],cost:7},{nodes:[Zn.Krasnoyarsk,Zn.Novokuznetsk],cost:7},{nodes:[Zn.Krasnoyarsk,Zn.Irkutsk],cost:17},{nodes:[Zn.Krasnoyarsk,Zn.Bratsk],cost:10},{nodes:[Zn.Bratsk,Zn.Tomsk],cost:17},{nodes:[Zn.Bratsk,Zn.Irkutsk],cost:10},{nodes:[Zn.Bratsk,Zn.Ulanude],cost:14},{nodes:[Zn.Tomsk,Zn.Norilsk],cost:24},{nodes:[Zn.Norilsk,Zn.Bratsk],cost:29},{nodes:[Zn.Norilsk,Zn.Surgut],cost:19}],adjustRatio:[.25,.25],resupply:[[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[3,4,3],[3,4,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,3],[2,2,3],[3,3,4],[4,3,5],[4,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[18,24,0,7],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ve),o=[],a=[],i=r.pop();if("original"==n){o=r.filter((function(e){return e.number>=3&&e.number<=5})),a=r.filter((function(e){return e.number>=7&&e.number<=9}));var s=qt(10),c=qt(11),u=qt(13),l=r.filter((function(e){return 12==e.number||e.number>=15})),d=De(l,t()+"");2==e||3==e?d=d.slice(8):4==e&&(d=d.slice(4));var f=d.slice(0,3).concat(s,c);f=De(f,t()+""),r=[u].concat(f,d.slice(3),i)}else{var p=r.filter((function(e){return e.number<=15&&6!=e.number&&14!=e.number})),h=De(p,t()+""),g=r.filter((function(e){return e.number>=16})),y=De(g,t()+"");2==e?y=y.slice(6):3==e?y=y.slice(8):4==e&&(y=y.slice(4));var m=h.slice(0,6),v=h.slice(6);m=m.sort((function(e,n){return e.number-n.number})),o=m.slice(0,3),a=m.slice(3),r=v.concat(y,i)}return{actualMarket:o,futureMarket:a,powerPlantsDeck:r}},mapSpecificRules:"The power plant market is restricted, and the rules for removing old plants are changed."};(function(e){e["Orange"]="orange",e["Green"]="green",e["Yellow"]="yellow",e["Brown"]="brown",e["Red"]="red"})(Qn||(Qn={})),function(e){e["Zimbabwe"]="Zimbabwe",e["Musina"]="Musina",e["Botswana"]="Botswana",e["Polokwane"]="Polokwane",e["PretoriaN"]="Pretoria N",e["PretoriaS"]="Pretoria S",e["Rustenburg"]="Rustenburg",e["Mozambique"]="Mozambique",e["Mbombela"]="Mbombela",e["Eswatini"]="Eswatini",e["Germiston"]="Germiston",e["JohannesburgN"]="Johannesburg N",e["JohannesburgS"]="Johannesburg S",e["Ladysmith"]="Ladysmith",e["Newcastle"]="Newcastle",e["Pietermaritzburg"]="Pietermaritzburg",e["DurbanN"]="Durban N",e["DurbanS"]="Durban S",e["Mthatha"]="Mthatha",e["Lesotho"]="Lesotho",e["Bloemfontein"]="Bloemfontein",e["Klerksdorp"]="Klerksdorp",e["Welkom"]="Welkom",e["Kuruman"]="Kuruman",e["Kimberly"]="Kimberly",e["Upington"]="Upington",e["Springbok"]="Springbok",e["Namibia"]="Namibia",e["DeAar"]="De Aar",e["BeaufortWest"]="Beaufort West",e["EastLondon"]="East London",e["PortElizabeth"]="Port Elizabeth",e["George"]="George",e["CapeTownN"]="Cape Town N",e["CapeTownS"]="Cape Town S"}(et||(et={}));var tt,rt,ot={name:"South Africa",cities:[{name:et.Zimbabwe,region:Qn.Orange,x:903,y:50,singleOccupancy:!0},{name:et.Musina,region:Qn.Orange,x:874,y:134},{name:et.Botswana,region:Qn.Orange,x:560,y:187,singleOccupancy:!0},{name:et.Polokwane,region:Qn.Orange,x:802,y:189},{name:et.PretoriaN,region:Qn.Orange,x:759,y:261},{name:et.PretoriaS,region:Qn.Orange,x:759,y:291},{name:et.Rustenburg,region:Qn.Orange,x:632,y:232},{name:et.Mozambique,region:Qn.Green,x:1011,y:170,singleOccupancy:!0},{name:et.Mbombela,region:Qn.Green,x:891,y:275},{name:et.Eswatini,region:Qn.Green,x:926,y:351,singleOccupancy:!0},{name:et.Germiston,region:Qn.Green,x:836,y:351},{name:et.JohannesburgN,region:Qn.Green,x:753,y:343},{name:et.JohannesburgS,region:Qn.Green,x:754,y:371},{name:et.Ladysmith,region:Qn.Green,x:823,y:456},{name:et.Newcastle,region:Qn.Yellow,x:957,y:478},{name:et.Pietermaritzburg,region:Qn.Yellow,x:851,y:511},{name:et.DurbanN,region:Qn.Yellow,x:894,y:563},{name:et.DurbanS,region:Qn.Yellow,x:893,y:592},{name:et.Mthatha,region:Qn.Yellow,x:791,y:663},{name:et.Lesotho,region:Qn.Yellow,x:759,y:523,singleOccupancy:!0},{name:et.Bloemfontein,region:Qn.Yellow,x:656,y:509},{name:et.Klerksdorp,region:Qn.Brown,x:660,y:362},{name:et.Welkom,region:Qn.Brown,x:652,y:431},{name:et.Kuruman,region:Qn.Brown,x:499,y:386},{name:et.Kimberly,region:Qn.Brown,x:564,y:496},{name:et.Upington,region:Qn.Brown,x:378,y:453},{name:et.Springbok,region:Qn.Brown,x:211,y:530},{name:et.Namibia,region:Qn.Brown,x:189,y:311,singleOccupancy:!0},{name:et.DeAar,region:Qn.Red,x:539,y:665},{name:et.BeaufortWest,region:Qn.Red,x:427,y:705},{name:et.EastLondon,region:Qn.Red,x:722,y:750},{name:et.PortElizabeth,region:Qn.Red,x:600,y:811},{name:et.George,region:Qn.Red,x:439,y:811},{name:et.CapeTownN,region:Qn.Red,x:233,y:783},{name:et.CapeTownS,region:Qn.Red,x:231,y:812}],connections:[{nodes:[et.Springbok,et.Namibia],cost:30},{nodes:[et.Bloemfontein,et.Lesotho],cost:30},{nodes:[et.Germiston,et.Eswatini],cost:30},{nodes:[et.Mbombela,et.Mozambique],cost:30},{nodes:[et.Botswana,et.Rustenburg],cost:30},{nodes:[et.Zimbabwe,et.Musina],cost:30},{nodes:[et.CapeTownS,et.CapeTownN],cost:0},{nodes:[et.CapeTownS,et.George],cost:16},{nodes:[et.George,et.PortElizabeth],cost:12},{nodes:[et.PortElizabeth,et.EastLondon],cost:13},{nodes:[et.EastLondon,et.Mthatha],cost:8},{nodes:[et.Mthatha,et.DurbanS],cost:13},{nodes:[et.DurbanS,et.DurbanN],cost:0},{nodes:[et.DurbanN,et.Pietermaritzburg],cost:3},{nodes:[et.DurbanN,et.Newcastle],cost:9},{nodes:[et.Newcastle,et.Pietermaritzburg],cost:9},{nodes:[et.Pietermaritzburg,et.Ladysmith],cost:5},{nodes:[et.Ladysmith,et.Newcastle],cost:10},{nodes:[et.Bloemfontein,et.Mthatha],cost:18},{nodes:[et.Bloemfontein,et.EastLondon],cost:22},{nodes:[et.EastLondon,et.DeAar],cost:22},{nodes:[et.DeAar,et.PortElizabeth],cost:18},{nodes:[et.George,et.DeAar],cost:17},{nodes:[et.DeAar,et.BeaufortWest],cost:10},{nodes:[et.BeaufortWest,et.George],cost:8},{nodes:[et.BeaufortWest,et.CapeTownN],cost:22},{nodes:[et.CapeTownN,et.Springbok],cost:22},{nodes:[et.Springbok,et.BeaufortWest],cost:24},{nodes:[et.DeAar,et.Springbok],cost:26},{nodes:[et.Springbok,et.Upington],cost:16},{nodes:[et.Upington,et.DeAar],cost:16},{nodes:[et.DeAar,et.Bloemfontein],cost:13},{nodes:[et.Bloemfontein,et.Kimberly],cost:6},{nodes:[et.Kimberly,et.DeAar],cost:10},{nodes:[et.Kimberly,et.Upington],cost:14},{nodes:[et.Kimberly,et.Welkom],cost:9},{nodes:[et.Welkom,et.Bloemfontein],cost:6},{nodes:[et.Bloemfontein,et.Ladysmith],cost:19},{nodes:[et.Mthatha,et.Pietermaritzburg],cost:12},{nodes:[et.Upington,et.Kuruman],cost:11},{nodes:[et.Musina,et.Polokwane],cost:8},{nodes:[et.Polokwane,et.PretoriaN],cost:11},{nodes:[et.PretoriaN,et.PretoriaS],cost:0},{nodes:[et.PretoriaS,et.JohannesburgN],cost:2},{nodes:[et.JohannesburgN,et.JohannesburgS],cost:0},{nodes:[et.JohannesburgS,et.Germiston],cost:1},{nodes:[et.JohannesburgN,et.Mbombela],cost:13},{nodes:[et.Mbombela,et.Germiston],cost:13},{nodes:[et.PretoriaN,et.Mbombela],cost:13},{nodes:[et.Mbombela,et.Polokwane],cost:10},{nodes:[et.Musina,et.Mbombela],cost:15},{nodes:[et.PretoriaN,et.Rustenburg],cost:4},{nodes:[et.Rustenburg,et.JohannesburgN],cost:4},{nodes:[et.JohannesburgN,et.Klerksdorp],cost:7},{nodes:[et.Klerksdorp,et.Welkom],cost:5},{nodes:[et.Bloemfontein,et.JohannesburgS],cost:16},{nodes:[et.Kuruman,et.Rustenburg],cost:18},{nodes:[et.Klerksdorp,et.Kuruman],cost:12},{nodes:[et.Kuruman,et.Kimberly],cost:8},{nodes:[et.JohannesburgS,et.Ladysmith],cost:13},{nodes:[et.Ladysmith,et.Germiston],cost:13}],resupply:[[[4,7,5],[4,7,5],[5,8,6],[6,9,7],[7,10,8]],[[1,2,1],[1,2,1],[2,3,2],[2,4,3],[4,5,4]],[[1,3,3],[1,3,3],[2,4,4],[3,4,5],[3,6,6]],[[1,1,2],[1,1,2],[2,2,3],[2,3,3],[2,3,4]]],layout:"Landscape",adjustRatio:[.9,.75],mapPosition:[70,50],mapRotation:0,startingResources:[24,15,12,3],startingSupply:[24,24,24,12],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve).filter((function(e){return 7!==e.number}));if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[qt(3),qt(4),qt(5),qt(6)],o=[qt(8),qt(9),qt(10),qt(11)]}else{var u=De(a.splice(0,12),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Coal storage: there is a separate storage space below the resource market, empty at game start. Coal used to power plants returns to this storage space (not the main supply). The resource-market refill draws coal from storage first, then from the main supply. Players can always buy coal for $8 from the storage space (in addition to the standard market price). Metropolises: Cape Town, Durban, Johannesburg and Pretoria each consist of two cities (N and S) connected by a 0-cost edge. Cross-border connections: the six 30-Elektro connections to neighboring countries (Namibia, Botswana, Zimbabwe, Mozambique, Eswatini, Lesotho) are available from the start of the game. The 30 Elektro is the complete cost — no house-base cost is added on top. Only a single player can build on each cross-border space (cap of 1 instead of the standard 3). Power plant 07 is removed from the deck."};(function(e){e["Pink"]="pink",e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Red"]="red",e["Yellow"]="yellow"})(tt||(tt={})),function(e){e["Gerona"]="Gerona",e["Barcelona"]="Barcelona",e["Tarragona"]="Tarragona",e["Lerida"]="Lerida",e["Castellondelaplana"]="Castellon De La Plana",e["Valencia"]="Valencia",e["Alicante"]="Alicante",e["Sansebastian"]="San Sebastian",e["Pamplona"]="Pamplona",e["Zaragoza"]="Zaragoza",e["Madrid"]="Madrid",e["Logrono"]="Logrono",e["Bilbao"]="Bilbao",e["Santander"]="Santander",e["Gijon"]="Gijon",e["Leon"]="Leon",e["Valladolid"]="Valladolid",e["Salamanca"]="Salamanca",e["Orense"]="Orense",e["Lacoruna"]="La Coruna",e["Santiagodecompostela"]="Santiago De Compostela",e["Cuenca"]="Cuenca",e["Albacete"]="Albacete",e["Murcia"]="Murcia",e["Toledo"]="Toledo",e["Ciudadreal"]="Ciudad Real",e["Caceres"]="Caceres",e["Merida"]="Merida",e["Almeria"]="Almeria",e["Granada"]="Granada",e["Cordoba"]="Cordoba",e["Malaga"]="Malaga",e["Cadiz"]="Cadiz",e["Sevilla"]="Sevilla",e["Huelva"]="Huelva",e["Evora"]="Evora",e["Faro"]="Faro",e["Portimao"]="Portimao",e["Setubal"]="Setubal",e["Lisboa"]="Lisboa",e["Porto"]="Porto",e["Braga"]="Braga"}(rt||(rt={}));var at,it,st={name:"Spain & Portugal",cities:[{name:rt.Evora,region:tt.Yellow,x:890,y:1780},{name:rt.Faro,region:tt.Yellow,x:822,y:2348},{name:rt.Portimao,region:tt.Yellow,x:592,y:2218},{name:rt.Setubal,region:tt.Yellow,x:578,y:1864},{name:rt.Lisboa,region:tt.Yellow,x:572,y:1586},{name:rt.Porto,region:tt.Yellow,x:736,y:1052},{name:rt.Braga,region:tt.Yellow,x:990,y:828},{name:rt.Gerona,region:tt.Pink,x:3728,y:666},{name:rt.Barcelona,region:tt.Pink,x:3538,y:848},{name:rt.Tarragona,region:tt.Pink,x:3312,y:970},{name:rt.Lerida,region:tt.Pink,x:3166,y:752},{name:rt.Castellondelaplana,region:tt.Pink,x:3010,y:1284},{name:rt.Valencia,region:tt.Pink,x:2938,y:1580},{name:rt.Alicante,region:tt.Pink,x:2936,y:1922},{name:rt.Sansebastian,region:tt.Brown,x:2498,y:278},{name:rt.Pamplona,region:tt.Brown,x:2648,y:484},{name:rt.Zaragoza,region:tt.Brown,x:2760,y:810},{name:rt.Madrid,region:tt.Brown,x:2088,y:1170},{name:rt.Logrono,region:tt.Brown,x:2310,y:622},{name:rt.Bilbao,region:tt.Brown,x:2264,y:226},{name:rt.Santander,region:tt.Brown,x:2022,y:252},{name:rt.Gijon,region:tt.Green,x:1672,y:190},{name:rt.Leon,region:tt.Green,x:1604,y:518},{name:rt.Valladolid,region:tt.Green,x:1850,y:782},{name:rt.Salamanca,region:tt.Green,x:1564,y:1032},{name:rt.Orense,region:tt.Green,x:1072,y:532},{name:rt.Lacoruna,region:tt.Green,x:982,y:184},{name:rt.Santiagodecompostela,region:tt.Green,x:772,y:394},{name:rt.Cuenca,region:tt.Purple,x:2464,y:1300},{name:rt.Albacete,region:tt.Purple,x:2532,y:1684},{name:rt.Murcia,region:tt.Purple,x:2678,y:2056},{name:rt.Toledo,region:tt.Purple,x:1920,y:1400},{name:rt.Ciudadreal,region:tt.Purple,x:1982,y:1714},{name:rt.Caceres,region:tt.Purple,x:1354,y:1432},{name:rt.Merida,region:tt.Purple,x:1318,y:1764},{name:rt.Almeria,region:tt.Red,x:2402,y:2440},{name:rt.Granada,region:tt.Red,x:2044,y:2272},{name:rt.Cordoba,region:tt.Red,x:1728,y:2074},{name:rt.Malaga,region:tt.Red,x:1782,y:2484},{name:rt.Cadiz,region:tt.Red,x:1290,y:2552},{name:rt.Sevilla,region:tt.Red,x:1390,y:2168},{name:rt.Huelva,region:tt.Red,x:1082,y:2196}],connections:[{nodes:[rt.Huelva,rt.Faro],cost:6},{nodes:[rt.Faro,rt.Portimao],cost:4},{nodes:[rt.Portimao,rt.Setubal],cost:12},{nodes:[rt.Setubal,rt.Evora],cost:6},{nodes:[rt.Evora,rt.Merida],cost:9},{nodes:[rt.Merida,rt.Sevilla],cost:14},{nodes:[rt.Sevilla,rt.Cadiz],cost:8},{nodes:[rt.Cadiz,rt.Malaga],cost:12},{nodes:[rt.Malaga,rt.Granada],cost:7},{nodes:[rt.Granada,rt.Almeria],cost:9},{nodes:[rt.Almeria,rt.Murcia],cost:13},{nodes:[rt.Murcia,rt.Alicante],cost:4},{nodes:[rt.Alicante,rt.Valencia],cost:9},{nodes:[rt.Valencia,rt.Castellondelaplana],cost:4},{nodes:[rt.Albacete,rt.Almeria],cost:19},{nodes:[rt.Albacete,rt.Murcia],cost:10},{nodes:[rt.Albacete,rt.Alicante],cost:11},{nodes:[rt.Albacete,rt.Valencia],cost:11},{nodes:[rt.Albacete,rt.Cuenca],cost:8},{nodes:[rt.Albacete,rt.Ciudadreal],cost:13},{nodes:[rt.Albacete,rt.Granada],cost:19},{nodes:[rt.Albacete,rt.Toledo],cost:14},{nodes:[rt.Toledo,rt.Madrid],cost:6},{nodes:[rt.Madrid,rt.Cuenca],cost:11},{nodes:[rt.Cuenca,rt.Valencia],cost:13},{nodes:[rt.Cuenca,rt.Castellondelaplana],cost:14},{nodes:[rt.Castellondelaplana,rt.Tarragona],cost:12},{nodes:[rt.Toledo,rt.Caceres],cost:16},{nodes:[rt.Caceres,rt.Merida],cost:4},{nodes:[rt.Merida,rt.Ciudadreal],cost:16},{nodes:[rt.Ciudadreal,rt.Granada],cost:16},{nodes:[rt.Granada,rt.Cordoba],cost:11},{nodes:[rt.Cordoba,rt.Malaga],cost:11},{nodes:[rt.Malaga,rt.Sevilla],cost:12},{nodes:[rt.Sevilla,rt.Cordoba],cost:8},{nodes:[rt.Cordoba,rt.Ciudadreal],cost:10},{nodes:[rt.Merida,rt.Cordoba],cost:14},{nodes:[rt.Huelva,rt.Cadiz],cost:9},{nodes:[rt.Huelva,rt.Sevilla],cost:6},{nodes:[rt.Merida,rt.Huelva],cost:15},{nodes:[rt.Huelva,rt.Evora],cost:12},{nodes:[rt.Evora,rt.Faro],cost:13},{nodes:[rt.Faro,rt.Setubal],cost:14},{nodes:[rt.Setubal,rt.Lisboa],cost:4},{nodes:[rt.Lisboa,rt.Evora],cost:9},{nodes:[rt.Lisboa,rt.Merida],cost:16},{nodes:[rt.Caceres,rt.Ciudadreal],cost:16},{nodes:[rt.Toledo,rt.Cuenca],cost:13},{nodes:[rt.Salamanca,rt.Toledo],cost:14},{nodes:[rt.Salamanca,rt.Madrid],cost:14},{nodes:[rt.Salamanca,rt.Caceres],cost:13},{nodes:[rt.Porto,rt.Lisboa],cost:18},{nodes:[rt.Porto,rt.Salamanca],cost:19},{nodes:[rt.Porto,rt.Caceres],cost:21},{nodes:[rt.Caceres,rt.Lisboa],cost:19},{nodes:[rt.Ciudadreal,rt.Toledo],cost:7},{nodes:[rt.Braga,rt.Porto],cost:3},{nodes:[rt.Braga,rt.Salamanca],cost:19},{nodes:[rt.Salamanca,rt.Valladolid],cost:7},{nodes:[rt.Valladolid,rt.Madrid],cost:13},{nodes:[rt.Madrid,rt.Zaragoza],cost:19},{nodes:[rt.Zaragoza,rt.Lerida],cost:8},{nodes:[rt.Lerida,rt.Tarragona],cost:6},{nodes:[rt.Tarragona,rt.Barcelona],cost:6},{nodes:[rt.Lerida,rt.Castellondelaplana],cost:13},{nodes:[rt.Castellondelaplana,rt.Zaragoza],cost:15},{nodes:[rt.Zaragoza,rt.Cuenca],cost:16},{nodes:[rt.Braga,rt.Valladolid],cost:24},{nodes:[rt.Lerida,rt.Barcelona],cost:10},{nodes:[rt.Barcelona,rt.Gerona],cost:6},{nodes:[rt.Gerona,rt.Lerida],cost:13},{nodes:[rt.Lerida,rt.Pamplona],cost:17},{nodes:[rt.Pamplona,rt.Zaragoza],cost:11},{nodes:[rt.Zaragoza,rt.Logrono],cost:11},{nodes:[rt.Logrono,rt.Madrid],cost:18},{nodes:[rt.Santiagodecompostela,rt.Braga],cost:11},{nodes:[rt.Braga,rt.Orense],cost:9},{nodes:[rt.Orense,rt.Santiagodecompostela],cost:7},{nodes:[rt.Santiagodecompostela,rt.Lacoruna],cost:4},{nodes:[rt.Lacoruna,rt.Gijon],cost:9},{nodes:[rt.Gijon,rt.Santander],cost:11},{nodes:[rt.Santander,rt.Bilbao],cost:6},{nodes:[rt.Bilbao,rt.Sansebastian],cost:5},{nodes:[rt.Sansebastian,rt.Pamplona],cost:6},{nodes:[rt.Pamplona,rt.Logrono],cost:7},{nodes:[rt.Logrono,rt.Sansebastian],cost:9},{nodes:[rt.Bilbao,rt.Logrono],cost:9},{nodes:[rt.Logrono,rt.Santander],cost:13},{nodes:[rt.Santander,rt.Valladolid],cost:16},{nodes:[rt.Valladolid,rt.Logrono],cost:15},{nodes:[rt.Leon,rt.Santander],cost:13},{nodes:[rt.Gijon,rt.Leon],cost:9},{nodes:[rt.Leon,rt.Valladolid],cost:9},{nodes:[rt.Valladolid,rt.Orense],cost:22},{nodes:[rt.Orense,rt.Leon],cost:14},{nodes:[rt.Gijon,rt.Orense],cost:10},{nodes:[rt.Orense,rt.Lacoruna],cost:6}],layout:"Portrait",adjustRatio:[.315,.315],mapPosition:[-135,60],resupply:[[[3,4,2],[4,5,2],[4,6,3],[4,7,3],[6,8,4]],[[2,3,5],[2,4,5],[3,5,6],[4,6,7],[5,7,9]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[0,2,1],[0,2,1],[0,4,1],[0,5,1],[0,5,2]]],startingResources:[24,18,9,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if(a=a.filter((function(e){return![18,22,27].includes(e.number)})),"original"==n){a=a.slice(8);var i=a.splice(2,1)[0],s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[qt(3),qt(4),qt(5),qt(6)],o=[qt(7),qt(8),qt(9),qt(10)]}else{var c=De(a.splice(0,13),t()+""),u=c.splice(0,8);u=u.sort((function(e,n){return e.number-n.number})),r=u.slice(0,4),o=u.slice(4);var l=c.shift(),d=a.pop();a=De(a,t()+""),2==e?(c=c.slice(1),a=De(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=De(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=De(a.slice(3).concat(c),t()+"")):a=De(a.concat(c),t()+""),a.unshift(l),a.push(d)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Remove power plants 18, 22 and 27 from the deck. Place them on top of the deck at the start of Step 2.\nYou cannot buy a nuclear power plant if you only have cities in Portugal."};(function(e){e["Red"]="red",e["Pink"]="pink",e["Yellow"]="yellow",e["Brown"]="brown",e["Orange"]="orange",e["Green"]="green"})(at||(at={})),function(e){e["Norwich"]="Norwich",e["London1"]="London 1",e["London2"]="London 2",e["Brighton"]="Brighton",e["Southampton"]="Southampton",e["Plymouth"]="Plymouth",e["Leicester"]="Leicester",e["Bristol"]="Bristol",e["Newcastleupontyne"]="Newcastle Upon Tyne",e["Leeds"]="Leeds",e["Sheffield"]="Sheffield",e["Nottingham"]="Nottingham",e["Birmingham"]="Birmingham",e["Manchester"]="Manchester",e["Liverpool"]="Liverpool",e["Newportcasnewydd"]="Newport Casnewydd",e["Bangor"]="Bangor",e["Aberystwyth"]="Aberystwyth",e["Swanseaabertawe"]="Swansea Abertawe",e["Cardiffcaerdydd"]="Cardiff Caerdydd",e["Haverfordwesthwlffordd"]="Haverfordwest Hwlffordd",e["Invernessinbhirnis"]="Inverness Inbhir Nis",e["Aberdeenobardheathain"]="Aberdeen Obar Dheathain",e["Dundeedundeach"]="Dundee Dun Deach",e["Perthpeairt"]="Perth Peairt",e["Edinburgh"]="Edinburgh",e["Dumfries"]="Dumfries",e["Glasgow"]="Glasgow",e["Coleraine"]="Coleraine",e["Derry"]="Derry",e["Belfast"]="Belfast",e["Newry"]="Newry",e["Omagh"]="Omagh",e["Sligo"]="Sligo",e["Dublin"]="Dublin",e["Waterford"]="Waterford",e["Cork"]="Cork",e["Athlone"]="Athlone",e["Galway"]="Galway",e["Limerick"]="Limerick"}(it||(it={}));var ct={name:"UK & Ireland",cities:[{name:it.Norwich,region:at.Red,island:"gb",x:646,y:702},{name:it.London1,region:at.Red,island:"gb",x:554,y:756},{name:it.London2,region:at.Red,island:"gb",x:550,y:780},{name:it.Brighton,region:at.Red,island:"gb",x:537,y:837},{name:it.Southampton,region:at.Red,island:"gb",x:451,y:805},{name:it.Plymouth,region:at.Red,island:"gb",x:312,y:814},{name:it.Leicester,region:at.Red,island:"gb",x:540,y:680},{name:it.Bristol,region:at.Red,island:"gb",x:425,y:762},{name:it.Newcastleupontyne,region:at.Pink,island:"gb",x:550,y:414},{name:it.Leeds,region:at.Pink,island:"gb",x:559,y:541},{name:it.Sheffield,region:at.Pink,island:"gb",x:530,y:590},{name:it.Nottingham,region:at.Pink,island:"gb",x:531,y:632},{name:it.Birmingham,region:at.Pink,island:"gb",x:465,y:663},{name:it.Manchester,region:at.Pink,island:"gb",x:479,y:543},{name:it.Liverpool,region:at.Pink,island:"gb",x:433,y:576},{name:it.Newportcasnewydd,region:at.Yellow,island:"gb",x:425,y:722},{name:it.Bangor,region:at.Yellow,island:"gb",x:348,y:574},{name:it.Aberystwyth,region:at.Yellow,island:"gb",x:357,y:639},{name:it.Swanseaabertawe,region:at.Yellow,island:"gb",x:346,y:706},{name:it.Cardiffcaerdydd,region:at.Yellow,island:"gb",x:357,y:761},{name:it.Haverfordwesthwlffordd,region:at.Yellow,island:"gb",x:303,y:673},{name:it.Invernessinbhirnis,region:at.Brown,island:"gb",x:479,y:208},{name:it.Aberdeenobardheathain,region:at.Brown,island:"gb",x:588,y:245},{name:it.Dundeedundeach,region:at.Brown,island:"gb",x:552,y:286},{name:it.Perthpeairt,region:at.Brown,island:"gb",x:489,y:307},{name:it.Edinburgh,region:at.Brown,island:"gb",x:494,y:375},{name:it.Dumfries,region:at.Brown,island:"gb",x:441,y:417},{name:it.Glasgow,region:at.Brown,island:"gb",x:422,y:335},{name:it.Coleraine,region:at.Orange,island:"ie",x:330,y:367},{name:it.Derry,region:at.Orange,island:"ie",x:256,y:362},{name:it.Belfast,region:at.Orange,island:"ie",x:342,y:421},{name:it.Newry,region:at.Orange,island:"ie",x:298,y:462},{name:it.Omagh,region:at.Orange,island:"ie",x:260,y:403},{name:it.Sligo,region:at.Green,island:"ie",x:181,y:411},{name:it.Dublin,region:at.Green,island:"ie",x:274,y:530},{name:it.Waterford,region:at.Green,island:"ie",x:210,y:611},{name:it.Cork,region:at.Green,island:"ie",x:114,y:626},{name:it.Athlone,region:at.Green,island:"ie",x:200,y:489},{name:it.Galway,region:at.Green,island:"ie",x:112,y:486},{name:it.Limerick,region:at.Green,island:"ie",x:122,y:546}],connections:[{nodes:[it.Nottingham,it.Leicester],cost:4},{nodes:[it.London1,it.London2],cost:0},{nodes:[it.London2,it.Brighton],cost:6},{nodes:[it.Brighton,it.Southampton],cost:7},{nodes:[it.Southampton,it.Plymouth],cost:19},{nodes:[it.Plymouth,it.Bristol],cost:14},{nodes:[it.Bristol,it.Newportcasnewydd],cost:7},{nodes:[it.Cardiffcaerdydd,it.Swanseaabertawe],cost:7},{nodes:[it.Swanseaabertawe,it.Newportcasnewydd],cost:8},{nodes:[it.Newportcasnewydd,it.Cardiffcaerdydd],cost:3},{nodes:[it.Bristol,it.Southampton],cost:11},{nodes:[it.Southampton,it.London2],cost:9},{nodes:[it.London2,it.Bristol],cost:14},{nodes:[it.London1,it.Newportcasnewydd],cost:16},{nodes:[it.Haverfordwesthwlffordd,it.Aberystwyth],cost:9},{nodes:[it.Haverfordwesthwlffordd,it.Swanseaabertawe],cost:8},{nodes:[it.Swanseaabertawe,it.Aberystwyth],cost:11},{nodes:[it.Aberystwyth,it.Bangor],cost:11},{nodes:[it.Bangor,it.Liverpool],cost:9},{nodes:[it.Liverpool,it.Aberystwyth],cost:16},{nodes:[it.Aberystwyth,it.Newportcasnewydd],cost:14},{nodes:[it.Aberystwyth,it.Birmingham],cost:16},{nodes:[it.Birmingham,it.Liverpool],cost:12},{nodes:[it.Birmingham,it.Newportcasnewydd],cost:9},{nodes:[it.London1,it.Norwich],cost:11},{nodes:[it.Norwich,it.Leicester],cost:12},{nodes:[it.Leicester,it.London1],cost:10},{nodes:[it.London1,it.Birmingham],cost:13},{nodes:[it.Birmingham,it.Leicester],cost:6},{nodes:[it.Birmingham,it.Nottingham],cost:7},{nodes:[it.Nottingham,it.Sheffield],cost:6},{nodes:[it.Sheffield,it.Leeds],cost:5},{nodes:[it.Leeds,it.Manchester],cost:8},{nodes:[it.Manchester,it.Sheffield],cost:8},{nodes:[it.Sheffield,it.Liverpool],cost:12},{nodes:[it.Liverpool,it.Nottingham],cost:15},{nodes:[it.Manchester,it.Dumfries],cost:18},{nodes:[it.Manchester,it.Newcastleupontyne],cost:15},{nodes:[it.Newcastleupontyne,it.Dumfries],cost:12},{nodes:[it.Dumfries,it.Edinburgh],cost:12},{nodes:[it.Edinburgh,it.Newcastleupontyne],cost:13},{nodes:[it.Newcastleupontyne,it.Leeds],cost:13},{nodes:[it.Dumfries,it.Glasgow],cost:11},{nodes:[it.Glasgow,it.Edinburgh],cost:7},{nodes:[it.Glasgow,it.Perthpeairt],cost:10},{nodes:[it.Perthpeairt,it.Dundeedundeach],cost:3},{nodes:[it.Glasgow,it.Invernessinbhirnis],cost:20},{nodes:[it.Invernessinbhirnis,it.Perthpeairt],cost:14},{nodes:[it.Invernessinbhirnis,it.Dundeedundeach],cost:14},{nodes:[it.Invernessinbhirnis,it.Aberdeenobardheathain],cost:15},{nodes:[it.Aberdeenobardheathain,it.Dundeedundeach],cost:10},{nodes:[it.Limerick,it.Cork],cost:12},{nodes:[it.Cork,it.Waterford],cost:8},{nodes:[it.Waterford,it.Limerick],cost:11},{nodes:[it.Limerick,it.Galway],cost:10},{nodes:[it.Galway,it.Sligo],cost:10},{nodes:[it.Sligo,it.Derry],cost:10},{nodes:[it.Derry,it.Coleraine],cost:6},{nodes:[it.Coleraine,it.Belfast],cost:8},{nodes:[it.Belfast,it.Newry],cost:6},{nodes:[it.Newry,it.Dublin],cost:10},{nodes:[it.Dublin,it.Waterford],cost:13},{nodes:[it.Galway,it.Athlone],cost:8},{nodes:[it.Athlone,it.Sligo],cost:9},{nodes:[it.Athlone,it.Limerick],cost:9},{nodes:[it.Limerick,it.Dublin],cost:16},{nodes:[it.Dublin,it.Athlone],cost:9},{nodes:[it.Athlone,it.Newry],cost:12},{nodes:[it.Athlone,it.Omagh],cost:14},{nodes:[it.Omagh,it.Newry],cost:8},{nodes:[it.Omagh,it.Belfast],cost:10},{nodes:[it.Belfast,it.Derry],cost:10},{nodes:[it.Omagh,it.Derry],cost:5},{nodes:[it.Omagh,it.Sligo],cost:10}],layout:"Portrait",adjustRatio:[1.1,1.1],mapPosition:[10,-75],mapRotation:0,resupply:[[[3,4,3],[3,5,3],[4,6,4],[4,7,5],[6,8,6]],[[2,3,2],[2,4,2],[3,5,3],[4,6,4],[5,7,5]],[[1,2,2],[1,2,2],[2,3,3],[3,3,5],[3,5,5]],[[1,1,1],[1,2,1],[1,3,1],[2,4,2],[2,4,3]]],startingResources:[24,18,12,0],startingSupply:[24,24,24,12],crossIslandSurcharge:20,setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.splice(a.length-2,0,c),r=[qt(3),qt(4),qt(5),qt(6)],o=[qt(7),qt(8),qt(9),qt(10)]}else{var u=De(a.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.splice(a.length-2,0,f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Two networks: Ireland (Green and Orange regions) and Great Britain (Red, Pink, Yellow, Brown) have no sea connection. A player may run one network on each island. Starting a second network on the other island costs an extra 20 Elektro on top of the normal first-house cost. Nuclear restriction: a player whose network is entirely in the Republic of Ireland (Green region) cannot bid on or auction a nuclear power plant until they build a city in Scotland, Wales, England, or Northern Ireland. Early Step 3: the Step 3 card is placed 3rd from last in the deck (two plants below it). Step 2 begins when a player connects their 7th city (6th for 6 players)."},ut=[Fe,Sn,sn,st,kn,Rn,On,Xn,Un,yn,rn,nt,pn,en,$n,En,bn,Yn,ot,ct,Ze,ln,Dn],lt=[Ye,Mn,sn,st,kn,Rn,On,Xn,Un,yn,rn,nt,pn,en,$n,En,bn,Yn,ot,ct,Ze,ln,Nn];const dt=Math.pow(2,-52),ft=new Uint32Array(512);class pt{static from(e,n=_t,t=Pt){const r=e.length,o=new Float64Array(2*r);for(let a=0;a<r;a++){const r=e[a];o[2*a]=n(r),o[2*a+1]=t(r)}return new pt(o)}constructor(e){const n=e.length>>1;if(n>0&&"number"!==typeof e[0])throw new Error("Expected coords to contain numbers.");this.coords=e;const t=Math.max(2*n-5,0);this._triangles=new Uint32Array(3*t),this._halfedges=new Int32Array(3*t),this._hashSize=Math.ceil(Math.sqrt(n)),this._hullPrev=new Uint32Array(n),this._hullNext=new Uint32Array(n),this._hullTri=new Uint32Array(n),this._hullHash=new Int32Array(this._hashSize).fill(-1),this._ids=new Uint32Array(n),this._dists=new Float64Array(n),this.update()}update(){const{coords:e,_hullPrev:n,_hullNext:t,_hullTri:r,_hullHash:o}=this,a=e.length>>1;let i=1/0,s=1/0,c=-1/0,u=-1/0;for(let S=0;S<a;S++){const n=e[2*S],t=e[2*S+1];n<i&&(i=n),t<s&&(s=t),n>c&&(c=n),t>u&&(u=t),this._ids[S]=S}const l=(i+c)/2,d=(s+u)/2;let f,p,h,g=1/0;for(let S=0;S<a;S++){const n=gt(l,d,e[2*S],e[2*S+1]);n<g&&(f=S,g=n)}const y=e[2*f],m=e[2*f+1];g=1/0;for(let S=0;S<a;S++){if(S===f)continue;const n=gt(y,m,e[2*S],e[2*S+1]);n<g&&n>0&&(p=S,g=n)}let v=e[2*p],b=e[2*p+1],w=1/0;for(let S=0;S<a;S++){if(S===f||S===p)continue;const n=bt(y,m,v,b,e[2*S],e[2*S+1]);n<w&&(h=S,w=n)}let x=e[2*h],k=e[2*h+1];if(w===1/0){for(let r=0;r<a;r++)this._dists[r]=e[2*r]-e[0]||e[2*r+1]-e[1];xt(this._ids,this._dists,0,a-1);const n=new Uint32Array(a);let t=0;for(let e=0,r=-1/0;e<a;e++){const o=this._ids[e];this._dists[o]>r&&(n[t++]=o,r=this._dists[o])}return this.hull=n.subarray(0,t),this.triangles=new Uint32Array(0),void(this.halfedges=new Uint32Array(0))}if(mt(y,m,v,b,x,k)){const e=p,n=v,t=b;p=h,v=x,b=k,h=e,x=n,k=t}const _=wt(y,m,v,b,x,k);this._cx=_.x,this._cy=_.y;for(let S=0;S<a;S++)this._dists[S]=gt(e[2*S],e[2*S+1],_.x,_.y);xt(this._ids,this._dists,0,a-1),this._hullStart=f;let P=3;t[f]=n[h]=p,t[p]=n[f]=h,t[h]=n[p]=f,r[f]=0,r[p]=1,r[h]=2,o.fill(-1),o[this._hashKey(y,m)]=f,o[this._hashKey(v,b)]=p,o[this._hashKey(x,k)]=h,this.trianglesLen=0,this._addTriangle(f,p,h,-1,-1,-1);for(let S,M,C=0;C<this._ids.length;C++){const a=this._ids[C],i=e[2*a],s=e[2*a+1];if(C>0&&Math.abs(i-S)<=dt&&Math.abs(s-M)<=dt)continue;if(S=i,M=s,a===f||a===p||a===h)continue;let c=0;for(let e=0,n=this._hashKey(i,s);e<this._hashSize;e++)if(c=o[(n+e)%this._hashSize],-1!==c&&c!==t[c])break;c=n[c];let u,l=c;while(u=t[l],!mt(i,s,e[2*l],e[2*l+1],e[2*u],e[2*u+1]))if(l=u,l===c){l=-1;break}if(-1===l)continue;let d=this._addTriangle(l,a,t[l],-1,-1,r[l]);r[a]=this._legalize(d+2),r[l]=d,P++;let g=t[l];while(u=t[g],mt(i,s,e[2*g],e[2*g+1],e[2*u],e[2*u+1]))d=this._addTriangle(g,a,u,r[a],-1,r[g]),r[a]=this._legalize(d+2),t[g]=g,P--,g=u;if(l===c)while(u=n[l],mt(i,s,e[2*u],e[2*u+1],e[2*l],e[2*l+1]))d=this._addTriangle(u,a,l,-1,r[l],r[u]),this._legalize(d+2),r[u]=d,t[l]=l,P--,l=u;this._hullStart=n[a]=l,t[l]=n[g]=a,t[a]=g,o[this._hashKey(i,s)]=a,o[this._hashKey(e[2*l],e[2*l+1])]=l}this.hull=new Uint32Array(P);for(let S=0,M=this._hullStart;S<P;S++)this.hull[S]=M,M=t[M];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(e,n){return Math.floor(ht(e-this._cx,n-this._cy)*this._hashSize)%this._hashSize}_legalize(e){const{_triangles:n,_halfedges:t,coords:r}=this;let o=0,a=0;while(1){const i=t[e],s=e-e%3;if(a=s+(e+2)%3,-1===i){if(0===o)break;e=ft[--o];continue}const c=i-i%3,u=s+(e+1)%3,l=c+(i+2)%3,d=n[a],f=n[e],p=n[u],h=n[l],g=vt(r[2*d],r[2*d+1],r[2*f],r[2*f+1],r[2*p],r[2*p+1],r[2*h],r[2*h+1]);if(g){n[e]=h,n[i]=d;const r=t[l];if(-1===r){let n=this._hullStart;do{if(this._hullTri[n]===l){this._hullTri[n]=e;break}n=this._hullPrev[n]}while(n!==this._hullStart)}this._link(e,r),this._link(i,t[a]),this._link(a,l);const s=c+(i+1)%3;o<ft.length&&(ft[o++]=s)}else{if(0===o)break;e=ft[--o]}}return a}_link(e,n){this._halfedges[e]=n,-1!==n&&(this._halfedges[n]=e)}_addTriangle(e,n,t,r,o,a){const i=this.trianglesLen;return this._triangles[i]=e,this._triangles[i+1]=n,this._triangles[i+2]=t,this._link(i,r),this._link(i+1,o),this._link(i+2,a),this.trianglesLen+=3,i}}function ht(e,n){const t=e/(Math.abs(e)+Math.abs(n));return(n>0?3-t:1+t)/4}function gt(e,n,t,r){const o=e-t,a=n-r;return o*o+a*a}function yt(e,n,t,r,o,a){const i=(r-n)*(o-e),s=(t-e)*(a-n);return Math.abs(i-s)>=33306690738754716e-32*Math.abs(i+s)?i-s:0}function mt(e,n,t,r,o,a){const i=yt(o,a,e,n,t,r)||yt(e,n,t,r,o,a)||yt(t,r,o,a,e,n);return i<0}function vt(e,n,t,r,o,a,i,s){const c=e-i,u=n-s,l=t-i,d=r-s,f=o-i,p=a-s,h=c*c+u*u,g=l*l+d*d,y=f*f+p*p;return c*(d*y-g*p)-u*(l*y-g*f)+h*(l*p-d*f)<0}function bt(e,n,t,r,o,a){const i=t-e,s=r-n,c=o-e,u=a-n,l=i*i+s*s,d=c*c+u*u,f=.5/(i*u-s*c),p=(u*l-s*d)*f,h=(i*d-c*l)*f;return p*p+h*h}function wt(e,n,t,r,o,a){const i=t-e,s=r-n,c=o-e,u=a-n,l=i*i+s*s,d=c*c+u*u,f=.5/(i*u-s*c),p=e+(u*l-s*d)*f,h=n+(i*d-c*l)*f;return{x:p,y:h}}function xt(e,n,t,r){if(r-t<=20)for(let o=t+1;o<=r;o++){const r=e[o],a=n[r];let i=o-1;while(i>=t&&n[e[i]]>a)e[i+1]=e[i--];e[i+1]=r}else{const o=t+r>>1;let a=t+1,i=r;kt(e,o,a),n[e[t]]>n[e[r]]&&kt(e,t,r),n[e[a]]>n[e[r]]&&kt(e,a,r),n[e[t]]>n[e[a]]&&kt(e,t,a);const s=e[a],c=n[s];while(1){do{a++}while(n[e[a]]<c);do{i--}while(n[e[i]]>c);if(i<a)break;kt(e,a,i)}e[t+1]=e[i],e[i]=s,r-a+1>=i-t?(xt(e,n,a,r),xt(e,n,t,i-1)):(xt(e,n,t,i-1),xt(e,n,a,r))}}function kt(e,n,t){const r=e[n];e[n]=e[t],e[t]=r}function _t(e){return e[0]}function Pt(e){return e[1]}function St(e,n,t){var r=_(new Set(e.cities.map((function(e){return e.region})))),o=Array(7*n).fill(0).map((function(e){return{name:"",region:"",x:0,y:0}})),a=[420,490,490],i=[490,560,700],s=a[n-3],c=i[n-3],u=70,l=Math.ceil(s/u),d=Math.ceil(c/u),f=l*d,p=Array(f).fill(-1);e.mapPosition=[100,200],e.layout="Portrait";var h=Array(f).fill(0).map((function(e,n){return n}));o.forEach((function(e,n){var r=h[Math.floor(t()*h.length)],o=Math.floor(r/l),a=r%l;e.x=Math.floor(2*a*u),e.y=Math.floor(o*u),o%2===0&&(e.x+=u);var i=2*t()*Math.PI,s=t()*u/2;e.x+=s*Math.cos(i),e.y+=s*Math.sin(i),h=h.filter((function(e){return e!==r})),p[r]=n}));for(var g=Array(o.length).fill(0).map((function(e){return Array(o.length).fill(0)})),y=Array(o.length).fill(0).map((function(e){return Array(o.length).fill(null)})),m=pt.from(o,(function(e){return e.x}),(function(e){return e.y})),v=0;v<m.triangles.length;v+=3){var b=o[m.triangles[v]],w=o[m.triangles[v+1]],x=o[m.triangles[v+2]],k=g[m.triangles[v]][m.triangles[v+1]],P=k?Math.pow(k,2):Math.pow(b.x-w.x,2)+Math.pow(b.y-w.y,2),S=k||(g[m.triangles[v+1]][m.triangles[v]]=g[m.triangles[v]][m.triangles[v+1]]=Math.sqrt(P));k=g[m.triangles[v]][m.triangles[v+2]];var M=k?Math.pow(k,2):Math.pow(b.x-x.x,2)+Math.pow(b.y-x.y,2),C=k||(g[m.triangles[v+2]][m.triangles[v]]=g[m.triangles[v]][m.triangles[v+2]]=Math.sqrt(M));k=g[m.triangles[v+1]][m.triangles[v+2]];var B=k?Math.pow(k,2):Math.pow(w.x-x.x,2)+Math.pow(w.y-x.y,2),R=k||(g[m.triangles[v+2]][m.triangles[v+1]]=g[m.triangles[v+1]][m.triangles[v+2]]=Math.sqrt(B)),A=Math.acos((P+M-B)/(2*S*C)),L=Math.acos((P+B-M)/(2*S*R)),O=Math.PI-A-L,G=105*Math.PI/180;!1!==y[m.triangles[v]][m.triangles[v+1]]&&O<G?(y[m.triangles[v]][m.triangles[v+1]]=!0,y[m.triangles[v+1]][m.triangles[v]]=!0):(y[m.triangles[v]][m.triangles[v+1]]=!1,y[m.triangles[v+1]][m.triangles[v]]=!1),!1!==y[m.triangles[v]][m.triangles[v+2]]&&L<G?(y[m.triangles[v]][m.triangles[v+2]]=!0,y[m.triangles[v+2]][m.triangles[v]]=!0):(y[m.triangles[v]][m.triangles[v+2]]=!1,y[m.triangles[v+2]][m.triangles[v]]=!1),!1!==y[m.triangles[v+1]][m.triangles[v+2]]&&A<G?(y[m.triangles[v+1]][m.triangles[v+2]]=!0,y[m.triangles[v+2]][m.triangles[v+1]]=!0):(y[m.triangles[v+1]][m.triangles[v+2]]=!1,y[m.triangles[v+2]][m.triangles[v+1]]=!1)}for(var j=0,D=1e3,N=0;N<o.length;N++)for(var z=0;z<N;z++)if(y[N][z]){var T=g[N][z];j=Math.max(j,T),D=Math.min(D,T)}var E=5===n?[[s/4,c/4],[s/4,3*c/4],[s/2,c/2],[3*s/4,c/4],[3*s/4,3*c/4]]:4===n?[[s/4,c/4],[s/4,3*c/4],[3*s/4,c/4],[3*s/4,3*c/4]]:[[s/4,c/4],[s/2,c/2],[3*s/4,3*c/4]],K=Mt(o.map((function(e){return[e.x,e.y]})),n,E,y),I=Array(n).fill(0);o.forEach((function(e,n){e.region=r[K[n]],e.name=Object(we["upperFirst"])(e.region)+" "+(1+I[K[n]]++)}));for(var U=[],W=0;W<o.length;W++)for(var H=0;H<W;H++)if(y[W][H]){var F=o[W],Y=o[H],V=g[W][H];U.push({nodes:[F.name,Y.name],cost:Math.floor(5*V/u)})}return e.cities=o,e.connections=U,e}function Mt(e,n,t,r){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:100,a=Array(e.length).fill(0),i=Math.ceil(e.length/n),s=!1,c=function(){var r=Array(n).fill(0),c=Array(e.length).fill(0).map((function(e){return Array(n).fill(0)}));e.forEach((function(e,n){var o=null,s=0;t.forEach((function(t,a){var u=Ct(e,t);(null===o||u<o)&&r[a]<i&&(o=u,s=a),c[n][a]=u})),a[n]=s,r[s]++}));var u=Array(t.length).fill(0).map((function(e){return[0,0]})),l=Array(t.length).fill(0);e.forEach((function(e,n){u[a[n]][0]+=e[0],u[a[n]][1]+=e[1],l[a[n]]++})),s=!0,t.forEach((function(e,n){u[n][0]=u[n][0]/l[n],u[n][1]=u[n][1]/l[n],e[0]===u[n][0]&&e[1]===u[n][1]||(s=!1)})),t=u,console.log("iterations",o),console.log("centroids",t),s=s||0===--o};do{c()}while(!s);var u=10;do{console.log("Refining"),s=!0,e.forEach((function(n,o){var i=a[o],c=r[o].some((function(e,n){return e&&i===a[n]}));if(!c){var u=t[i],l=null,d=null;r[o].forEach((function(n,t){if(n){var r=e[t],o=Ct(r,u);(null===l||o<l)&&(l=o,d=t)}})),a[o]=a[d],a[d]=i,s=!1}})),s=s||0===--u}while(!s);return a}function Ct(e,n){return(e[0]-n[0])*(e[0]-n[0])+(e[1]-n[1])*(e[1]-n[1])}var Bt=["limegreen","mediumorchid","red","dodgerblue","yellow","brown"],Rt=[10,7,7,7,6],At=[9,6,6,6,5],Lt=[10,7,7,7,6],Ot=[21,17,17,15,14],Gt=[18,17,17,15,14],jt=[5,5,5,5,4],Dt=[13,13,13,12,11],Nt=[10,22,33,44,54,64,73,82,90,98,105,112,118,124,129,134,138,142,145,148,150,150],zt=[3,3,4,5,5];function Tt(e,n,t,r){var o,a,i=Object(we["cloneDeep"])(Ve);if("original"==n){i=i.slice(8);var s=i.splice(2,1)[0],c=i.pop();i=De(i,t()+""),2==e||3==e?i=i.slice(8):4==e&&(i=i.slice(4)),i.unshift(s),i.push(c),o=[qt(3),qt(4),qt(5),qt(6)],a=[qt(7),qt(8),qt(9),qt(10)]}else{var u=De(i.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),o=l.slice(0,4),a=l.slice(4);var d=u.shift(),f=i.pop();i=De(i,t()+""),2==e?(u=u.slice(1),i=De(i.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),i=De(i.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),i=De(i.slice(3).concat(u),t()+"")):r&&(i=De(i.concat(u),t()+"")),i.unshift(d),i.push(f)}return{actualMarket:o,futureMarket:a,powerPlantsDeck:i}}function Et(e,n,t,r,o){var a,i,s,u,l,d,f,p,h=n.fastBid,g=void 0!==h&&h,y=n.map,m=void 0===y?"USA":y,v=n.variant,b=void 0===v?"original":v,w=n.showMoney,x=void 0!==w&&w,k=n.useNewRechargedSetup,S=void 0===k||k,M=n.trackTotalSpent,C=void 0===M||M,B=n.randomizeMap,R=void 0!==B&&B;t=null!==(a=t)&&void 0!==a?a:Math.random().toString();var A=Oe()(t),L="original"==b?ut.find((function(e){return e.name==m})):lt.find((function(e){return e.name==m}));if(!L)throw new Error('Map "'.concat(m,'" not found for variant "').concat(b,'"'));var O,G,j,D=Object(we["cloneDeep"])(L);if(r)j=r,O=j.splice(0,4),G=j.splice(0,4);else if(D.setupDeck){var N=D.setupDeck(e,b,A);O=N.actualMarket,G=N.futureMarket,j=N.powerPlantsDeck}else{var z=Tt(e,b,A,S);O=z.actualMarket,G=z.futureMarket,j=z.powerPlantsDeck}var T,E,K,I,U,W,H,F,Y=Object(we["range"])(e).map((function(e){return{id:e,powerPlants:[],coalCapacity:0,coalLeft:0,oilCapacity:0,oilLeft:0,garbageCapacity:0,garbageLeft:0,uraniumCapacity:0,uraniumLeft:0,hybridCapacity:0,hybridLeft:0,money:50,housesLeft:22,cities:[],powerPlantsNotUsed:[],availableMoves:null,lastMove:null,isDropped:!1,isAI:!1,bid:0,passed:!1,skipAuction:!1,citiesPowered:0,resourcesUsed:[],totalIncome:0,totalSpentCities:0,totalSpentConnections:0,totalSpentPlants:0,totalSpentResources:0,usedFreeJump:!1}})),V=Y.length-2,J=Object(we["range"])(e),$=J[0];if(D.resupplyNorth&&(U=D.resupplyNorth[0],W=D.resupplyNorth[1],H=D.resupplyNorth[2]),D.resupply?(T=D.resupply[0],E=D.resupply[1],K=D.resupply[2],I=D.resupply[3]):(T=[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],E=[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],K=[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],I=[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]),"Portrait"==D.layout||R){var q="USA"===D.name&&"recharged"===b;D.viewBox=D.viewBox||[1480,1060],D.adjustRatio=D.adjustRatio||[1,1],D.playerOrderPosition=D.playerOrderPosition||[1160,160],D.cityCountPosition=D.cityCountPosition||[0,0],D.powerPlantMarketPosition=D.powerPlantMarketPosition||[745,0],D.actualMarketWidth=D.actualMarketWidth||430,D.mapPosition=D.mapPosition||[0,0],D.buttonsPosition=D.buttonsPosition||[1305,0],D.playerBoardsPosition=D.playerBoardsPosition||[1105,240],D.roundInfoPosition=D.roundInfoPosition||[20,920],D.supplyPosition=D.supplyPosition||[q?480:675,920]}else D.viewBox=D.viewBox||[1465,860],D.adjustRatio=D.adjustRatio||[1,1],D.playerOrderPosition=D.playerOrderPosition||[1160,140],D.cityCountPosition=D.cityCountPosition||[0,0],D.powerPlantMarketPosition=D.powerPlantMarketPosition||[745,0],D.actualMarketWidth=D.actualMarketWidth||430,D.mapPosition=D.mapPosition||[-10,0],D.buttonsPosition=D.buttonsPosition||[1305,0],D.playerBoardsPosition=D.playerBoardsPosition||[1105,200],D.roundInfoPosition=D.roundInfoPosition||[20,590],D.supplyPosition=D.supplyPosition||[0,720];R?F=St(D,zt[V],A):function(){D.cities=D.cities.map((function(e){return c(c({},e),{},{x:e.x*D.adjustRatio[0],y:e.y*D.adjustRatio[1]})}));var e,n=D.cities.filter((function(e,n){return D.cities.findIndex((function(n){return n.region==e.region}))==n})).map((function(e){return e.region})),t=D.connections.map((function(e){return e.nodes.map((function(e){return D.cities.find((function(n){return n.name==e})).region}))})),r=n.map((function(e){return n.filter((function(n){return e!=n&&t.some((function(t){return t.includes(e)&&t.includes(n)}))}))})),o={},a=P(D.cities);try{for(a.s();!(e=a.n()).done;){var i=e.value;i.island&&void 0===o[i.region]&&(o[i.region]=i.island)}}catch(x){a.e(x)}finally{a.f()}var s=new Set;while(s.size!=Math.min(zt[V],n.length)){var u=n[Math.floor(A()*n.length)],l=0==s.size||r[n.indexOf(u)].some((function(e){return s.has(e)})),d=l;if(!d&&"UK & Ireland"===D.name){var f=new Set(_(s).map((function(e){return o[e]})));f.has(o[u])||(d=!0)}d||"Australia"!==D.name||(d=!0),d&&(s.add(u),"Italy"===D.name&&s.has("red")&&s.has("green")&&s.has("blue")&&s.clear())}var p=Object(we["cloneDeep"])(D);if(p.cities=p.cities.filter((function(e){return s.has(e.region)})),p.connections=p.connections.filter((function(e){return e.nodes.map((function(e){return D.cities.find((function(n){return n.name==e})).region})).every((function(e){return s.has(e)}))})),F=p,D.regionalPowerPlants){var h,g=P(s);try{for(g.s();!(h=g.n()).done;){var y=h.value,m=D.regionalPowerPlants[y];if(m){var v,b=P(m);try{var w=function(){var e=v.value,n=function(n){var t=n.findIndex((function(n){return n.number===e.number}));-1!==t&&(n[t]=c({},e))};n(O),n(G),n(j)};for(b.s();!(v=b.n()).done;)w()}catch(x){b.e(x)}finally{b.f()}}}}catch(x){g.e(x)}finally{g.f()}}}();var Z=D.startingResources?D.startingResources[0]:24,X=D.startingResources?D.startingResources[1]:18,Q=D.startingResources?D.startingResources[2]:"original"==b?6:9,ee=D.startingResources?D.startingResources[3]:2,ne=D.startingSupply?D.startingSupply[0]:24,te=D.startingSupply?D.startingSupply[1]:24,re=D.startingSupply?D.startingSupply[2]:24,oe=D.startingSupply?D.startingSupply[3]:12,ae=null===(i=D.startingResourcesNorth)||void 0===i?void 0:i[0],ie=null===(s=D.startingResourcesNorth)||void 0===s?void 0:s[1],se=null===(u=D.startingResourcesNorth)||void 0===u?void 0:u[2],ce=ne-Z-(null!==ae&&void 0!==ae?ae:0),ue=te-X-(null!==ie&&void 0!==ie?ie:0),le=re-Q-(null!==se&&void 0!==se?se:0),de=oe-ee,fe=Object(we["cloneDeep"])(null!==(l=D.coalPrices)&&void 0!==l?l:Ae.coal),pe=Object(we["cloneDeep"])(null!==(d=D.oilPrices)&&void 0!==d?d:Ae.oil),he=Object(we["cloneDeep"])(null!==(f=D.garbagePrices)&&void 0!==f?f:Ae.garbage),ge=Object(we["cloneDeep"])(null!==(p=D.uraniumPrices)&&void 0!==p?p:Ae.uranium),ye=D.coalPricesNorth?Object(we["cloneDeep"])(D.coalPricesNorth):void 0,me=D.oilPricesNorth?Object(we["cloneDeep"])(D.oilPricesNorth):void 0,ve=D.garbagePricesNorth?Object(we["cloneDeep"])(D.garbagePricesNorth):void 0,xe="South Africa"==(o||F).name,ke={map:o||F,players:Y,playerOrder:J,currentPlayers:[$],powerPlantsDeck:j,coalSupply:ce,oilSupply:ue,garbageSupply:le,uraniumSupply:de,coalStorage:xe?0:void 0,coalResupply:T,oilResupply:E,garbageResupply:K,uraniumResupply:I,coalMarket:Z,oilMarket:X,garbageMarket:Q,uraniumMarket:ee,uraniumMineMarket:"Australia"==(o||F).name?[2,2,2,2,2,2]:void 0,coalPrices:fe,oilPrices:pe,garbagePrices:he,uraniumPrices:ge,coalMarketNorth:ae,oilMarketNorth:ie,garbageMarketNorth:se,coalResupplyNorth:U,oilResupplyNorth:W,garbageResupplyNorth:H,coalPricesNorth:ye,oilPricesNorth:me,garbagePricesNorth:ve,actualMarket:O,futureMarket:G,chosenPowerPlant:void 0,currentBid:void 0,highestBidders:[],auctioningPlayer:void 0,step:1,phase:be.Auction,options:{fastBid:g,map:m,variant:b,showMoney:x,useNewRechargedSetup:S,trackTotalSpent:C},log:[],hiddenLog:[],seed:t,round:1,auctionSkips:0,citiesToStep2:"Baden-Württemberg"==(o||F).name?At[e-2]:"UK & Ireland"==(o||F).name?Lt[e-2]:"Bremen"==(o||F).name?jt[e-2]:Rt[e-2],citiesToEndGame:"South Africa"==(o||F).name?Gt[e-2]:"UK & Ireland"==(o||F).name&&2==e?Math.min(Ot[e-2],(o||F).cities.length):"Bremen"==(o||F).name?Dt[e-2]:Ot[e-2],resourceResupply:["[".concat(T[V][0],", ").concat(E[V][0],", ").concat(K[V][0],", ").concat(I[V][0],"]"),"[".concat(T[V][1],", ").concat(E[V][1],", ").concat(K[V][1],", ").concat(I[V][1],"]"),"[".concat(T[V][2],", ").concat(E[V][2],", ").concat(K[V][2],", ").concat(I[V][2],"]")],resourceResupplyNorth:U&&W&&H?["[".concat(U[V][0],", ").concat(W[V][0],", ").concat(H[V][0],"]"),"[".concat(U[V][1],", ").concat(W[V][1],", ").concat(H[V][1],"]"),"[".concat(U[V][2],", ").concat(W[V][2],", ").concat(H[V][2],"]")]:void 0,paymentTable:Nt,variant:b,minimunBid:0,plantDiscountActive:"recharged"==b&&"China"!=(o||F).name&&"Russia"!=(o||F).name&&"Baden-Württemberg"!=(o||F).name,discardSmallestPlant:!1,cardsLeft:j.length,nextCardWeak:"recharged"==b,card39Bought:!1,knownPowerPlantDeck:O.concat(G),knownPowerPlantDeckStep3:[],powerPlantDeckAfterStep3:void 0};return ke.log.push({type:"event",event:"Game Start!"}),"Middle East"==ke.map.name&&Ft(ke),ke.players[$].availableMoves=Ne(ke,ke.players[$]),ke}function Kt(e,n,t){var r,o=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a=e.players[t],i=null===(r=a.availableMoves)||void 0===r?void 0:r[n.name];switch(dr(e),Ue()(e.currentPlayers.includes(t),"It is not your turn!"),Ue()(i,"You are not allowed to run the command "+n.name),o&&n.name==_e.DiscardPowerPlant&&a.powerPlants[a.powerPlants.length-1].number==n.data||Ue()(i.some((function(e){return Object(we["isEqual"])(e,n.data)})),"Wrong argument for the command "+n.name),n.name){case _e.ChoosePowerPlant:Ge(n),e.chosenPowerPlant=e.actualMarket.find((function(e){return e.number===n.data})),e.auctioningPlayer=a.id,39==n.data&&(e.card39Bought=!0),"recharged"==e.options.variant&&e.plantDiscountActive&&e.chosenPowerPlant.number==e.actualMarket[0].number?(e.minimunBid=1,e.plantDiscountActive=!1,n.usedPlantDiscount=!0):e.minimunBid=n.data;var s=e.players.filter((function(e){return!e.skipAuction&&!e.isDropped}));if(1==s.length){e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," chooses Power Plant ").concat(n.data,"."),pretty:"".concat(Xt(a)," chooses Power Plant <b>").concat(n.data,"</b>.")});var c=s[0];or(e,c,e.minimunBid),1==e.round&&ar(e),(ke(e,c)<=3||2==e.players.length&&4==ke(e,c))&&("China"==e.map.name&&3!=e.step||Ht(e),rr(e))}else e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," chooses Power Plant ").concat(n.data," to initiate an auction."),pretty:"".concat(Xt(a)," chooses Power Plant <b>").concat(n.data,"</b> to initiate an auction.")}),e.options.fastBid&&(e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].skipAuction&&!e.players[n].isDropped})));break;case _e.Bid:Ge(n),e.options.fastBid?(e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," bids $").concat(n.data,"."),pretty:"".concat(Xt(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),fr(e,a,n.data)):(e.currentBid=a.bid=n.data,e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," bids $").concat(n.data,"."),pretty:"".concat(Xt(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),cr(e));break;case _e.Pass:switch(Ge(n),e.options.fastBid&&e.phase==be.Auction&&e.chosenPowerPlant||e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," passes."),pretty:"".concat(Xt(a)," passes.")}),e.phase){case be.Auction:var u;if(void 0==e.chosenPowerPlant)if(a.skipAuction=!0,e.auctionSkips++,1==e.auctionSkips&&"Russia"==e.map.name&&(null===(u=e.actualMarket)||void 0===u?void 0:u.length)>0&&(e.log.push({type:"event",event:"First pass, removing lowest numbered Power Plant (".concat(e.actualMarket[0].number,").")}),e.actualMarket.shift(),Ht(e)),e.players.some((function(e){return!e.skipAuction&&!e.isDropped})))lr(e);else{if(e.auctionSkips==e.players.length&&"Baden-Württemberg"==e.map.name){for(var l=[],d=0;d<2&&e.actualMarket.length>0;d++)l.push(e.actualMarket[0].number),e.actualMarket.shift(),Ht(e);e.log.push({type:"event",event:"Everyone passed, removing the two lowest numbered Power Plants (".concat(l.join(", "),").")})}else e.auctionSkips==e.players.length&&"original"==e.options.variant&&"China"!=e.map.name&&"Russia"!=e.map.name&&(e.log.push({type:"event",event:"Everyone passed, removing lowest numbered Power Plant (".concat(e.actualMarket[0].number,").")}),e.actualMarket.shift(),Ht(e));rr(e)}else if(e.options.fastBid)e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," passes."),pretty:"".concat(Xt(a)," passes.")}),fr(e,a,0);else{a.passed=!0;var f=e.players.filter((function(e){return!e.passed&&!e.skipAuction&&!e.isDropped}));if(1==f.length){var p=f[0];or(e,p,p.bid),(ke(e,p)>4||e.players.length>2&&ke(e,p)>3)&&!p.isDropped?ir(e,p.id):("China"==e.map.name&&3!=e.step||Ht(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),lr(e,!0)):rr(e))}else cr(e)}break;case be.Resources:if("India"==e.map.name&&e.chosenResource?e.chosenResource=void 0:a.passed=!0,"Korea"==e.map.name&&(e.chosenSide=void 0),0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length?(e.players.forEach((function(e){e.passed=e.isDropped})),e.phase=be.Building,"India"==e.map.name&&(e.citiesBuiltInCurrentRound=0),ir(e,e.playerOrder[e.players.length-1]),e.players[e.currentPlayers[0]].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[e.currentPlayers[0]].passed=!0,ur(e))):ur(e),"India"==e.map.name)while(e.players[e.currentPlayers[0]].passed)ur(e);break;case be.Building:if(a.passed=!0,0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var h=Math.max.apply(Math,_(e.players.map((function(e){return e.cities.length}))));if(1==e.step){var g=e.players.reduce((function(e,n){return e+n.cities.length}),0),y=g>=e.map.cities.length;if((h>=e.citiesToStep2||y)&&"Middle East"!=e.map.name){var m=e.actualMarket.shift();if(e.log.push({type:"event",event:"Starting Step 2, Power Plant ".concat(null===m||void 0===m?void 0:m.number," discarded.")}),e.step=2,"Spain & Portugal"==e.map.name&&(e.powerPlantsDeck.find((function(e){return 18==e.number}))||(e.powerPlantsDeck.unshift(qt(27)),e.powerPlantsDeck.unshift(qt(22)),e.powerPlantsDeck.unshift(qt(18)))),"Europe"==e.map.name){var v=[].concat(_(e.actualMarket),_(e.futureMarket));v.sort((function(e,n){return e.number-n.number})),e.actualMarket=v.slice(0,4),e.futureMarket=v.slice(4)}else Ht(e)}}h>=e.citiesToEndGame?(e.phase=be.GameEnd,e.currentPlayers=[],er(e),"India"==e.map.name&&e.citiesBuiltInCurrentRound>2*e.players.length&&e.players.forEach((function(n){var t=e.paymentTable[n.citiesPowered]-3*n.cities.length;n.money+=Math.max(t,0),n.totalIncome+=Math.max(t,0)})),e.uraniumMineMarket&&_(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Ce(e,t);if(r.mines>0&&r.income>0){var o,a=null!==(o=t.name)&&void 0!==o?o:"Player ".concat(t.id);e.log.push({type:"event",event:"".concat(a," sells uranium for ").concat(r.income," Elektro (").concat(r.cities," cities × $").concat(r.price,", ").concat(r.mines," mine(s)).")})}})),e.log.push({type:"event",event:"Game Ended!"})):(e.players.forEach((function(e){e.passed=e.isDropped,e.powerPlantsNotUsed=e.powerPlants.map((function(e){return e.number}))})),e.phase=be.Bureaucracy,e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].passed&&!e.players[n].isDropped})),"India"==e.map.name&&(e.players.forEach((function(n){return n.targetCitiesPowered=nr(e,n)})),e.citiesBuiltInCurrentRound>2*e.players.length&&e.log.push({type:"event",event:"Power outage! ".concat(e.citiesBuiltInCurrentRound," built this round, which is more than twice the number of players.")})),"China"==e.map.name&&e.step<=2?Jt(e):0==e.futureMarket.length&&(e.step=3,Vt(e)))}else ur(e);break;case be.Bureaucracy:a.passed=!0;var b=Math.min(a.cities.length,a.citiesPowered),w=e.paymentTable[b];if("India"==e.map.name&&e.citiesBuiltInCurrentRound>2*e.players.length&&(w-=3*a.cities.length,w=Math.max(w,0)),a.money+=w,e.options.trackTotalSpent&&(a.totalIncome+=w),a.citiesPowered=0,"India"==e.map.name&&(a.targetCitiesPowered=0),0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var x,k,P,S,M,C,B,R;if(e.uraniumMineMarket){_(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Ce(e,t);if(r.mines>0){var o,a=null!==(o=t.name)&&void 0!==o?o:"Player ".concat(t.id);e.log.push({type:"event",event:r.income>0?"".concat(a," sells uranium for ").concat(r.income," Elektro (").concat(r.cities," cities × $").concat(r.price,", ").concat(r.mines," mine(s))."):"".concat(a,"'s uranium mines earn nothing (market full).")})}}));var A=Be(e,e.map.uraniumMineResupply[e.players.length-2][e.step-1]);A>0&&e.log.push({type:"event",event:"Removing ".concat(A," uranium from the mine market (cheapest slots).")})}var L,O,G=(null!==(x=null===(k=e.coalPrices)||void 0===k?void 0:k.length)&&void 0!==x?x:Ae[me.Coal].length)-e.coalMarket,j=(null!==(P=null===(S=e.oilPrices)||void 0===S?void 0:S.length)&&void 0!==P?P:Ae[me.Oil].length)-e.oilMarket,D=(null!==(M=null===(C=e.garbagePrices)||void 0===C?void 0:C.length)&&void 0!==M?M:Ae[me.Garbage].length)-e.garbageMarket,N=(null!==(B=null===(R=e.uraniumPrices)||void 0===R?void 0:R.length)&&void 0!==B?B:Ae[me.Uranium].length)-e.uraniumMarket,z=0,T=0,E=0;if(e.coalResupplyNorth){var K=e.coalPricesNorth.length-e.coalMarketNorth,I=e.oilPricesNorth.length-e.oilMarketNorth,U=e.garbagePricesNorth.length-e.garbageMarketNorth;z=Math.min(e.coalSupply,e.coalResupplyNorth[e.players.length-2][e.step-1],K),e.coalMarketNorth+=z,e.coalSupply-=z,T=Math.min(e.oilSupply,e.oilResupplyNorth[e.players.length-2][e.step-1],I),e.oilMarketNorth+=T,e.oilSupply-=T,E=Math.min(e.garbageSupply,e.garbageResupplyNorth[e.players.length-2][e.step-1],U),e.garbageMarketNorth+=E,e.garbageSupply-=E}if(void 0!==e.coalStorage){var W=Math.min(e.coalResupply[e.players.length-2][e.step-1],G),H=Math.min(e.coalStorage,W),F=Math.min(e.coalSupply,W-H);L=H+F,e.coalMarket+=L,e.coalStorage-=H,e.coalSupply-=F}else L=Math.min(e.coalSupply,e.coalResupply[e.players.length-2][e.step-1],G),e.coalMarket+=L,e.coalSupply-=L;if("Middle East"==e.map.name){0==e.oilMarket&&(e.oilPrices=Ae[me.Oil]),O=e.oilResupply[e.players.length-2][e.step-1];for(var Y=0;Y<O;Y++)e.oilSupply>0?(e.oilMarket++,e.oilSupply--):(e.oilPrices.pop(),e.oilPrices.unshift(1))}else O=Math.min(e.oilSupply,e.oilResupply[e.players.length-2][e.step-1],j),e.oilMarket+=O,e.oilSupply-=O;var V=Math.min(e.garbageSupply,e.garbageResupply[e.players.length-2][e.step-1],D);e.garbageMarket+=V,e.garbageSupply-=V;var J=0;if(("recharged"!=e.options.variant||"Germany"!=e.options.map&&"Italy"!=e.options.map||!e.card39Bought)&&(J=Math.min(e.uraniumSupply,e.uraniumResupply[e.players.length-2][e.step-1],N),e.uraniumMarket+=J,e.uraniumSupply-=J),e.coalResupplyNorth?e.log.push({type:"event",event:"Resupplying resources — North: [".concat(z,", ").concat(T,", ").concat(E,"], South: [").concat(L,", ").concat(O,", ").concat(V,", ").concat(J,"].")}):e.log.push({type:"event",event:"Resupplying resources: [".concat(L,", ").concat(O,", ").concat(V,", ").concat(J,"].")}),"Middle East"==e.map.name&&2==e.step&&e.futureMarket.length>0){var $=e.futureMarket.pop();e.log.push({type:"event",event:"Putting Power Plant ".concat($.number," on the bottom of the deck.")}),e.powerPlantsDeck.push($),Ht(e),$=e.futureMarket.length?e.futureMarket.pop():e.actualMarket.pop(),e.log.push({type:"event",event:"Putting Power Plant ".concat($.number," on the bottom of the deck.")}),e.powerPlantsDeck.push($),Ht(e)}else if(e.futureMarket.length>0){if("Benelux"==e.map.name&&("original"==e.options.variant||e.discardSmallestPlant)){var q=e.actualMarket[0];e.log.push({type:"event",event:"Removing smallest plant, Power Plant ".concat(q.number,".")}),e.actualMarket.shift(),Ht(e),e.discardSmallestPlant=!1}var Z;if("Quebec"==e.map.name){var X=e.futureMarket.filter((function(e){return e.type!=ve.Wind}));if(Z=X.pop(),Z)e.futureMarket=e.futureMarket.filter((function(e){var n;return e.number!=(null===(n=Z)||void 0===n?void 0:n.number)}));else{var Q=e.actualMarket.filter((function(e){return e.type!=ve.Wind}));Z=Q.pop(),Z&&(e.actualMarket=e.actualMarket.filter((function(e){var n;return e.number!=(null===(n=Z)||void 0===n?void 0:n.number)})))}}else Z=e.futureMarket.pop();Z&&(e.log.push({type:"event",event:"Putting Power Plant ".concat(Z.number," on the bottom of the deck.")}),e.powerPlantsDeck.push(Z),Ht(e))}else e.actualMarket.length>0&&("China"!=e.map.name||3==e.step)&&(e.log.push({type:"event",event:"Discarding Power Plant ".concat(e.actualMarket[0].number,".")}),e.actualMarket.shift(),Ht(e));e.round++,"Baden-Württemberg"!=e.map.name&&ar(e),e.players.forEach((function(e){e.passed=e.isDropped})),e.auctionSkips=0,e.actualMarket.length>0?(e.phase=be.Auction,0==e.futureMarket.length&&"China"!=e.map.name&&(e.step=3,Vt(e)),e.plantDiscountActive="recharged"==e.options.variant&&"China"!=e.map.name&&"Russia"!=e.map.name&&"Baden-Württemberg"!=e.map.name,ir(e,e.playerOrder[0])):rr(e)}else e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].passed&&!e.players[n].isDropped}));break}break;case _e.DiscardPowerPlant:Ge(n),n.extra||e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discards Power Plant ").concat(n.data,"."),pretty:"".concat(Xt(a)," discards Power Plant <b>").concat(n.data,"</b>.")});var ee=a.powerPlants.find((function(e){return e.number==n.data}));if(a.powerPlants=a.powerPlants.filter((function(e){return e.number!=n.data})),Wt(a),n.extra){var ne=[];switch(ee.type){case ve.Coal:e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],ne.push(n.extra[0]+" Coal");break;case ve.Oil:e.oilSupply+=n.extra[0],a.oilLeft-=n.extra[0],ne.push(n.extra[0]+" Oil");break;case ve.Garbage:e.garbageSupply+=n.extra[0],a.garbageLeft-=n.extra[0],ne.push(n.extra[0]+" Garbage");break;case ve.Uranium:e.uraniumSupply+=n.extra[0],a.uraniumLeft-=n.extra[0],ne.push(n.extra[0]+" Uranium");break;case ve.Hybrid:n.extra[0]>0&&(e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],ne.push(n.extra[0]+" Coal")),n.extra[1]>0&&(e.oilSupply+=n.extra[1],a.oilLeft-=n.extra[1],ne.push(n.extra[1]+" Oil"));break}e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discards Power Plant ").concat(n.data," and ").concat(ne.join(", "),"."),pretty:"".concat(Xt(a)," discards Power Plant <b>").concat(n.data,"</b> and ").concat(ne.join(", "),".")}),"China"==e.map.name&&3!=e.step||Ht(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?lr(e,!0):rr(e)}else{var te=[],re=a.hybridCapacity>0?Math.max(0,a.oilLeft-a.oilCapacity):0;a.coalCapacity+a.hybridCapacity<a.coalLeft+re&&te.push(me.Coal),re=a.hybridCapacity>0?Math.max(0,a.coalLeft-a.coalCapacity):0,a.oilCapacity+a.hybridCapacity<a.oilLeft+re&&te.push(me.Oil),a.garbageLeft>a.garbageCapacity&&(e.garbageSupply+=a.garbageLeft-a.garbageCapacity,a.garbageLeft=a.garbageCapacity),a.uraniumLeft>a.uraniumCapacity&&(e.uraniumSupply+=a.uraniumLeft-a.uraniumCapacity,a.uraniumLeft=a.uraniumCapacity),1==te.length&&(te[0]==me.Coal?(e.coalSupply+=a.coalLeft-a.coalCapacity,a.coalLeft=a.coalCapacity):te[0]==me.Oil&&(e.oilSupply+=a.oilLeft-a.oilCapacity,a.oilLeft=a.oilCapacity),te.pop()),0==te.length&&("China"==e.map.name&&3!=e.step||Ht(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?lr(e,!0):rr(e))}break;case _e.DiscardResources:Ge(n),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discarded a ").concat(n.data,"."),pretty:"".concat(Xt(a)," discarded a <b>").concat(n.data,"</b>.")}),n.data==me.Coal?(a.coalLeft--,e.coalSupply++):n.data==me.Oil&&(a.oilLeft--,e.oilSupply++);var oe=[],ae=a.hybridCapacity>0?Math.max(0,a.oilLeft-a.oilCapacity):0;a.coalCapacity+a.hybridCapacity<a.coalLeft+ae&&oe.push(me.Coal),ae=a.hybridCapacity>0?Math.max(0,a.coalLeft-a.coalCapacity):0,a.oilCapacity+a.hybridCapacity<a.oilLeft+ae&&oe.push(me.Oil),1==oe.length&&(oe[0]==me.Coal?a.coalLeft--:oe[0]==me.Oil&&a.oilLeft--,oe.pop()),0==oe.length&&("China"==e.map.name&&3!=e.step||Ht(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?lr(e,!0):rr(e));break;case _e.BuyResource:Ge(n),e.chosenResource=n.data.resource,n.data.side&&(e.chosenSide=n.data.side);var ie,se="north"===n.data.side;switch(n.data.resource){case me.Coal:if(se){var ce=e.coalPricesNorth;ie=ce[ce.length-e.coalMarketNorth],a.coalLeft++,e.coalMarketNorth--}else if(n.data.fromStorage)ie=8,a.coalLeft++,e.coalStorage--;else if(0==e.coalMarket)ie=8,a.coalLeft++,e.coalSupply--,n.fromSupply=!0;else{var ue,le=null!==(ue=e.coalPrices)&&void 0!==ue?ue:Ae[me.Coal];ie=le[le.length-e.coalMarket],a.coalLeft++,e.coalMarket--}break;case me.Oil:if(se){var de=e.oilPricesNorth;ie=de[de.length-e.oilMarketNorth],a.oilLeft++,e.oilMarketNorth--}else{var fe,pe=null!==(fe=e.oilPrices)&&void 0!==fe?fe:Ae[me.Oil];ie=pe[pe.length-e.oilMarket],a.oilLeft++,e.oilMarket--}break;case me.Garbage:if(se){var he=e.garbagePricesNorth;ie=he[he.length-e.garbageMarketNorth],a.garbageLeft++,e.garbageMarketNorth--}else{var ge,ye=null!==(ge=e.garbagePrices)&&void 0!==ge?ge:Ae[me.Garbage];if(ie=ye[ye.length-e.garbageMarket],"Central Europe"==e.map.name){var xe=a.cities.filter((function(e){return"Wien"==e.name}));(null===xe||void 0===xe?void 0:xe.length)>0&&ie--}a.garbageLeft++,e.garbageMarket--}break;case me.Uranium:var Pe,Se=null!==(Pe=e.uraniumPrices)&&void 0!==Pe?Pe:Ae[me.Uranium];ie=Se[Se.length-e.uraniumMarket],a.uraniumLeft++,e.uraniumMarket--;break}a.money-=ie,e.options.trackTotalSpent&&(a.totalSpentResources+=ie),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," buys ").concat(n.data.resource," for $").concat(ie,"."),pretty:"".concat(Xt(a)," buys <b>").concat(n.data.resource,'</b> for <span style="color: green">$').concat(ie,"</span>.")});break;case _e.Build:Ge(n);var Me=!1;if("Japan"===e.map.name&&!a.usedFreeJump&&a.cities.length>=1)if(1===e.round&&e.map.startingCities){var Re=new Set(e.map.startingCities);Re.has(n.data.name)&&(Me=!0)}else n.data.freeJump&&(Me=!0);var Le=e.players.filter((function(e){return e.cities.find((function(e){return e.name==n.data.name}))})).length;if(a.cities.push({name:n.data.name,position:Le}),a.money-=n.data.price,e.options.trackTotalSpent){var Oe=e.map.cities.find((function(e){return e.name==n.data.name}));Oe.singleOccupancy?a.totalSpentConnections+=n.data.price:(a.totalSpentCities+=10+5*Le,a.totalSpentConnections+=n.data.price-(10+5*Le))}e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," builds on ").concat(n.data.name," for $").concat(n.data.price,"."),pretty:"".concat(Xt(a)," builds on <b>").concat(n.data.name,'</b> for <span style="color: green">$').concat(n.data.price,"</span>.")}),Me&&(a.usedFreeJump=!0),"India"==e.map.name&&e.citiesBuiltInCurrentRound++,"original"==e.options.variant&&e.actualMarket.length>0&&a.cities.length>=e.actualMarket[0].number&&"China"!=e.map.name&&"Russia"!=e.map.name&&"Baden-Württemberg"!=e.map.name&&(e.actualMarket.shift(),Ht(e));break;case _e.UsePowerPlant:Ge(n),a.powerPlantsNotUsed=a.powerPlantsNotUsed.filter((function(e){return e!=n.data.powerPlant})),n.data.resourcesSpent.forEach((function(n){switch(n){case me.Coal:a.coalLeft--,void 0!==e.coalStorage?e.coalStorage++:e.coalSupply++;break;case me.Oil:a.oilLeft--,e.oilSupply++;break;case me.Garbage:a.garbageLeft--,e.garbageSupply++;break;case me.Uranium:a.uraniumLeft--,e.uraniumSupply++;break}})),a.citiesPowered+=n.data.citiesPowered,e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," uses Power Plant ").concat(n.data.powerPlant,"."),pretty:"".concat(Xt(a)," uses Power Plant <b>").concat(n.data.powerPlant,"</b>.")});break;case _e.Undo:Ge(n);var je=a.lastMove;switch(null===je||void 0===je?void 0:je.name){case _e.ChoosePowerPlant:39==je.data&&(e.card39Bought=!1),je.usedPlantDiscount&&(e.plantDiscountActive=!0),e.chosenPowerPlant=void 0,e.auctioningPlayer=void 0,e.currentPlayers=[a.id],e.log.pop();break;case _e.BuyResource:var De,Te="north"===je.data.side;switch(je.data.resource){case me.Coal:if(Te){a.coalLeft--,e.coalMarketNorth++;var Ee=e.coalPricesNorth;De=Ee[Ee.length-e.coalMarketNorth]}else if(je.data.fromStorage)De=8,a.coalLeft--,e.coalStorage++;else if(je.fromSupply)De=8,a.coalLeft--,e.coalSupply++;else{var Ke;a.coalLeft--,e.coalMarket++;var Ie=null!==(Ke=e.coalPrices)&&void 0!==Ke?Ke:Ae[me.Coal];De=Ie[Ie.length-e.coalMarket]}break;case me.Oil:if(Te){a.oilLeft--,e.oilMarketNorth++;var We=e.oilPricesNorth;De=We[We.length-e.oilMarketNorth]}else{var He;a.oilLeft--,e.oilMarket++;var Fe=null!==(He=e.oilPrices)&&void 0!==He?He:Ae[me.Oil];De=Fe[Fe.length-e.oilMarket]}break;case me.Garbage:if(Te){a.garbageLeft--,e.garbageMarketNorth++;var Ye=e.garbagePricesNorth;De=Ye[Ye.length-e.garbageMarketNorth]}else{var Ve;a.garbageLeft--,e.garbageMarket++;var Je=null!==(Ve=e.garbagePrices)&&void 0!==Ve?Ve:Ae[me.Garbage];if(De=Je[Je.length-e.garbageMarket],"Central Europe"==e.map.name){var $e=a.cities.filter((function(e){return"Wien"==e.name}));(null===$e||void 0===$e?void 0:$e.length)>0&&De--}}break;case me.Uranium:var qe;a.uraniumLeft--,e.uraniumMarket++;var Ze=null!==(qe=e.uraniumPrices)&&void 0!==qe?qe:Ae[me.Uranium];De=Ze[Ze.length-e.uraniumMarket];break}if(a.money+=De,e.options.trackTotalSpent&&(a.totalSpentResources-=De),"India"==e.map.name&&(e.chosenResource=void 0),e.log.pop(),"Korea"==e.map.name&&e.chosenSide){for(var Xe=!1,Qe=e.log.length-1;Qe>=0;Qe--){var en=e.log[Qe];if("move"===en.type){Xe=en.player===t&&en.move.name===_e.BuyResource;break}}Xe||(e.chosenSide=void 0)}break;case _e.Build:a.cities.pop(),a.money+=je.data.price;var nn=e.players.filter((function(e){return e.cities.find((function(e){return e.name==je.data.name}))})).length;if(e.options.trackTotalSpent&&(a.totalSpentCities-=10+5*nn,a.totalSpentConnections-=je.data.price-(10+5*nn)),e.log.pop(),"India"==e.map.name&&e.citiesBuiltInCurrentRound--,"Japan"===e.map.name&&a.usedFreeJump){var tn=ze(e.map.connections,a.cities.map((function(e){return e.name})));tn<2&&(a.usedFreeJump=!1)}break;case _e.UsePowerPlant:a.powerPlantsNotUsed.push(je.data.powerPlant),je.data.resourcesSpent.forEach((function(n){switch(n){case me.Coal:a.coalLeft++,e.coalSupply--;break;case me.Oil:a.oilLeft++,e.oilSupply--;break;case me.Garbage:a.garbageLeft++,e.garbageSupply--;break;case me.Uranium:a.uraniumLeft++,e.uraniumSupply--;break}})),a.citiesPowered-=je.data.citiesPowered;var rn=e.log.slice().reverse(),on=e.log.length-rn.findIndex((function(e){return"move"==e.type&&e.player==a.id}))-1;e.log.splice(on,1);break}}if(a.availableMoves=null,n.name==_e.Undo){var an=e.log.slice().reverse(),sn=an.find((function(e){return"move"==e.type&&e.player==a.id}));a.lastMove=null===sn||void 0===sn?void 0:sn.move}else a.lastMove=n;return e.cardsLeft=e.powerPlantsDeck.length,e.nextCardWeak="recharged"==e.options.variant&&e.cardsLeft>0&&e.powerPlantsDeck[0].number<=15,e.currentPlayers.forEach((function(n){return e.players[n].availableMoves=Ne(e,e.players[n])})),e}function It(e){return e.phase==be.GameEnd}function Ut(e,n){var t=Zt(e),r=Object(we["cloneDeep"])(t);void 0!=n&&"secret"==e.seed&&e.knownPowerPlantDeck&&(r.map=e.map,r.powerPlantsDeck=Object(we["cloneDeep"])(e.knownPowerPlantDeck),r.actualMarket=r.powerPlantsDeck.splice(0,4),r.futureMarket=r.powerPlantsDeck.splice(0,4),r.players[r.currentPlayers[0]].availableMoves=Ne(r,r.players[r.currentPlayers[0]]),r.powerPlantDeckAfterStep3=e.knownPowerPlantDeckStep3,r.knownPowerPlantDeck=r.actualMarket.concat(r.futureMarket));var o,a=null!=n?e.log.slice(0,n):e.log,i=P(a);try{for(i.s();!(o=i.n()).done;){var s=o.value;switch(s.type){case"event":if(s.event.endsWith("was dropped")){var c=+s.event.split(" ")[1];r.players[c].isDropped=!0}break;case"move":Kt(r,s.move,s.player,!0);break}}}catch(u){i.e(u)}finally{i.f()}return r}function Wt(e){e.coalCapacity=e.oilCapacity=e.garbageCapacity=e.uraniumCapacity=e.hybridCapacity=0,e.powerPlants.forEach((function(n){switch(n.type){case ve.Coal:e.coalCapacity+=2*n.cost;break;case ve.Oil:e.oilCapacity+=2*n.cost;break;case ve.Garbage:n.storage?e.garbageCapacity+=n.storage:e.garbageCapacity+=2*n.cost;break;case ve.Uranium:e.uraniumCapacity+=2*n.cost;break;case ve.Hybrid:e.hybridCapacity+=2*n.cost;break}}))}function Ht(e){var n=e.powerPlantsDeck.shift();if(n){if(3==e.step?e.knownPowerPlantDeckStep3&&e.knownPowerPlantDeckStep3.push(n):e.knownPowerPlantDeck&&e.knownPowerPlantDeck.push(n),"original"==e.options.variant&&"China"!=e.map.name){var t=Math.max.apply(Math,_(e.players.map((function(e){return e.cities.length}))));while(n.number<=t){var r;if(e.log.push({type:"event",event:"Power plant ".concat(null===(r=n)||void 0===r?void 0:r.number," discarded.")}),!(e.powerPlantsDeck.length>0))break;n=e.powerPlantsDeck.shift(),3==e.step?e.knownPowerPlantDeckStep3&&e.knownPowerPlantDeckStep3.push(n):e.knownPowerPlantDeck&&e.knownPowerPlantDeck.push(n)}}var o=!1;if(99==n.number){if(e.powerPlantDeckAfterStep3?e.powerPlantsDeck=e.powerPlantDeckAfterStep3:"China"==e.map.name?e.step=3:e.powerPlantsDeck=De(e.powerPlantsDeck,e.seed),e.phase!=be.Auction)if("Middle East"==e.map.name&&1==e.step){var a=[].concat(_(e.actualMarket),_(e.futureMarket),[n]);a.sort((function(e,n){return e.number-n.number})),e.actualMarket=a.slice(0,4),e.futureMarket=a.slice(4),Yt(e),o=!0}else{"UK & Ireland"==e.map.name&&1==e.step&&(e.log.push({type:"event",event:"Starting Step 2 (Step 3 card drawn before Step 2 threshold)."}),e.step=2);var i=e.actualMarket.shift();e.log.push({type:"event",event:"Step 3 will begin next phase, Power Plant ".concat(null===i||void 0===i?void 0:i.number," discarded.")});var s=[].concat(_(e.actualMarket),_(e.futureMarket));s.sort((function(e,n){return e.number-n.number})),e.actualMarket=s,e.futureMarket=[]}}else{if(e.plantDiscountActive&&n.number<e.actualMarket[0].number)return e.log.push({type:"event",event:"Power Plant ".concat(n.number," drawn from the deck and discarded.")}),e.plantDiscountActive=!1,void Ht(e);e.log.push({type:"event",event:"Power Plant ".concat(n.number," drawn from the deck.")})}if("China"==e.map.name&&n.type!=ve.Step3){var c=[].concat(_(e.actualMarket),[n]);c.sort((function(e,n){return e.number-n.number})),e.actualMarket=c}else if(!o){var u=[].concat(_(e.actualMarket),_(e.futureMarket),[n]);u.sort((function(e,n){return e.number-n.number})),0==e.futureMarket.length?"Russia"==e.map.name?(e.actualMarket=u.slice(0,4),e.futureMarket=[]):(e.actualMarket=u.slice(0,6),e.futureMarket=[]):"Russia"==e.map.name?(e.actualMarket=u.slice(0,3),e.futureMarket=u.slice(3)):"Benelux"==e.map.name&&u[4].type==ve.Wind?(e.actualMarket=u.slice(0,5),e.futureMarket=u.slice(5)):(e.actualMarket=u.slice(0,4),e.futureMarket=u.slice(4)),"Middle East"==e.map.name&&1==e.step&&Ft(e)}}}function Ft(e){var n=e.actualMarket.find((function(e){return e.type==ve.Garbage||e.type==ve.Uranium})),t=function(){$t(e,n),[6,11,14].includes(n.number)?e.log.push({type:"event",event:"Removing Power Plant ".concat(n.number," from game.")}):(e.powerPlantsDeck.push(n),e.log.push({type:"event",event:"Sending Power Plant ".concat(n.number," to the bottom of the deck.")}));var t=e.futureMarket.filter((function(e){return e.type!=ve.Garbage&&e.type!=ve.Uranium})),r=t.length>0?t[0].number:100;if(0==e.powerPlantsDeck.filter((function(e){return e.type!=ve.Garbage&&e.type!=ve.Uranium||e.number>r})).length)return e.log.push({type:"event",event:"No suitable power plants available to draw."}),"break";Ht(e),n=e.actualMarket.find((function(e){return e.type==ve.Garbage||e.type==ve.Uranium}))};while(n){var r=t();if("break"===r)break}}function Yt(e){var n=e.futureMarket.pop();e.powerPlantsDeck=De(e.powerPlantsDeck,e.seed),e.powerPlantsDeck.push(n),Ht(e),e.log.push({type:"event",event:"Step 2 will begin next phase, discarding two power plants."}),e.step=2;var t=e.actualMarket.shift();t&&(e.log.push({type:"event",event:"Power Plant ".concat(t.number," discarded to start step 2.")}),Ht(e));var r=e.actualMarket.shift();r&&(e.log.push({type:"event",event:"Power Plant ".concat(r.number," discarded to start step 2.")}),Ht(e))}function Vt(e){if("Australia"===e.map.name&&(!e.coalPrices||3!==e.coalPrices[0])){var n=[3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8,9,9,9,10,10,10];e.coalPrices=[].concat(n),e.oilPrices=[].concat(n),e.garbagePrices=[].concat(n),e.log.push({type:"event",event:"CO2 tax (Step 3): the $1 and $2 resource spaces close; the six cheapest tokens of each resource move to the new $9 and $10 spaces."})}}function Jt(e){var n=0;2==e.players.length||3==e.players.length?n=1:4==e.players.length||5==e.players.length?n=2:6==e.players.length&&(n=3);for(var t=e.actualMarket.length,r=e.players.length-1,o=Math.max(n,r-t),a=0;a<o;a++){if(3==e.step)break;Ht(e)}while(2==e.players.length&&e.actualMarket.length<2&&3!=e.step)Ht(e);if(3==e.step){e.actualMarket=e.actualMarket.filter((function(e){return e.type!=ve.Step3}));while(e.actualMarket.length<4&&e.powerPlantsDeck.length>0)Ht(e)}else{var i=Math.max(2,e.players.length-1);while(e.actualMarket.length>i)e.actualMarket.shift()}}function $t(e,n){e.actualMarket.splice(e.actualMarket.findIndex((function(e){return e.number==n.number})),1)}function qt(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"India"==n?Je.find((function(n){return n.number==e})):Ve.find((function(n){return n.number==e}))}function Zt(e){var n=Et(e.players.length,e.options,e.seed);return n.players.forEach((function(n,t){n.name=e.players[t].name,n.isAI=e.players[t].isAI})),n}function Xt(e){return'<span style="background-color: '.concat(Bt[e.id],'; font-weight: bold; padding: 0 3px;">').concat(e.name,"</span>")}function Qt(e){return Object(we["cloneDeep"])(e.players).sort((function(e,n){return e.citiesPowered==n.citiesPowered?e.money==n.money?e.cities.length-n.cities.length:e.money-n.money:e.citiesPowered-n.citiesPowered})).reverse()}function er(e){e.players.forEach((function(n){n.citiesPowered=nr(e,n)}))}function nr(e,n){for(var t=n.powerPlants.filter((function(n){return!xe(e,n)})),r=[],o=function(e){var n=[];t.forEach((function(t,r){e&Math.pow(2,r)&&n.push(t)})),r.push(n)},a=0;a<Math.pow(2,t.length);a++)o(a);var i=0;return r.forEach((function(e){if(tr(n,e)){var t=e.map((function(e){return e.citiesPowered})).reduce((function(e,n){return e+n}),0);i=Math.max(i,t)}})),Math.min(n.cities.length,i)}function tr(e,n){var t=n.filter((function(e){return e.type==ve.Coal})).map((function(e){return e.cost})).reduce((function(e,n){return e+n}),0),r=n.filter((function(e){return e.type==ve.Oil})).map((function(e){return e.cost})).reduce((function(e,n){return e+n}),0),o=n.filter((function(e){return e.type==ve.Garbage})).map((function(e){return e.cost})).reduce((function(e,n){return e+n}),0),a=n.filter((function(e){return e.type==ve.Uranium})).map((function(e){return e.cost})).reduce((function(e,n){return e+n}),0),i=n.filter((function(e){return e.type==ve.Hybrid})).map((function(e){return e.cost})).reduce((function(e,n){return e+n}),0);return!(t>e.coalLeft||r>e.oilLeft||o>e.garbageLeft||a>e.uraniumLeft)&&!(i>e.coalLeft-t+e.oilLeft-r)}function rr(e){if("Baden-Württemberg"==e.map.name&&ar(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.forEach((function(e){e.skipAuction=!1})),"recharged"==e.options.variant&&(e.plantDiscountActive?(e.plantDiscountActive=!1,e.actualMarket.length>0&&(e.log.push({type:"event",event:"Discarding Power Plant ".concat(e.actualMarket[0].number,".")}),e.actualMarket.shift(),Ht(e))):"Benelux"==e.map.name&&(e.discardSmallestPlant=!0)),e.futureMarket.find((function(e){return 99==e.number})))if("Middle East"==e.map.name&&1==e.step)Yt(e);else{var n=e.actualMarket.shift();e.futureMarket.pop(),e.log.push({type:"event",event:"Starting Step 3, Power Plant ".concat(null===n||void 0===n?void 0:n.number," discarded.")}),e.step=3,Vt(e),e.actualMarket=[].concat(_(e.actualMarket),_(e.futureMarket)),e.futureMarket=[]}e.phase=be.Resources,ir(e,e.playerOrder[e.players.length-1])}function or(e,n,t){n.powerPlants.push(e.chosenPowerPlant),n.money-=t,e.options.trackTotalSpent&&(n.totalSpentPlants+=t),n.skipAuction=!0,Wt(n),e.log.push({type:"event",event:"".concat(n.name," wins the bid and pays ").concat(t,"."),pretty:"".concat(Xt(n),' wins the bid and pays <span style="color: green">$').concat(t,"</span>.")}),$t(e,e.chosenPowerPlant),e.chosenPowerPlant=e.currentBid=void 0}function ar(e){e.playerOrder=Object(we["cloneDeep"])(e.players).sort((function(e,n){var t=e.cities.length,r=n.cities.length;return t==r?Math.max.apply(Math,_(e.powerPlants.map((function(e){return e.number}))))-Math.max.apply(Math,_(n.powerPlants.map((function(e){return e.number})))):t-r})).map((function(e){return e.id})).reverse()}function ir(e,n){e.currentPlayers=[n],e.players[n].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[n].passed=!0,sr(e))}function sr(e){e.phase==be.Auction?void 0==e.chosenPowerPlant?lr(e):cr(e):ur(e)}function cr(e){var n=e.currentPlayers[0];e.currentPlayers=[(n+1)%e.players.length],e.players[e.currentPlayers[0]].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[e.currentPlayers[0]].passed=!0,e.players[e.currentPlayers[0]].skipAuction=!0,cr(e)),(e.players[e.currentPlayers[0]].skipAuction||e.players[e.currentPlayers[0]].passed)&&e.players.some((function(e){return!e.skipAuction&&!e.passed&&!e.isDropped}))&&cr(e)}function ur(e){var n=e.playerOrder.indexOf(e.currentPlayers[0]);e.currentPlayers=[e.playerOrder[(n-1+e.players.length)%e.players.length]],e.players[e.currentPlayers[0]].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[e.currentPlayers[0]].passed=!0,ur(e))}function lr(e){var n,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(t)n=e.playerOrder[0];else{var r=e.playerOrder.indexOf(e.currentPlayers[0]);n=e.playerOrder[(r+1)%e.players.length]}e.currentPlayers=[n];var o=e.players[n];o.isDropped&&(o.passed=!0,o.skipAuction=!0),(o.skipAuction||o.passed)&&e.players.some((function(e){return!e.skipAuction&&!e.passed&&!e.isDropped}))&&lr(e)}function dr(e){if(!e.coalResupply){var n=ut.find((function(n){return n.name===e.map.name}));null!==n&&void 0!==n&&n.resupply?(e.coalResupply=n.resupply[0],e.oilResupply=n.resupply[1],e.garbageResupply=n.resupply[2],e.uraniumResupply=n.resupply[3]):(e.coalResupply=[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],e.oilResupply=[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],e.garbageResupply=[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],e.uraniumResupply=[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]);var t=e.players.length-2;e.resourceResupply=["[".concat(e.coalResupply[t][0],", ").concat(e.oilResupply[t][0],", ").concat(e.garbageResupply[t][0],", ").concat(e.uraniumResupply[t][0],"]"),"[".concat(e.coalResupply[t][1],", ").concat(e.oilResupply[t][1],", ").concat(e.garbageResupply[t][1],", ").concat(e.uraniumResupply[t][1],"]"),"[".concat(e.coalResupply[t][2],", ").concat(e.oilResupply[t][2],", ").concat(e.garbageResupply[t][2],", ").concat(e.uraniumResupply[t][2],"]")],e.coalResupplyNorth&&e.oilResupplyNorth&&e.garbageResupplyNorth&&(e.resourceResupplyNorth=["[".concat(e.coalResupplyNorth[t][0],", ").concat(e.oilResupplyNorth[t][0],", ").concat(e.garbageResupplyNorth[t][0],"]"),"[".concat(e.coalResupplyNorth[t][1],", ").concat(e.oilResupplyNorth[t][1],", ").concat(e.garbageResupplyNorth[t][1],"]"),"[".concat(e.coalResupplyNorth[t][2],", ").concat(e.oilResupplyNorth[t][2],", ").concat(e.garbageResupplyNorth[t][2],"]")])}}function fr(e,n,t){if(n.bid=t,e.currentPlayers=e.currentPlayers.filter((function(e){return e!==n.id})),0===e.currentPlayers.length){var r;(r=e.log).push.apply(r,_(e.hiddenLog)),e.hiddenLog=[];var o=e.players.map((function(e){return e.bid})).filter((function(e){return e>0})),a=e.minimunBid,i=Math.max.apply(Math,_(o)),s=e.players.filter((function(e){return!e.isDropped&&e.bid===i})),c=s[0].id;if(o.length>1){o.splice(o.indexOf(i),1);var u=Math.max.apply(Math,_(o));if(s.length>1)(function(){var n=e.auctioningPlayer;while(!s.find((function(e){return e.id==n})))n=(n+1)%e.players.length;a=u,c=n})();else{var l=e.auctioningPlayer;a=0;while(0==a)s[0].id==l?a=u:e.players[l].bid==u&&(a=u+1),l=(l+1)%e.players.length}}var d=e.players[c];or(e,d,a),(ke(e,d)>4||e.players.length>2&&ke(e,d)>3)&&!d.isDropped?ir(e,d.id):("China"==e.map.name&&3!=e.step||Ht(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),lr(e,!0)):rr(e))}}var pr,hr=function(){var e=this,n=e.$createElement,t=e._self._c||n;return 99==e.powerPlant.number?t("g",{attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+")"}},[t("rect",{attrs:{width:"60",height:"40",fill:e.getColor(),stroke:"black","stroke-width":"2",rx:"4"}}),t("text",{attrs:{"text-anchor":"middle",x:"30",y:"20",fill:"black"}},[e._v("Step 3")])]):t("g",{class:[{canClick:e.canClick}],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+")"},on:{click:function(n){e.canClick&&e.$emit("click")}}},[t("rect",{attrs:{width:"60",height:"40",fill:e.getColor(),stroke:e.hasDiscount?"palegreen":"black","stroke-width":"2",rx:"4"}}),e.hasDiscount?t("g",[t("rect",{attrs:{width:"12",height:"12",rx:"4",fill:"palegreen"}}),t("text",{staticStyle:{"font-size":"12px"},attrs:{"text-anchor":"middle",x:"6",y:"6",fill:"black"}},[e._v("$")])]):e._e(),t("g",{attrs:{transform:"translate(30, 10)"}},[t("text",{attrs:{"text-anchor":"middle",x:"1",y:"1",fill:"gray"}},[e._v(e._s(e.powerPlant.number))]),t("text",{attrs:{"text-anchor":"middle",fill:"white"}},[e._v(e._s(e.powerPlant.number))])]),t("g",{class:["piece"],attrs:{id:e.elId,transform:"translate(40, 20) scale(0.035)"}},[t("path",{attrs:{d:"M187.698 263.636V456.017L3 341.204V169.522L80.8579 108.141L187.698 263.636Z",fill:"white",stroke:"white","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361V300.164L187.698 456.017V263.636L395.724 136.361Z",fill:"white",stroke:"white","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361L187.698 263.636L80.8579 108.141L304.771 4L395.724 136.361Z",fill:"white",stroke:"white","stroke-width":"12","stroke-miterlimit":"10"}})]),t("text",{staticStyle:{"font-size":"12px"},attrs:{"text-anchor":"middle",x:"47",y:"28",fill:"black"}},[e._v(" "+e._s(e.powerPlant.citiesPowered)+" ")]),t("g",{attrs:{transform:"translate(5, 20)"}},[t("path",{attrs:{d:e.getResourcePath(),fill:"white"}})]),e.powerPlant.cost>0?t("text",{staticStyle:{"font-size":"12px"},attrs:{"text-anchor":"middle",x:"12.5",y:"27.5",fill:"black"}},[e._v(" "+e._s(e.powerPlant.cost)+" ")]):e._e(),t("g",{attrs:{transform:"translate(24, 22)"}},[t("path",{attrs:{d:"M0,3 L8,3 L8,0 L14,6 L8,12 L8,9 L0,9Z",fill:"white"}})]),t("defs",[t("linearGradient",{attrs:{id:"hybrid",x1:"0",y1:"0",x2:"100%",y2:"100%"}},[t("stop",{attrs:{offset:"50%","stop-color":"#8b4513"}}),t("stop",{attrs:{offset:"50%","stop-color":"#445"}})],1)],1)])},gr=[];(function(e){e[e["House"]=0]="House",e[e["Card"]=1]="Card",e[e["Coal"]=2]="Coal",e[e["Oil"]=3]="Oil",e[e["Garbage"]=4]="Garbage",e[e["Uranium"]=5]="Uranium",e[e["Hybrid"]=6]="Hybrid"})(pr||(pr={}));var yr=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"targetState",void 0),i(B(e),"pieceId",void 0),i(B(e),"transparent",void 0),i(B(e),"communicator",void 0),i(B(e),"ui",void 0),i(B(e),"pieceType",void 0),i(B(e),"currentX",0),i(B(e),"currentY",0),i(B(e),"mounted",!1),i(B(e),"transitioning",!1),i(B(e),"transitionCount",0),i(B(e),"moving",!1),e}return C(t,[{key:"startTransitioning",value:function(){var e=this;if(!this.transitioning){this.ui.waitingAnimations+=1,this.transitioning=!0,this.transitionCount+=1;var n=this.transitionCount;setTimeout((function(){n===e.transitionCount&&e.onTransitionEnd()}),1e3)}}},{key:"onTargetChanged",value:function(e,n){var t=this;this.targetState.x===this.currentX&&this.targetState.y===this.currentY||(!this.transitioning&&this.mounted&&(!n||e?this.startTransitioning():(this.moving=!0,setTimeout((function(){return t.moving=!1}),800))),this.mounted?setTimeout((function(){t.currentX=t.targetState.x,t.currentY=t.targetState.y})):(this.currentX=this.targetState.x,this.currentY=this.targetState.y))}},{key:"onTransitionEnd",value:function(){this.transitioning&&(this.transitioning=!1,this.ui.waitingAnimations=Math.max(this.ui.waitingAnimations-1,0))}},{key:"elId",get:function(){return this.transitioning||this.moving?"moving":void 0}}]),t}(d.a);z([he({default:function(){return{x:0,y:0,rotate:0}}})],yr.prototype,"targetState",void 0),z([he()],yr.prototype,"pieceId",void 0),z([he()],yr.prototype,"transparent",void 0),z([ie()],yr.prototype,"communicator",void 0),z([ie()],yr.prototype,"ui",void 0),z([ge("dragging"),ge("targetState",{immediate:!0})],yr.prototype,"onTargetChanged",null),yr=z([oe({created:function(){},mounted:function(){this.mounted=!0},beforeDestroy:function(){this.onTransitionEnd()}})],yr);var mr,vr,br=yr,wr=br;function xr(e,n,t,r,o,a,i,s){var c,u="function"===typeof e?e.options:e;if(n&&(u.render=n,u.staticRenderFns=t,u._compiled=!0),r&&(u.functional=!0),a&&(u._scopeId="data-v-"+a),i?(c=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(i)},u._ssrRegister=c):o&&(c=s?function(){o.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(u.functional){u._injectStyles=c;var l=u.render;u.render=function(e,n){return c.call(n),l(e,n)}}else{var d=u.beforeCreate;u.beforeCreate=d?[].concat(d,c):[c]}return{exports:e,options:u}}var kr=xr(wr,mr,vr,!1,null,null,null),_r=kr.exports,Pr=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"owner",void 0),i(B(e),"powerPlant",void 0),i(B(e),"canClick",void 0),i(B(e),"hasDiscount",void 0),e}return C(t,[{key:"getColor",value:function(){var e;switch(null===(e=this.powerPlant)||void 0===e?void 0:e.type){case ve.Coal:return"#8b4513";case ve.Oil:return"#445";case ve.Garbage:return"goldenrod";case ve.Uranium:return"red";case ve.Hybrid:return"url(#hybrid)";case ve.Wind:return"limegreen";case ve.Nuclear:return"dodgerblue";case ve.Step3:return"dodgerblue"}}},{key:"getResourcePath",value:function(){var e;switch(null===(e=this.powerPlant)||void 0===e?void 0:e.type){case ve.Coal:return"M0,3 L7.5,0 L15,3 L15,12 L7.5,15 L0,12Z";case ve.Oil:return"M3,2 A6,3 0 0,1 12,2 L12,12 A6,3 0 0,1 3,12Z";case ve.Garbage:return"M0,3 A7.5,3 0 0,1 15,3 L15,12 A7.5,3 0 0,1 0,12Z";case ve.Uranium:return"M1,2 l4,-2 l6,0 l4,2 l0,11 l-4,2 l-6,0 l-4,-2Z";case ve.Hybrid:return"M0,3 L7.5,0 L15,3 L15,12 L7.5,15 L0,12Z M9,1 A6,3 0 0,1 18,1 L18,10 A6,3 0 0,1 10,10Z";case ve.Wind:return"";case ve.Nuclear:return"";case ve.Step3:return""}}}]),t}(q(_r));z([he()],Pr.prototype,"owner",void 0),z([he()],Pr.prototype,"powerPlant",void 0),z([he()],Pr.prototype,"canClick",void 0),z([he({default:!1})],Pr.prototype,"hasDiscount",void 0),Pr=z([oe({created:function(){this.pieceType=pr.Card}})],Pr);var Sr=Pr,Mr=Sr,Cr=(t("11ac"),xr(Mr,hr,gr,!1,null,null,null)),Br=Cr.exports,Rr=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:[{canClick:e.canClick}],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+") scale("+e.scale+")",opacity:e.transparent?.3:1},on:{click:function(n){e.canClick&&e.$emit("click")}}},[t("path",{attrs:{d:"M136.8 21.2L43.1001 48.9L43.2001 167.2L135.2 210.3L228.8 174V55.7L136.8 21.2Z",fill:"#5a2d0c",stroke:"black","stroke-width":"20","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M135.2 210.3L43.2001 167.2L43.1001 48.8999L135.1 83.4999L135.2 210.3Z",fill:"#70380f"}}),t("path",{attrs:{d:"M135.1 83.5L43.1001 48.9L136.8 21.2L228.8 55.7L135.1 83.5Z",fill:"#8b4513"}}),t("path",{attrs:{d:"M228.8 55.7V174L135.2 210.3L135.1 83.5L228.8 55.7Z",fill:"#5a2d0c"}}),t("title",[e._v("Coal")])])},Ar=[],Lr=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(_r));z([he()],Lr.prototype,"canClick",void 0),z([he({default:.08})],Lr.prototype,"scale",void 0),Lr=z([oe({created:function(){this.pieceType=pr.Coal}})],Lr);var Or=Lr,Gr=Or,jr=xr(Gr,Rr,Ar,!1,null,null,null),Dr=jr.exports,Nr=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:[{canClick:e.canClick}],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+") scale("+e.scale+")",opacity:e.transparent?.3:1},on:{click:function(n){e.canClick&&e.$emit("click")}}},[t("path",{attrs:{d:"M2,5 A9,5,0 0,1 18,5 L18,15 A9,5 0 0,1 2,15Z",fill:"none",stroke:"black","stroke-miterlimit":"0"}}),t("path",{attrs:{d:"M2,5 A9,5 0 0,0 18,5 A9,5 0 0,0 2,5",fill:"#FF0"}}),t("path",{attrs:{d:"M2,5 A9,5 0 0,0 2,5 L2,15 A9,5,0 0,0 18,15 L18,5 A9,5 0 0,1 2,5",fill:"url(#garbage-linear)"}}),t("title",[e._v("Garbage")]),t("defs",[t("linearGradient",{attrs:{id:"garbage-linear",x1:"0",y1:"10",x2:"20",y2:"10",gradientUnits:"userSpaceOnUse"}},[t("stop",{attrs:{"stop-color":"#DD0"}}),t("stop",{attrs:{offset:"1","stop-color":"#AA0"}})],1)],1)])},zr=[],Tr=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(_r));z([he()],Tr.prototype,"canClick",void 0),z([he({default:1})],Tr.prototype,"scale",void 0),Tr=z([oe({created:function(){this.pieceType=pr.Garbage}})],Tr);var Er=Tr,Kr=Er,Ir=xr(Kr,Nr,zr,!1,null,null,null),Ur=Ir.exports,Wr=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:["piece"],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+") scale(0.035)"}},[t("path",{attrs:{d:"M187.698 263.636V456.017L3 341.204V169.522L80.8579 108.141L187.698 263.636Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361V300.164L187.698 456.017V263.636L395.724 136.361Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361L187.698 263.636L80.8579 108.141L304.771 4L395.724 136.361Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("title",[e._v(e._s(e.ownerName)+"'s House")])])},Hr=[],Fr=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"player",void 0),i(B(e),"color",void 0),i(B(e),"owner",void 0),i(B(e),"ownerName",void 0),e}return t}(q(_r));z([se()],Fr.prototype,"player",void 0),z([he()],Fr.prototype,"color",void 0),z([he()],Fr.prototype,"owner",void 0),z([he()],Fr.prototype,"ownerName",void 0),Fr=z([oe({created:function(){this.pieceType=pr.House}})],Fr);var Yr=Fr,Vr=Yr,Jr=xr(Vr,Wr,Hr,!1,null,null,null),$r=Jr.exports,qr=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:["piece"],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+")"}},[t("g",{attrs:{transform:"scale(0.08)"}},[t("path",{attrs:{d:"M136.8 21.2L43.1001 48.9L43.2001 167.2L135.2 210.3L228.8 174V55.7L136.8 21.2Z",fill:"#5a2d0c",stroke:"black","stroke-width":"20","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M135.2 210.3L43.2001 167.2L43.1001 48.8999L135.1 83.4999L135.2 210.3Z",fill:"#70380f"}}),t("path",{attrs:{d:"M135.1 83.5L43.1001 48.9L136.8 21.2L228.8 55.7L135.1 83.5Z",fill:"#8b4513"}}),t("path",{attrs:{d:"M228.8 55.7V174L135.2 210.3L135.1 83.5L228.8 55.7Z",fill:"#5a2d0c"}})]),t("g",{attrs:{transform:"translate(5, 0)"}},[t("path",{attrs:{d:"M6,4 A6,4,0 0,1 14,4 L14,16 A6,4 0 0,1 6,16Z",fill:"none",stroke:"black"}}),t("path",{attrs:{d:"M6,4 A6,4 0 0,0 14,4 A6,4 0 0,0 6,4",fill:"#556"}}),t("path",{attrs:{d:"M6,4 A6,4 0 0,0 6,4 L6,16 A6,4,0 0,0 14,16 L14,4 A6,4 0 0,1 6,4",fill:"url(#oil-linear)"}})]),t("title",[e._v("Coal/Oil")])])},Zr=[],Xr=function(e){A(t,e);var n=N(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(q(_r));Xr=z([oe({created:function(){this.pieceType=pr.Hybrid}})],Xr);var Qr=Xr,eo=Qr,no=xr(eo,qr,Zr,!1,null,null,null),to=(no.exports,function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:[{canClick:e.canClick}],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+") scale("+e.scale+")",opacity:e.transparent?.3:1},on:{click:function(n){e.canClick&&e.$emit("click")}}},[t("path",{attrs:{d:"M6,4 A6,4,0 0,1 14,4 L14,16 A6,4 0 0,1 6,16Z",fill:"none",stroke:"black"}}),t("path",{attrs:{d:"M6,4 A6,4 0 0,0 14,4 A6,4 0 0,0 6,4",fill:"#556"}}),t("path",{attrs:{d:"M6,4 A6,4 0 0,0 6,4 L6,16 A6,4,0 0,0 14,16 L14,4 A6,4 0 0,1 6,4",fill:"url(#oil-linear)"}}),t("title",[e._v("Oil")]),t("defs",[t("linearGradient",{attrs:{id:"oil-linear",x1:"0",y1:"10",x2:"20",y2:"10",gradientUnits:"userSpaceOnUse"}},[t("stop",{attrs:{"stop-color":"#445"}}),t("stop",{attrs:{offset:"1","stop-color":"#223"}})],1)],1)])}),ro=[],oo=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(_r));z([he()],oo.prototype,"canClick",void 0),z([he({default:1})],oo.prototype,"scale",void 0),oo=z([oe({created:function(){this.pieceType=pr.Oil}})],oo);var ao=oo,io=ao,so=xr(io,to,ro,!1,null,null,null),co=so.exports,uo=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:[{canClick:e.canClick}],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+")",opacity:e.transparent?.3:1},on:{click:function(n){e.canClick&&e.$emit("click")}}},[t("path",{attrs:{d:"M3,3 l4,-2 l6,0 l4,2 l0,11 l-4,2 l-6,0 l-4,-2Z",fill:"#F00",stroke:"black"}}),t("path",{attrs:{d:"M3,3 l4,-2 l6,0 l4,2 l0,2.1 l-4,2 l-6,0 l-4,-2 l0,-2.1",fill:"#F00"}}),t("path",{attrs:{d:"M3,5 l0,9 l4.1,2 l0,-9 l-4.1,-2",fill:"#e60000"}}),t("path",{attrs:{d:"M7,7 l6.1,0 l0,9 l-6.1,0 l0,-9",fill:"#cc0000"}}),t("path",{attrs:{d:"M13,7 l4.1,-2 l0,9 l-4.1,2 l0,-9",fill:"#b30000"}}),t("title",[e._v("Uranium")])])},lo=[],fo=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),e}return t}(q(_r));z([he()],fo.prototype,"canClick",void 0),fo=z([oe({created:function(){this.pieceType=pr.Uranium}})],fo);var po=fo,ho=po,go=xr(ho,uo,lo,!1,null,null,null),yo=go.exports,mo=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:["button",{enabled:e.enabled}],on:{click:function(n){e.enabled&&e.$emit("click")}}},[t("rect",{attrs:{width:e.width,height:"30",fill:"gainsboro",stroke:"black",rx:"2"}}),t("text",{attrs:{"text-anchor":"middle",fill:"black",x:e.width/2,y:"16"}},[e._v(e._s(e.getText()))]),t("title",[e._v(e._s(e.text))])])},vo=[],bo=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"text",void 0),i(B(e),"width",void 0),i(B(e),"enabled",void 0),e}return C(t,[{key:"getText",value:function(){var e;return this.text.length>15?null===(e=this.text)||void 0===e?void 0:e.substring(0,12).concat("..."):this.text}}]),t}(d.a);z([he()],bo.prototype,"text",void 0),z([he()],bo.prototype,"width",void 0),z([he({default:!0})],bo.prototype,"enabled",void 0),bo=z([oe],bo);var wo=bo,xo=wo,ko=xr(xo,mo,vo,!1,null,null,null),_o=ko.exports,Po=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{staticClass:"button enabled",on:{click:function(n){return e.$emit("click")}}},[r("circle",{attrs:{cx:"15",cy:"15",r:"15",fill:"gainsboro",stroke:"black","stroke-width":"2px"}}),r("image",{attrs:{x:"5",y:"5",width:"20",height:"20",href:t("997e")}}),e.isOn?e._e():r("line",{attrs:{x1:"5",y1:"25",x2:"25",y2:"5",stroke:"black","stroke-width":"3px","stroke-linecap":"round"}}),e.isOn?r("title",[e._v("Help off")]):r("title",[e._v("Help on")])])},So=[],Mo=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"isOn",void 0),e}return t}(d.a);z([he()],Mo.prototype,"isOn",void 0),Mo=z([oe],Mo);var Co=Mo,Bo=Co,Ro=xr(Bo,Po,So,!1,null,null,null),Ao=Ro.exports,Lo=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{staticClass:"button enabled",on:{click:function(n){return e.$emit("click")}}},[r("rect",{attrs:{width:"80",height:"26",fill:"gainsboro",stroke:"black",rx:"2"}}),r("image",{attrs:{x:"11",y:"5",width:"16",height:"16",href:t("b67b")}}),r("text",{attrs:{"text-anchor":"middle",fill:"black",x:"47",y:"13"}},[e._v("Log")]),r("title",[e._v("Show log")])])},Oo=[],Go=function(e){A(t,e);var n=N(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(d.a);Go=z([oe],Go);var jo=Go,Do=jo,No=xr(Do,Lo,Oo,!1,null,null,null),zo=No.exports,To=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{class:["button",{enabled:e.enabled,highlightButton:e.highlightButton}],on:{click:function(n){e.enabled&&e.$emit("click")}}},[r("rect",{attrs:{width:"80",height:"26",fill:"gainsboro",stroke:"black",rx:"2"}}),r("image",{attrs:{x:"15",y:"8",width:"10",height:"10",href:t("fd65")}}),r("text",{attrs:{"text-anchor":"middle",fill:"black",x:"47",y:"13"}},[e._v(e._s(e.text))]),r("title",[e._v("Pass turn")])])},Eo=[],Ko=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"enabled",void 0),i(B(e),"highlightButton",void 0),i(B(e),"text",void 0),e}return t}(d.a);z([he()],Ko.prototype,"enabled",void 0),z([he()],Ko.prototype,"highlightButton",void 0),z([he()],Ko.prototype,"text",void 0),Ko=z([oe],Ko);var Io=Ko,Uo=Io,Wo=xr(Uo,To,Eo,!1,null,null,null),Ho=Wo.exports,Fo=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{staticClass:"button enabled",on:{click:function(n){return e.$emit("click")}}},[r("circle",{attrs:{cx:"15",cy:"15",r:"15",fill:"gainsboro",stroke:"black","stroke-width":"2px"}}),e.isOn?r("image",{attrs:{x:"5",y:"5",width:"20",height:"20",href:t("9fd9")}}):r("image",{attrs:{x:"5",y:"5",width:"20",height:"20",href:t("2044")}}),e.isOn?r("title",[e._v("Sound off")]):r("title",[e._v("Sound on")])])},Yo=[],Vo=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"isOn",void 0),e}return t}(d.a);z([he()],Vo.prototype,"isOn",void 0),Vo=z([oe],Vo);var Jo=Vo,$o=Jo,qo=xr($o,Fo,Yo,!1,null,null,null),Zo=qo.exports,Xo=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{staticClass:"button enabled",on:{click:function(n){return e.$emit("click")}}},[r("circle",{attrs:{cx:"15",cy:"15",r:"15",fill:"gainsboro",stroke:"black","stroke-width":"2px"}}),r("image",{attrs:{x:"5",y:"5",width:"20",height:"20",href:t("b85b")}}),r("title",[e._v("Rules")])])},Qo=[],ea=function(e){A(t,e);var n=N(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(d.a);ea=z([oe],ea);var na=ea,ta=na,ra=xr(ta,Xo,Qo,!1,null,null,null),oa=ra.exports,aa=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{class:["button",{enabled:e.enabled,highlightButton:e.highlightButton}],on:{click:function(n){e.enabled&&e.$emit("click")}}},[r("rect",{attrs:{width:"80",height:"26",fill:"gainsboro",stroke:"black",rx:"2"}}),r("image",{attrs:{x:"11",y:"4",width:"16",height:"16",href:t("92cf")}}),r("text",{attrs:{"text-anchor":"middle",fill:"black",x:"47",y:"13"}},[e._v("Undo")]),r("title",[e._v("Undo last move")])])},ia=[],sa=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"enabled",void 0),i(B(e),"highlightButton",void 0),e}return t}(d.a);z([he()],sa.prototype,"enabled",void 0),z([he()],sa.prototype,"highlightButton",void 0),sa=z([oe],sa);var ca=sa,ua=ca,la=xr(ua,aa,ia,!1,null,null,null),da=la.exports,fa=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{staticClass:"player-board"},[t("rect",{attrs:{width:"350",height:"100",x:"0",y:"0",fill:"gold",stroke:e.color}}),t("rect",{attrs:{width:"350",height:"25",x:"0",y:"0",fill:e.color}}),t("foreignObject",{attrs:{height:"30",width:"30",x:"-30",y:"-5"}},[t("img",{staticStyle:{"border-radius":"50%"},attrs:{src:e.avatar||"https://avatars.dicebear.com/api/pixel-art/"+e.player.name+".svg",width:"100%",height:"100%"}})]),t("text",{attrs:{x:"5",y:"13","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.getPlayerName())+" ")]),e.showMoney?t("text",{attrs:{x:"250",y:"13","font-weight":"600",fill:"black"}},[e._v("Money: $"+e._s(e.player.money))]):e._e(),e._l(e.player.powerPlants,(function(n,r){return t("Card",{key:"powerPlant_"+n.number,attrs:{targetState:{x:e.cardX(r),y:30},owner:e.owner,powerPlant:n,canClick:e.canUse(n)},on:{click:function(t){return e.powerPlantClick(n)}}})})),e._l(e.player.powerPlants,(function(n,r){return[e.isMine(n)?t("g",{key:"mine_"+n.number},[t("rect",{attrs:{x:e.cardX(r),y:"30",width:"60",height:"40",fill:"none",stroke:"#2e8b3d","stroke-width":"3px",rx:"3px"}}),t("circle",{attrs:{cx:e.cardX(r)+51,cy:"37",r:"8",fill:"#46c655",stroke:"#1f5c25","stroke-width":"1.5"}}),t("text",{staticStyle:{"font-size":"9px","font-weight":"700"},attrs:{x:e.cardX(r)+51,y:"40","text-anchor":"middle",fill:"white"}},[e._v(" U ")])]):e._e()]})),e.preferences.disableHelp?e._e():[e._l(e.player.powerPlants,(function(n,r){return[e.canUse(n)?t("rect",{key:r+"_"+r+"_helper",attrs:{x:e.cardX(r),y:30,width:"60",height:"40",fill:"none",stroke:"blue","stroke-width":"4px",rx:"2px"}}):e._e()]}))],e.canClickResources?t("g",[t("rect",{attrs:{width:"30",height:"30",x:"0",y:"71",fill:"none",stroke:"blue","stroke-width":"2px",rx:"2px"}}),t("rect",{attrs:{width:"30",height:"30",x:"70",y:"71",fill:"none",stroke:"blue","stroke-width":"2px",rx:"2px"}})]):e._e(),t("Coal",{attrs:{pieceId:"Coal"+e.player.id,targetState:{x:5,y:76},canClick:e.canClickResources},on:{click:function(n){return e.clickResource("coal")}}}),t("text",{attrs:{"text-anchor":"middle",x:"40",y:"85",fill:"black"}},[e._v(e._s(e.player.coalLeft))]),t("Oil",{attrs:{pieceId:"Oil"+e.player.id,targetState:{x:75,y:76},canClick:e.canClickResources},on:{click:function(n){return e.clickResource("oil")}}}),t("text",{attrs:{"text-anchor":"middle",x:"110",y:"85",fill:"black"}},[e._v(e._s(e.player.oilLeft))]),t("Garbage",{attrs:{pieceId:"Garbage"+e.player.id,targetState:{x:145,y:76}}}),t("text",{attrs:{"text-anchor":"middle",x:"180",y:"85",fill:"black"}},[e._v(e._s(e.player.garbageLeft))]),t("Uranium",{attrs:{pieceId:"Uranium"+e.player.id,targetState:{x:215,y:76}}}),t("text",{attrs:{"text-anchor":"middle",x:"250",y:"85",fill:"black"}},[e._v(e._s(e.player.uraniumLeft))])],2)},pa=[],ha=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"color",void 0),i(B(e),"avatar",void 0),i(B(e),"player",void 0),i(B(e),"isCurrentPlayer",void 0),i(B(e),"owner",void 0),i(B(e),"ended",void 0),i(B(e),"isPlayer",void 0),i(B(e),"ranking",void 0),i(B(e),"showMoney",void 0),i(B(e),"showBid",void 0),i(B(e),"phase",void 0),i(B(e),"isAustralia",void 0),i(B(e),"preferences",void 0),i(B(e),"powerPlantClicked",void 0),e}return C(t,[{key:"cardX",value:function(e){var n=this.player.powerPlants.length;return n<5?20+80*e:5+Math.min(70,280/(n-1))*e}},{key:"isMine",value:function(e){return!0===this.isAustralia&&e.type===ve.Uranium}},{key:"getPlayerName",value:function(){var e="";if(this.isCurrentPlayer&&(e+="• "),e+=this.player.name,this.ended)switch(this.ranking){case 1:e+=" (1st)";break;case 2:e+=" (2nd)";break;case 3:e+=" (3rd)";break;case 4:case 5:case 6:e+=" (".concat(this.ranking,"th)");break}else this.player.skipAuction?e+=" (Skipping)":this.player.passed?e+=" (Passed)":this.player.bid&&!this.isCurrentPlayer&&this.showBid&&(e+=" (Bid: $"+this.player.bid+")");return e}},{key:"canUse",value:function(e){var n,t;if(!this.isCurrentPlayer)return!1;if(null!==(n=this.player.availableMoves)&&void 0!==n&&n[_e.DiscardPowerPlant])return e.number!==this.player.powerPlants[this.player.powerPlants.length-1].number;if(null===(t=this.player.availableMoves)||void 0===t||!t[_e.UsePowerPlant])return!1;if(!this.player.powerPlantsNotUsed.includes(e.number)||this.player.resourcesUsed.length>0)return!1;switch(e.type){case ve.Coal:return this.player.coalLeft>=e.cost;case ve.Oil:return this.player.oilLeft>=e.cost;case ve.Garbage:return this.player.garbageLeft>=e.cost;case ve.Uranium:return this.player.uraniumLeft>=e.cost;case ve.Hybrid:return this.player.coalLeft+this.player.oilLeft>=e.cost;case ve.Wind:case ve.Nuclear:return this.player.coalLeft+this.player.oilLeft>=e.cost}}},{key:"powerPlantClick",value:function(e){this.phase==be.Bureaucracy&&e.type==ve.Hybrid?0==this.player.coalLeft||0==this.player.oilLeft||this.player.coalLeft+this.player.oilLeft==e.cost?(this.player.resourcesUsed=Array(Math.min(e.cost,this.player.coalLeft)).fill(me.Coal).concat(Array(e.cost-Math.min(e.cost,this.player.coalLeft)).fill(me.Oil)),this.$emit("powerPlantClick",e)):(this.powerPlantClicked=e,this.player.resourcesUsed=Array(e.cost).fill(null)):this.$emit("powerPlantClick",e)}},{key:"canClickResources",get:function(){return this.player.availableMoves&&this.player.availableMoves["DiscardResources"]||this.player.resourcesUsed.some((function(e){return null==e}))}},{key:"clickResource",value:function(e){if(this.player.availableMoves&&this.player.availableMoves["DiscardResources"])this.$emit("discardResource",e);else if(this.player.resourcesUsed.some((function(e){return null==e}))){var n=this.player.resourcesUsed.findIndex((function(e){return null==e}));this.player.resourcesUsed[n]=e,"coal"==e?this.player.coalLeft--:"oil"==e&&this.player.oilLeft--,this.player.resourcesUsed.some((function(e){return null==e}))||this.$emit("powerPlantClick",this.powerPlantClicked)}}}]),t}(d.a);z([he()],ha.prototype,"color",void 0),z([he()],ha.prototype,"avatar",void 0),z([he()],ha.prototype,"player",void 0),z([he()],ha.prototype,"isCurrentPlayer",void 0),z([he()],ha.prototype,"owner",void 0),z([he()],ha.prototype,"ended",void 0),z([he()],ha.prototype,"isPlayer",void 0),z([he()],ha.prototype,"ranking",void 0),z([he()],ha.prototype,"showMoney",void 0),z([he()],ha.prototype,"showBid",void 0),z([he()],ha.prototype,"phase",void 0),z([he()],ha.prototype,"isAustralia",void 0),z([ie()],ha.prototype,"preferences",void 0),ha=z([oe({components:{Coal:Dr,Oil:co,Garbage:Ur,Uranium:yo,Card:Br}})],ha);var ga=ha,ya=ga,ma=xr(ya,fa,pa,!1,null,null,null),va=ma.exports,ba=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{staticClass:"calculator"},[t("rect",{attrs:{width:"125",height:"50",rx:"4"}}),t("rect",{attrs:{x:"10",y:"10",width:"30",height:"30",fill:"lime",rx:"2"}}),t("text",{staticClass:"visor",attrs:{x:"25",y:"25",fill:"black","text-anchor":"middle"}},[e._v(e._s(e.value))]),t("g",{style:e.value<e.maxValue?"cursor: pointer":"",on:{click:function(n){return e.add()}}},[t("rect",{attrs:{x:"48",y:"7",width:"24",height:"15",fill:"gray",stroke:"gray",rx:"2"}}),t("path",{attrs:{d:"M52,17 l8,-6 l8,6",fill:"none",stroke:"white","stroke-width":"3"}})]),t("g",{style:e.value>e.minValue?"cursor: pointer":"",on:{click:function(n){return e.sub()}}},[t("rect",{attrs:{x:"48",y:"28",width:"24",height:"15",fill:"gray",stroke:"gray",rx:"2"}}),t("path",{attrs:{d:"M52,32 l8,6 l8,-6",fill:"none",stroke:"white","stroke-width":"3"}})]),t("g",{staticStyle:{cursor:"pointer"},on:{click:function(n){return e.bid()}}},[t("rect",{staticClass:"button",attrs:{x:"80",y:"7",width:"36",height:"36",fill:"gray",rx:"2"}}),t("text",{attrs:{x:"97",y:"25",fill:"white","text-anchor":"middle"}},[e._v("OK")])])])},wa=[],xa=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"minValue",void 0),i(B(e),"maxValue",void 0),i(B(e),"value",0),e}return C(t,[{key:"add",value:function(){this.value=Math.min(this.maxValue,this.value+1)}},{key:"sub",value:function(){this.value=Math.max(this.minValue,this.value-1)}},{key:"bid",value:function(){this.$emit("bid",this.value)}}]),t}(d.a);z([he()],xa.prototype,"minValue",void 0),z([he()],xa.prototype,"maxValue",void 0),xa=z([oe({created:function(){this.value=this.minValue}})],xa);var ka=xa,_a=ka,Pa=(t("85cf"),xr(_a,ba,wa,!1,null,null,null)),Sa=Pa.exports,Ma=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",[t("text",{attrs:{x:"10",y:"14","font-weight":"600",fill:"black"}},[e._v("Power Plant Deck:")]),e.cardsLeft>0?[e._l(e.cardsLeft,(function(e){return t("rect",{key:"card"+e,attrs:{x:35+e/5,y:38-e/10,width:"60",height:"40",fill:"gray",stroke:"black","stroke-width":"2",rx:"4"}})})),t("rect",{attrs:{x:35+e.cardsLeft/5,y:38-e.cardsLeft/10,width:"60",height:"40",fill:e.nextCardWeak?"gray":"lightgray",stroke:"black","stroke-width":"2",rx:"4"}},[t("title",[e._v(e._s(e.cardsLeft)+" cards left"+e._s(e.nextCardWeak?", next is an initial plant":""))])])]:e._e(),t("text",{attrs:{x:"165",y:"14","font-weight":"600",fill:"black"}},[e._v("Actual Market:")]),e._l(e.actualMarketCards,(function(n,r){return[t("Card",{key:n.id,attrs:{targetState:{x:n.x,y:n.y},powerPlant:n.powerPlant,canClick:e.chooseablePowerPlants&&e.chooseablePowerPlants.includes(n.powerPlant.number),hasDiscount:e.plantDiscountActive&&0==r},on:{click:function(t){return e.choosePowerPlant(n.powerPlant)}}})]})),e.futureMarketCards.length>0?[t("text",{attrs:{x:"165",y:"80","font-weight":"600",fill:"black"}},[e._v("Future Market:")]),e._l(e.futureMarketCards,(function(e){return[t("Card",{key:e.id,attrs:{targetState:{x:e.x,y:e.y},powerPlant:e.powerPlant}})]}))]:e._e(),e.chosenPowerPlant?[t("text",{attrs:{x:e.actualMarketWidth,y:"14","font-weight":"600",fill:"black"}},[e._v("Current Auction:")]),t("Card",{key:e.chosenPowerPlant.id,attrs:{targetState:{x:e.chosenPowerPlant.x,y:e.chosenPowerPlant.y},powerPlant:e.chosenPowerPlant.powerPlant}}),e.canBid?t("Calculator",{attrs:{transform:"translate("+e.actualMarketWidth+", 80)",minValue:e.minBid,maxValue:e.maxBid},on:{bid:function(n){return e.bid(n)}}}):e._e()]:e._e(),e.preferences.disableHelp?e._e():[e.canChoose?t("g",[e.futureMarketCards.length>0?t("rect",{attrs:{x:"160",y:"5",width:65*e.actualMarketCards.length+5,height:"65",fill:"none",stroke:"blue","stroke-width":"2px",rx:"2px"}}):t("rect",{attrs:{x:"160",y:"5",width:"200",height:"120",fill:"none",stroke:"blue","stroke-width":"2px",rx:"2px"}})]):e._e()]],2)},Ca=[],Ba=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"cardsLeft",void 0),i(B(e),"nextCardWeak",void 0),i(B(e),"plantDiscountActive",void 0),i(B(e),"canBid",void 0),i(B(e),"canChoose",void 0),i(B(e),"chooseablePowerPlants",void 0),i(B(e),"minBid",void 0),i(B(e),"maxBid",void 0),i(B(e),"preferences",void 0),i(B(e),"actualMarketCards",[]),i(B(e),"futureMarketCards",[]),i(B(e),"chosenPowerPlant",null),i(B(e),"actualMarketWidth",430),e}return C(t,[{key:"createPieces",value:function(e){var n,t=this;this.actualMarketWidth=null!==(n=e.map.actualMarketWidth)&&void 0!==n?n:430,this.actualMarketCards=[],e.actualMarket.forEach((function(n,r){var o,a;e.futureMarket.length>0?n.number!=(null===(o=e.chosenPowerPlant)||void 0===o?void 0:o.number)&&t.actualMarketCards.push({id:"actual_"+r,x:165+65*r,y:24,powerPlant:n}):n.number!=(null===(a=e.chosenPowerPlant)||void 0===a?void 0:a.number)&&t.actualMarketCards.push({id:"actual_"+r,x:165+r%3*65,y:r<3?24:80,powerPlant:n})})),this.futureMarketCards=[],e.futureMarket.forEach((function(n,r){var o;n.number!=(null===(o=e.chosenPowerPlant)||void 0===o?void 0:o.number)&&t.futureMarketCards.push({id:"future_"+r,x:165+r%4*65,y:90+50*Math.floor(r/4),powerPlant:n})})),e.chosenPowerPlant?this.chosenPowerPlant={id:"chosen",x:this.actualMarketWidth+30,y:30,powerPlant:e.chosenPowerPlant}:this.chosenPowerPlant=null}},{key:"choosePowerPlant",value:function(e){this.$emit("choosePowerPlant",e)}},{key:"bid",value:function(e){this.$emit("bid",e)}}]),t}(d.a);z([he()],Ba.prototype,"cardsLeft",void 0),z([he()],Ba.prototype,"nextCardWeak",void 0),z([he()],Ba.prototype,"plantDiscountActive",void 0),z([he()],Ba.prototype,"canBid",void 0),z([he()],Ba.prototype,"canChoose",void 0),z([he()],Ba.prototype,"chooseablePowerPlants",void 0),z([he()],Ba.prototype,"minBid",void 0),z([he()],Ba.prototype,"maxBid",void 0),z([ie()],Ba.prototype,"preferences",void 0),Ba=z([oe({components:{Card:Br,Calculator:Sa}})],Ba);var Ra=Ba,Aa=Ra,La=xr(Aa,Ma,Ca,!1,null,null,null),Oa=La.exports,Ga=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",[t("rect",{attrs:{x:"10",y:"10",width:"185",height:"40",rx:"3",fill:"goldenrod"}}),e._l(6,(function(n){return[t("rect",{key:"playerOrder"+n,attrs:{x:15+30*(n-1),y:"15",width:"24",height:"30",rx:"2",fill:"darkgoldenrod"}}),t("text",{key:"playerOrderText"+n,staticStyle:{"font-size":"32px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:27+30*(n-1),y:"30",fill:"gold"}},[e._v(" "+e._s(n)+" ")])]})),e._l(e.houses,(function(e){return[t("House",{key:e.id,attrs:{pieceId:e.id,targetState:{x:e.x,y:e.y},owner:e.owner,ownerName:e.ownerName,color:e.color}})]}))],2)},ja=[],Da=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"playerColors",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[],e.playerOrder.forEach((function(t,r){n.houses.push({id:t+"_order",x:20+30*r,y:22,color:n.playerColors[t],owner:t,ownerName:e.players[t].name})}))}}]),t}(d.a);z([he()],Da.prototype,"playerColors",void 0),Da=z([oe({components:{House:$r}})],Da);var Na=Da,za=Na,Ta=xr(za,Ga,ja,!1,null,null,null),Ea=Ta.exports,Ka=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",[t("rect",{attrs:{width:"730",height:"50",x:"10",y:"10",rx:"3",fill:"goldenrod"}}),e._l(21,(function(n){return[t("rect",{key:"playerCityCount"+n,attrs:{width:"28",height:"38",x:46+33*(n-1),y:"16",rx:"2",fill:"darkgoldenrod",stroke:n==e.citiesToStep2||n==e.citiesToEndGame?"#916a08":"darkgoldenrod","stroke-width":"2px"}}),t("text",{key:"playerCityCountText"+n,staticStyle:{"font-size":"24px","font-family":"monospace"},attrs:{"text-anchor":"middle","letter-spacing":"-2",x:59+33*(n-1),y:"35",fill:"gold"}},[e._v(" "+e._s(n)+" ")])]})),e._l(e.houses,(function(e){return[t("House",{key:e.id,attrs:{pieceId:e.id,targetState:{x:e.x,y:e.y},owner:e.owner,ownerName:e.ownerName,color:e.color}})]}))],2)},Ia=[],Ua=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"citiesToStep2",void 0),i(B(e),"citiesToEndGame",void 0),i(B(e),"playerColors",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[];for(var t=[],r=0;r<22;r++)t[r]=[];e.players.forEach((function(e,n){return t[e.cities.length].push(n)})),e.players.forEach((function(e,r){var o=(1==t[e.cities.length].length?23:20)+33*e.cities.length;o+=t[e.cities.length].indexOf(r)%2*6,n.houses.push({id:r+"_cityCount",x:o,y:15+30*t[e.cities.length].indexOf(r)/t[e.cities.length].length,color:n.playerColors[r],owner:r})}))}}]),t}(d.a);z([he()],Ua.prototype,"citiesToStep2",void 0),z([he()],Ua.prototype,"citiesToEndGame",void 0),z([he()],Ua.prototype,"playerColors",void 0),Ua=z([oe({components:{House:$r}})],Ua);var Wa=Ua,Ha=Wa,Fa=xr(Ha,Ka,Ia,!1,null,null,null),Ya=Fa.exports,Va=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{on:{click:e.onPickCoord}},[e.devBackdrop?t("image",{attrs:{href:e.devBackdrop.src,x:"0",y:"0",width:e.devBackdrop.width,height:e.devBackdrop.height,opacity:null!=e.devBackdrop.opacity?e.devBackdrop.opacity:.5}}):e._e(),e._l(e.cities,(function(n){return[null==n.connectionCost?t("circle",{key:n.name+"_region",attrs:{r:"25",cx:n.x,cy:n.y,fill:n.region,stroke:"black"}},[t("title",[e._v(e._s(n.name))])]):e._e(),null==n.connectionCost?t("circle",{key:n.name+"_circle",attrs:{r:"20",cx:n.x,cy:n.y,fill:"gray",stroke:"black"}},[t("title",[e._v(e._s(n.name))])]):e._e(),n.singleOccupancy?t("g",{key:n.name+"_flag"},[t("line",{attrs:{x1:n.x+12,y1:n.y-12,x2:n.x+12,y2:n.y-32,stroke:"black","stroke-width":"1.5"}}),t("polygon",{attrs:{points:n.x+12+","+(n.y-32)+" "+(n.x+26)+","+(n.y-28)+" "+(n.x+12)+","+(n.y-24),fill:"red",stroke:"black","stroke-width":"1"}}),t("title",[e._v(e._s(n.name)+" — cross-border space (1 house max, 30 Elektro total cost)")])]):e._e()]})),e._l(e.connections,(function(n){return[t("line",{key:n.nodes[0]+"_"+n.nodes[1]+"_line1",attrs:{x1:e.getX1(n),y1:e.getY1(n),x2:e.getX2(n),y2:e.getY2(n),"stroke-width":"10",stroke:"black"}}),t("line",{key:n.nodes[0]+"_"+n.nodes[1]+"_line2",attrs:{x1:e.getX1(n),y1:e.getY1(n),x2:e.getX2(n),y2:e.getY2(n),"stroke-width":"9",stroke:"gray"}})]})),e._l(e.cities,(function(n){return[null!=n.connectionCost?t("g",{key:n.name+"_tile"},[t("rect",{class:[{canClick:e.canBuild(n)}],attrs:{x:n.x-23,y:n.y-23,width:"46",height:"46",rx:"7",fill:"gray",stroke:n.region,"stroke-width":"4",transform:"rotate(45, "+n.x+", "+n.y+")"},on:{click:function(t){e.canBuild(n)&&e.build(n)}}},[t("title",[e._v(e._s(n.name)+" — connect for "+e._s(n.connectionCost)+" (entry) + house")])]),e._l(n.slotCosts,(function(r,o){return[t("rect",{key:n.name+"_slot"+o,attrs:{x:n.x+e.nodeSlotPos(o).dx-6.5,y:n.y+e.nodeSlotPos(o).dy-6.5,width:"13",height:"13",rx:"1",fill:"gray",stroke:"black","stroke-width":"1",transform:"rotate(45, "+(n.x+e.nodeSlotPos(o).dx)+", "+(n.y+e.nodeSlotPos(o).dy)+")"}}),t("text",{key:n.name+"_slotlbl"+o,attrs:{x:n.x+e.nodeSlotPos(o).dx,y:n.y+e.nodeSlotPos(o).dy,"font-size":"10","text-anchor":"middle","dominant-baseline":"central",fill:"black",transform:e.mapRotation?"rotate("+-e.mapRotation+", "+(n.x+e.nodeSlotPos(o).dx)+", "+(n.y+e.nodeSlotPos(o).dy)+")":void 0}},[e._v(" "+e._s(r)+" ")])]}))],2):e._e()]})),e._l(e.cities,(function(n){return[null==n.connectionCost?t("circle",{key:n.name+"_circle2",class:[{canClick:e.canBuild(n)}],attrs:{r:"20",cx:n.x,cy:n.y,fill:"gray"},on:{click:function(t){e.canBuild(n)&&e.build(n)}}},[t("title",[e._v(e._s(n.name))])]):e._e()]})),e._l(e.connections,(function(n){return[n.cost>0?t("circle",{key:n.nodes[0]+"_"+n.nodes[1]+"_border",attrs:{stroke:"black",r:10+10*n.cost/28,cx:(e.getX1(n)+e.getX2(n))/2,cy:(e.getY1(n)+e.getY2(n))/2,fill:n.cost>15?"gold":n.cost>10?"lightgray":"tan"}}):e._e(),n.cost>0?t("circle",{key:n.nodes[0]+"_"+n.nodes[1]+"_circle",attrs:{r:6+10*n.cost/28,cx:(e.getX1(n)+e.getX2(n))/2,cy:(e.getY1(n)+e.getY2(n))/2,fill:"gray",stroke:"black"}}):e._e(),n.cost>0?t("text",{key:n.nodes[0]+"_"+n.nodes[1]+"_text",style:"font-size: "+(12+6*n.cost/28)+"px",attrs:{"text-anchor":"middle",fill:"black",x:(e.getX1(n)+e.getX2(n))/2,y:(e.getY1(n)+e.getY2(n))/2,transform:e.mapRotation?"rotate("+-e.mapRotation+", "+(e.getX1(n)+e.getX2(n))/2+", "+(e.getY1(n)+e.getY2(n))/2+")":void 0}},[e._v(" "+e._s(n.cost)+" ")]):e._e()]})),e._l(e.houses,(function(e){return[t("House",{key:e.id,attrs:{pieceId:e.id,targetState:{x:e.x,y:e.y},owner:e.owner,ownerName:e.ownerName,color:e.color}})]})),e._l(e.cities,(function(n){return[null!=n.connectionCost?t("g",{key:n.name+"_cc"},[t("circle",{attrs:{cx:n.x,cy:n.y+15,r:"11",fill:"goldenrod",stroke:"darkgoldenrod","stroke-width":"2"}}),t("circle",{attrs:{cx:n.x,cy:n.y+15,r:"7.5",fill:"gray",stroke:"darkgoldenrod","stroke-width":"1"}}),t("text",{attrs:{x:n.x,y:n.y+15,"font-size":"11","font-weight":"bold","text-anchor":"middle","dominant-baseline":"central",fill:"black",transform:e.mapRotation?"rotate("+-e.mapRotation+", "+n.x+", "+(n.y+15)+")":void 0}},[e._v(" "+e._s(n.connectionCost)+" ")])]):e._e()]})),e._l(e.cities,(function(n){return[n.slotCosts&&2===n.slotCosts.length&&10===n.slotCosts[0]?[t("line",{key:n.name+"_x1",attrs:{x1:n.x+10,y1:n.y+10,x2:n.x+19,y2:n.y+19,stroke:"black","stroke-width":"3","stroke-linecap":"round"}}),t("line",{key:n.name+"_x2",attrs:{x1:n.x+19,y1:n.y+10,x2:n.x+10,y2:n.y+19,stroke:"black","stroke-width":"3","stroke-linecap":"round"}})]:e._e(),n.slotCosts&&3===n.slotCosts.length&&10===n.slotCosts[0]&&10===n.slotCosts[1]?t("text",{key:n.name+"_10label",attrs:{x:n.x-20,y:n.y+19,"font-size":"17","font-weight":"bold",fill:"black","text-anchor":"middle",transform:e.mapRotation?"rotate("+-e.mapRotation+", "+(n.x-20)+", "+(n.y+19)+")":void 0}},[e._v("10")]):e._e(),n.slotCosts&&2===n.slotCosts.length&&15===n.slotCosts[0]?[t("line",{key:n.name+"_x1",attrs:{x1:n.x-5,y1:n.y-21,x2:n.x+5,y2:n.y-11,stroke:"black","stroke-width":"3","stroke-linecap":"round"}}),t("line",{key:n.name+"_x2",attrs:{x1:n.x+5,y1:n.y-21,x2:n.x-5,y2:n.y-11,stroke:"black","stroke-width":"3","stroke-linecap":"round"}})]:e._e()]})),e.preferences.disableHelp?e._e():[e._l(e.cities,(function(n){return[e.canBuild(n)?t("circle",{key:n.name+"_circleHelp",class:[{canClick:e.canBuild(n)}],attrs:{r:"18",cx:n.x,cy:n.y,fill:"none",stroke:"blue","stroke-width":"4px"}}):e._e()]}))]],2)},Ja=[],$a=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"polygons",void 0),i(B(e),"cities",void 0),i(B(e),"connections",void 0),i(B(e),"playerColors",void 0),i(B(e),"buildableCities",void 0),i(B(e),"devBackdrop",void 0),i(B(e),"mapRotation",void 0),i(B(e),"preferences",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[],e.players.forEach((function(t,r){t.cities.forEach((function(t){var o,a,i,s=e.map.cities.find((function(e){return e.name==t.name})),c=null!=s.connectionCost,u=2===(null===(o=s.slotCosts)||void 0===o?void 0:o.length)&&15===s.slotCosts[0];if(c){var l=n.nodeSlotPos(t.position);a=l.dx-7,i=l.dy-8}else u?0==t.position?(a=-15,i=-4):(a=1,i=-4):0==t.position?(a=-6,i=-18):1==t.position?(a=-15,i=-4):(a=1,i=-4);n.houses.push({id:r+"_"+t.name,x:s.x+a,y:s.y+i,color:n.playerColors[r],owner:r})}))}))}},{key:"getX1",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[0]}));return n.x}},{key:"getY1",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[0]}));return n.y}},{key:"getX2",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[1]}));return n.x}},{key:"getY2",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[1]}));return n.y}},{key:"nodeSlotPos",value:function(e){return 0===e?{dx:0,dy:-15}:1===e?{dx:-15,dy:0}:{dx:15,dy:0}}},{key:"canBuild",value:function(e){return!!this.buildableCities.find((function(n){return n==e.name}))}},{key:"build",value:function(e){this.$emit("build",e)}},{key:"onPickCoord",value:function(e){if(this.devBackdrop){var n=e.currentTarget,t=n.getScreenCTM();if(t){var r=new DOMPoint(e.clientX,e.clientY).matrixTransform(t.inverse());console.log("{ name: Cities.TODO, region: Regions.TODO, x: ".concat(Math.round(r.x),", y: ").concat(Math.round(r.y)," },"))}}}}]),t}(d.a);z([he()],$a.prototype,"polygons",void 0),z([he()],$a.prototype,"cities",void 0),z([he()],$a.prototype,"connections",void 0),z([he()],$a.prototype,"playerColors",void 0),z([he()],$a.prototype,"buildableCities",void 0),z([he()],$a.prototype,"devBackdrop",void 0),z([he({default:0})],$a.prototype,"mapRotation",void 0),z([ie()],$a.prototype,"preferences",void 0),$a=z([oe({components:{House:$r}})],$a);var qa=$a,Za=qa,Xa=xr(Za,Va,Ja,!1,null,null,null),Qa=Xa.exports,ei=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",[e.isKorea?[e.resourceResupplyNorth?[e.resourceResupplyNorth[0]<10?t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"30",y:"-125","font-weight":"600",fill:"black"}},[e._v("Resource Resupply:")]):t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"20",y:"-125","font-weight":"600",fill:"black"}},[e._v("Resource Resupply:")]),e.resourceResupplyNorth[0]<10?t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"276",y:"-125","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupplyNorth[0])+" ")]):t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"262",y:"-125","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupplyNorth[0])+" ")]),t("Coal",{attrs:{pieceId:-1,targetState:{x:288,y:-133},canClick:!1,transparent:!1}}),t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"321",y:"-125","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupplyNorth[1])+" ")]),t("Oil",{attrs:{pieceId:-1,targetState:{x:331,y:-134},canClick:!1,transparent:!1}}),t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"368",y:"-125","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupplyNorth[2])+" ")]),t("Garbage",{attrs:{pieceId:-1,targetState:{x:382,y:-134},canClick:!1,transparent:!1}})]:e._e(),t("text",{staticStyle:{"font-size":"22px"},attrs:{x:"20",y:"-110","font-weight":"700",fill:"black"}},[e._v("North Market")]),t("rect",{attrs:{width:"760",height:"80",x:"20",y:"-100",rx:"3",fill:"#c89c3a"}}),e._l(8,(function(n){return[t("rect",{key:"north_resources"+n,attrs:{width:"70",height:"70",x:25+85*(n-1),y:"-95",rx:"2",fill:"darkgoldenrod"}}),t("circle",{key:"north_resourcesCircle"+n,attrs:{r:"10",cx:92+85*(n-1),cy:"-92",fill:"yellow"}}),t("text",{key:"north_resourcesText"+n,staticStyle:{"font-size":"16px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:92+85*(n-1),y:"-92",fill:"darkgoldenrod"}},[e._v(" "+e._s(n)+" ")])]})),e._l(e.coalsNorth,(function(n){return[t("Coal",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("coal",n.side,n.fromStorage),transparent:n.transparent,scale:.08},on:{click:function(t){return e.buyResource("coal",n.side,n.fromStorage)}}})]})),e._l(e.oilsNorth,(function(n){return[t("Oil",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("oil",n.side),transparent:n.transparent},on:{click:function(t){return e.buyResource("oil",n.side)}}})]})),e._l(e.garbagesNorth,(function(n){return[t("Garbage",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("garbage",n.side),transparent:n.transparent},on:{click:function(t){return e.buyResource("garbage",n.side)}}})]})),t("text",{staticStyle:{"font-size":"22px"},attrs:{x:"20",y:"35","font-weight":"700",fill:"black"}},[e._v("South Market")])]:e._e(),e.resourceResupply[0]<10?t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"30",y:"20","font-weight":"600",fill:"black"}},[e._v("Resource Resupply:")]):t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"20",y:"20","font-weight":"600",fill:"black"}},[e._v("Resource Resupply:")]),e.resourceResupply[0]<10?t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"276",y:"20","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupply[0])+" ")]):t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"262",y:"20","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupply[0])+" ")]),t("Coal",{attrs:{pieceId:-1,targetState:{x:288,y:12},canClick:!1,transparent:!1}}),t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"321",y:"20","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupply[1])+" ")]),t("Oil",{attrs:{pieceId:-1,targetState:{x:331,y:11},canClick:!1,transparent:!1}}),t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"368",y:"20","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupply[2])+" ")]),t("Garbage",{attrs:{pieceId:-1,targetState:{x:382,y:11},canClick:!1,transparent:!1}}),e.isAustraliaMarket||e.isBremenMarket?e._e():[t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"414",y:"20","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupply[3])+" ")]),t("Uranium",{attrs:{pieceId:-1,targetState:{x:428,y:12},canClick:!1,transparent:!1}})],e.isIndiaResourceMarket||e.isNinePriceMarket||e.isAustraliaMarket?e._e():t("rect",{attrs:{width:"760",height:"80",x:"20",y:"40",rx:"3",fill:"goldenrod"}}),e.isNinePriceMarket?t("rect",{attrs:{width:"780",height:"80",x:"20",y:"40",rx:"3",fill:"goldenrod"}}):e._e(),e.isAustraliaMarket?t("rect",{attrs:{width:"870",height:"80",x:"20",y:"40",rx:"3",fill:"goldenrod"}}):e._e(),e.isIndiaResourceMarket?t("rect",{attrs:{width:"680",height:"80",x:"20",y:"40",rx:"3",fill:"goldenrod"}}):e._e(),e._l(e.isNinePriceMarket?9:e.isAustraliaMarket?10:8,(function(n){return[t("rect",{key:"resources"+n,attrs:{width:"70",height:"70",x:25+85*(n-1),y:"45",rx:"2",fill:"darkgoldenrod"}}),t("circle",{key:"resourcesCircle"+n,attrs:{r:"10",cx:92+85*(n-1),cy:"48",fill:"yellow"}}),t("text",{key:"resourcesText"+n,staticStyle:{"font-size":"16px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:92+85*(n-1),y:"48",fill:"darkgoldenrod"}},[e._v(" "+e._s(n)+" ")]),e.isIndiaResourceMarket||e.isNinePriceMarket||e.isAustraliaMarket||e.isBremenMarket?e._e():t("g",{key:"lines"+n},[t("line",{attrs:{x1:25+85*(n-1),y1:"68",x2:95+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:25+85*(n-1),y1:"92",x2:95+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:48+85*(n-1),y1:"40",x2:48+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:72+85*(n-1),y1:"40",x2:72+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:42+85*(n-1),y1:"68",x2:42+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:58+85*(n-1),y1:"68",x2:58+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:74+85*(n-1),y1:"68",x2:74+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:48+85*(n-1),y1:"92",x2:48+85*(n-1),y2:"120",stroke:"goldenrod"}}),t("line",{attrs:{x1:72+85*(n-1),y1:"92",x2:72+85*(n-1),y2:"120",stroke:"goldenrod"}})]),e.isIndiaResourceMarket?t("g",{key:"lines"+n},[t("line",{attrs:{x1:25+85*(n-1),y1:"68",x2:95+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:25+85*(n-1),y1:"92",x2:95+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:42+85*(n-1),y1:"40",x2:42+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:59+85*(n-1),y1:"40",x2:59+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:76+85*(n-1),y1:"40",x2:76+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:42+85*(n-1),y1:"68",x2:42+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:58+85*(n-1),y1:"68",x2:58+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:74+85*(n-1),y1:"68",x2:74+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:42+85*(n-1),y1:"92",x2:42+85*(n-1),y2:"120",stroke:"goldenrod"}}),t("line",{attrs:{x1:59+85*(n-1),y1:"92",x2:59+85*(n-1),y2:"120",stroke:"goldenrod"}}),t("line",{attrs:{x1:76+85*(n-1),y1:"92",x2:76+85*(n-1),y2:"120",stroke:"goldenrod"}})]):e._e()]})),e.isAustraliaMarket&&e.co2TaxActive?[t("rect",{attrs:{width:"160",height:"70",x:"24",y:"45",rx:"2",fill:"black",opacity:"0.55"}}),t("text",{staticStyle:{"font-size":"12px","font-family":"monospace","font-weight":"700"},attrs:{"text-anchor":"middle",x:"104",y:"84",fill:"white"}},[e._v(" CO₂ closed ")])]:e._e(),e.isIndiaResourceMarket?[t("g",{key:"separators"},[t("line",{attrs:{x1:"275",y1:"40",x2:"275",y2:"140",stroke:"red"}}),t("line",{attrs:{x1:"445",y1:"40",x2:"445",y2:"140",stroke:"red"}}),t("text",{attrs:{x:"220",y:"130",stroke:"red"}},[e._v("Step 1")]),t("text",{attrs:{x:"390",y:"130",stroke:"red"}},[e._v("Step 2")])])]:e._e(),e.isIndiaResourceMarket||e.isNinePriceMarket||e.isAustraliaMarket||e.isBremenMarket?e._e():[t("rect",{attrs:{width:"30",height:"30",x:"705",y:"45",rx:"2",fill:"darkgoldenrod"}}),t("circle",{attrs:{r:"10",cx:"732",cy:"48",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"12px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"732",y:"48",fill:"darkgoldenrod"}},[e._v(" 10 ")]),t("rect",{attrs:{width:"30",height:"30",x:"745",y:"45",rx:"2",fill:"darkgoldenrod"}}),t("circle",{attrs:{r:"10",cx:"772",cy:"48",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"12px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"772",y:"48",fill:"darkgoldenrod"}},[e._v(" 12 ")]),t("rect",{attrs:{width:"30",height:"30",x:"705",y:"85",rx:"2",fill:"darkgoldenrod"}}),t("circle",{attrs:{r:"10",cx:"732",cy:"88",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"12px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"732",y:"88",fill:"darkgoldenrod"}},[e._v(" 14 ")]),t("rect",{attrs:{width:"30",height:"30",x:"745",y:"85",rx:"2",fill:"darkgoldenrod"}}),t("circle",{attrs:{r:"10",cx:"772",cy:"88",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"12px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"772",y:"88",fill:"darkgoldenrod"}},[e._v(" 16 ")])],e.isUsaRecharged?[t("rect",{attrs:{width:"180",height:"70",x:"795",y:"45",rx:"2",fill:"chocolate",stroke:"sandybrown","stroke-width":"4px"}}),t("circle",{attrs:{r:"10",cx:"973",cy:"45",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"16px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"973",y:"45",fill:"darkgoldenrod"}},[e._v(" 8 ")]),t("Coal",{attrs:{pieceId:-1,targetState:{x:858,y:57},canClick:!1,transparent:!0,scale:.2}})]:e._e(),void 0!==e.coalStorage?[t("rect",{attrs:{width:"180",height:"70",x:"795",y:"45",rx:"2",fill:"chocolate",stroke:"sandybrown","stroke-width":"4px"}}),t("circle",{attrs:{r:"10",cx:"973",cy:"45",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"16px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"973",y:"45",fill:"darkgoldenrod"}},[e._v(" 8 ")]),t("text",{staticStyle:{"font-size":"11px","font-family":"monospace"},attrs:{"text-anchor":"start",x:"800",y:"42",fill:"black"}},[e._v(" Coal storage ")])]:e._e(),e._l(e.coals,(function(n){return[t("Coal",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("coal",n.side,n.fromStorage),transparent:n.transparent,scale:e.isIndiaResourceMarket?.06:.08},on:{click:function(t){return e.buyResource("coal",n.side,n.fromStorage)}}})]})),e._l(e.oils,(function(n){return[t("Oil",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("oil",n.side),transparent:n.transparent},on:{click:function(t){return e.buyResource("oil",n.side)}}})]})),e._l(e.garbages,(function(n){return[t("Garbage",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("garbage",n.side),transparent:n.transparent,scale:e.isIndiaResourceMarket?.8:1},on:{click:function(t){return e.buyResource("garbage",n.side)}}})]})),e._l(e.uraniums,(function(n){return[t("Uranium",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("uranium",n.side),transparent:n.transparent},on:{click:function(t){return e.buyResource("uranium",n.side)}}})]})),e.isMiddleEast?[t("rect",{attrs:{width:"80",height:"50",x:"20",y:"70",rx:"2",fill:"gray",stroke:"darkgray","stroke-width":"4px"}}),t("Oil",{attrs:{pieceId:-1,targetState:{x:35,y:80},scale:1.5,canClick:e.availableSurplusOil>0&&e.canBuyResource("oil"),transparent:0==e.availableSurplusOil},on:{click:function(n){return e.buyResource("oil")}}}),t("text",{staticStyle:{"font-size":"16px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"70",y:"93.5"}},[e._v(" x"+e._s(e.availableSurplusOil)+" ")])]:e._e(),e.preferences.disableHelp?e._e():[!e.isKorea&&e.buyableResources.length>0?t("rect",{attrs:{x:"15",y:"35",width:e.isAustraliaMarket?880:770,height:"90",rx:"2",fill:"none",stroke:"blue","stroke-width":"2px"}}):e._e(),e.isKorea&&e.hasBuyableNorth?t("rect",{attrs:{x:"15",y:"-105",width:"770",height:"90",rx:"2",fill:"none",stroke:"blue","stroke-width":"2px"}}):e._e(),e.isKorea&&e.hasBuyableSouth?t("rect",{attrs:{x:"15",y:"35",width:"770",height:"90",rx:"2",fill:"none",stroke:"blue","stroke-width":"2px"}}):e._e()]],2)},ni=[],ti=t("bcba"),ri=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"resourceResupply",void 0),i(B(e),"resourceResupplyNorth",void 0),i(B(e),"isUsaRecharged",void 0),i(B(e),"isMiddleEast",void 0),i(B(e),"isIndiaResourceMarket",void 0),i(B(e),"availableSurplusOil",void 0),i(B(e),"buyableResources",void 0),i(B(e),"coalStorage",void 0),i(B(e),"preferences",void 0),i(B(e),"coals",[]),i(B(e),"oils",[]),i(B(e),"garbages",[]),i(B(e),"uraniums",[]),i(B(e),"isKorea",!1),i(B(e),"isNinePriceMarket",!1),i(B(e),"isAustraliaMarket",!1),i(B(e),"isBremenMarket",!1),i(B(e),"co2TaxActive",!1),i(B(e),"coalsNorth",[]),i(B(e),"oilsNorth",[]),i(B(e),"garbagesNorth",[]),e}return C(t,[{key:"buildMainRowPieces",value:function(e,n,t,r){var o,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},i=null!==(o=a.maxPrice)&&void 0!==o?o:8,s=[];e.forEach((function(e,n){if(!(e>i)){var t=s[s.length-1];t&&t.price===e?t.slots++:s.push({price:e,slots:1,firstIdx:n})}}));var c=[],u=64;return s.forEach((function(o){for(var i=60+85*(o.price-1),s=0;s<o.slots;s++){var l=o.firstIdx+s,d=1===o.slots?i:i-u/2+u*(s+.5)/o.slots;c.push({id:"".concat(t,"_").concat(l),x:d,y:r,transparent:l<e.length-n,side:a.side})}})),c}},{key:"createPieces",value:function(e){var n,t,r,o,a=this;if(e){this.isAustraliaMarket="Australia"===(null===(n=e.map)||void 0===n?void 0:n.name),this.co2TaxActive=this.isAustraliaMarket&&e.step>=3,this.isBremenMarket="Bremen"===(null===(t=e.map)||void 0===t?void 0:t.name);var i,s,c,u,l,d=void 0!==e.coalMarketNorth;if(this.isKorea=d,d){this.coals=this.buildMainRowPieces(e.coalPrices,e.coalMarket,"coal",48,{side:"south"}),this.oils=this.buildMainRowPieces(e.oilPrices,e.oilMarket,"oil",70,{side:"south"}),this.garbages=this.buildMainRowPieces(e.garbagePrices,e.garbageMarket,"garbage",94,{side:"south"}),this.uraniums=[];var f=e.uraniumPrices;return f.forEach((function(n,t){var r,o;if(n<=8)r=60+85*(n-1),o=85;else{var i=10===n||14===n?710:750,s=10===n||12===n?52:91;r=i,o=s}a.uraniums.push({id:"uranium_".concat(t),x:r,y:o,transparent:t<f.length-e.uraniumMarket,side:"south"})})),this.coalsNorth=this.buildMainRowPieces(e.coalPricesNorth,e.coalMarketNorth,"coal_north",-92,{side:"north"}),this.oilsNorth=this.buildMainRowPieces(e.oilPricesNorth,e.oilMarketNorth,"oil_north",-70,{side:"north"}),void(this.garbagesNorth=this.buildMainRowPieces(e.garbagePricesNorth,e.garbageMarketNorth,"garbage_north",-46,{side:"north"}))}if("Europe"===(null===(r=e.map)||void 0===r?void 0:r.name)||"North America"===(null===(o=e.map)||void 0===o?void 0:o.name))return this.isNinePriceMarket=!0,this.coals=this.buildMainRowPieces(e.coalPrices,e.coalMarket,"coal",48,{maxPrice:9}),this.oils=this.buildMainRowPieces(e.oilPrices,e.oilMarket,"oil",70,{maxPrice:9}),this.uraniums=this.buildMainRowPieces(e.uraniumPrices,e.uraniumMarket,"uranium",92,{maxPrice:9}),void(this.garbages=this.buildMainRowPieces(e.garbagePrices,e.garbageMarket,"garbage",106,{maxPrice:9}));if(this.isAustraliaMarket)return this.coals=this.buildMainRowPieces(e.coalPrices,e.coalMarket,"coal",48,{maxPrice:10}),this.oils=this.buildMainRowPieces(e.oilPrices,e.oilMarket,"oil",70,{maxPrice:10}),this.garbages=this.buildMainRowPieces(e.garbagePrices,e.garbageMarket,"garbage",94,{maxPrice:10}),this.uraniums=[],this.coalsNorth=[],this.oilsNorth=[],void(this.garbagesNorth=[]);if(this.isBremenMarket)return this.coals=this.buildMainRowPieces(e.coalPrices,e.coalMarket,"coal",48),this.oils=this.buildMainRowPieces(e.oilPrices,e.oilMarket,"oil",70),this.garbages=this.buildMainRowPieces(e.garbagePrices,e.garbageMarket,"garbage",94),this.uraniums=[],this.coalsNorth=[],this.oilsNorth=[],void(this.garbagesNorth=[]);if(this.isNinePriceMarket=!1,this.coalsNorth=[],this.oilsNorth=[],this.garbagesNorth=[],this.coals=[],"India"==(null===(i=e.map)||void 0===i?void 0:i.name)?Array(24).fill(0).forEach((function(n,t){var r=t;t>=0&&(r+=2),t>=2&&(r+=2),t>=4&&r++,t>=7&&r++,t>=10&&r++,t>=13&&r++,a.coals.push({id:"coal_"+t,x:672-17*r-17*Math.floor(r/4),y:48,transparent:t>=e.coalMarket})})):Array(24).fill(0).forEach((function(n,t){a.coals.push({id:"coal_"+t,x:668-23.5*t-14.5*Math.floor(t/3),y:48,transparent:t>=e.coalMarket})})),"recharged"==e.options.variant&&"USA"==(null===(s=e.map)||void 0===s?void 0:s.name)&&Object(ti["range"])(e.coalSupply).forEach((function(e){a.coals.push({id:"coal_supply_"+e,x:800+e%8*20+(e>=8&&e<16?10:0),y:50+20*Math.floor(e/8),transparent:!1})})),void 0!==e.coalStorage&&Object(ti["range"])(e.coalStorage).forEach((function(e){a.coals.push({id:"coal_storage_"+e,x:800+e%8*20+(e>=8&&e<16?10:0),y:50+20*Math.floor(e/8),transparent:!1,fromStorage:!0})})),this.oils=[],"Middle East"==(null===(c=e.map)||void 0===c?void 0:c.name)){var p=e.oilPrices.filter((function(e){return e>1})).length,h=e.oilPrices.filter((function(e){return 1==e})).length,g=Math.min(p,e.oilMarket);Array(p).fill(0).forEach((function(e,n){var t=n+(h-3);a.oils.push({id:"normal_oil_"+t,x:651-16*t-37*Math.floor(t/3),y:70,transparent:n>=g})}))}else Array(24).fill(0).forEach((function(n,t){a.oils.push({id:"oil_"+t,x:651-16*t-37*Math.floor(t/3),y:70,transparent:t>=e.oilMarket})}));this.garbages=[],"India"==(null===(u=e.map)||void 0===u?void 0:u.name)?Array(24).fill(0).forEach((function(n,t){var r=t+8;a.garbages.push({id:"garbage_"+t,x:672-17*r-17*Math.floor(r/4),y:94,transparent:t>=e.garbageMarket})})):Array(24).fill(0).forEach((function(n,t){a.garbages.push({id:"garbage_"+t,x:668-23.5*t-14.5*Math.floor(t/3),y:94,transparent:t>=e.garbageMarket})})),this.uraniums=[],"India"==(null===(l=e.map)||void 0===l?void 0:l.name)?Array(8).fill(0).forEach((function(n,t){a.uraniums.push({id:"uranium_"+t,x:670-85*t,y:72,transparent:t>=e.uraniumMarket})})):Array(12).fill(0).forEach((function(n,t){0==t?a.uraniums.push({id:"uranium_"+t,x:750,y:91,transparent:t>=e.uraniumMarket}):1==t?a.uraniums.push({id:"uranium_"+t,x:710,y:91,transparent:t>=e.uraniumMarket}):2==t?a.uraniums.push({id:"uranium_"+t,x:750,y:52,transparent:t>=e.uraniumMarket}):3==t?a.uraniums.push({id:"uranium_"+t,x:710,y:52,transparent:t>=e.uraniumMarket}):a.uraniums.push({id:"uranium_"+t,x:1010-85*t,y:72,transparent:t>=e.uraniumMarket})}))}}},{key:"canBuyResource",value:function(e,n,t){return!!this.buyableResources.find((function(r){return r.resource==e&&r.side==n&&!!r.fromStorage==!!t}))}},{key:"hasBuyableNorth",get:function(){var e;return!(null===(e=this.buyableResources)||void 0===e||!e.some((function(e){return"north"===e.side})))}},{key:"hasBuyableSouth",get:function(){var e;return!(null===(e=this.buyableResources)||void 0===e||!e.some((function(e){return"south"===e.side})))}},{key:"buyResource",value:function(e,n,t){this.$emit("buyResource",{resource:e,side:n,fromStorage:t})}}]),t}(d.a);z([he()],ri.prototype,"resourceResupply",void 0),z([he()],ri.prototype,"resourceResupplyNorth",void 0),z([he()],ri.prototype,"isUsaRecharged",void 0),z([he()],ri.prototype,"isMiddleEast",void 0),z([he()],ri.prototype,"isIndiaResourceMarket",void 0),z([he()],ri.prototype,"availableSurplusOil",void 0),z([he()],ri.prototype,"buyableResources",void 0),z([he()],ri.prototype,"coalStorage",void 0),z([ie()],ri.prototype,"preferences",void 0),ri=z([oe({components:{Coal:Dr,Oil:co,Garbage:Ur,Uranium:yo}})],ri);var oi=ri,ai=oi,ii=xr(ai,ei,ni,!1,null,null,null),si=ii.exports,ci=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"state",void 0),i(B(e),"player",void 0),i(B(e),"emitter",void 0),i(B(e),"avatars",void 0),i(B(e),"preferences",void 0),i(B(e),"ui",{waitingAnimations:0}),i(B(e),"paused",!1),i(B(e),"communicator",new u["EventEmitter"]),i(B(e),"G",null),i(B(e),"_futureState",void 0),i(B(e),"playerColors",["limegreen","mediumorchid","red","dodgerblue","yellow","brown"]),i(B(e),"animationQueue",[]),i(B(e),"logVisible",!1),i(B(e),"endScoreVisible",!1),i(B(e),"spendingVisible",!1),i(B(e),"rulesVisible",!1),i(B(e),"totalBid",0),i(B(e),"confirmMessage",""),i(B(e),"confirmVisible",!1),i(B(e),"discardedPowerPlant",null),i(B(e),"discardVisible",!1),i(B(e),"resourcesToDiscard",[]),i(B(e),"freeJumpCity",null),i(B(e),"freeJumpNormalPrice",null),i(B(e),"freeJumpSlotPrice",0),i(B(e),"freeJumpVisible",!1),i(B(e),"disablePass",!1),i(B(e),"powerPlantMarket",void 0),i(B(e),"playerOrder",void 0),i(B(e),"cityCount",void 0),i(B(e),"map",void 0),i(B(e),"resources",void 0),e}return C(t,[{key:"onStateChanged",value:function(e){this.replaceState(e)}},{key:"replaceState",value:function(e){var n,t,r,o=this,a=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(a&&(this._futureState=e),null!=this.player&&this.G&&this.G.players&&this.G.players[this.player].resourcesUsed.some((function(e){return null==e}))&&(r={coalLeft:this.G.players[this.player].coalLeft,oilLeft:this.G.players[this.player].oilLeft,resourcesUsed:this.G.players[this.player].resourcesUsed}),this.G=JSON.parse(JSON.stringify(e)),r&&Object.assign(this.G.players[this.player],r),this.G&&this.$nextTick((function(){o.powerPlantMarket.createPieces(o.G),o.playerOrder.createPieces(o.G),o.cityCount.createPieces(o.G),o.map.createPieces(o.G),o.resources.createPieces(o.G)})),this.preferences.sound&&"move"==(null===(n=this.G)||void 0===n?void 0:n.log[(null===(t=this.G)||void 0===t?void 0:t.log.length)-1].type)){var i,s,c=null===(i=this.G)||void 0===i?void 0:i.log[(null===(s=this.G)||void 0===s?void 0:s.log.length)-1].move;c.name==_e.Pass&&this.G.currentPlayers.includes(this.player)?document.getElementById("notification").cloneNode(!0).play():c.name==_e.Build&&setTimeout((function(){document.getElementById("piece-drop").cloneNode(!0).play()}),800)}}},{key:"updateUI",value:function(){var e=this;if(!(this.ui.waitingAnimations>0))return this.animationQueue.length>0?(this.animationQueue.shift()(),void setTimeout((function(){return e.updateUI()}))):void 0}},{key:"checkPass",value:function(){if(this.G&&null!=this.player&&!this.G.chosenPowerPlant){var e=this.G.players[this.player];if(e&&e.availableMoves&&Object.keys(e.availableMoves).length>1){if(this.G.phase==be.Bureaucracy&&e.powerPlantsNotUsed.length>0&&Object.keys(e.availableMoves).includes("UsePowerPlant"))return this.confirmMessage="Are you sure you want to pass? You have unused power plants!",void(this.confirmVisible=!0);if(this.G.phase==be.Resources&&!this.canPowerAllPlants(e))return this.confirmMessage="Are you sure you want to skip buying resources without enough to power all your plants?",void(this.confirmVisible=!0);if(this.G.phase!=be.Bureaucracy||e.powerPlantsNotUsed.length==e.powerPlants.length){var n=this.G.log[this.G.log.length-1];if(n.player!=this.player||n.move.name==_e.Pass){switch(this.G.phase){case be.Auction:this.confirmMessage="Are you sure you want to skip auctions?";break;case be.Resources:this.confirmMessage="Are you sure you want to skip buying resources?";break;case be.Building:this.confirmMessage="Are you sure you want to skip building?";break;case be.Bureaucracy:this.confirmMessage="Are you sure you want to pass? You didn't use any power plant!";break;default:this.confirmMessage="Are you sure you want to pass?"}return void(this.confirmVisible=!0)}}}}this.pass()}},{key:"confirmPass",value:function(){this.confirmVisible=!1,this.pass()}},{key:"pass",value:function(){this.sendMove({name:_e.Pass,data:!0})}},{key:"undo",value:function(){this.sendMove({name:_e.Undo,data:this.preferences.undoWholeTurn})}},{key:"choosePowerPlant",value:function(e){var n=this.G.players[this.player],t=n.availableMoves;t.ChoosePowerPlant&&t.ChoosePowerPlant.includes(e.number)&&this.sendMove({name:_e.ChoosePowerPlant,data:e.number})}},{key:"buyResource",value:function(e){var n={resource:e.resource};e.side&&(n.side=e.side),e.fromStorage&&(n.fromStorage=e.fromStorage),this.sendMove({name:_e.BuyResource,data:n})}},{key:"bid",value:function(e){this.sendMove({name:_e.Bid,data:e})}},{key:"build",value:function(e){var n=this.G.players[this.player],t=n.availableMoves,r=t[_e.Build],o=r.find((function(n){return n.name===e.name&&n.freeJump})),a=r.find((function(n){return n.name===e.name&&!n.freeJump}));o&&a?(this.freeJumpCity=e,this.freeJumpSlotPrice=o.price,this.freeJumpNormalPrice=a.price,this.freeJumpVisible=!0):o&&!a?(this.freeJumpCity=e,this.freeJumpSlotPrice=o.price,this.freeJumpNormalPrice=null,this.freeJumpVisible=!0):this.sendMove({name:_e.Build,data:{name:e.name,price:a.price}})}},{key:"confirmFreeJump",value:function(e){var n=this.freeJumpCity,t=this.G.players[this.player],r=t.availableMoves[_e.Build];if(this.freeJumpVisible=!1,this.freeJumpCity=null,e){var o=r.find((function(e){return e.name===n.name&&e.freeJump}));this.sendMove({name:_e.Build,data:{name:n.name,price:o.price,freeJump:!0}})}else{var a=r.find((function(e){return e.name===n.name&&!e.freeJump}));this.sendMove({name:_e.Build,data:{name:n.name,price:a.price}})}}},{key:"confirmDiscard",value:function(){var e=this.resourcesToDiscard.map((function(e){return parseInt(e.value)}));e.reduce((function(e,n){return e+n}),0)>0?this.sendMove({name:_e.DiscardPowerPlant,data:this.discardedPowerPlant.number,extra:e}):this.sendMove({name:_e.DiscardPowerPlant,data:this.discardedPowerPlant.number}),this.discardedPowerPlant=null,this.discardVisible=!1}},{key:"discardInvalid",value:function(){var e,n=this.G.players[this.player];switch(this.discardedPowerPlant.type){case ve.Coal:return e=n.hybridCapacity-2*this.discardedPowerPlant.cost>0?Math.max(0,n.oilLeft-n.oilCapacity):0,n.coalCapacity+n.hybridCapacity-2*this.discardedPowerPlant.cost+parseInt(this.resourcesToDiscard[0].value)<n.coalLeft+e;case ve.Oil:return e=n.hybridCapacity-2*this.discardedPowerPlant.cost>0?Math.max(0,n.coalLeft-n.coalCapacity):0,n.oilCapacity+n.hybridCapacity-2*this.discardedPowerPlant.cost+parseInt(this.resourcesToDiscard[0].value)<n.oilLeft+e;case ve.Garbage:return n.garbageCapacity-2*this.discardedPowerPlant.cost-n.garbageLeft+parseInt(this.resourcesToDiscard[0].value)<0;case ve.Uranium:return n.uraniumCapacity-2*this.discardedPowerPlant.cost-n.uraniumLeft+parseInt(this.resourcesToDiscard[0].value)<0;case ve.Hybrid:var t=parseInt(this.resourcesToDiscard[0].value),r=parseInt(this.resourcesToDiscard[1].value),o=n.hybridCapacity-2*this.discardedPowerPlant.cost,a=Math.max(0,n.coalLeft-n.coalCapacity-t),i=Math.max(0,n.oilLeft-n.oilCapacity-r);return o<a+i}return!0}},{key:"powerPlantClick",value:function(e){var n,t,r=this;if((null===(n=this.G)||void 0===n?void 0:n.phase)==be.Auction)if(e.type==ve.Wind||e.type==ve.Nuclear)this.sendMove({name:_e.DiscardPowerPlant,data:e.number});else{var o=this.G.players[this.player];switch(e.type){case ve.Coal:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Hybrid})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.coalLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Coal",value:"0",max:o.coalLeft}];break;case ve.Oil:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Hybrid})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.oilLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Oil",value:"0",max:o.oilLeft}];break;case ve.Garbage:if(1==o.powerPlants.filter((function(n){return n.type==e.type})).length)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.garbageLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Garbage",value:"0",max:o.garbageLeft}];break;case ve.Uranium:if(1==o.powerPlants.filter((function(n){return n.type==e.type})).length)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.uraniumLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Uranium",value:"0",max:o.uraniumLeft}];break;case ve.Hybrid:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Coal})).length+o.powerPlants.filter((function(e){return e.type==ve.Oil})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(o.coalLeft+o.oilLeft==0)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Coal",value:"0",max:o.coalLeft},{name:"Oil",value:"0",max:o.oilLeft}];break}this.discardedPowerPlant=e,this.discardVisible=!0}else if((null===(t=this.G)||void 0===t?void 0:t.phase)==be.Bureaucracy){var a=[];switch(e.type){case ve.Coal:a=Array(e.cost).fill(me.Coal);break;case ve.Oil:a=Array(e.cost).fill(me.Oil);break;case ve.Garbage:a=Array(e.cost).fill(me.Garbage);break;case ve.Uranium:a=Array(e.cost).fill(me.Uranium);break;case ve.Hybrid:var i=this.G.players[this.player];a=i.resourcesUsed,a.sort(),i.resourcesUsed=[],i.powerPlantsNotUsed=i.powerPlantsNotUsed.filter((function(n){return n!=e.number}));break}this.sendMove({name:_e.UsePowerPlant,data:{powerPlant:e.number,resourcesSpent:a,citiesPowered:e.citiesPowered}}),this.disablePass=!0,setTimeout((function(){return r.disablePass=!1}),1e3)}}},{key:"discardResource",value:function(e){this.sendMove({name:_e.DiscardResources,data:e})}},{key:"sendMove",value:function(e){this.paused||this.emitter.emit("move",e)}},{key:"gameEnded",value:function(e){return It(e)}},{key:"canMove",value:function(){return void 0!=this.player&&this.G&&this.G.currentPlayers.includes(this.player)&&this.G.players[this.player]&&this.G.players[this.player].availableMoves}},{key:"canPass",value:function(){if(!this.canMove())return!1;if(this.disablePass)return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.Pass]}},{key:"canUndo",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.Undo]}},{key:"canBid",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.Bid]}},{key:"canChoose",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.ChoosePowerPlant]}},{key:"buyableResources",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.BuyResource]||[]}},{key:"canBuyResource",value:function(e){if(!this.canMove())return!1;var n=this.G.players[this.player],t=n.availableMoves;return e?!!t[_e.BuyResource]&&t[_e.BuyResource].find((function(n){return n.resource==e})):!!t[_e.BuyResource]}},{key:"getChooseablePowerPlants",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.ChoosePowerPlant]}},{key:"getBuildableCities",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.Build]&&n[_e.Build].map((function(e){return e.name}))||[]}},{key:"playerHasUsedFreeJump",value:function(e){var n,t,r=null===(n=this.G)||void 0===n?void 0:n.players[e];if(!r)return!1;if(r.usedFreeJump)return!0;if(null!==(t=this.G)&&void 0!==t&&t.log){var o,a=P(this.G.log);try{for(a.s();!(o=a.n()).done;){var i=o.value;if("move"===i.type&&i.player===e){var s,c=i.move;if((null===c||void 0===c?void 0:c.name)===_e.Build&&!0===(null===c||void 0===c||null===(s=c.data)||void 0===s?void 0:s.freeJump))return!0}}}catch(u){a.e(u)}finally{a.f()}}return!1}},{key:"canBuild",value:function(e){if(!this.canMove())return!1;var n=this.G.players[this.player],t=n.availableMoves;return!!t[_e.Build]&&t[_e.Build].find((function(n){return n.name==e.name}))}},{key:"canUsePowerPlant",value:function(e){var n,t;if(!this.canMove())return!1;var r=this.G.players[this.player],o=r.availableMoves;return!(r.resourcesUsed.length>0)&&((null===(n=this.G)||void 0===n?void 0:n.phase)==be.Bureaucracy?!!o[_e.UsePowerPlant]&&o[_e.UsePowerPlant].find((function(n){return n.powerPlant==e.number})):(null===(t=this.G)||void 0===t?void 0:t.phase)==be.Auction?!!o[_e.DiscardPowerPlant]&&o[_e.DiscardPowerPlant].find((function(n){return n==e.number})):void 0)}},{key:"canPowerAllPlants",value:function(e){var n,t=0,r=0,o=0,a=0,i=0,s=P(e.powerPlants);try{for(s.s();!(n=s.n()).done;){var c=n.value;switch(c.type){case ve.Coal:t+=c.cost;break;case ve.Oil:r+=c.cost;break;case ve.Garbage:o+=c.cost;break;case ve.Uranium:a+=c.cost;break;case ve.Hybrid:i+=c.cost;break}}}catch(d){s.e(d)}finally{s.f()}if(t>e.coalLeft||r>e.oilLeft||o>e.garbageLeft||a>e.uraniumLeft)return!1;var u=e.coalLeft-t,l=e.oilLeft-r;return!(i>u+l)}},{key:"toggleSound",value:function(){var e=!this.preferences.sound;this.emitter.emit("update:preference",{name:"sound",value:e}),this.preferences.sound=e}},{key:"toggleHelp",value:function(){var e=!this.preferences.disableHelp;this.emitter.emit("update:preference",{name:"disableHelp",value:e}),this.preferences.disableHelp=e}},{key:"showLog",value:function(){this.logVisible=!0}},{key:"getStatusMessage",value:function(){var e;if(!this.G||1==this.G.log.length)return"Game Start!";if(this.G.currentPlayers==[])return"Game ended!";if(void 0!==this.player&&null!==(e=this.G)&&void 0!==e&&e.currentPlayers.includes(this.player)){var n=this.G.players[this.player];return n.availableMoves[_e.ChoosePowerPlant]?n.availableMoves[_e.Pass]?"Choose a Power Plant to start an auction, or pass.":"Choose a Power Plant to start an auction.":n.availableMoves[_e.Bid]?"It's your turn to bid!":n.availableMoves[_e.BuyResource]?"Buy resources on the market, or pass.":n.availableMoves[_e.Build]?"Build a new city, or pass.":n.availableMoves[_e.UsePowerPlant]?0!=n.resourcesUsed.length?"Choose which resources to spend.":"Choose which Power Plant to use.":n.availableMoves[_e.DiscardPowerPlant]?"Choose which Power Plant to discard.":n.availableMoves[_e.DiscardResources]?"Choose which resources to discard.":"It's your turn!"}var t=this.G.log[this.G.log.length-1];return"move"==t.type?t.simple:"event"==t.type?t.event:void 0}},{key:"isCurrentPlayer",value:function(e){return this.G&&this.G.currentPlayers.includes(e)}},{key:"logReversed",get:function(){var e=[];return this.G&&this.G.log&&(this.G.log.forEach((function(n){"event"==n.type?e.push(n.pretty||n.event):"move"==n.type&&e.push(n.pretty)})),e.reverse()),e}},{key:"logReversedSimple",get:function(){var e=[];return this.G&&this.G.log&&(this.G.log.forEach((function(n){"event"==n.type?e.push(n.event):"move"==n.type&&e.push(n.simple)})),e.reverse()),e}},{key:"onLogChanged",value:function(){this.emitter.emit("replaceLog",_(this.logReversedSimple).reverse())}},{key:"sortedPlayers",get:function(){return Qt(this.G)}},{key:"mapTransform",get:function(){var e;if(null===(e=this.G)||void 0===e||!e.map)return"";var n=b(this.G.map.mapPosition,2),t=n[0],r=n[1],o=this.G.map.mapRotation;if(!o)return"translate(".concat(t,", ").concat(r,")");var a=this.G.map.cities,i=a.map((function(e){return e.x})),s=a.map((function(e){return e.y})),c=(Math.min.apply(Math,_(i))+Math.max.apply(Math,_(i)))/2,u=(Math.min.apply(Math,_(s))+Math.max.apply(Math,_(s)))/2;return"translate(".concat(t,", ").concat(r,") rotate(").concat(o,", ").concat(c,", ").concat(u,")")}},{key:"adjustedPlayerOrder",get:function(){return this.G?this.preferences.adjustPlayerOrder?this.G.phase==be.Auction?this.G.playerOrder:this.G.playerOrder.reverse():this.G.players.map((function(e,n){return n})):[]}},{key:"getResourceResupply",value:function(){if(this.G){var e=this.G.resourceResupply[this.G.step-1];return e=e.substr(1,e.length-2),e.split(",")}return[0,0,0,0]}},{key:"getResourceResupplyNorth",value:function(){if(this.G&&this.G.resourceResupplyNorth){var e=this.G.resourceResupplyNorth[this.G.step-1];return e=e.substr(1,e.length-2),e.split(",")}return null}}]),t}(d.a);z([he()],ci.prototype,"state",void 0),z([he(),de()],ci.prototype,"player",void 0),z([he()],ci.prototype,"emitter",void 0),z([he()],ci.prototype,"avatars",void 0),z([he(),de()],ci.prototype,"preferences",void 0),z([le()],ci.prototype,"ui",void 0),z([le()],ci.prototype,"communicator",void 0),z([de()],ci.prototype,"G",void 0),z([ye()],ci.prototype,"powerPlantMarket",void 0),z([ye()],ci.prototype,"playerOrder",void 0),z([ye()],ci.prototype,"cityCount",void 0),z([ye()],ci.prototype,"map",void 0),z([ye()],ci.prototype,"resources",void 0),z([ge("state",{immediate:!0})],ci.prototype,"onStateChanged",null),z([ge("ui.waitingAnimations")],ci.prototype,"updateUI",null),z([ge("G.log")],ci.prototype,"onLogChanged",null),ci=z([oe({created:function(){var e=this;this.emitter.on("replayStart",(function(){e.paused=!0,e.emitter.emit("replay:info",{start:1,current:e.G.log.filter((function(e){return"move"==e.type})).length,end:e._futureState.log.filter((function(e){return"move"==e.type})).length})})),this.emitter.on("replayTo",(function(n){var t=e._futureState.log.map((function(e,n){return c({index:n},e)})).filter((function(e){return"move"==e.type}));n=t[n-1].index,e.replaceState(Ut(e._futureState,n+1),!1),e.emitter.emit("replay:info",{start:1,current:e.G.log.filter((function(e){return"move"==e.type})).length+e.G.hiddenLog.length,end:e._futureState.log.filter((function(e){return"move"==e.type})).length})})),this.emitter.on("replayEnd",(function(){e.paused=!1,e.emitter.emit("fetchState")}))},components:{PlayerBoard:va,Card:Br,House:$r,Coal:Dr,Oil:co,Garbage:Ur,Uranium:yo,PassButton:Ho,UndoButton:da,LogButton:zo,SoundButton:Zo,HelpButton:Ao,RulesButton:oa,Button:_o,Calculator:Sa,PowerPlantMarket:Oa,PlayerOrder:Ea,CityCount:Ya,Map:Qa,Resources:si}})],ci);var ui=ci,li=ui,di=(t("bb9a"),xr(li,f,p,!1,null,null,null)),fi=di.exports;function pi(e){var n={state:null,emitter:new u["EventEmitter"],preferences:{sound:!0,disableHelp:!1,adjustPlayerOrder:!1,undoWholeTurn:!0,fitToScreen:!0},avatars:[]},t=new d.a({render:function(e){return e(fi,{props:n},[])}}).$mount(e),r=new u["EventEmitter"],o=!1;return n.emitter.on("move",(function(e){return r.emit("move",e)})),n.emitter.on("fetchState",(function(){return r.emit("fetchState")})),n.emitter.on("addLog",(function(e){return r.emit("addLog",e)})),n.emitter.on("replaceLog",(function(e){return r.emit("replaceLog",e)})),n.emitter.on("replay:info",(function(e){return r.emit("replay:info",e)})),n.emitter.on("update:preference",(function(e){return r.emit("update:preference",e)})),r.addListener("avatars",(function(e){n.avatars=e,t.$forceUpdate()})),r.addListener("state",(function(e){n.state=e,t.$forceUpdate(),t.$nextTick().then((function(){return r.emit("ready")}))})),r.addListener("state:updated",(function(){return r.emit("fetchState")})),r.addListener("player",(function(e){n.player=e.index,t.$forceUpdate()})),r.addListener("preferences",(function(e){n.preferences=c(c({},n.preferences),e),t.$forceUpdate()})),r.addListener("gamelog",(function(e){o||r.emit("fetchState")})),r.addListener("replay:start",(function(){n.emitter.emit("replayStart"),o=!0})),r.addListener("replay:to",(function(e){n.emitter.emit("replayTo",e)})),r.addListener("replay:end",(function(){n.emitter.emit("replayEnd"),o=!1,r.emit("fetchState")})),r}var hi=pi;"undefined"!==typeof window&&(window.powergrid={launch:hi});var gi=hi;n["default"]=gi},a1a4:function(e,n,t){"use strict";var r=t("a768"),o=t("41d6"),a=t("fd86"),i=t("ce17"),s=a("species");e.exports=function(e){var n=r(e),t=o.f;i&&n&&!n[s]&&t(n,s,{configurable:!0,get:function(){return this}})}},a516:function(e,n,t){"use strict";var r=t("7f82"),o=t("12aa"),a=t("b42f"),i=t("43b7"),s=t("f246"),c=t("cbe1"),u=t("cba7"),l=t("2fb6"),d=l("splice"),f=Math.max,p=Math.min,h=9007199254740991,g="Maximum allowed length exceeded";r({target:"Array",proto:!0,forced:!d},{splice:function(e,n){var t,r,l,d,y,m,v=s(this),b=i(v.length),w=o(e,b),x=arguments.length;if(0===x?t=r=0:1===x?(t=0,r=b-w):(t=x-2,r=p(f(a(n),0),b-w)),b+t-r>h)throw TypeError(g);for(l=c(v,r),d=0;d<r;d++)y=w+d,y in v&&u(l,d,v[y]);if(l.length=r,t<r){for(d=w;d<b-r;d++)y=d+r,m=d+t,y in v?v[m]=v[y]:delete v[m];for(d=b;d>b-r+t;d--)delete v[d-1]}else if(t>r)for(d=b-r;d>w;d--)y=d+r-1,m=d+t-1,y in v?v[m]=v[y]:delete v[m];for(d=0;d<t;d++)v[d+w]=arguments[d+2];return v.length=b-r+t,l}})},a768:function(e,n,t){var r=t("8aac"),o=t("68de"),a=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,n){return arguments.length<2?a(r[e])||a(o[e]):r[e]&&r[e][n]||o[e]&&o[e][n]}},a901:function(e,n,t){"use strict";var r=t("2079").charAt,o=t("2673"),a=t("4116"),i="String Iterator",s=o.set,c=o.getterFor(i);a(String,"String",(function(e){s(this,{type:i,string:String(e),index:0})}),(function(){var e,n=c(this),t=n.string,o=n.index;return o>=t.length?{value:void 0,done:!0}:(e=r(t,o),n.index+=e.length,{value:e,done:!1})}))},a9eb:function(e,n,t){var r=t("8dac");e.exports=function(e,n){if(!r(e))return e;var t,o;if(n&&"function"==typeof(t=e.toString)&&!r(o=t.call(e)))return o;if("function"==typeof(t=e.valueOf)&&!r(o=t.call(e)))return o;if(!n&&"function"==typeof(t=e.toString)&&!r(o=t.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},ac27:function(e,n){e.exports=function(e){try{return!!e()}catch(n){return!0}}},ac85:function(e,n,t){(function(e){var r;(function(e,o,a){function i(e){var n=this;function t(e,n){var t,r,o,a,i,s=[],c=128;for(n===(0|n)?(r=n,n=null):(n+="\0",r=0,c=Math.max(c,n.length)),o=0,a=-32;a<c;++a)n&&(r^=n.charCodeAt((a+32)%n.length)),0===a&&(i=r),r^=r<<10,r^=r>>>15,r^=r<<4,r^=r>>>13,a>=0&&(i=i+1640531527|0,t=s[127&a]^=r+i,o=0==t?o+1:0);for(o>=128&&(s[127&(n&&n.length||0)]=-1),o=127,a=512;a>0;--a)r=s[o+34&127],t=s[o=o+1&127],r^=r<<13,t^=t<<17,r^=r>>>15,t^=t>>>12,s[o]=r^t;e.w=i,e.X=s,e.i=o}n.next=function(){var e,t,r=n.w,o=n.X,a=n.i;return n.w=r=r+1640531527|0,t=o[a+34&127],e=o[a=a+1&127],t^=t<<13,e^=e<<17,t^=t>>>15,e^=e>>>12,t=o[a]=t^e,n.i=a,t+(r^r>>>16)|0},t(n,e)}function s(e,n){return n.i=e.i,n.w=e.w,n.X=e.X.slice(),n}function c(e,n){null==e&&(e=+new Date);var t=new i(e),r=n&&n.state,o=function(){return(t.next()>>>0)/4294967296};return o.double=function(){do{var e=t.next()>>>11,n=(t.next()>>>0)/4294967296,r=(e+n)/(1<<21)}while(0===r);return r},o.int32=t.next,o.quick=o,r&&(r.X&&s(r,t),o.state=function(){return s(t,{})}),o}o&&o.exports?o.exports=c:t("f9ad")&&t("ba96")?(r=function(){return c}.call(n,t,n,o),void 0===r||(o.exports=r)):this.xor4096=c})(0,e,t("f9ad"))}).call(this,t("e55b")(e))},b07d:function(e,n,t){"use strict";var r=t("cbdb"),o=t("0540"),a=t("57ac"),i=t("c678"),s=t("c698"),c=t("7743"),u=t("43b7"),l=t("1af6"),d=t("8bc5"),f=t("3439"),p=f.UNSUPPORTED_Y,h=[].push,g=Math.min,y=4294967295;r("split",2,(function(e,n,t){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,t){var r=String(i(this)),a=void 0===t?y:t>>>0;if(0===a)return[];if(void 0===e)return[r];if(!o(e))return n.call(r,e,a);var s,c,u,l=[],f=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),p=0,g=new RegExp(e.source,f+"g");while(s=d.call(g,r)){if(c=g.lastIndex,c>p&&(l.push(r.slice(p,s.index)),s.length>1&&s.index<r.length&&h.apply(l,s.slice(1)),u=s[0].length,p=c,l.length>=a))break;g.lastIndex===s.index&&g.lastIndex++}return p===r.length?!u&&g.test("")||l.push(""):l.push(r.slice(p)),l.length>a?l.slice(0,a):l}:"0".split(void 0,0).length?function(e,t){return void 0===e&&0===t?[]:n.call(this,e,t)}:n,[function(n,t){var o=i(this),a=void 0==n?void 0:n[e];return void 0!==a?a.call(n,o,t):r.call(String(o),n,t)},function(e,o){var i=t(r,e,this,o,r!==n);if(i.done)return i.value;var d=a(e),f=String(this),h=s(d,RegExp),m=d.unicode,v=(d.ignoreCase?"i":"")+(d.multiline?"m":"")+(d.unicode?"u":"")+(p?"g":"y"),b=new h(p?"^(?:"+d.source+")":d,v),w=void 0===o?y:o>>>0;if(0===w)return[];if(0===f.length)return null===l(b,f)?[f]:[];var x=0,k=0,_=[];while(k<f.length){b.lastIndex=p?0:k;var P,S=l(b,p?f.slice(k):f);if(null===S||(P=g(u(b.lastIndex+(p?k:0)),f.length))===x)k=c(f,k,m);else{if(_.push(f.slice(x,k)),_.length===w)return _;for(var M=1;M<=S.length-1;M++)if(_.push(S[M]),_.length===w)return _;k=x=P}}return _.push(f.slice(x)),_}]}),p)},b0d4:function(e,n,t){"use strict";var r=t("7f82"),o=t("b222").find,a=t("d684"),i="find",s=!0;i in[]&&Array(1)[i]((function(){s=!1})),r({target:"Array",proto:!0,forced:s},{find:function(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),a(i)},b168:function(e,n,t){var r,o,a=t("68de"),i=t("fd70"),s=a.process,c=s&&s.versions,u=c&&c.v8;u?(r=u.split("."),o=r[0]<4?1:r[0]+r[1]):i&&(r=i.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=i.match(/Chrome\/(\d+)/),r&&(o=r[1]))),e.exports=o&&+o},b222:function(e,n,t){var r=t("6e4e"),o=t("2153"),a=t("f246"),i=t("43b7"),s=t("cbe1"),c=[].push,u=function(e){var n=1==e,t=2==e,u=3==e,l=4==e,d=6==e,f=7==e,p=5==e||d;return function(h,g,y,m){for(var v,b,w=a(h),x=o(w),k=r(g,y,3),_=i(x.length),P=0,S=m||s,M=n?S(h,_):t||f?S(h,0):void 0;_>P;P++)if((p||P in x)&&(v=x[P],b=k(v,P,w),e))if(n)M[P]=b;else if(b)switch(e){case 3:return!0;case 5:return v;case 6:return P;case 2:c.call(M,v)}else switch(e){case 4:return!1;case 7:c.call(M,v)}return d?-1:u||l?l:M}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterOut:u(7)}},b2a1:function(e,n,t){var r=t("9c0c"),o=t("97cc").f,a={}.toString,i="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(e){try{return o(e)}catch(n){return i.slice()}};e.exports.f=function(e){return i&&"[object Window]"==a.call(e)?s(e):o(r(e))}},b42f:function(e,n){var t=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:t)(e)}},b67b:function(e,n,t){e.exports=t.p+"img/log.04ef6981.svg"},b85b:function(e,n,t){e.exports=t.p+"img/rules.64f9aae5.svg"},ba03:function(e,n,t){(function(e){var r;(function(e,o,a){function i(e){var n=this,t="";n.next=function(){var e=n.b,t=n.c,r=n.d,o=n.a;return e=e<<25^e>>>7^t,t=t-r|0,r=r<<24^r>>>8^o,o=o-e|0,n.b=e=e<<20^e>>>12^t,n.c=t=t-r|0,n.d=r<<16^t>>>16^o,n.a=o-e|0},n.a=0,n.b=0,n.c=-1640531527,n.d=1367130551,e===Math.floor(e)?(n.a=e/4294967296|0,n.b=0|e):t+=e;for(var r=0;r<t.length+20;r++)n.b^=0|t.charCodeAt(r),n.next()}function s(e,n){return n.a=e.a,n.b=e.b,n.c=e.c,n.d=e.d,n}function c(e,n){var t=new i(e),r=n&&n.state,o=function(){return(t.next()>>>0)/4294967296};return o.double=function(){do{var e=t.next()>>>11,n=(t.next()>>>0)/4294967296,r=(e+n)/(1<<21)}while(0===r);return r},o.int32=t.next,o.quick=o,r&&("object"==typeof r&&s(r,t),o.state=function(){return s(t,{})}),o}o&&o.exports?o.exports=c:t("f9ad")&&t("ba96")?(r=function(){return c}.call(n,t,n,o),void 0===r||(o.exports=r)):this.tychei=c})(0,e,t("f9ad"))}).call(this,t("e55b")(e))},ba28:function(e,n,t){var r=t("8c99"),o=t("338e");e.exports=Object.keys||function(e){return r(e,o)}},ba96:function(e,n){(function(n){e.exports=n}).call(this,{})},bb9a:function(e,n,t){"use strict";t("50b1")},bcba:function(e,n,t){(function(e,r){var o;
26
+ function T(e){return T="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},T(e)}function E(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function K(e){return I(e)||U(e)||W()}function I(e){if(Array.isArray(e)){for(var n=0,t=new Array(e.length);n<e.length;n++)t[n]=e[n];return t}}function U(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}function W(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function H(){return"undefined"!==typeof Reflect&&Reflect.defineMetadata&&Reflect.getOwnMetadataKeys}function F(e,n){Y(e,n),Object.getOwnPropertyNames(n.prototype).forEach((function(t){Y(e.prototype,n.prototype,t)})),Object.getOwnPropertyNames(n).forEach((function(t){Y(e,n,t)}))}function Y(e,n,t){var r=t?Reflect.getOwnMetadataKeys(n,t):Reflect.getOwnMetadataKeys(n);r.forEach((function(r){var o=t?Reflect.getOwnMetadata(r,n,t):Reflect.getOwnMetadata(r,n);t?Reflect.defineMetadata(r,o,e,t):Reflect.defineMetadata(r,o,e)}))}var V={__proto__:[]},J=V instanceof Array;function $(e){return function(n,t,r){var o="function"===typeof n?n:n.constructor;o.__decorators__||(o.__decorators__=[]),"number"!==typeof r&&(r=void 0),o.__decorators__.push((function(n){return e(n,t,r)}))}}function q(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];return d.a.extend({mixins:n})}function Z(e){var n=T(e);return null==e||"object"!==n&&"function"!==n}function X(e,n){var t=n.prototype._init;n.prototype._init=function(){var n=this,t=Object.getOwnPropertyNames(e);if(e.$options.props)for(var r in e.$options.props)e.hasOwnProperty(r)||t.push(r);t.forEach((function(t){Object.defineProperty(n,t,{get:function(){return e[t]},set:function(n){e[t]=n},configurable:!0})}))};var r=new n;n.prototype._init=t;var o={};return Object.keys(r).forEach((function(e){void 0!==r[e]&&(o[e]=r[e])})),o}var Q=["data","beforeCreate","created","beforeMount","mounted","beforeDestroy","destroyed","beforeUpdate","updated","activated","deactivated","render","errorCaptured","serverPrefetch"];function ee(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};n.name=n.name||e._componentTag||e.name;var t=e.prototype;Object.getOwnPropertyNames(t).forEach((function(e){if("constructor"!==e)if(Q.indexOf(e)>-1)n[e]=t[e];else{var r=Object.getOwnPropertyDescriptor(t,e);void 0!==r.value?"function"===typeof r.value?(n.methods||(n.methods={}))[e]=r.value:(n.mixins||(n.mixins=[])).push({data:function(){return E({},e,r.value)}}):(r.get||r.set)&&((n.computed||(n.computed={}))[e]={get:r.get,set:r.set})}})),(n.mixins||(n.mixins=[])).push({data:function(){return X(this,e)}});var r=e.__decorators__;r&&(r.forEach((function(e){return e(n)})),delete e.__decorators__);var o=Object.getPrototypeOf(e.prototype),a=o instanceof d.a?o.constructor:d.a,i=a.extend(n);return te(i,e,a),H()&&F(i,e),i}var ne={prototype:!0,arguments:!0,callee:!0,caller:!0};function te(e,n,t){Object.getOwnPropertyNames(n).forEach((function(r){if(!ne[r]){var o=Object.getOwnPropertyDescriptor(e,r);if(!o||o.configurable){var a=Object.getOwnPropertyDescriptor(n,r);if(!J){if("cid"===r)return;var i=Object.getOwnPropertyDescriptor(t,r);if(!Z(a.value)&&i&&i.value===a.value)return}0,Object.defineProperty(e,r,a)}}}))}function re(e){return"function"===typeof e?ee(e):function(n){return ee(n,e)}}re.registerHooks=function(e){Q.push.apply(Q,K(e))};var oe=re,ae="__reactiveInject__";function ie(e){return $((function(n,t){"undefined"===typeof n.inject&&(n.inject={}),Array.isArray(n.inject)||(n.inject[t]=e||t)}))}function se(e){return $((function(n,t){if("undefined"===typeof n.inject&&(n.inject={}),!Array.isArray(n.inject)){var r=e?e.from||e:t,o=!!e&&e.default||void 0;n.computed||(n.computed={}),n.computed[t]=function(){var e=this[ae];return e?e[r]:o},n.inject[ae]=ae}}))}function ce(e){var n=function(){var t=this,r="function"===typeof e?e.call(this):e;for(var o in r=Object.create(r||null),r[ae]=this[ae]||{},n.managed)r[n.managed[o]]=this[o];var a=function(e){r[n.managedReactive[e]]=i[e],Object.defineProperty(r[ae],n.managedReactive[e],{enumerable:!0,get:function(){return t[e]}})},i=this;for(var o in n.managedReactive)a(o);return r};return n.managed={},n.managedReactive={},n}function ue(e){return"function"!==typeof e||!e.managed&&!e.managedReactive}function le(e){return $((function(n,t){var r=n.provide;ue(r)&&(r=n.provide=ce(r)),r.managed[t]=e||t}))}function de(e){return $((function(n,t){var r=n.provide;Array.isArray(n.inject)||(n.inject=n.inject||{},n.inject[ae]={from:ae,default:{}}),ue(r)&&(r=n.provide=ce(r)),r.managedReactive[t]=e||t}))}var fe="undefined"!==typeof Reflect&&"undefined"!==typeof Reflect.getMetadata;function pe(e,n,t){if(fe&&!Array.isArray(e)&&"function"!==typeof e&&"undefined"===typeof e.type){var r=Reflect.getMetadata("design:type",n,t);r!==Object&&(e.type=r)}}function he(e){return void 0===e&&(e={}),function(n,t){pe(e,n,t),$((function(n,t){(n.props||(n.props={}))[t]=e}))(n,t)}}function ge(e,n){void 0===n&&(n={});var t=n.deep,r=void 0!==t&&t,o=n.immediate,a=void 0!==o&&o;return $((function(n,t){"object"!==typeof n.watch&&(n.watch=Object.create(null));var o=n.watch;"object"!==typeof o[e]||Array.isArray(o[e])?"undefined"===typeof o[e]&&(o[e]=[]):o[e]=[o[e]],o[e].push({handler:t,deep:r,immediate:a})}))}function ye(e){return $((function(n,t){n.computed=n.computed||{},n.computed[t]={cache:!1,get:function(){return this.$refs[e||t]}}}))}t("22ea");var me,ve,be,we=t("0b6f");function xe(e,n){return"Australia"===e.map.name&&n.type===ve.Uranium}function ke(e,n){return n.powerPlants.filter((function(n){return!xe(e,n)})).length}(function(e){e["Coal"]="coal",e["Oil"]="oil",e["Garbage"]="garbage",e["Uranium"]="uranium"})(me||(me={})),function(e){e[e["Coal"]=0]="Coal",e[e["Oil"]=1]="Oil",e[e["Garbage"]=2]="Garbage",e[e["Uranium"]=3]="Uranium",e[e["Hybrid"]=4]="Hybrid",e[e["Wind"]=5]="Wind",e[e["Nuclear"]=6]="Nuclear",e[e["Step3"]=7]="Step3"}(ve||(ve={})),function(e){e["Order"]="Order",e["Auction"]="Auction",e["Resources"]="Resources",e["Building"]="Building",e["Bureaucracy"]="Bureaucracy",e["GameEnd"]="Game End"}(be||(be={}));var _e,Pe,Se=[2,3,4,5,6,7];function Me(e){for(var n=e.length-1;n>=0;n--)if(e[n]<2)return n;return-1}function Ce(e,n){if(!e.uraniumMineMarket)return{income:0,price:0,mines:0,cities:0};var t=n.powerPlants.filter((function(n){return xe(e,n)}));if(0===t.length)return{income:0,price:0,mines:0,cities:0};var r=t.reduce((function(e,n){return e+n.citiesPowered}),0),o=Me(e.uraniumMineMarket);if(o<0)return{income:0,price:0,mines:t.length,cities:r};var a=Se[o],i=a*r;n.money+=i,e.options.trackTotalSpent&&(n.totalIncome+=i);for(var s=0;s<t.length;s++){var c=Me(e.uraniumMineMarket);if(c<0)break;e.uraniumMineMarket[c]++}return{income:i,price:a,mines:t.length,cities:r}}function Be(e,n){if(!e.uraniumMineMarket)return 0;for(var t=0,r=0;r<n;r++){for(var o=-1,a=0;a<e.uraniumMineMarket.length;a++)if(e.uraniumMineMarket[a]>0){o=a;break}if(o<0)break;e.uraniumMineMarket[o]--,t++}return t}(function(e){e["ChoosePowerPlant"]="ChoosePowerPlant",e["Bid"]="Bid",e["DiscardPowerPlant"]="DiscardPowerPlant",e["DiscardResources"]="DiscardResources",e["BuyResource"]="BuyResource",e["Build"]="Build",e["UsePowerPlant"]="UsePowerPlant",e["Pass"]="Pass",e["Undo"]="Undo"})(_e||(_e={}));var Re=(Pe={},i(Pe,me.Coal,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Oil,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Garbage,[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8]),i(Pe,me.Uranium,[1,2,3,4,5,6,7,8,10,12,14,16]),Pe),Ae=Re,Le=(t("9cd8"),t("3a04")),Oe=t.n(Le);function Ge(e){}function je(e,n){var t,r,o=1/0,a=P(e);try{for(a.s();!(r=a.n()).done;){var i=r.value,s=n(i);s<o&&(t=i,o=s)}}catch(c){a.e(c)}finally{a.f()}return t}function De(e,n){var t=Oe.a.alea(n),r=new Map;return e.forEach((function(e,n){var o=t.int32();while(r.has(o))o=t.int32();r.set(o,n)})),_(r.keys()).sort().map((function(n){return e[r.get(n)]}))}function Ne(e,n){var t,r,o={},a=e.log[e.log.length-1];"move"==a.type&&e.currentPlayers.includes(n.id)&&((a.player==n.id&&(null===(t=n.lastMove)||void 0===t?void 0:t.name)!=_e.Pass||e.phase==be.Bureaucracy&&(null===(r=n.lastMove)||void 0===r?void 0:r.name)==_e.UsePowerPlant)&&(o[_e.Undo]=[!0,!1]));switch(e.phase){case be.Auction:if(ke(e,n)>4||e.players.length>2&&ke(e,n)>3)o[_e.DiscardPowerPlant]=n.powerPlants.filter((function(t,r){return r!=n.powerPlants.length-1&&!xe(e,t)})).map((function(e){return e.number}));else{var i=[],s=Math.max(0,n.oilLeft-n.oilCapacity);if(n.coalCapacity+n.hybridCapacity<n.coalLeft+s&&i.push(me.Coal),s=Math.max(0,n.coalLeft-n.coalCapacity),n.oilCapacity+n.hybridCapacity<n.oilLeft+s&&i.push(me.Oil),n.garbageCapacity<n.garbageLeft&&i.push(me.Garbage),n.uraniumCapacity<n.uraniumLeft&&i.push(me.Uranium),i.length>0)o[_e.DiscardResources]=i;else if(void 0==e.chosenPowerPlant){var c=e.actualMarket.filter((function(e){return n.money>=e.number}));if("Spain & Portugal"==e.map.name){var u=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));u.every((function(e){return"yellow"==e.region}))&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("Central Europe"==e.map.name){var l=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"green"==e.region||"brown"==e.region||"purple"==e.region}));0==l.length&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("UK & Ireland"==e.map.name){var d=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));d.every((function(e){return"green"==e.region}))&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}if("Northern Europe"==e.map.name){var f=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"purple"==e.region||"yellow"==e.region||"brown"==e.region||"pink"==e.region}));0==f.length&&(c=c.filter((function(e){return e.type!=ve.Uranium})))}c.length>0&&(o[_e.ChoosePowerPlant]=c.map((function(e){return e.number}))),e.round>1&&(o[_e.Pass]=[!0])}else{if(e.options.fastBid?e.minimunBid<=n.money&&(o[_e.Bid]=Object(we["range"])(e.minimunBid,n.money+1)):e.currentBid?e.currentBid<n.money&&(o[_e.Bid]=Object(we["range"])(e.currentBid+1,n.money+1)):o[_e.Bid]=Object(we["range"])(e.minimunBid,n.money+1),"Spain & Portugal"==e.map.name){var p=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));p.every((function(e){return"yellow"==e.region}))&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("Central Europe"==e.map.name){var h=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"green"==e.region||"brown"==e.region||"purple"==e.region}));0==h.length&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("UK & Ireland"==e.map.name){var g=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))}));g.every((function(e){return"green"==e.region}))&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}if("Northern Europe"==e.map.name){var y=n.cities.map((function(n){return e.map.cities.find((function(e){return e.name==n.name}))})).filter((function(e){return"purple"==e.region||"yellow"==e.region||"brown"==e.region||"pink"==e.region}));0==y.length&&e.chosenPowerPlant.type==ve.Uranium&&(o[_e.Bid]=void 0)}e.options.fastBid?n.id!=e.auctioningPlayer&&(o[_e.Pass]=[!0]):null!=e.currentBid&&(o[_e.Pass]=[!0])}}break;case be.Resources:if("India"==e.map.name&&void 0!==e.chosenResource){o[_e.Pass]=[!0];break}var m,v=[];m=e.map.maxPriceAvailable?e.map.maxPriceAvailable[e.step-1]:16;var b=void 0!==e.coalResupplyNorth,w=!b||"north"!==e.chosenSide,x=b&&"south"!==e.chosenSide;if(w&&e.coalMarket>0){var k,P=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0,S=null!==(k=e.coalPrices)&&void 0!==k?k:Ae[me.Coal],M=S[S.length-e.coalMarket];n.money>=M&&n.coalCapacity+n.hybridCapacity>P+n.coalLeft&&M<=m&&v.push(b?{resource:me.Coal,side:"south"}:{resource:me.Coal})}else if(w&&"recharged"==e.options.variant&&"USA"==e.map.name&&e.coalSupply>0){var C=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0;n.money>=8&&n.coalCapacity+n.hybridCapacity>C+n.coalLeft&&v.push({resource:me.Coal})}if(w&&void 0!==e.coalStorage&&e.coalStorage>0){var B=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0;n.money>=8&&n.coalCapacity+n.hybridCapacity>B+n.coalLeft&&8<=m&&v.push({resource:me.Coal,fromStorage:!0})}if(x&&e.coalMarketNorth>0){var R=n.hybridCapacity>0?Math.max(0,n.oilLeft-n.oilCapacity):0,A=e.coalPricesNorth,L=A[A.length-e.coalMarketNorth];n.money>=L&&n.coalCapacity+n.hybridCapacity>R+n.coalLeft&&L<=m&&v.push({resource:me.Coal,side:"north"})}if(w&&e.oilMarket>0){var O,G=n.hybridCapacity>0?Math.max(0,n.coalLeft-n.coalCapacity):0,j=null!==(O=e.oilPrices)&&void 0!==O?O:Ae[me.Oil],D=j[j.length-e.oilMarket];n.money>=D&&n.oilCapacity+n.hybridCapacity>G+n.oilLeft&&D<=m&&v.push(b?{resource:me.Oil,side:"south"}:{resource:me.Oil})}if(x&&e.oilMarketNorth>0){var N=n.hybridCapacity>0?Math.max(0,n.coalLeft-n.coalCapacity):0,z=e.oilPricesNorth,T=z[z.length-e.oilMarketNorth];n.money>=T&&n.oilCapacity+n.hybridCapacity>N+n.oilLeft&&T<=m&&v.push({resource:me.Oil,side:"north"})}if(w&&e.garbageMarket>0){var E,K=null!==(E=e.garbagePrices)&&void 0!==E?E:Ae[me.Garbage],I=K[K.length-e.garbageMarket];if("Central Europe"==e.map.name){var U=n.cities.filter((function(e){return"Wien"==e.name}));(null===U||void 0===U?void 0:U.length)>0&&I--}n.money>=I&&n.garbageCapacity>n.garbageLeft&&I<=m&&v.push(b?{resource:me.Garbage,side:"south"}:{resource:me.Garbage})}if(x&&e.garbageMarketNorth>0){var W=e.garbagePricesNorth,H=W[W.length-e.garbageMarketNorth];n.money>=H&&n.garbageCapacity>n.garbageLeft&&H<=m&&v.push({resource:me.Garbage,side:"north"})}if(w&&e.uraniumMarket>0){var F,Y=null!==(F=e.uraniumPrices)&&void 0!==F?F:Ae[me.Uranium],V=Y[Y.length-e.uraniumMarket];n.money>=V&&n.uraniumCapacity>n.uraniumLeft&&V<=m&&v.push(b?{resource:me.Uranium,side:"south"}:{resource:me.Uranium})}v.length>0&&(o[_e.BuyResource]=v),o[_e.Pass]=[!0];break;case be.Building:if(n.cities.length<21){var J,$,q="Japan"===e.map.name,Z=q?new Set(null!==(J=e.map.startingCities)&&void 0!==J?J:[]):new Set;if(0==n.cities.length){var X=q?e.map.cities.filter((function(e){return Z.has(e.name)})):e.map.cities;$=X.map((function(e){return{name:e.name,price:0}}))}else if(q&&1===e.round)$=e.map.cities.filter((function(e){return Z.has(e.name)})).map((function(e){return{name:e.name,price:0}}));else if($=ze(e,n).map((function(e){return{name:e.name,price:e.price}})),q&&!n.usedFreeJump){var Q=[];Z.forEach((function(e){n.cities.find((function(n){return n.name===e}))||Q.push({name:e,price:0,freeJump:!0})})),$=[].concat(_($),Q)}$.forEach((function(t){var r=e.map.cities.find((function(e){return e.name==t.name}));if(r){var o=e.players.filter((function(e){return e.cities.find((function(e){return t.name==e.name}))})).length;if(r.transregional){if(e.step<2)return void(t.price=9999);var a=r.slotCosts,i=r.stepSlots?r.stepSlots[e.step-1]:e.step,s=a?a.length:3;return o>=i||o>=s?t.price=9999:t.price+=a?a[o]:3==e.step?20:15,void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999))}if(r.island&&void 0!==e.map.crossIslandSurcharge&&n.cities.length>0){var c=new Set(n.cities.map((function(n){var t;return null===(t=e.map.cities.find((function(e){return e.name==n.name})))||void 0===t?void 0:t.island})).filter((function(e){return!!e})));if(!c.has(r.island))return void(t.price=o>0?9999:10+e.map.crossIslandSurcharge)}if(r.singleOccupancy)return 0==n.cities.length||o>=1?void(t.price=9999):void(n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999));"Australia"==e.map.name&&n.cities.length>0&&(t.price=Math.min(t.price,20));var u=r.slotCosts,l=r.stepSlots?r.stepSlots[e.step-1]:e.step,d=u?u.length:3;o>=l||o>=d?t.price=9999:t.price+=u?u[o]:10+5*o,n.cities.find((function(e){return e.name==t.name}))&&(t.price=9999)}else t.price=9999})),$=$.filter((function(e){return e.price<=n.money})),$.length>0&&(o[_e.Build]=$)}o[_e.Pass]=[!0];break;case be.Bureaucracy:var ee=[];n.powerPlants.forEach((function(t){if(!xe(e,t)&&n.powerPlantsNotUsed.includes(t.number))switch(t.type){case ve.Coal:n.coalLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Coal),citiesPowered:t.citiesPowered});break;case ve.Oil:n.oilLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Oil),citiesPowered:t.citiesPowered});break;case ve.Garbage:n.garbageLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Garbage),citiesPowered:t.citiesPowered});break;case ve.Uranium:n.uraniumLeft>=t.cost&&ee.push({powerPlant:t.number,resourcesSpent:new Array(t.cost).fill(me.Uranium),citiesPowered:t.citiesPowered});break;case ve.Wind:case ve.Nuclear:ee.push({powerPlant:t.number,resourcesSpent:[],citiesPowered:t.citiesPowered});break;case ve.Hybrid:var r;if(n.coalLeft+n.oilLeft>=t.cost)r=1==t.cost?[[me.Coal],[me.Oil]]:2==t.cost?[[me.Coal,me.Coal],[me.Coal,me.Oil],[me.Oil,me.Oil]]:[[me.Coal,me.Coal,me.Coal],[me.Coal,me.Coal,me.Oil],[me.Coal,me.Oil,me.Oil],[me.Oil,me.Oil,me.Oil]],r.forEach((function(e){e.filter((function(e){return e==me.Coal})).length<=n.coalLeft&&e.filter((function(e){return e==me.Oil})).length<=n.oilLeft&&ee.push({powerPlant:t.number,resourcesSpent:e,citiesPowered:t.citiesPowered})}))}})),ee.length>0&&(o[_e.UsePowerPlant]=ee),("India"!=e.map.name||n.citiesPowered>=n.targetCitiesPowered||n.isAI)&&(o[_e.Pass]=[!0]);break}return o}function ze(e,n){var t=e.map.cities.map((function(e){return{name:e.name,price:n.cities.find((function(n){return n.name==e.name}))?0:9999,visited:!1}})),r=t.find((function(e){return e.name==n.cities[0].name}));if(!r)return t;r.price=0;var o=r;while(1){var a=e.map.connections.filter((function(e){return e.nodes.includes(o.name)}));a.forEach((function(r){var a,i=r.nodes.filter((function(e){return e!=o.name}))[0],s=t.find((function(e){return e.name==i})),c=e.map.cities.find((function(e){return e.name==i})),u=null!==(a=null===c||void 0===c?void 0:c.connectionCost)&&void 0!==a?a:r.cost,l=n.cities.find((function(e){return e.name==s.name}))?0:o.price+u;!s.visited&&s.price>l&&(s.price=l)})),o.visited=!0;var i=t.filter((function(e){return!e.visited})),s=je(i,(function(e){return e.price}));if(!s||s.price>n.money)break;o=s}return t}t("a516"),t("7f32"),t("ec9f"),t("da71"),t("4311");var Te,Ee,Ke=t("4cd2"),Ie=t.n(Ke);(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow",e["Cyan"]="cyan",e["Brown"]="brown"})(Te||(Te={})),function(e){e["Seattle"]="Seattle",e["Portland"]="Portland",e["Boise"]="Boise",e["Billings"]="Billings",e["Cheyenne"]="Cheyenne",e["Denver"]="Denver",e["Omaha"]="Omaha",e["SanFrancisco"]="San Francisco",e["LosAngeles"]="Los Angeles",e["SanDiego"]="San Diego",e["LasVegas"]="Las Vegas",e["SaltLakeCity"]="Salt Lake City",e["Phoenix"]="Phoenix",e["SantaFe"]="Santa Fe",e["KansasCity"]="Kansas City",e["OklahomaCity"]="Oklahoma City",e["Dallas"]="Dallas",e["Houston"]="Houston",e["Memphis"]="Memphis",e["Birmingham"]="Birmingham",e["NewOrleans"]="New Orleans",e["Fargo"]="Fargo",e["Duluth"]="Duluth",e["Minneapolis"]="Minneapolis",e["Chicago"]="Chicago",e["StLouis"]="St. Louis",e["Cincinnati"]="Cincinnati",e["Knoxvile"]="Knoxvile",e["Detroit"]="Detroit",e["Buffalo"]="Buffalo",e["Pittsburgh"]="Pittsburgh",e["Boston"]="Boston",e["NewYork"]="New York",e["Philadelphia"]="Philadelphia",e["Washington"]="Washington",e["Norfolk"]="Norfolk",e["Raleigh"]="Raleigh",e["Atlanta"]="Atlanta",e["Savannah"]="Savannah",e["Jacksonvile"]="Jacksonvile",e["Tampa"]="Tampa",e["Miami"]="Miami"}(Ee||(Ee={}));var Ue,We,He={name:"USA",cities:[{name:Ee.Seattle,region:Te.Purple,x:74,y:99},{name:Ee.Portland,region:Te.Purple,x:45,y:167},{name:Ee.Boise,region:Te.Purple,x:180,y:220},{name:Ee.Billings,region:Te.Purple,x:345,y:180},{name:Ee.Cheyenne,region:Te.Purple,x:410,y:280},{name:Ee.Denver,region:Te.Purple,x:400,y:333},{name:Ee.Omaha,region:Te.Purple,x:566,y:293},{name:Ee.SanFrancisco,region:Te.Cyan,x:48,y:371},{name:Ee.LosAngeles,region:Te.Cyan,x:116,y:460},{name:Ee.SanDiego,region:Te.Cyan,x:157,y:507},{name:Ee.LasVegas,region:Te.Cyan,x:200,y:410},{name:Ee.SaltLakeCity,region:Te.Cyan,x:266,y:311},{name:Ee.Phoenix,region:Te.Cyan,x:260,y:486},{name:Ee.SantaFe,region:Te.Cyan,x:371,y:435},{name:Ee.KansasCity,region:Te.Red,x:587,y:356},{name:Ee.OklahomaCity,region:Te.Red,x:550,y:437},{name:Ee.Dallas,region:Te.Red,x:560,y:504},{name:Ee.Houston,region:Te.Red,x:569,y:571},{name:Ee.Memphis,region:Te.Red,x:678,y:449},{name:Ee.Birmingham,region:Te.Red,x:739,y:486},{name:Ee.NewOrleans,region:Te.Red,x:674,y:570},{name:Ee.Fargo,region:Te.Yellow,x:551,y:152},{name:Ee.Duluth,region:Te.Yellow,x:637,y:133},{name:Ee.Minneapolis,region:Te.Yellow,x:621,y:190},{name:Ee.Chicago,region:Te.Yellow,x:716,y:281},{name:Ee.StLouis,region:Te.Yellow,x:678,y:362},{name:Ee.Cincinnati,region:Te.Yellow,x:795,y:348},{name:Ee.Knoxvile,region:Te.Yellow,x:796,y:422},{name:Ee.Detroit,region:Te.Brown,x:803,y:262},{name:Ee.Buffalo,region:Te.Brown,x:913,y:251},{name:Ee.Pittsburgh,region:Te.Brown,x:884,y:316},{name:Ee.Boston,region:Te.Brown,x:1052,y:252},{name:Ee.NewYork,region:Te.Brown,x:1010,y:290},{name:Ee.Philadelphia,region:Te.Brown,x:985,y:330},{name:Ee.Washington,region:Te.Brown,x:934,y:357},{name:Ee.Norfolk,region:Te.Green,x:969,y:405},{name:Ee.Raleigh,region:Te.Green,x:915,y:437},{name:Ee.Atlanta,region:Te.Green,x:801,y:487},{name:Ee.Savannah,region:Te.Green,x:867,y:507},{name:Ee.Jacksonvile,region:Te.Green,x:861,y:559},{name:Ee.Tampa,region:Te.Green,x:819,y:621},{name:Ee.Miami,region:Te.Green,x:883,y:670}],connections:[{nodes:[Ee.Seattle,Ee.Portland],cost:3},{nodes:[Ee.Seattle,Ee.Boise],cost:12},{nodes:[Ee.Seattle,Ee.Billings],cost:9},{nodes:[Ee.Portland,Ee.Boise],cost:13},{nodes:[Ee.Portland,Ee.SanFrancisco],cost:24},{nodes:[Ee.Boise,Ee.Billings],cost:12},{nodes:[Ee.Boise,Ee.Cheyenne],cost:24},{nodes:[Ee.Boise,Ee.SanFrancisco],cost:23},{nodes:[Ee.Boise,Ee.SaltLakeCity],cost:8},{nodes:[Ee.Billings,Ee.Cheyenne],cost:9},{nodes:[Ee.Billings,Ee.Fargo],cost:17},{nodes:[Ee.Billings,Ee.Minneapolis],cost:18},{nodes:[Ee.Cheyenne,Ee.Denver],cost:0},{nodes:[Ee.Cheyenne,Ee.Omaha],cost:14},{nodes:[Ee.Cheyenne,Ee.Minneapolis],cost:18},{nodes:[Ee.Denver,Ee.SaltLakeCity],cost:21},{nodes:[Ee.Denver,Ee.SantaFe],cost:13},{nodes:[Ee.Denver,Ee.KansasCity],cost:16},{nodes:[Ee.Omaha,Ee.KansasCity],cost:5},{nodes:[Ee.Omaha,Ee.Minneapolis],cost:8},{nodes:[Ee.Omaha,Ee.Chicago],cost:13},{nodes:[Ee.SanFrancisco,Ee.LosAngeles],cost:9},{nodes:[Ee.SanFrancisco,Ee.LasVegas],cost:14},{nodes:[Ee.SanFrancisco,Ee.SaltLakeCity],cost:27},{nodes:[Ee.LosAngeles,Ee.SanDiego],cost:3},{nodes:[Ee.LosAngeles,Ee.LasVegas],cost:9},{nodes:[Ee.SanDiego,Ee.LasVegas],cost:9},{nodes:[Ee.SanDiego,Ee.Phoenix],cost:14},{nodes:[Ee.LasVegas,Ee.SaltLakeCity],cost:18},{nodes:[Ee.LasVegas,Ee.Phoenix],cost:15},{nodes:[Ee.LasVegas,Ee.SantaFe],cost:27},{nodes:[Ee.SaltLakeCity,Ee.SantaFe],cost:28},{nodes:[Ee.Phoenix,Ee.SantaFe],cost:18},{nodes:[Ee.SantaFe,Ee.KansasCity],cost:16},{nodes:[Ee.SantaFe,Ee.OklahomaCity],cost:15},{nodes:[Ee.SantaFe,Ee.Dallas],cost:16},{nodes:[Ee.SantaFe,Ee.Houston],cost:21},{nodes:[Ee.KansasCity,Ee.OklahomaCity],cost:8},{nodes:[Ee.KansasCity,Ee.Memphis],cost:12},{nodes:[Ee.KansasCity,Ee.Chicago],cost:8},{nodes:[Ee.KansasCity,Ee.StLouis],cost:6},{nodes:[Ee.OklahomaCity,Ee.Dallas],cost:3},{nodes:[Ee.OklahomaCity,Ee.Memphis],cost:14},{nodes:[Ee.Dallas,Ee.Houston],cost:5},{nodes:[Ee.Dallas,Ee.Memphis],cost:12},{nodes:[Ee.Dallas,Ee.NewOrleans],cost:12},{nodes:[Ee.Houston,Ee.NewOrleans],cost:8},{nodes:[Ee.Memphis,Ee.Birmingham],cost:6},{nodes:[Ee.Memphis,Ee.NewOrleans],cost:7},{nodes:[Ee.Memphis,Ee.StLouis],cost:7},{nodes:[Ee.Birmingham,Ee.NewOrleans],cost:11},{nodes:[Ee.Birmingham,Ee.Atlanta],cost:3},{nodes:[Ee.Birmingham,Ee.Jacksonvile],cost:9},{nodes:[Ee.NewOrleans,Ee.Jacksonvile],cost:16},{nodes:[Ee.Fargo,Ee.Duluth],cost:6},{nodes:[Ee.Fargo,Ee.Minneapolis],cost:6},{nodes:[Ee.Duluth,Ee.Minneapolis],cost:5},{nodes:[Ee.Duluth,Ee.Chicago],cost:12},{nodes:[Ee.Duluth,Ee.Detroit],cost:15},{nodes:[Ee.Minneapolis,Ee.Chicago],cost:8},{nodes:[Ee.Chicago,Ee.StLouis],cost:10},{nodes:[Ee.Chicago,Ee.Cincinnati],cost:7},{nodes:[Ee.Chicago,Ee.Detroit],cost:7},{nodes:[Ee.StLouis,Ee.Cincinnati],cost:12},{nodes:[Ee.StLouis,Ee.Atlanta],cost:12},{nodes:[Ee.Cincinnati,Ee.Knoxvile],cost:6},{nodes:[Ee.Cincinnati,Ee.Detroit],cost:4},{nodes:[Ee.Cincinnati,Ee.Pittsburgh],cost:7},{nodes:[Ee.Cincinnati,Ee.Raleigh],cost:15},{nodes:[Ee.Knoxvile,Ee.Atlanta],cost:5},{nodes:[Ee.Detroit,Ee.Buffalo],cost:7},{nodes:[Ee.Detroit,Ee.Pittsburgh],cost:6},{nodes:[Ee.Buffalo,Ee.Pittsburgh],cost:7},{nodes:[Ee.Buffalo,Ee.NewYork],cost:8},{nodes:[Ee.Pittsburgh,Ee.Washington],cost:6},{nodes:[Ee.Pittsburgh,Ee.Raleigh],cost:7},{nodes:[Ee.Boston,Ee.NewYork],cost:3},{nodes:[Ee.NewYork,Ee.Philadelphia],cost:0},{nodes:[Ee.Philadelphia,Ee.Washington],cost:3},{nodes:[Ee.Washington,Ee.Norfolk],cost:5},{nodes:[Ee.Norfolk,Ee.Raleigh],cost:3},{nodes:[Ee.Raleigh,Ee.Atlanta],cost:7},{nodes:[Ee.Raleigh,Ee.Savannah],cost:7},{nodes:[Ee.Atlanta,Ee.Savannah],cost:7},{nodes:[Ee.Savannah,Ee.Jacksonvile],cost:0},{nodes:[Ee.Jacksonvile,Ee.Tampa],cost:4},{nodes:[Ee.Tampa,Ee.Miami],cost:4}],layout:"Landscape",polygons:[{region:Te.Brown,points:[[930,423],[1082,331],[1075,231],[716,249],[758,303],[897,406]]},{region:Te.Green,points:[[898,405],[762,499],[758,643],[887,744],[938,688],[889,618],[1014,432],[985,387],[929,420]]},{region:Te.Yellow,points:[[895,403],[760,499],[630,393],[607,345],[608,275],[439,162],[654,114],[771,245],[716,247],[758,301]]},{region:Te.Red,points:[[606,344],[476,371],[445,597],[546,664],[758,641],[760,497],[629,391]]},{region:Te.Purple,points:[[606,342],[476,369],[347,395],[313,301],[18,287],[18,165],[76,74],[438,160],[607,275]]},{region:Te.Cyan,points:[[18,285],[20,429],[142,583],[445,594],[476,368],[346,392],[312,300]]}]},Fe={name:"USA",cities:[{name:Ee.Seattle,region:Te.Purple,x:74,y:99},{name:Ee.Portland,region:Te.Purple,x:45,y:167},{name:Ee.Boise,region:Te.Purple,x:180,y:220},{name:Ee.Billings,region:Te.Purple,x:345,y:180},{name:Ee.Cheyenne,region:Te.Purple,x:410,y:280},{name:Ee.Denver,region:Te.Purple,x:400,y:333},{name:Ee.Omaha,region:Te.Purple,x:566,y:293},{name:Ee.SanFrancisco,region:Te.Cyan,x:48,y:371},{name:Ee.LosAngeles,region:Te.Cyan,x:116,y:460},{name:Ee.SanDiego,region:Te.Cyan,x:157,y:507},{name:Ee.LasVegas,region:Te.Cyan,x:200,y:410},{name:Ee.SaltLakeCity,region:Te.Cyan,x:266,y:311},{name:Ee.Phoenix,region:Te.Cyan,x:260,y:486},{name:Ee.SantaFe,region:Te.Cyan,x:371,y:435},{name:Ee.KansasCity,region:Te.Red,x:587,y:356},{name:Ee.OklahomaCity,region:Te.Red,x:550,y:437},{name:Ee.Dallas,region:Te.Red,x:560,y:504},{name:Ee.Houston,region:Te.Red,x:569,y:571},{name:Ee.Memphis,region:Te.Red,x:678,y:449},{name:Ee.Birmingham,region:Te.Red,x:739,y:486},{name:Ee.NewOrleans,region:Te.Red,x:674,y:570},{name:Ee.Fargo,region:Te.Yellow,x:551,y:152},{name:Ee.Duluth,region:Te.Yellow,x:637,y:133},{name:Ee.Minneapolis,region:Te.Yellow,x:621,y:190},{name:Ee.Chicago,region:Te.Yellow,x:716,y:281},{name:Ee.StLouis,region:Te.Yellow,x:678,y:362},{name:Ee.Cincinnati,region:Te.Yellow,x:795,y:348},{name:Ee.Knoxvile,region:Te.Yellow,x:796,y:422},{name:Ee.Detroit,region:Te.Brown,x:803,y:262},{name:Ee.Buffalo,region:Te.Brown,x:913,y:251},{name:Ee.Pittsburgh,region:Te.Brown,x:884,y:316},{name:Ee.Boston,region:Te.Brown,x:1052,y:252},{name:Ee.NewYork,region:Te.Brown,x:1010,y:290},{name:Ee.Philadelphia,region:Te.Brown,x:985,y:330},{name:Ee.Washington,region:Te.Brown,x:934,y:357},{name:Ee.Norfolk,region:Te.Green,x:969,y:405},{name:Ee.Raleigh,region:Te.Green,x:915,y:437},{name:Ee.Atlanta,region:Te.Green,x:801,y:487},{name:Ee.Savannah,region:Te.Green,x:867,y:507},{name:Ee.Jacksonvile,region:Te.Green,x:861,y:559},{name:Ee.Tampa,region:Te.Green,x:819,y:621},{name:Ee.Miami,region:Te.Green,x:883,y:670}],connections:[{nodes:[Ee.Seattle,Ee.Portland],cost:3},{nodes:[Ee.Seattle,Ee.Boise],cost:12},{nodes:[Ee.Seattle,Ee.Billings],cost:9},{nodes:[Ee.Portland,Ee.Boise],cost:13},{nodes:[Ee.Portland,Ee.SanFrancisco],cost:24},{nodes:[Ee.Boise,Ee.Billings],cost:12},{nodes:[Ee.Boise,Ee.SanFrancisco],cost:23},{nodes:[Ee.Boise,Ee.SaltLakeCity],cost:8},{nodes:[Ee.Billings,Ee.Cheyenne],cost:9},{nodes:[Ee.Billings,Ee.Fargo],cost:17},{nodes:[Ee.Billings,Ee.Minneapolis],cost:18},{nodes:[Ee.Cheyenne,Ee.Denver],cost:0},{nodes:[Ee.Cheyenne,Ee.Omaha],cost:14},{nodes:[Ee.Cheyenne,Ee.Minneapolis],cost:18},{nodes:[Ee.Denver,Ee.SaltLakeCity],cost:21},{nodes:[Ee.Denver,Ee.SantaFe],cost:13},{nodes:[Ee.Denver,Ee.KansasCity],cost:16},{nodes:[Ee.Omaha,Ee.KansasCity],cost:5},{nodes:[Ee.Omaha,Ee.Minneapolis],cost:8},{nodes:[Ee.Omaha,Ee.Chicago],cost:12},{nodes:[Ee.SanFrancisco,Ee.LosAngeles],cost:9},{nodes:[Ee.SanFrancisco,Ee.LasVegas],cost:14},{nodes:[Ee.SanFrancisco,Ee.SaltLakeCity],cost:27},{nodes:[Ee.LosAngeles,Ee.SanDiego],cost:3},{nodes:[Ee.LosAngeles,Ee.LasVegas],cost:9},{nodes:[Ee.SanDiego,Ee.LasVegas],cost:9},{nodes:[Ee.SanDiego,Ee.Phoenix],cost:14},{nodes:[Ee.LasVegas,Ee.SaltLakeCity],cost:18},{nodes:[Ee.LasVegas,Ee.Phoenix],cost:15},{nodes:[Ee.LasVegas,Ee.SantaFe],cost:27},{nodes:[Ee.SaltLakeCity,Ee.SantaFe],cost:28},{nodes:[Ee.Phoenix,Ee.SantaFe],cost:18},{nodes:[Ee.SantaFe,Ee.KansasCity],cost:16},{nodes:[Ee.SantaFe,Ee.OklahomaCity],cost:15},{nodes:[Ee.SantaFe,Ee.Dallas],cost:16},{nodes:[Ee.SantaFe,Ee.Houston],cost:20},{nodes:[Ee.KansasCity,Ee.OklahomaCity],cost:8},{nodes:[Ee.KansasCity,Ee.Memphis],cost:12},{nodes:[Ee.KansasCity,Ee.Chicago],cost:8},{nodes:[Ee.KansasCity,Ee.StLouis],cost:6},{nodes:[Ee.OklahomaCity,Ee.Dallas],cost:3},{nodes:[Ee.OklahomaCity,Ee.Memphis],cost:14},{nodes:[Ee.Dallas,Ee.Houston],cost:5},{nodes:[Ee.Dallas,Ee.Memphis],cost:12},{nodes:[Ee.Dallas,Ee.NewOrleans],cost:12},{nodes:[Ee.Houston,Ee.NewOrleans],cost:8},{nodes:[Ee.Memphis,Ee.Birmingham],cost:6},{nodes:[Ee.Memphis,Ee.NewOrleans],cost:7},{nodes:[Ee.Memphis,Ee.StLouis],cost:7},{nodes:[Ee.Birmingham,Ee.NewOrleans],cost:11},{nodes:[Ee.Birmingham,Ee.Atlanta],cost:3},{nodes:[Ee.Birmingham,Ee.Jacksonvile],cost:9},{nodes:[Ee.NewOrleans,Ee.Jacksonvile],cost:16},{nodes:[Ee.Fargo,Ee.Duluth],cost:6},{nodes:[Ee.Fargo,Ee.Minneapolis],cost:6},{nodes:[Ee.Duluth,Ee.Minneapolis],cost:5},{nodes:[Ee.Duluth,Ee.Chicago],cost:12},{nodes:[Ee.Duluth,Ee.Detroit],cost:15},{nodes:[Ee.Minneapolis,Ee.Chicago],cost:8},{nodes:[Ee.Chicago,Ee.StLouis],cost:10},{nodes:[Ee.Chicago,Ee.Cincinnati],cost:7},{nodes:[Ee.Chicago,Ee.Detroit],cost:7},{nodes:[Ee.StLouis,Ee.Cincinnati],cost:12},{nodes:[Ee.StLouis,Ee.Atlanta],cost:12},{nodes:[Ee.Cincinnati,Ee.Knoxvile],cost:6},{nodes:[Ee.Cincinnati,Ee.Detroit],cost:4},{nodes:[Ee.Cincinnati,Ee.Pittsburgh],cost:7},{nodes:[Ee.Knoxvile,Ee.Atlanta],cost:5},{nodes:[Ee.Knoxvile,Ee.Raleigh],cost:11},{nodes:[Ee.Detroit,Ee.Buffalo],cost:7},{nodes:[Ee.Detroit,Ee.Pittsburgh],cost:6},{nodes:[Ee.Buffalo,Ee.Pittsburgh],cost:7},{nodes:[Ee.Buffalo,Ee.NewYork],cost:8},{nodes:[Ee.Pittsburgh,Ee.Washington],cost:6},{nodes:[Ee.Pittsburgh,Ee.Raleigh],cost:7},{nodes:[Ee.Boston,Ee.NewYork],cost:3},{nodes:[Ee.NewYork,Ee.Philadelphia],cost:0},{nodes:[Ee.Philadelphia,Ee.Washington],cost:3},{nodes:[Ee.Washington,Ee.Norfolk],cost:5},{nodes:[Ee.Norfolk,Ee.Raleigh],cost:3},{nodes:[Ee.Raleigh,Ee.Atlanta],cost:7},{nodes:[Ee.Raleigh,Ee.Savannah],cost:7},{nodes:[Ee.Atlanta,Ee.Savannah],cost:7},{nodes:[Ee.Savannah,Ee.Jacksonvile],cost:0},{nodes:[Ee.Jacksonvile,Ee.Tampa],cost:4},{nodes:[Ee.Tampa,Ee.Miami],cost:4}],layout:"Landscape",mapSpecificRules:"You can buy coal from the supply for $8."},Ye=[{number:3,type:ve.Oil,cost:2,citiesPowered:1},{number:4,type:ve.Coal,cost:2,citiesPowered:1},{number:5,type:ve.Hybrid,cost:2,citiesPowered:1},{number:6,type:ve.Garbage,cost:1,citiesPowered:1},{number:7,type:ve.Oil,cost:3,citiesPowered:2},{number:8,type:ve.Coal,cost:3,citiesPowered:2},{number:9,type:ve.Oil,cost:1,citiesPowered:1},{number:10,type:ve.Coal,cost:2,citiesPowered:2},{number:11,type:ve.Uranium,cost:1,citiesPowered:2},{number:12,type:ve.Hybrid,cost:2,citiesPowered:2},{number:13,type:ve.Wind,cost:0,citiesPowered:1},{number:14,type:ve.Garbage,cost:2,citiesPowered:2},{number:15,type:ve.Coal,cost:2,citiesPowered:3},{number:16,type:ve.Oil,cost:2,citiesPowered:3},{number:17,type:ve.Uranium,cost:1,citiesPowered:2},{number:18,type:ve.Wind,cost:0,citiesPowered:2},{number:19,type:ve.Garbage,cost:2,citiesPowered:3},{number:20,type:ve.Coal,cost:3,citiesPowered:5},{number:21,type:ve.Hybrid,cost:2,citiesPowered:4},{number:22,type:ve.Wind,cost:0,citiesPowered:2},{number:23,type:ve.Uranium,cost:1,citiesPowered:3},{number:24,type:ve.Garbage,cost:2,citiesPowered:4},{number:25,type:ve.Coal,cost:2,citiesPowered:5},{number:26,type:ve.Oil,cost:2,citiesPowered:5},{number:27,type:ve.Wind,cost:0,citiesPowered:3},{number:28,type:ve.Uranium,cost:1,citiesPowered:4},{number:29,type:ve.Hybrid,cost:1,citiesPowered:4},{number:30,type:ve.Garbage,cost:3,citiesPowered:6},{number:31,type:ve.Coal,cost:3,citiesPowered:6},{number:32,type:ve.Oil,cost:3,citiesPowered:6},{number:33,type:ve.Wind,cost:0,citiesPowered:4},{number:34,type:ve.Uranium,cost:1,citiesPowered:5},{number:35,type:ve.Oil,cost:1,citiesPowered:5},{number:36,type:ve.Coal,cost:3,citiesPowered:7},{number:37,type:ve.Wind,cost:0,citiesPowered:4},{number:38,type:ve.Garbage,cost:3,citiesPowered:7},{number:39,type:ve.Uranium,cost:1,citiesPowered:6},{number:40,type:ve.Oil,cost:2,citiesPowered:6},{number:42,type:ve.Coal,cost:2,citiesPowered:6},{number:44,type:ve.Wind,cost:0,citiesPowered:5},{number:46,type:ve.Hybrid,cost:3,citiesPowered:7},{number:50,type:ve.Nuclear,cost:0,citiesPowered:6},{number:99,type:ve.Step3,cost:0,citiesPowered:6}],Ve=Object(we["cloneDeep"])(Ye).filter((function(e){return 11!=e.number}));Ve.forEach((function(e){e.type==ve.Garbage&&(e.storage=2*e.cost,e.cost++)})),function(e){e["Pink"]="pink",e["Brown"]="brown",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow"}(Ue||(Ue={})),function(e){e["Hobart"]="Hobart",e["Launceston"]="Launceston",e["Geelong"]="Geelong",e["Melbourne1"]="Melbourne 1",e["Melbourne2"]="Melbourne 2",e["Bendigo"]="Bendigo",e["Albury"]="Albury",e["Wollongong"]="Wollongong",e["Mildura"]="Mildura",e["Dubbo"]="Dubbo",e["Canberra"]="Canberra",e["Sydney1"]="Sydney 1",e["Sydney2"]="Sydney 2",e["Newcastle"]="Newcastle",e["Toowoomba"]="Toowoomba",e["Goldcoast"]="Gold Coast",e["Brisbane"]="Brisbane",e["Rockhampton"]="Rockhampton",e["Mackay"]="Mackay",e["Townsville"]="Townsville",e["Cairns"]="Cairns",e["Porthedland"]="Port Hedland",e["Broome"]="Broome",e["Albany"]="Albany",e["Bunbury"]="Bunbury",e["Perth"]="Perth",e["Kalgoorlie"]="Kalgoorlie",e["Geraldton"]="Geraldton",e["Darwin"]="Darwin",e["Katherine"]="Katherine",e["Tennantcreek"]="Tennant Creek",e["Alicesprings"]="Alice Springs",e["Portaugusta"]="Port Augusta",e["CooberPedy"]="Coober Pedy",e["Adelaide"]="Adelaide"}(We||(We={}));var Je,$e,qe={name:"Australia",layout:"Landscape",adjustRatio:[.33,.33],mapPosition:[40,-30],mapRotation:180,cities:[{name:We.Hobart,region:Ue.Pink,x:540,y:467},{name:We.Launceston,region:Ue.Pink,x:720,y:500},{name:We.Geelong,region:Ue.Pink,x:988,y:712},{name:We.Melbourne1,region:Ue.Pink,x:790,y:650},{name:We.Melbourne2,region:Ue.Pink,x:790,y:790},{name:We.Bendigo,region:Ue.Pink,x:1052,y:870},{name:We.Albury,region:Ue.Brown,x:810,y:983},{name:We.Wollongong,region:Ue.Brown,x:530,y:1080},{name:We.Mildura,region:Ue.Pink,x:1185,y:1010},{name:We.Dubbo,region:Ue.Brown,x:891,y:1364},{name:We.Canberra,region:Ue.Brown,x:804,y:1188},{name:We.Sydney1,region:Ue.Brown,x:550,y:1230},{name:We.Sydney2,region:Ue.Brown,x:550,y:1380},{name:We.Newcastle,region:Ue.Brown,x:530,y:1545},{name:We.Toowoomba,region:Ue.Green,x:1010,y:1660},{name:We.Goldcoast,region:Ue.Green,x:660,y:1730},{name:We.Brisbane,region:Ue.Green,x:740,y:1885},{name:We.Rockhampton,region:Ue.Green,x:1040,y:1987},{name:We.Mackay,region:Ue.Green,x:1260,y:2101},{name:We.Townsville,region:Ue.Green,x:1445,y:2193},{name:We.Cairns,region:Ue.Green,x:1652,y:2209},{name:We.Porthedland,region:Ue.Red,x:2741,y:2002},{name:We.Broome,region:Ue.Red,x:2503,y:2175},{name:We.Albany,region:Ue.Red,x:2400,y:850},{name:We.Bunbury,region:Ue.Red,x:2700,y:1030},{name:We.Perth,region:Ue.Red,x:2680,y:1230},{name:We.Kalgoorlie,region:Ue.Red,x:2177,y:1295},{name:We.Geraldton,region:Ue.Red,x:2747,y:1557},{name:We.Darwin,region:Ue.Yellow,x:2264,y:2016},{name:We.Katherine,region:Ue.Yellow,x:2105,y:1947},{name:We.Tennantcreek,region:Ue.Yellow,x:1905,y:1736},{name:We.Alicesprings,region:Ue.Yellow,x:1803,y:1512},{name:We.Portaugusta,region:Ue.Yellow,x:1520,y:1094},{name:We.CooberPedy,region:Ue.Yellow,x:1850,y:1232},{name:We.Adelaide,region:Ue.Yellow,x:1430,y:863}],connections:[{nodes:[We.Broome,We.Porthedland],cost:13},{nodes:[We.Kalgoorlie,We.Geraldton],cost:16},{nodes:[We.Geraldton,We.Perth],cost:9},{nodes:[We.Perth,We.Kalgoorlie],cost:12},{nodes:[We.Kalgoorlie,We.Albany],cost:16},{nodes:[We.Albany,We.Perth],cost:9},{nodes:[We.Perth,We.Bunbury],cost:4},{nodes:[We.Bunbury,We.Albany],cost:6},{nodes:[We.Cairns,We.Townsville],cost:9},{nodes:[We.Townsville,We.Mackay],cost:9},{nodes:[We.Mackay,We.Rockhampton],cost:8},{nodes:[We.Rockhampton,We.Toowoomba],cost:15},{nodes:[We.Toowoomba,We.Brisbane],cost:5},{nodes:[We.Brisbane,We.Rockhampton],cost:15},{nodes:[We.Brisbane,We.Goldcoast],cost:2},{nodes:[We.Goldcoast,We.Toowoomba],cost:6},{nodes:[We.Goldcoast,We.Newcastle],cost:15},{nodes:[We.Newcastle,We.Sydney2],cost:4},{nodes:[We.Sydney2,We.Sydney1],cost:0},{nodes:[We.Newcastle,We.Dubbo],cost:10},{nodes:[We.Dubbo,We.Toowoomba],cost:18},{nodes:[We.Sydney1,We.Wollongong],cost:2},{nodes:[We.Sydney1,We.Canberra],cost:8},{nodes:[We.Canberra,We.Dubbo],cost:11},{nodes:[We.Canberra,We.Newcastle],cost:10},{nodes:[We.Dubbo,We.Mildura],cost:16},{nodes:[We.Mildura,We.Canberra],cost:16},{nodes:[We.Canberra,We.Albury],cost:7},{nodes:[We.Mildura,We.Bendigo],cost:7},{nodes:[We.Bendigo,We.Melbourne2],cost:3},{nodes:[We.Melbourne2,We.Albury],cost:9},{nodes:[We.Mildura,We.Adelaide],cost:8},{nodes:[We.Adelaide,We.Portaugusta],cost:7},{nodes:[We.Portaugusta,We.CooberPedy],cost:11},{nodes:[We.Mildura,We.Portaugusta],cost:11},{nodes:[We.Adelaide,We.Geelong],cost:13},{nodes:[We.Geelong,We.Bendigo],cost:5},{nodes:[We.Bendigo,We.Albury],cost:6},{nodes:[We.Wollongong,We.Melbourne1],cost:19},{nodes:[We.Melbourne1,We.Launceston],cost:19},{nodes:[We.Launceston,We.Hobart],cost:5},{nodes:[We.Melbourne1,We.Geelong],cost:2},{nodes:[We.Melbourne2,We.Melbourne1],cost:0},{nodes:[We.CooberPedy,We.Alicesprings],cost:13},{nodes:[We.Alicesprings,We.Tennantcreek],cost:10},{nodes:[We.Tennantcreek,We.Katherine],cost:14},{nodes:[We.Katherine,We.Darwin],cost:6}],resupply:[[[3,5,4],[4,6,4],[4,7,5],[5,9,6],[7,10,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]],uraniumMineResupply:[[1,2,3],[1,2,3],[2,2,4],[2,3,5],[3,3,6]],startingResources:[24,18,15,0],startingSupply:[24,24,24,0],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ye).filter((function(e){return 17!==e.number}));if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[$t(3),$t(4),$t(5),$t(6)],o=[$t(7),$t(8),$t(9),$t(10)]}else{var u=De(a.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Uranium mines: the five uranium power plants (11, 23, 28, 34, 39) are replaced by uranium mines. Power plant 17 is removed from the deck. Mines are bought in the normal power-plant auctions but do not power cities and do not count toward the 3-power-plant hand limit (a player may hold any number of mines plus up to 3 power plants). Mines DO count for player order. Instead of powering cities, during Bureaucracy each mine produces uranium for sale on the separate uranium market. Uranium market: a separate market of 12 slots (prices $2–$7, two slots each), all filled at game start. When selling, a player earns the highest available (empty-slot) price times the total cities their mines could power, then places one uranium token per mine on the highest empty slots. The resource-market refill REMOVES uranium tokens from the cheapest filled slots. Selling happens AUTOMATICALLY during Bureaucracy, in reverse turn order (the last player in turn order sells first). The printed rules let a player decline to sell; for simplicity this implementation always sells, so no player action is required. Unlike city income, uranium income is still paid in the final round. Main resource market: there is no uranium row — coal, oil and garbage only. Step 3 CO2 tax: when Step 3 begins, the six cheapest tokens of each resource move into new $9 and $10 spaces, and the $1 and $2 spaces become inactive for the rest of the game (the market shifts up by $2). General connection: any single build may connect a city for a flat 20 Elektro instead of the shortest-path connection cost, and this may be used multiple times in one turn. Metropolises: Melbourne and Sydney each consist of two cities (1 and 2) connected by a 0-cost edge. Regions need not be adjacent: any combination of regions may be in play."};(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Blue"]="blue",e["Yellow"]="yellow"})(Je||(Je={})),function(e){e["Friedrichshafen"]="Friedrichshafen",e["Ravensburg"]="Ravensburg",e["Biberach"]="Biberach",e["Sigmarincen"]="Sigmaringen",e["Konstanz"]="Konstanz",e["Ulm"]="Ulm",e["Augsburg"]="Augsburg",e["Basel"]="Basel",e["Waldshuttiencen"]="Waldshut-Tiengen",e["Singen"]="Singen",e["Tuttlincen"]="Tuttlingen",e["Donaueschingen"]="Donaueschingen",e["Freiburg"]="Freiburg",e["Lorrach"]="Lorrach",e["Tauberbischofsheim"]="Tauberbischofsheim",e["Schwabischhall"]="Schwabisch Hall",e["Heilbronn"]="Heilbronn",e["Sinsheim"]="Sinsheim",e["Heidelber"]="Heidelberg",e["Mannheim"]="Mannheim",e["Luowigshafen"]="Ludwigshafen",e["Nurnberg"]="Nurnberg",e["Ellwangen"]="Ellwangen",e["Coppingen"]="Göppingen",e["Reutlincen"]="Reutlingen",e["Stuttgart"]="Stuttgart",e["Ludwigsburg"]="Ludwigsburg",e["Boblingen"]="Boblingen",e["Laha"]="Lahr",e["Badenbaden"]="Baden-Baden",e["Offenburg"]="Offenburg",e["Strasbourg"]="Strasbourg",e["Pforzheim"]="Pforzheim",e["Rastatt"]="Rastatt",e["Karlsruhf"]="Karlsruhe"}($e||($e={}));var Ze,Xe,Qe={name:"Baden-Württemberg",cities:[{name:$e.Friedrichshafen,region:Je.Purple,x:1286,y:2177},{name:$e.Ravensburg,region:Je.Purple,x:1365,y:2023},{name:$e.Biberach,region:Je.Purple,x:1451,y:1779},{name:$e.Sigmarincen,region:Je.Purple,x:1111,y:1803},{name:$e.Konstanz,region:Je.Purple,x:1088,y:2163},{name:$e.Ulm,region:Je.Purple,x:1541,y:1499},{name:$e.Augsburg,region:Je.Purple,x:1830,y:1505,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:$e.Basel,region:Je.Green,x:103,y:2271,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:$e.Waldshuttiencen,region:Je.Green,x:502,y:2166},{name:$e.Singen,region:Je.Green,x:874,y:2084},{name:$e.Tuttlincen,region:Je.Green,x:870,y:1854},{name:$e.Donaueschingen,region:Je.Green,x:669,y:1923},{name:$e.Freiburg,region:Je.Green,x:290,y:1828},{name:$e.Lorrach,region:Je.Green,x:212,y:2141},{name:$e.Tauberbischofsheim,region:Je.Red,x:1354,y:450},{name:$e.Schwabischhall,region:Je.Red,x:1415,y:899},{name:$e.Heilbronn,region:Je.Red,x:1115,y:872},{name:$e.Sinsheim,region:Je.Red,x:920,y:785},{name:$e.Heidelber,region:Je.Red,x:817,y:660},{name:$e.Mannheim,region:Je.Red,x:710,y:540},{name:$e.Luowigshafen,region:Je.Red,x:579,y:588,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:$e.Nurnberg,region:Je.Blue,x:1837,y:771,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:$e.Ellwangen,region:Je.Blue,x:1637,y:1030},{name:$e.Coppingen,region:Je.Blue,x:1387,y:1233},{name:$e.Reutlincen,region:Je.Blue,x:1107,y:1443},{name:$e.Stuttgart,region:Je.Blue,x:1106,y:1217},{name:$e.Ludwigsburg,region:Je.Blue,x:1099,y:1047},{name:$e.Boblingen,region:Je.Blue,x:956,y:1277},{name:$e.Laha,region:Je.Yellow,x:296,y:1575},{name:$e.Badenbaden,region:Je.Yellow,x:554,y:1259},{name:$e.Offenburg,region:Je.Yellow,x:395,y:1422},{name:$e.Strasbourg,region:Je.Yellow,x:211,y:1330,transregional:!0,slotCosts:[15,20],stepSlots:[0,1,2]},{name:$e.Pforzheim,region:Je.Yellow,x:794,y:1095},{name:$e.Rastatt,region:Je.Yellow,x:509,y:1109},{name:$e.Karlsruhf,region:Je.Yellow,x:638,y:974}],connections:[{nodes:[$e.Luowigshafen,$e.Mannheim],cost:0},{nodes:[$e.Mannheim,$e.Heidelber],cost:4},{nodes:[$e.Mannheim,$e.Karlsruhf],cost:10},{nodes:[$e.Karlsruhf,$e.Heidelber],cost:9},{nodes:[$e.Heidelber,$e.Sinsheim],cost:5},{nodes:[$e.Sinsheim,$e.Tauberbischofsheim],cost:15},{nodes:[$e.Tauberbischofsheim,$e.Heilbronn],cost:13},{nodes:[$e.Heilbronn,$e.Sinsheim],cost:6},{nodes:[$e.Sinsheim,$e.Karlsruhf],cost:9},{nodes:[$e.Karlsruhf,$e.Rastatt],cost:4},{nodes:[$e.Karlsruhf,$e.Pforzheim],cost:6},{nodes:[$e.Pforzheim,$e.Sinsheim],cost:10},{nodes:[$e.Tauberbischofsheim,$e.Schwabischhall],cost:13},{nodes:[$e.Schwabischhall,$e.Ellwangen],cost:8},{nodes:[$e.Ellwangen,$e.Nurnberg],cost:18},{nodes:[$e.Schwabischhall,$e.Coppingen],cost:11},{nodes:[$e.Coppingen,$e.Ellwangen],cost:10},{nodes:[$e.Ludwigsburg,$e.Heilbronn],cost:5},{nodes:[$e.Heilbronn,$e.Schwabischhall],cost:9},{nodes:[$e.Schwabischhall,$e.Ludwigsburg],cost:10},{nodes:[$e.Ludwigsburg,$e.Coppingen],cost:9},{nodes:[$e.Coppingen,$e.Stuttgart],cost:8},{nodes:[$e.Ludwigsburg,$e.Sinsheim],cost:10},{nodes:[$e.Ludwigsburg,$e.Pforzheim],cost:8},{nodes:[$e.Pforzheim,$e.Badenbaden],cost:9},{nodes:[$e.Badenbaden,$e.Rastatt],cost:2},{nodes:[$e.Strasbourg,$e.Offenburg],cost:5},{nodes:[$e.Offenburg,$e.Badenbaden],cost:8},{nodes:[$e.Pforzheim,$e.Stuttgart],cost:8},{nodes:[$e.Stuttgart,$e.Ludwigsburg],cost:2},{nodes:[$e.Stuttgart,$e.Boblingen],cost:4},{nodes:[$e.Boblingen,$e.Pforzheim],cost:7},{nodes:[$e.Boblingen,$e.Badenbaden],cost:15},{nodes:[$e.Reutlincen,$e.Stuttgart],cost:9},{nodes:[$e.Boblingen,$e.Reutlincen],cost:8},{nodes:[$e.Reutlincen,$e.Badenbaden],cost:22},{nodes:[$e.Offenburg,$e.Reutlincen],cost:30},{nodes:[$e.Reutlincen,$e.Coppingen],cost:10},{nodes:[$e.Coppingen,$e.Ulm],cost:10},{nodes:[$e.Ulm,$e.Reutlincen],cost:16},{nodes:[$e.Ellwangen,$e.Ulm],cost:19},{nodes:[$e.Ulm,$e.Augsburg],cost:16},{nodes:[$e.Reutlincen,$e.Tuttlincen],cost:17},{nodes:[$e.Reutlincen,$e.Sigmarincen],cost:11},{nodes:[$e.Sigmarincen,$e.Ulm],cost:14},{nodes:[$e.Ulm,$e.Biberach],cost:8},{nodes:[$e.Biberach,$e.Sigmarincen],cost:11},{nodes:[$e.Biberach,$e.Ravensburg],cost:9},{nodes:[$e.Ravensburg,$e.Sigmarincen],cost:10},{nodes:[$e.Sigmarincen,$e.Tuttlincen],cost:7},{nodes:[$e.Tuttlincen,$e.Offenburg],cost:27},{nodes:[$e.Offenburg,$e.Laha],cost:3},{nodes:[$e.Laha,$e.Freiburg],cost:8},{nodes:[$e.Laha,$e.Donaueschingen],cost:19},{nodes:[$e.Donaueschingen,$e.Tuttlincen],cost:6},{nodes:[$e.Tuttlincen,$e.Singen],cost:7},{nodes:[$e.Singen,$e.Donaueschingen],cost:7},{nodes:[$e.Donaueschingen,$e.Freiburg],cost:13},{nodes:[$e.Freiburg,$e.Lorrach],cost:10},{nodes:[$e.Freiburg,$e.Waldshuttiencen],cost:15},{nodes:[$e.Waldshuttiencen,$e.Lorrach],cost:9},{nodes:[$e.Lorrach,$e.Basel],cost:2},{nodes:[$e.Waldshuttiencen,$e.Donaueschingen],cost:11},{nodes:[$e.Singen,$e.Konstanz],cost:6},{nodes:[$e.Konstanz,$e.Friedrichshafen],cost:9},{nodes:[$e.Friedrichshafen,$e.Ravensburg],cost:3},{nodes:[$e.Friedrichshafen,$e.Sigmarincen],cost:11},{nodes:[$e.Sigmarincen,$e.Konstanz],cost:14},{nodes:[$e.Konstanz,$e.Tuttlincen],cost:11}],layout:"Portrait",adjustRatio:[.425,.425],mapPosition:[100,-90],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],mapSpecificRules:"Phase order change: buy power plants first, then determine player order. If no power plant is sold in a round, remove the two lowest-numbered plants from the market and replace them from the draw stack. Never remove a power plant whose number is equal to or lower than the number of cities any player has powered. Transregional cities (e.g. Strasbourg) are only available starting in Step 2. Step 2 begins when any player connects to 9 cities (2 players), 6 cities (3–5 players), or 5 cities (6 players)."};(function(e){e["Green"]="green",e["Brown"]="brown",e["Yellow"]="yellow",e["Red"]="red",e["Blue"]="blue"})(Ze||(Ze={})),function(e){e["Groningen"]="Groningen",e["Enschede"]="Enschede",e["Apeldoorn"]="Apeldoorn",e["Arnhem"]="Arnhem",e["Leeuwarden"]="Leeuwarden",e["Nijmegen"]="Nijmegen",e["Denhelder"]="Den Helder",e["Zaanstad"]="Zaanstad",e["Amsterdam"]="Amsterdam",e["Utrecht"]="Utrecht",e["Haarlem"]="Haarlem",e["Leiden"]="Leiden",e["Denhaas"]="Den Haas",e["Rotterdam"]="Rotterdam",e["Enbosch"]="En Bosch",e["Venlo"]="Venlo",e["Eindhoven"]="Eindhoven",e["Tilburg"]="Tilburg",e["Breda"]="Breda",e["Middelburg"]="Middelburg",e["Maastricht"]="Maastricht",e["Leuven"]="Leuven",e["Brussel"]="Brussel",e["Antwerpen"]="Antwerpen",e["Gent"]="Gent",e["Kortrijk"]="Kortrijk",e["Brugge"]="Brugge",e["Dostende"]="Dostende",e["Liege"]="Liege",e["Namur"]="Namur",e["Bruxelles"]="Bruxelles",e["Charleroi"]="Charleroi",e["Mons"]="Mons",e["Arlon"]="Arlon",e["Luxembourg"]="Luxembourg"}(Xe||(Xe={}));var en,nn,tn={name:"Benelux",cities:[{name:Xe.Groningen,region:Ze.Green,x:654,y:147},{name:Xe.Enschede,region:Ze.Green,x:659,y:369},{name:Xe.Apeldoorn,region:Ze.Green,x:552,y:329},{name:Xe.Arnhem,region:Ze.Green,x:541,y:386},{name:Xe.Leeuwarden,region:Ze.Green,x:560,y:136},{name:Xe.Nijmegen,region:Ze.Green,x:518,y:445},{name:Xe.Denhelder,region:Ze.Green,x:411,y:169},{name:Xe.Zaanstad,region:Ze.Brown,x:432,y:245},{name:Xe.Amsterdam,region:Ze.Brown,x:437,y:299},{name:Xe.Utrecht,region:Ze.Brown,x:429,y:361},{name:Xe.Haarlem,region:Ze.Brown,x:373,y:259},{name:Xe.Leiden,region:Ze.Brown,x:355,y:322},{name:Xe.Denhaas,region:Ze.Brown,x:300,y:347},{name:Xe.Rotterdam,region:Ze.Brown,x:338,y:400},{name:Xe.Enbosch,region:Ze.Yellow,x:448,y:447},{name:Xe.Venlo,region:Ze.Yellow,x:550,y:526},{name:Xe.Eindhoven,region:Ze.Yellow,x:463,y:539},{name:Xe.Tilburg,region:Ze.Yellow,x:404,y:497},{name:Xe.Breda,region:Ze.Yellow,x:349,y:466},{name:Xe.Middelburg,region:Ze.Yellow,x:210,y:453},{name:Xe.Maastricht,region:Ze.Yellow,x:480,y:640},{name:Xe.Leuven,region:Ze.Red,x:352,y:619},{name:Xe.Brussel,region:Ze.Red,x:286,y:595},{name:Xe.Antwerpen,region:Ze.Red,x:304,y:526},{name:Xe.Gent,region:Ze.Red,x:206,y:562},{name:Xe.Kortrijk,region:Ze.Red,x:132,y:589},{name:Xe.Brugge,region:Ze.Red,x:160,y:511},{name:Xe.Dostende,region:Ze.Red,x:94,y:495},{name:Xe.Liege,region:Ze.Blue,x:445,y:705},{name:Xe.Namur,region:Ze.Blue,x:361,y:713},{name:Xe.Bruxelles,region:Ze.Blue,x:283,y:642},{name:Xe.Charleroi,region:Ze.Blue,x:278,y:725},{name:Xe.Mons,region:Ze.Blue,x:212,y:686},{name:Xe.Arlon,region:Ze.Blue,x:431,y:876},{name:Xe.Luxembourg,region:Ze.Blue,x:502,y:918}],connections:[{nodes:[Xe.Denhelder,Xe.Leeuwarden],cost:13},{nodes:[Xe.Leeuwarden,Xe.Groningen],cost:6},{nodes:[Xe.Groningen,Xe.Enschede],cost:12},{nodes:[Xe.Enschede,Xe.Apeldoorn],cost:9},{nodes:[Xe.Apeldoorn,Xe.Arnhem],cost:3},{nodes:[Xe.Arnhem,Xe.Nijmegen],cost:2},{nodes:[Xe.Nijmegen,Xe.Enbosch],cost:6},{nodes:[Xe.Nijmegen,Xe.Venlo],cost:7},{nodes:[Xe.Nijmegen,Xe.Eindhoven],cost:7},{nodes:[Xe.Eindhoven,Xe.Enbosch],cost:4},{nodes:[Xe.Enbosch,Xe.Utrecht],cost:8},{nodes:[Xe.Apeldoorn,Xe.Leeuwarden],cost:15},{nodes:[Xe.Leeuwarden,Xe.Enschede],cost:13},{nodes:[Xe.Enschede,Xe.Arnhem],cost:7},{nodes:[Xe.Arnhem,Xe.Utrecht],cost:6},{nodes:[Xe.Utrecht,Xe.Amsterdam],cost:4},{nodes:[Xe.Amsterdam,Xe.Haarlem],cost:2},{nodes:[Xe.Haarlem,Xe.Zaanstad],cost:2},{nodes:[Xe.Zaanstad,Xe.Denhelder],cost:6},{nodes:[Xe.Denhelder,Xe.Haarlem],cost:7},{nodes:[Xe.Haarlem,Xe.Leiden],cost:3},{nodes:[Xe.Leiden,Xe.Denhaas],cost:2},{nodes:[Xe.Denhaas,Xe.Rotterdam],cost:3},{nodes:[Xe.Rotterdam,Xe.Leiden],cost:3},{nodes:[Xe.Leiden,Xe.Amsterdam],cost:4},{nodes:[Xe.Leiden,Xe.Utrecht],cost:4},{nodes:[Xe.Utrecht,Xe.Rotterdam],cost:5},{nodes:[Xe.Rotterdam,Xe.Enbosch],cost:11},{nodes:[Xe.Breda,Xe.Rotterdam],cost:8},{nodes:[Xe.Breda,Xe.Middelburg],cost:9},{nodes:[Xe.Middelburg,Xe.Antwerpen],cost:8},{nodes:[Xe.Antwerpen,Xe.Brugge],cost:9},{nodes:[Xe.Brugge,Xe.Dostende],cost:2},{nodes:[Xe.Amsterdam,Xe.Zaanstad],cost:1},{nodes:[Xe.Amsterdam,Xe.Apeldoorn],cost:7},{nodes:[Xe.Apeldoorn,Xe.Utrecht],cost:6},{nodes:[Xe.Venlo,Xe.Eindhoven],cost:5},{nodes:[Xe.Eindhoven,Xe.Tilburg],cost:4},{nodes:[Xe.Tilburg,Xe.Breda],cost:2},{nodes:[Xe.Breda,Xe.Enbosch],cost:5},{nodes:[Xe.Breda,Xe.Antwerpen],cost:5},{nodes:[Xe.Antwerpen,Xe.Tilburg],cost:6},{nodes:[Xe.Antwerpen,Xe.Eindhoven],cost:8},{nodes:[Xe.Eindhoven,Xe.Maastricht],cost:8},{nodes:[Xe.Maastricht,Xe.Venlo],cost:10},{nodes:[Xe.Maastricht,Xe.Leuven],cost:7},{nodes:[Xe.Leuven,Xe.Eindhoven],cost:9},{nodes:[Xe.Leuven,Xe.Brussel],cost:2},{nodes:[Xe.Brussel,Xe.Bruxelles],cost:0},{nodes:[Xe.Bruxelles,Xe.Charleroi],cost:5},{nodes:[Xe.Charleroi,Xe.Namur],cost:3},{nodes:[Xe.Namur,Xe.Bruxelles],cost:5},{nodes:[Xe.Leuven,Xe.Namur],cost:5},{nodes:[Xe.Leuven,Xe.Liege],cost:7},{nodes:[Xe.Liege,Xe.Namur],cost:6},{nodes:[Xe.Liege,Xe.Maastricht],cost:3},{nodes:[Xe.Kortrijk,Xe.Dostende],cost:5},{nodes:[Xe.Brugge,Xe.Kortrijk],cost:4},{nodes:[Xe.Kortrijk,Xe.Gent],cost:4},{nodes:[Xe.Gent,Xe.Brugge],cost:3},{nodes:[Xe.Kortrijk,Xe.Bruxelles],cost:10},{nodes:[Xe.Bruxelles,Xe.Mons],cost:5},{nodes:[Xe.Mons,Xe.Kortrijk],cost:8},{nodes:[Xe.Gent,Xe.Antwerpen],cost:5},{nodes:[Xe.Antwerpen,Xe.Brussel],cost:4},{nodes:[Xe.Brussel,Xe.Gent],cost:7},{nodes:[Xe.Antwerpen,Xe.Leuven],cost:4},{nodes:[Xe.Mons,Xe.Charleroi],cost:4},{nodes:[Xe.Charleroi,Xe.Arlon],cost:18},{nodes:[Xe.Arlon,Xe.Luxembourg],cost:5},{nodes:[Xe.Luxembourg,Xe.Liege],cost:20},{nodes:[Xe.Liege,Xe.Arlon],cost:18},{nodes:[Xe.Arlon,Xe.Namur],cost:16},{nodes:[Xe.Tilburg,Xe.Enbosch],cost:3}],layout:"Portrait",mapPosition:[0,-50],adjustRatio:[1.15,1.15],resupply:[[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[1,2,3],[2,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[18,24,6,2],viewBox:[1530,1060],playerOrderPosition:[1225,140],buttonsPosition:[1370,0],playerBoardsPosition:[1170,200],actualMarketWidth:495,mapSpecificRules:"Ecological plants can enter the market earlier. Remove smallest power plant after each round (unless discount plant was removed)."};(function(e){e["Red"]="red",e["Pink"]="pink",e["Purple"]="purple",e["Green"]="green",e["Brown"]="brown",e["Yellow"]="yellow"})(en||(en={})),function(e){e["Parnaiba"]="Parnaiba",e["Fortaleza"]="Fortaleza",e["Sadluis"]="Sadluis",e["Belem"]="Belem",e["Teresina"]="Teresina",e["Imperatriz"]="Imperatriz",e["Maraba"]="Maraba",e["Campinagrande"]="Campina Grande",e["Petrolina"]="Petrolina",e["Natal"]="Natal",e["Joaopessoa"]="Joaopessoa",e["Recife"]="Recife",e["Maceio"]="Maceio",e["Aracaju"]="Aracaju",e["Salvadordabahia"]="Salvador Da Bahia",e["Montesclaros"]="Montes Claros",e["Brasilia"]="Brasilia",e["Palmas"]="Palmas",e["Porangatu"]="Porangatu",e["Goiania"]="Goiania",e["Uberlandia"]="Uberlandia",e["Vitoria"]="Vitoria",e["Riodejaneiro"]="Rio De Janeiro",e["Saogoncalo"]="Sao Goncalo",e["Saopaulo"]="Sao Paulo",e["Guarulhos"]="Guarulhos",e["Campinas"]="Campinas",e["Belohorizonte"]="Belo Horizonte",e["Curitiba"]="Curitiba",e["Florianopolis"]="Florianopolis",e["Portoalecre"]="Porto Alecre",e["Pelotas"]="Pelotas",e["Urucuaiana"]="Urucuaiana",e["Londrina"]="Londrina",e["Campogrande"]="Campo Grande",e["Macapa"]="Macapa",e["Boavista"]="Boavista",e["Manaus"]="Manaus",e["Portovelho"]="Porto Velho",e["Cuiaba"]="Cuiaba",e["Vilhena"]="Vilhena",e["Riobranco"]="Rio Branco"}(nn||(nn={}));var rn,on,an={name:"Brazil",cities:[{name:nn.Parnaiba,region:en.Red,x:855,y:458},{name:nn.Fortaleza,region:en.Red,x:961,y:478},{name:nn.Sadluis,region:en.Red,x:772,y:418},{name:nn.Belem,region:en.Red,x:655,y:378},{name:nn.Teresina,region:en.Red,x:846,y:548},{name:nn.Imperatriz,region:en.Red,x:697,y:535},{name:nn.Maraba,region:en.Red,x:581,y:492},{name:nn.Campinagrande,region:en.Pink,x:976,y:587},{name:nn.Petrolina,region:en.Pink,x:872,y:648},{name:nn.Natal,region:en.Pink,x:1061,y:518},{name:nn.Joaopessoa,region:en.Pink,x:1097,y:576},{name:nn.Recife,region:en.Pink,x:1083,y:637},{name:nn.Maceio,region:en.Pink,x:1040,y:699},{name:nn.Aracaju,region:en.Pink,x:995,y:750},{name:nn.Salvadordabahia,region:en.Purple,x:960,y:808},{name:nn.Montesclaros,region:en.Purple,x:795,y:847},{name:nn.Brasilia,region:en.Purple,x:671,y:817},{name:nn.Palmas,region:en.Purple,x:648,y:663},{name:nn.Porangatu,region:en.Purple,x:598,y:762},{name:nn.Goiania,region:en.Purple,x:601,y:889},{name:nn.Uberlandia,region:en.Purple,x:646,y:964},{name:nn.Vitoria,region:en.Green,x:910,y:971},{name:nn.Riodejaneiro,region:en.Green,x:795,y:1076},{name:nn.Saogoncalo,region:en.Green,x:843,y:1033},{name:nn.Saopaulo,region:en.Green,x:721,y:1134},{name:nn.Guarulhos,region:en.Green,x:678,y:1089},{name:nn.Campinas,region:en.Green,x:629,y:1037},{name:nn.Belohorizonte,region:en.Green,x:771,y:960},{name:nn.Curitiba,region:en.Brown,x:615,y:1144},{name:nn.Florianopolis,region:en.Brown,x:665,y:1214},{name:nn.Portoalecre,region:en.Brown,x:590,y:1281},{name:nn.Pelotas,region:en.Brown,x:551,y:1346},{name:nn.Urucuaiana,region:en.Brown,x:444,y:1250},{name:nn.Londrina,region:en.Brown,x:516,y:1075},{name:nn.Campogrande,region:en.Brown,x:440,y:983},{name:nn.Macapa,region:en.Yellow,x:561,y:317},{name:nn.Boavista,region:en.Yellow,x:308,y:269},{name:nn.Manaus,region:en.Yellow,x:258,y:466},{name:nn.Portovelho,region:en.Yellow,x:238,y:620},{name:nn.Cuiaba,region:en.Yellow,x:432,y:850},{name:nn.Vilhena,region:en.Yellow,x:328,y:741},{name:nn.Riobranco,region:en.Yellow,x:87,y:666}],connections:[{nodes:[nn.Boavista,nn.Macapa],cost:22},{nodes:[nn.Macapa,nn.Belem],cost:10},{nodes:[nn.Belem,nn.Sadluis],cost:10},{nodes:[nn.Sadluis,nn.Imperatriz],cost:9},{nodes:[nn.Belem,nn.Imperatriz],cost:9},{nodes:[nn.Belem,nn.Maraba],cost:9},{nodes:[nn.Macapa,nn.Maraba],cost:16},{nodes:[nn.Maraba,nn.Manaus],cost:22},{nodes:[nn.Macapa,nn.Manaus],cost:18},{nodes:[nn.Boavista,nn.Manaus],cost:13},{nodes:[nn.Boavista,nn.Riobranco],cost:30},{nodes:[nn.Riobranco,nn.Manaus],cost:23},{nodes:[nn.Manaus,nn.Portovelho],cost:15},{nodes:[nn.Portovelho,nn.Riobranco],cost:10},{nodes:[nn.Riobranco,nn.Vilhena],cost:18},{nodes:[nn.Portovelho,nn.Vilhena],cost:12},{nodes:[nn.Manaus,nn.Vilhena],cost:21},{nodes:[nn.Vilhena,nn.Cuiaba],cost:10},{nodes:[nn.Vilhena,nn.Maraba],cost:31},{nodes:[nn.Maraba,nn.Imperatriz],cost:4},{nodes:[nn.Sadluis,nn.Teresina],cost:8},{nodes:[nn.Teresina,nn.Imperatriz],cost:11},{nodes:[nn.Imperatriz,nn.Palmas],cost:9},{nodes:[nn.Palmas,nn.Maraba],cost:10},{nodes:[nn.Maraba,nn.Porangatu],cost:17},{nodes:[nn.Porangatu,nn.Goiania],cost:8},{nodes:[nn.Porangatu,nn.Vilhena],cost:23},{nodes:[nn.Cuiaba,nn.Porangatu],cost:16},{nodes:[nn.Porangatu,nn.Palmas],cost:8},{nodes:[nn.Palmas,nn.Brasilia],cost:13},{nodes:[nn.Brasilia,nn.Porangatu],cost:6},{nodes:[nn.Brasilia,nn.Goiania],cost:4},{nodes:[nn.Goiania,nn.Cuiaba],cost:15},{nodes:[nn.Sadluis,nn.Parnaiba],cost:5},{nodes:[nn.Parnaiba,nn.Teresina],cost:5},{nodes:[nn.Parnaiba,nn.Fortaleza],cost:7},{nodes:[nn.Fortaleza,nn.Natal],cost:8},{nodes:[nn.Natal,nn.Joaopessoa],cost:3},{nodes:[nn.Joaopessoa,nn.Recife],cost:2},{nodes:[nn.Recife,nn.Maceio],cost:3},{nodes:[nn.Maceio,nn.Aracaju],cost:3},{nodes:[nn.Aracaju,nn.Salvadordabahia],cost:4},{nodes:[nn.Natal,nn.Campinagrande],cost:4},{nodes:[nn.Fortaleza,nn.Teresina],cost:10},{nodes:[nn.Teresina,nn.Petrolina],cost:12},{nodes:[nn.Petrolina,nn.Palmas],cost:19},{nodes:[nn.Petrolina,nn.Brasilia],cost:22},{nodes:[nn.Petrolina,nn.Montesclaros],cost:19},{nodes:[nn.Montesclaros,nn.Salvadordabahia],cost:16},{nodes:[nn.Salvadordabahia,nn.Petrolina],cost:10},{nodes:[nn.Petrolina,nn.Campinagrande],cost:12},{nodes:[nn.Petrolina,nn.Aracaju],cost:11},{nodes:[nn.Vitoria,nn.Salvadordabahia],cost:16},{nodes:[nn.Montesclaros,nn.Vitoria],cost:14},{nodes:[nn.Vitoria,nn.Saogoncalo],cost:6},{nodes:[nn.Vitoria,nn.Belohorizonte],cost:9},{nodes:[nn.Belohorizonte,nn.Montesclaros],cost:8},{nodes:[nn.Montesclaros,nn.Brasilia],cost:9},{nodes:[nn.Brasilia,nn.Uberlandia],cost:8},{nodes:[nn.Uberlandia,nn.Goiania],cost:7},{nodes:[nn.Goiania,nn.Campogrande],cost:16},{nodes:[nn.Campogrande,nn.Cuiaba],cost:13},{nodes:[nn.Campogrande,nn.Londrina],cost:10},{nodes:[nn.Campogrande,nn.Uberlandia],cost:13},{nodes:[nn.Uberlandia,nn.Londrina],cost:12},{nodes:[nn.Londrina,nn.Campinas],cost:9},{nodes:[nn.Campinas,nn.Uberlandia],cost:9},{nodes:[nn.Uberlandia,nn.Belohorizonte],cost:10},{nodes:[nn.Uberlandia,nn.Brasilia],cost:8},{nodes:[nn.Brasilia,nn.Belohorizonte],cost:14},{nodes:[nn.Belohorizonte,nn.Saogoncalo],cost:7},{nodes:[nn.Saogoncalo,nn.Riodejaneiro],cost:0},{nodes:[nn.Riodejaneiro,nn.Saopaulo],cost:7},{nodes:[nn.Saopaulo,nn.Guarulhos],cost:0},{nodes:[nn.Guarulhos,nn.Campinas],cost:0},{nodes:[nn.Campinas,nn.Curitiba],cost:6},{nodes:[nn.Curitiba,nn.Londrina],cost:7},{nodes:[nn.Saopaulo,nn.Florianopolis],cost:9},{nodes:[nn.Florianopolis,nn.Curitiba],cost:4},{nodes:[nn.Londrina,nn.Urucuaiana],cost:18},{nodes:[nn.Urucuaiana,nn.Pelotas],cost:9},{nodes:[nn.Pelotas,nn.Portoalecre],cost:4},{nodes:[nn.Portoalecre,nn.Urucuaiana],cost:10},{nodes:[nn.Londrina,nn.Portoalecre],cost:16},{nodes:[nn.Portoalecre,nn.Curitiba],cost:11},{nodes:[nn.Portoalecre,nn.Florianopolis],cost:7},{nodes:[nn.Guarulhos,nn.Belohorizonte],cost:10},{nodes:[nn.Maceio,nn.Campinagrande],cost:6},{nodes:[nn.Petrolina,nn.Fortaleza],cost:14},{nodes:[nn.Recife,nn.Campinagrande],cost:3}],layout:"Portrait",adjustRatio:[.85,.85],mapPosition:[-20,-130],resupply:[[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[24,18,6,2],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ye),i=a.filter((function(e){return e.type==ve.Garbage&&e.number>14}));if("original"==n){a=a.slice(8);var s=a.splice(2,1)[0],c=a.splice(2,1)[0],u=a.pop();a=De(a.filter((function(e){return e.type!=ve.Garbage})),t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a=a.concat(i),a=De(a,t()+""),a.unshift(c),a.unshift(s),a.push(u),r=[$t(3),$t(4),$t(5),$t(6)],o=[$t(7),$t(8),$t(9),$t(10)]}else{var l=a.splice(3,1)[0],d=a.splice(10,1)[0],f=De(a.splice(0,11),t()+""),p=f.splice(0,6);p.push(l,d),p=p.sort((function(e,n){return e.number-n.number})),r=p.slice(0,4),o=p.slice(4);var h=f.shift(),g=a.pop();a=De(a.filter((function(e){return e.type!=ve.Garbage})),t()+""),2==e?(f=f.slice(1),a=De(a.slice(5).concat(f),t()+"")):3==e?(f=f.slice(2),a=De(a.slice(6).concat(f),t()+"")):4==e?(f=f.slice(1),a=De(a.slice(3).concat(f),t()+"")):a=De(a.concat(f),t()+""),a=a.concat(i),a=De(a,t()+""),a.unshift(h),a.push(g)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Play with all garbage power plants."};(function(e){e["Blue"]="blue",e["Pink"]="pink",e["Purple"]="purple",e["Red"]="red",e["Orange"]="orange"})(rn||(rn={})),function(e){e["Borgfeld"]="Borgfeld",e["Oberneuland"]="Oberneuland",e["Osterholz"]="Osterholz",e["HornLehe"]="Horn-Lehe",e["Vahr"]="Vahr",e["Schwachhausen"]="Schwachhausen",e["OstlicheVorstadt"]="Östliche Vorstadt",e["Findorff"]="Findorff",e["Walle"]="Walle",e["Mitte"]="Mitte",e["Hemelingen"]="Hemelingen",e["Mahndorf"]="Mahndorf",e["Neustadt"]="Neustadt",e["Obervieland"]="Obervieland",e["Huchting"]="Huchting",e["Hofen"]="Höfen",e["Pusdorf"]="Pusdorf",e["Neustadtshafen"]="Neustadtshafen",e["Strom"]="Strom",e["Seehausen"]="Seehausen",e["Blockland"]="Blockland",e["Gropelingen"]="Gröpelingen",e["Burglesum"]="Burglesum",e["Vegesack"]="Vegesack",e["Blumenthal"]="Blumenthal"}(on||(on={}));var sn,cn,un={name:"Bremen",cities:[{name:on.Borgfeld,region:rn.Blue,connectionCost:15,slotCosts:[8,14],x:645,y:273},{name:on.Oberneuland,region:rn.Blue,connectionCost:14,slotCosts:[8,14,20],x:652,y:342},{name:on.Osterholz,region:rn.Blue,connectionCost:11,slotCosts:[8,14,20],x:660,y:434},{name:on.HornLehe,region:rn.Blue,connectionCost:9,slotCosts:[8,14,20],x:572,y:322},{name:on.Vahr,region:rn.Blue,connectionCost:6,slotCosts:[8,14,20],x:583,y:376},{name:on.Schwachhausen,region:rn.Pink,connectionCost:5,slotCosts:[8,14,20],x:517,y:357},{name:on.OstlicheVorstadt,region:rn.Pink,connectionCost:2,slotCosts:[8,14,20],x:536,y:409},{name:on.Findorff,region:rn.Pink,connectionCost:3,slotCosts:[8,14],x:488,y:311},{name:on.Walle,region:rn.Pink,connectionCost:6,slotCosts:[8,14,20],x:438,y:342},{name:on.Mitte,region:rn.Pink,connectionCost:1,slotCosts:[8,14,20],x:472,y:388},{name:on.Hemelingen,region:rn.Purple,connectionCost:8,slotCosts:[8,14,20],x:600,y:453},{name:on.Mahndorf,region:rn.Purple,connectionCost:10,slotCosts:[8,14,20],x:666,y:499},{name:on.Neustadt,region:rn.Purple,connectionCost:5,slotCosts:[8,14,20],x:464,y:452},{name:on.Obervieland,region:rn.Purple,connectionCost:10,slotCosts:[8,14,20],x:529,y:479},{name:on.Huchting,region:rn.Purple,connectionCost:12,slotCosts:[8,14],x:386,y:442},{name:on.Hofen,region:rn.Red,connectionCost:9,slotCosts:[8,14,20],x:352,y:272},{name:on.Pusdorf,region:rn.Red,connectionCost:7,slotCosts:[8,14,20],x:399,y:386},{name:on.Neustadtshafen,region:rn.Red,connectionCost:8,slotCosts:[8,14,20],x:375,y:340},{name:on.Strom,region:rn.Red,connectionCost:14,slotCosts:[8,14,20],x:328,y:393},{name:on.Seehausen,region:rn.Red,connectionCost:14,slotCosts:[8,14],x:290,y:321},{name:on.Blockland,region:rn.Orange,connectionCost:11,slotCosts:[8,14,20],x:476,y:251},{name:on.Gropelingen,region:rn.Orange,connectionCost:8,slotCosts:[8,14,20],x:426,y:280},{name:on.Burglesum,region:rn.Orange,connectionCost:13,slotCosts:[8,14,20],x:337,y:197},{name:on.Vegesack,region:rn.Orange,connectionCost:10,slotCosts:[8,14,20],x:248,y:170},{name:on.Blumenthal,region:rn.Orange,connectionCost:15,slotCosts:[8,14],x:154,y:135}],connections:[{nodes:[on.Borgfeld,on.Oberneuland],cost:0},{nodes:[on.Oberneuland,on.Osterholz],cost:0},{nodes:[on.Borgfeld,on.HornLehe],cost:0},{nodes:[on.Oberneuland,on.HornLehe],cost:0},{nodes:[on.Oberneuland,on.Vahr],cost:0},{nodes:[on.Osterholz,on.Vahr],cost:0},{nodes:[on.HornLehe,on.Vahr],cost:0},{nodes:[on.HornLehe,on.Schwachhausen],cost:0},{nodes:[on.HornLehe,on.Findorff],cost:0},{nodes:[on.Vahr,on.Hemelingen],cost:0},{nodes:[on.Osterholz,on.Mahndorf],cost:0},{nodes:[on.Hofen,on.Neustadtshafen],cost:0},{nodes:[on.Hofen,on.Seehausen],cost:0},{nodes:[on.Pusdorf,on.Neustadtshafen],cost:0},{nodes:[on.Neustadtshafen,on.Seehausen],cost:0},{nodes:[on.Neustadtshafen,on.Strom],cost:0},{nodes:[on.Seehausen,on.Strom],cost:0},{nodes:[on.Blockland,on.Gropelingen],cost:0},{nodes:[on.Blockland,on.Burglesum],cost:0},{nodes:[on.Gropelingen,on.Burglesum],cost:0},{nodes:[on.Burglesum,on.Vegesack],cost:0},{nodes:[on.Vegesack,on.Blumenthal],cost:0},{nodes:[on.Mahndorf,on.Hemelingen],cost:0},{nodes:[on.Hemelingen,on.Obervieland],cost:0},{nodes:[on.Obervieland,on.Neustadt],cost:0},{nodes:[on.Neustadt,on.Huchting],cost:0},{nodes:[on.Hemelingen,on.OstlicheVorstadt],cost:0},{nodes:[on.Obervieland,on.OstlicheVorstadt],cost:0},{nodes:[on.Neustadt,on.Mitte],cost:0},{nodes:[on.Neustadt,on.OstlicheVorstadt],cost:0},{nodes:[on.Huchting,on.Strom],cost:0},{nodes:[on.Huchting,on.Pusdorf],cost:0},{nodes:[on.Findorff,on.Walle],cost:0},{nodes:[on.Findorff,on.Mitte],cost:0},{nodes:[on.Findorff,on.Schwachhausen],cost:0},{nodes:[on.Schwachhausen,on.OstlicheVorstadt],cost:0},{nodes:[on.Schwachhausen,on.Mitte],cost:0},{nodes:[on.Walle,on.Mitte],cost:0},{nodes:[on.Mitte,on.OstlicheVorstadt],cost:0},{nodes:[on.Strom,on.Pusdorf],cost:0},{nodes:[on.Vahr,on.Schwachhausen],cost:0},{nodes:[on.Blockland,on.HornLehe],cost:0},{nodes:[on.Hemelingen,on.Osterholz],cost:0},{nodes:[on.Hofen,on.Gropelingen],cost:0},{nodes:[on.Hofen,on.Burglesum],cost:0},{nodes:[on.Burglesum,on.Seehausen],cost:0},{nodes:[on.Walle,on.Gropelingen],cost:0},{nodes:[on.Walle,on.Blockland],cost:0},{nodes:[on.Findorff,on.Blockland],cost:0},{nodes:[on.Walle,on.Hofen],cost:0},{nodes:[on.Walle,on.Neustadtshafen],cost:0},{nodes:[on.Walle,on.Pusdorf],cost:0},{nodes:[on.Pusdorf,on.Neustadt],cost:0}],layout:"Landscape",adjustRatio:[1.75,1.75],mapPosition:[-120,-140],mapRotation:0,resupply:[[[4,5,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,3,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,1],[1,2,1],[2,3,2],[3,3,3],[3,5,3]],[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]],coalPrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,8,8],oilPrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,8,8],garbagePrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,8,8],startingResources:[22,16,16,0],startingSupply:[22,22,22,0],setupDeck:function(e,n,t){var r=new Set([11,17,23,28,34,36,38,39,46]);e<=4&&(r.add(31),r.add(50));var o,a,i=Object(we["cloneDeep"])(Ye).filter((function(e){return!r.has(e.number)})),s=i.pop();if("original"==n){o=[$t(3),$t(4),$t(5),$t(6)],a=[$t(7),$t(8),$t(9),$t(10)];var c=new Set([3,4,5,6,7,8,9,10]),u=i.find((function(e){return 13==e.number})),l=i.filter((function(e){return!c.has(e.number)&&13!=e.number}));return l=De(l,t()+""),l.unshift(u),l.push(s),{actualMarket:o,futureMarket:a,powerPlantsDeck:l}}var d=De(i.filter((function(e){return e.number<=15})),t()+""),f=i.filter((function(e){return e.number>15})),p=d.splice(0,8).sort((function(e,n){return e.number-n.number}));o=p.slice(0,4),a=p.slice(4);var h=d.shift();return f=De(f.concat(d),t()+""),f.unshift(h),f.push(s),{actualMarket:o,futureMarket:a,powerPlantsDeck:f}},mapSpecificRules:"Flat district costs: instead of connection costs between cities, each district has a single cost. Connecting a new district to your network costs the sum of the district costs along the cheapest path from your network (you pay for each district entered, including ones you only pass through), plus the cheapest building cost (8 / 14 / 20 Elektro) in the new district. (on your 1st placement if A has 1 and B has 3 then A to B is 8+3+8=19, and B to A is 8+1+8=17, meaning it is asymmetrical) Small districts have only two spaces (8 / 14) and can hold just two networks. No nuclear: nuclear power plants and uranium are not used. Step 2 begins once a player has 5 connected districts (4 for 6 players); the game ends when a player connects 13 districts (12 for 5 players, 11 for 6)."};(function(e){e["Blue"]="blue",e["Brown"]="brown",e["Purple"]="purple",e["Red"]="red",e["Yellow"]="yellow",e["Green"]="green"})(sn||(sn={})),function(e){e["Bialystok"]="Bialystok",e["Lublin"]="Lublin",e["Warszawa"]="Warszawa",e["Krakow"]="Krakow",e["Sosnowiec"]="Sosnowiec",e["Katowice"]="Katowice",e["Czestochowa"]="Czesto Chowa",e["Presov"]="Presov",e["Kosice"]="Kosice",e["Poprad"]="Poprad",e["Zilina"]="Zilina",e["Bratislava"]="Bratislava",e["Trnava"]="Trnava",e["Nyiregyhaza"]="Nyiregyhaza",e["Miskolc"]="Miskolc",e["Szeged"]="Szeged",e["Kecskeme"]="Kecskeme",e["Budapest"]="Budapest",e["Pecs"]="Pecs",e["Gyor"]="Gyor",e["Banskabystrica"]="Banska Bystrica",e["Goansk"]="Goansk",e["Goynia"]="Goynia",e["Byogoszcz"]="Byogoszcz",e["Wroclaw"]="Wroclaw",e["Poznan"]="Poznan",e["Szczecin"]="Szczecin",e["Lodz"]="Lodz",e["Graz"]="Graz",e["Klagenfurt"]="Klagenfurt",e["Villach"]="Villach",e["Innsbruck"]="Innsbruck",e["Salzburg"]="Salzburg",e["Linz"]="Linz",e["Wien"]="Wien",e["Hradeckralove"]="Hradec Kralove",e["Brno"]="Brno",e["Ceskebudejovice"]="Ceske Budejovice",e["Praha"]="Praha",e["Ostrava"]="Ostrava",e["Plzen"]="Plzen",e["Ustinadlaben"]="Ustinad Laben"}(cn||(cn={}));var ln,dn,fn={name:"Central Europe",cities:[{name:cn.Bialystok,region:sn.Blue,x:543,y:135},{name:cn.Lublin,region:sn.Blue,x:590,y:294},{name:cn.Warszawa,region:sn.Blue,x:482,y:253},{name:cn.Krakow,region:sn.Blue,x:533,y:443},{name:cn.Sosnowiec,region:sn.Blue,x:468,y:443},{name:cn.Katowice,region:sn.Blue,x:446,y:483},{name:cn.Czestochowa,region:sn.Blue,x:419,y:397},{name:cn.Presov,region:sn.Brown,x:619,y:487},{name:cn.Kosice,region:sn.Brown,x:646,y:538},{name:cn.Poprad,region:sn.Brown,x:565,y:529},{name:cn.Zilina,region:sn.Brown,x:476,y:551},{name:cn.Bratislava,region:sn.Brown,x:423,y:693},{name:cn.Trnava,region:sn.Brown,x:452,y:638},{name:cn.Nyiregyhaza,region:sn.Purple,x:698,y:582},{name:cn.Miskolc,region:sn.Purple,x:621,y:597},{name:cn.Szeged,region:sn.Purple,x:680,y:764},{name:cn.Kecskeme,region:sn.Purple,x:630,y:727},{name:cn.Budapest,region:sn.Purple,x:557,y:689},{name:cn.Pecs,region:sn.Purple,x:566,y:832},{name:cn.Gyor,region:sn.Purple,x:489,y:729},{name:cn.Banskabystrica,region:sn.Brown,x:525,y:601},{name:cn.Goansk,region:sn.Red,x:286,y:158},{name:cn.Goynia,region:sn.Red,x:249,y:131},{name:cn.Byogoszcz,region:sn.Red,x:297,y:257},{name:cn.Wroclaw,region:sn.Red,x:321,y:445},{name:cn.Poznan,region:sn.Red,x:261,y:342},{name:cn.Szczecin,region:sn.Red,x:110,y:316},{name:cn.Lodz,region:sn.Red,x:420,y:337},{name:cn.Graz,region:sn.Yellow,x:376,y:811},{name:cn.Klagenfurt,region:sn.Yellow,x:340,y:875},{name:cn.Villach,region:sn.Yellow,x:272,y:875},{name:cn.Innsbruck,region:sn.Yellow,x:140,y:879},{name:cn.Salzburg,region:sn.Yellow,x:209,y:805},{name:cn.Linz,region:sn.Yellow,x:265,y:744},{name:cn.Wien,region:sn.Yellow,x:366,y:701},{name:cn.Hradeckralove,region:sn.Green,x:291,y:546},{name:cn.Brno,region:sn.Green,x:354,y:597},{name:cn.Ceskebudejovice,region:sn.Green,x:248,y:670},{name:cn.Praha,region:sn.Green,x:220,y:593},{name:cn.Ostrava,region:sn.Green,x:413,y:535},{name:cn.Plzen,region:sn.Green,x:158,y:645},{name:cn.Ustinadlaben,region:sn.Green,x:165,y:537}],connections:[{nodes:[cn.Goynia,cn.Goansk],cost:0},{nodes:[cn.Goansk,cn.Byogoszcz],cost:8},{nodes:[cn.Goynia,cn.Szczecin],cost:17},{nodes:[cn.Szczecin,cn.Poznan],cost:14},{nodes:[cn.Szczecin,cn.Wroclaw],cost:22},{nodes:[cn.Wroclaw,cn.Poznan],cost:9},{nodes:[cn.Poznan,cn.Lodz],cost:13},{nodes:[cn.Lodz,cn.Byogoszcz],cost:12},{nodes:[cn.Byogoszcz,cn.Szczecin],cost:15},{nodes:[cn.Wroclaw,cn.Lodz],cost:12},{nodes:[cn.Lodz,cn.Czestochowa],cost:7},{nodes:[cn.Czestochowa,cn.Wroclaw],cost:9},{nodes:[cn.Wroclaw,cn.Ostrava],cost:11},{nodes:[cn.Ostrava,cn.Hradeckralove],cost:16},{nodes:[cn.Hradeckralove,cn.Wroclaw],cost:10},{nodes:[cn.Wroclaw,cn.Ustinadlaben],cost:17},{nodes:[cn.Ustinadlaben,cn.Hradeckralove],cost:10},{nodes:[cn.Hradeckralove,cn.Brno],cost:9},{nodes:[cn.Brno,cn.Ostrava],cost:12},{nodes:[cn.Ostrava,cn.Katowice],cost:4},{nodes:[cn.Czestochowa,cn.Lublin],cost:17},{nodes:[cn.Lublin,cn.Presov],cost:20},{nodes:[cn.Presov,cn.Krakow],cost:13},{nodes:[cn.Krakow,cn.Poprad],cost:11},{nodes:[cn.Poprad,cn.Zilina],cost:11},{nodes:[cn.Zilina,cn.Krakow],cost:12},{nodes:[cn.Krakow,cn.Sosnowiec],cost:4},{nodes:[cn.Warszawa,cn.Bialystok],cost:14},{nodes:[cn.Bialystok,cn.Goansk],cost:20},{nodes:[cn.Byogoszcz,cn.Warszawa],cost:15},{nodes:[cn.Warszawa,cn.Lublin],cost:10},{nodes:[cn.Lodz,cn.Warszawa],cost:7},{nodes:[cn.Bialystok,cn.Lublin],cost:15},{nodes:[cn.Lublin,cn.Krakow],cost:16},{nodes:[cn.Poprad,cn.Kosice],cost:6},{nodes:[cn.Kosice,cn.Nyiregyhaza],cost:8},{nodes:[cn.Kosice,cn.Miskolc],cost:4},{nodes:[cn.Miskolc,cn.Poprad],cost:9},{nodes:[cn.Poprad,cn.Banskabystrica],cost:11},{nodes:[cn.Banskabystrica,cn.Zilina],cost:6},{nodes:[cn.Zilina,cn.Trnava],cost:10},{nodes:[cn.Zilina,cn.Brno],cost:14},{nodes:[cn.Brno,cn.Wien],cost:8},{nodes:[cn.Bratislava,cn.Brno],cost:10},{nodes:[cn.Brno,cn.Trnava],cost:10},{nodes:[cn.Trnava,cn.Banskabystrica],cost:10},{nodes:[cn.Banskabystrica,cn.Miskolc],cost:11},{nodes:[cn.Miskolc,cn.Nyiregyhaza],cost:7},{nodes:[cn.Nyiregyhaza,cn.Szeged],cost:16},{nodes:[cn.Szeged,cn.Kecskeme],cost:5},{nodes:[cn.Budapest,cn.Trnava],cost:9},{nodes:[cn.Trnava,cn.Bratislava],cost:2},{nodes:[cn.Bratislava,cn.Wien],cost:3},{nodes:[cn.Wien,cn.Ceskebudejovice],cost:14},{nodes:[cn.Ceskebudejovice,cn.Praha],cost:10},{nodes:[cn.Praha,cn.Brno],cost:13},{nodes:[cn.Brno,cn.Ceskebudejovice],cost:15},{nodes:[cn.Ceskebudejovice,cn.Plzen],cost:11},{nodes:[cn.Plzen,cn.Praha],cost:7},{nodes:[cn.Praha,cn.Ustinadlaben],cost:6},{nodes:[cn.Ustinadlaben,cn.Plzen],cost:9},{nodes:[cn.Ceskebudejovice,cn.Linz],cost:8},{nodes:[cn.Linz,cn.Wien],cost:11},{nodes:[cn.Wien,cn.Graz],cost:12},{nodes:[cn.Graz,cn.Linz],cost:16},{nodes:[cn.Linz,cn.Salzburg],cost:9},{nodes:[cn.Salzburg,cn.Graz],cost:22},{nodes:[cn.Graz,cn.Gyor],cost:14},{nodes:[cn.Gyor,cn.Wien],cost:8},{nodes:[cn.Bratislava,cn.Gyor],cost:6},{nodes:[cn.Gyor,cn.Trnava],cost:5},{nodes:[cn.Banskabystrica,cn.Budapest],cost:12},{nodes:[cn.Budapest,cn.Gyor],cost:5},{nodes:[cn.Budapest,cn.Kecskeme],cost:6},{nodes:[cn.Kecskeme,cn.Miskolc],cost:10},{nodes:[cn.Miskolc,cn.Budapest],cost:9},{nodes:[cn.Szeged,cn.Pecs],cost:12},{nodes:[cn.Pecs,cn.Kecskeme],cost:11},{nodes:[cn.Budapest,cn.Pecs],cost:12},{nodes:[cn.Pecs,cn.Gyor],cost:15},{nodes:[cn.Graz,cn.Pecs],cost:19},{nodes:[cn.Graz,cn.Klagenfurt],cost:10},{nodes:[cn.Klagenfurt,cn.Villach],cost:4},{nodes:[cn.Klagenfurt,cn.Salzburg],cost:20},{nodes:[cn.Salzburg,cn.Innsbruck],cost:15},{nodes:[cn.Innsbruck,cn.Villach],cost:22},{nodes:[cn.Poznan,cn.Byogoszcz],cost:7},{nodes:[cn.Lublin,cn.Lodz],cost:16},{nodes:[cn.Czestochowa,cn.Sosnowiec],cost:4},{nodes:[cn.Sosnowiec,cn.Katowice],cost:0},{nodes:[cn.Czestochowa,cn.Krakow],cost:6},{nodes:[cn.Poprad,cn.Presov],cost:7},{nodes:[cn.Presov,cn.Kosice],cost:2},{nodes:[cn.Ostrava,cn.Zilina],cost:7},{nodes:[cn.Ostrava,cn.Krakow],cost:7},{nodes:[cn.Praha,cn.Hradeckralove],cost:8}],layout:"Portrait",mapPosition:[70,-60],adjustRatio:[1.15,1.15],startingResources:[24,18,6,5],resupply:[[[4,5,3],[5,6,3],[6,7,5],[7,8,5],[8,10,6]],[[1,2,3],[2,2,3],[2,3,4],[3,4,5],[4,5,6]],[[1,3,3],[1,3,3],[2,4,4],[3,4,5],[3,6,6]],[[1,1,1],[1,1,1],[1,2,1],[2,2,2],[2,3,2]]]};(function(e){e["Pink"]="pink",e["Green"]="green",e["Red"]="red",e["Brown"]="brown",e["Purple"]="purple",e["Yellow"]="yellow"})(ln||(ln={})),function(e){e["Hegang"]="Hegang",e["Qiqhaer"]="Qiqhaer",e["Haerbin"]="Haerbin",e["Jilin"]="Jilin",e["Fushun"]="Fushun",e["Anshan"]="Anshan",e["Dalian"]="Dalian",e["Shanghai"]="Shanghai",e["Hangzhou"]="Hangzhou",e["Nanjing"]="Nanjing",e["Qingoad"]="Qingoad",e["Jinan"]="Jinan",e["Zhengzhou"]="Zhengzhou",e["Shijiazhuang"]="Shijiazhuang",e["Changchun"]="Changchun",e["Shenyang"]="Shenyang",e["Tangshan"]="Tangshan",e["Tianjin"]="Tianjin",e["Beijing"]="Beijing",e["Taiyuan"]="Taiyuan",e["Badtou"]="Badtou",e["Fuzhou"]="Fuzhou",e["Nanchang"]="Nanchang",e["Chaozhou"]="Chaozhou",e["Hongkong"]="Hong Kong",e["Guangzhou"]="Guangzhou",e["Changsha"]="Changsha",e["Wuhan"]="Wuhan",e["Hami"]="Hami",e["Karamay"]="Karamay",e["Wulumuqi"]="Wulumuqi",e["Kuerle"]="Kuerle",e["Yinchjan"]="Yinchjan",e["Xining"]="Xining",e["Lanzhou"]="Lanzhou",e["Kunming"]="Kunming",e["Chengou"]="Chengou",e["Xian"]="Xian",e["Chongqing"]="Chongqing",e["Nanning"]="Nanning",e["Haikou"]="Haikou",e["Chiyang"]="Chiyang"}(dn||(dn={}));var pn,hn,gn={name:"China",cities:[{name:dn.Hegang,region:ln.Pink,x:3920,y:290},{name:dn.Qiqhaer,region:ln.Pink,x:3422,y:262},{name:dn.Haerbin,region:ln.Pink,x:3672,y:434},{name:dn.Jilin,region:ln.Pink,x:3744,y:614},{name:dn.Fushun,region:ln.Pink,x:3712,y:784},{name:dn.Anshan,region:ln.Pink,x:3510,y:902},{name:dn.Dalian,region:ln.Pink,x:3424,y:1052},{name:dn.Shanghai,region:ln.Green,x:3462,y:1672},{name:dn.Hangzhou,region:ln.Green,x:3280,y:1824},{name:dn.Nanjing,region:ln.Green,x:3130,y:1632},{name:dn.Qingoad,region:ln.Green,x:3322,y:1316},{name:dn.Jinan,region:ln.Green,x:3002,y:1292},{name:dn.Zhengzhou,region:ln.Green,x:2778,y:1438},{name:dn.Shijiazhuang,region:ln.Green,x:2866,y:1152},{name:dn.Changchun,region:ln.Red,x:3504,y:590},{name:dn.Shenyang,region:ln.Red,x:3458,y:778},{name:dn.Tangshan,region:ln.Red,x:3158,y:908},{name:dn.Tianjin,region:ln.Red,x:3134,y:1016},{name:dn.Beijing,region:ln.Red,x:2886,y:910},{name:dn.Taiyuan,region:ln.Red,x:2588,y:1130},{name:dn.Badtou,region:ln.Red,x:2500,y:862},{name:dn.Fuzhou,region:ln.Brown,x:3290,y:2132},{name:dn.Nanchang,region:ln.Brown,x:3004,y:1974},{name:dn.Chaozhou,region:ln.Brown,x:3096,y:2322},{name:dn.Hongkong,region:ln.Brown,x:2902,y:2552},{name:dn.Guangzhou,region:ln.Brown,x:2694,y:2352},{name:dn.Changsha,region:ln.Brown,x:2682,y:1988},{name:dn.Wuhan,region:ln.Brown,x:2810,y:1786},{name:dn.Hami,region:ln.Purple,x:1816,y:698},{name:dn.Karamay,region:ln.Purple,x:1304,y:372},{name:dn.Wulumuqi,region:ln.Purple,x:1520,y:558},{name:dn.Kuerle,region:ln.Purple,x:1326,y:756},{name:dn.Yinchjan,region:ln.Purple,x:2208,y:1058},{name:dn.Xining,region:ln.Purple,x:1868,y:1226},{name:dn.Lanzhou,region:ln.Purple,x:2142,y:1328},{name:dn.Kunming,region:ln.Yellow,x:1840,y:2248},{name:dn.Chengou,region:ln.Yellow,x:1988,y:1736},{name:dn.Xian,region:ln.Yellow,x:2440,y:1478},{name:dn.Chongqing,region:ln.Yellow,x:2300,y:1880},{name:dn.Nanning,region:ln.Yellow,x:2318,y:2452},{name:dn.Haikou,region:ln.Yellow,x:2524,y:2680},{name:dn.Chiyang,region:ln.Yellow,x:2212,y:2112}],connections:[{nodes:[dn.Kunming,dn.Chengou],cost:16},{nodes:[dn.Nanning,dn.Haikou],cost:10},{nodes:[dn.Guangzhou,dn.Hongkong],cost:4},{nodes:[dn.Guangzhou,dn.Chaozhou],cost:7},{nodes:[dn.Chaozhou,dn.Hongkong],cost:7},{nodes:[dn.Guangzhou,dn.Haikou],cost:13},{nodes:[dn.Nanning,dn.Guangzhou],cost:11},{nodes:[dn.Xining,dn.Chengou],cost:20},{nodes:[dn.Chengou,dn.Chongqing],cost:6},{nodes:[dn.Chongqing,dn.Chiyang],cost:9},{nodes:[dn.Chiyang,dn.Kunming],cost:12},{nodes:[dn.Chiyang,dn.Nanning],cost:12},{nodes:[dn.Chiyang,dn.Guangzhou],cost:18},{nodes:[dn.Guangzhou,dn.Changsha],cost:14},{nodes:[dn.Changsha,dn.Chongqing],cost:16},{nodes:[dn.Changsha,dn.Wuhan],cost:6},{nodes:[dn.Wuhan,dn.Nanchang],cost:6},{nodes:[dn.Nanchang,dn.Changsha],cost:7},{nodes:[dn.Changsha,dn.Chiyang],cost:15},{nodes:[dn.Chiyang,dn.Chengou],cost:13},{nodes:[dn.Guangzhou,dn.Nanchang],cost:16},{nodes:[dn.Nanchang,dn.Chaozhou],cost:14},{nodes:[dn.Chaozhou,dn.Fuzhou],cost:9},{nodes:[dn.Fuzhou,dn.Nanchang],cost:13},{nodes:[dn.Wuhan,dn.Hangzhou],cost:13},{nodes:[dn.Hangzhou,dn.Fuzhou],cost:13},{nodes:[dn.Hangzhou,dn.Shanghai],cost:4},{nodes:[dn.Shanghai,dn.Nanjing],cost:6},{nodes:[dn.Nanjing,dn.Hangzhou],cost:5},{nodes:[dn.Hangzhou,dn.Nanchang],cost:10},{nodes:[dn.Chongqing,dn.Wuhan],cost:18},{nodes:[dn.Lanzhou,dn.Chengou],cost:16},{nodes:[dn.Chengou,dn.Xian],cost:14},{nodes:[dn.Xian,dn.Chongqing],cost:14},{nodes:[dn.Xian,dn.Wuhan],cost:15},{nodes:[dn.Wuhan,dn.Zhengzhou],cost:10},{nodes:[dn.Zhengzhou,dn.Xian],cost:10},{nodes:[dn.Xian,dn.Lanzhou],cost:15},{nodes:[dn.Lanzhou,dn.Yinchjan],cost:9},{nodes:[dn.Yinchjan,dn.Xining],cost:11},{nodes:[dn.Lanzhou,dn.Taiyuan],cost:18},{nodes:[dn.Taiyuan,dn.Xian],cost:12},{nodes:[dn.Taiyuan,dn.Zhengzhou],cost:11},{nodes:[dn.Taiyuan,dn.Shijiazhuang],cost:5},{nodes:[dn.Shijiazhuang,dn.Tianjin],cost:5},{nodes:[dn.Shijiazhuang,dn.Jinan],cost:6},{nodes:[dn.Shijiazhuang,dn.Zhengzhou],cost:9},{nodes:[dn.Zhengzhou,dn.Jinan],cost:7},{nodes:[dn.Zhengzhou,dn.Nanjing],cost:12},{nodes:[dn.Nanjing,dn.Wuhan],cost:10},{nodes:[dn.Jinan,dn.Nanjing],cost:11},{nodes:[dn.Nanjing,dn.Qingoad],cost:12},{nodes:[dn.Qingoad,dn.Jinan],cost:6},{nodes:[dn.Jinan,dn.Tianjin],cost:6},{nodes:[dn.Xining,dn.Lanzhou],cost:6},{nodes:[dn.Yinchjan,dn.Badtou],cost:9},{nodes:[dn.Badtou,dn.Taiyuan],cost:9},{nodes:[dn.Taiyuan,dn.Yinchjan],cost:14},{nodes:[dn.Yinchjan,dn.Hami],cost:25},{nodes:[dn.Hami,dn.Xining],cost:25},{nodes:[dn.Wulumuqi,dn.Kuerle],cost:9},{nodes:[dn.Kuerle,dn.Karamay],cost:12},{nodes:[dn.Karamay,dn.Wulumuqi],cost:7},{nodes:[dn.Wulumuqi,dn.Hami],cost:12},{nodes:[dn.Hami,dn.Kuerle],cost:15},{nodes:[dn.Taiyuan,dn.Beijing],cost:10},{nodes:[dn.Beijing,dn.Shijiazhuang],cost:6},{nodes:[dn.Beijing,dn.Tangshan],cost:3},{nodes:[dn.Tangshan,dn.Tianjin],cost:0},{nodes:[dn.Beijing,dn.Badtou],cost:14},{nodes:[dn.Tangshan,dn.Shenyang],cost:11},{nodes:[dn.Dalian,dn.Anshan],cost:6},{nodes:[dn.Qiqhaer,dn.Hegang],cost:11},{nodes:[dn.Hegang,dn.Haerbin],cost:7},{nodes:[dn.Haerbin,dn.Qiqhaer],cost:6},{nodes:[dn.Changchun,dn.Jilin],cost:5},{nodes:[dn.Jilin,dn.Haerbin],cost:5},{nodes:[dn.Haerbin,dn.Changchun],cost:5},{nodes:[dn.Changchun,dn.Shenyang],cost:5},{nodes:[dn.Shenyang,dn.Anshan],cost:2},{nodes:[dn.Jilin,dn.Fushun],cost:6},{nodes:[dn.Fushun,dn.Shenyang],cost:0},{nodes:[dn.Changchun,dn.Qiqhaer],cost:9}],layout:"Portrait",mapPosition:[-400,70],adjustRatio:[.35,.35],resupply:[[[4,4,3],[5,5,3],[6,6,4],[7,7,5],[9,9,6]],[[2,2,4],[3,3,4],[4,4,5],[5,5,6],[6,6,7]],[[2,2,1],[2,2,1],[3,3,2],[3,3,3],[5,5,3]],[[1,1,1],[1,1,1],[2,2,2],[3,3,2],[3,3,3]]],startingResources:[12,12,6,0],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ye),o=[];2==e||3==e?o=[3,4,9,11,16,18,20,24,30,33,46]:4==e?o=[3,4,11,18,24,33,46]:5!=e&&6!=e||(o=[3,4,33]);var a=r.filter((function(e){return!o.includes(e.number)})),i=a.filter((function(e){return e.number<=30})),s=a.filter((function(e){return e.type==ve.Step3})),c=De(a.filter((function(e){return e.number>=31&&e.number<=35})).concat(s),t()+""),u=De(a.filter((function(e){return e.number>=36&&e.number<=50})),t()+""),l=i.splice(0,e),d=[],f=i.concat(c).concat(u);return{actualMarket:l,futureMarket:d,powerPlantsDeck:f}},mapSpecificRules:"The power plant deck is arranged as follows: plants from 3-30 in order, plants from 31-35 and step 3 card shuffled, plants from 36-50 shuffled.\nThe same set of plants are removed in every game.\nThere are several changes to when new plants are drawn. In particular, during steps 1 and 2, plants are only drawn from the deck during the bureaucracy phase."};(function(e){e["Pink"]="pink",e["Red"]="red",e["Brown"]="brown",e["Yellow"]="yellow",e["Orange"]="orange",e["Blue"]="blue",e["Green"]="green"})(pn||(pn={})),function(e){e["Glasgow"]="Glasgow",e["Dublin"]="Dublin",e["Birmingham"]="Birmingham",e["London"]="London",e["Randstad"]="Randstad",e["Vlaanderen"]="Vlaanderen",e["RheinRuhr"]="Rhein-Ruhr",e["Paris"]="Paris",e["Bordeaux"]="Bordeaux",e["Lyon"]="Lyon",e["Marseille"]="Marseille",e["Lisboa"]="Lisboa",e["Madrid"]="Madrid",e["Barcelona"]="Barcelona",e["Bremen"]="Bremen",e["Berlin"]="Berlin",e["RheinMain"]="Rhein-Main",e["Stuttgart"]="Stuttgart",e["Praha"]="Praha",e["Katowice"]="Katowice",e["München"]="München",e["Zürich"]="Zürich",e["Milano"]="Milano",e["Roma"]="Roma",e["Napoli"]="Napoli",e["Wien"]="Wien",e["Budapest"]="Budapest",e["Zagreb"]="Zagreb",e["Oslo"]="Oslo",e["Stockholm"]="Stockholm",e["Helsinki"]="Helsinki",e["Tallinn"]="Tallinn",e["Kobenhavn"]="København",e["Riga"]="Riga",e["StPetersburg"]="St. Petersburg",e["Minsk"]="Minsk",e["Moskwa"]="Moskwa",e["Warszawa"]="Warszawa",e["Kyjiv"]="Kyjiv",e["Kharkiv"]="Kharkiv",e["Odessa"]="Odessa",e["Bucuresti"]="Bucureşti",e["Beograd"]="Beograd",e["Sofia"]="Sofia",e["Tirana"]="Tirana",e["Athina"]="Athina",e["Istanbul"]="Istanbul",e["Izmir"]="Izmir",e["Ankara"]="Ankara"}(hn||(hn={}));var yn,mn,vn={name:"Europe",cities:[{name:hn.Glasgow,region:pn.Pink,x:490,y:510},{name:hn.Dublin,region:pn.Pink,x:390,y:660},{name:hn.Birmingham,region:pn.Pink,x:485,y:695},{name:hn.London,region:pn.Pink,x:545,y:800},{name:hn.Randstad,region:pn.Pink,x:786,y:594},{name:hn.Vlaanderen,region:pn.Pink,x:794,y:756},{name:hn.RheinRuhr,region:pn.Pink,x:820,y:884},{name:hn.Paris,region:pn.Red,x:632,y:926},{name:hn.Bordeaux,region:pn.Red,x:655,y:1095},{name:hn.Lyon,region:pn.Red,x:785,y:1100},{name:hn.Marseille,region:pn.Red,x:815,y:1240},{name:hn.Barcelona,region:pn.Red,x:650,y:1280},{name:hn.Madrid,region:pn.Red,x:435,y:1335},{name:hn.Lisboa,region:pn.Red,x:255,y:1335},{name:hn.Bremen,region:pn.Brown,x:1010,y:770},{name:hn.Berlin,region:pn.Brown,x:1180,y:800},{name:hn.RheinMain,region:pn.Brown,x:982,y:898},{name:hn.Stuttgart,region:pn.Brown,x:995,y:1e3},{name:hn.München,region:pn.Brown,x:1114,y:1020},{name:hn.Praha,region:pn.Brown,x:1235,y:940},{name:hn.Katowice,region:pn.Brown,x:1380,y:940},{name:hn.Zürich,region:pn.Yellow,x:1010,y:1100},{name:hn.Milano,region:pn.Yellow,x:1075,y:1180},{name:hn.Roma,region:pn.Yellow,x:1180,y:1310},{name:hn.Napoli,region:pn.Yellow,x:1235,y:1430},{name:hn.Wien,region:pn.Yellow,x:1265,y:1080},{name:hn.Budapest,region:pn.Yellow,x:1390,y:1080},{name:hn.Zagreb,region:pn.Yellow,x:1300,y:1180},{name:hn.Oslo,region:pn.Orange,x:1015,y:365},{name:hn.Stockholm,region:pn.Orange,x:1170,y:415},{name:hn.Helsinki,region:pn.Orange,x:1395,y:360},{name:hn.Tallinn,region:pn.Orange,x:1410,y:470},{name:hn.Riga,region:pn.Orange,x:1395,y:575},{name:hn.Kobenhavn,region:pn.Orange,x:1180,y:660},{name:hn.StPetersburg,region:pn.Orange,x:1620,y:460},{name:hn.Warszawa,region:pn.Blue,x:1500,y:815},{name:hn.Minsk,region:pn.Blue,x:1610,y:815},{name:hn.Moskwa,region:pn.Blue,x:1830,y:600},{name:hn.Kyjiv,region:pn.Blue,x:1690,y:980},{name:hn.Kharkiv,region:pn.Blue,x:1860,y:980},{name:hn.Odessa,region:pn.Blue,x:1720,y:1100},{name:hn.Bucuresti,region:pn.Blue,x:1610,y:1175},{name:hn.Beograd,region:pn.Green,x:1390,y:1175},{name:hn.Sofia,region:pn.Green,x:1505,y:1240},{name:hn.Tirana,region:pn.Green,x:1370,y:1330},{name:hn.Athina,region:pn.Green,x:1480,y:1450},{name:hn.Istanbul,region:pn.Green,x:1665,y:1335},{name:hn.Izmir,region:pn.Green,x:1730,y:1430},{name:hn.Ankara,region:pn.Green,x:1850,y:1380}],connections:[{nodes:[hn.Dublin,hn.Glasgow],cost:17},{nodes:[hn.Glasgow,hn.Birmingham],cost:13},{nodes:[hn.Dublin,hn.Birmingham],cost:15},{nodes:[hn.Birmingham,hn.London],cost:4},{nodes:[hn.London,hn.Vlaanderen],cost:15},{nodes:[hn.London,hn.Randstad],cost:18},{nodes:[hn.Randstad,hn.Vlaanderen],cost:4},{nodes:[hn.Vlaanderen,hn.RheinRuhr],cost:4},{nodes:[hn.Paris,hn.Bordeaux],cost:12},{nodes:[hn.Paris,hn.Lyon],cost:11},{nodes:[hn.Bordeaux,hn.Lyon],cost:12},{nodes:[hn.Lyon,hn.Marseille],cost:8},{nodes:[hn.Bordeaux,hn.Marseille],cost:12},{nodes:[hn.Marseille,hn.Barcelona],cost:11},{nodes:[hn.Bordeaux,hn.Barcelona],cost:15},{nodes:[hn.Bordeaux,hn.Madrid],cost:15},{nodes:[hn.Madrid,hn.Barcelona],cost:14},{nodes:[hn.Madrid,hn.Lisboa],cost:13},{nodes:[hn.Paris,hn.London],cost:16},{nodes:[hn.Paris,hn.Vlaanderen],cost:7},{nodes:[hn.Paris,hn.RheinRuhr],cost:10},{nodes:[hn.Bremen,hn.Berlin],cost:6},{nodes:[hn.Bremen,hn.RheinMain],cost:9},{nodes:[hn.Berlin,hn.RheinMain],cost:10},{nodes:[hn.Berlin,hn.Praha],cost:7},{nodes:[hn.RheinMain,hn.Praha],cost:10},{nodes:[hn.RheinMain,hn.München],cost:6},{nodes:[hn.RheinMain,hn.Stuttgart],cost:3},{nodes:[hn.Stuttgart,hn.München],cost:5},{nodes:[hn.München,hn.Praha],cost:6},{nodes:[hn.Praha,hn.Katowice],cost:8},{nodes:[hn.Bremen,hn.Randstad],cost:8},{nodes:[hn.Bremen,hn.Vlaanderen],cost:10},{nodes:[hn.RheinMain,hn.Vlaanderen],cost:6},{nodes:[hn.RheinMain,hn.RheinRuhr],cost:3},{nodes:[hn.Stuttgart,hn.Paris],cost:14},{nodes:[hn.Zürich,hn.Milano],cost:11},{nodes:[hn.Milano,hn.Zagreb],cost:17},{nodes:[hn.Milano,hn.Roma],cost:19},{nodes:[hn.Roma,hn.Napoli],cost:7},{nodes:[hn.Wien,hn.Budapest],cost:5},{nodes:[hn.Wien,hn.Zagreb],cost:8},{nodes:[hn.Budapest,hn.Zagreb],cost:7},{nodes:[hn.Paris,hn.Zürich],cost:14},{nodes:[hn.Lyon,hn.Zürich],cost:14},{nodes:[hn.Lyon,hn.Milano],cost:11},{nodes:[hn.Marseille,hn.Milano],cost:13},{nodes:[hn.Zürich,hn.München],cost:8},{nodes:[hn.Zürich,hn.Stuttgart],cost:5},{nodes:[hn.München,hn.Wien],cost:9},{nodes:[hn.Praha,hn.Wien],cost:7},{nodes:[hn.Wien,hn.Katowice],cost:8},{nodes:[hn.Budapest,hn.Katowice],cost:11},{nodes:[hn.Oslo,hn.Kobenhavn],cost:17},{nodes:[hn.Oslo,hn.Stockholm],cost:13},{nodes:[hn.Stockholm,hn.Kobenhavn],cost:18},{nodes:[hn.Stockholm,hn.Helsinki],cost:21},{nodes:[hn.Helsinki,hn.StPetersburg],cost:11},{nodes:[hn.Tallinn,hn.StPetersburg],cost:9},{nodes:[hn.Tallinn,hn.Riga],cost:7},{nodes:[hn.Riga,hn.StPetersburg],cost:13},{nodes:[hn.Kobenhavn,hn.Bremen],cost:12},{nodes:[hn.Kobenhavn,hn.Berlin],cost:15},{nodes:[hn.Warszawa,hn.Minsk],cost:10},{nodes:[hn.Warszawa,hn.Kyjiv],cost:14},{nodes:[hn.Minsk,hn.Moskwa],cost:14},{nodes:[hn.Minsk,hn.Kyjiv],cost:10},{nodes:[hn.Moskwa,hn.Kharkiv],cost:16},{nodes:[hn.Kyjiv,hn.Kharkiv],cost:9},{nodes:[hn.Kyjiv,hn.Odessa],cost:9},{nodes:[hn.Kharkiv,hn.Odessa],cost:13},{nodes:[hn.Odessa,hn.Bucuresti],cost:10},{nodes:[hn.Berlin,hn.Warszawa],cost:11},{nodes:[hn.Praha,hn.Warszawa],cost:11},{nodes:[hn.Katowice,hn.Warszawa],cost:5},{nodes:[hn.Kobenhavn,hn.Warszawa],cost:25},{nodes:[hn.Riga,hn.Warszawa],cost:12},{nodes:[hn.Riga,hn.Minsk],cost:8},{nodes:[hn.Riga,hn.Moskwa],cost:18},{nodes:[hn.StPetersburg,hn.Moskwa],cost:14},{nodes:[hn.Kyjiv,hn.Budapest],cost:21},{nodes:[hn.Odessa,hn.Budapest],cost:25},{nodes:[hn.Bucuresti,hn.Budapest],cost:16},{nodes:[hn.Beograd,hn.Sofia],cost:11},{nodes:[hn.Beograd,hn.Tirana],cost:15},{nodes:[hn.Sofia,hn.Tirana],cost:13},{nodes:[hn.Sofia,hn.Athina],cost:17},{nodes:[hn.Sofia,hn.Istanbul],cost:13},{nodes:[hn.Tirana,hn.Athina],cost:16},{nodes:[hn.Istanbul,hn.Izmir],cost:8},{nodes:[hn.Istanbul,hn.Ankara],cost:9},{nodes:[hn.Izmir,hn.Ankara],cost:10},{nodes:[hn.Bucuresti,hn.Beograd],cost:12},{nodes:[hn.Bucuresti,hn.Sofia],cost:9},{nodes:[hn.Bucuresti,hn.Istanbul],cost:13},{nodes:[hn.Beograd,hn.Zagreb],cost:9},{nodes:[hn.Beograd,hn.Napoli],cost:18},{nodes:[hn.Beograd,hn.Budapest],cost:10},{nodes:[hn.Tirana,hn.Napoli],cost:25}],layout:"Landscape",adjustRatio:[.5,.5],mapPosition:[-30,-50],mapRotation:10,resupply:[[[2,6,2],[2,6,2],[3,7,4],[3,8,4],[5,10,5]],[[2,2,3],[2,2,3],[3,3,4],[4,3,5],[4,5,6]],[[2,3,5],[2,3,5],[3,4,5],[3,5,7],[4,6,8]],[[1,1,2],[1,1,2],[1,2,2],[2,3,3],[2,3,4]]],coalPrices:[1,1,1,1,2,2,2,2,3,3,3,3,4,4,5,5,6,6,7,7,8,8,9,9],oilPrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,9,9],garbagePrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8],uraniumPrices:[1,2,3,4,5,6,7,7,8,8,9,9],startingResources:[20,16,18,4],startingSupply:[24,24,24,12],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ye),o=r.findIndex((function(e){return e.type===ve.Step3})),a=r.splice(o,1)[0],i=De(r.splice(0,13),t()+""),s=De(r,t()+""),c=i.splice(0,9).sort((function(e,n){return e.number-n.number})),u=c.slice(0,4),l=c.slice(4),d=0,f=0;2==e?(d=1,f=5):3==e?(d=2,f=6):4==e&&(d=1,f=3);var p=Math.max(0,d-i.length),h=i.slice(d),g=s.slice(f+p),y=De(h.concat(g),t()+"");if(y.length>0&&y[0].number<=15){var m=y.findIndex((function(e){return e.number>15}));if(m>0){var v=[y[m],y[0]];y[0]=v[0],y[m]=v[1]}}return y.push(a),{actualMarket:u,futureMarket:l,powerPlantsDeck:y}},mapSpecificRules:"Europe uses the New Power Plants Set 2 deck (cards with a plug on the back). The power plant market starts as 4 current + 5 future power plants (9 total). When Step 2 begins, remove the lowest-numbered plant from the current market from the game once and do not replace it; the future market then has 4 plants instead of 5."};(function(e){e["Brown"]="brown",e["Purple"]="purple",e["Blue"]="blue",e["Yellow"]="yellow",e["Green"]="green",e["Red"]="red"})(yn||(yn={})),function(e){e["Calais"]="Calais",e["Lile"]="Lile",e["Amiens"]="Amiens",e["Reims"]="Reims",e["Metz"]="Metz",e["Nancy"]="Nancy",e["Strasbourg"]="Strasbourg",e["Havre"]="Havre",e["Caen"]="Caen",e["Brest"]="Brest",e["Rennes"]="Rennes",e["Lemans"]="Le Mans",e["Angers"]="Angers",e["Rouen"]="Rouen",e["Paris1"]="Paris 1",e["Paris2"]="Paris 2",e["Paris3"]="Paris 3",e["Orleans"]="Orleans",e["Tours"]="Tours",e["Limoges"]="Limoges",e["Clermontferrand"]="Clermont-Ferrand",e["Besancon"]="Besancon",e["Dijon"]="Dijon",e["Lyon"]="Lyon",e["Chamonix"]="Chamonix",e["Mulhouse"]="Mulhouse",e["Grenoble"]="Grenoble",e["Saintetienne"]="Saint-Etienne",e["Nice"]="Nice",e["Toulon"]="Toulon",e["Aimenprovence"]="Aim-En-Provence",e["Marseille"]="Marseille",e["Nimes"]="Nimes",e["Montpellier"]="Montpellier",e["Perpignan"]="Perpignan",e["Nantes"]="Nantes",e["Larochelle"]="La Rochelle",e["Bordeaux"]="Bordeaux",e["Biarritz"]="Biarritz",e["Toulous"]="Toulous",e["Carcassone"]="Carcas Sone",e["Lourdes"]="Lourdes"}(mn||(mn={}));var bn,wn,xn={name:"France",cities:[{name:mn.Calais,region:yn.Brown,x:661,y:294},{name:mn.Lile,region:yn.Brown,x:791,y:328},{name:mn.Amiens,region:yn.Brown,x:700,y:433},{name:mn.Reims,region:yn.Brown,x:888,y:531},{name:mn.Metz,region:yn.Brown,x:1076,y:528},{name:mn.Nancy,region:yn.Brown,x:1078,y:643},{name:mn.Strasbourg,region:yn.Brown,x:1208,y:615},{name:mn.Havre,region:yn.Purple,x:487,y:471},{name:mn.Caen,region:yn.Purple,x:423,y:567},{name:mn.Brest,region:yn.Purple,x:79,y:654},{name:mn.Rennes,region:yn.Purple,x:326,y:695},{name:mn.Lemans,region:yn.Purple,x:516,y:699},{name:mn.Angers,region:yn.Purple,x:446,y:798},{name:mn.Rouen,region:yn.Purple,x:598,y:506},{name:mn.Paris1,region:yn.Blue,x:693,y:553},{name:mn.Paris2,region:yn.Blue,x:779,y:566},{name:mn.Paris3,region:yn.Blue,x:722,y:633},{name:mn.Orleans,region:yn.Blue,x:684,y:736},{name:mn.Tours,region:yn.Blue,x:564,y:813},{name:mn.Limoges,region:yn.Blue,x:605,y:1009},{name:mn.Clermontferrand,region:yn.Blue,x:777,y:1017},{name:mn.Besancon,region:yn.Yellow,x:1084,y:828},{name:mn.Dijon,region:yn.Yellow,x:964,y:801},{name:mn.Lyon,region:yn.Yellow,x:964,y:973},{name:mn.Chamonix,region:yn.Yellow,x:1153,y:987},{name:mn.Mulhouse,region:yn.Yellow,x:1180,y:742},{name:mn.Grenoble,region:yn.Yellow,x:1048,y:1116},{name:mn.Saintetienne,region:yn.Yellow,x:892,y:1088},{name:mn.Nice,region:yn.Green,x:1178,y:1302},{name:mn.Toulon,region:yn.Green,x:1070,y:1397},{name:mn.Aimenprovence,region:yn.Green,x:1016,y:1304},{name:mn.Marseille,region:yn.Green,x:954,y:1369},{name:mn.Nimes,region:yn.Green,x:889,y:1256},{name:mn.Montpellier,region:yn.Green,x:816,y:1330},{name:mn.Perpignan,region:yn.Green,x:767,y:1460},{name:mn.Nantes,region:yn.Red,x:330,y:833},{name:mn.Larochelle,region:yn.Red,x:379,y:959},{name:mn.Bordeaux,region:yn.Red,x:435,y:1148},{name:mn.Biarritz,region:yn.Red,x:345,y:1328},{name:mn.Toulous,region:yn.Red,x:621,y:1309},{name:mn.Carcassone,region:yn.Red,x:700,y:1382},{name:mn.Lourdes,region:yn.Red,x:479,y:1393}],connections:[{nodes:[mn.Calais,mn.Havre],cost:13},{nodes:[mn.Calais,mn.Lile],cost:7},{nodes:[mn.Calais,mn.Amiens],cost:8},{nodes:[mn.Lile,mn.Reims],cost:9},{nodes:[mn.Havre,mn.Rouen],cost:5},{nodes:[mn.Havre,mn.Caen],cost:5},{nodes:[mn.Caen,mn.Rennes],cost:12},{nodes:[mn.Rennes,mn.Brest],cost:16},{nodes:[mn.Brest,mn.Nantes],cost:19},{nodes:[mn.Rennes,mn.Nantes],cost:7},{nodes:[mn.Rennes,mn.Angers],cost:7},{nodes:[mn.Rennes,mn.Lemans],cost:9},{nodes:[mn.Caen,mn.Lemans],cost:10},{nodes:[mn.Lemans,mn.Paris3],cost:10},{nodes:[mn.Paris3,mn.Caen],cost:12},{nodes:[mn.Caen,mn.Rouen],cost:9},{nodes:[mn.Rouen,mn.Paris1],cost:9},{nodes:[mn.Rouen,mn.Amiens],cost:6},{nodes:[mn.Lile,mn.Amiens],cost:7},{nodes:[mn.Amiens,mn.Reims],cost:11},{nodes:[mn.Reims,mn.Metz],cost:12},{nodes:[mn.Metz,mn.Strasbourg],cost:11},{nodes:[mn.Strasbourg,mn.Nancy],cost:10},{nodes:[mn.Strasbourg,mn.Mulhouse],cost:6},{nodes:[mn.Mulhouse,mn.Besancon],cost:8},{nodes:[mn.Besancon,mn.Nancy],cost:14},{nodes:[mn.Nancy,mn.Dijon],cost:15},{nodes:[mn.Reims,mn.Nancy],cost:13},{nodes:[mn.Nancy,mn.Paris2],cost:21},{nodes:[mn.Paris1,mn.Paris2],cost:0},{nodes:[mn.Paris1,mn.Paris3],cost:0},{nodes:[mn.Paris2,mn.Dijon],cost:20},{nodes:[mn.Dijon,mn.Orleans],cost:18},{nodes:[mn.Orleans,mn.Lemans],cost:8},{nodes:[mn.Lemans,mn.Tours],cost:5},{nodes:[mn.Tours,mn.Orleans],cost:7},{nodes:[mn.Paris1,mn.Amiens],cost:9},{nodes:[mn.Dijon,mn.Clermontferrand],cost:19},{nodes:[mn.Clermontferrand,mn.Limoges],cost:12},{nodes:[mn.Limoges,mn.Toulous],cost:19},{nodes:[mn.Toulous,mn.Clermontferrand],cost:24},{nodes:[mn.Clermontferrand,mn.Montpellier],cost:22},{nodes:[mn.Montpellier,mn.Nimes],cost:3},{nodes:[mn.Saintetienne,mn.Grenoble],cost:10},{nodes:[mn.Grenoble,mn.Chamonix],cost:12},{nodes:[mn.Chamonix,mn.Besancon],cost:19},{nodes:[mn.Besancon,mn.Dijon],cost:6},{nodes:[mn.Dijon,mn.Lyon],cost:13},{nodes:[mn.Lyon,mn.Clermontferrand],cost:11},{nodes:[mn.Saintetienne,mn.Montpellier],cost:18},{nodes:[mn.Saintetienne,mn.Nimes],cost:16},{nodes:[mn.Nimes,mn.Aimenprovence],cost:8},{nodes:[mn.Aimenprovence,mn.Nice],cost:8},{nodes:[mn.Nice,mn.Toulon],cost:7},{nodes:[mn.Toulon,mn.Marseille],cost:3},{nodes:[mn.Marseille,mn.Aimenprovence],cost:0},{nodes:[mn.Nice,mn.Grenoble],cost:19},{nodes:[mn.Grenoble,mn.Aimenprovence],cost:17},{nodes:[mn.Grenoble,mn.Nimes],cost:18},{nodes:[mn.Montpellier,mn.Toulous],cost:14},{nodes:[mn.Toulous,mn.Bordeaux],cost:14},{nodes:[mn.Bordeaux,mn.Limoges],cost:13},{nodes:[mn.Limoges,mn.Tours],cost:13},{nodes:[mn.Tours,mn.Larochelle],cost:13},{nodes:[mn.Larochelle,mn.Angers],cost:12},{nodes:[mn.Angers,mn.Lemans],cost:5},{nodes:[mn.Angers,mn.Nantes],cost:5},{nodes:[mn.Nantes,mn.Larochelle],cost:9},{nodes:[mn.Larochelle,mn.Bordeaux],cost:13},{nodes:[mn.Bordeaux,mn.Biarritz],cost:12},{nodes:[mn.Bordeaux,mn.Lourdes],cost:14},{nodes:[mn.Lourdes,mn.Biarritz],cost:9},{nodes:[mn.Lourdes,mn.Toulous],cost:10},{nodes:[mn.Lourdes,mn.Carcassone],cost:15},{nodes:[mn.Lourdes,mn.Perpignan],cost:20},{nodes:[mn.Perpignan,mn.Carcassone],cost:6},{nodes:[mn.Carcassone,mn.Toulous],cost:6},{nodes:[mn.Carcassone,mn.Montpellier],cost:9},{nodes:[mn.Montpellier,mn.Perpignan],cost:11},{nodes:[mn.Orleans,mn.Limoges],cost:19},{nodes:[mn.Orleans,mn.Clermontferrand],cost:18},{nodes:[mn.Paris3,mn.Orleans],cost:7},{nodes:[mn.Angers,mn.Tours],cost:6},{nodes:[mn.Larochelle,mn.Limoges],cost:13},{nodes:[mn.Nancy,mn.Metz],cost:3},{nodes:[mn.Nancy,mn.Mulhouse],cost:12},{nodes:[mn.Besancon,mn.Lyon],cost:16},{nodes:[mn.Lyon,mn.Grenoble],cost:7},{nodes:[mn.Lyon,mn.Chamonix],cost:13},{nodes:[mn.Lyon,mn.Saintetienne],cost:6},{nodes:[mn.Saintetienne,mn.Clermontferrand],cost:10},{nodes:[mn.Paris2,mn.Reims],cost:9},{nodes:[mn.Paris3,mn.Paris2],cost:0}],layout:"Portrait",mapPosition:[50,-100],adjustRatio:[.7,.7],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[24,18,6,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ye);if("original"==n){a=a.slice(8);var i=a.splice(0,1)[0];a.splice(1,1)[0];var s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[$t(3),$t(4),$t(5),$t(6)],o=[$t(7),$t(8),$t(9),$t(10)]}else{a.splice(10,1)[0];var c=a.splice(8,1)[0],u=De(a.splice(0,11),t()+""),l=u.splice(0,7);l.push(c),l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?a=De(a.slice(6).concat(u),t()+""):3==e?(u=u.slice(1),a=De(a.slice(6).concat(u),t()+"")):a=De(4==e?a.slice(3).concat(u):a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Remove power plant 13. Put power plant 11 on top of the deck."};(function(e){e["Purple"]="purple",e["Green"]="green",e["Red"]="red",e["Yellow"]="yellow",e["Cyan"]="cyan",e["Brown"]="brown"})(bn||(bn={})),function(e){e["Flensburg"]="Flensburg",e["Kiel"]="Kiel",e["Hamburg"]="Hamburg",e["Hannover"]="Hannover",e["Bremen"]="Bremen",e["Wilhelmshaven"]="Wilhelmshaven",e["Cuxhaven"]="Cuxhaven",e["Lubeck"]="Lubeck",e["Rostock"]="Rostock",e["Schwerin"]="Schwerin",e["Torgelow"]="Torgelow",e["Magdeburg"]="Magdeburg",e["Berlin"]="Berlin",e["FrankfurtO"]="Frankfurt-O",e["Halle"]="Halle",e["Leipzig"]="Leipzig",e["Dresden"]="Dresden",e["Erfurt"]="Erfurt",e["Fulda"]="Fulda",e["Würzburg"]="Würzburg",e["Nurnberg"]="Nurnberg",e["Osnabrück"]="Osnabrück",e["Münster"]="Münster",e["Essen"]="Essen",e["Duisburg"]="Duisburg",e["Dortmund"]="Dortmund",e["Dusseldorf"]="Dusseldorf",e["Kassel"]="Kassel",e["Aachen"]="Aachen",e["Köln"]="Köln",e["Trier"]="Trier",e["Wiesbaden"]="Wiesbaden",e["FrankfurtM"]="Frankfurt-M",e["Saarbrücken"]="Saarbrücken",e["Mannheim"]="Mannheim",e["Freiburg"]="Freiburg",e["Stuttgart"]="Stuttgart",e["Konstanz"]="Konstanz",e["Augsburg"]="Augsburg",e["Regensburg"]="Regensburg",e["München"]="München",e["Passau"]="Passau",e["Stralsund"]="Stralsund",e["Mainz"]="Mainz"}(wn||(wn={}));var kn,_n,Pn={name:"Germany",cities:[{name:wn.Flensburg,region:bn.Green,x:37,y:427},{name:wn.Kiel,region:bn.Green,x:106,y:392},{name:wn.Hamburg,region:bn.Green,x:212,y:396},{name:wn.Hannover,region:bn.Green,x:378,y:395},{name:wn.Bremen,region:bn.Green,x:276,y:463},{name:wn.Wilhelmshaven,region:bn.Green,x:211,y:521},{name:wn.Cuxhaven,region:bn.Green,x:168,y:474},{name:wn.Lubeck,region:bn.Brown,x:153,y:341},{name:wn.Rostock,region:bn.Brown,x:128,y:256},{name:wn.Schwerin,region:bn.Brown,x:217,y:297},{name:wn.Torgelow,region:bn.Brown,x:210,y:126},{name:wn.Magdeburg,region:bn.Brown,x:389,y:271},{name:wn.Berlin,region:bn.Brown,x:355,y:170},{name:wn.FrankfurtO,region:bn.Brown,x:381,y:99},{name:wn.Halle,region:bn.Yellow,x:493,y:259},{name:wn.Leipzig,region:bn.Yellow,x:526,y:222},{name:wn.Dresden,region:bn.Yellow,x:572,y:126},{name:wn.Erfurt,region:bn.Yellow,x:567,y:309},{name:wn.Fulda,region:bn.Yellow,x:628,y:398},{name:wn.Würzburg,region:bn.Yellow,x:735,y:386},{name:wn.Nurnberg,region:bn.Yellow,x:780,y:309},{name:wn.Osnabrück,region:bn.Red,x:359,y:516},{name:wn.Münster,region:bn.Red,x:427,y:554},{name:wn.Essen,region:bn.Red,x:475,y:603},{name:wn.Duisburg,region:bn.Red,x:456,y:645},{name:wn.Dortmund,region:bn.Red,x:505,y:543},{name:wn.Dusseldorf,region:bn.Red,x:537,y:635},{name:wn.Kassel,region:bn.Red,x:524,y:430},{name:wn.Aachen,region:bn.Cyan,x:614,y:654},{name:wn.Köln,region:bn.Cyan,x:590,y:589},{name:wn.Trier,region:bn.Cyan,x:739,y:628},{name:wn.Wiesbaden,region:bn.Cyan,x:697,y:514},{name:wn.FrankfurtM,region:bn.Cyan,x:672,y:473},{name:wn.Saarbrücken,region:bn.Cyan,x:818,y:568},{name:wn.Mannheim,region:bn.Cyan,x:796,y:479},{name:wn.Freiburg,region:bn.Purple,x:966,y:537},{name:wn.Stuttgart,region:bn.Purple,x:884,y:458},{name:wn.Konstanz,region:bn.Purple,x:1011,y:459},{name:wn.Augsburg,region:bn.Purple,x:911,y:346},{name:wn.Regensburg,region:bn.Purple,x:846,y:256},{name:wn.München,region:bn.Purple,x:967,y:278},{name:wn.Passau,region:bn.Purple,x:904,y:153}],connections:[{nodes:[wn.Flensburg,wn.Kiel],cost:4},{nodes:[wn.Kiel,wn.Hamburg],cost:8},{nodes:[wn.Kiel,wn.Lubeck],cost:4},{nodes:[wn.Hamburg,wn.Hannover],cost:17},{nodes:[wn.Hamburg,wn.Bremen],cost:11},{nodes:[wn.Hamburg,wn.Cuxhaven],cost:11},{nodes:[wn.Hamburg,wn.Lubeck],cost:6},{nodes:[wn.Hamburg,wn.Schwerin],cost:8},{nodes:[wn.Bremen,wn.Wilhelmshaven],cost:11},{nodes:[wn.Bremen,wn.Hannover],cost:10},{nodes:[wn.Bremen,wn.Cuxhaven],cost:8},{nodes:[wn.Bremen,wn.Osnabrück],cost:11},{nodes:[wn.Hannover,wn.Schwerin],cost:19},{nodes:[wn.Hannover,wn.Magdeburg],cost:15},{nodes:[wn.Hannover,wn.Erfurt],cost:19},{nodes:[wn.Hannover,wn.Osnabrück],cost:16},{nodes:[wn.Hannover,wn.Kassel],cost:15},{nodes:[wn.Wilhelmshaven,wn.Osnabrück],cost:14},{nodes:[wn.Lubeck,wn.Schwerin],cost:6},{nodes:[wn.Schwerin,wn.Rostock],cost:6},{nodes:[wn.Schwerin,wn.Torgelow],cost:19},{nodes:[wn.Schwerin,wn.Berlin],cost:18},{nodes:[wn.Schwerin,wn.Magdeburg],cost:16},{nodes:[wn.Torgelow,wn.Rostock],cost:19},{nodes:[wn.Torgelow,wn.Berlin],cost:15},{nodes:[wn.Berlin,wn.Magdeburg],cost:10},{nodes:[wn.Berlin,wn.FrankfurtO],cost:6},{nodes:[wn.Berlin,wn.Halle],cost:17},{nodes:[wn.Magdeburg,wn.Halle],cost:11},{nodes:[wn.FrankfurtO,wn.Leipzig],cost:21},{nodes:[wn.FrankfurtO,wn.Dresden],cost:16},{nodes:[wn.Halle,wn.Leipzig],cost:0},{nodes:[wn.Leipzig,wn.Dresden],cost:13},{nodes:[wn.Erfurt,wn.Halle],cost:6},{nodes:[wn.Erfurt,wn.Dresden],cost:19},{nodes:[wn.Erfurt,wn.Nurnberg],cost:21},{nodes:[wn.Erfurt,wn.Fulda],cost:13},{nodes:[wn.Erfurt,wn.Kassel],cost:15},{nodes:[wn.Fulda,wn.Würzburg],cost:11},{nodes:[wn.Fulda,wn.Kassel],cost:8},{nodes:[wn.Fulda,wn.FrankfurtM],cost:8},{nodes:[wn.Würzburg,wn.Nurnberg],cost:8},{nodes:[wn.Würzburg,wn.FrankfurtM],cost:13},{nodes:[wn.Würzburg,wn.Mannheim],cost:10},{nodes:[wn.Würzburg,wn.Stuttgart],cost:12},{nodes:[wn.Würzburg,wn.Augsburg],cost:19},{nodes:[wn.Nurnberg,wn.Augsburg],cost:18},{nodes:[wn.Nurnberg,wn.Regensburg],cost:12},{nodes:[wn.Osnabrück,wn.Münster],cost:7},{nodes:[wn.Osnabrück,wn.Kassel],cost:20},{nodes:[wn.Münster,wn.Essen],cost:6},{nodes:[wn.Münster,wn.Dortmund],cost:2},{nodes:[wn.Essen,wn.Duisburg],cost:0},{nodes:[wn.Essen,wn.Dusseldorf],cost:2},{nodes:[wn.Essen,wn.Dortmund],cost:4},{nodes:[wn.Dortmund,wn.Kassel],cost:18},{nodes:[wn.Dortmund,wn.Köln],cost:10},{nodes:[wn.Dortmund,wn.FrankfurtM],cost:20},{nodes:[wn.Kassel,wn.FrankfurtM],cost:13},{nodes:[wn.Dusseldorf,wn.Aachen],cost:9},{nodes:[wn.Dusseldorf,wn.Köln],cost:4},{nodes:[wn.Aachen,wn.Köln],cost:7},{nodes:[wn.Aachen,wn.Trier],cost:19},{nodes:[wn.Trier,wn.Köln],cost:20},{nodes:[wn.Trier,wn.Wiesbaden],cost:18},{nodes:[wn.Trier,wn.Saarbrücken],cost:11},{nodes:[wn.Wiesbaden,wn.FrankfurtM],cost:0},{nodes:[wn.Wiesbaden,wn.Köln],cost:21},{nodes:[wn.Wiesbaden,wn.Saarbrücken],cost:10},{nodes:[wn.Wiesbaden,wn.Mannheim],cost:11},{nodes:[wn.Mannheim,wn.Saarbrücken],cost:11},{nodes:[wn.Mannheim,wn.Stuttgart],cost:6},{nodes:[wn.Stuttgart,wn.Saarbrücken],cost:17},{nodes:[wn.Stuttgart,wn.Freiburg],cost:16},{nodes:[wn.Stuttgart,wn.Konstanz],cost:16},{nodes:[wn.Stuttgart,wn.Augsburg],cost:15},{nodes:[wn.Konstanz,wn.Freiburg],cost:14},{nodes:[wn.Konstanz,wn.Augsburg],cost:17},{nodes:[wn.Regensburg,wn.Augsburg],cost:13},{nodes:[wn.Regensburg,wn.München],cost:10},{nodes:[wn.Regensburg,wn.Passau],cost:12},{nodes:[wn.Augsburg,wn.München],cost:6},{nodes:[wn.Passau,wn.München],cost:14}],layout:"Landscape",mapPosition:[20,20]},Sn={name:"Germany",cities:[{name:wn.Flensburg,region:bn.Green,x:37,y:427},{name:wn.Kiel,region:bn.Green,x:106,y:392},{name:wn.Hamburg,region:bn.Green,x:212,y:396},{name:wn.Hannover,region:bn.Green,x:378,y:395},{name:wn.Bremen,region:bn.Green,x:276,y:463},{name:wn.Wilhelmshaven,region:bn.Green,x:211,y:521},{name:wn.Cuxhaven,region:bn.Green,x:168,y:474},{name:wn.Lubeck,region:bn.Brown,x:153,y:341},{name:wn.Rostock,region:bn.Brown,x:128,y:256},{name:wn.Schwerin,region:bn.Brown,x:217,y:297},{name:wn.Stralsund,region:bn.Brown,x:210,y:126},{name:wn.Magdeburg,region:bn.Brown,x:389,y:271},{name:wn.Berlin,region:bn.Brown,x:355,y:170},{name:wn.FrankfurtO,region:bn.Brown,x:381,y:99},{name:wn.Halle,region:bn.Yellow,x:493,y:259},{name:wn.Leipzig,region:bn.Yellow,x:526,y:222},{name:wn.Dresden,region:bn.Yellow,x:572,y:126},{name:wn.Erfurt,region:bn.Yellow,x:567,y:309},{name:wn.Fulda,region:bn.Yellow,x:628,y:398},{name:wn.Würzburg,region:bn.Yellow,x:735,y:386},{name:wn.Nurnberg,region:bn.Yellow,x:780,y:309},{name:wn.Osnabrück,region:bn.Red,x:359,y:516},{name:wn.Münster,region:bn.Red,x:427,y:554},{name:wn.Essen,region:bn.Red,x:475,y:603},{name:wn.Duisburg,region:bn.Red,x:456,y:645},{name:wn.Dortmund,region:bn.Red,x:505,y:543},{name:wn.Dusseldorf,region:bn.Red,x:537,y:635},{name:wn.Kassel,region:bn.Red,x:524,y:430},{name:wn.Aachen,region:bn.Cyan,x:614,y:654},{name:wn.Köln,region:bn.Cyan,x:590,y:589},{name:wn.Trier,region:bn.Cyan,x:739,y:628},{name:wn.Mainz,region:bn.Cyan,x:697,y:514},{name:wn.FrankfurtM,region:bn.Cyan,x:672,y:473},{name:wn.Saarbrücken,region:bn.Cyan,x:818,y:568},{name:wn.Mannheim,region:bn.Cyan,x:796,y:479},{name:wn.Freiburg,region:bn.Purple,x:966,y:537},{name:wn.Stuttgart,region:bn.Purple,x:884,y:458},{name:wn.Konstanz,region:bn.Purple,x:1011,y:459},{name:wn.Augsburg,region:bn.Purple,x:911,y:346},{name:wn.Regensburg,region:bn.Purple,x:846,y:256},{name:wn.München,region:bn.Purple,x:967,y:278},{name:wn.Passau,region:bn.Purple,x:904,y:153}],connections:[{nodes:[wn.Flensburg,wn.Kiel],cost:4},{nodes:[wn.Kiel,wn.Hamburg],cost:8},{nodes:[wn.Kiel,wn.Lubeck],cost:4},{nodes:[wn.Hamburg,wn.Hannover],cost:17},{nodes:[wn.Hamburg,wn.Bremen],cost:11},{nodes:[wn.Hamburg,wn.Cuxhaven],cost:11},{nodes:[wn.Hamburg,wn.Lubeck],cost:6},{nodes:[wn.Hamburg,wn.Schwerin],cost:8},{nodes:[wn.Bremen,wn.Wilhelmshaven],cost:11},{nodes:[wn.Bremen,wn.Hannover],cost:10},{nodes:[wn.Bremen,wn.Cuxhaven],cost:8},{nodes:[wn.Bremen,wn.Osnabrück],cost:11},{nodes:[wn.Hannover,wn.Schwerin],cost:19},{nodes:[wn.Hannover,wn.Magdeburg],cost:15},{nodes:[wn.Hannover,wn.Erfurt],cost:19},{nodes:[wn.Hannover,wn.Osnabrück],cost:16},{nodes:[wn.Hannover,wn.Kassel],cost:15},{nodes:[wn.Wilhelmshaven,wn.Osnabrück],cost:14},{nodes:[wn.Lubeck,wn.Schwerin],cost:6},{nodes:[wn.Schwerin,wn.Rostock],cost:6},{nodes:[wn.Schwerin,wn.Stralsund],cost:19},{nodes:[wn.Schwerin,wn.Berlin],cost:18},{nodes:[wn.Schwerin,wn.Magdeburg],cost:16},{nodes:[wn.Stralsund,wn.Rostock],cost:19},{nodes:[wn.Stralsund,wn.Berlin],cost:15},{nodes:[wn.Berlin,wn.Magdeburg],cost:10},{nodes:[wn.Berlin,wn.FrankfurtO],cost:6},{nodes:[wn.Berlin,wn.Halle],cost:17},{nodes:[wn.Magdeburg,wn.Halle],cost:11},{nodes:[wn.FrankfurtO,wn.Leipzig],cost:21},{nodes:[wn.FrankfurtO,wn.Dresden],cost:16},{nodes:[wn.Halle,wn.Leipzig],cost:0},{nodes:[wn.Leipzig,wn.Dresden],cost:13},{nodes:[wn.Erfurt,wn.Halle],cost:6},{nodes:[wn.Erfurt,wn.Dresden],cost:19},{nodes:[wn.Erfurt,wn.Nurnberg],cost:21},{nodes:[wn.Erfurt,wn.Fulda],cost:13},{nodes:[wn.Erfurt,wn.Kassel],cost:15},{nodes:[wn.Fulda,wn.Würzburg],cost:11},{nodes:[wn.Fulda,wn.Kassel],cost:8},{nodes:[wn.Fulda,wn.FrankfurtM],cost:8},{nodes:[wn.Würzburg,wn.Nurnberg],cost:8},{nodes:[wn.Würzburg,wn.FrankfurtM],cost:13},{nodes:[wn.Würzburg,wn.Mannheim],cost:10},{nodes:[wn.Würzburg,wn.Stuttgart],cost:12},{nodes:[wn.Würzburg,wn.Augsburg],cost:19},{nodes:[wn.Nurnberg,wn.Augsburg],cost:18},{nodes:[wn.Nurnberg,wn.Regensburg],cost:12},{nodes:[wn.Osnabrück,wn.Münster],cost:7},{nodes:[wn.Osnabrück,wn.Kassel],cost:20},{nodes:[wn.Münster,wn.Essen],cost:6},{nodes:[wn.Münster,wn.Dortmund],cost:2},{nodes:[wn.Essen,wn.Duisburg],cost:0},{nodes:[wn.Essen,wn.Dusseldorf],cost:2},{nodes:[wn.Essen,wn.Dortmund],cost:5},{nodes:[wn.Dortmund,wn.Kassel],cost:18},{nodes:[wn.Dortmund,wn.Köln],cost:10},{nodes:[wn.Dortmund,wn.FrankfurtM],cost:20},{nodes:[wn.Kassel,wn.FrankfurtM],cost:13},{nodes:[wn.Dusseldorf,wn.Aachen],cost:9},{nodes:[wn.Dusseldorf,wn.Köln],cost:4},{nodes:[wn.Aachen,wn.Köln],cost:7},{nodes:[wn.Aachen,wn.Trier],cost:19},{nodes:[wn.Trier,wn.Köln],cost:20},{nodes:[wn.Trier,wn.Mainz],cost:18},{nodes:[wn.Trier,wn.Saarbrücken],cost:11},{nodes:[wn.Mainz,wn.FrankfurtM],cost:0},{nodes:[wn.Mainz,wn.Köln],cost:21},{nodes:[wn.Mainz,wn.Saarbrücken],cost:10},{nodes:[wn.Mainz,wn.Mannheim],cost:11},{nodes:[wn.Mannheim,wn.Saarbrücken],cost:16},{nodes:[wn.Mannheim,wn.Stuttgart],cost:6},{nodes:[wn.Stuttgart,wn.Saarbrücken],cost:17},{nodes:[wn.Stuttgart,wn.Freiburg],cost:16},{nodes:[wn.Stuttgart,wn.Konstanz],cost:16},{nodes:[wn.Stuttgart,wn.Augsburg],cost:15},{nodes:[wn.Konstanz,wn.Freiburg],cost:14},{nodes:[wn.Konstanz,wn.Augsburg],cost:17},{nodes:[wn.Regensburg,wn.Augsburg],cost:13},{nodes:[wn.Regensburg,wn.München],cost:10},{nodes:[wn.Regensburg,wn.Passau],cost:12},{nodes:[wn.Augsburg,wn.München],cost:6},{nodes:[wn.Passau,wn.München],cost:14}],layout:"Landscape",mapPosition:[20,20],mapSpecificRules:"Stop resupplying uranium after power plant 39 has been bought."};(function(e){e["Red"]="red",e["Brown"]="brown",e["Green"]="green",e["Orange"]="orange",e["Yellow"]="yellow",e["Pink"]="pink"})(kn||(kn={})),function(e){e["Thiruvananthapuram"]="Thiruvananthapuram",e["Madurai"]="Madurai",e["Coimbatore"]="Coimbatore",e["Chennai"]="Chennai",e["Hyderabad"]="Hyderabad",e["Bangalore1"]="Bangalore 1",e["Bangalore2"]="Bangalore 2",e["Dibrugarh"]="Dibrugarh",e["Imphal"]="Imphal",e["Aizawi"]="Aizawi",e["Chittagong"]="Chittagong",e["Shillong"]="Shillong",e["Dhaka"]="Dhaka",e["Khulna"]="Khulna",e["Darjeeling"]="Darjeeling",e["Kathmandu"]="Kathmandu",e["Patna"]="Patna",e["Lakhnau"]="Lakhnau",e["Varanasi"]="Varanasi",e["Agra"]="Agra",e["Kanpur"]="Kanpur",e["Srinagar"]="Srinagar",e["Ludhiana"]="Ludhiana",e["Delhi1"]="Delhi 1",e["Delhi2"]="Delhi 2",e["Jaipur"]="Jaipur",e["Udaipur"]="Udaipur",e["Ahmedabad"]="Ahmedabad",e["Dhanbad"]="Dhanbad",e["Kolkata"]="Kolkata",e["Bhudaneswar"]="Bhudaneswar",e["Sambalpur"]="Sambalpur",e["Jabalpur"]="Jabalpur",e["Nagpur"]="Nagpur",e["Visakhapatnam"]="Visakhapatnam",e["Goa"]="Goa",e["Pune"]="Pune",e["Surat"]="Surat",e["Indore"]="Indore",e["Bhopal"]="Bhopal",e["Mumbai1"]="Mumbai 1",e["Mumbai2"]="Mumbai 2"}(_n||(_n={}));var Mn,Cn,Bn={name:"India",cities:[{name:_n.Thiruvananthapuram,region:kn.Red,x:217,y:868},{name:_n.Madurai,region:kn.Red,x:230,y:829},{name:_n.Coimbatore,region:kn.Red,x:197,y:797},{name:_n.Chennai,region:kn.Red,x:289,y:740},{name:_n.Hyderabad,region:kn.Red,x:232,y:618},{name:_n.Bangalore1,region:kn.Red,x:205,y:710},{name:_n.Bangalore2,region:kn.Red,x:205,y:735},{name:_n.Dibrugarh,region:kn.Brown,x:669,y:328},{name:_n.Imphal,region:kn.Brown,x:658,y:392},{name:_n.Aizawi,region:kn.Brown,x:625,y:427},{name:_n.Chittagong,region:kn.Brown,x:589,y:483},{name:_n.Shillong,region:kn.Brown,x:586,y:395},{name:_n.Dhaka,region:kn.Brown,x:548,y:432},{name:_n.Khulna,region:kn.Brown,x:528,y:468},{name:_n.Darjeeling,region:kn.Green,x:496,y:333},{name:_n.Kathmandu,region:kn.Green,x:418,y:307},{name:_n.Patna,region:kn.Green,x:416,y:373},{name:_n.Lakhnau,region:kn.Green,x:310,y:338},{name:_n.Varanasi,region:kn.Green,x:350,y:385},{name:_n.Agra,region:kn.Green,x:228,y:335},{name:_n.Kanpur,region:kn.Green,x:269,y:373},{name:_n.Srinagar,region:kn.Orange,x:135,y:115},{name:_n.Ludhiana,region:kn.Orange,x:186,y:215},{name:_n.Delhi1,region:kn.Orange,x:190,y:281},{name:_n.Delhi2,region:kn.Orange,x:190,y:303},{name:_n.Jaipur,region:kn.Orange,x:158,y:341},{name:_n.Udaipur,region:kn.Orange,x:105,y:410},{name:_n.Ahmedabad,region:kn.Orange,x:75,y:456},{name:_n.Dhanbad,region:kn.Yellow,x:424,y:427},{name:_n.Kolkata,region:kn.Yellow,x:463,y:477},{name:_n.Bhudaneswar,region:kn.Yellow,x:428,y:533},{name:_n.Sambalpur,region:kn.Yellow,x:376,y:494},{name:_n.Jabalpur,region:kn.Yellow,x:293,y:478},{name:_n.Nagpur,region:kn.Yellow,x:250,y:510},{name:_n.Visakhapatnam,region:kn.Yellow,x:358,y:597},{name:_n.Goa,region:kn.Pink,x:109,y:677},{name:_n.Pune,region:kn.Pink,x:133,y:587},{name:_n.Surat,region:kn.Pink,x:80,y:510},{name:_n.Indore,region:kn.Pink,x:160,y:476},{name:_n.Bhopal,region:kn.Pink,x:208,y:437},{name:_n.Mumbai1,region:kn.Pink,x:58,y:570},{name:_n.Mumbai2,region:kn.Pink,x:58,y:593}],connections:[{nodes:[_n.Srinagar,_n.Ludhiana],cost:15},{nodes:[_n.Ludhiana,_n.Delhi1],cost:9},{nodes:[_n.Delhi1,_n.Delhi2],cost:0},{nodes:[_n.Delhi2,_n.Jaipur],cost:7},{nodes:[_n.Delhi2,_n.Agra],cost:6},{nodes:[_n.Jaipur,_n.Bhopal],cost:12},{nodes:[_n.Jaipur,_n.Kanpur],cost:12},{nodes:[_n.Agra,_n.Lakhnau],cost:8},{nodes:[_n.Lakhnau,_n.Kathmandu],cost:15},{nodes:[_n.Kathmandu,_n.Darjeeling],cost:13},{nodes:[_n.Darjeeling,_n.Shillong],cost:12},{nodes:[_n.Shillong,_n.Patna],cost:18},{nodes:[_n.Patna,_n.Kathmandu],cost:10},{nodes:[_n.Imphal,_n.Dibrugarh],cost:11},{nodes:[_n.Dibrugarh,_n.Shillong],cost:9},{nodes:[_n.Shillong,_n.Imphal],cost:12},{nodes:[_n.Imphal,_n.Aizawi],cost:7},{nodes:[_n.Shillong,_n.Dhaka],cost:10},{nodes:[_n.Dhaka,_n.Khulna],cost:6},{nodes:[_n.Khulna,_n.Kolkata],cost:3},{nodes:[_n.Dhanbad,_n.Dhaka],cost:14},{nodes:[_n.Jabalpur,_n.Sambalpur],cost:13},{nodes:[_n.Sambalpur,_n.Nagpur],cost:13},{nodes:[_n.Nagpur,_n.Visakhapatnam],cost:17},{nodes:[_n.Visakhapatnam,_n.Sambalpur],cost:12},{nodes:[_n.Jabalpur,_n.Kanpur],cost:11},{nodes:[_n.Varanasi,_n.Jabalpur],cost:11},{nodes:[_n.Kanpur,_n.Varanasi],cost:8},{nodes:[_n.Varanasi,_n.Patna],cost:5},{nodes:[_n.Patna,_n.Lakhnau],cost:11},{nodes:[_n.Kanpur,_n.Bhopal],cost:13},{nodes:[_n.Ahmedabad,_n.Bhopal],cost:11},{nodes:[_n.Bhopal,_n.Udaipur],cost:11},{nodes:[_n.Udaipur,_n.Jaipur],cost:9},{nodes:[_n.Ahmedabad,_n.Surat],cost:7},{nodes:[_n.Ahmedabad,_n.Indore],cost:8},{nodes:[_n.Indore,_n.Surat],cost:10},{nodes:[_n.Mumbai1,_n.Mumbai2],cost:0},{nodes:[_n.Mumbai2,_n.Pune],cost:4},{nodes:[_n.Pune,_n.Hyderabad],cost:13},{nodes:[_n.Pune,_n.Nagpur],cost:17},{nodes:[_n.Pune,_n.Indore],cost:15},{nodes:[_n.Goa,_n.Coimbatore],cost:18},{nodes:[_n.Bangalore1,_n.Bangalore2],cost:0},{nodes:[_n.Bangalore2,_n.Coimbatore],cost:9},{nodes:[_n.Coimbatore,_n.Thiruvananthapuram],cost:10},{nodes:[_n.Thiruvananthapuram,_n.Madurai],cost:7},{nodes:[_n.Madurai,_n.Chennai],cost:12},{nodes:[_n.Chennai,_n.Bangalore1],cost:9},{nodes:[_n.Bangalore1,_n.Hyderabad],cost:14},{nodes:[_n.Hyderabad,_n.Goa],cost:15},{nodes:[_n.Goa,_n.Bangalore2],cost:14},{nodes:[_n.Mumbai2,_n.Goa],cost:11},{nodes:[_n.Indore,_n.Nagpur],cost:10},{nodes:[_n.Sambalpur,_n.Dhanbad],cost:8},{nodes:[_n.Sambalpur,_n.Bhudaneswar],cost:7},{nodes:[_n.Bhudaneswar,_n.Kolkata],cost:11},{nodes:[_n.Kolkata,_n.Dhanbad],cost:9},{nodes:[_n.Dhanbad,_n.Patna],cost:8},{nodes:[_n.Nagpur,_n.Hyderabad],cost:12},{nodes:[_n.Hyderabad,_n.Visakhapatnam],cost:13},{nodes:[_n.Visakhapatnam,_n.Chennai],cost:17},{nodes:[_n.Chittagong,_n.Aizawi],cost:7},{nodes:[_n.Dhaka,_n.Aizawi],cost:8},{nodes:[_n.Dhaka,_n.Chittagong],cost:7},{nodes:[_n.Patna,_n.Darjeeling],cost:11},{nodes:[_n.Visakhapatnam,_n.Bhudaneswar],cost:12},{nodes:[_n.Udaipur,_n.Ahmedabad],cost:6},{nodes:[_n.Madurai,_n.Coimbatore],cost:6},{nodes:[_n.Bangalore2,_n.Madurai],cost:10},{nodes:[_n.Bhopal,_n.Jabalpur],cost:8},{nodes:[_n.Bhopal,_n.Nagpur],cost:7},{nodes:[_n.Bhopal,_n.Indore],cost:4},{nodes:[_n.Surat,_n.Mumbai1],cost:6},{nodes:[_n.Agra,_n.Kanpur],cost:8},{nodes:[_n.Kanpur,_n.Lakhnau],cost:3},{nodes:[_n.Lakhnau,_n.Varanasi],cost:7}],layout:"Portrait",mapPosition:[200,-60],adjustRatio:[1.25,1.25],resupply:[[[4,5,4],[5,6,4],[6,7,5],[7,8,6],[8,10,7]],[[1,2,2],[2,2,2],[2,3,3],[3,4,4],[4,5,5]],[[1,3,4],[1,3,4],[3,4,6],[4,5,7],[4,7,9]],[[1,1,1],[1,1,1],[1,2,1],[2,2,2],[2,3,2]]],startingResources:[24,21,20,2],startingSupply:[24,24,24,8],maxPriceAvailable:[3,5,8],coalPrices:[1,1,1,1,2,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,8,8],garbagePrices:[1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6],uraniumPrices:[1,2,3,4,5,6,7,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ve);if("original"==n){a=a.slice(8);var i=a.splice(2,1)[0],s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[$t(3,"India"),$t(4,"India"),$t(5,"India"),$t(6,"India")],o=[$t(7,"India"),$t(8,"India"),$t(9,"India"),$t(10,"India")]}else{var c=De(a.splice(0,12),t()+""),u=c.splice(0,8);u=u.sort((function(e,n){return e.number-n.number})),r=u.slice(0,4),o=u.slice(4);var l=c.shift(),d=a.pop();a=De(a,t()+""),2==e?(c=c.slice(1),a=De(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=De(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=De(a.slice(3).concat(c),t()+"")):a=De(a.concat(c),t()+""),a.unshift(l),a.push(d)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"The power grid will suffer a power outage if too many cities are built in one round, penalizing players $3 per city built.\nPlayers take turns buying one resource at a time. The resource market is limited in steps 1 and 2.\nGarbage plants are less efficient. Their cost is one higher, but their storage capacity is not changed.\nPlayers must power as many cities as possible in each round."};(function(e){e["Brown"]="brown",e["Purple"]="purple",e["Red"]="red",e["Green"]="green",e["Yellow"]="yellow",e["Blue"]="blue"})(Mn||(Mn={})),function(e){e["Siracusa"]="Siracusa",e["Reggiodical"]="Reggio Di Cal",e["Cosenza"]="Cosenza",e["Messina"]="Messina",e["Palermo"]="Palermo",e["Catania"]="Catania",e["Brindisi"]="Brindisi",e["Taranto"]="Taranto",e["Bari"]="Bari",e["Foggia"]="Foggia",e["Pesara"]="Pesara",e["Napoli"]="Napoli",e["Salerno"]="Salerno",e["Roma"]="Roma",e["Ancona"]="Ancona",e["Rimini"]="Rimini",e["Ravenna"]="Ravenna",e["Sanmarino"]="San Marino",e["Perugia"]="Perugia",e["Frienze"]="Frienze",e["Udine"]="Udine",e["Trieste"]="Trieste",e["Bolanzo"]="Bolanzo",e["Mestre"]="Mestre",e["Venezia"]="Venezia",e["Vicenza"]="Vicenza",e["Padua"]="Padua",e["Ferrara"]="Ferrara",e["Bologna"]="Bologna",e["Modena"]="Modena",e["Reggio"]="Reggio",e["Pisa"]="Pisa",e["Parma"]="Parma",e["Laspezia"]="La Spezia",e["Torino"]="Torino",e["Bergamo"]="Bergamo",e["Milano"]="Milano",e["Brescia"]="Brescia",e["Picenza"]="Picenza",e["Genova"]="Genova",e["Verona"]="Verona",e["Lovorno"]="Lovorno"}(Cn||(Cn={}));var Rn,An,Ln={name:"Italy",cities:[{name:Cn.Siracusa,region:Mn.Brown,x:1048,y:471},{name:Cn.Reggiodical,region:Mn.Brown,x:1013,y:346},{name:Cn.Cosenza,region:Mn.Brown,x:960,y:240},{name:Cn.Messina,region:Mn.Brown,x:975,y:365},{name:Cn.Palermo,region:Mn.Brown,x:875,y:468},{name:Cn.Catania,region:Mn.Brown,x:1007,y:460},{name:Cn.Brindisi,region:Mn.Purple,x:945,y:4},{name:Cn.Taranto,region:Mn.Brown,x:933,y:92},{name:Cn.Bari,region:Mn.Purple,x:871,y:32},{name:Cn.Foggia,region:Mn.Purple,x:777,y:69},{name:Cn.Pesara,region:Mn.Purple,x:646,y:76},{name:Cn.Napoli,region:Mn.Purple,x:747,y:222},{name:Cn.Salerno,region:Mn.Purple,x:799,y:212},{name:Cn.Roma,region:Mn.Purple,x:583,y:228},{name:Cn.Ancona,region:Mn.Red,x:549,y:16},{name:Cn.Rimini,region:Mn.Red,x:459,y:13},{name:Cn.Ravenna,region:Mn.Red,x:401,y:-5},{name:Cn.Sanmarino,region:Mn.Red,x:456,y:88},{name:Cn.Perugia,region:Mn.Red,x:507,y:123},{name:Cn.Frienze,region:Mn.Red,x:389,y:159},{name:Cn.Udine,region:Mn.Green,x:358,y:-207},{name:Cn.Trieste,region:Mn.Green,x:410,y:-181},{name:Cn.Bolanzo,region:Mn.Green,x:197,y:-172},{name:Cn.Mestre,region:Mn.Green,x:318,y:-115},{name:Cn.Venezia,region:Mn.Green,x:349,y:-103},{name:Cn.Vicenza,region:Mn.Green,x:235,y:-89},{name:Cn.Padua,region:Mn.Green,x:279,y:-72},{name:Cn.Torino,region:Mn.Blue,x:57,y:215},{name:Cn.Bergamo,region:Mn.Blue,x:125,y:14},{name:Cn.Milano,region:Mn.Blue,x:123,y:102},{name:Cn.Brescia,region:Mn.Blue,x:182,y:2},{name:Cn.Picenza,region:Mn.Blue,x:182,y:105},{name:Cn.Genova,region:Mn.Blue,x:182,y:217},{name:Cn.Verona,region:Mn.Blue,x:231,y:-13},{name:Cn.Lovorno,region:Mn.Red,x:333,y:216},{name:Cn.Ferrara,region:Mn.Yellow,x:333,y:-3},{name:Cn.Bologna,region:Mn.Yellow,x:350,y:85},{name:Cn.Modena,region:Mn.Yellow,x:303,y:72},{name:Cn.Reggio,region:Mn.Yellow,x:263,y:96},{name:Cn.Pisa,region:Mn.Yellow,x:304,y:197},{name:Cn.Parma,region:Mn.Yellow,x:224,y:81},{name:Cn.Laspezia,region:Mn.Yellow,x:245,y:206}],connections:[{nodes:[Cn.Palermo,Cn.Catania],cost:15},{nodes:[Cn.Catania,Cn.Siracusa],cost:3},{nodes:[Cn.Catania,Cn.Messina],cost:6},{nodes:[Cn.Messina,Cn.Palermo],cost:15},{nodes:[Cn.Messina,Cn.Reggiodical],cost:3},{nodes:[Cn.Reggiodical,Cn.Cosenza],cost:13},{nodes:[Cn.Cosenza,Cn.Salerno],cost:18},{nodes:[Cn.Cosenza,Cn.Taranto],cost:15},{nodes:[Cn.Taranto,Cn.Brindisi],cost:4},{nodes:[Cn.Brindisi,Cn.Bari],cost:7},{nodes:[Cn.Bari,Cn.Taranto],cost:7},{nodes:[Cn.Taranto,Cn.Salerno],cost:19},{nodes:[Cn.Salerno,Cn.Bari],cost:16},{nodes:[Cn.Bari,Cn.Foggia],cost:8},{nodes:[Cn.Foggia,Cn.Salerno],cost:10},{nodes:[Cn.Salerno,Cn.Napoli],cost:3},{nodes:[Cn.Napoli,Cn.Foggia],cost:12},{nodes:[Cn.Napoli,Cn.Roma],cost:14},{nodes:[Cn.Roma,Cn.Foggia],cost:22},{nodes:[Cn.Foggia,Cn.Pesara],cost:10},{nodes:[Cn.Pesara,Cn.Roma],cost:14},{nodes:[Cn.Roma,Cn.Ancona],cost:17},{nodes:[Cn.Roma,Cn.Perugia],cost:13},{nodes:[Cn.Perugia,Cn.Sanmarino],cost:12},{nodes:[Cn.Sanmarino,Cn.Rimini],cost:0},{nodes:[Cn.Rimini,Cn.Ancona],cost:6},{nodes:[Cn.Ancona,Cn.Perugia],cost:10},{nodes:[Cn.Ancona,Cn.Pesara],cost:9},{nodes:[Cn.Roma,Cn.Frienze],cost:20},{nodes:[Cn.Lovorno,Cn.Roma],cost:19},{nodes:[Cn.Frienze,Cn.Perugia],cost:13},{nodes:[Cn.Frienze,Cn.Sanmarino],cost:12},{nodes:[Cn.Genova,Cn.Torino],cost:12},{nodes:[Cn.Torino,Cn.Milano],cost:8},{nodes:[Cn.Milano,Cn.Bergamo],cost:3},{nodes:[Cn.Bergamo,Cn.Bolanzo],cost:12},{nodes:[Cn.Bolanzo,Cn.Brescia],cost:12},{nodes:[Cn.Bolanzo,Cn.Mestre],cost:12},{nodes:[Cn.Bolanzo,Cn.Udine],cost:14},{nodes:[Cn.Udine,Cn.Trieste],cost:4},{nodes:[Cn.Udine,Cn.Venezia],cost:7},{nodes:[Cn.Venezia,Cn.Mestre],cost:0},{nodes:[Cn.Genova,Cn.Laspezia],cost:5},{nodes:[Cn.Laspezia,Cn.Pisa],cost:5},{nodes:[Cn.Pisa,Cn.Lovorno],cost:0},{nodes:[Cn.Genova,Cn.Milano],cost:9},{nodes:[Cn.Milano,Cn.Picenza],cost:4},{nodes:[Cn.Picenza,Cn.Parma],cost:4},{nodes:[Cn.Parma,Cn.Reggio],cost:2},{nodes:[Cn.Reggio,Cn.Modena],cost:2},{nodes:[Cn.Modena,Cn.Bologna],cost:3},{nodes:[Cn.Bologna,Cn.Pisa],cost:12},{nodes:[Cn.Pisa,Cn.Reggio],cost:10},{nodes:[Cn.Laspezia,Cn.Parma],cost:9},{nodes:[Cn.Laspezia,Cn.Reggio],cost:9},{nodes:[Cn.Genova,Cn.Picenza],cost:7},{nodes:[Cn.Genova,Cn.Parma],cost:11},{nodes:[Cn.Milano,Cn.Brescia],cost:4},{nodes:[Cn.Brescia,Cn.Bergamo],cost:3},{nodes:[Cn.Brescia,Cn.Verona],cost:4},{nodes:[Cn.Brescia,Cn.Picenza],cost:5},{nodes:[Cn.Bolanzo,Cn.Vicenza],cost:10},{nodes:[Cn.Vicenza,Cn.Padua],cost:3},{nodes:[Cn.Vicenza,Cn.Verona],cost:3},{nodes:[Cn.Verona,Cn.Parma],cost:6},{nodes:[Cn.Parma,Cn.Brescia],cost:6},{nodes:[Cn.Verona,Cn.Padua],cost:5},{nodes:[Cn.Padua,Cn.Mestre],cost:3},{nodes:[Cn.Venezia,Cn.Ravenna],cost:12},{nodes:[Cn.Ravenna,Cn.Ferrara],cost:4},{nodes:[Cn.Ferrara,Cn.Venezia],cost:9},{nodes:[Cn.Ferrara,Cn.Padua],cost:7},{nodes:[Cn.Ferrara,Cn.Verona],cost:7},{nodes:[Cn.Verona,Cn.Modena],cost:8},{nodes:[Cn.Frienze,Cn.Pisa],cost:5},{nodes:[Cn.Frienze,Cn.Ravenna],cost:10},{nodes:[Cn.Ravenna,Cn.Rimini],cost:4},{nodes:[Cn.Frienze,Cn.Bologna],cost:8},{nodes:[Cn.Bologna,Cn.Ravenna],cost:4},{nodes:[Cn.Bologna,Cn.Ferrara],cost:3},{nodes:[Cn.Ferrara,Cn.Modena],cost:4}],mapPosition:[-20,320],mapSpecificRules:"Stop resupplying uranium after power plant 39 has been bought.",startingResources:[18,15,12,2]};(function(e){e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Yellow"]="yellow",e["Red"]="red"})(Rn||(Rn={})),function(e){e["Asahikawa"]="Asahikawa",e["Sapporo"]="Sapporo",e["Hakodate"]="Hakodate",e["Admori"]="Admori",e["Morioka"]="Morioka",e["Akita"]="Akita",e["Sendai"]="Sendai",e["Niigata"]="Niigata",e["Koriyama"]="Koriyama",e["Nagano"]="Nagano",e["Saitama"]="Saitama",e["Tokyo"]="Tokyo",e["Chiba"]="Chiba",e["Yokohama"]="Yokohama",e["Kanazawa"]="Kanazawa",e["Toyama"]="Toyama",e["Kyoto"]="Kyoto",e["Osaka"]="Osaka",e["Nagoya"]="Nagoya",e["Kofu"]="Kofu",e["Hamamatsu"]="Hamamatsu",e["Kobe"]="Kobe",e["Matsue"]="Matsue",e["Okayama"]="Okayama",e["Takamatsu"]="Takamatsu",e["Kochi"]="Kochi",e["Matsuyama"]="Matsuyama",e["Hiroshima"]="Hiroshima",e["Shimonoseki"]="Shimonoseki",e["Oita"]="Oita",e["Miyazaki"]="Miyazaki",e["Kagoshima"]="Kagoshima",e["Kumamoto"]="Kumamoto",e["Fukuoka"]="Fukuoka",e["Nagasaki"]="Nagasaki"}(An||(An={}));var On,Gn,jn={name:"Japan",cities:[{name:An.Asahikawa,region:Rn.Brown,x:3384,y:1014},{name:An.Sapporo,region:Rn.Brown,x:3028,y:982,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:An.Hakodate,region:Rn.Brown,x:2622,y:1112},{name:An.Admori,region:Rn.Brown,x:3818,y:1336},{name:An.Morioka,region:Rn.Brown,x:3636,y:1646,slotCosts:[15,20],stepSlots:[0,1,2]},{name:An.Akita,region:Rn.Brown,x:3472,y:1480},{name:An.Sendai,region:Rn.Brown,x:3408,y:1886},{name:An.Niigata,region:Rn.Green,x:2874,y:1628},{name:An.Koriyama,region:Rn.Green,x:3086,y:1932,slotCosts:[10,15]},{name:An.Nagano,region:Rn.Green,x:2486,y:1722},{name:An.Saitama,region:Rn.Green,x:2450,y:1986,slotCosts:[15,20],stepSlots:[0,1,2]},{name:An.Tokyo,region:Rn.Green,x:2524,y:2122,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:An.Chiba,region:Rn.Green,x:2650,y:2316},{name:An.Yokohama,region:Rn.Green,x:2306,y:2244,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:An.Kanazawa,region:Rn.Purple,x:2207,y:1385},{name:An.Toyama,region:Rn.Purple,x:2257,y:1595,slotCosts:[15,20],stepSlots:[0,1,2]},{name:An.Kyoto,region:Rn.Purple,x:1765,y:1595},{name:An.Osaka,region:Rn.Purple,x:1517,y:1631,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:An.Nagoya,region:Rn.Purple,x:1942,y:1751},{name:An.Kofu,region:Rn.Purple,x:2179,y:1897},{name:An.Hamamatsu,region:Rn.Purple,x:1958,y:2024,slotCosts:[10,15]},{name:An.Kobe,region:Rn.Yellow,x:1555,y:1451,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:An.Matsue,region:Rn.Yellow,x:1457,y:1006,slotCosts:[15,20],stepSlots:[0,1,2]},{name:An.Okayama,region:Rn.Yellow,x:1390,y:1286},{name:An.Takamatsu,region:Rn.Yellow,x:1268,y:1507},{name:An.Kochi,region:Rn.Yellow,x:974,y:1472,slotCosts:[10,15]},{name:An.Matsuyama,region:Rn.Yellow,x:1036,y:1268},{name:An.Hiroshima,region:Rn.Yellow,x:1103,y:1078},{name:An.Shimonoseki,region:Rn.Red,x:856,y:962},{name:An.Oita,region:Rn.Red,x:731,y:1166,slotCosts:[10,15]},{name:An.Miyazaki,region:Rn.Red,x:469,y:1318,slotCosts:[15,20],stepSlots:[0,1,2]},{name:An.Kagoshima,region:Rn.Red,x:157,y:1255},{name:An.Kumamoto,region:Rn.Red,x:457,y:1045},{name:An.Fukuoka,region:Rn.Red,x:644,y:823,slotCosts:[10,10,20],stepSlots:[2,2,3]},{name:An.Nagasaki,region:Rn.Red,x:313,y:875}],layout:"Portrait",adjustRatio:[.28,.28],mapPosition:[0,120],resupply:[[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[21,15,9,3],startingCities:["Fukuoka","Kobe","Osaka","Sapporo","Tokyo","Yokohama"],mapSpecificRules:"Each player has one network but gets one free jump to start a city anywhere on the map, bypassing normal connection costs.\nAll first round house/city builds MUST be placed in one of six starting cities: Fukuoka, Kobe, Osaka, Sapporo, Tokyo, or Yokohama. If you build 2 cities in round 1, you must use your free jump and build in a second of these six starting cities. All 6 are marked with a 10 on the map.\nStarting cities have two first-connection spots (cost 10 Elektro each); two players can build there in Step 1.\nIn Step 3, a third connection spot opens in starting cities (cost 20 Elektro).\nSome smaller cities have only two building spots (costs 10 and 15, or 15 and 20 from Step 2). These cities are marked with an X - an X at the top means no Step 1 builds allowed ($15 and $20 will be available during Step 2/Step 3), an X at the bottom means no Step 3 builds allowed, only $10 and $15 (Step 1 and Step 2) builds are allowed.\nIf all starting city spots are taken, you cannot use your free jump.",connections:[{nodes:[An.Nagasaki,An.Fukuoka],cost:10},{nodes:[An.Fukuoka,An.Shimonoseki],cost:10},{nodes:[An.Shimonoseki,An.Hiroshima],cost:12},{nodes:[An.Hiroshima,An.Matsue],cost:13},{nodes:[An.Kumamoto,An.Kagoshima],cost:13},{nodes:[An.Kagoshima,An.Miyazaki],cost:8},{nodes:[An.Miyazaki,An.Kumamoto],cost:11},{nodes:[An.Kumamoto,An.Oita],cost:12},{nodes:[An.Oita,An.Miyazaki],cost:12},{nodes:[An.Oita,An.Matsuyama],cost:14},{nodes:[An.Matsuyama,An.Kochi],cost:7},{nodes:[An.Kochi,An.Takamatsu],cost:9},{nodes:[An.Hiroshima,An.Okayama],cost:11},{nodes:[An.Okayama,An.Matsue],cost:11},{nodes:[An.Okayama,An.Kobe],cost:9},{nodes:[An.Kobe,An.Matsue],cost:16},{nodes:[An.Matsuyama,An.Takamatsu],cost:10},{nodes:[An.Takamatsu,An.Okayama],cost:9},{nodes:[An.Osaka,An.Nagoya],cost:9},{nodes:[An.Nagoya,An.Kyoto],cost:9},{nodes:[An.Kyoto,An.Kobe],cost:3},{nodes:[An.Osaka,An.Kyoto],cost:0},{nodes:[An.Kyoto,An.Kanazawa],cost:19},{nodes:[An.Kanazawa,An.Toyama],cost:3},{nodes:[An.Kanazawa,An.Nagoya],cost:16},{nodes:[An.Nagoya,An.Toyama],cost:15},{nodes:[An.Toyama,An.Nagano],cost:9},{nodes:[An.Nagano,An.Niigata],cost:12},{nodes:[An.Niigata,An.Akita],cost:16},{nodes:[An.Hamamatsu,An.Kofu],cost:12},{nodes:[An.Kofu,An.Nagoya],cost:15},{nodes:[An.Nagoya,An.Hamamatsu],cost:6},{nodes:[An.Kofu,An.Saitama],cost:8},{nodes:[An.Saitama,An.Tokyo],cost:0},{nodes:[An.Tokyo,An.Yokohama],cost:0},{nodes:[An.Tokyo,An.Chiba],cost:4},{nodes:[An.Chiba,An.Sendai],cost:21},{nodes:[An.Tokyo,An.Koriyama],cost:14},{nodes:[An.Koriyama,An.Niigata],cost:11},{nodes:[An.Saitama,An.Nagano],cost:17},{nodes:[An.Saitama,An.Niigata],cost:21},{nodes:[An.Koriyama,An.Sendai],cost:7},{nodes:[An.Sendai,An.Akita],cost:14},{nodes:[An.Akita,An.Koriyama],cost:21},{nodes:[An.Sendai,An.Morioka],cost:10},{nodes:[An.Morioka,An.Akita],cost:7},{nodes:[An.Akita,An.Admori],cost:10},{nodes:[An.Admori,An.Morioka],cost:10},{nodes:[An.Admori,An.Hakodate],cost:15},{nodes:[An.Hakodate,An.Sapporo],cost:14},{nodes:[An.Sapporo,An.Asahikawa],cost:8},{nodes:[An.Kumamoto,An.Shimonoseki],cost:16},{nodes:[An.Kumamoto,An.Fukuoka],cost:8}]},Dn=c({},jn);(function(e){e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Pink"]="pink"})(On||(On={})),function(e){e["Gyeongju"]="Gyeongju",e["Ulsan"]="Ulsan",e["Busan"]="Busan",e["Jinju"]="Jinju",e["Daegu"]="Daegu",e["Andong"]="Andong",e["Sangju"]="Sangju",e["Rasun"]="Rasun",e["Cheongjin"]="Cheongjin",e["Gyeongseong"]="Gyeongseong",e["Seongjin"]="Seongjin",e["Hyesan"]="Hyesan",e["Hamheung"]="Hamheung",e["Wonsan"]="Wonsan",e["Samcheok"]="Samcheok",e["Donghae"]="Donghae",e["Taeraek"]="Taeraek",e["Gangneung"]="Gangneung",e["Sokcho"]="Sokcho",e["Wonju"]="Wonju",e["Chuncheon"]="Chuncheon",e["Chungju"]="Chungju",e["Cheongju"]="Cheongju",e["Jeju"]="Jeju",e["Gwangju"]="Gwangju",e["Naju"]="Naju",e["Jeonju"]="Jeonju",e["Daejeon"]="Daejeon",e["Yongin"]="Yongin",e["Seoul"]="Seoul",e["Suwon"]="Suwon",e["Goyang"]="Goyang",e["Anyang"]="Anyang",e["Incheon"]="Incheon",e["Gaesung"]="Gaesung",e["Ganggye"]="Ganggye",e["Haeju"]="Haeju",e["Pyeongyang"]="Pyeongyang",e["Hwangju"]="Hwangju",e["Nampo"]="Nampo",e["Anju"]="Anju",e["Sinuiju"]="Sinuiju"}(Gn||(Gn={}));var Nn,zn,Tn={name:"Korea",cities:[{name:Gn.Gyeongju,region:On.Yellow,x:2161,y:2980},{name:Gn.Ulsan,region:On.Yellow,x:2185,y:3226},{name:Gn.Busan,region:On.Yellow,x:2041,y:3440},{name:Gn.Jinju,region:On.Yellow,x:1676,y:3431},{name:Gn.Daegu,region:On.Yellow,x:1876,y:3062},{name:Gn.Andong,region:On.Yellow,x:1987,y:2737},{name:Gn.Sangju,region:On.Yellow,x:1747,y:2827},{name:Gn.Rasun,region:On.Red,x:2485,y:361},{name:Gn.Cheongjin,region:On.Red,x:2309,y:491},{name:Gn.Gyeongseong,region:On.Red,x:2209,y:689},{name:Gn.Seongjin,region:On.Red,x:2060,y:1001},{name:Gn.Hyesan,region:On.Red,x:1783,y:665},{name:Gn.Hamheung,region:On.Red,x:1516,y:1283},{name:Gn.Wonsan,region:On.Red,x:1484,y:1600},{name:Gn.Samcheok,region:On.Brown,x:2171,y:2437},{name:Gn.Donghae,region:On.Brown,x:2041,y:2299},{name:Gn.Taeraek,region:On.Brown,x:1999,y:2528},{name:Gn.Gangneung,region:On.Brown,x:1949,y:2092},{name:Gn.Sokcho,region:On.Brown,x:1832,y:1915},{name:Gn.Wonju,region:On.Brown,x:1735,y:2293},{name:Gn.Chuncheon,region:On.Brown,x:1594,y:2056},{name:Gn.Chungju,region:On.Green,x:1744,y:2552},{name:Gn.Cheongju,region:On.Green,x:1547,y:2645},{name:Gn.Jeju,region:On.Green,x:1223,y:4051},{name:Gn.Gwangju,region:On.Green,x:1309,y:3380},{name:Gn.Naju,region:On.Green,x:1121,y:3569},{name:Gn.Jeonju,region:On.Green,x:1363,y:3109},{name:Gn.Daejeon,region:On.Green,x:1462,y:2839},{name:Gn.Yongin,region:On.Purple,x:1532,y:2371},{name:Gn.Seoul,region:On.Purple,x:1400,y:2203},{name:Gn.Suwon,region:On.Purple,x:1366,y:2488},{name:Gn.Goyang,region:On.Purple,x:1219,y:2270},{name:Gn.Anyang,region:On.Purple,x:1156,y:2446},{name:Gn.Incheon,region:On.Purple,x:1028,y:2311},{name:Gn.Gaesung,region:On.Purple,x:1171,y:2042},{name:Gn.Ganggye,region:On.Pink,x:1213,y:809},{name:Gn.Haeju,region:On.Pink,x:856,y:2135},{name:Gn.Pyeongyang,region:On.Pink,x:938,y:1642},{name:Gn.Hwangju,region:On.Pink,x:901,y:1886},{name:Gn.Nampo,region:On.Pink,x:677,y:1763},{name:Gn.Anju,region:On.Pink,x:812,y:1391},{name:Gn.Sinuiju,region:On.Pink,x:433,y:1105}],connections:[{nodes:[Gn.Naju,Gn.Jeju],cost:19},{nodes:[Gn.Naju,Gn.Jinju],cost:15},{nodes:[Gn.Jinju,Gn.Gwangju],cost:14},{nodes:[Gn.Gwangju,Gn.Naju],cost:2},{nodes:[Gn.Gwangju,Gn.Jeonju],cost:11},{nodes:[Gn.Jeonju,Gn.Jinju],cost:15},{nodes:[Gn.Jinju,Gn.Busan],cost:11},{nodes:[Gn.Jinju,Gn.Daegu],cost:11},{nodes:[Gn.Daegu,Gn.Jeonju],cost:16},{nodes:[Gn.Daegu,Gn.Busan],cost:12},{nodes:[Gn.Busan,Gn.Ulsan],cost:7},{nodes:[Gn.Ulsan,Gn.Daegu],cost:10},{nodes:[Gn.Jeonju,Gn.Daejeon],cost:9},{nodes:[Gn.Daejeon,Gn.Daegu],cost:15},{nodes:[Gn.Andong,Gn.Gyeongju],cost:11},{nodes:[Gn.Gyeongju,Gn.Daegu],cost:7},{nodes:[Gn.Gyeongju,Gn.Ulsan],cost:3},{nodes:[Gn.Daegu,Gn.Sangju],cost:9},{nodes:[Gn.Sangju,Gn.Daejeon],cost:8},{nodes:[Gn.Daegu,Gn.Andong],cost:10},{nodes:[Gn.Andong,Gn.Sangju],cost:6},{nodes:[Gn.Andong,Gn.Taeraek],cost:8},{nodes:[Gn.Taeraek,Gn.Samcheok],cost:5},{nodes:[Gn.Samcheok,Gn.Donghae],cost:0},{nodes:[Gn.Donghae,Gn.Gangneung],cost:4},{nodes:[Gn.Chungju,Gn.Taeraek],cost:13},{nodes:[Gn.Andong,Gn.Chungju],cost:11},{nodes:[Gn.Chungju,Gn.Cheongju],cost:7},{nodes:[Gn.Cheongju,Gn.Sangju],cost:8},{nodes:[Gn.Sangju,Gn.Chungju],cost:9},{nodes:[Gn.Daejeon,Gn.Cheongju],cost:4},{nodes:[Gn.Wonju,Gn.Donghae],cost:14},{nodes:[Gn.Wonju,Gn.Taeraek],cost:13},{nodes:[Gn.Chungju,Gn.Wonju],cost:5},{nodes:[Gn.Wonju,Gn.Gangneung],cost:12},{nodes:[Gn.Wonju,Gn.Sokcho],cost:15},{nodes:[Gn.Sokcho,Gn.Gangneung],cost:6},{nodes:[Gn.Chuncheon,Gn.Wonju],cost:7},{nodes:[Gn.Sinuiju,Gn.Ganggye],cost:25},{nodes:[Gn.Ganggye,Gn.Hyesan],cost:20},{nodes:[Gn.Sinuiju,Gn.Anju],cost:13},{nodes:[Gn.Anju,Gn.Ganggye],cost:22},{nodes:[Gn.Ganggye,Gn.Hamheung],cost:19},{nodes:[Gn.Hamheung,Gn.Anju],cost:20},{nodes:[Gn.Anju,Gn.Nampo],cost:10},{nodes:[Gn.Anju,Gn.Pyeongyang],cost:7},{nodes:[Gn.Pyeongyang,Gn.Nampo],cost:5},{nodes:[Gn.Nampo,Gn.Hwangju],cost:4},{nodes:[Gn.Hwangju,Gn.Pyeongyang],cost:4},{nodes:[Gn.Pyeongyang,Gn.Wonsan],cost:18},{nodes:[Gn.Pyeongyang,Gn.Hamheung],cost:23},{nodes:[Gn.Hamheung,Gn.Wonsan],cost:11},{nodes:[Gn.Pyeongyang,Gn.Gaesung],cost:14},{nodes:[Gn.Gaesung,Gn.Haeju],cost:8},{nodes:[Gn.Haeju,Gn.Hwangju],cost:8},{nodes:[Gn.Gaesung,Gn.Goyang],cost:7},{nodes:[Gn.Anyang,Gn.Suwon],cost:3},{nodes:[Gn.Suwon,Gn.Yongin],cost:2},{nodes:[Gn.Goyang,Gn.Incheon],cost:0},{nodes:[Gn.Incheon,Gn.Anyang],cost:0},{nodes:[Gn.Goyang,Gn.Seoul],cost:0},{nodes:[Gn.Suwon,Gn.Cheongju],cost:10},{nodes:[Gn.Seoul,Gn.Yongin],cost:2},{nodes:[Gn.Gaesung,Gn.Chuncheon],cost:13},{nodes:[Gn.Gaesung,Gn.Wonsan],cost:18},{nodes:[Gn.Wonsan,Gn.Sokcho],cost:18},{nodes:[Gn.Wonsan,Gn.Chuncheon],cost:19},{nodes:[Gn.Sokcho,Gn.Chuncheon],cost:10},{nodes:[Gn.Chuncheon,Gn.Seoul],cost:8},{nodes:[Gn.Chuncheon,Gn.Yongin],cost:9},{nodes:[Gn.Yongin,Gn.Wonju],cost:8},{nodes:[Gn.Yongin,Gn.Chungju],cost:10},{nodes:[Gn.Yongin,Gn.Cheongju],cost:10},{nodes:[Gn.Rasun,Gn.Cheongjin],cost:8},{nodes:[Gn.Cheongjin,Gn.Gyeongseong],cost:4},{nodes:[Gn.Gyeongseong,Gn.Seongjin],cost:16},{nodes:[Gn.Hyesan,Gn.Gyeongseong],cost:18},{nodes:[Gn.Hyesan,Gn.Seongjin],cost:14},{nodes:[Gn.Seongjin,Gn.Hamheung],cost:17},{nodes:[Gn.Hamheung,Gn.Hyesan],cost:23}],layout:"Portrait",adjustRatio:[.25,.25],mapPosition:[40,30],viewBox:[1480,1180],supplyPosition:[675,1040],resupply:[[[2,2,2],[2,3,2],[3,3,2],[3,4,3],[4,5,3]],[[1,1,3],[1,2,3],[2,3,3],[3,3,4],[3,4,4]],[[1,1,2],[1,1,2],[1,2,2],[2,2,3],[2,3,3]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],resupplyNorth:[[[1,2,1],[2,2,1],[2,3,2],[2,3,2],[3,4,3]],[[1,1,1],[1,1,1],[1,1,2],[1,2,2],[2,2,3]],[[0,1,1],[0,1,1],[1,1,2],[1,1,2],[1,2,3]]],startingResources:[12,12,4,2],startingResourcesNorth:[12,6,2],startingSupply:[24,24,24,12],coalPrices:[1,2,3,4,5,5,6,6,7,7,8,8],oilPrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8],garbagePrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8],uraniumPrices:[1,2,3,4,5,6,7,8,10,12,14,16],coalPricesNorth:[1,1,2,2,3,3,4,4,5,6,7,8],oilPricesNorth:[1,2,3,4,5,6,7,8],garbagePricesNorth:[1,2,3,4,5,6,7,8],mapSpecificRules:"Korea has two separate resource markets: North and South.\nOn your buying turn, choose one side — all resources you buy that turn must come from that side. The next turn you may choose the other side.\nThe North market has no uranium track; uranium is only available from the South.\nBoth markets share a single supply pool. During bureaucracy, North restocks first, then South from whatever remains."};(function(e){e["Pink"]="pink",e["Green"]="green",e["Orange"]="orange",e["Yellow"]="yellow",e["Red"]="red",e["Brown"]="brown"})(Nn||(Nn={})),function(e){e["Mashhad"]="Mashhad",e["Corgan"]="Corgan",e["Tehran"]="Tehran",e["Tabriz"]="Tabriz",e["Mosul"]="Mosul",e["Kermanshah"]="Kermanshah",e["Baghdad"]="Baghdad",e["Isfahan"]="Isfahan",e["Yazo"]="Yazo",e["Zahedan"]="Zahedan",e["Kerman"]="Kerman",e["Shiraz"]="Shiraz",e["Bandarabbas"]="Bandar Abbas",e["Chabahar"]="Chabahar",e["Dubai"]="Dubai",e["Muscat"]="Muscat",e["Abudhari"]="Abu Dhari",e["Alain"]="Alain",e["Salalah"]="Salalah",e["Doha"]="Doha",e["Manama"]="Manama",e["Ahvaz"]="Ahvaz",e["Basra"]="Basra",e["Najaf"]="Najaf",e["Kuwaitcity"]="Kuwait City",e["Buraydah"]="Buraydah",e["Riyadh"]="Riyadh",e["Medina"]="Medina",e["Alhasahah"]="Al Hasahah",e["Aleppo"]="Aleppo",e["Damascus"]="Damascus",e["Amman"]="Amman",e["Beirut"]="Beirut",e["Jerusalem"]="Jerusalem",e["Aqaba"]="Aqaba",e["Mukalla"]="Mukalla",e["Sanaa"]="Sanaa",e["Aden"]="Aden",e["Alhudaydah"]="Al-Hudaydah",e["Abha"]="Abha",e["Mecca"]="Mecca",e["Jeddah"]="Jeddah"}(zn||(zn={}));var En,Kn,In={name:"Middle East",cities:[{name:zn.Mashhad,region:Nn.Pink,x:859,y:327},{name:zn.Corgan,region:Nn.Pink,x:734,y:287},{name:zn.Tehran,region:Nn.Pink,x:633,y:342},{name:zn.Tabriz,region:Nn.Pink,x:450,y:251},{name:zn.Mosul,region:Nn.Pink,x:352,y:307},{name:zn.Kermanshah,region:Nn.Pink,x:503,y:391},{name:zn.Baghdad,region:Nn.Pink,x:393,y:406},{name:zn.Isfahan,region:Nn.Green,x:621,y:436},{name:zn.Yazo,region:Nn.Green,x:720,y:472},{name:zn.Zahedan,region:Nn.Green,x:896,y:547},{name:zn.Kerman,region:Nn.Green,x:784,y:534},{name:zn.Shiraz,region:Nn.Green,x:651,y:557},{name:zn.Bandarabbas,region:Nn.Green,x:756,y:629},{name:zn.Chabahar,region:Nn.Green,x:898,y:687},{name:zn.Dubai,region:Nn.Orange,x:752,y:690},{name:zn.Muscat,region:Nn.Orange,x:828,y:773},{name:zn.Abudhari,region:Nn.Orange,x:692,y:747},{name:zn.Alain,region:Nn.Orange,x:715,y:812},{name:zn.Salalah,region:Nn.Orange,x:694,y:981},{name:zn.Doha,region:Nn.Orange,x:596,y:713},{name:zn.Manama,region:Nn.Orange,x:532,y:652},{name:zn.Ahvaz,region:Nn.Yellow,x:555,y:499},{name:zn.Basra,region:Nn.Yellow,x:452,y:519},{name:zn.Najaf,region:Nn.Yellow,x:356,y:478},{name:zn.Kuwaitcity,region:Nn.Yellow,x:500,y:580},{name:zn.Buraydah,region:Nn.Yellow,x:360,y:674},{name:zn.Riyadh,region:Nn.Yellow,x:443,y:741},{name:zn.Medina,region:Nn.Yellow,x:264,y:738},{name:zn.Alhasahah,region:Nn.Red,x:248,y:300},{name:zn.Aleppo,region:Nn.Red,x:132,y:315},{name:zn.Damascus,region:Nn.Red,x:186,y:433},{name:zn.Amman,region:Nn.Red,x:171,y:493},{name:zn.Beirut,region:Nn.Red,x:94,y:401},{name:zn.Jerusalem,region:Nn.Red,x:76,y:481},{name:zn.Aqaba,region:Nn.Red,x:103,y:563},{name:zn.Mukalla,region:Nn.Brown,x:555,y:1059},{name:zn.Sanaa,region:Nn.Brown,x:426,y:1018},{name:zn.Aden,region:Nn.Brown,x:431,y:1105},{name:zn.Alhudaydah,region:Nn.Brown,x:317,y:1057},{name:zn.Abha,region:Nn.Brown,x:306,y:938},{name:zn.Mecca,region:Nn.Brown,x:280,y:850},{name:zn.Jeddah,region:Nn.Brown,x:190,y:800}],connections:[{nodes:[zn.Tabriz,zn.Tehran],cost:13},{nodes:[zn.Tehran,zn.Corgan],cost:9},{nodes:[zn.Corgan,zn.Mashhad],cost:12},{nodes:[zn.Mashhad,zn.Zahedan],cost:20},{nodes:[zn.Zahedan,zn.Kerman],cost:10},{nodes:[zn.Kerman,zn.Yazo],cost:7},{nodes:[zn.Yazo,zn.Mashhad],cost:18},{nodes:[zn.Mashhad,zn.Tehran],cost:19},{nodes:[zn.Tehran,zn.Yazo],cost:12},{nodes:[zn.Yazo,zn.Shiraz],cost:9},{nodes:[zn.Shiraz,zn.Kerman],cost:11},{nodes:[zn.Yazo,zn.Isfahan],cost:7},{nodes:[zn.Isfahan,zn.Shiraz],cost:10},{nodes:[zn.Isfahan,zn.Tehran],cost:9},{nodes:[zn.Tehran,zn.Kermanshah],cost:13},{nodes:[zn.Kermanshah,zn.Isfahan],cost:13},{nodes:[zn.Isfahan,zn.Ahvaz],cost:11},{nodes:[zn.Ahvaz,zn.Shiraz],cost:11},{nodes:[zn.Ahvaz,zn.Kermanshah],cost:11},{nodes:[zn.Kermanshah,zn.Tabriz],cost:13},{nodes:[zn.Tabriz,zn.Mosul],cost:13},{nodes:[zn.Mosul,zn.Baghdad],cost:8},{nodes:[zn.Baghdad,zn.Kermanshah],cost:8},{nodes:[zn.Basra,zn.Ahvaz],cost:3},{nodes:[zn.Ahvaz,zn.Kuwaitcity],cost:7},{nodes:[zn.Kuwaitcity,zn.Basra],cost:5},{nodes:[zn.Basra,zn.Najaf],cost:10},{nodes:[zn.Najaf,zn.Baghdad],cost:4},{nodes:[zn.Baghdad,zn.Basra],cost:12},{nodes:[zn.Alhasahah,zn.Mosul],cost:4},{nodes:[zn.Alhasahah,zn.Baghdad],cost:11},{nodes:[zn.Baghdad,zn.Damascus],cost:16},{nodes:[zn.Damascus,zn.Najaf],cost:15},{nodes:[zn.Alhasahah,zn.Damascus],cost:14},{nodes:[zn.Damascus,zn.Amman],cost:4},{nodes:[zn.Amman,zn.Aqaba],cost:7},{nodes:[zn.Aqaba,zn.Jerusalem],cost:6},{nodes:[zn.Jerusalem,zn.Amman],cost:3},{nodes:[zn.Jerusalem,zn.Beirut],cost:6},{nodes:[zn.Beirut,zn.Damascus],cost:4},{nodes:[zn.Damascus,zn.Aleppo],cost:8},{nodes:[zn.Aleppo,zn.Beirut],cost:9},{nodes:[zn.Aleppo,zn.Alhasahah],cost:7},{nodes:[zn.Baghdad,zn.Tabriz],cost:18},{nodes:[zn.Zahedan,zn.Chabahar],cost:13},{nodes:[zn.Zahedan,zn.Bandarabbas],cost:14},{nodes:[zn.Bandarabbas,zn.Kerman],cost:13},{nodes:[zn.Shiraz,zn.Bandarabbas],cost:14},{nodes:[zn.Bandarabbas,zn.Chabahar],cost:15},{nodes:[zn.Kuwaitcity,zn.Manama],cost:12},{nodes:[zn.Manama,zn.Doha],cost:6},{nodes:[zn.Doha,zn.Abudhari],cost:9},{nodes:[zn.Abudhari,zn.Dubai],cost:2},{nodes:[zn.Dubai,zn.Muscat],cost:9},{nodes:[zn.Muscat,zn.Alain],cost:7},{nodes:[zn.Alain,zn.Abudhari],cost:3},{nodes:[zn.Alain,zn.Dubai],cost:3},{nodes:[zn.Riyadh,zn.Alain],cost:23},{nodes:[zn.Doha,zn.Riyadh],cost:12},{nodes:[zn.Riyadh,zn.Manama],cost:10},{nodes:[zn.Riyadh,zn.Kuwaitcity],cost:12},{nodes:[zn.Kuwaitcity,zn.Buraydah],cost:12},{nodes:[zn.Buraydah,zn.Riyadh],cost:7},{nodes:[zn.Buraydah,zn.Medina],cost:10},{nodes:[zn.Medina,zn.Riyadh],cost:15},{nodes:[zn.Buraydah,zn.Najaf],cost:14},{nodes:[zn.Aqaba,zn.Jeddah],cost:23},{nodes:[zn.Aqaba,zn.Medina],cost:17},{nodes:[zn.Medina,zn.Jeddah],cost:7},{nodes:[zn.Jeddah,zn.Mecca],cost:1},{nodes:[zn.Mecca,zn.Medina],cost:7},{nodes:[zn.Mecca,zn.Riyadh],cost:17},{nodes:[zn.Riyadh,zn.Abha],cost:19},{nodes:[zn.Abha,zn.Mecca],cost:12},{nodes:[zn.Salalah,zn.Muscat],cost:21},{nodes:[zn.Alain,zn.Salalah],cost:18},{nodes:[zn.Salalah,zn.Mukalla],cost:15},{nodes:[zn.Salalah,zn.Sanaa],cost:25},{nodes:[zn.Sanaa,zn.Mukalla],cost:14},{nodes:[zn.Mukalla,zn.Aden],cost:13},{nodes:[zn.Aden,zn.Alhudaydah],cost:9},{nodes:[zn.Alhudaydah,zn.Abha],cost:10},{nodes:[zn.Abha,zn.Sanaa],cost:11},{nodes:[zn.Sanaa,zn.Alhudaydah],cost:5}],layout:"Portrait",mapPosition:[0,-100],resupply:[[[2,1,1],[2,1,1],[3,2,2],[4,3,2],[5,4,3]],[[5,3,2],[5,3,2],[6,3,2],[8,4,3],[9,5,4]],[[1,3,4],[1,3,4],[1,4,6],[1,4,8],[1,6,9]],[[0,2,2],[0,2,2],[0,3,3],[0,3,4],[0,4,5]]],startingResources:[21,21,3,3],startingSupply:[24,24,21,11],mapSpecificRules:"Only coal and oil can be bought for $1, and any number of oil can restock at $1.\nDuring step 1, garbage and uranium plants will be removed from the current market.\nStep 2 will be triggered after going through the deck once rather than by a specific number of cities.\nStep 3 will be triggered after going through the deck a second time."};(function(e){e["Pink"]="pink",e["Brown"]="brown",e["Orange"]="orange",e["Green"]="green",e["Blue"]="blue",e["Yellow"]="yellow",e["Red"]="red"})(En||(En={})),function(e){e["Edmonton"]="Edmonton",e["Calgary"]="Calgary",e["Vancouver"]="Vancouver",e["Seattle"]="Seattle",e["Regina"]="Regina",e["Winnipeg"]="Winnipeg",e["Minneapolis"]="Minneapolis",e["Portland"]="Portland",e["SanFrancisco"]="San Francisco",e["LosAngeles"]="Los Angeles",e["SanDiego"]="San Diego",e["SaltLakeCity"]="Salt Lake City",e["LasVegas"]="Las Vegas",e["Denver"]="Denver",e["Albuquerque"]="Albuquerque",e["Juarez"]="Juarez",e["Chihuahua"]="Chihuahua",e["Monterrey"]="Monterrey",e["Guadalajara"]="Guadalajara",e["MexicoCityN"]="Mexico City N",e["MexicoCityS"]="Mexico City S",e["SanAntonio"]="San Antonio",e["DallasFortWorth"]="Dallas-Fort Worth",e["Houston"]="Houston",e["NewOrleans"]="New Orleans",e["Atlanta"]="Atlanta",e["Jacksonville"]="Jacksonville",e["Miami"]="Miami",e["Milwaukee"]="Milwaukee",e["Chicago"]="Chicago",e["KansasCity"]="Kansas City",e["StLouis"]="St. Louis",e["Indianapolis"]="Indianapolis",e["OklahomaCity"]="Oklahoma City",e["Memphis"]="Memphis",e["Toronto"]="Toronto",e["Detroit"]="Detroit",e["Pittsburgh"]="Pittsburgh",e["Columbus"]="Columbus",e["Nashville"]="Nashville",e["Washington"]="Washington",e["Charlotte"]="Charlotte",e["Quebec"]="Quebec",e["Ottawa"]="Ottawa",e["Montreal"]="Montreal",e["NewYorkN"]="New York N",e["NewYorkS"]="New York S",e["Boston"]="Boston",e["Philadelphia"]="Philadelphia"}(Kn||(Kn={}));var Un,Wn,Hn,Fn={name:"North America",cities:[{name:Kn.Edmonton,region:En.Pink,x:325,y:71},{name:Kn.Calgary,region:En.Pink,x:250,y:190},{name:Kn.Vancouver,region:En.Pink,x:114,y:266},{name:Kn.Seattle,region:En.Pink,x:100,y:387},{name:Kn.Regina,region:En.Pink,x:536,y:277},{name:Kn.Winnipeg,region:En.Pink,x:830,y:272},{name:Kn.Minneapolis,region:En.Pink,x:907,y:486},{name:Kn.Portland,region:En.Brown,x:122,y:516},{name:Kn.SanFrancisco,region:En.Brown,x:123,y:697},{name:Kn.LosAngeles,region:En.Brown,x:160,y:911},{name:Kn.SanDiego,region:En.Brown,x:223,y:1007},{name:Kn.SaltLakeCity,region:En.Brown,x:380,y:555},{name:Kn.LasVegas,region:En.Brown,x:322,y:760},{name:Kn.Denver,region:En.Brown,x:569,y:694},{name:Kn.Albuquerque,region:En.Orange,x:539,y:941},{name:Kn.Juarez,region:En.Orange,x:558,y:1043},{name:Kn.Chihuahua,region:En.Orange,x:577,y:1183},{name:Kn.Monterrey,region:En.Orange,x:791,y:1292},{name:Kn.Guadalajara,region:En.Orange,x:715,y:1391},{name:Kn.MexicoCityN,region:En.Orange,x:913,y:1335},{name:Kn.MexicoCityS,region:En.Orange,x:913,y:1425},{name:Kn.SanAntonio,region:En.Green,x:767,y:1172},{name:Kn.DallasFortWorth,region:En.Green,x:850,y:1020},{name:Kn.Houston,region:En.Green,x:940,y:1145},{name:Kn.NewOrleans,region:En.Green,x:1126,y:1095},{name:Kn.Atlanta,region:En.Green,x:1318,y:1021},{name:Kn.Jacksonville,region:En.Green,x:1398,y:1109},{name:Kn.Miami,region:En.Green,x:1398,y:1235},{name:Kn.Milwaukee,region:En.Blue,x:1206,y:414},{name:Kn.Chicago,region:En.Blue,x:1121,y:531},{name:Kn.KansasCity,region:En.Blue,x:825,y:720},{name:Kn.StLouis,region:En.Blue,x:1047,y:768},{name:Kn.Indianapolis,region:En.Blue,x:1206,y:694},{name:Kn.OklahomaCity,region:En.Blue,x:800,y:870},{name:Kn.Memphis,region:En.Blue,x:1099,y:938},{name:Kn.Toronto,region:En.Yellow,x:1488,y:513},{name:Kn.Detroit,region:En.Yellow,x:1390,y:590},{name:Kn.Pittsburgh,region:En.Yellow,x:1524,y:659},{name:Kn.Columbus,region:En.Yellow,x:1398,y:733},{name:Kn.Nashville,region:En.Yellow,x:1233,y:826},{name:Kn.Washington,region:En.Yellow,x:1554,y:829},{name:Kn.Charlotte,region:En.Yellow,x:1480,y:965},{name:Kn.Quebec,region:En.Red,x:1911,y:354},{name:Kn.Ottawa,region:En.Red,x:1653,y:458},{name:Kn.Montreal,region:En.Red,x:1875,y:461},{name:Kn.NewYorkN,region:En.Red,x:1727,y:561},{name:Kn.NewYorkS,region:En.Red,x:1727,y:637},{name:Kn.Boston,region:En.Red,x:1928,y:579},{name:Kn.Philadelphia,region:En.Red,x:1724,y:755}],connections:[{nodes:[Kn.Edmonton,Kn.Calgary],cost:5},{nodes:[Kn.Calgary,Kn.Vancouver],cost:16},{nodes:[Kn.Vancouver,Kn.Seattle],cost:4},{nodes:[Kn.Edmonton,Kn.Regina],cost:15},{nodes:[Kn.Calgary,Kn.Regina],cost:14},{nodes:[Kn.Vancouver,Kn.Regina],cost:28},{nodes:[Kn.Regina,Kn.Winnipeg],cost:11},{nodes:[Kn.Winnipeg,Kn.Minneapolis],cost:13},{nodes:[Kn.Seattle,Kn.Portland],cost:5},{nodes:[Kn.Regina,Kn.SaltLakeCity],cost:29},{nodes:[Kn.Regina,Kn.Denver],cost:24},{nodes:[Kn.Winnipeg,Kn.Denver],cost:26},{nodes:[Kn.Minneapolis,Kn.Denver],cost:23},{nodes:[Kn.Portland,Kn.SanFrancisco],cost:20},{nodes:[Kn.SanFrancisco,Kn.LosAngeles],cost:12},{nodes:[Kn.LosAngeles,Kn.SanDiego],cost:3},{nodes:[Kn.Portland,Kn.SaltLakeCity],cost:22},{nodes:[Kn.SanFrancisco,Kn.SaltLakeCity],cost:22},{nodes:[Kn.SanFrancisco,Kn.LasVegas],cost:16},{nodes:[Kn.SaltLakeCity,Kn.LasVegas],cost:14},{nodes:[Kn.LasVegas,Kn.LosAngeles],cost:8},{nodes:[Kn.SaltLakeCity,Kn.Denver],cost:14},{nodes:[Kn.LasVegas,Kn.Denver],cost:25},{nodes:[Kn.LosAngeles,Kn.Albuquerque],cost:25},{nodes:[Kn.LasVegas,Kn.Albuquerque],cost:18},{nodes:[Kn.Denver,Kn.Albuquerque],cost:12},{nodes:[Kn.SanDiego,Kn.Juarez],cost:22},{nodes:[Kn.Albuquerque,Kn.Juarez],cost:9},{nodes:[Kn.Juarez,Kn.Chihuahua],cost:8},{nodes:[Kn.Chihuahua,Kn.Monterrey],cost:14},{nodes:[Kn.Chihuahua,Kn.Guadalajara],cost:23},{nodes:[Kn.Monterrey,Kn.Guadalajara],cost:16},{nodes:[Kn.Monterrey,Kn.MexicoCityS],cost:17},{nodes:[Kn.Guadalajara,Kn.MexicoCityS],cost:10},{nodes:[Kn.MexicoCityN,Kn.MexicoCityS],cost:0},{nodes:[Kn.Albuquerque,Kn.OklahomaCity],cost:18},{nodes:[Kn.Juarez,Kn.DallasFortWorth],cost:19},{nodes:[Kn.Juarez,Kn.SanAntonio],cost:18},{nodes:[Kn.Chihuahua,Kn.SanAntonio],cost:16},{nodes:[Kn.Monterrey,Kn.SanAntonio],cost:10},{nodes:[Kn.Milwaukee,Kn.Chicago],cost:3},{nodes:[Kn.Chicago,Kn.KansasCity],cost:16},{nodes:[Kn.Chicago,Kn.StLouis],cost:9},{nodes:[Kn.Chicago,Kn.Indianapolis],cost:6},{nodes:[Kn.KansasCity,Kn.StLouis],cost:8},{nodes:[Kn.StLouis,Kn.Indianapolis],cost:8},{nodes:[Kn.KansasCity,Kn.OklahomaCity],cost:10},{nodes:[Kn.KansasCity,Kn.Memphis],cost:14},{nodes:[Kn.StLouis,Kn.Memphis],cost:9},{nodes:[Kn.OklahomaCity,Kn.Memphis],cost:15},{nodes:[Kn.Milwaukee,Kn.Minneapolis],cost:10},{nodes:[Kn.KansasCity,Kn.Minneapolis],cost:14},{nodes:[Kn.KansasCity,Kn.Denver],cost:19},{nodes:[Kn.OklahomaCity,Kn.Denver],cost:17},{nodes:[Kn.OklahomaCity,Kn.DallasFortWorth],cost:7},{nodes:[Kn.Memphis,Kn.DallasFortWorth],cost:15},{nodes:[Kn.Memphis,Kn.NewOrleans],cost:14},{nodes:[Kn.Memphis,Kn.Atlanta],cost:12},{nodes:[Kn.DallasFortWorth,Kn.SanAntonio],cost:9},{nodes:[Kn.DallasFortWorth,Kn.Houston],cost:8},{nodes:[Kn.DallasFortWorth,Kn.NewOrleans],cost:16},{nodes:[Kn.SanAntonio,Kn.Houston],cost:6},{nodes:[Kn.Houston,Kn.NewOrleans],cost:12},{nodes:[Kn.NewOrleans,Kn.Atlanta],cost:16},{nodes:[Kn.NewOrleans,Kn.Jacksonville],cost:20},{nodes:[Kn.Atlanta,Kn.Jacksonville],cost:10},{nodes:[Kn.Jacksonville,Kn.Miami],cost:12},{nodes:[Kn.Atlanta,Kn.Nashville],cost:9},{nodes:[Kn.Atlanta,Kn.Charlotte],cost:8},{nodes:[Kn.Jacksonville,Kn.Charlotte],cost:12},{nodes:[Kn.Toronto,Kn.Detroit],cost:8},{nodes:[Kn.Toronto,Kn.Pittsburgh],cost:11},{nodes:[Kn.Detroit,Kn.Columbus],cost:7},{nodes:[Kn.Columbus,Kn.Pittsburgh],cost:6},{nodes:[Kn.Nashville,Kn.Columbus],cost:15},{nodes:[Kn.Nashville,Kn.Washington],cost:22},{nodes:[Kn.Nashville,Kn.Charlotte],cost:12},{nodes:[Kn.Columbus,Kn.Washington],cost:12},{nodes:[Kn.Washington,Kn.Pittsburgh],cost:7},{nodes:[Kn.Washington,Kn.Charlotte],cost:12},{nodes:[Kn.Detroit,Kn.Chicago],cost:10},{nodes:[Kn.Columbus,Kn.Chicago],cost:10},{nodes:[Kn.Columbus,Kn.Indianapolis],cost:7},{nodes:[Kn.Nashville,Kn.Indianapolis],cost:9},{nodes:[Kn.Nashville,Kn.StLouis],cost:9},{nodes:[Kn.Nashville,Kn.Memphis],cost:7},{nodes:[Kn.Toronto,Kn.Ottawa],cost:8},{nodes:[Kn.Toronto,Kn.NewYorkS],cost:14},{nodes:[Kn.Pittsburgh,Kn.NewYorkS],cost:11},{nodes:[Kn.Pittsburgh,Kn.Philadelphia],cost:9},{nodes:[Kn.Washington,Kn.Philadelphia],cost:5},{nodes:[Kn.Quebec,Kn.Montreal],cost:5},{nodes:[Kn.Montreal,Kn.Boston],cost:9},{nodes:[Kn.Ottawa,Kn.Montreal],cost:3},{nodes:[Kn.Ottawa,Kn.NewYorkS],cost:13},{nodes:[Kn.Montreal,Kn.NewYorkS],cost:12},{nodes:[Kn.NewYorkS,Kn.Boston],cost:7},{nodes:[Kn.NewYorkS,Kn.Philadelphia],cost:3},{nodes:[Kn.NewYorkN,Kn.NewYorkS],cost:0}],layout:"Landscape",adjustRatio:[.5,.38],mapPosition:[70,50],mapRotation:-2,resupply:[[[2,5,2],[2,5,2],[3,6,3],[4,7,4],[5,8,5]],[[3,1,3],[3,1,3],[3,2,4],[4,2,5],[5,3,6]],[[2,2,4],[2,2,4],[3,3,5],[3,3,6],[4,4,7]],[[2,1,2],[2,1,2],[2,1,2],[3,2,3],[3,2,4]]],coalPrices:[1,1,1,1,2,2,2,2,3,3,3,3,4,4,5,5,6,6,7,7,8,8,9,9],oilPrices:[1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,9,9],garbagePrices:[1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8],uraniumPrices:[1,2,3,4,5,6,7,7,8,8,9,9],startingResources:[20,14,18,2],startingSupply:[24,24,24,12]};(function(e){e["Brown"]="brown",e["Yellow"]="yellow",e["Pink"]="pink",e["Purple"]="purple",e["Orange"]="orange",e["Red"]="red"})(Wn||(Wn={})),function(e){e["Oulu"]="Oulu",e["Kuopid"]="Kuopid",e["Tampere"]="Tampere",e["Helsinki"]="Helsinki",e["Espoo"]="Espoo",e["Pori"]="Pori",e["Turku"]="Turku",e["Uppsala"]="Uppsala",e["Stockholm"]="Stockholm",e["Vasteras"]="Vasteras",e["Drebro"]="Drebro",e["Sundsvall"]="Sundsvall",e["Lulea"]="Lulea",e["Ostersund"]="Ostersund",e["Tallinn"]="Tallinn",e["Tartu"]="Tartu",e["Daugavpils"]="Daugavpils",e["Vilnius"]="Vilnius",e["Kaunas"]="Kaunas",e["Rica"]="Rica",e["Klaipeda"]="Klaipeda",e["Karlstad"]="Karlstad",e["Linkopinc"]="Linkopinc",e["Jonkoping"]="Jonkoping",e["Visby"]="Visby",e["Kristianstad"]="Kristianstad",e["Malmo"]="Malmo",e["Goteborg"]="Goteborg",e["Aalborg"]="Aalborg",e["Aarhus"]="Aarhus",e["Kobenhavn"]="Kobenhavn",e["Nykobingfalster"]="Nykobing Falster",e["Ringkobing"]="Ringkobing",e["Esbjerg"]="Esbjerg",e["Odense"]="Odense",e["Tromso"]="Tromso",e["Bood"]="Bood",e["Trondheim"]="Trondheim",e["Oslo"]="Oslo",e["Arendal"]="Arendal",e["Bergen"]="Bergen",e["Stavanger"]="Stavanger"}(Hn||(Hn={}));var Yn,Vn,Jn={name:"Northern Europe",cities:[{name:Hn.Oulu,region:Wn.Brown,x:514,y:376},{name:Hn.Kuopid,region:Wn.Brown,x:551,y:474},{name:Hn.Tampere,region:Wn.Brown,x:492,y:544},{name:Hn.Helsinki,region:Wn.Brown,x:530,y:602},{name:Hn.Espoo,region:Wn.Brown,x:457,y:603},{name:Hn.Pori,region:Wn.Brown,x:400,y:526},{name:Hn.Turku,region:Wn.Brown,x:409,y:593},{name:Hn.Uppsala,region:Wn.Yellow,x:350,y:585},{name:Hn.Stockholm,region:Wn.Yellow,x:380,y:660},{name:Hn.Vasteras,region:Wn.Yellow,x:295,y:576},{name:Hn.Drebro,region:Wn.Yellow,x:295,y:628},{name:Hn.Sundsvall,region:Wn.Yellow,x:332,y:506},{name:Hn.Lulea,region:Wn.Yellow,x:423,y:345},{name:Hn.Ostersund,region:Wn.Yellow,x:272,y:462},{name:Hn.Tallinn,region:Wn.Pink,x:475,y:656},{name:Hn.Tartu,region:Wn.Pink,x:544,y:689},{name:Hn.Daugavpils,region:Wn.Pink,x:547,y:771},{name:Hn.Vilnius,region:Wn.Pink,x:520,y:819},{name:Hn.Kaunas,region:Wn.Pink,x:458,y:811},{name:Hn.Rica,region:Wn.Pink,x:472,y:734},{name:Hn.Klaipeda,region:Wn.Pink,x:411,y:784},{name:Hn.Karlstad,region:Wn.Purple,x:246,y:629},{name:Hn.Linkopinc,region:Wn.Purple,x:309,y:676},{name:Hn.Jonkoping,region:Wn.Purple,x:285,y:712},{name:Hn.Visby,region:Wn.Purple,x:364,y:717},{name:Hn.Kristianstad,region:Wn.Purple,x:330,y:750},{name:Hn.Malmo,region:Wn.Purple,x:287,y:787},{name:Hn.Goteborg,region:Wn.Purple,x:231,y:700},{name:Hn.Aalborg,region:Wn.Orange,x:177,y:717},{name:Hn.Aarhus,region:Wn.Orange,x:195,y:758},{name:Hn.Kobenhavn,region:Wn.Orange,x:228,y:792},{name:Hn.Nykobingfalster,region:Wn.Orange,x:238,y:842},{name:Hn.Ringkobing,region:Wn.Orange,x:120,y:733},{name:Hn.Esbjerg,region:Wn.Orange,x:104,y:787},{name:Hn.Odense,region:Wn.Orange,x:148,y:824},{name:Hn.Tromso,region:Wn.Red,x:371,y:122},{name:Hn.Bood,region:Wn.Red,x:276,y:254},{name:Hn.Trondheim,region:Wn.Red,x:173,y:450},{name:Hn.Oslo,region:Wn.Red,x:176,y:606},{name:Hn.Arendal,region:Wn.Red,x:145,y:651},{name:Hn.Bergen,region:Wn.Red,x:68,y:586},{name:Hn.Stavanger,region:Wn.Red,x:72,y:647}],layout:"Portrait",adjustRatio:[1.5,1.2],mapPosition:[60,-40],mapRotation:20,viewBox:[1480,1326],supplyPosition:[675,1184],startingResources:[18,18,12,6],resupply:[[[2,4,3],[3,4,4],[4,5,5],[4,5,6],[6,8,5]],[[1,2,3],[2,2,3],[2,3,4],[3,4,5],[4,5,6]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,2,2],[1,2,2],[2,3,2],[2,4,3],[2,4,4]]],regionalPowerPlants:(Un={},i(Un,Wn.Orange,[{number:19,type:ve.Oil,cost:2,citiesPowered:4},{number:26,type:ve.Oil,cost:3,citiesPowered:5}]),i(Un,Wn.Red,[{number:7,type:ve.Wind,cost:0,citiesPowered:1},{number:46,type:ve.Wind,cost:0,citiesPowered:6}]),i(Un,Wn.Purple,[{number:10,type:ve.Uranium,cost:2,citiesPowered:3},{number:39,type:ve.Wind,cost:0,citiesPowered:5}]),i(Un,Wn.Yellow,[{number:21,type:ve.Wind,cost:0,citiesPowered:2},{number:25,type:ve.Uranium,cost:1,citiesPowered:4}]),i(Un,Wn.Brown,[{number:32,type:ve.Garbage,cost:2,citiesPowered:6},{number:44,type:ve.Uranium,cost:1,citiesPowered:7}]),i(Un,Wn.Pink,[{number:18,type:ve.Oil,cost:1,citiesPowered:3},{number:22,type:ve.Wind,cost:0,citiesPowered:3}]),Un),mapSpecificRules:"Nuclear plants may only be purchased by players with at least one city in Sweden, Finland, or the Baltic States. Players with cities only in Norway or Denmark may not bid on or buy nuclear plants. Resources start at: coal 3 Elektro, oil 3 Elektro, garbage 5 Elektro, uranium 7 Elektro.",connections:[{nodes:[Hn.Bood,Hn.Tromso],cost:17},{nodes:[Hn.Tromso,Hn.Oulu],cost:25},{nodes:[Hn.Oulu,Hn.Kuopid],cost:10},{nodes:[Hn.Lulea,Hn.Tromso],cost:19},{nodes:[Hn.Lulea,Hn.Oulu],cost:13},{nodes:[Hn.Oulu,Hn.Pori],cost:15},{nodes:[Hn.Oulu,Hn.Tampere],cost:14},{nodes:[Hn.Sundsvall,Hn.Lulea],cost:16},{nodes:[Hn.Lulea,Hn.Bood],cost:16},{nodes:[Hn.Bood,Hn.Ostersund],cost:18},{nodes:[Hn.Ostersund,Hn.Lulea],cost:17},{nodes:[Hn.Lulea,Hn.Pori],cost:22},{nodes:[Hn.Pori,Hn.Sundsvall],cost:17},{nodes:[Hn.Bood,Hn.Trondheim],cost:21},{nodes:[Hn.Trondheim,Hn.Bergen],cost:17},{nodes:[Hn.Trondheim,Hn.Oslo],cost:17},{nodes:[Hn.Oslo,Hn.Ostersund],cost:18},{nodes:[Hn.Ostersund,Hn.Karlstad],cost:16},{nodes:[Hn.Bergen,Hn.Oslo],cost:15},{nodes:[Hn.Oslo,Hn.Stavanger],cost:11},{nodes:[Hn.Stavanger,Hn.Arendal],cost:8},{nodes:[Hn.Arendal,Hn.Oslo],cost:7},{nodes:[Hn.Bergen,Hn.Stavanger],cost:9},{nodes:[Hn.Arendal,Hn.Ringkobing],cost:19},{nodes:[Hn.Ringkobing,Hn.Esbjerg],cost:4},{nodes:[Hn.Esbjerg,Hn.Odense],cost:5},{nodes:[Hn.Odense,Hn.Nykobingfalster],cost:8},{nodes:[Hn.Arendal,Hn.Aalborg],cost:16},{nodes:[Hn.Arendal,Hn.Goteborg],cost:19},{nodes:[Hn.Goteborg,Hn.Oslo],cost:11},{nodes:[Hn.Oslo,Hn.Karlstad],cost:7},{nodes:[Hn.Karlstad,Hn.Goteborg],cost:9},{nodes:[Hn.Karlstad,Hn.Jonkoping],cost:9},{nodes:[Hn.Karlstad,Hn.Linkopinc],cost:7},{nodes:[Hn.Tampere,Hn.Kuopid],cost:10},{nodes:[Hn.Tampere,Hn.Pori],cost:4},{nodes:[Hn.Tampere,Hn.Turku],cost:5},{nodes:[Hn.Tampere,Hn.Espoo],cost:5},{nodes:[Hn.Tampere,Hn.Helsinki],cost:6},{nodes:[Hn.Helsinki,Hn.Espoo],cost:2},{nodes:[Hn.Espoo,Hn.Tallinn],cost:7},{nodes:[Hn.Tallinn,Hn.Helsinki],cost:7},{nodes:[Hn.Visby,Hn.Kristianstad],cost:13},{nodes:[Hn.Visby,Hn.Klaipeda],cost:19},{nodes:[Hn.Visby,Hn.Rica],cost:20},{nodes:[Hn.Rica,Hn.Tallinn],cost:11},{nodes:[Hn.Tallinn,Hn.Tartu],cost:5},{nodes:[Hn.Tartu,Hn.Daugavpils],cost:9},{nodes:[Hn.Rica,Hn.Tartu],cost:7},{nodes:[Hn.Daugavpils,Hn.Kaunas],cost:7},{nodes:[Hn.Kaunas,Hn.Vilnius],cost:3},{nodes:[Hn.Kaunas,Hn.Klaipeda],cost:7},{nodes:[Hn.Klaipeda,Hn.Rica],cost:8},{nodes:[Hn.Rica,Hn.Kaunas],cost:8},{nodes:[Hn.Rica,Hn.Daugavpils],cost:7},{nodes:[Hn.Daugavpils,Hn.Vilnius],cost:5},{nodes:[Hn.Vasteras,Hn.Sundsvall],cost:10},{nodes:[Hn.Sundsvall,Hn.Ostersund],cost:7},{nodes:[Hn.Uppsala,Hn.Stockholm],cost:2},{nodes:[Hn.Uppsala,Hn.Turku],cost:15},{nodes:[Hn.Uppsala,Hn.Pori],cost:17},{nodes:[Hn.Uppsala,Hn.Sundsvall],cost:11},{nodes:[Hn.Vasteras,Hn.Drebro],cost:5},{nodes:[Hn.Drebro,Hn.Linkopinc],cost:3},{nodes:[Hn.Linkopinc,Hn.Stockholm],cost:7},{nodes:[Hn.Visby,Hn.Stockholm],cost:12},{nodes:[Hn.Visby,Hn.Linkopinc],cost:9},{nodes:[Hn.Jonkoping,Hn.Malmo],cost:10},{nodes:[Hn.Jonkoping,Hn.Kristianstad],cost:8},{nodes:[Hn.Kristianstad,Hn.Malmo],cost:3},{nodes:[Hn.Malmo,Hn.Kobenhavn],cost:3},{nodes:[Hn.Kobenhavn,Hn.Nykobingfalster],cost:6},{nodes:[Hn.Odense,Hn.Aarhus],cost:7},{nodes:[Hn.Aarhus,Hn.Aalborg],cost:3},{nodes:[Hn.Aalborg,Hn.Goteborg],cost:11},{nodes:[Hn.Kobenhavn,Hn.Goteborg],cost:18},{nodes:[Hn.Goteborg,Hn.Jonkoping],cost:4},{nodes:[Hn.Trondheim,Hn.Ostersund],cost:9},{nodes:[Hn.Vasteras,Hn.Stockholm],cost:4},{nodes:[Hn.Esbjerg,Hn.Aarhus],cost:5},{nodes:[Hn.Jonkoping,Hn.Linkopinc],cost:5},{nodes:[Hn.Kobenhavn,Hn.Jonkoping],cost:12},{nodes:[Hn.Karlstad,Hn.Drebro],cost:4},{nodes:[Hn.Vasteras,Hn.Uppsala],cost:2},{nodes:[Hn.Odense,Hn.Kobenhavn],cost:7},{nodes:[Hn.Kobenhavn,Hn.Aarhus],cost:10},{nodes:[Hn.Ringkobing,Hn.Aalborg],cost:5},{nodes:[Hn.Linkopinc,Hn.Kristianstad],cost:9},{nodes:[Hn.Drebro,Hn.Stockholm],cost:7},{nodes:[Hn.Espoo,Hn.Turku],cost:4},{nodes:[Hn.Pori,Hn.Turku],cost:4}]};(function(e){e["Green"]="green",e["Brown"]="brown",e["Pink"]="pink",e["Red"]="red",e["Yellow"]="yellow",e["Purple"]="purple"})(Yn||(Yn={})),function(e){e["Septiles"]="Sept-Iles",e["Portcartier"]="Port-Cartier",e["Baiecomeau"]="Baie-Comeau",e["Chicoutimi"]="Chicoutimi",e["Alma"]="Alma",e["Roberval"]="Roberval",e["Jonquiere"]="Jonquiere",e["Gaspe"]="Gaspe",e["Steannedesmonts"]="Ste-Anne-Des-Monts",e["Matane"]="Matane",e["Rimouski"]="Rimouski",e["Pointealacroix"]="Pointe-A-La-Croix",e["Riviereduloup"]="Riviere-Du-Loup",e["Montmagny"]="Montmagny",e["Stgeorges"]="St-Georges",e["Sherbrooke"]="Sherbrooke",e["Victoriaville"]="Victoriaville",e["Stsimeon"]="St-Simeon",e["Charlesbourg"]="Charlesbourg",e["Quebec"]="Quebec",e["Beauport"]="Beauport",e["Granby"]="Granby",e["Sthyacinthe"]="St-Hyacinthe",e["Brossard"]="Brossard",e["Valleyfield"]="Valleyfield",e["Vaudreuildorion"]="Vaudreuil-Dorion",e["Montreal"]="Montreal",e["Pointeclaire"]="Pointe-Claire",e["Shawinigan"]="Shawinigan",e["Troisrivieres"]="Trois-Rivieres",e["Drummondville"]="Drummond-Ville",e["Repentigny"]="Repentigny",e["Longueuil"]="Longueuil",e["Laval"]="Laval",e["Lachute"]="Lachute",e["Amos"]="Amos",e["Valdor"]="Val-Dor",e["Rouynnoranda"]="Rouyn-Noranda",e["Montlaurier"]="Mont-Laurier",e["Maniwaki"]="Maniwaki",e["Gatineau"]="Gatineau",e["Hull"]="Hull"}(Vn||(Vn={}));var $n,qn,Zn={name:"Quebec",cities:[{name:Vn.Septiles,region:Yn.Green,x:3524,y:228},{name:Vn.Portcartier,region:Yn.Green,x:3328,y:370},{name:Vn.Baiecomeau,region:Yn.Green,x:3066,y:630},{name:Vn.Chicoutimi,region:Yn.Green,x:2392,y:898},{name:Vn.Alma,region:Yn.Green,x:2172,y:844},{name:Vn.Roberval,region:Yn.Green,x:1944,y:950},{name:Vn.Jonquiere,region:Yn.Green,x:2240,y:1052},{name:Vn.Gaspe,region:Yn.Brown,x:4014,y:808},{name:Vn.Steannedesmonts,region:Yn.Brown,x:3512,y:708},{name:Vn.Matane,region:Yn.Brown,x:3244,y:808},{name:Vn.Rimouski,region:Yn.Brown,x:2990,y:946},{name:Vn.Pointealacroix,region:Yn.Brown,x:3492,y:1094},{name:Vn.Riviereduloup,region:Yn.Brown,x:2780,y:1208},{name:Vn.Montmagny,region:Yn.Brown,x:2522,y:1534},{name:Vn.Stgeorges,region:Yn.Pink,x:2506,y:1836},{name:Vn.Sherbrooke,region:Yn.Pink,x:2242,y:2128},{name:Vn.Victoriaville,region:Yn.Pink,x:2178,y:1822},{name:Vn.Stsimeon,region:Yn.Pink,x:2576,y:1146},{name:Vn.Charlesbourg,region:Yn.Pink,x:2246,y:1434},{name:Vn.Quebec,region:Yn.Pink,x:2302,y:1536},{name:Vn.Beauport,region:Yn.Pink,x:2196,y:1524},{name:Vn.Granby,region:Yn.Red,x:1974,y:2160},{name:Vn.Sthyacinthe,region:Yn.Red,x:1796,y:2038},{name:Vn.Brossard,region:Yn.Red,x:1790,y:2296},{name:Vn.Valleyfield,region:Yn.Red,x:1576,y:2306},{name:Vn.Vaudreuildorion,region:Yn.Red,x:1414,y:2186},{name:Vn.Montreal,region:Yn.Red,x:1624,y:2052},{name:Vn.Pointeclaire,region:Yn.Red,x:1510,y:2060},{name:Vn.Shawinigan,region:Yn.Yellow,x:1864,y:1448},{name:Vn.Troisrivieres,region:Yn.Yellow,x:1918,y:1650},{name:Vn.Drummondville,region:Yn.Yellow,x:1984,y:1886},{name:Vn.Repentigny,region:Yn.Yellow,x:1696,y:1820},{name:Vn.Longueuil,region:Yn.Yellow,x:1598,y:1964},{name:Vn.Laval,region:Yn.Yellow,x:1512,y:1990},{name:Vn.Lachute,region:Yn.Yellow,x:1364,y:1944},{name:Vn.Amos,region:Yn.Purple,x:492,y:868},{name:Vn.Valdor,region:Yn.Purple,x:570,y:1098},{name:Vn.Rouynnoranda,region:Yn.Purple,x:236,y:1028},{name:Vn.Montlaurier,region:Yn.Purple,x:1180,y:1630},{name:Vn.Maniwaki,region:Yn.Purple,x:964,y:1760},{name:Vn.Gatineau,region:Yn.Purple,x:1076,y:2096},{name:Vn.Hull,region:Yn.Purple,x:862,y:2104}],connections:[{nodes:[Vn.Maniwaki,Vn.Montlaurier],cost:5},{nodes:[Vn.Maniwaki,Vn.Valdor],cost:24},{nodes:[Vn.Valdor,Vn.Amos],cost:8},{nodes:[Vn.Amos,Vn.Rouynnoranda],cost:9},{nodes:[Vn.Rouynnoranda,Vn.Valdor],cost:12},{nodes:[Vn.Hull,Vn.Maniwaki],cost:15},{nodes:[Vn.Hull,Vn.Gatineau],cost:0},{nodes:[Vn.Gatineau,Vn.Montlaurier],cost:16},{nodes:[Vn.Montlaurier,Vn.Lachute],cost:18},{nodes:[Vn.Shawinigan,Vn.Troisrivieres],cost:3},{nodes:[Vn.Troisrivieres,Vn.Drummondville],cost:9},{nodes:[Vn.Drummondville,Vn.Victoriaville],cost:6},{nodes:[Vn.Victoriaville,Vn.Stgeorges],cost:10},{nodes:[Vn.Stgeorges,Vn.Sherbrooke],cost:15},{nodes:[Vn.Sherbrooke,Vn.Granby],cost:8},{nodes:[Vn.Granby,Vn.Sthyacinthe],cost:4},{nodes:[Vn.Sthyacinthe,Vn.Drummondville],cost:6},{nodes:[Vn.Troisrivieres,Vn.Victoriaville],cost:9},{nodes:[Vn.Victoriaville,Vn.Sherbrooke],cost:9},{nodes:[Vn.Sherbrooke,Vn.Drummondville],cost:9},{nodes:[Vn.Sthyacinthe,Vn.Repentigny],cost:7},{nodes:[Vn.Sthyacinthe,Vn.Brossard],cost:5},{nodes:[Vn.Brossard,Vn.Valleyfield],cost:8},{nodes:[Vn.Valleyfield,Vn.Vaudreuildorion],cost:4},{nodes:[Vn.Gatineau,Vn.Lachute],cost:14},{nodes:[Vn.Montlaurier,Vn.Shawinigan],cost:28},{nodes:[Vn.Shawinigan,Vn.Beauport],cost:14},{nodes:[Vn.Beauport,Vn.Troisrivieres],cost:15},{nodes:[Vn.Troisrivieres,Vn.Repentigny],cost:13},{nodes:[Vn.Repentigny,Vn.Longueuil],cost:3},{nodes:[Vn.Laval,Vn.Lachute],cost:6},{nodes:[Vn.Vaudreuildorion,Vn.Pointeclaire],cost:3},{nodes:[Vn.Montreal,Vn.Brossard],cost:4},{nodes:[Vn.Laval,Vn.Longueuil],cost:0},{nodes:[Vn.Pointeclaire,Vn.Montreal],cost:0},{nodes:[Vn.Montreal,Vn.Longueuil],cost:0},{nodes:[Vn.Pointeclaire,Vn.Laval],cost:0},{nodes:[Vn.Beauport,Vn.Charlesbourg],cost:0},{nodes:[Vn.Charlesbourg,Vn.Quebec],cost:0},{nodes:[Vn.Quebec,Vn.Beauport],cost:0},{nodes:[Vn.Victoriaville,Vn.Beauport],cost:12},{nodes:[Vn.Quebec,Vn.Stgeorges],cost:12},{nodes:[Vn.Stgeorges,Vn.Montmagny],cost:12},{nodes:[Vn.Montmagny,Vn.Riviereduloup],cost:16},{nodes:[Vn.Jonquiere,Vn.Charlesbourg],cost:21},{nodes:[Vn.Montmagny,Vn.Quebec],cost:5},{nodes:[Vn.Stsimeon,Vn.Charlesbourg],cost:18},{nodes:[Vn.Drummondville,Vn.Granby],cost:4},{nodes:[Vn.Roberval,Vn.Shawinigan],cost:25},{nodes:[Vn.Jonquiere,Vn.Stsimeon],cost:16},{nodes:[Vn.Roberval,Vn.Jonquiere],cost:10},{nodes:[Vn.Jonquiere,Vn.Alma],cost:4},{nodes:[Vn.Alma,Vn.Chicoutimi],cost:4},{nodes:[Vn.Jonquiere,Vn.Chicoutimi],cost:0},{nodes:[Vn.Chicoutimi,Vn.Baiecomeau],cost:23},{nodes:[Vn.Stsimeon,Vn.Baiecomeau],cost:23},{nodes:[Vn.Baiecomeau,Vn.Portcartier],cost:16},{nodes:[Vn.Septiles,Vn.Portcartier],cost:6},{nodes:[Vn.Riviereduloup,Vn.Rimouski],cost:12},{nodes:[Vn.Rimouski,Vn.Matane],cost:11},{nodes:[Vn.Matane,Vn.Pointealacroix],cost:15},{nodes:[Vn.Matane,Vn.Steannedesmonts],cost:10},{nodes:[Vn.Pointealacroix,Vn.Steannedesmonts],cost:16},{nodes:[Vn.Steannedesmonts,Vn.Gaspe],cost:21},{nodes:[Vn.Gaspe,Vn.Pointealacroix],cost:25}],layout:"Portrait",adjustRatio:[.25,.35],mapPosition:[-20,75],resupply:[[[3,3,3],[4,4,3],[5,4,4],[5,5,5],[7,6,6]],[[2,2,3],[2,3,3],[3,4,4],[4,5,4],[5,6,5]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[21,21,6,2],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ye);if("original"==n){var i=a.filter((function(e){return[13,18,22].includes(e.number)})),s=a.filter((function(e){return(e.type==ve.Wind||e.type==ve.Nuclear)&&![13,18,22].includes(e.number)})),c=a.filter((function(e){return e.type!=ve.Wind&&e.type!=ve.Nuclear}));a=c.slice(8),r=[$t(3),$t(4),$t(5),$t(6)],o=[$t(7),$t(8),$t(9),$t(10)];var u=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a=a.concat(s),a=De(a,t()+""),a=i.concat(a),a.push(u)}else{var l=a.pop(),d=a.filter((function(e){return e.number>=3&&e.number<=10})),f=a.filter((function(e){return 13==e.number})),p=a.filter((function(e){return 18==e.number||22==e.number})),h=a.filter((function(e){return![13,18,22].includes(e.number)&&(e.type==ve.Wind||e.type==ve.Nuclear)})),g=a.filter((function(e){return e.type!=ve.Wind&&e.number>=11&&e.number<=15})),y=a.filter((function(e){return e.type!=ve.Wind&&e.type!=ve.Nuclear&&e.number>=16}));2==e?(g=De(g,t()+"").slice(1),y=De(y,t()+"").slice(5)):3==e?(g=De(g,t()+"").slice(2),y=De(y,t()+"").slice(6)):4==e&&(g=De(g,t()+"").slice(1),y=De(y,t()+"").slice(3));var m=De(d.concat(f).concat(g),t()+""),v=m.splice(0,8);v=v.sort((function(e,n){return e.number-n.number})),r=v.splice(0,4),o=v;var b=m.splice(0,1);a=m.concat(h).concat(y),a=De(a,t()+""),a=b.concat(p).concat(a).concat([l])}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Put power plants 13, 18, 22 on top of the deck. Ecological power plants will never be put on the bottom of the deck."};(function(e){e["Green"]="green",e["Pink"]="pink",e["Red"]="red",e["Yellow"]="yellow",e["Purple"]="purple",e["Brown"]="brown"})($n||($n={})),function(e){e["Murmansk"]="Murmansk",e["Arkhangelsk"]="Arkhangelsk",e["Syktyvkar"]="Syktyvkar",e["Kirov"]="Kirov",e["Kazan"]="Kazan",e["Cheboksary"]="Cheboksary",e["Ulyanovsk"]="Ulyanovsk",e["Tula"]="Tula",e["Kaliningrad"]="Kaliningrad",e["Ryazan"]="Ryazan",e["Nizhnynovgorod"]="Nizhny Novgorod",e["Moscow"]="Moscow",e["Stpetersburg"]="St Petersburg",e["Yaroslavl"]="Yaroslavl",e["Chita"]="Chita",e["Bratsk"]="Bratsk",e["Krasnoyarsk"]="Krasnoyarsk",e["Kemerovd"]="Kemerovd",e["Novokuznetsk"]="Novokuznetsk",e["Irkutsk"]="Irkutsk",e["Ulanude"]="Ulan Ude",e["Norilsk"]="Norilsk",e["Surgut"]="Surgut",e["Tyumen"]="Tyumen",e["Tomsk"]="Tomsk",e["Novosibirsk"]="Novosibirsk",e["Barnaul"]="Barnaul",e["Omsk"]="Omsk",e["Chelyabinsk"]="Chelyabinsk",e["Ufa"]="Ufa",e["Perm"]="Perm",e["Yekaterinburg"]="Yekaterinburg",e["Orenburg"]="Orenburg",e["Naberezhnyechelny"]="Naberezhnye Chelny",e["Samara"]="Samara",e["Astrakhan"]="Astrakhan",e["Makhachkala"]="Makhachkala",e["Saratov"]="Saratov",e["Volgograd"]="Volgograd",e["Krasnodar"]="Krasnodar",e["Rostov"]="Rostov",e["Voronezh"]="Voronezh"}(qn||(qn={}));var Xn,Qn,et={name:"Russia",cities:[{name:qn.Murmansk,region:$n.Green,x:1574,y:351},{name:qn.Arkhangelsk,region:$n.Green,x:1456,y:695},{name:qn.Syktyvkar,region:$n.Green,x:1669,y:1005},{name:qn.Kirov,region:$n.Green,x:1457,y:1172},{name:qn.Kazan,region:$n.Green,x:1378,y:1478},{name:qn.Cheboksary,region:$n.Green,x:1200,y:1328},{name:qn.Ulyanovsk,region:$n.Green,x:884,y:1448},{name:qn.Tula,region:$n.Pink,x:485,y:1077},{name:qn.Kaliningrad,region:$n.Pink,x:394,y:606},{name:qn.Ryazan,region:$n.Pink,x:793,y:1193},{name:qn.Nizhnynovgorod,region:$n.Pink,x:1129,y:1116},{name:qn.Moscow,region:$n.Pink,x:763,y:961},{name:qn.Stpetersburg,region:$n.Pink,x:883,y:597},{name:qn.Yaroslavl,region:$n.Pink,x:1018,y:915},{name:qn.Chita,region:$n.Red,x:4168,y:2048},{name:qn.Bratsk,region:$n.Red,x:3599,y:1808},{name:qn.Krasnoyarsk,region:$n.Red,x:3230,y:1930},{name:qn.Kemerovd,region:$n.Red,x:2953,y:1987},{name:qn.Novokuznetsk,region:$n.Red,x:3041,y:2159},{name:qn.Irkutsk,region:$n.Red,x:3721,y:2162},{name:qn.Ulanude,region:$n.Red,x:4030,y:2228},{name:qn.Norilsk,region:$n.Yellow,x:3001,y:856},{name:qn.Surgut,region:$n.Yellow,x:2348,y:1411},{name:qn.Tyumen,region:$n.Yellow,x:2060,y:1627},{name:qn.Tomsk,region:$n.Yellow,x:2773,y:1835},{name:qn.Novosibirsk,region:$n.Yellow,x:2647,y:2005},{name:qn.Barnaul,region:$n.Yellow,x:2662,y:2191},{name:qn.Omsk,region:$n.Yellow,x:2195,y:1957},{name:qn.Chelyabinsk,region:$n.Purple,x:1768,y:1865},{name:qn.Ufa,region:$n.Purple,x:1472,y:1907},{name:qn.Perm,region:$n.Purple,x:1688,y:1388},{name:qn.Yekaterinburg,region:$n.Purple,x:1757,y:1620},{name:qn.Orenburg,region:$n.Purple,x:1250,y:1997},{name:qn.Naberezhnyechelny,region:$n.Purple,x:1427,y:1709},{name:qn.Samara,region:$n.Purple,x:1132,y:1701},{name:qn.Astrakhan,region:$n.Brown,x:619,y:2092},{name:qn.Makhachkala,region:$n.Brown,x:317,y:2262},{name:qn.Saratov,region:$n.Brown,x:808,y:1661},{name:qn.Volgograd,region:$n.Brown,x:589,y:1795},{name:qn.Krasnodar,region:$n.Brown,x:260,y:1865},{name:qn.Rostov,region:$n.Brown,x:311,y:1658},{name:qn.Voronezh,region:$n.Brown,x:485,y:1409}],connections:[{nodes:[qn.Kaliningrad,qn.Stpetersburg],cost:15},{nodes:[qn.Stpetersburg,qn.Murmansk],cost:19},{nodes:[qn.Murmansk,qn.Arkhangelsk],cost:15},{nodes:[qn.Arkhangelsk,qn.Stpetersburg],cost:14},{nodes:[qn.Tula,qn.Kaliningrad],cost:20},{nodes:[qn.Tula,qn.Moscow],cost:3},{nodes:[qn.Moscow,qn.Ryazan],cost:3},{nodes:[qn.Ryazan,qn.Voronezh],cost:5},{nodes:[qn.Voronezh,qn.Tula],cost:5},{nodes:[qn.Tula,qn.Stpetersburg],cost:13},{nodes:[qn.Tula,qn.Ryazan],cost:0},{nodes:[qn.Stpetersburg,qn.Moscow],cost:10},{nodes:[qn.Moscow,qn.Yaroslavl],cost:3},{nodes:[qn.Yaroslavl,qn.Nizhnynovgorod],cost:4},{nodes:[qn.Nizhnynovgorod,qn.Moscow],cost:7},{nodes:[qn.Yaroslavl,qn.Stpetersburg],cost:9},{nodes:[qn.Yaroslavl,qn.Arkhangelsk],cost:12},{nodes:[qn.Arkhangelsk,qn.Syktyvkar],cost:10},{nodes:[qn.Syktyvkar,qn.Surgut],cost:21},{nodes:[qn.Perm,qn.Syktyvkar],cost:8},{nodes:[qn.Syktyvkar,qn.Kirov],cost:6},{nodes:[qn.Syktyvkar,qn.Nizhnynovgorod],cost:11},{nodes:[qn.Nizhnynovgorod,qn.Arkhangelsk],cost:15},{nodes:[qn.Nizhnynovgorod,qn.Cheboksary],cost:3},{nodes:[qn.Cheboksary,qn.Ulyanovsk],cost:4},{nodes:[qn.Ulyanovsk,qn.Voronezh],cost:11},{nodes:[qn.Voronezh,qn.Volgograd],cost:8},{nodes:[qn.Volgograd,qn.Saratov],cost:6},{nodes:[qn.Saratov,qn.Samara],cost:5},{nodes:[qn.Samara,qn.Ulyanovsk],cost:3},{nodes:[qn.Ulyanovsk,qn.Kazan],cost:3},{nodes:[qn.Kazan,qn.Samara],cost:4},{nodes:[qn.Samara,qn.Naberezhnyechelny],cost:5},{nodes:[qn.Cheboksary,qn.Kazan],cost:2},{nodes:[qn.Cheboksary,qn.Kirov],cost:5},{nodes:[qn.Kirov,qn.Kazan],cost:5},{nodes:[qn.Kazan,qn.Perm],cost:8},{nodes:[qn.Kazan,qn.Naberezhnyechelny],cost:3},{nodes:[qn.Naberezhnyechelny,qn.Ufa],cost:4},{nodes:[qn.Ufa,qn.Orenburg],cost:6},{nodes:[qn.Orenburg,qn.Samara],cost:6},{nodes:[qn.Orenburg,qn.Naberezhnyechelny],cost:7},{nodes:[qn.Ufa,qn.Chelyabinsk],cost:8},{nodes:[qn.Chelyabinsk,qn.Yekaterinburg],cost:3},{nodes:[qn.Yekaterinburg,qn.Perm],cost:5},{nodes:[qn.Perm,qn.Kirov],cost:6},{nodes:[qn.Chelyabinsk,qn.Tyumen],cost:5},{nodes:[qn.Tyumen,qn.Surgut],cost:10},{nodes:[qn.Syktyvkar,qn.Tyumen],cost:17},{nodes:[qn.Tyumen,qn.Yekaterinburg],cost:5},{nodes:[qn.Chelyabinsk,qn.Omsk],cost:13},{nodes:[qn.Omsk,qn.Tyumen],cost:9},{nodes:[qn.Tyumen,qn.Tomsk],cost:19},{nodes:[qn.Tomsk,qn.Surgut],cost:15},{nodes:[qn.Tomsk,qn.Novosibirsk],cost:4},{nodes:[qn.Novosibirsk,qn.Barnaul],cost:4},{nodes:[qn.Barnaul,qn.Omsk],cost:11},{nodes:[qn.Omsk,qn.Novosibirsk],cost:10},{nodes:[qn.Omsk,qn.Tomsk],cost:12},{nodes:[qn.Rostov,qn.Krasnodar],cost:4},{nodes:[qn.Krasnodar,qn.Volgograd],cost:9},{nodes:[qn.Volgograd,qn.Astrakhan],cost:6},{nodes:[qn.Krasnodar,qn.Makhachkala],cost:14},{nodes:[qn.Makhachkala,qn.Astrakhan],cost:8},{nodes:[qn.Makhachkala,qn.Volgograd],cost:11},{nodes:[qn.Rostov,qn.Volgograd],cost:7},{nodes:[qn.Ryazan,qn.Ulyanovsk],cost:9},{nodes:[qn.Ulyanovsk,qn.Saratov],cost:6},{nodes:[qn.Saratov,qn.Voronezh],cost:8},{nodes:[qn.Rostov,qn.Voronezh],cost:9},{nodes:[qn.Naberezhnyechelny,qn.Perm],cost:6},{nodes:[qn.Naberezhnyechelny,qn.Yekaterinburg],cost:8},{nodes:[qn.Ufa,qn.Yekaterinburg],cost:6},{nodes:[qn.Chita,qn.Ulanude],cost:6},{nodes:[qn.Ulanude,qn.Irkutsk],cost:6},{nodes:[qn.Irkutsk,qn.Novokuznetsk],cost:21},{nodes:[qn.Novokuznetsk,qn.Kemerovd],cost:3},{nodes:[qn.Kemerovd,qn.Tomsk],cost:3},{nodes:[qn.Novosibirsk,qn.Novokuznetsk],cost:5},{nodes:[qn.Novosibirsk,qn.Kemerovd],cost:4},{nodes:[qn.Novokuznetsk,qn.Barnaul],cost:6},{nodes:[qn.Kemerovd,qn.Krasnoyarsk],cost:7},{nodes:[qn.Krasnoyarsk,qn.Novokuznetsk],cost:7},{nodes:[qn.Krasnoyarsk,qn.Irkutsk],cost:17},{nodes:[qn.Krasnoyarsk,qn.Bratsk],cost:10},{nodes:[qn.Bratsk,qn.Tomsk],cost:17},{nodes:[qn.Bratsk,qn.Irkutsk],cost:10},{nodes:[qn.Bratsk,qn.Ulanude],cost:14},{nodes:[qn.Tomsk,qn.Norilsk],cost:24},{nodes:[qn.Norilsk,qn.Bratsk],cost:29},{nodes:[qn.Norilsk,qn.Surgut],cost:19}],adjustRatio:[.25,.25],resupply:[[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],[[3,4,3],[3,4,3],[5,6,4],[5,7,5],[7,9,6]],[[2,2,3],[2,2,3],[3,3,4],[4,3,5],[4,5,6]],[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]],startingResources:[18,24,0,7],setupDeck:function(e,n,t){var r=Object(we["cloneDeep"])(Ye),o=[],a=[],i=r.pop();if("original"==n){o=r.filter((function(e){return e.number>=3&&e.number<=5})),a=r.filter((function(e){return e.number>=7&&e.number<=9}));var s=$t(10),c=$t(11),u=$t(13),l=r.filter((function(e){return 12==e.number||e.number>=15})),d=De(l,t()+"");2==e||3==e?d=d.slice(8):4==e&&(d=d.slice(4));var f=d.slice(0,3).concat(s,c);f=De(f,t()+""),r=[u].concat(f,d.slice(3),i)}else{var p=r.filter((function(e){return e.number<=15&&6!=e.number&&14!=e.number})),h=De(p,t()+""),g=r.filter((function(e){return e.number>=16})),y=De(g,t()+"");2==e?y=y.slice(6):3==e?y=y.slice(8):4==e&&(y=y.slice(4));var m=h.slice(0,6),v=h.slice(6);m=m.sort((function(e,n){return e.number-n.number})),o=m.slice(0,3),a=m.slice(3),r=v.concat(y,i)}return{actualMarket:o,futureMarket:a,powerPlantsDeck:r}},mapSpecificRules:"The power plant market is restricted, and the rules for removing old plants are changed."};(function(e){e["Orange"]="orange",e["Green"]="green",e["Yellow"]="yellow",e["Brown"]="brown",e["Red"]="red"})(Xn||(Xn={})),function(e){e["Zimbabwe"]="Zimbabwe",e["Musina"]="Musina",e["Botswana"]="Botswana",e["Polokwane"]="Polokwane",e["PretoriaN"]="Pretoria N",e["PretoriaS"]="Pretoria S",e["Rustenburg"]="Rustenburg",e["Mozambique"]="Mozambique",e["Mbombela"]="Mbombela",e["Eswatini"]="Eswatini",e["Germiston"]="Germiston",e["JohannesburgN"]="Johannesburg N",e["JohannesburgS"]="Johannesburg S",e["Ladysmith"]="Ladysmith",e["Newcastle"]="Newcastle",e["Pietermaritzburg"]="Pietermaritzburg",e["DurbanN"]="Durban N",e["DurbanS"]="Durban S",e["Mthatha"]="Mthatha",e["Lesotho"]="Lesotho",e["Bloemfontein"]="Bloemfontein",e["Klerksdorp"]="Klerksdorp",e["Welkom"]="Welkom",e["Kuruman"]="Kuruman",e["Kimberly"]="Kimberly",e["Upington"]="Upington",e["Springbok"]="Springbok",e["Namibia"]="Namibia",e["DeAar"]="De Aar",e["BeaufortWest"]="Beaufort West",e["EastLondon"]="East London",e["PortElizabeth"]="Port Elizabeth",e["George"]="George",e["CapeTownN"]="Cape Town N",e["CapeTownS"]="Cape Town S"}(Qn||(Qn={}));var nt,tt,rt={name:"South Africa",cities:[{name:Qn.Zimbabwe,region:Xn.Orange,x:903,y:50,singleOccupancy:!0},{name:Qn.Musina,region:Xn.Orange,x:874,y:134},{name:Qn.Botswana,region:Xn.Orange,x:560,y:187,singleOccupancy:!0},{name:Qn.Polokwane,region:Xn.Orange,x:802,y:189},{name:Qn.PretoriaN,region:Xn.Orange,x:759,y:261},{name:Qn.PretoriaS,region:Xn.Orange,x:759,y:291},{name:Qn.Rustenburg,region:Xn.Orange,x:632,y:232},{name:Qn.Mozambique,region:Xn.Green,x:1011,y:170,singleOccupancy:!0},{name:Qn.Mbombela,region:Xn.Green,x:891,y:275},{name:Qn.Eswatini,region:Xn.Green,x:926,y:351,singleOccupancy:!0},{name:Qn.Germiston,region:Xn.Green,x:836,y:351},{name:Qn.JohannesburgN,region:Xn.Green,x:753,y:343},{name:Qn.JohannesburgS,region:Xn.Green,x:754,y:371},{name:Qn.Ladysmith,region:Xn.Green,x:823,y:456},{name:Qn.Newcastle,region:Xn.Yellow,x:957,y:478},{name:Qn.Pietermaritzburg,region:Xn.Yellow,x:851,y:511},{name:Qn.DurbanN,region:Xn.Yellow,x:894,y:563},{name:Qn.DurbanS,region:Xn.Yellow,x:893,y:592},{name:Qn.Mthatha,region:Xn.Yellow,x:791,y:663},{name:Qn.Lesotho,region:Xn.Yellow,x:759,y:523,singleOccupancy:!0},{name:Qn.Bloemfontein,region:Xn.Yellow,x:656,y:509},{name:Qn.Klerksdorp,region:Xn.Brown,x:660,y:362},{name:Qn.Welkom,region:Xn.Brown,x:652,y:431},{name:Qn.Kuruman,region:Xn.Brown,x:499,y:386},{name:Qn.Kimberly,region:Xn.Brown,x:564,y:496},{name:Qn.Upington,region:Xn.Brown,x:378,y:453},{name:Qn.Springbok,region:Xn.Brown,x:211,y:530},{name:Qn.Namibia,region:Xn.Brown,x:189,y:311,singleOccupancy:!0},{name:Qn.DeAar,region:Xn.Red,x:539,y:665},{name:Qn.BeaufortWest,region:Xn.Red,x:427,y:705},{name:Qn.EastLondon,region:Xn.Red,x:722,y:750},{name:Qn.PortElizabeth,region:Xn.Red,x:600,y:811},{name:Qn.George,region:Xn.Red,x:439,y:811},{name:Qn.CapeTownN,region:Xn.Red,x:233,y:783},{name:Qn.CapeTownS,region:Xn.Red,x:231,y:812}],connections:[{nodes:[Qn.Springbok,Qn.Namibia],cost:30},{nodes:[Qn.Bloemfontein,Qn.Lesotho],cost:30},{nodes:[Qn.Germiston,Qn.Eswatini],cost:30},{nodes:[Qn.Mbombela,Qn.Mozambique],cost:30},{nodes:[Qn.Botswana,Qn.Rustenburg],cost:30},{nodes:[Qn.Zimbabwe,Qn.Musina],cost:30},{nodes:[Qn.CapeTownS,Qn.CapeTownN],cost:0},{nodes:[Qn.CapeTownS,Qn.George],cost:16},{nodes:[Qn.George,Qn.PortElizabeth],cost:12},{nodes:[Qn.PortElizabeth,Qn.EastLondon],cost:13},{nodes:[Qn.EastLondon,Qn.Mthatha],cost:8},{nodes:[Qn.Mthatha,Qn.DurbanS],cost:13},{nodes:[Qn.DurbanS,Qn.DurbanN],cost:0},{nodes:[Qn.DurbanN,Qn.Pietermaritzburg],cost:3},{nodes:[Qn.DurbanN,Qn.Newcastle],cost:9},{nodes:[Qn.Newcastle,Qn.Pietermaritzburg],cost:9},{nodes:[Qn.Pietermaritzburg,Qn.Ladysmith],cost:5},{nodes:[Qn.Ladysmith,Qn.Newcastle],cost:10},{nodes:[Qn.Bloemfontein,Qn.Mthatha],cost:18},{nodes:[Qn.Bloemfontein,Qn.EastLondon],cost:22},{nodes:[Qn.EastLondon,Qn.DeAar],cost:22},{nodes:[Qn.DeAar,Qn.PortElizabeth],cost:18},{nodes:[Qn.George,Qn.DeAar],cost:17},{nodes:[Qn.DeAar,Qn.BeaufortWest],cost:10},{nodes:[Qn.BeaufortWest,Qn.George],cost:8},{nodes:[Qn.BeaufortWest,Qn.CapeTownN],cost:22},{nodes:[Qn.CapeTownN,Qn.Springbok],cost:22},{nodes:[Qn.Springbok,Qn.BeaufortWest],cost:24},{nodes:[Qn.DeAar,Qn.Springbok],cost:26},{nodes:[Qn.Springbok,Qn.Upington],cost:16},{nodes:[Qn.Upington,Qn.DeAar],cost:16},{nodes:[Qn.DeAar,Qn.Bloemfontein],cost:13},{nodes:[Qn.Bloemfontein,Qn.Kimberly],cost:6},{nodes:[Qn.Kimberly,Qn.DeAar],cost:10},{nodes:[Qn.Kimberly,Qn.Upington],cost:14},{nodes:[Qn.Kimberly,Qn.Welkom],cost:9},{nodes:[Qn.Welkom,Qn.Bloemfontein],cost:6},{nodes:[Qn.Bloemfontein,Qn.Ladysmith],cost:19},{nodes:[Qn.Mthatha,Qn.Pietermaritzburg],cost:12},{nodes:[Qn.Upington,Qn.Kuruman],cost:11},{nodes:[Qn.Musina,Qn.Polokwane],cost:8},{nodes:[Qn.Polokwane,Qn.PretoriaN],cost:11},{nodes:[Qn.PretoriaN,Qn.PretoriaS],cost:0},{nodes:[Qn.PretoriaS,Qn.JohannesburgN],cost:2},{nodes:[Qn.JohannesburgN,Qn.JohannesburgS],cost:0},{nodes:[Qn.JohannesburgS,Qn.Germiston],cost:1},{nodes:[Qn.JohannesburgN,Qn.Mbombela],cost:13},{nodes:[Qn.Mbombela,Qn.Germiston],cost:13},{nodes:[Qn.PretoriaN,Qn.Mbombela],cost:13},{nodes:[Qn.Mbombela,Qn.Polokwane],cost:10},{nodes:[Qn.Musina,Qn.Mbombela],cost:15},{nodes:[Qn.PretoriaN,Qn.Rustenburg],cost:4},{nodes:[Qn.Rustenburg,Qn.JohannesburgN],cost:4},{nodes:[Qn.JohannesburgN,Qn.Klerksdorp],cost:7},{nodes:[Qn.Klerksdorp,Qn.Welkom],cost:5},{nodes:[Qn.Bloemfontein,Qn.JohannesburgS],cost:16},{nodes:[Qn.Kuruman,Qn.Rustenburg],cost:18},{nodes:[Qn.Klerksdorp,Qn.Kuruman],cost:12},{nodes:[Qn.Kuruman,Qn.Kimberly],cost:8},{nodes:[Qn.JohannesburgS,Qn.Ladysmith],cost:13},{nodes:[Qn.Ladysmith,Qn.Germiston],cost:13}],resupply:[[[4,7,5],[4,7,5],[5,8,6],[6,9,7],[7,10,8]],[[1,2,1],[1,2,1],[2,3,2],[2,4,3],[4,5,4]],[[1,3,3],[1,3,3],[2,4,4],[3,4,5],[3,6,6]],[[1,1,2],[1,1,2],[2,2,3],[2,3,3],[2,3,4]]],layout:"Landscape",adjustRatio:[.9,.75],mapPosition:[70,50],mapRotation:0,startingResources:[24,15,12,3],startingSupply:[24,24,24,12],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ye).filter((function(e){return 7!==e.number}));if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.push(c),r=[$t(3),$t(4),$t(5),$t(6)],o=[$t(8),$t(9),$t(10),$t(11)]}else{var u=De(a.splice(0,12),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.push(f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Coal storage: there is a separate storage space below the resource market, empty at game start. Coal used to power plants returns to this storage space (not the main supply). The resource-market refill draws coal from storage first, then from the main supply. Players can always buy coal for $8 from the storage space (in addition to the standard market price). Metropolises: Cape Town, Durban, Johannesburg and Pretoria each consist of two cities (N and S) connected by a 0-cost edge. Cross-border connections: the six 30-Elektro connections to neighboring countries (Namibia, Botswana, Zimbabwe, Mozambique, Eswatini, Lesotho) are available from the start of the game. The 30 Elektro is the complete cost — no house-base cost is added on top. Only a single player can build on each cross-border space (cap of 1 instead of the standard 3). Power plant 07 is removed from the deck."};(function(e){e["Pink"]="pink",e["Brown"]="brown",e["Green"]="green",e["Purple"]="purple",e["Red"]="red",e["Yellow"]="yellow"})(nt||(nt={})),function(e){e["Gerona"]="Gerona",e["Barcelona"]="Barcelona",e["Tarragona"]="Tarragona",e["Lerida"]="Lerida",e["Castellondelaplana"]="Castellon De La Plana",e["Valencia"]="Valencia",e["Alicante"]="Alicante",e["Sansebastian"]="San Sebastian",e["Pamplona"]="Pamplona",e["Zaragoza"]="Zaragoza",e["Madrid"]="Madrid",e["Logrono"]="Logrono",e["Bilbao"]="Bilbao",e["Santander"]="Santander",e["Gijon"]="Gijon",e["Leon"]="Leon",e["Valladolid"]="Valladolid",e["Salamanca"]="Salamanca",e["Orense"]="Orense",e["Lacoruna"]="La Coruna",e["Santiagodecompostela"]="Santiago De Compostela",e["Cuenca"]="Cuenca",e["Albacete"]="Albacete",e["Murcia"]="Murcia",e["Toledo"]="Toledo",e["Ciudadreal"]="Ciudad Real",e["Caceres"]="Caceres",e["Merida"]="Merida",e["Almeria"]="Almeria",e["Granada"]="Granada",e["Cordoba"]="Cordoba",e["Malaga"]="Malaga",e["Cadiz"]="Cadiz",e["Sevilla"]="Sevilla",e["Huelva"]="Huelva",e["Evora"]="Evora",e["Faro"]="Faro",e["Portimao"]="Portimao",e["Setubal"]="Setubal",e["Lisboa"]="Lisboa",e["Porto"]="Porto",e["Braga"]="Braga"}(tt||(tt={}));var ot,at,it={name:"Spain & Portugal",cities:[{name:tt.Evora,region:nt.Yellow,x:890,y:1780},{name:tt.Faro,region:nt.Yellow,x:822,y:2348},{name:tt.Portimao,region:nt.Yellow,x:592,y:2218},{name:tt.Setubal,region:nt.Yellow,x:578,y:1864},{name:tt.Lisboa,region:nt.Yellow,x:572,y:1586},{name:tt.Porto,region:nt.Yellow,x:736,y:1052},{name:tt.Braga,region:nt.Yellow,x:990,y:828},{name:tt.Gerona,region:nt.Pink,x:3728,y:666},{name:tt.Barcelona,region:nt.Pink,x:3538,y:848},{name:tt.Tarragona,region:nt.Pink,x:3312,y:970},{name:tt.Lerida,region:nt.Pink,x:3166,y:752},{name:tt.Castellondelaplana,region:nt.Pink,x:3010,y:1284},{name:tt.Valencia,region:nt.Pink,x:2938,y:1580},{name:tt.Alicante,region:nt.Pink,x:2936,y:1922},{name:tt.Sansebastian,region:nt.Brown,x:2498,y:278},{name:tt.Pamplona,region:nt.Brown,x:2648,y:484},{name:tt.Zaragoza,region:nt.Brown,x:2760,y:810},{name:tt.Madrid,region:nt.Brown,x:2088,y:1170},{name:tt.Logrono,region:nt.Brown,x:2310,y:622},{name:tt.Bilbao,region:nt.Brown,x:2264,y:226},{name:tt.Santander,region:nt.Brown,x:2022,y:252},{name:tt.Gijon,region:nt.Green,x:1672,y:190},{name:tt.Leon,region:nt.Green,x:1604,y:518},{name:tt.Valladolid,region:nt.Green,x:1850,y:782},{name:tt.Salamanca,region:nt.Green,x:1564,y:1032},{name:tt.Orense,region:nt.Green,x:1072,y:532},{name:tt.Lacoruna,region:nt.Green,x:982,y:184},{name:tt.Santiagodecompostela,region:nt.Green,x:772,y:394},{name:tt.Cuenca,region:nt.Purple,x:2464,y:1300},{name:tt.Albacete,region:nt.Purple,x:2532,y:1684},{name:tt.Murcia,region:nt.Purple,x:2678,y:2056},{name:tt.Toledo,region:nt.Purple,x:1920,y:1400},{name:tt.Ciudadreal,region:nt.Purple,x:1982,y:1714},{name:tt.Caceres,region:nt.Purple,x:1354,y:1432},{name:tt.Merida,region:nt.Purple,x:1318,y:1764},{name:tt.Almeria,region:nt.Red,x:2402,y:2440},{name:tt.Granada,region:nt.Red,x:2044,y:2272},{name:tt.Cordoba,region:nt.Red,x:1728,y:2074},{name:tt.Malaga,region:nt.Red,x:1782,y:2484},{name:tt.Cadiz,region:nt.Red,x:1290,y:2552},{name:tt.Sevilla,region:nt.Red,x:1390,y:2168},{name:tt.Huelva,region:nt.Red,x:1082,y:2196}],connections:[{nodes:[tt.Huelva,tt.Faro],cost:6},{nodes:[tt.Faro,tt.Portimao],cost:4},{nodes:[tt.Portimao,tt.Setubal],cost:12},{nodes:[tt.Setubal,tt.Evora],cost:6},{nodes:[tt.Evora,tt.Merida],cost:9},{nodes:[tt.Merida,tt.Sevilla],cost:14},{nodes:[tt.Sevilla,tt.Cadiz],cost:8},{nodes:[tt.Cadiz,tt.Malaga],cost:12},{nodes:[tt.Malaga,tt.Granada],cost:7},{nodes:[tt.Granada,tt.Almeria],cost:9},{nodes:[tt.Almeria,tt.Murcia],cost:13},{nodes:[tt.Murcia,tt.Alicante],cost:4},{nodes:[tt.Alicante,tt.Valencia],cost:9},{nodes:[tt.Valencia,tt.Castellondelaplana],cost:4},{nodes:[tt.Albacete,tt.Almeria],cost:19},{nodes:[tt.Albacete,tt.Murcia],cost:10},{nodes:[tt.Albacete,tt.Alicante],cost:11},{nodes:[tt.Albacete,tt.Valencia],cost:11},{nodes:[tt.Albacete,tt.Cuenca],cost:8},{nodes:[tt.Albacete,tt.Ciudadreal],cost:13},{nodes:[tt.Albacete,tt.Granada],cost:19},{nodes:[tt.Albacete,tt.Toledo],cost:14},{nodes:[tt.Toledo,tt.Madrid],cost:6},{nodes:[tt.Madrid,tt.Cuenca],cost:11},{nodes:[tt.Cuenca,tt.Valencia],cost:13},{nodes:[tt.Cuenca,tt.Castellondelaplana],cost:14},{nodes:[tt.Castellondelaplana,tt.Tarragona],cost:12},{nodes:[tt.Toledo,tt.Caceres],cost:16},{nodes:[tt.Caceres,tt.Merida],cost:4},{nodes:[tt.Merida,tt.Ciudadreal],cost:16},{nodes:[tt.Ciudadreal,tt.Granada],cost:16},{nodes:[tt.Granada,tt.Cordoba],cost:11},{nodes:[tt.Cordoba,tt.Malaga],cost:11},{nodes:[tt.Malaga,tt.Sevilla],cost:12},{nodes:[tt.Sevilla,tt.Cordoba],cost:8},{nodes:[tt.Cordoba,tt.Ciudadreal],cost:10},{nodes:[tt.Merida,tt.Cordoba],cost:14},{nodes:[tt.Huelva,tt.Cadiz],cost:9},{nodes:[tt.Huelva,tt.Sevilla],cost:6},{nodes:[tt.Merida,tt.Huelva],cost:15},{nodes:[tt.Huelva,tt.Evora],cost:12},{nodes:[tt.Evora,tt.Faro],cost:13},{nodes:[tt.Faro,tt.Setubal],cost:14},{nodes:[tt.Setubal,tt.Lisboa],cost:4},{nodes:[tt.Lisboa,tt.Evora],cost:9},{nodes:[tt.Lisboa,tt.Merida],cost:16},{nodes:[tt.Caceres,tt.Ciudadreal],cost:16},{nodes:[tt.Toledo,tt.Cuenca],cost:13},{nodes:[tt.Salamanca,tt.Toledo],cost:14},{nodes:[tt.Salamanca,tt.Madrid],cost:14},{nodes:[tt.Salamanca,tt.Caceres],cost:13},{nodes:[tt.Porto,tt.Lisboa],cost:18},{nodes:[tt.Porto,tt.Salamanca],cost:19},{nodes:[tt.Porto,tt.Caceres],cost:21},{nodes:[tt.Caceres,tt.Lisboa],cost:19},{nodes:[tt.Ciudadreal,tt.Toledo],cost:7},{nodes:[tt.Braga,tt.Porto],cost:3},{nodes:[tt.Braga,tt.Salamanca],cost:19},{nodes:[tt.Salamanca,tt.Valladolid],cost:7},{nodes:[tt.Valladolid,tt.Madrid],cost:13},{nodes:[tt.Madrid,tt.Zaragoza],cost:19},{nodes:[tt.Zaragoza,tt.Lerida],cost:8},{nodes:[tt.Lerida,tt.Tarragona],cost:6},{nodes:[tt.Tarragona,tt.Barcelona],cost:6},{nodes:[tt.Lerida,tt.Castellondelaplana],cost:13},{nodes:[tt.Castellondelaplana,tt.Zaragoza],cost:15},{nodes:[tt.Zaragoza,tt.Cuenca],cost:16},{nodes:[tt.Braga,tt.Valladolid],cost:24},{nodes:[tt.Lerida,tt.Barcelona],cost:10},{nodes:[tt.Barcelona,tt.Gerona],cost:6},{nodes:[tt.Gerona,tt.Lerida],cost:13},{nodes:[tt.Lerida,tt.Pamplona],cost:17},{nodes:[tt.Pamplona,tt.Zaragoza],cost:11},{nodes:[tt.Zaragoza,tt.Logrono],cost:11},{nodes:[tt.Logrono,tt.Madrid],cost:18},{nodes:[tt.Santiagodecompostela,tt.Braga],cost:11},{nodes:[tt.Braga,tt.Orense],cost:9},{nodes:[tt.Orense,tt.Santiagodecompostela],cost:7},{nodes:[tt.Santiagodecompostela,tt.Lacoruna],cost:4},{nodes:[tt.Lacoruna,tt.Gijon],cost:9},{nodes:[tt.Gijon,tt.Santander],cost:11},{nodes:[tt.Santander,tt.Bilbao],cost:6},{nodes:[tt.Bilbao,tt.Sansebastian],cost:5},{nodes:[tt.Sansebastian,tt.Pamplona],cost:6},{nodes:[tt.Pamplona,tt.Logrono],cost:7},{nodes:[tt.Logrono,tt.Sansebastian],cost:9},{nodes:[tt.Bilbao,tt.Logrono],cost:9},{nodes:[tt.Logrono,tt.Santander],cost:13},{nodes:[tt.Santander,tt.Valladolid],cost:16},{nodes:[tt.Valladolid,tt.Logrono],cost:15},{nodes:[tt.Leon,tt.Santander],cost:13},{nodes:[tt.Gijon,tt.Leon],cost:9},{nodes:[tt.Leon,tt.Valladolid],cost:9},{nodes:[tt.Valladolid,tt.Orense],cost:22},{nodes:[tt.Orense,tt.Leon],cost:14},{nodes:[tt.Gijon,tt.Orense],cost:10},{nodes:[tt.Orense,tt.Lacoruna],cost:6}],layout:"Portrait",adjustRatio:[.315,.315],mapPosition:[-135,60],resupply:[[[3,4,2],[4,5,2],[4,6,3],[4,7,3],[6,8,4]],[[2,3,5],[2,4,5],[3,5,6],[4,6,7],[5,7,9]],[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],[[0,2,1],[0,2,1],[0,4,1],[0,5,1],[0,5,2]]],startingResources:[24,18,9,8],setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ye);if(a=a.filter((function(e){return![18,22,27].includes(e.number)})),"original"==n){a=a.slice(8);var i=a.splice(2,1)[0],s=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(i),a.push(s),r=[$t(3),$t(4),$t(5),$t(6)],o=[$t(7),$t(8),$t(9),$t(10)]}else{var c=De(a.splice(0,13),t()+""),u=c.splice(0,8);u=u.sort((function(e,n){return e.number-n.number})),r=u.slice(0,4),o=u.slice(4);var l=c.shift(),d=a.pop();a=De(a,t()+""),2==e?(c=c.slice(1),a=De(a.slice(5).concat(c),t()+"")):3==e?(c=c.slice(2),a=De(a.slice(6).concat(c),t()+"")):4==e?(c=c.slice(1),a=De(a.slice(3).concat(c),t()+"")):a=De(a.concat(c),t()+""),a.unshift(l),a.push(d)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Remove power plants 18, 22 and 27 from the deck. Place them on top of the deck at the start of Step 2.\nYou cannot buy a nuclear power plant if you only have cities in Portugal."};(function(e){e["Red"]="red",e["Pink"]="pink",e["Yellow"]="yellow",e["Brown"]="brown",e["Orange"]="orange",e["Green"]="green"})(ot||(ot={})),function(e){e["Norwich"]="Norwich",e["London1"]="London 1",e["London2"]="London 2",e["Brighton"]="Brighton",e["Southampton"]="Southampton",e["Plymouth"]="Plymouth",e["Leicester"]="Leicester",e["Bristol"]="Bristol",e["Newcastleupontyne"]="Newcastle Upon Tyne",e["Leeds"]="Leeds",e["Sheffield"]="Sheffield",e["Nottingham"]="Nottingham",e["Birmingham"]="Birmingham",e["Manchester"]="Manchester",e["Liverpool"]="Liverpool",e["Newportcasnewydd"]="Newport Casnewydd",e["Bangor"]="Bangor",e["Aberystwyth"]="Aberystwyth",e["Swanseaabertawe"]="Swansea Abertawe",e["Cardiffcaerdydd"]="Cardiff Caerdydd",e["Haverfordwesthwlffordd"]="Haverfordwest Hwlffordd",e["Invernessinbhirnis"]="Inverness Inbhir Nis",e["Aberdeenobardheathain"]="Aberdeen Obar Dheathain",e["Dundeedundeach"]="Dundee Dun Deach",e["Perthpeairt"]="Perth Peairt",e["Edinburgh"]="Edinburgh",e["Dumfries"]="Dumfries",e["Glasgow"]="Glasgow",e["Coleraine"]="Coleraine",e["Derry"]="Derry",e["Belfast"]="Belfast",e["Newry"]="Newry",e["Omagh"]="Omagh",e["Sligo"]="Sligo",e["Dublin"]="Dublin",e["Waterford"]="Waterford",e["Cork"]="Cork",e["Athlone"]="Athlone",e["Galway"]="Galway",e["Limerick"]="Limerick"}(at||(at={}));var st={name:"UK & Ireland",cities:[{name:at.Norwich,region:ot.Red,island:"gb",x:646,y:702},{name:at.London1,region:ot.Red,island:"gb",x:554,y:756},{name:at.London2,region:ot.Red,island:"gb",x:550,y:780},{name:at.Brighton,region:ot.Red,island:"gb",x:537,y:837},{name:at.Southampton,region:ot.Red,island:"gb",x:451,y:805},{name:at.Plymouth,region:ot.Red,island:"gb",x:312,y:814},{name:at.Leicester,region:ot.Red,island:"gb",x:540,y:680},{name:at.Bristol,region:ot.Red,island:"gb",x:425,y:762},{name:at.Newcastleupontyne,region:ot.Pink,island:"gb",x:550,y:414},{name:at.Leeds,region:ot.Pink,island:"gb",x:559,y:541},{name:at.Sheffield,region:ot.Pink,island:"gb",x:530,y:590},{name:at.Nottingham,region:ot.Pink,island:"gb",x:531,y:632},{name:at.Birmingham,region:ot.Pink,island:"gb",x:465,y:663},{name:at.Manchester,region:ot.Pink,island:"gb",x:479,y:543},{name:at.Liverpool,region:ot.Pink,island:"gb",x:433,y:576},{name:at.Newportcasnewydd,region:ot.Yellow,island:"gb",x:425,y:722},{name:at.Bangor,region:ot.Yellow,island:"gb",x:348,y:574},{name:at.Aberystwyth,region:ot.Yellow,island:"gb",x:357,y:639},{name:at.Swanseaabertawe,region:ot.Yellow,island:"gb",x:346,y:706},{name:at.Cardiffcaerdydd,region:ot.Yellow,island:"gb",x:357,y:761},{name:at.Haverfordwesthwlffordd,region:ot.Yellow,island:"gb",x:303,y:673},{name:at.Invernessinbhirnis,region:ot.Brown,island:"gb",x:479,y:208},{name:at.Aberdeenobardheathain,region:ot.Brown,island:"gb",x:588,y:245},{name:at.Dundeedundeach,region:ot.Brown,island:"gb",x:552,y:286},{name:at.Perthpeairt,region:ot.Brown,island:"gb",x:489,y:307},{name:at.Edinburgh,region:ot.Brown,island:"gb",x:494,y:375},{name:at.Dumfries,region:ot.Brown,island:"gb",x:441,y:417},{name:at.Glasgow,region:ot.Brown,island:"gb",x:422,y:335},{name:at.Coleraine,region:ot.Orange,island:"ie",x:330,y:367},{name:at.Derry,region:ot.Orange,island:"ie",x:256,y:362},{name:at.Belfast,region:ot.Orange,island:"ie",x:342,y:421},{name:at.Newry,region:ot.Orange,island:"ie",x:298,y:462},{name:at.Omagh,region:ot.Orange,island:"ie",x:260,y:403},{name:at.Sligo,region:ot.Green,island:"ie",x:181,y:411},{name:at.Dublin,region:ot.Green,island:"ie",x:274,y:530},{name:at.Waterford,region:ot.Green,island:"ie",x:210,y:611},{name:at.Cork,region:ot.Green,island:"ie",x:114,y:626},{name:at.Athlone,region:ot.Green,island:"ie",x:200,y:489},{name:at.Galway,region:ot.Green,island:"ie",x:112,y:486},{name:at.Limerick,region:ot.Green,island:"ie",x:122,y:546}],connections:[{nodes:[at.Nottingham,at.Leicester],cost:4},{nodes:[at.London1,at.London2],cost:0},{nodes:[at.London2,at.Brighton],cost:6},{nodes:[at.Brighton,at.Southampton],cost:7},{nodes:[at.Southampton,at.Plymouth],cost:19},{nodes:[at.Plymouth,at.Bristol],cost:14},{nodes:[at.Bristol,at.Newportcasnewydd],cost:7},{nodes:[at.Cardiffcaerdydd,at.Swanseaabertawe],cost:7},{nodes:[at.Swanseaabertawe,at.Newportcasnewydd],cost:8},{nodes:[at.Newportcasnewydd,at.Cardiffcaerdydd],cost:3},{nodes:[at.Bristol,at.Southampton],cost:11},{nodes:[at.Southampton,at.London2],cost:9},{nodes:[at.London2,at.Bristol],cost:14},{nodes:[at.London1,at.Newportcasnewydd],cost:16},{nodes:[at.Haverfordwesthwlffordd,at.Aberystwyth],cost:9},{nodes:[at.Haverfordwesthwlffordd,at.Swanseaabertawe],cost:8},{nodes:[at.Swanseaabertawe,at.Aberystwyth],cost:11},{nodes:[at.Aberystwyth,at.Bangor],cost:11},{nodes:[at.Bangor,at.Liverpool],cost:9},{nodes:[at.Liverpool,at.Aberystwyth],cost:16},{nodes:[at.Aberystwyth,at.Newportcasnewydd],cost:14},{nodes:[at.Aberystwyth,at.Birmingham],cost:16},{nodes:[at.Birmingham,at.Liverpool],cost:12},{nodes:[at.Birmingham,at.Newportcasnewydd],cost:9},{nodes:[at.London1,at.Norwich],cost:11},{nodes:[at.Norwich,at.Leicester],cost:12},{nodes:[at.Leicester,at.London1],cost:10},{nodes:[at.London1,at.Birmingham],cost:13},{nodes:[at.Birmingham,at.Leicester],cost:6},{nodes:[at.Birmingham,at.Nottingham],cost:7},{nodes:[at.Nottingham,at.Sheffield],cost:6},{nodes:[at.Sheffield,at.Leeds],cost:5},{nodes:[at.Leeds,at.Manchester],cost:8},{nodes:[at.Manchester,at.Sheffield],cost:8},{nodes:[at.Sheffield,at.Liverpool],cost:12},{nodes:[at.Liverpool,at.Nottingham],cost:15},{nodes:[at.Manchester,at.Dumfries],cost:18},{nodes:[at.Manchester,at.Newcastleupontyne],cost:15},{nodes:[at.Newcastleupontyne,at.Dumfries],cost:12},{nodes:[at.Dumfries,at.Edinburgh],cost:12},{nodes:[at.Edinburgh,at.Newcastleupontyne],cost:13},{nodes:[at.Newcastleupontyne,at.Leeds],cost:13},{nodes:[at.Dumfries,at.Glasgow],cost:11},{nodes:[at.Glasgow,at.Edinburgh],cost:7},{nodes:[at.Glasgow,at.Perthpeairt],cost:10},{nodes:[at.Perthpeairt,at.Dundeedundeach],cost:3},{nodes:[at.Glasgow,at.Invernessinbhirnis],cost:20},{nodes:[at.Invernessinbhirnis,at.Perthpeairt],cost:14},{nodes:[at.Invernessinbhirnis,at.Dundeedundeach],cost:14},{nodes:[at.Invernessinbhirnis,at.Aberdeenobardheathain],cost:15},{nodes:[at.Aberdeenobardheathain,at.Dundeedundeach],cost:10},{nodes:[at.Limerick,at.Cork],cost:12},{nodes:[at.Cork,at.Waterford],cost:8},{nodes:[at.Waterford,at.Limerick],cost:11},{nodes:[at.Limerick,at.Galway],cost:10},{nodes:[at.Galway,at.Sligo],cost:10},{nodes:[at.Sligo,at.Derry],cost:10},{nodes:[at.Derry,at.Coleraine],cost:6},{nodes:[at.Coleraine,at.Belfast],cost:8},{nodes:[at.Belfast,at.Newry],cost:6},{nodes:[at.Newry,at.Dublin],cost:10},{nodes:[at.Dublin,at.Waterford],cost:13},{nodes:[at.Galway,at.Athlone],cost:8},{nodes:[at.Athlone,at.Sligo],cost:9},{nodes:[at.Athlone,at.Limerick],cost:9},{nodes:[at.Limerick,at.Dublin],cost:16},{nodes:[at.Dublin,at.Athlone],cost:9},{nodes:[at.Athlone,at.Newry],cost:12},{nodes:[at.Athlone,at.Omagh],cost:14},{nodes:[at.Omagh,at.Newry],cost:8},{nodes:[at.Omagh,at.Belfast],cost:10},{nodes:[at.Belfast,at.Derry],cost:10},{nodes:[at.Omagh,at.Derry],cost:5},{nodes:[at.Omagh,at.Sligo],cost:10}],layout:"Portrait",adjustRatio:[1.1,1.1],mapPosition:[10,-75],mapRotation:0,resupply:[[[3,4,3],[3,5,3],[4,6,4],[4,7,5],[6,8,6]],[[2,3,2],[2,4,2],[3,5,3],[4,6,4],[5,7,5]],[[1,2,2],[1,2,2],[2,3,3],[3,3,5],[3,5,5]],[[1,1,1],[1,2,1],[1,3,1],[2,4,2],[2,4,3]]],startingResources:[24,18,12,0],startingSupply:[24,24,24,12],crossIslandSurcharge:20,setupDeck:function(e,n,t){var r,o,a=Object(we["cloneDeep"])(Ye);if("original"==n){a=a.slice(8);var i=a.findIndex((function(e){return 13==e.number})),s=a.splice(i,1)[0],c=a.pop();a=De(a,t()+""),2==e||3==e?a=a.slice(8):4==e&&(a=a.slice(4)),a.unshift(s),a.splice(a.length-2,0,c),r=[$t(3),$t(4),$t(5),$t(6)],o=[$t(7),$t(8),$t(9),$t(10)]}else{var u=De(a.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),r=l.slice(0,4),o=l.slice(4);var d=u.shift(),f=a.pop();a=De(a,t()+""),2==e?(u=u.slice(1),a=De(a.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),a=De(a.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),a=De(a.slice(3).concat(u),t()+"")):a=De(a.concat(u),t()+""),a.unshift(d),a.splice(a.length-2,0,f)}return{actualMarket:r,futureMarket:o,powerPlantsDeck:a}},mapSpecificRules:"Two networks: Ireland (Green and Orange regions) and Great Britain (Red, Pink, Yellow, Brown) have no sea connection. A player may run one network on each island. Starting a second network on the other island costs an extra 20 Elektro on top of the normal first-house cost. Nuclear restriction: a player whose network is entirely in the Republic of Ireland (Green region) cannot bid on or auction a nuclear power plant until they build a city in Scotland, Wales, England, or Northern Ireland. Early Step 3: the Step 3 card is placed 3rd from last in the deck (two plants below it). Step 2 begins when a player connects their 7th city (6th for 6 players)."},ct=[He,Pn,an,it,xn,Bn,Ln,Zn,In,gn,tn,et,fn,Qe,Jn,Tn,vn,Fn,rt,st,qe,un,jn],ut=[Fe,Sn,an,it,xn,Bn,Ln,Zn,In,gn,tn,et,fn,Qe,Jn,Tn,vn,Fn,rt,st,qe,un,Dn];const lt=Math.pow(2,-52),dt=new Uint32Array(512);class ft{static from(e,n=kt,t=_t){const r=e.length,o=new Float64Array(2*r);for(let a=0;a<r;a++){const r=e[a];o[2*a]=n(r),o[2*a+1]=t(r)}return new ft(o)}constructor(e){const n=e.length>>1;if(n>0&&"number"!==typeof e[0])throw new Error("Expected coords to contain numbers.");this.coords=e;const t=Math.max(2*n-5,0);this._triangles=new Uint32Array(3*t),this._halfedges=new Int32Array(3*t),this._hashSize=Math.ceil(Math.sqrt(n)),this._hullPrev=new Uint32Array(n),this._hullNext=new Uint32Array(n),this._hullTri=new Uint32Array(n),this._hullHash=new Int32Array(this._hashSize).fill(-1),this._ids=new Uint32Array(n),this._dists=new Float64Array(n),this.update()}update(){const{coords:e,_hullPrev:n,_hullNext:t,_hullTri:r,_hullHash:o}=this,a=e.length>>1;let i=1/0,s=1/0,c=-1/0,u=-1/0;for(let S=0;S<a;S++){const n=e[2*S],t=e[2*S+1];n<i&&(i=n),t<s&&(s=t),n>c&&(c=n),t>u&&(u=t),this._ids[S]=S}const l=(i+c)/2,d=(s+u)/2;let f,p,h,g=1/0;for(let S=0;S<a;S++){const n=ht(l,d,e[2*S],e[2*S+1]);n<g&&(f=S,g=n)}const y=e[2*f],m=e[2*f+1];g=1/0;for(let S=0;S<a;S++){if(S===f)continue;const n=ht(y,m,e[2*S],e[2*S+1]);n<g&&n>0&&(p=S,g=n)}let v=e[2*p],b=e[2*p+1],w=1/0;for(let S=0;S<a;S++){if(S===f||S===p)continue;const n=vt(y,m,v,b,e[2*S],e[2*S+1]);n<w&&(h=S,w=n)}let x=e[2*h],k=e[2*h+1];if(w===1/0){for(let r=0;r<a;r++)this._dists[r]=e[2*r]-e[0]||e[2*r+1]-e[1];wt(this._ids,this._dists,0,a-1);const n=new Uint32Array(a);let t=0;for(let e=0,r=-1/0;e<a;e++){const o=this._ids[e];this._dists[o]>r&&(n[t++]=o,r=this._dists[o])}return this.hull=n.subarray(0,t),this.triangles=new Uint32Array(0),void(this.halfedges=new Uint32Array(0))}if(yt(y,m,v,b,x,k)){const e=p,n=v,t=b;p=h,v=x,b=k,h=e,x=n,k=t}const _=bt(y,m,v,b,x,k);this._cx=_.x,this._cy=_.y;for(let S=0;S<a;S++)this._dists[S]=ht(e[2*S],e[2*S+1],_.x,_.y);wt(this._ids,this._dists,0,a-1),this._hullStart=f;let P=3;t[f]=n[h]=p,t[p]=n[f]=h,t[h]=n[p]=f,r[f]=0,r[p]=1,r[h]=2,o.fill(-1),o[this._hashKey(y,m)]=f,o[this._hashKey(v,b)]=p,o[this._hashKey(x,k)]=h,this.trianglesLen=0,this._addTriangle(f,p,h,-1,-1,-1);for(let S,M,C=0;C<this._ids.length;C++){const a=this._ids[C],i=e[2*a],s=e[2*a+1];if(C>0&&Math.abs(i-S)<=lt&&Math.abs(s-M)<=lt)continue;if(S=i,M=s,a===f||a===p||a===h)continue;let c=0;for(let e=0,n=this._hashKey(i,s);e<this._hashSize;e++)if(c=o[(n+e)%this._hashSize],-1!==c&&c!==t[c])break;c=n[c];let u,l=c;while(u=t[l],!yt(i,s,e[2*l],e[2*l+1],e[2*u],e[2*u+1]))if(l=u,l===c){l=-1;break}if(-1===l)continue;let d=this._addTriangle(l,a,t[l],-1,-1,r[l]);r[a]=this._legalize(d+2),r[l]=d,P++;let g=t[l];while(u=t[g],yt(i,s,e[2*g],e[2*g+1],e[2*u],e[2*u+1]))d=this._addTriangle(g,a,u,r[a],-1,r[g]),r[a]=this._legalize(d+2),t[g]=g,P--,g=u;if(l===c)while(u=n[l],yt(i,s,e[2*u],e[2*u+1],e[2*l],e[2*l+1]))d=this._addTriangle(u,a,l,-1,r[l],r[u]),this._legalize(d+2),r[u]=d,t[l]=l,P--,l=u;this._hullStart=n[a]=l,t[l]=n[g]=a,t[a]=g,o[this._hashKey(i,s)]=a,o[this._hashKey(e[2*l],e[2*l+1])]=l}this.hull=new Uint32Array(P);for(let S=0,M=this._hullStart;S<P;S++)this.hull[S]=M,M=t[M];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(e,n){return Math.floor(pt(e-this._cx,n-this._cy)*this._hashSize)%this._hashSize}_legalize(e){const{_triangles:n,_halfedges:t,coords:r}=this;let o=0,a=0;while(1){const i=t[e],s=e-e%3;if(a=s+(e+2)%3,-1===i){if(0===o)break;e=dt[--o];continue}const c=i-i%3,u=s+(e+1)%3,l=c+(i+2)%3,d=n[a],f=n[e],p=n[u],h=n[l],g=mt(r[2*d],r[2*d+1],r[2*f],r[2*f+1],r[2*p],r[2*p+1],r[2*h],r[2*h+1]);if(g){n[e]=h,n[i]=d;const r=t[l];if(-1===r){let n=this._hullStart;do{if(this._hullTri[n]===l){this._hullTri[n]=e;break}n=this._hullPrev[n]}while(n!==this._hullStart)}this._link(e,r),this._link(i,t[a]),this._link(a,l);const s=c+(i+1)%3;o<dt.length&&(dt[o++]=s)}else{if(0===o)break;e=dt[--o]}}return a}_link(e,n){this._halfedges[e]=n,-1!==n&&(this._halfedges[n]=e)}_addTriangle(e,n,t,r,o,a){const i=this.trianglesLen;return this._triangles[i]=e,this._triangles[i+1]=n,this._triangles[i+2]=t,this._link(i,r),this._link(i+1,o),this._link(i+2,a),this.trianglesLen+=3,i}}function pt(e,n){const t=e/(Math.abs(e)+Math.abs(n));return(n>0?3-t:1+t)/4}function ht(e,n,t,r){const o=e-t,a=n-r;return o*o+a*a}function gt(e,n,t,r,o,a){const i=(r-n)*(o-e),s=(t-e)*(a-n);return Math.abs(i-s)>=33306690738754716e-32*Math.abs(i+s)?i-s:0}function yt(e,n,t,r,o,a){const i=gt(o,a,e,n,t,r)||gt(e,n,t,r,o,a)||gt(t,r,o,a,e,n);return i<0}function mt(e,n,t,r,o,a,i,s){const c=e-i,u=n-s,l=t-i,d=r-s,f=o-i,p=a-s,h=c*c+u*u,g=l*l+d*d,y=f*f+p*p;return c*(d*y-g*p)-u*(l*y-g*f)+h*(l*p-d*f)<0}function vt(e,n,t,r,o,a){const i=t-e,s=r-n,c=o-e,u=a-n,l=i*i+s*s,d=c*c+u*u,f=.5/(i*u-s*c),p=(u*l-s*d)*f,h=(i*d-c*l)*f;return p*p+h*h}function bt(e,n,t,r,o,a){const i=t-e,s=r-n,c=o-e,u=a-n,l=i*i+s*s,d=c*c+u*u,f=.5/(i*u-s*c),p=e+(u*l-s*d)*f,h=n+(i*d-c*l)*f;return{x:p,y:h}}function wt(e,n,t,r){if(r-t<=20)for(let o=t+1;o<=r;o++){const r=e[o],a=n[r];let i=o-1;while(i>=t&&n[e[i]]>a)e[i+1]=e[i--];e[i+1]=r}else{const o=t+r>>1;let a=t+1,i=r;xt(e,o,a),n[e[t]]>n[e[r]]&&xt(e,t,r),n[e[a]]>n[e[r]]&&xt(e,a,r),n[e[t]]>n[e[a]]&&xt(e,t,a);const s=e[a],c=n[s];while(1){do{a++}while(n[e[a]]<c);do{i--}while(n[e[i]]>c);if(i<a)break;xt(e,a,i)}e[t+1]=e[i],e[i]=s,r-a+1>=i-t?(wt(e,n,a,r),wt(e,n,t,i-1)):(wt(e,n,t,i-1),wt(e,n,a,r))}}function xt(e,n,t){const r=e[n];e[n]=e[t],e[t]=r}function kt(e){return e[0]}function _t(e){return e[1]}function Pt(e,n,t){var r=_(new Set(e.cities.map((function(e){return e.region})))),o=Array(7*n).fill(0).map((function(e){return{name:"",region:"",x:0,y:0}})),a=[420,490,490],i=[490,560,700],s=a[n-3],c=i[n-3],u=70,l=Math.ceil(s/u),d=Math.ceil(c/u),f=l*d,p=Array(f).fill(-1);e.mapPosition=[100,200],e.layout="Portrait";var h=Array(f).fill(0).map((function(e,n){return n}));o.forEach((function(e,n){var r=h[Math.floor(t()*h.length)],o=Math.floor(r/l),a=r%l;e.x=Math.floor(2*a*u),e.y=Math.floor(o*u),o%2===0&&(e.x+=u);var i=2*t()*Math.PI,s=t()*u/2;e.x+=s*Math.cos(i),e.y+=s*Math.sin(i),h=h.filter((function(e){return e!==r})),p[r]=n}));for(var g=Array(o.length).fill(0).map((function(e){return Array(o.length).fill(0)})),y=Array(o.length).fill(0).map((function(e){return Array(o.length).fill(null)})),m=ft.from(o,(function(e){return e.x}),(function(e){return e.y})),v=0;v<m.triangles.length;v+=3){var b=o[m.triangles[v]],w=o[m.triangles[v+1]],x=o[m.triangles[v+2]],k=g[m.triangles[v]][m.triangles[v+1]],P=k?Math.pow(k,2):Math.pow(b.x-w.x,2)+Math.pow(b.y-w.y,2),S=k||(g[m.triangles[v+1]][m.triangles[v]]=g[m.triangles[v]][m.triangles[v+1]]=Math.sqrt(P));k=g[m.triangles[v]][m.triangles[v+2]];var M=k?Math.pow(k,2):Math.pow(b.x-x.x,2)+Math.pow(b.y-x.y,2),C=k||(g[m.triangles[v+2]][m.triangles[v]]=g[m.triangles[v]][m.triangles[v+2]]=Math.sqrt(M));k=g[m.triangles[v+1]][m.triangles[v+2]];var B=k?Math.pow(k,2):Math.pow(w.x-x.x,2)+Math.pow(w.y-x.y,2),R=k||(g[m.triangles[v+2]][m.triangles[v+1]]=g[m.triangles[v+1]][m.triangles[v+2]]=Math.sqrt(B)),A=Math.acos((P+M-B)/(2*S*C)),L=Math.acos((P+B-M)/(2*S*R)),O=Math.PI-A-L,G=105*Math.PI/180;!1!==y[m.triangles[v]][m.triangles[v+1]]&&O<G?(y[m.triangles[v]][m.triangles[v+1]]=!0,y[m.triangles[v+1]][m.triangles[v]]=!0):(y[m.triangles[v]][m.triangles[v+1]]=!1,y[m.triangles[v+1]][m.triangles[v]]=!1),!1!==y[m.triangles[v]][m.triangles[v+2]]&&L<G?(y[m.triangles[v]][m.triangles[v+2]]=!0,y[m.triangles[v+2]][m.triangles[v]]=!0):(y[m.triangles[v]][m.triangles[v+2]]=!1,y[m.triangles[v+2]][m.triangles[v]]=!1),!1!==y[m.triangles[v+1]][m.triangles[v+2]]&&A<G?(y[m.triangles[v+1]][m.triangles[v+2]]=!0,y[m.triangles[v+2]][m.triangles[v+1]]=!0):(y[m.triangles[v+1]][m.triangles[v+2]]=!1,y[m.triangles[v+2]][m.triangles[v+1]]=!1)}for(var j=0,D=1e3,N=0;N<o.length;N++)for(var z=0;z<N;z++)if(y[N][z]){var T=g[N][z];j=Math.max(j,T),D=Math.min(D,T)}var E=5===n?[[s/4,c/4],[s/4,3*c/4],[s/2,c/2],[3*s/4,c/4],[3*s/4,3*c/4]]:4===n?[[s/4,c/4],[s/4,3*c/4],[3*s/4,c/4],[3*s/4,3*c/4]]:[[s/4,c/4],[s/2,c/2],[3*s/4,3*c/4]],K=St(o.map((function(e){return[e.x,e.y]})),n,E,y),I=Array(n).fill(0);o.forEach((function(e,n){e.region=r[K[n]],e.name=Object(we["upperFirst"])(e.region)+" "+(1+I[K[n]]++)}));for(var U=[],W=0;W<o.length;W++)for(var H=0;H<W;H++)if(y[W][H]){var F=o[W],Y=o[H],V=g[W][H];U.push({nodes:[F.name,Y.name],cost:Math.floor(5*V/u)})}return e.cities=o,e.connections=U,e}function St(e,n,t,r){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:100,a=Array(e.length).fill(0),i=Math.ceil(e.length/n),s=!1,c=function(){var r=Array(n).fill(0),c=Array(e.length).fill(0).map((function(e){return Array(n).fill(0)}));e.forEach((function(e,n){var o=null,s=0;t.forEach((function(t,a){var u=Mt(e,t);(null===o||u<o)&&r[a]<i&&(o=u,s=a),c[n][a]=u})),a[n]=s,r[s]++}));var u=Array(t.length).fill(0).map((function(e){return[0,0]})),l=Array(t.length).fill(0);e.forEach((function(e,n){u[a[n]][0]+=e[0],u[a[n]][1]+=e[1],l[a[n]]++})),s=!0,t.forEach((function(e,n){u[n][0]=u[n][0]/l[n],u[n][1]=u[n][1]/l[n],e[0]===u[n][0]&&e[1]===u[n][1]||(s=!1)})),t=u,console.log("iterations",o),console.log("centroids",t),s=s||0===--o};do{c()}while(!s);var u=10;do{console.log("Refining"),s=!0,e.forEach((function(n,o){var i=a[o],c=r[o].some((function(e,n){return e&&i===a[n]}));if(!c){var u=t[i],l=null,d=null;r[o].forEach((function(n,t){if(n){var r=e[t],o=Mt(r,u);(null===l||o<l)&&(l=o,d=t)}})),a[o]=a[d],a[d]=i,s=!1}})),s=s||0===--u}while(!s);return a}function Mt(e,n){return(e[0]-n[0])*(e[0]-n[0])+(e[1]-n[1])*(e[1]-n[1])}var Ct=["limegreen","mediumorchid","red","dodgerblue","yellow","brown"],Bt=[10,7,7,7,6],Rt=[9,6,6,6,5],At=[10,7,7,7,6],Lt=[21,17,17,15,14],Ot=[18,17,17,15,14],Gt=[5,5,5,5,4],jt=[13,13,13,12,11],Dt=[10,22,33,44,54,64,73,82,90,98,105,112,118,124,129,134,138,142,145,148,150,150],Nt=[3,3,4,5,5];function zt(e,n,t,r){var o,a,i=Object(we["cloneDeep"])(Ye);if("original"==n){i=i.slice(8);var s=i.splice(2,1)[0],c=i.pop();i=De(i,t()+""),2==e||3==e?i=i.slice(8):4==e&&(i=i.slice(4)),i.unshift(s),i.push(c),o=[$t(3),$t(4),$t(5),$t(6)],a=[$t(7),$t(8),$t(9),$t(10)]}else{var u=De(i.splice(0,13),t()+""),l=u.splice(0,8);l=l.sort((function(e,n){return e.number-n.number})),o=l.slice(0,4),a=l.slice(4);var d=u.shift(),f=i.pop();i=De(i,t()+""),2==e?(u=u.slice(1),i=De(i.slice(5).concat(u),t()+"")):3==e?(u=u.slice(2),i=De(i.slice(6).concat(u),t()+"")):4==e?(u=u.slice(1),i=De(i.slice(3).concat(u),t()+"")):r&&(i=De(i.concat(u),t()+"")),i.unshift(d),i.push(f)}return{actualMarket:o,futureMarket:a,powerPlantsDeck:i}}function Tt(e,n,t,r,o){var a,i,s,u,l,d,f,p,h=n.fastBid,g=void 0!==h&&h,y=n.map,m=void 0===y?"USA":y,v=n.variant,b=void 0===v?"original":v,w=n.showMoney,x=void 0!==w&&w,k=n.useNewRechargedSetup,S=void 0===k||k,M=n.trackTotalSpent,C=void 0===M||M,B=n.randomizeMap,R=void 0!==B&&B;t=null!==(a=t)&&void 0!==a?a:Math.random().toString();var A=Oe()(t),L="original"==b?ct.find((function(e){return e.name==m})):ut.find((function(e){return e.name==m}));if(!L)throw new Error('Map "'.concat(m,'" not found for variant "').concat(b,'"'));var O,G,j,D=Object(we["cloneDeep"])(L);if(r)j=r,O=j.splice(0,4),G=j.splice(0,4);else if(D.setupDeck){var N=D.setupDeck(e,b,A);O=N.actualMarket,G=N.futureMarket,j=N.powerPlantsDeck}else{var z=zt(e,b,A,S);O=z.actualMarket,G=z.futureMarket,j=z.powerPlantsDeck}var T,E,K,I,U,W,H,F,Y=Object(we["range"])(e).map((function(e){return{id:e,powerPlants:[],coalCapacity:0,coalLeft:0,oilCapacity:0,oilLeft:0,garbageCapacity:0,garbageLeft:0,uraniumCapacity:0,uraniumLeft:0,hybridCapacity:0,hybridLeft:0,money:50,housesLeft:22,cities:[],powerPlantsNotUsed:[],availableMoves:null,lastMove:null,isDropped:!1,isAI:!1,bid:0,passed:!1,skipAuction:!1,citiesPowered:0,resourcesUsed:[],totalIncome:0,totalSpentCities:0,totalSpentConnections:0,totalSpentPlants:0,totalSpentResources:0,usedFreeJump:!1}})),V=Y.length-2,J=Object(we["range"])(e),$=J[0];if(D.resupplyNorth&&(U=D.resupplyNorth[0],W=D.resupplyNorth[1],H=D.resupplyNorth[2]),D.resupply?(T=D.resupply[0],E=D.resupply[1],K=D.resupply[2],I=D.resupply[3]):(T=[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],E=[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],K=[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],I=[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]),"Portrait"==D.layout||R){var q="USA"===D.name&&"recharged"===b;D.viewBox=D.viewBox||[1480,1060],D.adjustRatio=D.adjustRatio||[1,1],D.playerOrderPosition=D.playerOrderPosition||[1160,160],D.cityCountPosition=D.cityCountPosition||[0,0],D.powerPlantMarketPosition=D.powerPlantMarketPosition||[745,0],D.actualMarketWidth=D.actualMarketWidth||430,D.mapPosition=D.mapPosition||[0,0],D.buttonsPosition=D.buttonsPosition||[1305,0],D.playerBoardsPosition=D.playerBoardsPosition||[1105,240],D.roundInfoPosition=D.roundInfoPosition||[20,920],D.supplyPosition=D.supplyPosition||[q?480:675,920]}else D.viewBox=D.viewBox||[1465,860],D.adjustRatio=D.adjustRatio||[1,1],D.playerOrderPosition=D.playerOrderPosition||[1160,140],D.cityCountPosition=D.cityCountPosition||[0,0],D.powerPlantMarketPosition=D.powerPlantMarketPosition||[745,0],D.actualMarketWidth=D.actualMarketWidth||430,D.mapPosition=D.mapPosition||[-10,0],D.buttonsPosition=D.buttonsPosition||[1305,0],D.playerBoardsPosition=D.playerBoardsPosition||[1105,200],D.roundInfoPosition=D.roundInfoPosition||[20,590],D.supplyPosition=D.supplyPosition||[0,720];R?F=Pt(D,Nt[V],A):function(){D.cities=D.cities.map((function(e){return c(c({},e),{},{x:e.x*D.adjustRatio[0],y:e.y*D.adjustRatio[1]})}));var e,n=D.cities.filter((function(e,n){return D.cities.findIndex((function(n){return n.region==e.region}))==n})).map((function(e){return e.region})),t=D.connections.map((function(e){return e.nodes.map((function(e){return D.cities.find((function(n){return n.name==e})).region}))})),r=n.map((function(e){return n.filter((function(n){return e!=n&&t.some((function(t){return t.includes(e)&&t.includes(n)}))}))})),o={},a=P(D.cities);try{for(a.s();!(e=a.n()).done;){var i=e.value;i.island&&void 0===o[i.region]&&(o[i.region]=i.island)}}catch(x){a.e(x)}finally{a.f()}var s=new Set;while(s.size!=Math.min(Nt[V],n.length)){var u=n[Math.floor(A()*n.length)],l=0==s.size||r[n.indexOf(u)].some((function(e){return s.has(e)})),d=l;if(!d&&"UK & Ireland"===D.name){var f=new Set(_(s).map((function(e){return o[e]})));f.has(o[u])||(d=!0)}d||"Australia"!==D.name||(d=!0),d&&(s.add(u),"Italy"===D.name&&s.has("red")&&s.has("green")&&s.has("blue")&&s.clear())}var p=Object(we["cloneDeep"])(D);if(p.cities=p.cities.filter((function(e){return s.has(e.region)})),p.connections=p.connections.filter((function(e){return e.nodes.map((function(e){return D.cities.find((function(n){return n.name==e})).region})).every((function(e){return s.has(e)}))})),F=p,D.regionalPowerPlants){var h,g=P(s);try{for(g.s();!(h=g.n()).done;){var y=h.value,m=D.regionalPowerPlants[y];if(m){var v,b=P(m);try{var w=function(){var e=v.value,n=function(n){var t=n.findIndex((function(n){return n.number===e.number}));-1!==t&&(n[t]=c({},e))};n(O),n(G),n(j)};for(b.s();!(v=b.n()).done;)w()}catch(x){b.e(x)}finally{b.f()}}}}catch(x){g.e(x)}finally{g.f()}}}();var Z=D.startingResources?D.startingResources[0]:24,X=D.startingResources?D.startingResources[1]:18,Q=D.startingResources?D.startingResources[2]:"original"==b?6:9,ee=D.startingResources?D.startingResources[3]:2,ne=D.startingSupply?D.startingSupply[0]:24,te=D.startingSupply?D.startingSupply[1]:24,re=D.startingSupply?D.startingSupply[2]:24,oe=D.startingSupply?D.startingSupply[3]:12,ae=null===(i=D.startingResourcesNorth)||void 0===i?void 0:i[0],ie=null===(s=D.startingResourcesNorth)||void 0===s?void 0:s[1],se=null===(u=D.startingResourcesNorth)||void 0===u?void 0:u[2],ce=ne-Z-(null!==ae&&void 0!==ae?ae:0),ue=te-X-(null!==ie&&void 0!==ie?ie:0),le=re-Q-(null!==se&&void 0!==se?se:0),de=oe-ee,fe=Object(we["cloneDeep"])(null!==(l=D.coalPrices)&&void 0!==l?l:Ae.coal),pe=Object(we["cloneDeep"])(null!==(d=D.oilPrices)&&void 0!==d?d:Ae.oil),he=Object(we["cloneDeep"])(null!==(f=D.garbagePrices)&&void 0!==f?f:Ae.garbage),ge=Object(we["cloneDeep"])(null!==(p=D.uraniumPrices)&&void 0!==p?p:Ae.uranium),ye=D.coalPricesNorth?Object(we["cloneDeep"])(D.coalPricesNorth):void 0,me=D.oilPricesNorth?Object(we["cloneDeep"])(D.oilPricesNorth):void 0,ve=D.garbagePricesNorth?Object(we["cloneDeep"])(D.garbagePricesNorth):void 0,xe="South Africa"==(o||F).name,ke={map:o||F,players:Y,playerOrder:J,currentPlayers:[$],powerPlantsDeck:j,coalSupply:ce,oilSupply:ue,garbageSupply:le,uraniumSupply:de,coalStorage:xe?0:void 0,coalResupply:T,oilResupply:E,garbageResupply:K,uraniumResupply:I,coalMarket:Z,oilMarket:X,garbageMarket:Q,uraniumMarket:ee,uraniumMineMarket:"Australia"==(o||F).name?[2,2,2,2,2,2]:void 0,coalPrices:fe,oilPrices:pe,garbagePrices:he,uraniumPrices:ge,coalMarketNorth:ae,oilMarketNorth:ie,garbageMarketNorth:se,coalResupplyNorth:U,oilResupplyNorth:W,garbageResupplyNorth:H,coalPricesNorth:ye,oilPricesNorth:me,garbagePricesNorth:ve,actualMarket:O,futureMarket:G,chosenPowerPlant:void 0,currentBid:void 0,highestBidders:[],auctioningPlayer:void 0,step:1,phase:be.Auction,options:{fastBid:g,map:m,variant:b,showMoney:x,useNewRechargedSetup:S,trackTotalSpent:C},log:[],hiddenLog:[],seed:t,round:1,auctionSkips:0,citiesToStep2:"Baden-Württemberg"==(o||F).name?Rt[e-2]:"UK & Ireland"==(o||F).name?At[e-2]:"Bremen"==(o||F).name?Gt[e-2]:Bt[e-2],citiesToEndGame:"South Africa"==(o||F).name?Ot[e-2]:"UK & Ireland"==(o||F).name&&2==e?Math.min(Lt[e-2],(o||F).cities.length):"Bremen"==(o||F).name?jt[e-2]:Lt[e-2],resourceResupply:["[".concat(T[V][0],", ").concat(E[V][0],", ").concat(K[V][0],", ").concat(I[V][0],"]"),"[".concat(T[V][1],", ").concat(E[V][1],", ").concat(K[V][1],", ").concat(I[V][1],"]"),"[".concat(T[V][2],", ").concat(E[V][2],", ").concat(K[V][2],", ").concat(I[V][2],"]")],resourceResupplyNorth:U&&W&&H?["[".concat(U[V][0],", ").concat(W[V][0],", ").concat(H[V][0],"]"),"[".concat(U[V][1],", ").concat(W[V][1],", ").concat(H[V][1],"]"),"[".concat(U[V][2],", ").concat(W[V][2],", ").concat(H[V][2],"]")]:void 0,paymentTable:Dt,variant:b,minimunBid:0,plantDiscountActive:"recharged"==b&&"China"!=(o||F).name&&"Russia"!=(o||F).name&&"Baden-Württemberg"!=(o||F).name,discardSmallestPlant:!1,cardsLeft:j.length,nextCardWeak:"recharged"==b,card39Bought:!1,knownPowerPlantDeck:O.concat(G),knownPowerPlantDeckStep3:[],powerPlantDeckAfterStep3:void 0};return ke.log.push({type:"event",event:"Game Start!"}),"Middle East"==ke.map.name&&Ht(ke),ke.players[$].availableMoves=Ne(ke,ke.players[$]),ke}function Et(e,n,t){var r,o=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a=e.players[t],i=null===(r=a.availableMoves)||void 0===r?void 0:r[n.name];switch(lr(e),Ie()(e.currentPlayers.includes(t),"It is not your turn!"),Ie()(i,"You are not allowed to run the command "+n.name),o&&n.name==_e.DiscardPowerPlant&&a.powerPlants[a.powerPlants.length-1].number==n.data||Ie()(i.some((function(e){return Object(we["isEqual"])(e,n.data)})),"Wrong argument for the command "+n.name),n.name){case _e.ChoosePowerPlant:Ge(n),e.chosenPowerPlant=e.actualMarket.find((function(e){return e.number===n.data})),e.auctioningPlayer=a.id,39==n.data&&(e.card39Bought=!0),"recharged"==e.options.variant&&e.plantDiscountActive&&e.chosenPowerPlant.number==e.actualMarket[0].number?(e.minimunBid=1,e.plantDiscountActive=!1,n.usedPlantDiscount=!0):e.minimunBid=n.data;var s=e.players.filter((function(e){return!e.skipAuction&&!e.isDropped}));if(1==s.length){e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," chooses Power Plant ").concat(n.data,"."),pretty:"".concat(Zt(a)," chooses Power Plant <b>").concat(n.data,"</b>.")});var c=s[0];rr(e,c,e.minimunBid),1==e.round&&or(e),(ke(e,c)<=3||2==e.players.length&&4==ke(e,c))&&("China"==e.map.name&&3!=e.step||Wt(e),tr(e))}else e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," chooses Power Plant ").concat(n.data," to initiate an auction."),pretty:"".concat(Zt(a)," chooses Power Plant <b>").concat(n.data,"</b> to initiate an auction.")}),e.options.fastBid&&(e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].skipAuction&&!e.players[n].isDropped})));break;case _e.Bid:Ge(n),e.options.fastBid?(e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," bids $").concat(n.data,"."),pretty:"".concat(Zt(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),dr(e,a,n.data)):(e.currentBid=a.bid=n.data,e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," bids $").concat(n.data,"."),pretty:"".concat(Zt(a),' bids <span style="color: green">$').concat(n.data,"</span>.")}),sr(e));break;case _e.Pass:switch(Ge(n),e.options.fastBid&&e.phase==be.Auction&&e.chosenPowerPlant||e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," passes."),pretty:"".concat(Zt(a)," passes.")}),e.phase){case be.Auction:var u;if(void 0==e.chosenPowerPlant)if(a.skipAuction=!0,e.auctionSkips++,1==e.auctionSkips&&"Russia"==e.map.name&&(null===(u=e.actualMarket)||void 0===u?void 0:u.length)>0&&(e.log.push({type:"event",event:"First pass, removing lowest numbered Power Plant (".concat(e.actualMarket[0].number,").")}),e.actualMarket.shift(),Wt(e)),e.players.some((function(e){return!e.skipAuction&&!e.isDropped})))ur(e);else{if(e.auctionSkips==e.players.length&&"Baden-Württemberg"==e.map.name){for(var l=[],d=0;d<2&&e.actualMarket.length>0;d++)l.push(e.actualMarket[0].number),e.actualMarket.shift(),Wt(e);e.log.push({type:"event",event:"Everyone passed, removing the two lowest numbered Power Plants (".concat(l.join(", "),").")})}else e.auctionSkips==e.players.length&&"original"==e.options.variant&&"China"!=e.map.name&&"Russia"!=e.map.name&&(e.log.push({type:"event",event:"Everyone passed, removing lowest numbered Power Plant (".concat(e.actualMarket[0].number,").")}),e.actualMarket.shift(),Wt(e));tr(e)}else if(e.options.fastBid)e.hiddenLog.push({type:"move",player:t,move:n,simple:"".concat(a.name," passes."),pretty:"".concat(Zt(a)," passes.")}),dr(e,a,0);else{a.passed=!0;var f=e.players.filter((function(e){return!e.passed&&!e.skipAuction&&!e.isDropped}));if(1==f.length){var p=f[0];rr(e,p,p.bid),(ke(e,p)>4||e.players.length>2&&ke(e,p)>3)&&!p.isDropped?ar(e,p.id):("China"==e.map.name&&3!=e.step||Wt(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),ur(e,!0)):tr(e))}else sr(e)}break;case be.Resources:if("India"==e.map.name&&e.chosenResource?e.chosenResource=void 0:a.passed=!0,"Korea"==e.map.name&&(e.chosenSide=void 0),0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length?(e.players.forEach((function(e){e.passed=e.isDropped})),e.phase=be.Building,"India"==e.map.name&&(e.citiesBuiltInCurrentRound=0),ar(e,e.playerOrder[e.players.length-1]),e.players[e.currentPlayers[0]].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[e.currentPlayers[0]].passed=!0,cr(e))):cr(e),"India"==e.map.name)while(e.players[e.currentPlayers[0]].passed)cr(e);break;case be.Building:if(a.passed=!0,0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var h=Math.max.apply(Math,_(e.players.map((function(e){return e.cities.length}))));if(1==e.step){var g=e.players.reduce((function(e,n){return e+n.cities.length}),0),y=g>=e.map.cities.length;if((h>=e.citiesToStep2||y)&&"Middle East"!=e.map.name){var m=e.actualMarket.shift();if(e.log.push({type:"event",event:"Starting Step 2, Power Plant ".concat(null===m||void 0===m?void 0:m.number," discarded.")}),e.step=2,"Spain & Portugal"==e.map.name&&(e.powerPlantsDeck.find((function(e){return 18==e.number}))||(e.powerPlantsDeck.unshift($t(27)),e.powerPlantsDeck.unshift($t(22)),e.powerPlantsDeck.unshift($t(18)))),"Europe"==e.map.name){var v=[].concat(_(e.actualMarket),_(e.futureMarket));v.sort((function(e,n){return e.number-n.number})),e.actualMarket=v.slice(0,4),e.futureMarket=v.slice(4)}else Wt(e)}}h>=e.citiesToEndGame?(e.phase=be.GameEnd,e.currentPlayers=[],Qt(e),"India"==e.map.name&&e.citiesBuiltInCurrentRound>2*e.players.length&&e.players.forEach((function(n){var t=e.paymentTable[n.citiesPowered]-3*n.cities.length;n.money+=Math.max(t,0),n.totalIncome+=Math.max(t,0)})),e.uraniumMineMarket&&_(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Ce(e,t);if(r.mines>0&&r.income>0){var o,a=null!==(o=t.name)&&void 0!==o?o:"Player ".concat(t.id);e.log.push({type:"event",event:"".concat(a," sells uranium for ").concat(r.income," Elektro (").concat(r.cities," cities × $").concat(r.price,", ").concat(r.mines," mine(s)).")})}})),e.log.push({type:"event",event:"Game Ended!"})):(e.players.forEach((function(e){e.passed=e.isDropped,e.powerPlantsNotUsed=e.powerPlants.map((function(e){return e.number}))})),e.phase=be.Bureaucracy,e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].passed&&!e.players[n].isDropped})),"India"==e.map.name&&(e.players.forEach((function(n){return n.targetCitiesPowered=er(e,n)})),e.citiesBuiltInCurrentRound>2*e.players.length&&e.log.push({type:"event",event:"Power outage! ".concat(e.citiesBuiltInCurrentRound," built this round, which is more than twice the number of players.")})),"China"==e.map.name&&e.step<=2?Vt(e):0==e.futureMarket.length&&(e.step=3,Yt(e)))}else cr(e);break;case be.Bureaucracy:a.passed=!0;var b=Math.min(a.cities.length,a.citiesPowered),w=e.paymentTable[b];if("India"==e.map.name&&e.citiesBuiltInCurrentRound>2*e.players.length&&(w-=3*a.cities.length,w=Math.max(w,0)),a.money+=w,e.options.trackTotalSpent&&(a.totalIncome+=w),a.citiesPowered=0,"India"==e.map.name&&(a.targetCitiesPowered=0),0==e.players.filter((function(e){return!e.passed&&!e.isDropped})).length){var x,k,P,S,M,C,B,R;if(e.uraniumMineMarket){_(e.playerOrder).reverse().forEach((function(n){var t=e.players[n],r=Ce(e,t);if(r.mines>0){var o,a=null!==(o=t.name)&&void 0!==o?o:"Player ".concat(t.id);e.log.push({type:"event",event:r.income>0?"".concat(a," sells uranium for ").concat(r.income," Elektro (").concat(r.cities," cities × $").concat(r.price,", ").concat(r.mines," mine(s))."):"".concat(a,"'s uranium mines earn nothing (market full).")})}}));var A=Be(e,e.map.uraniumMineResupply[e.players.length-2][e.step-1]);A>0&&e.log.push({type:"event",event:"Removing ".concat(A," uranium from the mine market (cheapest slots).")})}var L,O,G=(null!==(x=null===(k=e.coalPrices)||void 0===k?void 0:k.length)&&void 0!==x?x:Ae[me.Coal].length)-e.coalMarket,j=(null!==(P=null===(S=e.oilPrices)||void 0===S?void 0:S.length)&&void 0!==P?P:Ae[me.Oil].length)-e.oilMarket,D=(null!==(M=null===(C=e.garbagePrices)||void 0===C?void 0:C.length)&&void 0!==M?M:Ae[me.Garbage].length)-e.garbageMarket,N=(null!==(B=null===(R=e.uraniumPrices)||void 0===R?void 0:R.length)&&void 0!==B?B:Ae[me.Uranium].length)-e.uraniumMarket,z=0,T=0,E=0;if(e.coalResupplyNorth){var K=e.coalPricesNorth.length-e.coalMarketNorth,I=e.oilPricesNorth.length-e.oilMarketNorth,U=e.garbagePricesNorth.length-e.garbageMarketNorth;z=Math.min(e.coalSupply,e.coalResupplyNorth[e.players.length-2][e.step-1],K),e.coalMarketNorth+=z,e.coalSupply-=z,T=Math.min(e.oilSupply,e.oilResupplyNorth[e.players.length-2][e.step-1],I),e.oilMarketNorth+=T,e.oilSupply-=T,E=Math.min(e.garbageSupply,e.garbageResupplyNorth[e.players.length-2][e.step-1],U),e.garbageMarketNorth+=E,e.garbageSupply-=E}if(void 0!==e.coalStorage){var W=Math.min(e.coalResupply[e.players.length-2][e.step-1],G),H=Math.min(e.coalStorage,W),F=Math.min(e.coalSupply,W-H);L=H+F,e.coalMarket+=L,e.coalStorage-=H,e.coalSupply-=F}else L=Math.min(e.coalSupply,e.coalResupply[e.players.length-2][e.step-1],G),e.coalMarket+=L,e.coalSupply-=L;if("Middle East"==e.map.name){0==e.oilMarket&&(e.oilPrices=Ae[me.Oil]),O=e.oilResupply[e.players.length-2][e.step-1];for(var Y=0;Y<O;Y++)e.oilSupply>0?(e.oilMarket++,e.oilSupply--):(e.oilPrices.pop(),e.oilPrices.unshift(1))}else O=Math.min(e.oilSupply,e.oilResupply[e.players.length-2][e.step-1],j),e.oilMarket+=O,e.oilSupply-=O;var V=Math.min(e.garbageSupply,e.garbageResupply[e.players.length-2][e.step-1],D);e.garbageMarket+=V,e.garbageSupply-=V;var J=0;if(("recharged"!=e.options.variant||"Germany"!=e.options.map&&"Italy"!=e.options.map||!e.card39Bought)&&(J=Math.min(e.uraniumSupply,e.uraniumResupply[e.players.length-2][e.step-1],N),e.uraniumMarket+=J,e.uraniumSupply-=J),e.coalResupplyNorth?e.log.push({type:"event",event:"Resupplying resources — North: [".concat(z,", ").concat(T,", ").concat(E,"], South: [").concat(L,", ").concat(O,", ").concat(V,", ").concat(J,"].")}):e.log.push({type:"event",event:"Resupplying resources: [".concat(L,", ").concat(O,", ").concat(V,", ").concat(J,"].")}),"Middle East"==e.map.name&&2==e.step&&e.futureMarket.length>0){var $=e.futureMarket.pop();e.log.push({type:"event",event:"Putting Power Plant ".concat($.number," on the bottom of the deck.")}),e.powerPlantsDeck.push($),Wt(e),$=e.futureMarket.length?e.futureMarket.pop():e.actualMarket.pop(),e.log.push({type:"event",event:"Putting Power Plant ".concat($.number," on the bottom of the deck.")}),e.powerPlantsDeck.push($),Wt(e)}else if(e.futureMarket.length>0){if("Benelux"==e.map.name&&("original"==e.options.variant||e.discardSmallestPlant)){var q=e.actualMarket[0];e.log.push({type:"event",event:"Removing smallest plant, Power Plant ".concat(q.number,".")}),e.actualMarket.shift(),Wt(e),e.discardSmallestPlant=!1}var Z;if("Quebec"==e.map.name){var X=e.futureMarket.filter((function(e){return e.type!=ve.Wind}));if(Z=X.pop(),Z)e.futureMarket=e.futureMarket.filter((function(e){var n;return e.number!=(null===(n=Z)||void 0===n?void 0:n.number)}));else{var Q=e.actualMarket.filter((function(e){return e.type!=ve.Wind}));Z=Q.pop(),Z&&(e.actualMarket=e.actualMarket.filter((function(e){var n;return e.number!=(null===(n=Z)||void 0===n?void 0:n.number)})))}}else Z=e.futureMarket.pop();Z&&(e.log.push({type:"event",event:"Putting Power Plant ".concat(Z.number," on the bottom of the deck.")}),e.powerPlantsDeck.push(Z),Wt(e))}else e.actualMarket.length>0&&("China"!=e.map.name||3==e.step)&&(e.log.push({type:"event",event:"Discarding Power Plant ".concat(e.actualMarket[0].number,".")}),e.actualMarket.shift(),Wt(e));e.round++,"Baden-Württemberg"!=e.map.name&&or(e),e.players.forEach((function(e){e.passed=e.isDropped})),e.auctionSkips=0,e.actualMarket.length>0?(e.phase=be.Auction,0==e.futureMarket.length&&"China"!=e.map.name&&(e.step=3,Yt(e)),e.plantDiscountActive="recharged"==e.options.variant&&"China"!=e.map.name&&"Russia"!=e.map.name&&"Baden-Württemberg"!=e.map.name,ar(e,e.playerOrder[0])):tr(e)}else e.currentPlayers=e.playerOrder.filter((function(n){return!e.players[n].passed&&!e.players[n].isDropped}));break}break;case _e.DiscardPowerPlant:Ge(n),n.extra||e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discards Power Plant ").concat(n.data,"."),pretty:"".concat(Zt(a)," discards Power Plant <b>").concat(n.data,"</b>.")});var ee=a.powerPlants.find((function(e){return e.number==n.data}));if(a.powerPlants=a.powerPlants.filter((function(e){return e.number!=n.data})),Ut(a),n.extra){var ne=[];switch(ee.type){case ve.Coal:e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],ne.push(n.extra[0]+" Coal");break;case ve.Oil:e.oilSupply+=n.extra[0],a.oilLeft-=n.extra[0],ne.push(n.extra[0]+" Oil");break;case ve.Garbage:e.garbageSupply+=n.extra[0],a.garbageLeft-=n.extra[0],ne.push(n.extra[0]+" Garbage");break;case ve.Uranium:e.uraniumSupply+=n.extra[0],a.uraniumLeft-=n.extra[0],ne.push(n.extra[0]+" Uranium");break;case ve.Hybrid:n.extra[0]>0&&(e.coalSupply+=n.extra[0],a.coalLeft-=n.extra[0],ne.push(n.extra[0]+" Coal")),n.extra[1]>0&&(e.oilSupply+=n.extra[1],a.oilLeft-=n.extra[1],ne.push(n.extra[1]+" Oil"));break}e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discards Power Plant ").concat(n.data," and ").concat(ne.join(", "),"."),pretty:"".concat(Zt(a)," discards Power Plant <b>").concat(n.data,"</b> and ").concat(ne.join(", "),".")}),"China"==e.map.name&&3!=e.step||Wt(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?ur(e,!0):tr(e)}else{var te=[],re=a.hybridCapacity>0?Math.max(0,a.oilLeft-a.oilCapacity):0;a.coalCapacity+a.hybridCapacity<a.coalLeft+re&&te.push(me.Coal),re=a.hybridCapacity>0?Math.max(0,a.coalLeft-a.coalCapacity):0,a.oilCapacity+a.hybridCapacity<a.oilLeft+re&&te.push(me.Oil),a.garbageLeft>a.garbageCapacity&&(e.garbageSupply+=a.garbageLeft-a.garbageCapacity,a.garbageLeft=a.garbageCapacity),a.uraniumLeft>a.uraniumCapacity&&(e.uraniumSupply+=a.uraniumLeft-a.uraniumCapacity,a.uraniumLeft=a.uraniumCapacity),1==te.length&&(te[0]==me.Coal?(e.coalSupply+=a.coalLeft-a.coalCapacity,a.coalLeft=a.coalCapacity):te[0]==me.Oil&&(e.oilSupply+=a.oilLeft-a.oilCapacity,a.oilLeft=a.oilCapacity),te.pop()),0==te.length&&("China"==e.map.name&&3!=e.step||Wt(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?ur(e,!0):tr(e))}break;case _e.DiscardResources:Ge(n),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," discarded a ").concat(n.data,"."),pretty:"".concat(Zt(a)," discarded a <b>").concat(n.data,"</b>.")}),n.data==me.Coal?(a.coalLeft--,e.coalSupply++):n.data==me.Oil&&(a.oilLeft--,e.oilSupply++);var oe=[],ae=a.hybridCapacity>0?Math.max(0,a.oilLeft-a.oilCapacity):0;a.coalCapacity+a.hybridCapacity<a.coalLeft+ae&&oe.push(me.Coal),ae=a.hybridCapacity>0?Math.max(0,a.coalLeft-a.coalCapacity):0,a.oilCapacity+a.hybridCapacity<a.oilLeft+ae&&oe.push(me.Oil),1==oe.length&&(oe[0]==me.Coal?a.coalLeft--:oe[0]==me.Oil&&a.oilLeft--,oe.pop()),0==oe.length&&("China"==e.map.name&&3!=e.step||Wt(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?ur(e,!0):tr(e));break;case _e.BuyResource:Ge(n),e.chosenResource=n.data.resource,n.data.side&&(e.chosenSide=n.data.side);var ie,se="north"===n.data.side;switch(n.data.resource){case me.Coal:if(se){var ce=e.coalPricesNorth;ie=ce[ce.length-e.coalMarketNorth],a.coalLeft++,e.coalMarketNorth--}else if(n.data.fromStorage)ie=8,a.coalLeft++,e.coalStorage--;else if(0==e.coalMarket)ie=8,a.coalLeft++,e.coalSupply--,n.fromSupply=!0;else{var ue,le=null!==(ue=e.coalPrices)&&void 0!==ue?ue:Ae[me.Coal];ie=le[le.length-e.coalMarket],a.coalLeft++,e.coalMarket--}break;case me.Oil:if(se){var de=e.oilPricesNorth;ie=de[de.length-e.oilMarketNorth],a.oilLeft++,e.oilMarketNorth--}else{var fe,pe=null!==(fe=e.oilPrices)&&void 0!==fe?fe:Ae[me.Oil];ie=pe[pe.length-e.oilMarket],a.oilLeft++,e.oilMarket--}break;case me.Garbage:if(se){var he=e.garbagePricesNorth;ie=he[he.length-e.garbageMarketNorth],a.garbageLeft++,e.garbageMarketNorth--}else{var ge,ye=null!==(ge=e.garbagePrices)&&void 0!==ge?ge:Ae[me.Garbage];if(ie=ye[ye.length-e.garbageMarket],"Central Europe"==e.map.name){var xe=a.cities.filter((function(e){return"Wien"==e.name}));(null===xe||void 0===xe?void 0:xe.length)>0&&ie--}a.garbageLeft++,e.garbageMarket--}break;case me.Uranium:var Pe,Se=null!==(Pe=e.uraniumPrices)&&void 0!==Pe?Pe:Ae[me.Uranium];ie=Se[Se.length-e.uraniumMarket],a.uraniumLeft++,e.uraniumMarket--;break}a.money-=ie,e.options.trackTotalSpent&&(a.totalSpentResources+=ie),e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," buys ").concat(n.data.resource," for $").concat(ie,"."),pretty:"".concat(Zt(a)," buys <b>").concat(n.data.resource,'</b> for <span style="color: green">$').concat(ie,"</span>.")});break;case _e.Build:Ge(n);var Me=!1;if("Japan"===e.map.name&&!a.usedFreeJump&&a.cities.length>=1)if(1===e.round&&e.map.startingCities){var Re=new Set(e.map.startingCities);Re.has(n.data.name)&&(Me=!0)}else n.data.freeJump&&(Me=!0);var Le=e.players.filter((function(e){return e.cities.find((function(e){return e.name==n.data.name}))})).length;if(a.cities.push({name:n.data.name,position:Le}),a.money-=n.data.price,e.options.trackTotalSpent){var Oe=e.map.cities.find((function(e){return e.name==n.data.name}));Oe.singleOccupancy?a.totalSpentConnections+=n.data.price:(a.totalSpentCities+=10+5*Le,a.totalSpentConnections+=n.data.price-(10+5*Le))}e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," builds on ").concat(n.data.name," for $").concat(n.data.price,"."),pretty:"".concat(Zt(a)," builds on <b>").concat(n.data.name,'</b> for <span style="color: green">$').concat(n.data.price,"</span>.")}),Me&&(a.usedFreeJump=!0),"India"==e.map.name&&e.citiesBuiltInCurrentRound++,"original"==e.options.variant&&e.actualMarket.length>0&&a.cities.length>=e.actualMarket[0].number&&"China"!=e.map.name&&"Russia"!=e.map.name&&"Baden-Württemberg"!=e.map.name&&(e.actualMarket.shift(),Wt(e));break;case _e.UsePowerPlant:Ge(n),a.powerPlantsNotUsed=a.powerPlantsNotUsed.filter((function(e){return e!=n.data.powerPlant})),n.data.resourcesSpent.forEach((function(n){switch(n){case me.Coal:a.coalLeft--,void 0!==e.coalStorage?e.coalStorage++:e.coalSupply++;break;case me.Oil:a.oilLeft--,e.oilSupply++;break;case me.Garbage:a.garbageLeft--,e.garbageSupply++;break;case me.Uranium:a.uraniumLeft--,e.uraniumSupply++;break}})),a.citiesPowered+=n.data.citiesPowered,e.log.push({type:"move",player:t,move:n,simple:"".concat(a.name," uses Power Plant ").concat(n.data.powerPlant,"."),pretty:"".concat(Zt(a)," uses Power Plant <b>").concat(n.data.powerPlant,"</b>.")});break;case _e.Undo:Ge(n);var je=a.lastMove;switch(null===je||void 0===je?void 0:je.name){case _e.ChoosePowerPlant:39==je.data&&(e.card39Bought=!1),je.usedPlantDiscount&&(e.plantDiscountActive=!0),e.chosenPowerPlant=void 0,e.auctioningPlayer=void 0,e.currentPlayers=[a.id],e.log.pop();break;case _e.BuyResource:var De,ze="north"===je.data.side;switch(je.data.resource){case me.Coal:if(ze){a.coalLeft--,e.coalMarketNorth++;var Te=e.coalPricesNorth;De=Te[Te.length-e.coalMarketNorth]}else if(je.data.fromStorage)De=8,a.coalLeft--,e.coalStorage++;else if(je.fromSupply)De=8,a.coalLeft--,e.coalSupply++;else{var Ee;a.coalLeft--,e.coalMarket++;var Ke=null!==(Ee=e.coalPrices)&&void 0!==Ee?Ee:Ae[me.Coal];De=Ke[Ke.length-e.coalMarket]}break;case me.Oil:if(ze){a.oilLeft--,e.oilMarketNorth++;var Ue=e.oilPricesNorth;De=Ue[Ue.length-e.oilMarketNorth]}else{var We;a.oilLeft--,e.oilMarket++;var He=null!==(We=e.oilPrices)&&void 0!==We?We:Ae[me.Oil];De=He[He.length-e.oilMarket]}break;case me.Garbage:if(ze){a.garbageLeft--,e.garbageMarketNorth++;var Fe=e.garbagePricesNorth;De=Fe[Fe.length-e.garbageMarketNorth]}else{var Ye;a.garbageLeft--,e.garbageMarket++;var Ve=null!==(Ye=e.garbagePrices)&&void 0!==Ye?Ye:Ae[me.Garbage];if(De=Ve[Ve.length-e.garbageMarket],"Central Europe"==e.map.name){var Je=a.cities.filter((function(e){return"Wien"==e.name}));(null===Je||void 0===Je?void 0:Je.length)>0&&De--}}break;case me.Uranium:var $e;a.uraniumLeft--,e.uraniumMarket++;var qe=null!==($e=e.uraniumPrices)&&void 0!==$e?$e:Ae[me.Uranium];De=qe[qe.length-e.uraniumMarket];break}if(a.money+=De,e.options.trackTotalSpent&&(a.totalSpentResources-=De),"India"==e.map.name&&(e.chosenResource=void 0),e.log.pop(),"Korea"==e.map.name&&e.chosenSide){for(var Ze=!1,Xe=e.log.length-1;Xe>=0;Xe--){var Qe=e.log[Xe];if("move"===Qe.type){Ze=Qe.player===t&&Qe.move.name===_e.BuyResource;break}}Ze||(e.chosenSide=void 0)}break;case _e.Build:var en,nn,tn=!1;if("Japan"===e.map.name&&a.usedFreeJump)(1===e.round&&a.cities.length>=2&&null!==(en=null===(nn=e.map.startingCities)||void 0===nn?void 0:nn.includes(je.data.name))&&void 0!==en&&en||je.data.freeJump)&&(tn=!0);a.cities.pop(),a.money+=je.data.price;var rn=e.players.filter((function(e){return e.cities.find((function(e){return e.name==je.data.name}))})).length;e.options.trackTotalSpent&&(a.totalSpentCities-=10+5*rn,a.totalSpentConnections-=je.data.price-(10+5*rn)),e.log.pop(),"India"==e.map.name&&e.citiesBuiltInCurrentRound--,tn&&(a.usedFreeJump=!1);break;case _e.UsePowerPlant:a.powerPlantsNotUsed.push(je.data.powerPlant),je.data.resourcesSpent.forEach((function(n){switch(n){case me.Coal:a.coalLeft++,e.coalSupply--;break;case me.Oil:a.oilLeft++,e.oilSupply--;break;case me.Garbage:a.garbageLeft++,e.garbageSupply--;break;case me.Uranium:a.uraniumLeft++,e.uraniumSupply--;break}})),a.citiesPowered-=je.data.citiesPowered;var on=e.log.slice().reverse(),an=e.log.length-on.findIndex((function(e){return"move"==e.type&&e.player==a.id}))-1;e.log.splice(an,1);break}}if(a.availableMoves=null,n.name==_e.Undo){var sn=e.log.slice().reverse(),cn=sn.find((function(e){return"move"==e.type&&e.player==a.id}));a.lastMove=null===cn||void 0===cn?void 0:cn.move}else a.lastMove=n;return e.cardsLeft=e.powerPlantsDeck.length,e.nextCardWeak="recharged"==e.options.variant&&e.cardsLeft>0&&e.powerPlantsDeck[0].number<=15,e.currentPlayers.forEach((function(n){return e.players[n].availableMoves=Ne(e,e.players[n])})),e}function Kt(e){return e.phase==be.GameEnd}function It(e,n){var t=qt(e),r=Object(we["cloneDeep"])(t);void 0!=n&&"secret"==e.seed&&e.knownPowerPlantDeck&&(r.map=e.map,r.powerPlantsDeck=Object(we["cloneDeep"])(e.knownPowerPlantDeck),r.actualMarket=r.powerPlantsDeck.splice(0,4),r.futureMarket=r.powerPlantsDeck.splice(0,4),r.players[r.currentPlayers[0]].availableMoves=Ne(r,r.players[r.currentPlayers[0]]),r.powerPlantDeckAfterStep3=e.knownPowerPlantDeckStep3,r.knownPowerPlantDeck=r.actualMarket.concat(r.futureMarket));var o,a=null!=n?e.log.slice(0,n):e.log,i=P(a);try{for(i.s();!(o=i.n()).done;){var s=o.value;switch(s.type){case"event":if(s.event.endsWith("was dropped")){var c=+s.event.split(" ")[1];r.players[c].isDropped=!0}break;case"move":Et(r,s.move,s.player,!0);break}}}catch(u){i.e(u)}finally{i.f()}return r}function Ut(e){e.coalCapacity=e.oilCapacity=e.garbageCapacity=e.uraniumCapacity=e.hybridCapacity=0,e.powerPlants.forEach((function(n){switch(n.type){case ve.Coal:e.coalCapacity+=2*n.cost;break;case ve.Oil:e.oilCapacity+=2*n.cost;break;case ve.Garbage:n.storage?e.garbageCapacity+=n.storage:e.garbageCapacity+=2*n.cost;break;case ve.Uranium:e.uraniumCapacity+=2*n.cost;break;case ve.Hybrid:e.hybridCapacity+=2*n.cost;break}}))}function Wt(e){var n=e.powerPlantsDeck.shift();if(n){if(3==e.step?e.knownPowerPlantDeckStep3&&e.knownPowerPlantDeckStep3.push(n):e.knownPowerPlantDeck&&e.knownPowerPlantDeck.push(n),"original"==e.options.variant&&"China"!=e.map.name){var t=Math.max.apply(Math,_(e.players.map((function(e){return e.cities.length}))));while(n.number<=t){var r;if(e.log.push({type:"event",event:"Power plant ".concat(null===(r=n)||void 0===r?void 0:r.number," discarded.")}),!(e.powerPlantsDeck.length>0))break;n=e.powerPlantsDeck.shift(),3==e.step?e.knownPowerPlantDeckStep3&&e.knownPowerPlantDeckStep3.push(n):e.knownPowerPlantDeck&&e.knownPowerPlantDeck.push(n)}}var o=!1;if(99==n.number){if(e.powerPlantDeckAfterStep3?e.powerPlantsDeck=e.powerPlantDeckAfterStep3:"China"==e.map.name?e.step=3:e.powerPlantsDeck=De(e.powerPlantsDeck,e.seed),e.phase!=be.Auction)if("Middle East"==e.map.name&&1==e.step){var a=[].concat(_(e.actualMarket),_(e.futureMarket),[n]);a.sort((function(e,n){return e.number-n.number})),e.actualMarket=a.slice(0,4),e.futureMarket=a.slice(4),Ft(e),o=!0}else{"UK & Ireland"==e.map.name&&1==e.step&&(e.log.push({type:"event",event:"Starting Step 2 (Step 3 card drawn before Step 2 threshold)."}),e.step=2);var i=e.actualMarket.shift();e.log.push({type:"event",event:"Step 3 will begin next phase, Power Plant ".concat(null===i||void 0===i?void 0:i.number," discarded.")});var s=[].concat(_(e.actualMarket),_(e.futureMarket));s.sort((function(e,n){return e.number-n.number})),e.actualMarket=s,e.futureMarket=[]}}else{if(e.plantDiscountActive&&n.number<e.actualMarket[0].number)return e.log.push({type:"event",event:"Power Plant ".concat(n.number," drawn from the deck and discarded.")}),e.plantDiscountActive=!1,void Wt(e);e.log.push({type:"event",event:"Power Plant ".concat(n.number," drawn from the deck.")})}if("China"==e.map.name&&n.type!=ve.Step3){var c=[].concat(_(e.actualMarket),[n]);c.sort((function(e,n){return e.number-n.number})),e.actualMarket=c}else if(!o){var u=[].concat(_(e.actualMarket),_(e.futureMarket),[n]);u.sort((function(e,n){return e.number-n.number})),0==e.futureMarket.length?"Russia"==e.map.name?(e.actualMarket=u.slice(0,4),e.futureMarket=[]):(e.actualMarket=u.slice(0,6),e.futureMarket=[]):"Russia"==e.map.name?(e.actualMarket=u.slice(0,3),e.futureMarket=u.slice(3)):"Benelux"==e.map.name&&u[4].type==ve.Wind?(e.actualMarket=u.slice(0,5),e.futureMarket=u.slice(5)):(e.actualMarket=u.slice(0,4),e.futureMarket=u.slice(4)),"Middle East"==e.map.name&&1==e.step&&Ht(e)}}}function Ht(e){var n=e.actualMarket.find((function(e){return e.type==ve.Garbage||e.type==ve.Uranium})),t=function(){Jt(e,n),[6,11,14].includes(n.number)?e.log.push({type:"event",event:"Removing Power Plant ".concat(n.number," from game.")}):(e.powerPlantsDeck.push(n),e.log.push({type:"event",event:"Sending Power Plant ".concat(n.number," to the bottom of the deck.")}));var t=e.futureMarket.filter((function(e){return e.type!=ve.Garbage&&e.type!=ve.Uranium})),r=t.length>0?t[0].number:100;if(0==e.powerPlantsDeck.filter((function(e){return e.type!=ve.Garbage&&e.type!=ve.Uranium||e.number>r})).length)return e.log.push({type:"event",event:"No suitable power plants available to draw."}),"break";Wt(e),n=e.actualMarket.find((function(e){return e.type==ve.Garbage||e.type==ve.Uranium}))};while(n){var r=t();if("break"===r)break}}function Ft(e){var n=e.futureMarket.pop();e.powerPlantsDeck=De(e.powerPlantsDeck,e.seed),e.powerPlantsDeck.push(n),Wt(e),e.log.push({type:"event",event:"Step 2 will begin next phase, discarding two power plants."}),e.step=2;var t=e.actualMarket.shift();t&&(e.log.push({type:"event",event:"Power Plant ".concat(t.number," discarded to start step 2.")}),Wt(e));var r=e.actualMarket.shift();r&&(e.log.push({type:"event",event:"Power Plant ".concat(r.number," discarded to start step 2.")}),Wt(e))}function Yt(e){if("Australia"===e.map.name&&(!e.coalPrices||3!==e.coalPrices[0])){var n=[3,3,3,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8,9,9,9,10,10,10];e.coalPrices=[].concat(n),e.oilPrices=[].concat(n),e.garbagePrices=[].concat(n),e.log.push({type:"event",event:"CO2 tax (Step 3): the $1 and $2 resource spaces close; the six cheapest tokens of each resource move to the new $9 and $10 spaces."})}}function Vt(e){var n=0;2==e.players.length||3==e.players.length?n=1:4==e.players.length||5==e.players.length?n=2:6==e.players.length&&(n=3);for(var t=e.actualMarket.length,r=e.players.length-1,o=Math.max(n,r-t),a=0;a<o;a++){if(3==e.step)break;Wt(e)}while(2==e.players.length&&e.actualMarket.length<2&&3!=e.step)Wt(e);if(3==e.step){e.actualMarket=e.actualMarket.filter((function(e){return e.type!=ve.Step3}));while(e.actualMarket.length<4&&e.powerPlantsDeck.length>0)Wt(e)}else{var i=Math.max(2,e.players.length-1);while(e.actualMarket.length>i)e.actualMarket.shift()}}function Jt(e,n){e.actualMarket.splice(e.actualMarket.findIndex((function(e){return e.number==n.number})),1)}function $t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"India"==n?Ve.find((function(n){return n.number==e})):Ye.find((function(n){return n.number==e}))}function qt(e){var n=Tt(e.players.length,e.options,e.seed);return n.players.forEach((function(n,t){n.name=e.players[t].name,n.isAI=e.players[t].isAI})),n}function Zt(e){return'<span style="background-color: '.concat(Ct[e.id],'; font-weight: bold; padding: 0 3px;">').concat(e.name,"</span>")}function Xt(e){return Object(we["cloneDeep"])(e.players).sort((function(e,n){return e.citiesPowered==n.citiesPowered?e.money==n.money?e.cities.length-n.cities.length:e.money-n.money:e.citiesPowered-n.citiesPowered})).reverse()}function Qt(e){e.players.forEach((function(n){n.citiesPowered=er(e,n)}))}function er(e,n){for(var t=n.powerPlants.filter((function(n){return!xe(e,n)})),r=[],o=function(e){var n=[];t.forEach((function(t,r){e&Math.pow(2,r)&&n.push(t)})),r.push(n)},a=0;a<Math.pow(2,t.length);a++)o(a);var i=0;return r.forEach((function(e){if(nr(n,e)){var t=e.map((function(e){return e.citiesPowered})).reduce((function(e,n){return e+n}),0);i=Math.max(i,t)}})),Math.min(n.cities.length,i)}function nr(e,n){var t=n.filter((function(e){return e.type==ve.Coal})).map((function(e){return e.cost})).reduce((function(e,n){return e+n}),0),r=n.filter((function(e){return e.type==ve.Oil})).map((function(e){return e.cost})).reduce((function(e,n){return e+n}),0),o=n.filter((function(e){return e.type==ve.Garbage})).map((function(e){return e.cost})).reduce((function(e,n){return e+n}),0),a=n.filter((function(e){return e.type==ve.Uranium})).map((function(e){return e.cost})).reduce((function(e,n){return e+n}),0),i=n.filter((function(e){return e.type==ve.Hybrid})).map((function(e){return e.cost})).reduce((function(e,n){return e+n}),0);return!(t>e.coalLeft||r>e.oilLeft||o>e.garbageLeft||a>e.uraniumLeft)&&!(i>e.coalLeft-t+e.oilLeft-r)}function tr(e){if("Baden-Württemberg"==e.map.name&&or(e),e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),e.players.forEach((function(e){e.skipAuction=!1})),"recharged"==e.options.variant&&(e.plantDiscountActive?(e.plantDiscountActive=!1,e.actualMarket.length>0&&(e.log.push({type:"event",event:"Discarding Power Plant ".concat(e.actualMarket[0].number,".")}),e.actualMarket.shift(),Wt(e))):"Benelux"==e.map.name&&(e.discardSmallestPlant=!0)),e.futureMarket.find((function(e){return 99==e.number})))if("Middle East"==e.map.name&&1==e.step)Ft(e);else{var n=e.actualMarket.shift();e.futureMarket.pop(),e.log.push({type:"event",event:"Starting Step 3, Power Plant ".concat(null===n||void 0===n?void 0:n.number," discarded.")}),e.step=3,Yt(e),e.actualMarket=[].concat(_(e.actualMarket),_(e.futureMarket)),e.futureMarket=[]}e.phase=be.Resources,ar(e,e.playerOrder[e.players.length-1])}function rr(e,n,t){n.powerPlants.push(e.chosenPowerPlant),n.money-=t,e.options.trackTotalSpent&&(n.totalSpentPlants+=t),n.skipAuction=!0,Ut(n),e.log.push({type:"event",event:"".concat(n.name," wins the bid and pays ").concat(t,"."),pretty:"".concat(Zt(n),' wins the bid and pays <span style="color: green">$').concat(t,"</span>.")}),Jt(e,e.chosenPowerPlant),e.chosenPowerPlant=e.currentBid=void 0}function or(e){e.playerOrder=Object(we["cloneDeep"])(e.players).sort((function(e,n){var t=e.cities.length,r=n.cities.length;return t==r?Math.max.apply(Math,_(e.powerPlants.map((function(e){return e.number}))))-Math.max.apply(Math,_(n.powerPlants.map((function(e){return e.number})))):t-r})).map((function(e){return e.id})).reverse()}function ar(e,n){e.currentPlayers=[n],e.players[n].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[n].passed=!0,ir(e))}function ir(e){e.phase==be.Auction?void 0==e.chosenPowerPlant?ur(e):sr(e):cr(e)}function sr(e){var n=e.currentPlayers[0];e.currentPlayers=[(n+1)%e.players.length],e.players[e.currentPlayers[0]].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[e.currentPlayers[0]].passed=!0,e.players[e.currentPlayers[0]].skipAuction=!0,sr(e)),(e.players[e.currentPlayers[0]].skipAuction||e.players[e.currentPlayers[0]].passed)&&e.players.some((function(e){return!e.skipAuction&&!e.passed&&!e.isDropped}))&&sr(e)}function cr(e){var n=e.playerOrder.indexOf(e.currentPlayers[0]);e.currentPlayers=[e.playerOrder[(n-1+e.players.length)%e.players.length]],e.players[e.currentPlayers[0]].isDropped&&e.players.some((function(e){return!e.isDropped}))&&(e.players[e.currentPlayers[0]].passed=!0,cr(e))}function ur(e){var n,t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(t)n=e.playerOrder[0];else{var r=e.playerOrder.indexOf(e.currentPlayers[0]);n=e.playerOrder[(r+1)%e.players.length]}e.currentPlayers=[n];var o=e.players[n];o.isDropped&&(o.passed=!0,o.skipAuction=!0),(o.skipAuction||o.passed)&&e.players.some((function(e){return!e.skipAuction&&!e.passed&&!e.isDropped}))&&ur(e)}function lr(e){if(!e.coalResupply){var n=ct.find((function(n){return n.name===e.map.name}));null!==n&&void 0!==n&&n.resupply?(e.coalResupply=n.resupply[0],e.oilResupply=n.resupply[1],e.garbageResupply=n.resupply[2],e.uraniumResupply=n.resupply[3]):(e.coalResupply=[[3,4,3],[4,5,3],[5,6,4],[5,7,5],[7,9,6]],e.oilResupply=[[2,2,4],[2,3,4],[3,4,5],[4,5,6],[5,6,7]],e.garbageResupply=[[1,2,3],[1,2,3],[2,3,4],[3,3,5],[3,5,6]],e.uraniumResupply=[[1,1,1],[1,1,1],[1,2,2],[2,3,2],[2,3,3]]);var t=e.players.length-2;e.resourceResupply=["[".concat(e.coalResupply[t][0],", ").concat(e.oilResupply[t][0],", ").concat(e.garbageResupply[t][0],", ").concat(e.uraniumResupply[t][0],"]"),"[".concat(e.coalResupply[t][1],", ").concat(e.oilResupply[t][1],", ").concat(e.garbageResupply[t][1],", ").concat(e.uraniumResupply[t][1],"]"),"[".concat(e.coalResupply[t][2],", ").concat(e.oilResupply[t][2],", ").concat(e.garbageResupply[t][2],", ").concat(e.uraniumResupply[t][2],"]")],e.coalResupplyNorth&&e.oilResupplyNorth&&e.garbageResupplyNorth&&(e.resourceResupplyNorth=["[".concat(e.coalResupplyNorth[t][0],", ").concat(e.oilResupplyNorth[t][0],", ").concat(e.garbageResupplyNorth[t][0],"]"),"[".concat(e.coalResupplyNorth[t][1],", ").concat(e.oilResupplyNorth[t][1],", ").concat(e.garbageResupplyNorth[t][1],"]"),"[".concat(e.coalResupplyNorth[t][2],", ").concat(e.oilResupplyNorth[t][2],", ").concat(e.garbageResupplyNorth[t][2],"]")])}}function dr(e,n,t){if(n.bid=t,e.currentPlayers=e.currentPlayers.filter((function(e){return e!==n.id})),0===e.currentPlayers.length){var r;(r=e.log).push.apply(r,_(e.hiddenLog)),e.hiddenLog=[];var o=e.players.map((function(e){return e.bid})).filter((function(e){return e>0})),a=e.minimunBid,i=Math.max.apply(Math,_(o)),s=e.players.filter((function(e){return!e.isDropped&&e.bid===i})),c=s[0].id;if(o.length>1){o.splice(o.indexOf(i),1);var u=Math.max.apply(Math,_(o));if(s.length>1)(function(){var n=e.auctioningPlayer;while(!s.find((function(e){return e.id==n})))n=(n+1)%e.players.length;a=u,c=n})();else{var l=e.auctioningPlayer;a=0;while(0==a)s[0].id==l?a=u:e.players[l].bid==u&&(a=u+1),l=(l+1)%e.players.length}}var d=e.players[c];rr(e,d,a),(ke(e,d)>4||e.players.length>2&&ke(e,d)>3)&&!d.isDropped?ar(e,d.id):("China"==e.map.name&&3!=e.step||Wt(e),e.players.some((function(e){return!e.skipAuction&&!e.isDropped}))?(e.players.forEach((function(e){e.bid=0,e.passed=e.isDropped})),ur(e,!0)):tr(e))}}var fr,pr=function(){var e=this,n=e.$createElement,t=e._self._c||n;return 99==e.powerPlant.number?t("g",{attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+")"}},[t("rect",{attrs:{width:"60",height:"40",fill:e.getColor(),stroke:"black","stroke-width":"2",rx:"4"}}),t("text",{attrs:{"text-anchor":"middle",x:"30",y:"20",fill:"black"}},[e._v("Step 3")])]):t("g",{class:[{canClick:e.canClick}],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+")"},on:{click:function(n){e.canClick&&e.$emit("click")}}},[t("rect",{attrs:{width:"60",height:"40",fill:e.getColor(),stroke:e.hasDiscount?"palegreen":"black","stroke-width":"2",rx:"4"}}),e.hasDiscount?t("g",[t("rect",{attrs:{width:"12",height:"12",rx:"4",fill:"palegreen"}}),t("text",{staticStyle:{"font-size":"12px"},attrs:{"text-anchor":"middle",x:"6",y:"6",fill:"black"}},[e._v("$")])]):e._e(),t("g",{attrs:{transform:"translate(30, 10)"}},[t("text",{attrs:{"text-anchor":"middle",x:"1",y:"1",fill:"gray"}},[e._v(e._s(e.powerPlant.number))]),t("text",{attrs:{"text-anchor":"middle",fill:"white"}},[e._v(e._s(e.powerPlant.number))])]),t("g",{class:["piece"],attrs:{id:e.elId,transform:"translate(40, 20) scale(0.035)"}},[t("path",{attrs:{d:"M187.698 263.636V456.017L3 341.204V169.522L80.8579 108.141L187.698 263.636Z",fill:"white",stroke:"white","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361V300.164L187.698 456.017V263.636L395.724 136.361Z",fill:"white",stroke:"white","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361L187.698 263.636L80.8579 108.141L304.771 4L395.724 136.361Z",fill:"white",stroke:"white","stroke-width":"12","stroke-miterlimit":"10"}})]),t("text",{staticStyle:{"font-size":"12px"},attrs:{"text-anchor":"middle",x:"47",y:"28",fill:"black"}},[e._v(" "+e._s(e.powerPlant.citiesPowered)+" ")]),t("g",{attrs:{transform:"translate(5, 20)"}},[t("path",{attrs:{d:e.getResourcePath(),fill:"white"}})]),e.powerPlant.cost>0?t("text",{staticStyle:{"font-size":"12px"},attrs:{"text-anchor":"middle",x:"12.5",y:"27.5",fill:"black"}},[e._v(" "+e._s(e.powerPlant.cost)+" ")]):e._e(),t("g",{attrs:{transform:"translate(24, 22)"}},[t("path",{attrs:{d:"M0,3 L8,3 L8,0 L14,6 L8,12 L8,9 L0,9Z",fill:"white"}})]),t("defs",[t("linearGradient",{attrs:{id:"hybrid",x1:"0",y1:"0",x2:"100%",y2:"100%"}},[t("stop",{attrs:{offset:"50%","stop-color":"#8b4513"}}),t("stop",{attrs:{offset:"50%","stop-color":"#445"}})],1)],1)])},hr=[];(function(e){e[e["House"]=0]="House",e[e["Card"]=1]="Card",e[e["Coal"]=2]="Coal",e[e["Oil"]=3]="Oil",e[e["Garbage"]=4]="Garbage",e[e["Uranium"]=5]="Uranium",e[e["Hybrid"]=6]="Hybrid"})(fr||(fr={}));var gr=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"targetState",void 0),i(B(e),"pieceId",void 0),i(B(e),"transparent",void 0),i(B(e),"communicator",void 0),i(B(e),"ui",void 0),i(B(e),"pieceType",void 0),i(B(e),"currentX",0),i(B(e),"currentY",0),i(B(e),"mounted",!1),i(B(e),"transitioning",!1),i(B(e),"transitionCount",0),i(B(e),"moving",!1),e}return C(t,[{key:"startTransitioning",value:function(){var e=this;if(!this.transitioning){this.ui.waitingAnimations+=1,this.transitioning=!0,this.transitionCount+=1;var n=this.transitionCount;setTimeout((function(){n===e.transitionCount&&e.onTransitionEnd()}),1e3)}}},{key:"onTargetChanged",value:function(e,n){var t=this;this.targetState.x===this.currentX&&this.targetState.y===this.currentY||(!this.transitioning&&this.mounted&&(!n||e?this.startTransitioning():(this.moving=!0,setTimeout((function(){return t.moving=!1}),800))),this.mounted?setTimeout((function(){t.currentX=t.targetState.x,t.currentY=t.targetState.y})):(this.currentX=this.targetState.x,this.currentY=this.targetState.y))}},{key:"onTransitionEnd",value:function(){this.transitioning&&(this.transitioning=!1,this.ui.waitingAnimations=Math.max(this.ui.waitingAnimations-1,0))}},{key:"elId",get:function(){return this.transitioning||this.moving?"moving":void 0}}]),t}(d.a);z([he({default:function(){return{x:0,y:0,rotate:0}}})],gr.prototype,"targetState",void 0),z([he()],gr.prototype,"pieceId",void 0),z([he()],gr.prototype,"transparent",void 0),z([ie()],gr.prototype,"communicator",void 0),z([ie()],gr.prototype,"ui",void 0),z([ge("dragging"),ge("targetState",{immediate:!0})],gr.prototype,"onTargetChanged",null),gr=z([oe({created:function(){},mounted:function(){this.mounted=!0},beforeDestroy:function(){this.onTransitionEnd()}})],gr);var yr,mr,vr=gr,br=vr;function wr(e,n,t,r,o,a,i,s){var c,u="function"===typeof e?e.options:e;if(n&&(u.render=n,u.staticRenderFns=t,u._compiled=!0),r&&(u.functional=!0),a&&(u._scopeId="data-v-"+a),i?(c=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"===typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),o&&o.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(i)},u._ssrRegister=c):o&&(c=s?function(){o.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(u.functional){u._injectStyles=c;var l=u.render;u.render=function(e,n){return c.call(n),l(e,n)}}else{var d=u.beforeCreate;u.beforeCreate=d?[].concat(d,c):[c]}return{exports:e,options:u}}var xr=wr(br,yr,mr,!1,null,null,null),kr=xr.exports,_r=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"owner",void 0),i(B(e),"powerPlant",void 0),i(B(e),"canClick",void 0),i(B(e),"hasDiscount",void 0),e}return C(t,[{key:"getColor",value:function(){var e;switch(null===(e=this.powerPlant)||void 0===e?void 0:e.type){case ve.Coal:return"#8b4513";case ve.Oil:return"#445";case ve.Garbage:return"goldenrod";case ve.Uranium:return"red";case ve.Hybrid:return"url(#hybrid)";case ve.Wind:return"limegreen";case ve.Nuclear:return"dodgerblue";case ve.Step3:return"dodgerblue"}}},{key:"getResourcePath",value:function(){var e;switch(null===(e=this.powerPlant)||void 0===e?void 0:e.type){case ve.Coal:return"M0,3 L7.5,0 L15,3 L15,12 L7.5,15 L0,12Z";case ve.Oil:return"M3,2 A6,3 0 0,1 12,2 L12,12 A6,3 0 0,1 3,12Z";case ve.Garbage:return"M0,3 A7.5,3 0 0,1 15,3 L15,12 A7.5,3 0 0,1 0,12Z";case ve.Uranium:return"M1,2 l4,-2 l6,0 l4,2 l0,11 l-4,2 l-6,0 l-4,-2Z";case ve.Hybrid:return"M0,3 L7.5,0 L15,3 L15,12 L7.5,15 L0,12Z M9,1 A6,3 0 0,1 18,1 L18,10 A6,3 0 0,1 10,10Z";case ve.Wind:return"";case ve.Nuclear:return"";case ve.Step3:return""}}}]),t}(q(kr));z([he()],_r.prototype,"owner",void 0),z([he()],_r.prototype,"powerPlant",void 0),z([he()],_r.prototype,"canClick",void 0),z([he({default:!1})],_r.prototype,"hasDiscount",void 0),_r=z([oe({created:function(){this.pieceType=fr.Card}})],_r);var Pr=_r,Sr=Pr,Mr=(t("11ac"),wr(Sr,pr,hr,!1,null,null,null)),Cr=Mr.exports,Br=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:[{canClick:e.canClick}],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+") scale("+e.scale+")",opacity:e.transparent?.3:1},on:{click:function(n){e.canClick&&e.$emit("click")}}},[t("path",{attrs:{d:"M136.8 21.2L43.1001 48.9L43.2001 167.2L135.2 210.3L228.8 174V55.7L136.8 21.2Z",fill:"#5a2d0c",stroke:"black","stroke-width":"20","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M135.2 210.3L43.2001 167.2L43.1001 48.8999L135.1 83.4999L135.2 210.3Z",fill:"#70380f"}}),t("path",{attrs:{d:"M135.1 83.5L43.1001 48.9L136.8 21.2L228.8 55.7L135.1 83.5Z",fill:"#8b4513"}}),t("path",{attrs:{d:"M228.8 55.7V174L135.2 210.3L135.1 83.5L228.8 55.7Z",fill:"#5a2d0c"}}),t("title",[e._v("Coal")])])},Rr=[],Ar=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(kr));z([he()],Ar.prototype,"canClick",void 0),z([he({default:.08})],Ar.prototype,"scale",void 0),Ar=z([oe({created:function(){this.pieceType=fr.Coal}})],Ar);var Lr=Ar,Or=Lr,Gr=wr(Or,Br,Rr,!1,null,null,null),jr=Gr.exports,Dr=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:[{canClick:e.canClick}],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+") scale("+e.scale+")",opacity:e.transparent?.3:1},on:{click:function(n){e.canClick&&e.$emit("click")}}},[t("path",{attrs:{d:"M2,5 A9,5,0 0,1 18,5 L18,15 A9,5 0 0,1 2,15Z",fill:"none",stroke:"black","stroke-miterlimit":"0"}}),t("path",{attrs:{d:"M2,5 A9,5 0 0,0 18,5 A9,5 0 0,0 2,5",fill:"#FF0"}}),t("path",{attrs:{d:"M2,5 A9,5 0 0,0 2,5 L2,15 A9,5,0 0,0 18,15 L18,5 A9,5 0 0,1 2,5",fill:"url(#garbage-linear)"}}),t("title",[e._v("Garbage")]),t("defs",[t("linearGradient",{attrs:{id:"garbage-linear",x1:"0",y1:"10",x2:"20",y2:"10",gradientUnits:"userSpaceOnUse"}},[t("stop",{attrs:{"stop-color":"#DD0"}}),t("stop",{attrs:{offset:"1","stop-color":"#AA0"}})],1)],1)])},Nr=[],zr=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(kr));z([he()],zr.prototype,"canClick",void 0),z([he({default:1})],zr.prototype,"scale",void 0),zr=z([oe({created:function(){this.pieceType=fr.Garbage}})],zr);var Tr=zr,Er=Tr,Kr=wr(Er,Dr,Nr,!1,null,null,null),Ir=Kr.exports,Ur=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:["piece"],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+") scale(0.035)"}},[t("path",{attrs:{d:"M187.698 263.636V456.017L3 341.204V169.522L80.8579 108.141L187.698 263.636Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361V300.164L187.698 456.017V263.636L395.724 136.361Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M395.724 136.361L187.698 263.636L80.8579 108.141L304.771 4L395.724 136.361Z",fill:e.color,stroke:"#010101","stroke-width":"12","stroke-miterlimit":"10"}}),t("title",[e._v(e._s(e.ownerName)+"'s House")])])},Wr=[],Hr=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"player",void 0),i(B(e),"color",void 0),i(B(e),"owner",void 0),i(B(e),"ownerName",void 0),e}return t}(q(kr));z([se()],Hr.prototype,"player",void 0),z([he()],Hr.prototype,"color",void 0),z([he()],Hr.prototype,"owner",void 0),z([he()],Hr.prototype,"ownerName",void 0),Hr=z([oe({created:function(){this.pieceType=fr.House}})],Hr);var Fr=Hr,Yr=Fr,Vr=wr(Yr,Ur,Wr,!1,null,null,null),Jr=Vr.exports,$r=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:["piece"],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+")"}},[t("g",{attrs:{transform:"scale(0.08)"}},[t("path",{attrs:{d:"M136.8 21.2L43.1001 48.9L43.2001 167.2L135.2 210.3L228.8 174V55.7L136.8 21.2Z",fill:"#5a2d0c",stroke:"black","stroke-width":"20","stroke-miterlimit":"10"}}),t("path",{attrs:{d:"M135.2 210.3L43.2001 167.2L43.1001 48.8999L135.1 83.4999L135.2 210.3Z",fill:"#70380f"}}),t("path",{attrs:{d:"M135.1 83.5L43.1001 48.9L136.8 21.2L228.8 55.7L135.1 83.5Z",fill:"#8b4513"}}),t("path",{attrs:{d:"M228.8 55.7V174L135.2 210.3L135.1 83.5L228.8 55.7Z",fill:"#5a2d0c"}})]),t("g",{attrs:{transform:"translate(5, 0)"}},[t("path",{attrs:{d:"M6,4 A6,4,0 0,1 14,4 L14,16 A6,4 0 0,1 6,16Z",fill:"none",stroke:"black"}}),t("path",{attrs:{d:"M6,4 A6,4 0 0,0 14,4 A6,4 0 0,0 6,4",fill:"#556"}}),t("path",{attrs:{d:"M6,4 A6,4 0 0,0 6,4 L6,16 A6,4,0 0,0 14,16 L14,4 A6,4 0 0,1 6,4",fill:"url(#oil-linear)"}})]),t("title",[e._v("Coal/Oil")])])},qr=[],Zr=function(e){A(t,e);var n=N(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(q(kr));Zr=z([oe({created:function(){this.pieceType=fr.Hybrid}})],Zr);var Xr=Zr,Qr=Xr,eo=wr(Qr,$r,qr,!1,null,null,null),no=(eo.exports,function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:[{canClick:e.canClick}],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+") scale("+e.scale+")",opacity:e.transparent?.3:1},on:{click:function(n){e.canClick&&e.$emit("click")}}},[t("path",{attrs:{d:"M6,4 A6,4,0 0,1 14,4 L14,16 A6,4 0 0,1 6,16Z",fill:"none",stroke:"black"}}),t("path",{attrs:{d:"M6,4 A6,4 0 0,0 14,4 A6,4 0 0,0 6,4",fill:"#556"}}),t("path",{attrs:{d:"M6,4 A6,4 0 0,0 6,4 L6,16 A6,4,0 0,0 14,16 L14,4 A6,4 0 0,1 6,4",fill:"url(#oil-linear)"}}),t("title",[e._v("Oil")]),t("defs",[t("linearGradient",{attrs:{id:"oil-linear",x1:"0",y1:"10",x2:"20",y2:"10",gradientUnits:"userSpaceOnUse"}},[t("stop",{attrs:{"stop-color":"#445"}}),t("stop",{attrs:{offset:"1","stop-color":"#223"}})],1)],1)])}),to=[],ro=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),i(B(e),"scale",void 0),e}return t}(q(kr));z([he()],ro.prototype,"canClick",void 0),z([he({default:1})],ro.prototype,"scale",void 0),ro=z([oe({created:function(){this.pieceType=fr.Oil}})],ro);var oo=ro,ao=oo,io=wr(ao,no,to,!1,null,null,null),so=io.exports,co=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:[{canClick:e.canClick}],attrs:{id:e.elId,transform:"translate("+e.currentX+", "+e.currentY+")",opacity:e.transparent?.3:1},on:{click:function(n){e.canClick&&e.$emit("click")}}},[t("path",{attrs:{d:"M3,3 l4,-2 l6,0 l4,2 l0,11 l-4,2 l-6,0 l-4,-2Z",fill:"#F00",stroke:"black"}}),t("path",{attrs:{d:"M3,3 l4,-2 l6,0 l4,2 l0,2.1 l-4,2 l-6,0 l-4,-2 l0,-2.1",fill:"#F00"}}),t("path",{attrs:{d:"M3,5 l0,9 l4.1,2 l0,-9 l-4.1,-2",fill:"#e60000"}}),t("path",{attrs:{d:"M7,7 l6.1,0 l0,9 l-6.1,0 l0,-9",fill:"#cc0000"}}),t("path",{attrs:{d:"M13,7 l4.1,-2 l0,9 l-4.1,2 l0,-9",fill:"#b30000"}}),t("title",[e._v("Uranium")])])},uo=[],lo=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"canClick",void 0),e}return t}(q(kr));z([he()],lo.prototype,"canClick",void 0),lo=z([oe({created:function(){this.pieceType=fr.Uranium}})],lo);var fo=lo,po=fo,ho=wr(po,co,uo,!1,null,null,null),go=ho.exports,yo=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{class:["button",{enabled:e.enabled}],on:{click:function(n){e.enabled&&e.$emit("click")}}},[t("rect",{attrs:{width:e.width,height:"30",fill:"gainsboro",stroke:"black",rx:"2"}}),t("text",{attrs:{"text-anchor":"middle",fill:"black",x:e.width/2,y:"16"}},[e._v(e._s(e.getText()))]),t("title",[e._v(e._s(e.text))])])},mo=[],vo=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"text",void 0),i(B(e),"width",void 0),i(B(e),"enabled",void 0),e}return C(t,[{key:"getText",value:function(){var e;return this.text.length>15?null===(e=this.text)||void 0===e?void 0:e.substring(0,12).concat("..."):this.text}}]),t}(d.a);z([he()],vo.prototype,"text",void 0),z([he()],vo.prototype,"width",void 0),z([he({default:!0})],vo.prototype,"enabled",void 0),vo=z([oe],vo);var bo=vo,wo=bo,xo=wr(wo,yo,mo,!1,null,null,null),ko=xo.exports,_o=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{staticClass:"button enabled",on:{click:function(n){return e.$emit("click")}}},[r("circle",{attrs:{cx:"15",cy:"15",r:"15",fill:"gainsboro",stroke:"black","stroke-width":"2px"}}),r("image",{attrs:{x:"5",y:"5",width:"20",height:"20",href:t("997e")}}),e.isOn?e._e():r("line",{attrs:{x1:"5",y1:"25",x2:"25",y2:"5",stroke:"black","stroke-width":"3px","stroke-linecap":"round"}}),e.isOn?r("title",[e._v("Help off")]):r("title",[e._v("Help on")])])},Po=[],So=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"isOn",void 0),e}return t}(d.a);z([he()],So.prototype,"isOn",void 0),So=z([oe],So);var Mo=So,Co=Mo,Bo=wr(Co,_o,Po,!1,null,null,null),Ro=Bo.exports,Ao=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{staticClass:"button enabled",on:{click:function(n){return e.$emit("click")}}},[r("rect",{attrs:{width:"80",height:"26",fill:"gainsboro",stroke:"black",rx:"2"}}),r("image",{attrs:{x:"11",y:"5",width:"16",height:"16",href:t("b67b")}}),r("text",{attrs:{"text-anchor":"middle",fill:"black",x:"47",y:"13"}},[e._v("Log")]),r("title",[e._v("Show log")])])},Lo=[],Oo=function(e){A(t,e);var n=N(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(d.a);Oo=z([oe],Oo);var Go=Oo,jo=Go,Do=wr(jo,Ao,Lo,!1,null,null,null),No=Do.exports,zo=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{class:["button",{enabled:e.enabled,highlightButton:e.highlightButton}],on:{click:function(n){e.enabled&&e.$emit("click")}}},[r("rect",{attrs:{width:"80",height:"26",fill:"gainsboro",stroke:"black",rx:"2"}}),r("image",{attrs:{x:"15",y:"8",width:"10",height:"10",href:t("fd65")}}),r("text",{attrs:{"text-anchor":"middle",fill:"black",x:"47",y:"13"}},[e._v(e._s(e.text))]),r("title",[e._v("Pass turn")])])},To=[],Eo=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"enabled",void 0),i(B(e),"highlightButton",void 0),i(B(e),"text",void 0),e}return t}(d.a);z([he()],Eo.prototype,"enabled",void 0),z([he()],Eo.prototype,"highlightButton",void 0),z([he()],Eo.prototype,"text",void 0),Eo=z([oe],Eo);var Ko=Eo,Io=Ko,Uo=wr(Io,zo,To,!1,null,null,null),Wo=Uo.exports,Ho=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{staticClass:"button enabled",on:{click:function(n){return e.$emit("click")}}},[r("circle",{attrs:{cx:"15",cy:"15",r:"15",fill:"gainsboro",stroke:"black","stroke-width":"2px"}}),e.isOn?r("image",{attrs:{x:"5",y:"5",width:"20",height:"20",href:t("9fd9")}}):r("image",{attrs:{x:"5",y:"5",width:"20",height:"20",href:t("2044")}}),e.isOn?r("title",[e._v("Sound off")]):r("title",[e._v("Sound on")])])},Fo=[],Yo=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"isOn",void 0),e}return t}(d.a);z([he()],Yo.prototype,"isOn",void 0),Yo=z([oe],Yo);var Vo=Yo,Jo=Vo,$o=wr(Jo,Ho,Fo,!1,null,null,null),qo=$o.exports,Zo=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{staticClass:"button enabled",on:{click:function(n){return e.$emit("click")}}},[r("circle",{attrs:{cx:"15",cy:"15",r:"15",fill:"gainsboro",stroke:"black","stroke-width":"2px"}}),r("image",{attrs:{x:"5",y:"5",width:"20",height:"20",href:t("b85b")}}),r("title",[e._v("Rules")])])},Xo=[],Qo=function(e){A(t,e);var n=N(t);function t(){return S(this,t),n.apply(this,arguments)}return t}(d.a);Qo=z([oe],Qo);var ea=Qo,na=ea,ta=wr(na,Zo,Xo,!1,null,null,null),ra=ta.exports,oa=function(){var e=this,n=e.$createElement,r=e._self._c||n;return r("g",{class:["button",{enabled:e.enabled,highlightButton:e.highlightButton}],on:{click:function(n){e.enabled&&e.$emit("click")}}},[r("rect",{attrs:{width:"80",height:"26",fill:"gainsboro",stroke:"black",rx:"2"}}),r("image",{attrs:{x:"11",y:"4",width:"16",height:"16",href:t("92cf")}}),r("text",{attrs:{"text-anchor":"middle",fill:"black",x:"47",y:"13"}},[e._v("Undo")]),r("title",[e._v("Undo last move")])])},aa=[],ia=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"enabled",void 0),i(B(e),"highlightButton",void 0),e}return t}(d.a);z([he()],ia.prototype,"enabled",void 0),z([he()],ia.prototype,"highlightButton",void 0),ia=z([oe],ia);var sa=ia,ca=sa,ua=wr(ca,oa,aa,!1,null,null,null),la=ua.exports,da=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{staticClass:"player-board"},[t("rect",{attrs:{width:"350",height:"100",x:"0",y:"0",fill:"gold",stroke:e.color}}),t("rect",{attrs:{width:"350",height:"25",x:"0",y:"0",fill:e.color}}),t("foreignObject",{attrs:{height:"30",width:"30",x:"-30",y:"-5"}},[t("img",{staticStyle:{"border-radius":"50%"},attrs:{src:e.avatar||"https://avatars.dicebear.com/api/pixel-art/"+e.player.name+".svg",width:"100%",height:"100%"}})]),t("text",{attrs:{x:"5",y:"13","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.getPlayerName())+" ")]),e.showMoney?t("text",{attrs:{x:"250",y:"13","font-weight":"600",fill:"black"}},[e._v("Money: $"+e._s(e.player.money))]):e._e(),e._l(e.player.powerPlants,(function(n,r){return t("Card",{key:"powerPlant_"+n.number,attrs:{targetState:{x:e.cardX(r),y:30},owner:e.owner,powerPlant:n,canClick:e.canUse(n)},on:{click:function(t){return e.powerPlantClick(n)}}})})),e._l(e.player.powerPlants,(function(n,r){return[e.isMine(n)?t("g",{key:"mine_"+n.number},[t("rect",{attrs:{x:e.cardX(r),y:"30",width:"60",height:"40",fill:"none",stroke:"#2e8b3d","stroke-width":"3px",rx:"3px"}}),t("circle",{attrs:{cx:e.cardX(r)+51,cy:"37",r:"8",fill:"#46c655",stroke:"#1f5c25","stroke-width":"1.5"}}),t("text",{staticStyle:{"font-size":"9px","font-weight":"700"},attrs:{x:e.cardX(r)+51,y:"40","text-anchor":"middle",fill:"white"}},[e._v(" U ")])]):e._e()]})),e.preferences.disableHelp?e._e():[e._l(e.player.powerPlants,(function(n,r){return[e.canUse(n)?t("rect",{key:r+"_"+r+"_helper",attrs:{x:e.cardX(r),y:30,width:"60",height:"40",fill:"none",stroke:"blue","stroke-width":"4px",rx:"2px"}}):e._e()]}))],e.canClickResources?t("g",[t("rect",{attrs:{width:"30",height:"30",x:"0",y:"71",fill:"none",stroke:"blue","stroke-width":"2px",rx:"2px"}}),t("rect",{attrs:{width:"30",height:"30",x:"70",y:"71",fill:"none",stroke:"blue","stroke-width":"2px",rx:"2px"}})]):e._e(),t("Coal",{attrs:{pieceId:"Coal"+e.player.id,targetState:{x:5,y:76},canClick:e.canClickResources},on:{click:function(n){return e.clickResource("coal")}}}),t("text",{attrs:{"text-anchor":"middle",x:"40",y:"85",fill:"black"}},[e._v(e._s(e.player.coalLeft))]),t("Oil",{attrs:{pieceId:"Oil"+e.player.id,targetState:{x:75,y:76},canClick:e.canClickResources},on:{click:function(n){return e.clickResource("oil")}}}),t("text",{attrs:{"text-anchor":"middle",x:"110",y:"85",fill:"black"}},[e._v(e._s(e.player.oilLeft))]),t("Garbage",{attrs:{pieceId:"Garbage"+e.player.id,targetState:{x:145,y:76}}}),t("text",{attrs:{"text-anchor":"middle",x:"180",y:"85",fill:"black"}},[e._v(e._s(e.player.garbageLeft))]),t("Uranium",{attrs:{pieceId:"Uranium"+e.player.id,targetState:{x:215,y:76}}}),t("text",{attrs:{"text-anchor":"middle",x:"250",y:"85",fill:"black"}},[e._v(e._s(e.player.uraniumLeft))])],2)},fa=[],pa=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"color",void 0),i(B(e),"avatar",void 0),i(B(e),"player",void 0),i(B(e),"isCurrentPlayer",void 0),i(B(e),"owner",void 0),i(B(e),"ended",void 0),i(B(e),"isPlayer",void 0),i(B(e),"ranking",void 0),i(B(e),"showMoney",void 0),i(B(e),"showBid",void 0),i(B(e),"phase",void 0),i(B(e),"isAustralia",void 0),i(B(e),"preferences",void 0),i(B(e),"powerPlantClicked",void 0),e}return C(t,[{key:"cardX",value:function(e){var n=this.player.powerPlants.length;return n<5?20+80*e:5+Math.min(70,280/(n-1))*e}},{key:"isMine",value:function(e){return!0===this.isAustralia&&e.type===ve.Uranium}},{key:"getPlayerName",value:function(){var e="";if(this.isCurrentPlayer&&(e+="• "),e+=this.player.name,this.ended)switch(this.ranking){case 1:e+=" (1st)";break;case 2:e+=" (2nd)";break;case 3:e+=" (3rd)";break;case 4:case 5:case 6:e+=" (".concat(this.ranking,"th)");break}else this.player.skipAuction?e+=" (Skipping)":this.player.passed?e+=" (Passed)":this.player.bid&&!this.isCurrentPlayer&&this.showBid&&(e+=" (Bid: $"+this.player.bid+")");return e}},{key:"canUse",value:function(e){var n,t;if(!this.isCurrentPlayer)return!1;if(null!==(n=this.player.availableMoves)&&void 0!==n&&n[_e.DiscardPowerPlant])return e.number!==this.player.powerPlants[this.player.powerPlants.length-1].number;if(null===(t=this.player.availableMoves)||void 0===t||!t[_e.UsePowerPlant])return!1;if(!this.player.powerPlantsNotUsed.includes(e.number)||this.player.resourcesUsed.length>0)return!1;switch(e.type){case ve.Coal:return this.player.coalLeft>=e.cost;case ve.Oil:return this.player.oilLeft>=e.cost;case ve.Garbage:return this.player.garbageLeft>=e.cost;case ve.Uranium:return this.player.uraniumLeft>=e.cost;case ve.Hybrid:return this.player.coalLeft+this.player.oilLeft>=e.cost;case ve.Wind:case ve.Nuclear:return this.player.coalLeft+this.player.oilLeft>=e.cost}}},{key:"powerPlantClick",value:function(e){this.phase==be.Bureaucracy&&e.type==ve.Hybrid?0==this.player.coalLeft||0==this.player.oilLeft||this.player.coalLeft+this.player.oilLeft==e.cost?(this.player.resourcesUsed=Array(Math.min(e.cost,this.player.coalLeft)).fill(me.Coal).concat(Array(e.cost-Math.min(e.cost,this.player.coalLeft)).fill(me.Oil)),this.$emit("powerPlantClick",e)):(this.powerPlantClicked=e,this.player.resourcesUsed=Array(e.cost).fill(null)):this.$emit("powerPlantClick",e)}},{key:"canClickResources",get:function(){return this.player.availableMoves&&this.player.availableMoves["DiscardResources"]||this.player.resourcesUsed.some((function(e){return null==e}))}},{key:"clickResource",value:function(e){if(this.player.availableMoves&&this.player.availableMoves["DiscardResources"])this.$emit("discardResource",e);else if(this.player.resourcesUsed.some((function(e){return null==e}))){var n=this.player.resourcesUsed.findIndex((function(e){return null==e}));this.player.resourcesUsed[n]=e,"coal"==e?this.player.coalLeft--:"oil"==e&&this.player.oilLeft--,this.player.resourcesUsed.some((function(e){return null==e}))||this.$emit("powerPlantClick",this.powerPlantClicked)}}}]),t}(d.a);z([he()],pa.prototype,"color",void 0),z([he()],pa.prototype,"avatar",void 0),z([he()],pa.prototype,"player",void 0),z([he()],pa.prototype,"isCurrentPlayer",void 0),z([he()],pa.prototype,"owner",void 0),z([he()],pa.prototype,"ended",void 0),z([he()],pa.prototype,"isPlayer",void 0),z([he()],pa.prototype,"ranking",void 0),z([he()],pa.prototype,"showMoney",void 0),z([he()],pa.prototype,"showBid",void 0),z([he()],pa.prototype,"phase",void 0),z([he()],pa.prototype,"isAustralia",void 0),z([ie()],pa.prototype,"preferences",void 0),pa=z([oe({components:{Coal:jr,Oil:so,Garbage:Ir,Uranium:go,Card:Cr}})],pa);var ha=pa,ga=ha,ya=wr(ga,da,fa,!1,null,null,null),ma=ya.exports,va=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{staticClass:"calculator"},[t("rect",{attrs:{width:"125",height:"50",rx:"4"}}),t("rect",{attrs:{x:"10",y:"10",width:"30",height:"30",fill:"lime",rx:"2"}}),t("text",{staticClass:"visor",attrs:{x:"25",y:"25",fill:"black","text-anchor":"middle"}},[e._v(e._s(e.value))]),t("g",{style:e.value<e.maxValue?"cursor: pointer":"",on:{click:function(n){return e.add()}}},[t("rect",{attrs:{x:"48",y:"7",width:"24",height:"15",fill:"gray",stroke:"gray",rx:"2"}}),t("path",{attrs:{d:"M52,17 l8,-6 l8,6",fill:"none",stroke:"white","stroke-width":"3"}})]),t("g",{style:e.value>e.minValue?"cursor: pointer":"",on:{click:function(n){return e.sub()}}},[t("rect",{attrs:{x:"48",y:"28",width:"24",height:"15",fill:"gray",stroke:"gray",rx:"2"}}),t("path",{attrs:{d:"M52,32 l8,6 l8,-6",fill:"none",stroke:"white","stroke-width":"3"}})]),t("g",{staticStyle:{cursor:"pointer"},on:{click:function(n){return e.bid()}}},[t("rect",{staticClass:"button",attrs:{x:"80",y:"7",width:"36",height:"36",fill:"gray",rx:"2"}}),t("text",{attrs:{x:"97",y:"25",fill:"white","text-anchor":"middle"}},[e._v("OK")])])])},ba=[],wa=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"minValue",void 0),i(B(e),"maxValue",void 0),i(B(e),"value",0),e}return C(t,[{key:"add",value:function(){this.value=Math.min(this.maxValue,this.value+1)}},{key:"sub",value:function(){this.value=Math.max(this.minValue,this.value-1)}},{key:"bid",value:function(){this.$emit("bid",this.value)}}]),t}(d.a);z([he()],wa.prototype,"minValue",void 0),z([he()],wa.prototype,"maxValue",void 0),wa=z([oe({created:function(){this.value=this.minValue}})],wa);var xa=wa,ka=xa,_a=(t("85cf"),wr(ka,va,ba,!1,null,null,null)),Pa=_a.exports,Sa=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",[t("text",{attrs:{x:"10",y:"14","font-weight":"600",fill:"black"}},[e._v("Power Plant Deck:")]),e.cardsLeft>0?[e._l(e.cardsLeft,(function(e){return t("rect",{key:"card"+e,attrs:{x:35+e/5,y:38-e/10,width:"60",height:"40",fill:"gray",stroke:"black","stroke-width":"2",rx:"4"}})})),t("rect",{attrs:{x:35+e.cardsLeft/5,y:38-e.cardsLeft/10,width:"60",height:"40",fill:e.nextCardWeak?"gray":"lightgray",stroke:"black","stroke-width":"2",rx:"4"}},[t("title",[e._v(e._s(e.cardsLeft)+" cards left"+e._s(e.nextCardWeak?", next is an initial plant":""))])])]:e._e(),t("text",{attrs:{x:"165",y:"14","font-weight":"600",fill:"black"}},[e._v("Actual Market:")]),e._l(e.actualMarketCards,(function(n,r){return[t("Card",{key:n.id,attrs:{targetState:{x:n.x,y:n.y},powerPlant:n.powerPlant,canClick:e.chooseablePowerPlants&&e.chooseablePowerPlants.includes(n.powerPlant.number),hasDiscount:e.plantDiscountActive&&0==r},on:{click:function(t){return e.choosePowerPlant(n.powerPlant)}}})]})),e.futureMarketCards.length>0?[t("text",{attrs:{x:"165",y:"80","font-weight":"600",fill:"black"}},[e._v("Future Market:")]),e._l(e.futureMarketCards,(function(e){return[t("Card",{key:e.id,attrs:{targetState:{x:e.x,y:e.y},powerPlant:e.powerPlant}})]}))]:e._e(),e.chosenPowerPlant?[t("text",{attrs:{x:e.actualMarketWidth,y:"14","font-weight":"600",fill:"black"}},[e._v("Current Auction:")]),t("Card",{key:e.chosenPowerPlant.id,attrs:{targetState:{x:e.chosenPowerPlant.x,y:e.chosenPowerPlant.y},powerPlant:e.chosenPowerPlant.powerPlant}}),e.canBid?t("Calculator",{attrs:{transform:"translate("+e.actualMarketWidth+", 80)",minValue:e.minBid,maxValue:e.maxBid},on:{bid:function(n){return e.bid(n)}}}):e._e()]:e._e(),e.preferences.disableHelp?e._e():[e.canChoose?t("g",[e.futureMarketCards.length>0?t("rect",{attrs:{x:"160",y:"5",width:65*e.actualMarketCards.length+5,height:"65",fill:"none",stroke:"blue","stroke-width":"2px",rx:"2px"}}):t("rect",{attrs:{x:"160",y:"5",width:"200",height:"120",fill:"none",stroke:"blue","stroke-width":"2px",rx:"2px"}})]):e._e()]],2)},Ma=[],Ca=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"cardsLeft",void 0),i(B(e),"nextCardWeak",void 0),i(B(e),"plantDiscountActive",void 0),i(B(e),"canBid",void 0),i(B(e),"canChoose",void 0),i(B(e),"chooseablePowerPlants",void 0),i(B(e),"minBid",void 0),i(B(e),"maxBid",void 0),i(B(e),"preferences",void 0),i(B(e),"actualMarketCards",[]),i(B(e),"futureMarketCards",[]),i(B(e),"chosenPowerPlant",null),i(B(e),"actualMarketWidth",430),e}return C(t,[{key:"createPieces",value:function(e){var n,t=this;this.actualMarketWidth=null!==(n=e.map.actualMarketWidth)&&void 0!==n?n:430,this.actualMarketCards=[],e.actualMarket.forEach((function(n,r){var o,a;e.futureMarket.length>0?n.number!=(null===(o=e.chosenPowerPlant)||void 0===o?void 0:o.number)&&t.actualMarketCards.push({id:"actual_"+r,x:165+65*r,y:24,powerPlant:n}):n.number!=(null===(a=e.chosenPowerPlant)||void 0===a?void 0:a.number)&&t.actualMarketCards.push({id:"actual_"+r,x:165+r%3*65,y:r<3?24:80,powerPlant:n})})),this.futureMarketCards=[],e.futureMarket.forEach((function(n,r){var o;n.number!=(null===(o=e.chosenPowerPlant)||void 0===o?void 0:o.number)&&t.futureMarketCards.push({id:"future_"+r,x:165+r%4*65,y:90+50*Math.floor(r/4),powerPlant:n})})),e.chosenPowerPlant?this.chosenPowerPlant={id:"chosen",x:this.actualMarketWidth+30,y:30,powerPlant:e.chosenPowerPlant}:this.chosenPowerPlant=null}},{key:"choosePowerPlant",value:function(e){this.$emit("choosePowerPlant",e)}},{key:"bid",value:function(e){this.$emit("bid",e)}}]),t}(d.a);z([he()],Ca.prototype,"cardsLeft",void 0),z([he()],Ca.prototype,"nextCardWeak",void 0),z([he()],Ca.prototype,"plantDiscountActive",void 0),z([he()],Ca.prototype,"canBid",void 0),z([he()],Ca.prototype,"canChoose",void 0),z([he()],Ca.prototype,"chooseablePowerPlants",void 0),z([he()],Ca.prototype,"minBid",void 0),z([he()],Ca.prototype,"maxBid",void 0),z([ie()],Ca.prototype,"preferences",void 0),Ca=z([oe({components:{Card:Cr,Calculator:Pa}})],Ca);var Ba=Ca,Ra=Ba,Aa=wr(Ra,Sa,Ma,!1,null,null,null),La=Aa.exports,Oa=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",[t("rect",{attrs:{x:"10",y:"10",width:"185",height:"40",rx:"3",fill:"goldenrod"}}),e._l(6,(function(n){return[t("rect",{key:"playerOrder"+n,attrs:{x:15+30*(n-1),y:"15",width:"24",height:"30",rx:"2",fill:"darkgoldenrod"}}),t("text",{key:"playerOrderText"+n,staticStyle:{"font-size":"32px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:27+30*(n-1),y:"30",fill:"gold"}},[e._v(" "+e._s(n)+" ")])]})),e._l(e.houses,(function(e){return[t("House",{key:e.id,attrs:{pieceId:e.id,targetState:{x:e.x,y:e.y},owner:e.owner,ownerName:e.ownerName,color:e.color}})]}))],2)},Ga=[],ja=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"playerColors",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[],e.playerOrder.forEach((function(t,r){n.houses.push({id:t+"_order",x:20+30*r,y:22,color:n.playerColors[t],owner:t,ownerName:e.players[t].name})}))}}]),t}(d.a);z([he()],ja.prototype,"playerColors",void 0),ja=z([oe({components:{House:Jr}})],ja);var Da=ja,Na=Da,za=wr(Na,Oa,Ga,!1,null,null,null),Ta=za.exports,Ea=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",[t("rect",{attrs:{width:"730",height:"50",x:"10",y:"10",rx:"3",fill:"goldenrod"}}),e._l(21,(function(n){return[t("rect",{key:"playerCityCount"+n,attrs:{width:"28",height:"38",x:46+33*(n-1),y:"16",rx:"2",fill:"darkgoldenrod",stroke:n==e.citiesToStep2||n==e.citiesToEndGame?"#916a08":"darkgoldenrod","stroke-width":"2px"}}),t("text",{key:"playerCityCountText"+n,staticStyle:{"font-size":"24px","font-family":"monospace"},attrs:{"text-anchor":"middle","letter-spacing":"-2",x:59+33*(n-1),y:"35",fill:"gold"}},[e._v(" "+e._s(n)+" ")])]})),e._l(e.houses,(function(e){return[t("House",{key:e.id,attrs:{pieceId:e.id,targetState:{x:e.x,y:e.y},owner:e.owner,ownerName:e.ownerName,color:e.color}})]}))],2)},Ka=[],Ia=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"citiesToStep2",void 0),i(B(e),"citiesToEndGame",void 0),i(B(e),"playerColors",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[];for(var t=[],r=0;r<22;r++)t[r]=[];e.players.forEach((function(e,n){return t[e.cities.length].push(n)})),e.players.forEach((function(e,r){var o=(1==t[e.cities.length].length?23:20)+33*e.cities.length;o+=t[e.cities.length].indexOf(r)%2*6,n.houses.push({id:r+"_cityCount",x:o,y:15+30*t[e.cities.length].indexOf(r)/t[e.cities.length].length,color:n.playerColors[r],owner:r})}))}}]),t}(d.a);z([he()],Ia.prototype,"citiesToStep2",void 0),z([he()],Ia.prototype,"citiesToEndGame",void 0),z([he()],Ia.prototype,"playerColors",void 0),Ia=z([oe({components:{House:Jr}})],Ia);var Ua=Ia,Wa=Ua,Ha=wr(Wa,Ea,Ka,!1,null,null,null),Fa=Ha.exports,Ya=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",{on:{click:e.onPickCoord}},[e.devBackdrop?t("image",{attrs:{href:e.devBackdrop.src,x:"0",y:"0",width:e.devBackdrop.width,height:e.devBackdrop.height,opacity:null!=e.devBackdrop.opacity?e.devBackdrop.opacity:.5}}):e._e(),e._l(e.cities,(function(n){return[null==n.connectionCost?t("circle",{key:n.name+"_region",attrs:{r:"25",cx:n.x,cy:n.y,fill:n.region,stroke:"black"}},[t("title",[e._v(e._s(n.name))])]):e._e(),null==n.connectionCost?t("circle",{key:n.name+"_circle",attrs:{r:"20",cx:n.x,cy:n.y,fill:"gray",stroke:"black"}},[t("title",[e._v(e._s(n.name))])]):e._e(),n.singleOccupancy?t("g",{key:n.name+"_flag"},[t("line",{attrs:{x1:n.x+12,y1:n.y-12,x2:n.x+12,y2:n.y-32,stroke:"black","stroke-width":"1.5"}}),t("polygon",{attrs:{points:n.x+12+","+(n.y-32)+" "+(n.x+26)+","+(n.y-28)+" "+(n.x+12)+","+(n.y-24),fill:"red",stroke:"black","stroke-width":"1"}}),t("title",[e._v(e._s(n.name)+" — cross-border space (1 house max, 30 Elektro total cost)")])]):e._e()]})),e._l(e.connections,(function(n){return[t("line",{key:n.nodes[0]+"_"+n.nodes[1]+"_line1",attrs:{x1:e.getX1(n),y1:e.getY1(n),x2:e.getX2(n),y2:e.getY2(n),"stroke-width":"10",stroke:"black"}}),t("line",{key:n.nodes[0]+"_"+n.nodes[1]+"_line2",attrs:{x1:e.getX1(n),y1:e.getY1(n),x2:e.getX2(n),y2:e.getY2(n),"stroke-width":"9",stroke:"gray"}})]})),e._l(e.cities,(function(n){return[null!=n.connectionCost?t("g",{key:n.name+"_tile"},[t("rect",{class:[{canClick:e.canBuild(n)}],attrs:{x:n.x-23,y:n.y-23,width:"46",height:"46",rx:"7",fill:"gray",stroke:n.region,"stroke-width":"4",transform:"rotate(45, "+n.x+", "+n.y+")"},on:{click:function(t){e.canBuild(n)&&e.build(n)}}},[t("title",[e._v(e._s(n.name)+" — connect for "+e._s(n.connectionCost)+" (entry) + house")])]),e._l(n.slotCosts,(function(r,o){return[t("rect",{key:n.name+"_slot"+o,attrs:{x:n.x+e.nodeSlotPos(o).dx-6.5,y:n.y+e.nodeSlotPos(o).dy-6.5,width:"13",height:"13",rx:"1",fill:"gray",stroke:"black","stroke-width":"1",transform:"rotate(45, "+(n.x+e.nodeSlotPos(o).dx)+", "+(n.y+e.nodeSlotPos(o).dy)+")"}}),t("text",{key:n.name+"_slotlbl"+o,attrs:{x:n.x+e.nodeSlotPos(o).dx,y:n.y+e.nodeSlotPos(o).dy,"font-size":"10","text-anchor":"middle","dominant-baseline":"central",fill:"black",transform:e.mapRotation?"rotate("+-e.mapRotation+", "+(n.x+e.nodeSlotPos(o).dx)+", "+(n.y+e.nodeSlotPos(o).dy)+")":void 0}},[e._v(" "+e._s(r)+" ")])]}))],2):e._e()]})),e._l(e.cities,(function(n){return[null==n.connectionCost?t("circle",{key:n.name+"_circle2",class:[{canClick:e.canBuild(n)}],attrs:{r:"20",cx:n.x,cy:n.y,fill:"gray"},on:{click:function(t){e.canBuild(n)&&e.build(n)}}},[t("title",[e._v(e._s(n.name))])]):e._e()]})),e._l(e.connections,(function(n){return[n.cost>0?t("circle",{key:n.nodes[0]+"_"+n.nodes[1]+"_border",attrs:{stroke:"black",r:10+10*n.cost/28,cx:(e.getX1(n)+e.getX2(n))/2,cy:(e.getY1(n)+e.getY2(n))/2,fill:n.cost>15?"gold":n.cost>10?"lightgray":"tan"}}):e._e(),n.cost>0?t("circle",{key:n.nodes[0]+"_"+n.nodes[1]+"_circle",attrs:{r:6+10*n.cost/28,cx:(e.getX1(n)+e.getX2(n))/2,cy:(e.getY1(n)+e.getY2(n))/2,fill:"gray",stroke:"black"}}):e._e(),n.cost>0?t("text",{key:n.nodes[0]+"_"+n.nodes[1]+"_text",style:"font-size: "+(12+6*n.cost/28)+"px",attrs:{"text-anchor":"middle",fill:"black",x:(e.getX1(n)+e.getX2(n))/2,y:(e.getY1(n)+e.getY2(n))/2,transform:e.mapRotation?"rotate("+-e.mapRotation+", "+(e.getX1(n)+e.getX2(n))/2+", "+(e.getY1(n)+e.getY2(n))/2+")":void 0}},[e._v(" "+e._s(n.cost)+" ")]):e._e()]})),e._l(e.houses,(function(e){return[t("House",{key:e.id,attrs:{pieceId:e.id,targetState:{x:e.x,y:e.y},owner:e.owner,ownerName:e.ownerName,color:e.color}})]})),e._l(e.cities,(function(n){return[null!=n.connectionCost?t("g",{key:n.name+"_cc"},[t("circle",{attrs:{cx:n.x,cy:n.y+15,r:"11",fill:"goldenrod",stroke:"darkgoldenrod","stroke-width":"2"}}),t("circle",{attrs:{cx:n.x,cy:n.y+15,r:"7.5",fill:"gray",stroke:"darkgoldenrod","stroke-width":"1"}}),t("text",{attrs:{x:n.x,y:n.y+15,"font-size":"11","font-weight":"bold","text-anchor":"middle","dominant-baseline":"central",fill:"black",transform:e.mapRotation?"rotate("+-e.mapRotation+", "+n.x+", "+(n.y+15)+")":void 0}},[e._v(" "+e._s(n.connectionCost)+" ")])]):e._e()]})),e._l(e.cities,(function(n){return[n.slotCosts&&2===n.slotCosts.length&&10===n.slotCosts[0]?[t("line",{key:n.name+"_x1",attrs:{x1:n.x+10,y1:n.y+10,x2:n.x+19,y2:n.y+19,stroke:"black","stroke-width":"3","stroke-linecap":"round"}}),t("line",{key:n.name+"_x2",attrs:{x1:n.x+19,y1:n.y+10,x2:n.x+10,y2:n.y+19,stroke:"black","stroke-width":"3","stroke-linecap":"round"}})]:e._e(),n.slotCosts&&3===n.slotCosts.length&&10===n.slotCosts[0]&&10===n.slotCosts[1]?t("text",{key:n.name+"_10label",attrs:{x:n.x-20,y:n.y+19,"font-size":"17","font-weight":"bold",fill:"black","text-anchor":"middle",transform:e.mapRotation?"rotate("+-e.mapRotation+", "+(n.x-20)+", "+(n.y+19)+")":void 0}},[e._v("10")]):e._e(),n.slotCosts&&2===n.slotCosts.length&&15===n.slotCosts[0]?[t("line",{key:n.name+"_x1",attrs:{x1:n.x-5,y1:n.y-21,x2:n.x+5,y2:n.y-11,stroke:"black","stroke-width":"3","stroke-linecap":"round"}}),t("line",{key:n.name+"_x2",attrs:{x1:n.x+5,y1:n.y-21,x2:n.x-5,y2:n.y-11,stroke:"black","stroke-width":"3","stroke-linecap":"round"}})]:e._e()]})),e.preferences.disableHelp?e._e():[e._l(e.cities,(function(n){return[e.canBuild(n)?t("circle",{key:n.name+"_circleHelp",class:[{canClick:e.canBuild(n)}],attrs:{r:"18",cx:n.x,cy:n.y,fill:"none",stroke:"blue","stroke-width":"4px"}}):e._e()]}))]],2)},Va=[],Ja=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"polygons",void 0),i(B(e),"cities",void 0),i(B(e),"connections",void 0),i(B(e),"playerColors",void 0),i(B(e),"buildableCities",void 0),i(B(e),"devBackdrop",void 0),i(B(e),"mapRotation",void 0),i(B(e),"preferences",void 0),i(B(e),"houses",[]),e}return C(t,[{key:"createPieces",value:function(e){var n=this;this.houses=[],e.players.forEach((function(t,r){t.cities.forEach((function(t){var o,a,i,s=e.map.cities.find((function(e){return e.name==t.name})),c=null!=s.connectionCost,u=2===(null===(o=s.slotCosts)||void 0===o?void 0:o.length)&&15===s.slotCosts[0];if(c){var l=n.nodeSlotPos(t.position);a=l.dx-7,i=l.dy-8}else u?0==t.position?(a=-15,i=-4):(a=1,i=-4):0==t.position?(a=-6,i=-18):1==t.position?(a=-15,i=-4):(a=1,i=-4);n.houses.push({id:r+"_"+t.name,x:s.x+a,y:s.y+i,color:n.playerColors[r],owner:r})}))}))}},{key:"getX1",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[0]}));return n.x}},{key:"getY1",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[0]}));return n.y}},{key:"getX2",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[1]}));return n.x}},{key:"getY2",value:function(e){var n=this.cities.find((function(n){return n.name==e.nodes[1]}));return n.y}},{key:"nodeSlotPos",value:function(e){return 0===e?{dx:0,dy:-15}:1===e?{dx:-15,dy:0}:{dx:15,dy:0}}},{key:"canBuild",value:function(e){return!!this.buildableCities.find((function(n){return n==e.name}))}},{key:"build",value:function(e){this.$emit("build",e)}},{key:"onPickCoord",value:function(e){if(this.devBackdrop){var n=e.currentTarget,t=n.getScreenCTM();if(t){var r=new DOMPoint(e.clientX,e.clientY).matrixTransform(t.inverse());console.log("{ name: Cities.TODO, region: Regions.TODO, x: ".concat(Math.round(r.x),", y: ").concat(Math.round(r.y)," },"))}}}}]),t}(d.a);z([he()],Ja.prototype,"polygons",void 0),z([he()],Ja.prototype,"cities",void 0),z([he()],Ja.prototype,"connections",void 0),z([he()],Ja.prototype,"playerColors",void 0),z([he()],Ja.prototype,"buildableCities",void 0),z([he()],Ja.prototype,"devBackdrop",void 0),z([he({default:0})],Ja.prototype,"mapRotation",void 0),z([ie()],Ja.prototype,"preferences",void 0),Ja=z([oe({components:{House:Jr}})],Ja);var $a=Ja,qa=$a,Za=wr(qa,Ya,Va,!1,null,null,null),Xa=Za.exports,Qa=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("g",[e.isKorea?[e.resourceResupplyNorth?[e.resourceResupplyNorth[0]<10?t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"30",y:"-125","font-weight":"600",fill:"black"}},[e._v("Resource Resupply:")]):t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"20",y:"-125","font-weight":"600",fill:"black"}},[e._v("Resource Resupply:")]),e.resourceResupplyNorth[0]<10?t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"276",y:"-125","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupplyNorth[0])+" ")]):t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"262",y:"-125","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupplyNorth[0])+" ")]),t("Coal",{attrs:{pieceId:-1,targetState:{x:288,y:-133},canClick:!1,transparent:!1}}),t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"321",y:"-125","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupplyNorth[1])+" ")]),t("Oil",{attrs:{pieceId:-1,targetState:{x:331,y:-134},canClick:!1,transparent:!1}}),t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"368",y:"-125","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupplyNorth[2])+" ")]),t("Garbage",{attrs:{pieceId:-1,targetState:{x:382,y:-134},canClick:!1,transparent:!1}})]:e._e(),t("text",{staticStyle:{"font-size":"22px"},attrs:{x:"20",y:"-110","font-weight":"700",fill:"black"}},[e._v("North Market")]),t("rect",{attrs:{width:"760",height:"80",x:"20",y:"-100",rx:"3",fill:"#c89c3a"}}),e._l(8,(function(n){return[t("rect",{key:"north_resources"+n,attrs:{width:"70",height:"70",x:25+85*(n-1),y:"-95",rx:"2",fill:"darkgoldenrod"}}),t("circle",{key:"north_resourcesCircle"+n,attrs:{r:"10",cx:92+85*(n-1),cy:"-92",fill:"yellow"}}),t("text",{key:"north_resourcesText"+n,staticStyle:{"font-size":"16px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:92+85*(n-1),y:"-92",fill:"darkgoldenrod"}},[e._v(" "+e._s(n)+" ")])]})),e._l(e.coalsNorth,(function(n){return[t("Coal",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("coal",n.side,n.fromStorage),transparent:n.transparent,scale:.08},on:{click:function(t){return e.buyResource("coal",n.side,n.fromStorage)}}})]})),e._l(e.oilsNorth,(function(n){return[t("Oil",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("oil",n.side),transparent:n.transparent},on:{click:function(t){return e.buyResource("oil",n.side)}}})]})),e._l(e.garbagesNorth,(function(n){return[t("Garbage",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("garbage",n.side),transparent:n.transparent},on:{click:function(t){return e.buyResource("garbage",n.side)}}})]})),t("text",{staticStyle:{"font-size":"22px"},attrs:{x:"20",y:"35","font-weight":"700",fill:"black"}},[e._v("South Market")])]:e._e(),e.resourceResupply[0]<10?t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"30",y:"20","font-weight":"600",fill:"black"}},[e._v("Resource Resupply:")]):t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"20",y:"20","font-weight":"600",fill:"black"}},[e._v("Resource Resupply:")]),e.resourceResupply[0]<10?t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"276",y:"20","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupply[0])+" ")]):t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"262",y:"20","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupply[0])+" ")]),t("Coal",{attrs:{pieceId:-1,targetState:{x:288,y:12},canClick:!1,transparent:!1}}),t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"321",y:"20","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupply[1])+" ")]),t("Oil",{attrs:{pieceId:-1,targetState:{x:331,y:11},canClick:!1,transparent:!1}}),t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"368",y:"20","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupply[2])+" ")]),t("Garbage",{attrs:{pieceId:-1,targetState:{x:382,y:11},canClick:!1,transparent:!1}}),e.isAustraliaMarket||e.isBremenMarket?e._e():[t("text",{staticStyle:{"font-size":"24px"},attrs:{x:"414",y:"20","font-weight":"600",fill:"black"}},[e._v(" "+e._s(e.resourceResupply[3])+" ")]),t("Uranium",{attrs:{pieceId:-1,targetState:{x:428,y:12},canClick:!1,transparent:!1}})],e.isIndiaResourceMarket||e.isNinePriceMarket||e.isAustraliaMarket?e._e():t("rect",{attrs:{width:"760",height:"80",x:"20",y:"40",rx:"3",fill:"goldenrod"}}),e.isNinePriceMarket?t("rect",{attrs:{width:"780",height:"80",x:"20",y:"40",rx:"3",fill:"goldenrod"}}):e._e(),e.isAustraliaMarket?t("rect",{attrs:{width:"870",height:"80",x:"20",y:"40",rx:"3",fill:"goldenrod"}}):e._e(),e.isIndiaResourceMarket?t("rect",{attrs:{width:"680",height:"80",x:"20",y:"40",rx:"3",fill:"goldenrod"}}):e._e(),e._l(e.isNinePriceMarket?9:e.isAustraliaMarket?10:8,(function(n){return[t("rect",{key:"resources"+n,attrs:{width:"70",height:"70",x:25+85*(n-1),y:"45",rx:"2",fill:"darkgoldenrod"}}),t("circle",{key:"resourcesCircle"+n,attrs:{r:"10",cx:92+85*(n-1),cy:"48",fill:"yellow"}}),t("text",{key:"resourcesText"+n,staticStyle:{"font-size":"16px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:92+85*(n-1),y:"48",fill:"darkgoldenrod"}},[e._v(" "+e._s(n)+" ")]),e.isIndiaResourceMarket||e.isNinePriceMarket||e.isAustraliaMarket||e.isBremenMarket?e._e():t("g",{key:"lines"+n},[t("line",{attrs:{x1:25+85*(n-1),y1:"68",x2:95+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:25+85*(n-1),y1:"92",x2:95+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:48+85*(n-1),y1:"40",x2:48+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:72+85*(n-1),y1:"40",x2:72+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:42+85*(n-1),y1:"68",x2:42+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:58+85*(n-1),y1:"68",x2:58+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:74+85*(n-1),y1:"68",x2:74+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:48+85*(n-1),y1:"92",x2:48+85*(n-1),y2:"120",stroke:"goldenrod"}}),t("line",{attrs:{x1:72+85*(n-1),y1:"92",x2:72+85*(n-1),y2:"120",stroke:"goldenrod"}})]),e.isIndiaResourceMarket?t("g",{key:"lines"+n},[t("line",{attrs:{x1:25+85*(n-1),y1:"68",x2:95+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:25+85*(n-1),y1:"92",x2:95+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:42+85*(n-1),y1:"40",x2:42+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:59+85*(n-1),y1:"40",x2:59+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:76+85*(n-1),y1:"40",x2:76+85*(n-1),y2:"68",stroke:"goldenrod"}}),t("line",{attrs:{x1:42+85*(n-1),y1:"68",x2:42+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:58+85*(n-1),y1:"68",x2:58+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:74+85*(n-1),y1:"68",x2:74+85*(n-1),y2:"92",stroke:"goldenrod"}}),t("line",{attrs:{x1:42+85*(n-1),y1:"92",x2:42+85*(n-1),y2:"120",stroke:"goldenrod"}}),t("line",{attrs:{x1:59+85*(n-1),y1:"92",x2:59+85*(n-1),y2:"120",stroke:"goldenrod"}}),t("line",{attrs:{x1:76+85*(n-1),y1:"92",x2:76+85*(n-1),y2:"120",stroke:"goldenrod"}})]):e._e()]})),e.isAustraliaMarket&&e.co2TaxActive?[t("rect",{attrs:{width:"160",height:"70",x:"24",y:"45",rx:"2",fill:"black",opacity:"0.55"}}),t("text",{staticStyle:{"font-size":"12px","font-family":"monospace","font-weight":"700"},attrs:{"text-anchor":"middle",x:"104",y:"84",fill:"white"}},[e._v(" CO₂ closed ")])]:e._e(),e.isIndiaResourceMarket?[t("g",{key:"separators"},[t("line",{attrs:{x1:"275",y1:"40",x2:"275",y2:"140",stroke:"red"}}),t("line",{attrs:{x1:"445",y1:"40",x2:"445",y2:"140",stroke:"red"}}),t("text",{attrs:{x:"220",y:"130",stroke:"red"}},[e._v("Step 1")]),t("text",{attrs:{x:"390",y:"130",stroke:"red"}},[e._v("Step 2")])])]:e._e(),e.isIndiaResourceMarket||e.isNinePriceMarket||e.isAustraliaMarket||e.isBremenMarket?e._e():[t("rect",{attrs:{width:"30",height:"30",x:"705",y:"45",rx:"2",fill:"darkgoldenrod"}}),t("circle",{attrs:{r:"10",cx:"732",cy:"48",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"12px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"732",y:"48",fill:"darkgoldenrod"}},[e._v(" 10 ")]),t("rect",{attrs:{width:"30",height:"30",x:"745",y:"45",rx:"2",fill:"darkgoldenrod"}}),t("circle",{attrs:{r:"10",cx:"772",cy:"48",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"12px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"772",y:"48",fill:"darkgoldenrod"}},[e._v(" 12 ")]),t("rect",{attrs:{width:"30",height:"30",x:"705",y:"85",rx:"2",fill:"darkgoldenrod"}}),t("circle",{attrs:{r:"10",cx:"732",cy:"88",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"12px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"732",y:"88",fill:"darkgoldenrod"}},[e._v(" 14 ")]),t("rect",{attrs:{width:"30",height:"30",x:"745",y:"85",rx:"2",fill:"darkgoldenrod"}}),t("circle",{attrs:{r:"10",cx:"772",cy:"88",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"12px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"772",y:"88",fill:"darkgoldenrod"}},[e._v(" 16 ")])],e.isUsaRecharged?[t("rect",{attrs:{width:"180",height:"70",x:"795",y:"45",rx:"2",fill:"chocolate",stroke:"sandybrown","stroke-width":"4px"}}),t("circle",{attrs:{r:"10",cx:"973",cy:"45",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"16px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"973",y:"45",fill:"darkgoldenrod"}},[e._v(" 8 ")]),t("Coal",{attrs:{pieceId:-1,targetState:{x:858,y:57},canClick:!1,transparent:!0,scale:.2}})]:e._e(),void 0!==e.coalStorage?[t("rect",{attrs:{width:"180",height:"70",x:"795",y:"45",rx:"2",fill:"chocolate",stroke:"sandybrown","stroke-width":"4px"}}),t("circle",{attrs:{r:"10",cx:"973",cy:"45",fill:"yellow"}}),t("text",{staticStyle:{"font-size":"16px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"973",y:"45",fill:"darkgoldenrod"}},[e._v(" 8 ")]),t("text",{staticStyle:{"font-size":"11px","font-family":"monospace"},attrs:{"text-anchor":"start",x:"800",y:"42",fill:"black"}},[e._v(" Coal storage ")])]:e._e(),e._l(e.coals,(function(n){return[t("Coal",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("coal",n.side,n.fromStorage),transparent:n.transparent,scale:e.isIndiaResourceMarket?.06:.08},on:{click:function(t){return e.buyResource("coal",n.side,n.fromStorage)}}})]})),e._l(e.oils,(function(n){return[t("Oil",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("oil",n.side),transparent:n.transparent},on:{click:function(t){return e.buyResource("oil",n.side)}}})]})),e._l(e.garbages,(function(n){return[t("Garbage",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("garbage",n.side),transparent:n.transparent,scale:e.isIndiaResourceMarket?.8:1},on:{click:function(t){return e.buyResource("garbage",n.side)}}})]})),e._l(e.uraniums,(function(n){return[t("Uranium",{key:n.id,attrs:{pieceId:n.id,targetState:{x:n.x,y:n.y},canClick:!n.transparent&&e.canBuyResource("uranium",n.side),transparent:n.transparent},on:{click:function(t){return e.buyResource("uranium",n.side)}}})]})),e.isMiddleEast?[t("rect",{attrs:{width:"80",height:"50",x:"20",y:"70",rx:"2",fill:"gray",stroke:"darkgray","stroke-width":"4px"}}),t("Oil",{attrs:{pieceId:-1,targetState:{x:35,y:80},scale:1.5,canClick:e.availableSurplusOil>0&&e.canBuyResource("oil"),transparent:0==e.availableSurplusOil},on:{click:function(n){return e.buyResource("oil")}}}),t("text",{staticStyle:{"font-size":"16px","font-family":"monospace"},attrs:{"text-anchor":"middle",x:"70",y:"93.5"}},[e._v(" x"+e._s(e.availableSurplusOil)+" ")])]:e._e(),e.preferences.disableHelp?e._e():[!e.isKorea&&e.buyableResources.length>0?t("rect",{attrs:{x:"15",y:"35",width:e.isAustraliaMarket?880:770,height:"90",rx:"2",fill:"none",stroke:"blue","stroke-width":"2px"}}):e._e(),e.isKorea&&e.hasBuyableNorth?t("rect",{attrs:{x:"15",y:"-105",width:"770",height:"90",rx:"2",fill:"none",stroke:"blue","stroke-width":"2px"}}):e._e(),e.isKorea&&e.hasBuyableSouth?t("rect",{attrs:{x:"15",y:"35",width:"770",height:"90",rx:"2",fill:"none",stroke:"blue","stroke-width":"2px"}}):e._e()]],2)},ei=[],ni=t("bcba"),ti=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"resourceResupply",void 0),i(B(e),"resourceResupplyNorth",void 0),i(B(e),"isUsaRecharged",void 0),i(B(e),"isMiddleEast",void 0),i(B(e),"isIndiaResourceMarket",void 0),i(B(e),"availableSurplusOil",void 0),i(B(e),"buyableResources",void 0),i(B(e),"coalStorage",void 0),i(B(e),"preferences",void 0),i(B(e),"coals",[]),i(B(e),"oils",[]),i(B(e),"garbages",[]),i(B(e),"uraniums",[]),i(B(e),"isKorea",!1),i(B(e),"isNinePriceMarket",!1),i(B(e),"isAustraliaMarket",!1),i(B(e),"isBremenMarket",!1),i(B(e),"co2TaxActive",!1),i(B(e),"coalsNorth",[]),i(B(e),"oilsNorth",[]),i(B(e),"garbagesNorth",[]),e}return C(t,[{key:"buildMainRowPieces",value:function(e,n,t,r){var o,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},i=null!==(o=a.maxPrice)&&void 0!==o?o:8,s=[];e.forEach((function(e,n){if(!(e>i)){var t=s[s.length-1];t&&t.price===e?t.slots++:s.push({price:e,slots:1,firstIdx:n})}}));var c=[],u=64;return s.forEach((function(o){for(var i=60+85*(o.price-1),s=0;s<o.slots;s++){var l=o.firstIdx+s,d=1===o.slots?i:i-u/2+u*(s+.5)/o.slots;c.push({id:"".concat(t,"_").concat(l),x:d,y:r,transparent:l<e.length-n,side:a.side})}})),c}},{key:"createPieces",value:function(e){var n,t,r,o,a=this;if(e){this.isAustraliaMarket="Australia"===(null===(n=e.map)||void 0===n?void 0:n.name),this.co2TaxActive=this.isAustraliaMarket&&e.step>=3,this.isBremenMarket="Bremen"===(null===(t=e.map)||void 0===t?void 0:t.name);var i,s,c,u,l,d=void 0!==e.coalMarketNorth;if(this.isKorea=d,d){this.coals=this.buildMainRowPieces(e.coalPrices,e.coalMarket,"coal",48,{side:"south"}),this.oils=this.buildMainRowPieces(e.oilPrices,e.oilMarket,"oil",70,{side:"south"}),this.garbages=this.buildMainRowPieces(e.garbagePrices,e.garbageMarket,"garbage",94,{side:"south"}),this.uraniums=[];var f=e.uraniumPrices;return f.forEach((function(n,t){var r,o;if(n<=8)r=60+85*(n-1),o=85;else{var i=10===n||14===n?710:750,s=10===n||12===n?52:91;r=i,o=s}a.uraniums.push({id:"uranium_".concat(t),x:r,y:o,transparent:t<f.length-e.uraniumMarket,side:"south"})})),this.coalsNorth=this.buildMainRowPieces(e.coalPricesNorth,e.coalMarketNorth,"coal_north",-92,{side:"north"}),this.oilsNorth=this.buildMainRowPieces(e.oilPricesNorth,e.oilMarketNorth,"oil_north",-70,{side:"north"}),void(this.garbagesNorth=this.buildMainRowPieces(e.garbagePricesNorth,e.garbageMarketNorth,"garbage_north",-46,{side:"north"}))}if("Europe"===(null===(r=e.map)||void 0===r?void 0:r.name)||"North America"===(null===(o=e.map)||void 0===o?void 0:o.name))return this.isNinePriceMarket=!0,this.coals=this.buildMainRowPieces(e.coalPrices,e.coalMarket,"coal",48,{maxPrice:9}),this.oils=this.buildMainRowPieces(e.oilPrices,e.oilMarket,"oil",70,{maxPrice:9}),this.uraniums=this.buildMainRowPieces(e.uraniumPrices,e.uraniumMarket,"uranium",92,{maxPrice:9}),void(this.garbages=this.buildMainRowPieces(e.garbagePrices,e.garbageMarket,"garbage",106,{maxPrice:9}));if(this.isAustraliaMarket)return this.coals=this.buildMainRowPieces(e.coalPrices,e.coalMarket,"coal",48,{maxPrice:10}),this.oils=this.buildMainRowPieces(e.oilPrices,e.oilMarket,"oil",70,{maxPrice:10}),this.garbages=this.buildMainRowPieces(e.garbagePrices,e.garbageMarket,"garbage",94,{maxPrice:10}),this.uraniums=[],this.coalsNorth=[],this.oilsNorth=[],void(this.garbagesNorth=[]);if(this.isBremenMarket)return this.coals=this.buildMainRowPieces(e.coalPrices,e.coalMarket,"coal",48),this.oils=this.buildMainRowPieces(e.oilPrices,e.oilMarket,"oil",70),this.garbages=this.buildMainRowPieces(e.garbagePrices,e.garbageMarket,"garbage",94),this.uraniums=[],this.coalsNorth=[],this.oilsNorth=[],void(this.garbagesNorth=[]);if(this.isNinePriceMarket=!1,this.coalsNorth=[],this.oilsNorth=[],this.garbagesNorth=[],this.coals=[],"India"==(null===(i=e.map)||void 0===i?void 0:i.name)?Array(24).fill(0).forEach((function(n,t){var r=t;t>=0&&(r+=2),t>=2&&(r+=2),t>=4&&r++,t>=7&&r++,t>=10&&r++,t>=13&&r++,a.coals.push({id:"coal_"+t,x:672-17*r-17*Math.floor(r/4),y:48,transparent:t>=e.coalMarket})})):Array(24).fill(0).forEach((function(n,t){a.coals.push({id:"coal_"+t,x:668-23.5*t-14.5*Math.floor(t/3),y:48,transparent:t>=e.coalMarket})})),"recharged"==e.options.variant&&"USA"==(null===(s=e.map)||void 0===s?void 0:s.name)&&Object(ni["range"])(e.coalSupply).forEach((function(e){a.coals.push({id:"coal_supply_"+e,x:800+e%8*20+(e>=8&&e<16?10:0),y:50+20*Math.floor(e/8),transparent:!1})})),void 0!==e.coalStorage&&Object(ni["range"])(e.coalStorage).forEach((function(e){a.coals.push({id:"coal_storage_"+e,x:800+e%8*20+(e>=8&&e<16?10:0),y:50+20*Math.floor(e/8),transparent:!1,fromStorage:!0})})),this.oils=[],"Middle East"==(null===(c=e.map)||void 0===c?void 0:c.name)){var p=e.oilPrices.filter((function(e){return e>1})).length,h=e.oilPrices.filter((function(e){return 1==e})).length,g=Math.min(p,e.oilMarket);Array(p).fill(0).forEach((function(e,n){var t=n+(h-3);a.oils.push({id:"normal_oil_"+t,x:651-16*t-37*Math.floor(t/3),y:70,transparent:n>=g})}))}else Array(24).fill(0).forEach((function(n,t){a.oils.push({id:"oil_"+t,x:651-16*t-37*Math.floor(t/3),y:70,transparent:t>=e.oilMarket})}));this.garbages=[],"India"==(null===(u=e.map)||void 0===u?void 0:u.name)?Array(24).fill(0).forEach((function(n,t){var r=t+8;a.garbages.push({id:"garbage_"+t,x:672-17*r-17*Math.floor(r/4),y:94,transparent:t>=e.garbageMarket})})):Array(24).fill(0).forEach((function(n,t){a.garbages.push({id:"garbage_"+t,x:668-23.5*t-14.5*Math.floor(t/3),y:94,transparent:t>=e.garbageMarket})})),this.uraniums=[],"India"==(null===(l=e.map)||void 0===l?void 0:l.name)?Array(8).fill(0).forEach((function(n,t){a.uraniums.push({id:"uranium_"+t,x:670-85*t,y:72,transparent:t>=e.uraniumMarket})})):Array(12).fill(0).forEach((function(n,t){0==t?a.uraniums.push({id:"uranium_"+t,x:750,y:91,transparent:t>=e.uraniumMarket}):1==t?a.uraniums.push({id:"uranium_"+t,x:710,y:91,transparent:t>=e.uraniumMarket}):2==t?a.uraniums.push({id:"uranium_"+t,x:750,y:52,transparent:t>=e.uraniumMarket}):3==t?a.uraniums.push({id:"uranium_"+t,x:710,y:52,transparent:t>=e.uraniumMarket}):a.uraniums.push({id:"uranium_"+t,x:1010-85*t,y:72,transparent:t>=e.uraniumMarket})}))}}},{key:"canBuyResource",value:function(e,n,t){return!!this.buyableResources.find((function(r){return r.resource==e&&r.side==n&&!!r.fromStorage==!!t}))}},{key:"hasBuyableNorth",get:function(){var e;return!(null===(e=this.buyableResources)||void 0===e||!e.some((function(e){return"north"===e.side})))}},{key:"hasBuyableSouth",get:function(){var e;return!(null===(e=this.buyableResources)||void 0===e||!e.some((function(e){return"south"===e.side})))}},{key:"buyResource",value:function(e,n,t){this.$emit("buyResource",{resource:e,side:n,fromStorage:t})}}]),t}(d.a);z([he()],ti.prototype,"resourceResupply",void 0),z([he()],ti.prototype,"resourceResupplyNorth",void 0),z([he()],ti.prototype,"isUsaRecharged",void 0),z([he()],ti.prototype,"isMiddleEast",void 0),z([he()],ti.prototype,"isIndiaResourceMarket",void 0),z([he()],ti.prototype,"availableSurplusOil",void 0),z([he()],ti.prototype,"buyableResources",void 0),z([he()],ti.prototype,"coalStorage",void 0),z([ie()],ti.prototype,"preferences",void 0),ti=z([oe({components:{Coal:jr,Oil:so,Garbage:Ir,Uranium:go}})],ti);var ri=ti,oi=ri,ai=wr(oi,Qa,ei,!1,null,null,null),ii=ai.exports,si=function(e){A(t,e);var n=N(t);function t(){var e;S(this,t);for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];return e=n.call.apply(n,[this].concat(o)),i(B(e),"state",void 0),i(B(e),"player",void 0),i(B(e),"emitter",void 0),i(B(e),"avatars",void 0),i(B(e),"preferences",void 0),i(B(e),"ui",{waitingAnimations:0}),i(B(e),"paused",!1),i(B(e),"communicator",new u["EventEmitter"]),i(B(e),"G",null),i(B(e),"_futureState",void 0),i(B(e),"playerColors",["limegreen","mediumorchid","red","dodgerblue","yellow","brown"]),i(B(e),"animationQueue",[]),i(B(e),"logVisible",!1),i(B(e),"endScoreVisible",!1),i(B(e),"spendingVisible",!1),i(B(e),"rulesVisible",!1),i(B(e),"totalBid",0),i(B(e),"confirmMessage",""),i(B(e),"confirmVisible",!1),i(B(e),"discardedPowerPlant",null),i(B(e),"discardVisible",!1),i(B(e),"resourcesToDiscard",[]),i(B(e),"freeJumpCity",null),i(B(e),"freeJumpNormalPrice",null),i(B(e),"freeJumpSlotPrice",0),i(B(e),"freeJumpVisible",!1),i(B(e),"disablePass",!1),i(B(e),"powerPlantMarket",void 0),i(B(e),"playerOrder",void 0),i(B(e),"cityCount",void 0),i(B(e),"map",void 0),i(B(e),"resources",void 0),e}return C(t,[{key:"onStateChanged",value:function(e){this.replaceState(e)}},{key:"replaceState",value:function(e){var n,t,r,o=this,a=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(a&&(this._futureState=e),null!=this.player&&this.G&&this.G.players&&this.G.players[this.player].resourcesUsed.some((function(e){return null==e}))&&(r={coalLeft:this.G.players[this.player].coalLeft,oilLeft:this.G.players[this.player].oilLeft,resourcesUsed:this.G.players[this.player].resourcesUsed}),this.G=JSON.parse(JSON.stringify(e)),r&&Object.assign(this.G.players[this.player],r),this.G&&this.$nextTick((function(){o.powerPlantMarket.createPieces(o.G),o.playerOrder.createPieces(o.G),o.cityCount.createPieces(o.G),o.map.createPieces(o.G),o.resources.createPieces(o.G)})),this.preferences.sound&&"move"==(null===(n=this.G)||void 0===n?void 0:n.log[(null===(t=this.G)||void 0===t?void 0:t.log.length)-1].type)){var i,s,c=null===(i=this.G)||void 0===i?void 0:i.log[(null===(s=this.G)||void 0===s?void 0:s.log.length)-1].move;c.name==_e.Pass&&this.G.currentPlayers.includes(this.player)?document.getElementById("notification").cloneNode(!0).play():c.name==_e.Build&&setTimeout((function(){document.getElementById("piece-drop").cloneNode(!0).play()}),800)}}},{key:"updateUI",value:function(){var e=this;if(!(this.ui.waitingAnimations>0))return this.animationQueue.length>0?(this.animationQueue.shift()(),void setTimeout((function(){return e.updateUI()}))):void 0}},{key:"checkPass",value:function(){if(this.G&&null!=this.player&&!this.G.chosenPowerPlant){var e=this.G.players[this.player];if(e&&e.availableMoves&&Object.keys(e.availableMoves).length>1){if(this.G.phase==be.Bureaucracy&&e.powerPlantsNotUsed.length>0&&Object.keys(e.availableMoves).includes("UsePowerPlant"))return this.confirmMessage="Are you sure you want to pass? You have unused power plants!",void(this.confirmVisible=!0);if(this.G.phase==be.Resources&&!this.canPowerAllPlants(e))return this.confirmMessage="Are you sure you want to skip buying resources without enough to power all your plants?",void(this.confirmVisible=!0);if(this.G.phase!=be.Bureaucracy||e.powerPlantsNotUsed.length==e.powerPlants.length){var n=this.G.log[this.G.log.length-1];if(n.player!=this.player||n.move.name==_e.Pass){switch(this.G.phase){case be.Auction:this.confirmMessage="Are you sure you want to skip auctions?";break;case be.Resources:this.confirmMessage="Are you sure you want to skip buying resources?";break;case be.Building:this.confirmMessage="Are you sure you want to skip building?";break;case be.Bureaucracy:this.confirmMessage="Are you sure you want to pass? You didn't use any power plant!";break;default:this.confirmMessage="Are you sure you want to pass?"}return void(this.confirmVisible=!0)}}}}this.pass()}},{key:"confirmPass",value:function(){this.confirmVisible=!1,this.pass()}},{key:"pass",value:function(){this.sendMove({name:_e.Pass,data:!0})}},{key:"undo",value:function(){this.sendMove({name:_e.Undo,data:this.preferences.undoWholeTurn})}},{key:"choosePowerPlant",value:function(e){var n=this.G.players[this.player],t=n.availableMoves;t.ChoosePowerPlant&&t.ChoosePowerPlant.includes(e.number)&&this.sendMove({name:_e.ChoosePowerPlant,data:e.number})}},{key:"buyResource",value:function(e){var n={resource:e.resource};e.side&&(n.side=e.side),e.fromStorage&&(n.fromStorage=e.fromStorage),this.sendMove({name:_e.BuyResource,data:n})}},{key:"bid",value:function(e){this.sendMove({name:_e.Bid,data:e})}},{key:"build",value:function(e){var n=this.G.players[this.player],t=n.availableMoves,r=t[_e.Build],o=r.find((function(n){return n.name===e.name&&n.freeJump})),a=r.find((function(n){return n.name===e.name&&!n.freeJump}));o&&a?(this.freeJumpCity=e,this.freeJumpSlotPrice=o.price,this.freeJumpNormalPrice=a.price,this.freeJumpVisible=!0):o&&!a?(this.freeJumpCity=e,this.freeJumpSlotPrice=o.price,this.freeJumpNormalPrice=null,this.freeJumpVisible=!0):this.sendMove({name:_e.Build,data:{name:e.name,price:a.price}})}},{key:"confirmFreeJump",value:function(e){var n=this.freeJumpCity,t=this.G.players[this.player],r=t.availableMoves[_e.Build];if(this.freeJumpVisible=!1,this.freeJumpCity=null,e){var o=r.find((function(e){return e.name===n.name&&e.freeJump}));this.sendMove({name:_e.Build,data:{name:n.name,price:o.price,freeJump:!0}})}else{var a=r.find((function(e){return e.name===n.name&&!e.freeJump}));this.sendMove({name:_e.Build,data:{name:n.name,price:a.price}})}}},{key:"confirmDiscard",value:function(){var e=this.resourcesToDiscard.map((function(e){return parseInt(e.value)}));e.reduce((function(e,n){return e+n}),0)>0?this.sendMove({name:_e.DiscardPowerPlant,data:this.discardedPowerPlant.number,extra:e}):this.sendMove({name:_e.DiscardPowerPlant,data:this.discardedPowerPlant.number}),this.discardedPowerPlant=null,this.discardVisible=!1}},{key:"discardInvalid",value:function(){var e,n=this.G.players[this.player];switch(this.discardedPowerPlant.type){case ve.Coal:return e=n.hybridCapacity-2*this.discardedPowerPlant.cost>0?Math.max(0,n.oilLeft-n.oilCapacity):0,n.coalCapacity+n.hybridCapacity-2*this.discardedPowerPlant.cost+parseInt(this.resourcesToDiscard[0].value)<n.coalLeft+e;case ve.Oil:return e=n.hybridCapacity-2*this.discardedPowerPlant.cost>0?Math.max(0,n.coalLeft-n.coalCapacity):0,n.oilCapacity+n.hybridCapacity-2*this.discardedPowerPlant.cost+parseInt(this.resourcesToDiscard[0].value)<n.oilLeft+e;case ve.Garbage:return n.garbageCapacity-2*this.discardedPowerPlant.cost-n.garbageLeft+parseInt(this.resourcesToDiscard[0].value)<0;case ve.Uranium:return n.uraniumCapacity-2*this.discardedPowerPlant.cost-n.uraniumLeft+parseInt(this.resourcesToDiscard[0].value)<0;case ve.Hybrid:var t=parseInt(this.resourcesToDiscard[0].value),r=parseInt(this.resourcesToDiscard[1].value),o=n.hybridCapacity-2*this.discardedPowerPlant.cost,a=Math.max(0,n.coalLeft-n.coalCapacity-t),i=Math.max(0,n.oilLeft-n.oilCapacity-r);return o<a+i}return!0}},{key:"powerPlantClick",value:function(e){var n,t,r=this;if((null===(n=this.G)||void 0===n?void 0:n.phase)==be.Auction)if(e.type==ve.Wind||e.type==ve.Nuclear)this.sendMove({name:_e.DiscardPowerPlant,data:e.number});else{var o=this.G.players[this.player];switch(e.type){case ve.Coal:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Hybrid})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.coalLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Coal",value:"0",max:o.coalLeft}];break;case ve.Oil:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Hybrid})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.oilLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Oil",value:"0",max:o.oilLeft}];break;case ve.Garbage:if(1==o.powerPlants.filter((function(n){return n.type==e.type})).length)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.garbageLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Garbage",value:"0",max:o.garbageLeft}];break;case ve.Uranium:if(1==o.powerPlants.filter((function(n){return n.type==e.type})).length)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(0==o.uraniumLeft)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Uranium",value:"0",max:o.uraniumLeft}];break;case ve.Hybrid:if(o.powerPlants.filter((function(n){return n.type==e.type})).length+o.powerPlants.filter((function(e){return e.type==ve.Coal})).length+o.powerPlants.filter((function(e){return e.type==ve.Oil})).length==1)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});if(o.coalLeft+o.oilLeft==0)return void this.sendMove({name:_e.DiscardPowerPlant,data:e.number});this.resourcesToDiscard=[{name:"Coal",value:"0",max:o.coalLeft},{name:"Oil",value:"0",max:o.oilLeft}];break}this.discardedPowerPlant=e,this.discardVisible=!0}else if((null===(t=this.G)||void 0===t?void 0:t.phase)==be.Bureaucracy){var a=[];switch(e.type){case ve.Coal:a=Array(e.cost).fill(me.Coal);break;case ve.Oil:a=Array(e.cost).fill(me.Oil);break;case ve.Garbage:a=Array(e.cost).fill(me.Garbage);break;case ve.Uranium:a=Array(e.cost).fill(me.Uranium);break;case ve.Hybrid:var i=this.G.players[this.player];a=i.resourcesUsed,a.sort(),i.resourcesUsed=[],i.powerPlantsNotUsed=i.powerPlantsNotUsed.filter((function(n){return n!=e.number}));break}this.sendMove({name:_e.UsePowerPlant,data:{powerPlant:e.number,resourcesSpent:a,citiesPowered:e.citiesPowered}}),this.disablePass=!0,setTimeout((function(){return r.disablePass=!1}),1e3)}}},{key:"discardResource",value:function(e){this.sendMove({name:_e.DiscardResources,data:e})}},{key:"sendMove",value:function(e){this.paused||this.emitter.emit("move",e)}},{key:"gameEnded",value:function(e){return Kt(e)}},{key:"canMove",value:function(){return void 0!=this.player&&this.G&&this.G.currentPlayers.includes(this.player)&&this.G.players[this.player]&&this.G.players[this.player].availableMoves}},{key:"canPass",value:function(){if(!this.canMove())return!1;if(this.disablePass)return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.Pass]}},{key:"canUndo",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.Undo]}},{key:"canBid",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.Bid]}},{key:"canChoose",value:function(){if(!this.canMove())return!1;var e=this.G.players[this.player],n=e.availableMoves;return!!n[_e.ChoosePowerPlant]}},{key:"buyableResources",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.BuyResource]||[]}},{key:"canBuyResource",value:function(e){if(!this.canMove())return!1;var n=this.G.players[this.player],t=n.availableMoves;return e?!!t[_e.BuyResource]&&t[_e.BuyResource].find((function(n){return n.resource==e})):!!t[_e.BuyResource]}},{key:"getChooseablePowerPlants",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.ChoosePowerPlant]}},{key:"getBuildableCities",value:function(){if(!this.canMove())return[];var e=this.G.players[this.player],n=e.availableMoves;return n[_e.Build]&&n[_e.Build].map((function(e){return e.name}))||[]}},{key:"playerHasUsedFreeJump",value:function(e){var n,t,r=null===(n=this.G)||void 0===n?void 0:n.players[e];if(!r)return!1;if(r.usedFreeJump)return!0;if(null!==(t=this.G)&&void 0!==t&&t.log){var o,a=P(this.G.log);try{for(a.s();!(o=a.n()).done;){var i=o.value;if("move"===i.type&&i.player===e){var s,c=i.move;if((null===c||void 0===c?void 0:c.name)===_e.Build&&!0===(null===c||void 0===c||null===(s=c.data)||void 0===s?void 0:s.freeJump))return!0}}}catch(u){a.e(u)}finally{a.f()}}return!1}},{key:"canBuild",value:function(e){if(!this.canMove())return!1;var n=this.G.players[this.player],t=n.availableMoves;return!!t[_e.Build]&&t[_e.Build].find((function(n){return n.name==e.name}))}},{key:"canUsePowerPlant",value:function(e){var n,t;if(!this.canMove())return!1;var r=this.G.players[this.player],o=r.availableMoves;return!(r.resourcesUsed.length>0)&&((null===(n=this.G)||void 0===n?void 0:n.phase)==be.Bureaucracy?!!o[_e.UsePowerPlant]&&o[_e.UsePowerPlant].find((function(n){return n.powerPlant==e.number})):(null===(t=this.G)||void 0===t?void 0:t.phase)==be.Auction?!!o[_e.DiscardPowerPlant]&&o[_e.DiscardPowerPlant].find((function(n){return n==e.number})):void 0)}},{key:"canPowerAllPlants",value:function(e){var n,t=0,r=0,o=0,a=0,i=0,s=P(e.powerPlants);try{for(s.s();!(n=s.n()).done;){var c=n.value;switch(c.type){case ve.Coal:t+=c.cost;break;case ve.Oil:r+=c.cost;break;case ve.Garbage:o+=c.cost;break;case ve.Uranium:a+=c.cost;break;case ve.Hybrid:i+=c.cost;break}}}catch(d){s.e(d)}finally{s.f()}if(t>e.coalLeft||r>e.oilLeft||o>e.garbageLeft||a>e.uraniumLeft)return!1;var u=e.coalLeft-t,l=e.oilLeft-r;return!(i>u+l)}},{key:"toggleSound",value:function(){var e=!this.preferences.sound;this.emitter.emit("update:preference",{name:"sound",value:e}),this.preferences.sound=e}},{key:"toggleHelp",value:function(){var e=!this.preferences.disableHelp;this.emitter.emit("update:preference",{name:"disableHelp",value:e}),this.preferences.disableHelp=e}},{key:"showLog",value:function(){this.logVisible=!0}},{key:"getStatusMessage",value:function(){var e;if(!this.G||1==this.G.log.length)return"Game Start!";if(this.G.currentPlayers==[])return"Game ended!";if(void 0!==this.player&&null!==(e=this.G)&&void 0!==e&&e.currentPlayers.includes(this.player)){var n=this.G.players[this.player];return n.availableMoves[_e.ChoosePowerPlant]?n.availableMoves[_e.Pass]?"Choose a Power Plant to start an auction, or pass.":"Choose a Power Plant to start an auction.":n.availableMoves[_e.Bid]?"It's your turn to bid!":n.availableMoves[_e.BuyResource]?"Buy resources on the market, or pass.":n.availableMoves[_e.Build]?"Build a new city, or pass.":n.availableMoves[_e.UsePowerPlant]?0!=n.resourcesUsed.length?"Choose which resources to spend.":"Choose which Power Plant to use.":n.availableMoves[_e.DiscardPowerPlant]?"Choose which Power Plant to discard.":n.availableMoves[_e.DiscardResources]?"Choose which resources to discard.":"It's your turn!"}var t=this.G.log[this.G.log.length-1];return"move"==t.type?t.simple:"event"==t.type?t.event:void 0}},{key:"isCurrentPlayer",value:function(e){return this.G&&this.G.currentPlayers.includes(e)}},{key:"logReversed",get:function(){var e=[];return this.G&&this.G.log&&(this.G.log.forEach((function(n){"event"==n.type?e.push(n.pretty||n.event):"move"==n.type&&e.push(n.pretty)})),e.reverse()),e}},{key:"logReversedSimple",get:function(){var e=[];return this.G&&this.G.log&&(this.G.log.forEach((function(n){"event"==n.type?e.push(n.event):"move"==n.type&&e.push(n.simple)})),e.reverse()),e}},{key:"onLogChanged",value:function(){this.emitter.emit("replaceLog",_(this.logReversedSimple).reverse())}},{key:"sortedPlayers",get:function(){return Xt(this.G)}},{key:"mapTransform",get:function(){var e;if(null===(e=this.G)||void 0===e||!e.map)return"";var n=b(this.G.map.mapPosition,2),t=n[0],r=n[1],o=this.G.map.mapRotation;if(!o)return"translate(".concat(t,", ").concat(r,")");var a=this.G.map.cities,i=a.map((function(e){return e.x})),s=a.map((function(e){return e.y})),c=(Math.min.apply(Math,_(i))+Math.max.apply(Math,_(i)))/2,u=(Math.min.apply(Math,_(s))+Math.max.apply(Math,_(s)))/2;return"translate(".concat(t,", ").concat(r,") rotate(").concat(o,", ").concat(c,", ").concat(u,")")}},{key:"adjustedPlayerOrder",get:function(){return this.G?this.preferences.adjustPlayerOrder?this.G.phase==be.Auction?this.G.playerOrder:this.G.playerOrder.reverse():this.G.players.map((function(e,n){return n})):[]}},{key:"getResourceResupply",value:function(){if(this.G){var e=this.G.resourceResupply[this.G.step-1];return e=e.substr(1,e.length-2),e.split(",")}return[0,0,0,0]}},{key:"getResourceResupplyNorth",value:function(){if(this.G&&this.G.resourceResupplyNorth){var e=this.G.resourceResupplyNorth[this.G.step-1];return e=e.substr(1,e.length-2),e.split(",")}return null}}]),t}(d.a);z([he()],si.prototype,"state",void 0),z([he(),de()],si.prototype,"player",void 0),z([he()],si.prototype,"emitter",void 0),z([he()],si.prototype,"avatars",void 0),z([he(),de()],si.prototype,"preferences",void 0),z([le()],si.prototype,"ui",void 0),z([le()],si.prototype,"communicator",void 0),z([de()],si.prototype,"G",void 0),z([ye()],si.prototype,"powerPlantMarket",void 0),z([ye()],si.prototype,"playerOrder",void 0),z([ye()],si.prototype,"cityCount",void 0),z([ye()],si.prototype,"map",void 0),z([ye()],si.prototype,"resources",void 0),z([ge("state",{immediate:!0})],si.prototype,"onStateChanged",null),z([ge("ui.waitingAnimations")],si.prototype,"updateUI",null),z([ge("G.log")],si.prototype,"onLogChanged",null),si=z([oe({created:function(){var e=this;this.emitter.on("replayStart",(function(){e.paused=!0,e.emitter.emit("replay:info",{start:1,current:e.G.log.filter((function(e){return"move"==e.type})).length,end:e._futureState.log.filter((function(e){return"move"==e.type})).length})})),this.emitter.on("replayTo",(function(n){var t=e._futureState.log.map((function(e,n){return c({index:n},e)})).filter((function(e){return"move"==e.type}));n=t[n-1].index,e.replaceState(It(e._futureState,n+1),!1),e.emitter.emit("replay:info",{start:1,current:e.G.log.filter((function(e){return"move"==e.type})).length+e.G.hiddenLog.length,end:e._futureState.log.filter((function(e){return"move"==e.type})).length})})),this.emitter.on("replayEnd",(function(){e.paused=!1,e.emitter.emit("fetchState")}))},components:{PlayerBoard:ma,Card:Cr,House:Jr,Coal:jr,Oil:so,Garbage:Ir,Uranium:go,PassButton:Wo,UndoButton:la,LogButton:No,SoundButton:qo,HelpButton:Ro,RulesButton:ra,Button:ko,Calculator:Pa,PowerPlantMarket:La,PlayerOrder:Ta,CityCount:Fa,Map:Xa,Resources:ii}})],si);var ci=si,ui=ci,li=(t("bb9a"),wr(ui,f,p,!1,null,null,null)),di=li.exports;function fi(e){var n={state:null,emitter:new u["EventEmitter"],preferences:{sound:!0,disableHelp:!1,adjustPlayerOrder:!1,undoWholeTurn:!0,fitToScreen:!0},avatars:[]},t=new d.a({render:function(e){return e(di,{props:n},[])}}).$mount(e),r=new u["EventEmitter"],o=!1;return n.emitter.on("move",(function(e){return r.emit("move",e)})),n.emitter.on("fetchState",(function(){return r.emit("fetchState")})),n.emitter.on("addLog",(function(e){return r.emit("addLog",e)})),n.emitter.on("replaceLog",(function(e){return r.emit("replaceLog",e)})),n.emitter.on("replay:info",(function(e){return r.emit("replay:info",e)})),n.emitter.on("update:preference",(function(e){return r.emit("update:preference",e)})),r.addListener("avatars",(function(e){n.avatars=e,t.$forceUpdate()})),r.addListener("state",(function(e){n.state=e,t.$forceUpdate(),t.$nextTick().then((function(){return r.emit("ready")}))})),r.addListener("state:updated",(function(){return r.emit("fetchState")})),r.addListener("player",(function(e){n.player=e.index,t.$forceUpdate()})),r.addListener("preferences",(function(e){n.preferences=c(c({},n.preferences),e),t.$forceUpdate()})),r.addListener("gamelog",(function(e){o||r.emit("fetchState")})),r.addListener("replay:start",(function(){n.emitter.emit("replayStart"),o=!0})),r.addListener("replay:to",(function(e){n.emitter.emit("replayTo",e)})),r.addListener("replay:end",(function(){n.emitter.emit("replayEnd"),o=!1,r.emit("fetchState")})),r}var pi=fi;"undefined"!==typeof window&&(window.powergrid={launch:pi});var hi=pi;n["default"]=hi},a1a4:function(e,n,t){"use strict";var r=t("a768"),o=t("41d6"),a=t("fd86"),i=t("ce17"),s=a("species");e.exports=function(e){var n=r(e),t=o.f;i&&n&&!n[s]&&t(n,s,{configurable:!0,get:function(){return this}})}},a516:function(e,n,t){"use strict";var r=t("7f82"),o=t("12aa"),a=t("b42f"),i=t("43b7"),s=t("f246"),c=t("cbe1"),u=t("cba7"),l=t("2fb6"),d=l("splice"),f=Math.max,p=Math.min,h=9007199254740991,g="Maximum allowed length exceeded";r({target:"Array",proto:!0,forced:!d},{splice:function(e,n){var t,r,l,d,y,m,v=s(this),b=i(v.length),w=o(e,b),x=arguments.length;if(0===x?t=r=0:1===x?(t=0,r=b-w):(t=x-2,r=p(f(a(n),0),b-w)),b+t-r>h)throw TypeError(g);for(l=c(v,r),d=0;d<r;d++)y=w+d,y in v&&u(l,d,v[y]);if(l.length=r,t<r){for(d=w;d<b-r;d++)y=d+r,m=d+t,y in v?v[m]=v[y]:delete v[m];for(d=b;d>b-r+t;d--)delete v[d-1]}else if(t>r)for(d=b-r;d>w;d--)y=d+r-1,m=d+t-1,y in v?v[m]=v[y]:delete v[m];for(d=0;d<t;d++)v[d+w]=arguments[d+2];return v.length=b-r+t,l}})},a768:function(e,n,t){var r=t("8aac"),o=t("68de"),a=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,n){return arguments.length<2?a(r[e])||a(o[e]):r[e]&&r[e][n]||o[e]&&o[e][n]}},a901:function(e,n,t){"use strict";var r=t("2079").charAt,o=t("2673"),a=t("4116"),i="String Iterator",s=o.set,c=o.getterFor(i);a(String,"String",(function(e){s(this,{type:i,string:String(e),index:0})}),(function(){var e,n=c(this),t=n.string,o=n.index;return o>=t.length?{value:void 0,done:!0}:(e=r(t,o),n.index+=e.length,{value:e,done:!1})}))},a9eb:function(e,n,t){var r=t("8dac");e.exports=function(e,n){if(!r(e))return e;var t,o;if(n&&"function"==typeof(t=e.toString)&&!r(o=t.call(e)))return o;if("function"==typeof(t=e.valueOf)&&!r(o=t.call(e)))return o;if(!n&&"function"==typeof(t=e.toString)&&!r(o=t.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},ac27:function(e,n){e.exports=function(e){try{return!!e()}catch(n){return!0}}},ac85:function(e,n,t){(function(e){var r;(function(e,o,a){function i(e){var n=this;function t(e,n){var t,r,o,a,i,s=[],c=128;for(n===(0|n)?(r=n,n=null):(n+="\0",r=0,c=Math.max(c,n.length)),o=0,a=-32;a<c;++a)n&&(r^=n.charCodeAt((a+32)%n.length)),0===a&&(i=r),r^=r<<10,r^=r>>>15,r^=r<<4,r^=r>>>13,a>=0&&(i=i+1640531527|0,t=s[127&a]^=r+i,o=0==t?o+1:0);for(o>=128&&(s[127&(n&&n.length||0)]=-1),o=127,a=512;a>0;--a)r=s[o+34&127],t=s[o=o+1&127],r^=r<<13,t^=t<<17,r^=r>>>15,t^=t>>>12,s[o]=r^t;e.w=i,e.X=s,e.i=o}n.next=function(){var e,t,r=n.w,o=n.X,a=n.i;return n.w=r=r+1640531527|0,t=o[a+34&127],e=o[a=a+1&127],t^=t<<13,e^=e<<17,t^=t>>>15,e^=e>>>12,t=o[a]=t^e,n.i=a,t+(r^r>>>16)|0},t(n,e)}function s(e,n){return n.i=e.i,n.w=e.w,n.X=e.X.slice(),n}function c(e,n){null==e&&(e=+new Date);var t=new i(e),r=n&&n.state,o=function(){return(t.next()>>>0)/4294967296};return o.double=function(){do{var e=t.next()>>>11,n=(t.next()>>>0)/4294967296,r=(e+n)/(1<<21)}while(0===r);return r},o.int32=t.next,o.quick=o,r&&(r.X&&s(r,t),o.state=function(){return s(t,{})}),o}o&&o.exports?o.exports=c:t("f9ad")&&t("ba96")?(r=function(){return c}.call(n,t,n,o),void 0===r||(o.exports=r)):this.xor4096=c})(0,e,t("f9ad"))}).call(this,t("e55b")(e))},b07d:function(e,n,t){"use strict";var r=t("cbdb"),o=t("0540"),a=t("57ac"),i=t("c678"),s=t("c698"),c=t("7743"),u=t("43b7"),l=t("1af6"),d=t("8bc5"),f=t("3439"),p=f.UNSUPPORTED_Y,h=[].push,g=Math.min,y=4294967295;r("split",2,(function(e,n,t){var r;return r="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,t){var r=String(i(this)),a=void 0===t?y:t>>>0;if(0===a)return[];if(void 0===e)return[r];if(!o(e))return n.call(r,e,a);var s,c,u,l=[],f=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),p=0,g=new RegExp(e.source,f+"g");while(s=d.call(g,r)){if(c=g.lastIndex,c>p&&(l.push(r.slice(p,s.index)),s.length>1&&s.index<r.length&&h.apply(l,s.slice(1)),u=s[0].length,p=c,l.length>=a))break;g.lastIndex===s.index&&g.lastIndex++}return p===r.length?!u&&g.test("")||l.push(""):l.push(r.slice(p)),l.length>a?l.slice(0,a):l}:"0".split(void 0,0).length?function(e,t){return void 0===e&&0===t?[]:n.call(this,e,t)}:n,[function(n,t){var o=i(this),a=void 0==n?void 0:n[e];return void 0!==a?a.call(n,o,t):r.call(String(o),n,t)},function(e,o){var i=t(r,e,this,o,r!==n);if(i.done)return i.value;var d=a(e),f=String(this),h=s(d,RegExp),m=d.unicode,v=(d.ignoreCase?"i":"")+(d.multiline?"m":"")+(d.unicode?"u":"")+(p?"g":"y"),b=new h(p?"^(?:"+d.source+")":d,v),w=void 0===o?y:o>>>0;if(0===w)return[];if(0===f.length)return null===l(b,f)?[f]:[];var x=0,k=0,_=[];while(k<f.length){b.lastIndex=p?0:k;var P,S=l(b,p?f.slice(k):f);if(null===S||(P=g(u(b.lastIndex+(p?k:0)),f.length))===x)k=c(f,k,m);else{if(_.push(f.slice(x,k)),_.length===w)return _;for(var M=1;M<=S.length-1;M++)if(_.push(S[M]),_.length===w)return _;k=x=P}}return _.push(f.slice(x)),_}]}),p)},b0d4:function(e,n,t){"use strict";var r=t("7f82"),o=t("b222").find,a=t("d684"),i="find",s=!0;i in[]&&Array(1)[i]((function(){s=!1})),r({target:"Array",proto:!0,forced:s},{find:function(e){return o(this,e,arguments.length>1?arguments[1]:void 0)}}),a(i)},b168:function(e,n,t){var r,o,a=t("68de"),i=t("fd70"),s=a.process,c=s&&s.versions,u=c&&c.v8;u?(r=u.split("."),o=r[0]<4?1:r[0]+r[1]):i&&(r=i.match(/Edge\/(\d+)/),(!r||r[1]>=74)&&(r=i.match(/Chrome\/(\d+)/),r&&(o=r[1]))),e.exports=o&&+o},b222:function(e,n,t){var r=t("6e4e"),o=t("2153"),a=t("f246"),i=t("43b7"),s=t("cbe1"),c=[].push,u=function(e){var n=1==e,t=2==e,u=3==e,l=4==e,d=6==e,f=7==e,p=5==e||d;return function(h,g,y,m){for(var v,b,w=a(h),x=o(w),k=r(g,y,3),_=i(x.length),P=0,S=m||s,M=n?S(h,_):t||f?S(h,0):void 0;_>P;P++)if((p||P in x)&&(v=x[P],b=k(v,P,w),e))if(n)M[P]=b;else if(b)switch(e){case 3:return!0;case 5:return v;case 6:return P;case 2:c.call(M,v)}else switch(e){case 4:return!1;case 7:c.call(M,v)}return d?-1:u||l?l:M}};e.exports={forEach:u(0),map:u(1),filter:u(2),some:u(3),every:u(4),find:u(5),findIndex:u(6),filterOut:u(7)}},b2a1:function(e,n,t){var r=t("9c0c"),o=t("97cc").f,a={}.toString,i="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(e){try{return o(e)}catch(n){return i.slice()}};e.exports.f=function(e){return i&&"[object Window]"==a.call(e)?s(e):o(r(e))}},b42f:function(e,n){var t=Math.ceil,r=Math.floor;e.exports=function(e){return isNaN(e=+e)?0:(e>0?r:t)(e)}},b67b:function(e,n,t){e.exports=t.p+"img/log.04ef6981.svg"},b85b:function(e,n,t){e.exports=t.p+"img/rules.64f9aae5.svg"},ba03:function(e,n,t){(function(e){var r;(function(e,o,a){function i(e){var n=this,t="";n.next=function(){var e=n.b,t=n.c,r=n.d,o=n.a;return e=e<<25^e>>>7^t,t=t-r|0,r=r<<24^r>>>8^o,o=o-e|0,n.b=e=e<<20^e>>>12^t,n.c=t=t-r|0,n.d=r<<16^t>>>16^o,n.a=o-e|0},n.a=0,n.b=0,n.c=-1640531527,n.d=1367130551,e===Math.floor(e)?(n.a=e/4294967296|0,n.b=0|e):t+=e;for(var r=0;r<t.length+20;r++)n.b^=0|t.charCodeAt(r),n.next()}function s(e,n){return n.a=e.a,n.b=e.b,n.c=e.c,n.d=e.d,n}function c(e,n){var t=new i(e),r=n&&n.state,o=function(){return(t.next()>>>0)/4294967296};return o.double=function(){do{var e=t.next()>>>11,n=(t.next()>>>0)/4294967296,r=(e+n)/(1<<21)}while(0===r);return r},o.int32=t.next,o.quick=o,r&&("object"==typeof r&&s(r,t),o.state=function(){return s(t,{})}),o}o&&o.exports?o.exports=c:t("f9ad")&&t("ba96")?(r=function(){return c}.call(n,t,n,o),void 0===r||(o.exports=r)):this.tychei=c})(0,e,t("f9ad"))}).call(this,t("e55b")(e))},ba28:function(e,n,t){var r=t("8c99"),o=t("338e");e.exports=Object.keys||function(e){return r(e,o)}},ba96:function(e,n){(function(n){e.exports=n}).call(this,{})},bb9a:function(e,n,t){"use strict";t("50b1")},bcba:function(e,n,t){(function(e,r){var o;
27
27
  /**
28
28
  * @license
29
29
  * Lodash <https://lodash.com/>